summaryrefslogtreecommitdiff
path: root/poky/meta/recipes-devtools
diff options
context:
space:
mode:
Diffstat (limited to 'poky/meta/recipes-devtools')
-rw-r--r--poky/meta/recipes-devtools/apt/apt-native.inc74
-rw-r--r--poky/meta/recipes-devtools/apt/apt-native_1.2.31.bb5
-rw-r--r--poky/meta/recipes-devtools/apt/apt-package.inc94
-rw-r--r--poky/meta/recipes-devtools/apt/apt.inc40
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch29
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-Disable-documentation-directory-altogether.patch27
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-Do-not-configure-packages-on-installation.patch48
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-Do-not-init-tables-from-dpkg-configuration.patch29
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-Fix-musl-build.patch (renamed from poky/meta/recipes-devtools/apt/apt/0001-apt-1.2.12-Fix-musl-build.patch)43
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-Include-array.h-for-std-array.patch35
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch120
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch27
-rw-r--r--poky/meta/recipes-devtools/apt/apt/0001-environment.mak-musl-based-systems-can-generate-shar.patch29
-rw-r--r--poky/meta/recipes-devtools/apt/apt/disable-configure-in-makefile.patch18
-rw-r--r--poky/meta/recipes-devtools/apt/apt/disable-test.patch72
-rw-r--r--poky/meta/recipes-devtools/apt/apt/fix-gcc-4.6-null-not-defined.patch14
-rw-r--r--poky/meta/recipes-devtools/apt/apt/makerace.patch23
-rw-r--r--poky/meta/recipes-devtools/apt/apt/no-nls-dpkg.patch28
-rw-r--r--poky/meta/recipes-devtools/apt/apt/noconfigure.patch37
-rw-r--r--poky/meta/recipes-devtools/apt/apt/nodoc.patch18
-rwxr-xr-xpoky/meta/recipes-devtools/apt/apt/triehash728
-rw-r--r--poky/meta/recipes-devtools/apt/apt/truncate-filename.patch35
-rw-r--r--poky/meta/recipes-devtools/apt/apt/use-host.patch15
-rw-r--r--poky/meta/recipes-devtools/apt/apt_1.2.31.bb20
-rw-r--r--poky/meta/recipes-devtools/apt/apt_1.8.2.1.bb106
-rw-r--r--poky/meta/recipes-devtools/apt/files/apt.conf42
-rw-r--r--poky/meta/recipes-devtools/apt/files/db_linking_hack.patch29
-rw-r--r--poky/meta/recipes-devtools/apt/files/environment.patch15
-rw-r--r--poky/meta/recipes-devtools/apt/files/no-curl.patch54
-rw-r--r--poky/meta/recipes-devtools/autoconf/autoconf.inc10
-rw-r--r--poky/meta/recipes-devtools/autoconf/autoconf_2.69.bb25
-rw-r--r--poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch18
-rw-r--r--poky/meta/recipes-devtools/automake/automake_1.16.2.bb (renamed from poky/meta/recipes-devtools/automake/automake_1.16.1.bb)4
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils-2.35.inc (renamed from poky/meta/recipes-devtools/binutils/binutils-2.34.inc)26
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils-cross-canadian_2.35.bb (renamed from poky/meta/recipes-devtools/binutils/binutils-cross-canadian_2.34.bb)0
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils-cross-testsuite_2.35.bb (renamed from poky/meta/recipes-devtools/binutils/binutils-cross-testsuite_2.34.bb)0
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils-cross_2.35.bb (renamed from poky/meta/recipes-devtools/binutils/binutils-cross_2.34.bb)0
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.35.bb (renamed from poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.34.bb)0
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0001-binutils-crosssdk-Generate-relocatable-SDKs.patch31
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0002-binutils-cross-Do-not-generate-linker-script-directo.patch10
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0003-binutils-nativesdk-Search-for-alternative-ld.so.conf.patch29
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0004-configure-widen-the-regexp-for-SH-architectures.patch15
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0005-Point-scripts-location-to-libdir.patch15
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0006-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch14
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0007-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch (renamed from poky/meta/recipes-devtools/binutils/binutils/0008-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch)13
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0008-warn-for-uses-of-system-directories-when-cross-linki.patch (renamed from poky/meta/recipes-devtools/binutils/binutils/0009-warn-for-uses-of-system-directories-when-cross-linki.patch)72
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0009-Change-default-emulation-for-mips64-linux.patch (renamed from poky/meta/recipes-devtools/binutils/binutils/0011-Change-default-emulation-for-mips64-linux.patch)15
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0010-Add-support-for-Netlogic-XLP.patch (renamed from poky/meta/recipes-devtools/binutils/binutils/0012-Add-support-for-Netlogic-XLP.patch)55
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0011-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch37
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0012-Detect-64-bit-MIPS-targets.patch (renamed from poky/meta/recipes-devtools/binutils/binutils/0014-Detect-64-bit-MIPS-targets.patch)9
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0013-Use-libtool-2.4.patch (renamed from poky/meta/recipes-devtools/binutils/binutils/0007-Use-libtool-2.4.patch)2529
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0013-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch33
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0014-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch (renamed from poky/meta/recipes-devtools/binutils/binutils/0010-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch)9
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0015-sync-with-OE-libtool-changes.patch9
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0016-Check-for-clang-before-checking-gcc-version.patch14
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0017-binutils-drop-redundant-program_name-definition-fno-.patch61
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2020-0551.patch549
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils_2.35.bb (renamed from poky/meta/recipes-devtools/binutils/binutils_2.34.bb)0
-rw-r--r--poky/meta/recipes-devtools/bison/bison/0001-bison-fix-the-parallel-build.patch63
-rw-r--r--poky/meta/recipes-devtools/bison/bison/dont-depend-on-help2man.patch.patch44
-rw-r--r--poky/meta/recipes-devtools/bison/bison_3.7.2.bb (renamed from poky/meta/recipes-devtools/bison/bison_3.5.4.bb)14
-rw-r--r--poky/meta/recipes-devtools/bootchart2/bootchart2_0.14.9.bb (renamed from poky/meta/recipes-devtools/bootchart2/bootchart2_0.14.8.bb)3
-rw-r--r--poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.7.bb (renamed from poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.4.1.bb)4
-rw-r--r--poky/meta/recipes-devtools/build-compare/build-compare_git.bb29
-rw-r--r--poky/meta/recipes-devtools/ccache/ccache_3.7.11.bb (renamed from poky/meta/recipes-devtools/ccache/ccache.inc)4
-rw-r--r--poky/meta/recipes-devtools/ccache/ccache_3.7.7.bb7
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake-native_3.18.2.bb (renamed from poky/meta/recipes-devtools/cmake/cmake-native_3.16.5.bb)3
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake.inc11
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch4
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/0002-cmake-Prevent-the-detection-of-Qt5.patch18
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch2
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/0004-Fail-silently-if-system-Qt-installation-is-broken.patch2
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch15
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake2
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake_3.18.2.bb (renamed from poky/meta/recipes-devtools/cmake/cmake_3.16.5.bb)4
-rw-r--r--poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.16.0.bb (renamed from poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.15.7.bb)2
-rw-r--r--poky/meta/recipes-devtools/desktop-file-utils/desktop-file-utils_0.26.bb (renamed from poky/meta/recipes-devtools/desktop-file-utils/desktop-file-utils_0.24.bb)4
-rw-r--r--poky/meta/recipes-devtools/distcc/distcc_3.3.3.bb1
-rw-r--r--poky/meta/recipes-devtools/distcc/files/0001-Fix-build-with-gcc-10-which-defaults-to-fno-common-c.patch34
-rw-r--r--poky/meta/recipes-devtools/dnf/dnf_4.2.23.bb (renamed from poky/meta/recipes-devtools/dnf/dnf_4.2.21.bb)2
-rw-r--r--poky/meta/recipes-devtools/dosfstools/dosfstools_4.1.bb2
-rw-r--r--poky/meta/recipes-devtools/dpkg/dpkg.inc14
-rw-r--r--poky/meta/recipes-devtools/dpkg/dpkg/0001-build.c-ignore-return-of-1-from-tar-cf.patch53
-rw-r--r--poky/meta/recipes-devtools/dpkg/dpkg/tweak-options-require-tar-1.27.patch27
-rw-r--r--poky/meta/recipes-devtools/dpkg/dpkg_1.20.5.bb (renamed from poky/meta/recipes-devtools/dpkg/dpkg_1.19.7.bb)12
-rw-r--r--poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-fix-up-check-for-hardlinks-always-false-if-inode-0xF.patch55
-rw-r--r--poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.45.6.bb1
-rw-r--r--poky/meta/recipes-devtools/elfutils/elfutils_0.180.bb (renamed from poky/meta/recipes-devtools/elfutils/elfutils_0.179.bb)21
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0001-musl-obstack-fts.patch11
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0001-tests-Makefile.am-compile-test_nlist-with-standard-C.patch27
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0002-musl-libs.patch17
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0003-musl-utils.patch7
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0004-Fix-error-on-musl.patch7
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0015-config-eu.am-do-not-use-Werror.patch36
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/0001-Ignore-differences-between-mips-machine-identifiers.patch34
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/0001-fix-compile-failure-with-debian-patches.patch48
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/0002-Add-support-for-mips64-abis-in-mips_retval.c.patch171
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/0003-Add-mips-n64-relocation-format-hack.patch229
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/arm_backend.diff624
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/disable_werror.patch20
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff828
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/hurd_path.patch17
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/ignore_strmerge.diff14
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/kfreebsd_path.patch20
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/mips_backend.diff724
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/mips_cfi.patch129
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/mips_readelf_w.patch31
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/testsuite-ignore-elflint.diff52
-rw-r--r--poky/meta/recipes-devtools/file/file_5.39.bb (renamed from poky/meta/recipes-devtools/file/file_5.38.bb)2
-rw-r--r--poky/meta/recipes-devtools/flex/flex/check-funcs.patch67
-rw-r--r--poky/meta/recipes-devtools/flex/flex_2.6.4.bb1
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-10.1/0036-Enable-CET-in-cross-compiler-if-possible.patch150
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-10.2.inc (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1.inc)17
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-configure-common.inc1
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc25
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-cross-canadian_10.2.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-cross-canadian_10.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-cross_10.2.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-cross_10.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-crosssdk_10.2.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-crosssdk_10.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-runtime.inc4
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-runtime_10.2.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-runtime_10.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-sanitizers_10.2.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-sanitizers_10.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-source_10.2.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-source_10.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0001-aarch64-Fix-up-__aarch64_cas16_acq_rel-fallback.patch66
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0001-aarch64-New-Straight-Line-Speculation-SLS-mitigation.patch202
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0002-aarch64-Introduce-SLS-mitigation-for-RET-and-BR-inst.patch607
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0002-gcc-poison-system-directories.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0003-aarch64-Mitigate-SLS-for-BLR-instruction.patch658
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0004-64-bit-multilib-hack.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0004-64-bit-multilib-hack.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0005-optional-libstdc.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0005-optional-libstdc.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0006-COLLECT_GCC_OPTIONS.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0006-COLLECT_GCC_OPTIONS.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0007-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0007-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0008-fortran-cross-compile-hack.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0008-fortran-cross-compile-hack.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0009-cpp-honor-sysroot.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0009-cpp-honor-sysroot.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0010-MIPS64-Default-to-N64-ABI.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0010-MIPS64-Default-to-N64-ABI.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0011-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0011-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0012-gcc-Fix-argument-list-too-long-error.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0012-gcc-Fix-argument-list-too-long-error.patch)6
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0013-Disable-sdt.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0013-Disable-sdt.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0014-libtool.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0014-libtool.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0015-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0015-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0016-Use-the-multilib-config-files-from-B-instead-of-usin.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0016-Use-the-multilib-config-files-from-B-instead-of-usin.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0017-Avoid-using-libdir-from-.la-which-usually-points-to-.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0017-Avoid-using-libdir-from-.la-which-usually-points-to-.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0018-export-CPP.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0018-export-CPP.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0019-Ensure-target-gcc-headers-can-be-included.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0019-Ensure-target-gcc-headers-can-be-included.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0020-Don-t-search-host-directory-during-relink-if-inst_pr.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0020-Don-t-search-host-directory-during-relink-if-inst_pr.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0021-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0021-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0022-aarch64-Add-support-for-musl-ldso.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0022-aarch64-Add-support-for-musl-ldso.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0023-libcc1-fix-libcc1-s-install-path-and-rpath.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0023-libcc1-fix-libcc1-s-install-path-and-rpath.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0024-handle-sysroot-support-for-nativesdk-gcc.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0024-handle-sysroot-support-for-nativesdk-gcc.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0025-Search-target-sysroot-gcc-version-specific-dirs-with.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0025-Search-target-sysroot-gcc-version-specific-dirs-with.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0026-Fix-various-_FOR_BUILD-and-related-variables.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0026-Fix-various-_FOR_BUILD-and-related-variables.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0027-nios2-Define-MUSL_DYNAMIC_LINKER.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0027-nios2-Define-MUSL_DYNAMIC_LINKER.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0028-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0028-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0029-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0029-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0030-sync-gcc-stddef.h-with-musl.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0030-sync-gcc-stddef.h-with-musl.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0031-fix-segmentation-fault-in-precompiled-header-generat.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0031-fix-segmentation-fault-in-precompiled-header-generat.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0032-Fix-for-testsuite-failure.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0032-Fix-for-testsuite-failure.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0033-Re-introduce-spe-commandline-options.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0033-Re-introduce-spe-commandline-options.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0034-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0034-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0035-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0035-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0036-mingw32-Enable-operation_not_supported.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0037-mingw32-Enable-operation_not_supported.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0037-libatomic-Do-not-enforce-march-on-aarch64.patch (renamed from poky/meta/recipes-devtools/gcc/gcc-10.1/0038-libatomic-Do-not-enforce-march-on-aarch64.patch)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc_10.2.bb (renamed from poky/meta/recipes-devtools/gcc/gcc_10.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/libgcc-initial_10.2.bb (renamed from poky/meta/recipes-devtools/gcc/libgcc-initial_10.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/libgcc_10.2.bb (renamed from poky/meta/recipes-devtools/gcc/libgcc_10.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/libgfortran_10.2.bb (renamed from poky/meta/recipes-devtools/gcc/libgfortran_10.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb-9.2.inc (renamed from poky/meta/recipes-devtools/gdb/gdb-9.1.inc)4
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb-cross-canadian_9.2.bb (renamed from poky/meta/recipes-devtools/gdb/gdb-cross-canadian_9.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb-cross_9.2.bb (renamed from poky/meta/recipes-devtools/gdb/gdb-cross_9.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb_9.2.bb (renamed from poky/meta/recipes-devtools/gdb/gdb_9.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/git/git_2.28.0.bb (renamed from poky/meta/recipes-devtools/git/git_2.26.2.bb)5
-rw-r--r--poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb4
-rw-r--r--poky/meta/recipes-devtools/go/go-1.14/0009-ld-replace-glibc-dynamic-linker-with-musl.patch115
-rw-r--r--poky/meta/recipes-devtools/go/go-1.15.inc (renamed from poky/meta/recipes-devtools/go/go-1.14.inc)8
-rw-r--r--poky/meta/recipes-devtools/go/go-1.15/0001-allow-CC-and-CXX-to-have-multiple-words.patch (renamed from poky/meta/recipes-devtools/go/go-1.14/0001-allow-CC-and-CXX-to-have-multiple-words.patch)2
-rw-r--r--poky/meta/recipes-devtools/go/go-1.15/0002-cmd-go-make-content-based-hash-generation-less-pedan.patch (renamed from poky/meta/recipes-devtools/go/go-1.14/0002-cmd-go-make-content-based-hash-generation-less-pedan.patch)22
-rw-r--r--poky/meta/recipes-devtools/go/go-1.15/0003-allow-GOTOOLDIR-to-be-overridden-in-the-environment.patch (renamed from poky/meta/recipes-devtools/go/go-1.14/0003-allow-GOTOOLDIR-to-be-overridden-in-the-environment.patch)0
-rw-r--r--poky/meta/recipes-devtools/go/go-1.15/0004-ld-add-soname-to-shareable-objects.patch (renamed from poky/meta/recipes-devtools/go/go-1.14/0004-ld-add-soname-to-shareable-objects.patch)6
-rw-r--r--poky/meta/recipes-devtools/go/go-1.15/0005-make.bash-override-CC-when-building-dist-and-go_boot.patch (renamed from poky/meta/recipes-devtools/go/go-1.14/0005-make.bash-override-CC-when-building-dist-and-go_boot.patch)0
-rw-r--r--poky/meta/recipes-devtools/go/go-1.15/0006-cmd-dist-separate-host-and-target-builds.patch (renamed from poky/meta/recipes-devtools/go/go-1.14/0006-cmd-dist-separate-host-and-target-builds.patch)0
-rw-r--r--poky/meta/recipes-devtools/go/go-1.15/0007-cmd-go-make-GOROOT-precious-by-default.patch (renamed from poky/meta/recipes-devtools/go/go-1.14/0007-cmd-go-make-GOROOT-precious-by-default.patch)6
-rw-r--r--poky/meta/recipes-devtools/go/go-1.15/0008-use-GOBUILDMODE-to-set-buildmode.patch (renamed from poky/meta/recipes-devtools/go/go-1.14/0008-use-GOBUILDMODE-to-set-buildmode.patch)2
-rw-r--r--poky/meta/recipes-devtools/go/go-binary-native_1.15.2.bb46
-rw-r--r--poky/meta/recipes-devtools/go/go-cross-canadian_1.15.bb (renamed from poky/meta/recipes-devtools/go/go-cross-canadian_1.14.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go-cross_1.15.bb (renamed from poky/meta/recipes-devtools/go/go-cross_1.14.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go-crosssdk_1.15.bb (renamed from poky/meta/recipes-devtools/go/go-crosssdk_1.14.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go-dep/0001-Update-sys-module-to-latest.patch145574
-rw-r--r--poky/meta/recipes-devtools/go/go-dep_0.5.4.bb1
-rw-r--r--poky/meta/recipes-devtools/go/go-native_1.14.bb2
-rw-r--r--poky/meta/recipes-devtools/go/go-native_1.15.bb (renamed from poky/meta/recipes-devtools/go/go-native.inc)6
-rw-r--r--poky/meta/recipes-devtools/go/go-runtime_1.15.bb (renamed from poky/meta/recipes-devtools/go/go-runtime_1.14.bb)1
-rw-r--r--poky/meta/recipes-devtools/go/go_1.15.bb (renamed from poky/meta/recipes-devtools/go/go_1.14.bb)9
-rw-r--r--poky/meta/recipes-devtools/help2man/help2man-native_1.47.11.bb24
-rw-r--r--poky/meta/recipes-devtools/help2man/help2man_1.47.15.bb22
-rw-r--r--poky/meta/recipes-devtools/jquery/jquery_3.5.0.bb31
-rw-r--r--poky/meta/recipes-devtools/jquery/jquery_3.5.1.bb33
-rw-r--r--poky/meta/recipes-devtools/json-c/json-c/add-disable-werror-option-to-configure.patch45
-rw-r--r--poky/meta/recipes-devtools/json-c/json-c_0.15.bb (renamed from poky/meta/recipes-devtools/json-c/json-c_0.13.1.bb)12
-rw-r--r--poky/meta/recipes-devtools/libdnf/libdnf/0001-Add-WITH_TESTS-option.patch10
-rw-r--r--poky/meta/recipes-devtools/libdnf/libdnf/0001-Use-single-quotes-around-string-literals-used-in-SQL.patch36
-rw-r--r--poky/meta/recipes-devtools/libdnf/libdnf/enable_test_data_dir_set.patch26
-rw-r--r--poky/meta/recipes-devtools/libdnf/libdnf_0.48.0.bb (renamed from poky/meta/recipes-devtools/libdnf/libdnf_0.47.0.bb)4
-rw-r--r--poky/meta/recipes-devtools/libmodulemd/libmodulemd/0002-meson.build-do-not-install-python-gi-bindings.patch23
-rw-r--r--poky/meta/recipes-devtools/libmodulemd/libmodulemd_git.bb13
-rw-r--r--poky/meta/recipes-devtools/librepo/librepo_1.12.1.bb (renamed from poky/meta/recipes-devtools/librepo/librepo_1.11.2.bb)2
-rw-r--r--poky/meta/recipes-devtools/llvm/llvm_git.bb4
-rw-r--r--poky/meta/recipes-devtools/log4cplus/log4cplus_2.0.5.bb19
-rw-r--r--poky/meta/recipes-devtools/meson/meson.inc6
-rw-r--r--poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch14
-rw-r--r--poky/meta/recipes-devtools/meson/meson/0001-gnome.py-prefix-g-i-paths-with-PKG_CONFIG_SYSROOT_DI.patch37
-rw-r--r--poky/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-check-environment-for-vari.patch26
-rw-r--r--poky/meta/recipes-devtools/meson/meson/0001-modules-python.py-do-not-substitute-python-s-install.patch11
-rw-r--r--poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch6
-rw-r--r--poky/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch40
-rw-r--r--poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch28
-rw-r--r--poky/meta/recipes-devtools/meson/meson/disable-rpath-handling.patch29
-rw-r--r--poky/meta/recipes-devtools/meson/meson_0.55.1.bb (renamed from poky/meta/recipes-devtools/meson/meson_0.53.2.bb)0
-rw-r--r--poky/meta/recipes-devtools/meson/nativesdk-meson_0.55.1.bb (renamed from poky/meta/recipes-devtools/meson/nativesdk-meson_0.53.2.bb)0
-rw-r--r--poky/meta/recipes-devtools/mtd/mtd-utils_git.bb6
-rw-r--r--poky/meta/recipes-devtools/mtools/mtools_4.0.24.bb2
-rw-r--r--poky/meta/recipes-devtools/nasm/nasm/0001-stdlib-Add-strlcat.patch28
-rw-r--r--poky/meta/recipes-devtools/nasm/nasm/0002-Add-debug-prefix-map-option.patch133
-rw-r--r--poky/meta/recipes-devtools/nasm/nasm/CVE-2018-19755.patch116
-rw-r--r--poky/meta/recipes-devtools/nasm/nasm/CVE-2019-14248.patch43
-rw-r--r--poky/meta/recipes-devtools/nasm/nasm_2.15.05.bb (renamed from poky/meta/recipes-devtools/nasm/nasm_2.14.02.bb)10
-rw-r--r--poky/meta/recipes-devtools/ninja/ninja_1.10.1.bb (renamed from poky/meta/recipes-devtools/ninja/ninja_1.10.0.bb)2
-rw-r--r--poky/meta/recipes-devtools/opkg-utils/opkg-utils/fix-reproducibility.patch32
-rw-r--r--poky/meta/recipes-devtools/opkg-utils/opkg-utils_0.4.3.bb (renamed from poky/meta/recipes-devtools/opkg-utils/opkg-utils_0.4.2.bb)5
-rw-r--r--poky/meta/recipes-devtools/opkg/opkg_0.4.3.bb (renamed from poky/meta/recipes-devtools/opkg/opkg_0.4.2.bb)4
-rw-r--r--poky/meta/recipes-devtools/packagegroups/packagegroup-core-device-devel.bb16
-rw-r--r--poky/meta/recipes-devtools/patchelf/patchelf/fix-adjusting-startPage.patch45
-rw-r--r--poky/meta/recipes-devtools/patchelf/patchelf/handle-read-only-files.patch18
-rw-r--r--poky/meta/recipes-devtools/patchelf/patchelf_0.12.bb (renamed from poky/meta/recipes-devtools/patchelf/patchelf_0.10.bb)3
-rw-r--r--poky/meta/recipes-devtools/perl/files/0001-PATCH-perl-134117-Close-DATA-in-loc_tools.pl.patch30
-rw-r--r--poky/meta/recipes-devtools/perl/files/0001-enc2xs-Add-environment-variable-to-suppress-comments.patch30
-rw-r--r--poky/meta/recipes-devtools/perl/files/perl-cross-makefile.patch29
-rw-r--r--poky/meta/recipes-devtools/perl/files/perl-rdepends.txt2493
-rw-r--r--poky/meta/recipes-devtools/perl/perl_5.32.0.bb (renamed from poky/meta/recipes-devtools/perl/perl_5.30.2.bb)22
-rw-r--r--poky/meta/recipes-devtools/pkgconf/pkgconf_1.7.3.bb (renamed from poky/meta/recipes-devtools/pkgconf/pkgconf_1.6.3.bb)3
-rw-r--r--poky/meta/recipes-devtools/pseudo/files/0001-Add-statx.patch106
-rw-r--r--poky/meta/recipes-devtools/pseudo/files/0001-maketables-wrappers-use-Python-3.patch34
-rw-r--r--poky/meta/recipes-devtools/pseudo/files/0001-pseudo-On-a-DB-fixup-remove-files-that-do-not-exist-.patch49
-rw-r--r--poky/meta/recipes-devtools/pseudo/files/0001-pseudo_ipc.h-Fix-enum-typedef.patch31
-rw-r--r--poky/meta/recipes-devtools/pseudo/files/0001-realpath.c-Remove-trailing-slashes.patch57
-rw-r--r--poky/meta/recipes-devtools/pseudo/files/0006-xattr-adjust-for-attr-2.4.48-release.patch48
-rw-r--r--poky/meta/recipes-devtools/pseudo/files/moreretries.patch19
-rw-r--r--poky/meta/recipes-devtools/pseudo/files/seccomp.patch137
-rw-r--r--poky/meta/recipes-devtools/pseudo/files/toomanyfiles.patch71
-rw-r--r--poky/meta/recipes-devtools/pseudo/pseudo_git.bb13
-rw-r--r--poky/meta/recipes-devtools/python-numpy/files/0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch11
-rw-r--r--poky/meta/recipes-devtools/python-numpy/files/0001-convert-shebang-from-python-to-python3.patch555
-rw-r--r--poky/meta/recipes-devtools/python-numpy/python-numpy.inc8
-rw-r--r--poky/meta/recipes-devtools/python-numpy/python3-numpy_1.19.1.bb (renamed from poky/meta/recipes-devtools/python-numpy/python3-numpy_1.18.3.bb)0
-rw-r--r--poky/meta/recipes-devtools/python/files/0001-bpo-39503-CVE-2020-8492-Fix-AbstractBasicAuthHandler.patch248
-rw-r--r--poky/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch12
-rw-r--r--poky/meta/recipes-devtools/python/python-cython.inc3
-rw-r--r--poky/meta/recipes-devtools/python/python-extras.inc2
-rw-r--r--poky/meta/recipes-devtools/python/python-gitdb.inc2
-rw-r--r--poky/meta/recipes-devtools/python/python-pbr.inc2
-rw-r--r--poky/meta/recipes-devtools/python/python-six.inc2
-rw-r--r--poky/meta/recipes-devtools/python/python-smmap.inc5
-rw-r--r--poky/meta/recipes-devtools/python/python-subunit.inc6
-rw-r--r--poky/meta/recipes-devtools/python/python-testtools.inc6
-rw-r--r--poky/meta/recipes-devtools/python/python3-cython_0.29.21.bb (renamed from poky/meta/recipes-devtools/python/python3-cython_0.29.16.bb)0
-rw-r--r--poky/meta/recipes-devtools/python/python3-dbusmock_0.19.bb1
-rw-r--r--poky/meta/recipes-devtools/python/python3-git_3.1.7.bb (renamed from poky/meta/recipes-devtools/python/python3-git_3.1.2.bb)3
-rw-r--r--poky/meta/recipes-devtools/python/python3-gitdb_4.0.4.bb3
-rw-r--r--poky/meta/recipes-devtools/python/python3-gitdb_4.0.5.bb4
-rw-r--r--poky/meta/recipes-devtools/python/python3-iniparse_0.4.bb2
-rw-r--r--poky/meta/recipes-devtools/python/python3-jinja2/run-ptest3
-rw-r--r--poky/meta/recipes-devtools/python/python3-jinja2_2.11.2.bb45
-rw-r--r--poky/meta/recipes-devtools/python/python3-libarchive-c_2.9.bb6
-rw-r--r--poky/meta/recipes-devtools/python/python3-magic_0.4.18.bb5
-rw-r--r--poky/meta/recipes-devtools/python/python3-mako_1.1.3.bb (renamed from poky/meta/recipes-devtools/python/python3-mako_1.1.1.bb)3
-rw-r--r--poky/meta/recipes-devtools/python/python3-markupsafe/run-ptest3
-rw-r--r--poky/meta/recipes-devtools/python/python3-markupsafe_1.1.1.bb28
-rw-r--r--poky/meta/recipes-devtools/python/python3-pip_20.0.2.bb2
-rw-r--r--poky/meta/recipes-devtools/python/python3-pycairo_1.19.1.bb (renamed from poky/meta/recipes-devtools/python/python3-pycairo_1.19.0.bb)4
-rw-r--r--poky/meta/recipes-devtools/python/python3-pycryptodome_3.9.7.bb5
-rw-r--r--poky/meta/recipes-devtools/python/python3-pycryptodome_3.9.8.bb5
-rw-r--r--poky/meta/recipes-devtools/python/python3-pycryptodomex_3.9.8.bb (renamed from poky/meta/recipes-devtools/python/python3-pycryptodomex_3.9.7.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-pygments_2.6.1.bb (renamed from poky/meta/recipes-devtools/python/python3-pygments_2.5.2.bb)4
-rw-r--r--poky/meta/recipes-devtools/python/python3-pygobject_3.36.1.bb (renamed from poky/meta/recipes-devtools/python/python3-pygobject_3.34.0.bb)4
-rw-r--r--poky/meta/recipes-devtools/python/python3-setuptools/0001-change-shebang-to-python3.patch13
-rw-r--r--poky/meta/recipes-devtools/python/python3-setuptools_45.2.0.bb6
-rw-r--r--poky/meta/recipes-devtools/python/python3-setuptools_49.6.0.bb (renamed from poky/meta/recipes-devtools/python/python-setuptools.inc)18
-rw-r--r--poky/meta/recipes-devtools/python/python3-six_1.14.0.bb5
-rw-r--r--poky/meta/recipes-devtools/python/python3-six_1.15.0.bb5
-rw-r--r--poky/meta/recipes-devtools/python/python3-smmap_3.0.4.bb (renamed from poky/meta/recipes-devtools/python/python3-smmap_2.0.5.bb)1
-rw-r--r--poky/meta/recipes-devtools/python/python3-subunit_1.4.0.bb (renamed from poky/meta/recipes-devtools/python/python3-subunit_1.3.0.bb)0
-rw-r--r--poky/meta/recipes-devtools/python/python3-testtools_2.4.0.bb (renamed from poky/meta/recipes-devtools/python/python3-testtools_2.3.0.bb)0
-rw-r--r--poky/meta/recipes-devtools/python/python3/0001-Don-t-search-system-for-headers-libraries.patch8
-rw-r--r--poky/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch2
-rw-r--r--poky/meta/recipes-devtools/python/python3/0001-setup.py-pass-missing-libraries-to-Extension-for-mul.patch2
-rw-r--r--poky/meta/recipes-devtools/python/python3/12-distutils-prefix-is-inside-staging-area.patch2
-rw-r--r--poky/meta/recipes-devtools/python/python3/get_module_deps3.py20
-rw-r--r--poky/meta/recipes-devtools/python/python3/python3-manifest.json68
-rw-r--r--poky/meta/recipes-devtools/python/python3_3.8.5.bb (renamed from poky/meta/recipes-devtools/python/python3_3.8.2.bb)29
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu-native.inc5
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu-native_5.1.0.bb (renamed from poky/meta/recipes-devtools/qemu/qemu-native_4.2.0.bb)0
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu-system-native_5.1.0.bb (renamed from poky/meta/recipes-devtools/qemu/qemu-system-native_4.2.0.bb)2
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu.inc36
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-Add-enable-disable-udev.patch20
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-missing-wacom-HID-descriptor.patch18
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Do-not-include-file-if-not-exists.patch26
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0002-Add-subpackage-ptest-which-runs-all-unit-test-cases-.patch18
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0003-qemu-Add-addition-environment-space-to-boot-loader-q.patch10
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0004-qemu-disable-Valgrind.patch10
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0005-qemu-native-set-ld.bfd-fix-cflags-and-set-some-envir.patch18
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0006-chardev-connect-socket-to-a-spawned-command.patch56
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0007-apic-fixup-fallthrough-to-PIC.patch10
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0008-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch10
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0009-Fix-webkitgtk-builds.patch86
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0010-configure-Add-pkg-config-handling-for-libgcrypt.patch14
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0011-hw-i386-pc-fix-regression-in-parsing-vga-cmdline-par.patch54
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0012-fix-libcap-header-issue-on-some-distro.patch86
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0013-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch74
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2019-15890.patch48
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2020-11102.patch148
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2020-11869.patch97
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2020-1711.patch64
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2020-7039-1.patch44
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2020-7039-2.patch59
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2020-7039-3.patch64
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2020-7211.patch46
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/find_datadir.patch39
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/usb-fix-setup_len-init.patch89
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu_5.1.0.bb (renamed from poky/meta/recipes-devtools/qemu/qemu_4.2.0.bb)4
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-Bump-up-the-limit-of-signature-header-to-64MB.patch62
-rw-r--r--poky/meta/recipes-devtools/rpm/files/environment.d-rpm.sh1
-rw-r--r--poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb28
-rw-r--r--poky/meta/recipes-devtools/rsync/files/CVE-2016-9840.patch75
-rw-r--r--poky/meta/recipes-devtools/rsync/files/CVE-2016-9841.patch228
-rw-r--r--poky/meta/recipes-devtools/rsync/files/CVE-2016-9842.patch33
-rw-r--r--poky/meta/recipes-devtools/rsync/files/CVE-2016-9843.patch53
-rw-r--r--poky/meta/recipes-devtools/rsync/files/makefile-no-rebuild.patch29
-rw-r--r--poky/meta/recipes-devtools/rsync/rsync_3.2.3.bb (renamed from poky/meta/recipes-devtools/rsync/rsync_3.1.3.bb)19
-rw-r--r--poky/meta/recipes-devtools/strace/strace_5.8.bb (renamed from poky/meta/recipes-devtools/strace/strace_5.5.bb)5
-rw-r--r--poky/meta/recipes-devtools/subversion/subversion_1.14.0.bb (renamed from poky/meta/recipes-devtools/subversion/subversion_1.13.0.bb)7
-rw-r--r--poky/meta/recipes-devtools/vala/vala/0001-git-version-gen-don-t-append-dirty-if-we-re-not-in-g.patch55
-rw-r--r--poky/meta/recipes-devtools/vala/vala_0.46.6.bb8
-rw-r--r--poky/meta/recipes-devtools/vala/vala_0.48.9.bb5
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch144
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-vgtests-remove-fullpath-after-flags.patch (renamed from poky/meta/recipes-devtools/valgrind/valgrind/0001-adjust-path-filter-for-2-memcheck-tests.patch)30
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/0001-tests-Make-pthread_detatch-call-portable-across-plat.patch87
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/0004-Fix-out-of-tree-builds.patch85
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/0004-pth_atfork1.c-Define-error-API-for-musl.patch37
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind_3.16.1.bb (renamed from poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb)28
349 files changed, 152210 insertions, 11951 deletions
diff --git a/poky/meta/recipes-devtools/apt/apt-native.inc b/poky/meta/recipes-devtools/apt/apt-native.inc
deleted file mode 100644
index d82678632..000000000
--- a/poky/meta/recipes-devtools/apt/apt-native.inc
+++ /dev/null
@@ -1,74 +0,0 @@
-require apt.inc
-inherit native
-
-DEPENDS += "dpkg-native gettext-native db-native curl-native xz-native"
-PACKAGES = ""
-USE_NLS = "yes"
-
-SRC_URI += "file://db_linking_hack.patch \
- file://0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch \
-"
-
-python do_install () {
- bb.build.exec_func('do_install_base', d)
- bb.build.exec_func('do_install_config', d)
-}
-
-python do_install_config () {
- indir = os.path.dirname(d.getVar('FILE'))
- infile = open(oe.path.join(indir, 'files', 'apt.conf'), 'r')
- data = infile.read()
- infile.close()
-
- data = d.expand(data)
-
- outdir = oe.path.join(d.getVar('D'), d.getVar('sysconfdir'), 'apt')
- if not os.path.exists(outdir):
- os.makedirs(outdir)
-
- outpath = oe.path.join(outdir, 'apt.conf.sample')
- if not os.path.exists(outpath):
- outfile = open(outpath, 'w')
- outfile.write(data)
- outfile.close()
-}
-
-do_install_base () {
- install -d ${D}${bindir}
- install -m 0755 bin/apt-cdrom ${D}${bindir}/
- install -m 0755 bin/apt-get ${D}${bindir}/
- install -m 0755 bin/apt-config ${D}${bindir}/
- install -m 0755 bin/apt-cache ${D}${bindir}/
- install -m 0755 bin/apt-sortpkgs ${D}${bindir}/
- install -m 0755 bin/apt-extracttemplates ${D}${bindir}/
- install -m 0755 bin/apt-ftparchive ${D}${bindir}/
-
- oe_libinstall -so -C bin libapt-private ${D}${libdir}/
-
- oe_libinstall -so -C bin libapt-pkg$GLIBC_VER$LIBSTDCPP_VER ${D}${libdir}/
- oe_libinstall -so -C bin libapt-inst$GLIBC_VER$LIBSTDCPP_VER ${D}${libdir}/
-
- install -d ${D}${libdir}/apt/methods
- install -m 0755 bin/methods/* ${D}${libdir}/apt/methods/
-
- install -d ${D}${libdir}/dpkg/methods/apt
- install -m 0644 ${S}/dselect/desc.apt ${D}${libdir}/dpkg/methods/apt/
- install -m 0644 ${S}/dselect/names ${D}${libdir}/dpkg/methods/apt/
- install -m 0755 ${S}/dselect/install ${D}${libdir}/dpkg/methods/apt/
- install -m 0755 ${S}/dselect/setup ${D}${libdir}/dpkg/methods/apt/
- install -m 0755 ${S}/dselect/update ${D}${libdir}/dpkg/methods/apt/
-
- install -d ${D}${sysconfdir}/apt
- install -d ${D}${sysconfdir}/apt/apt.conf.d
- install -d ${D}${sysconfdir}/apt/preferences.d
- install -d ${D}${localstatedir}/lib/apt/lists/partial
- install -d ${D}${localstatedir}/cache/apt/archives/partial
-
- install -d ${D}${localstatedir}/log/apt/
-
- install -d ${D}${includedir}/apt-pkg
- for h in `find ${S}/apt-pkg ${S}/apt-inst -name '*.h'`
- do
- install -m 0644 $h ${D}${includedir}/apt-pkg
- done
-}
diff --git a/poky/meta/recipes-devtools/apt/apt-native_1.2.31.bb b/poky/meta/recipes-devtools/apt/apt-native_1.2.31.bb
deleted file mode 100644
index 2952c2101..000000000
--- a/poky/meta/recipes-devtools/apt/apt-native_1.2.31.bb
+++ /dev/null
@@ -1,5 +0,0 @@
-require apt-native.inc
-
-SRC_URI += "file://noconfigure.patch \
- file://no-curl.patch \
-"
diff --git a/poky/meta/recipes-devtools/apt/apt-package.inc b/poky/meta/recipes-devtools/apt/apt-package.inc
deleted file mode 100644
index 922f739d0..000000000
--- a/poky/meta/recipes-devtools/apt/apt-package.inc
+++ /dev/null
@@ -1,94 +0,0 @@
-apt-manpages="doc/apt-cache.8 \
- doc/apt-cdrom.8 \
- doc/apt-config.8 \
- doc/apt-get.8 \
- doc/apt.8 \
- doc/apt.conf.5 \
- doc/apt_preferences.5 \
- doc/sources.list.5"
-apt-utils-manpages="doc/apt-extracttemplates.1 \
- doc/apt-sortpkgs.1"
-
-def get_files_apt_doc(d, bb, manpages):
- import re
- manpages = re.sub(r'\bdoc/(\S+)/(\S+)\.\1\.(.)\b', r'${mandir}/\1/man\3/\2.\3', manpages)
- manpages = re.sub(r'\bdoc/(\S+)\.(.)\b', r'${mandir}/man\2/\1.\2', manpages)
- return manpages
-
-def get_commands_apt_doc(d, bb, manpages):
- s = list()
- __dir_cache__ = list()
- for m in manpages.split():
- dest = get_files_apt_doc(d, bb, m)
- dir = os.path.dirname(dest)
- if not dir in __dir_cache__:
- s.append("install -d ${D}/%s" % dir)
- __dir_cache__.append(dir)
- s.append("install -m 0644 %s ${D}/%s" % (m, dest))
- return "\n".join(s)
-
-PACKAGES += "${PN}-utils ${PN}-utils-doc"
-FILES_${PN} = "${bindir}/apt-cdrom ${bindir}/apt-get \
- ${bindir}/apt-config ${bindir}/apt-cache \
- ${libdir}/apt ${libdir}/libapt*.so.* \
- ${localstatedir} ${sysconfdir} \
- ${libdir}/dpkg \
- ${systemd_unitdir}/system \
- "
-RDEPENDS_${PN} += "perl"
-FILES_${PN}-utils = "${bindir}/apt-sortpkgs ${bindir}/apt-extracttemplates"
-FILES_${PN}-doc = "${@get_files_apt_doc(d, bb, d.getVar('apt-manpages'))} \
- ${docdir}/apt"
-FILES_${PN}-utils-doc = "${@get_files_apt_doc(d, bb, d.getVar('apt-utils-manpages'))}"
-FILES_${PN}-dev = "${libdir}/libapt*.so ${includedir}"
-
-inherit systemd
-
-SYSTEMD_SERVICE_${PN} = "apt-daily.timer"
-
-do_install () {
- set -x
- install -d ${D}${bindir}
- install -m 0755 bin/apt-key ${D}${bindir}/
- install -m 0755 bin/apt-cdrom ${D}${bindir}/
- install -m 0755 bin/apt-get ${D}${bindir}/
- install -m 0755 bin/apt-config ${D}${bindir}/
- install -m 0755 bin/apt-cache ${D}${bindir}/
-
- install -m 0755 bin/apt-sortpkgs ${D}${bindir}/
- install -m 0755 bin/apt-extracttemplates ${D}${bindir}/
-
- oe_libinstall -so -C bin libapt-pkg ${D}${libdir}
- oe_libinstall -so -C bin libapt-inst ${D}${libdir}
-
- install -d ${D}${libdir}/apt/methods
- install -m 0755 bin/methods/* ${D}${libdir}/apt/methods/
-
- install -d ${D}${libdir}/dpkg/methods/apt
- install -m 0644 ${S}/dselect/desc.apt ${D}${libdir}/dpkg/methods/apt/
- install -m 0644 ${S}/dselect/names ${D}${libdir}/dpkg/methods/apt/
- install -m 0755 ${S}/dselect/install ${D}${libdir}/dpkg/methods/apt/
- install -m 0755 ${S}/dselect/setup ${D}${libdir}/dpkg/methods/apt/
- install -m 0755 ${S}/dselect/update ${D}${libdir}/dpkg/methods/apt/
-
- install -d ${D}${sysconfdir}/apt
- install -d ${D}${sysconfdir}/apt/apt.conf.d
- install -d ${D}${sysconfdir}/apt/sources.list.d
- install -d ${D}${sysconfdir}/apt/preferences.d
- install -d ${D}${localstatedir}/lib/apt/lists/partial
- install -d ${D}${localstatedir}/cache/apt/archives/partial
- install -d ${D}${docdir}/apt/examples
- install -m 0644 ${S}/doc/examples/* ${D}${docdir}/apt/examples/
-
- install -d ${D}${includedir}/apt-pkg/
- install -m 0644 include/apt-pkg/*.h ${D}${includedir}/apt-pkg/
-
- install -d ${D}${systemd_unitdir}/system/
- install -m 0755 ${S}/debian/apt.systemd.daily ${D}${libdir}/apt/
- install -m 0644 ${S}/debian/apt-daily.service ${D}${systemd_unitdir}/system/
- sed -i 's#/usr/lib/apt/#${libdir}/apt/#g' ${D}${systemd_unitdir}/system/apt-daily.service
- install -m 0644 ${S}/debian/apt-daily.timer ${D}${systemd_unitdir}/system/
- install -d ${D}${sysconfdir}/cron.daily/
- install -m 0755 ${S}/debian/apt.apt-compat.cron.daily ${D}${sysconfdir}/cron.daily/
- sed -i 's#/usr/lib/apt/#${libdir}/apt/#g' ${D}${sysconfdir}/cron.daily/apt.apt-compat.cron.daily
-}
diff --git a/poky/meta/recipes-devtools/apt/apt.inc b/poky/meta/recipes-devtools/apt/apt.inc
deleted file mode 100644
index 87d533782..000000000
--- a/poky/meta/recipes-devtools/apt/apt.inc
+++ /dev/null
@@ -1,40 +0,0 @@
-SUMMARY = "Advanced front-end for dpkg"
-DESCRIPTION = "Provides command-line tools for searching and managing as well \
-as querying information about packages as a low-level access to all features \
-of the libapt-pkg library."
-LICENSE = "GPLv2.0+"
-SECTION = "base"
-
-SRC_URI = "https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/${BPN}/${PV}/${BPN}_${PV}.tar.xz \
- file://use-host.patch \
- file://makerace.patch \
- file://no-nls-dpkg.patch \
- file://fix-gcc-4.6-null-not-defined.patch \
- file://truncate-filename.patch \
- file://nodoc.patch \
- file://disable-configure-in-makefile.patch \
- file://disable-test.patch \
- file://0001-environment.mak-musl-based-systems-can-generate-shar.patch \
- file://0001-apt-1.2.12-Fix-musl-build.patch \
- file://0001-Include-array.h-for-std-array.patch \
- file://0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch \
- "
-SRC_URI[md5sum] = "d30eed9304e82ea8238c854b5c5a34d9"
-SRC_URI[sha256sum] = "03ded4f5e9b8d43ecec083704b2dcabf20c182ed382db9ac7251da0b0b038059"
-LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-
-# the package is taken from snapshots.debian.org; that source is static and goes stale
-# so we check the latest upstream from a directory that does get updated
-UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/a/apt/"
-
-inherit autotools gettext useradd upstream-version-is-even
-
-EXTRA_AUTORECONF = "--exclude=autopoint,autoheader"
-
-do_configure_prepend() {
- rm -rf ${S}/buildlib/config.sub
- rm -rf ${S}/buildlib/config.guess
-}
-
-USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "--system --no-create-home --home-dir /nonexistent --shell /bin/false --user-group _apt"
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch b/poky/meta/recipes-devtools/apt/apt/0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch
new file mode 100644
index 000000000..199f11bf2
--- /dev/null
+++ b/poky/meta/recipes-devtools/apt/apt/0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch
@@ -0,0 +1,29 @@
+From 9023589317843df4e57f8ebef1d9a8398ddb929d Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Thu, 28 May 2020 15:34:05 +0000
+Subject: [PATCH] CMakeLists.txt: avoid changing install paths based on host
+ distro
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ CMakeLists.txt | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 2cd4f8e..4759812 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -21,9 +21,9 @@ set(CMAKE_EXE_LINKER_FLAGS_COVERAGE "-lgcov")
+ set(CMAKE_SHARED_LINKER_FLAGS_COVERAGE "-lgcov")
+
+ # Work around bug in GNUInstallDirs
+-if (EXISTS "/etc/debian_version")
+- set(CMAKE_INSTALL_LIBEXECDIR "lib")
+-endif()
++#if (EXISTS "/etc/debian_version")
++set(CMAKE_INSTALL_LIBEXECDIR "lib")
++#endif()
+
+ # Include stuff
+ include(Misc)
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-Disable-documentation-directory-altogether.patch b/poky/meta/recipes-devtools/apt/apt/0001-Disable-documentation-directory-altogether.patch
new file mode 100644
index 000000000..cc422b74d
--- /dev/null
+++ b/poky/meta/recipes-devtools/apt/apt/0001-Disable-documentation-directory-altogether.patch
@@ -0,0 +1,27 @@
+From cd164b353ba7958d51b2f33f4079fb9787c983e2 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Fri, 10 May 2019 14:16:47 +0200
+Subject: [PATCH] Disable documentation directory altogether
+
+Even when WITH_DOC=False, the build requires po4a to generate manpages.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 83334ba..2cd4f8e 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -232,7 +232,7 @@ add_subdirectory(apt-private)
+ add_subdirectory(apt-inst)
+ add_subdirectory(cmdline)
+ add_subdirectory(completions)
+-add_subdirectory(doc)
++#add_subdirectory(doc)
+ add_subdirectory(dselect)
+ add_subdirectory(ftparchive)
+ add_subdirectory(methods)
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-Do-not-configure-packages-on-installation.patch b/poky/meta/recipes-devtools/apt/apt/0001-Do-not-configure-packages-on-installation.patch
new file mode 100644
index 000000000..2322bd8e7
--- /dev/null
+++ b/poky/meta/recipes-devtools/apt/apt/0001-Do-not-configure-packages-on-installation.patch
@@ -0,0 +1,48 @@
+From 1ad21140787a6b8b0f774f75b50444d2c30a56f6 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Thu, 21 May 2020 20:28:12 +0000
+Subject: [PATCH] Do not configure packages on installation
+
+This is done separately in do_rootfs().
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
+---
+ apt-pkg/packagemanager.cc | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/apt-pkg/packagemanager.cc b/apt-pkg/packagemanager.cc
+index 156f7ad..0f6a87c 100644
+--- a/apt-pkg/packagemanager.cc
++++ b/apt-pkg/packagemanager.cc
+@@ -1013,10 +1013,12 @@ bool pkgPackageManager::SmartUnPack(PkgIterator Pkg, bool const Immediate, int c
+ return false;
+
+ if (Immediate == true) {
++#if 0
+ // Perform immediate configuration of the package.
+ if (SmartConfigure(Pkg, Depth + 1) == false)
+ _error->Error(_("Could not perform immediate configuration on '%s'. "
+ "Please see man 5 apt.conf under APT::Immediate-Configure for details. (%d)"),Pkg.FullName().c_str(),2);
++#endif
+ }
+
+ return true;
+@@ -1111,6 +1113,7 @@ pkgPackageManager::OrderResult pkgPackageManager::OrderInstall()
+ }
+ }
+
++#if 0
+ // Final run through the configure phase
+ if (ConfigureAll() == false)
+ return Failed;
+@@ -1125,7 +1128,7 @@ pkgPackageManager::OrderResult pkgPackageManager::OrderInstall()
+ return Failed;
+ }
+ }
+-
++#endif
+ return Completed;
+ }
+ // PM::DoInstallPostFork - compat /*{{{*/
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-Do-not-init-tables-from-dpkg-configuration.patch b/poky/meta/recipes-devtools/apt/apt/0001-Do-not-init-tables-from-dpkg-configuration.patch
new file mode 100644
index 000000000..d3d3ab026
--- /dev/null
+++ b/poky/meta/recipes-devtools/apt/apt/0001-Do-not-init-tables-from-dpkg-configuration.patch
@@ -0,0 +1,29 @@
+From b18d7aa7d71b53b86bac21cd1d8c3accabb28f2b Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Fri, 10 May 2019 16:47:38 +0200
+Subject: [PATCH] Do not init tables from dpkg configuration
+
+This would require sysroot relocation logic, and it's easier to just disable them.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
+---
+ apt-pkg/init.cc | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/apt-pkg/init.cc b/apt-pkg/init.cc
+index a619368..6e5a6cf 100644
+--- a/apt-pkg/init.cc
++++ b/apt-pkg/init.cc
+@@ -281,8 +281,8 @@ bool pkgInitSystem(Configuration &Cnf,pkgSystem *&Sys)
+ return _error->Error(_("Unable to determine a suitable packaging system type"));
+ }
+
+- if (pkgInitArchTupleMap() == false)
+- return false;
++// if (pkgInitArchTupleMap() == false)
++// return false;
+
+ return Sys->Initialize(Cnf);
+ }
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-apt-1.2.12-Fix-musl-build.patch b/poky/meta/recipes-devtools/apt/apt/0001-Fix-musl-build.patch
index f7ac19bfd..a6e8ef1e5 100644
--- a/poky/meta/recipes-devtools/apt/apt/0001-apt-1.2.12-Fix-musl-build.patch
+++ b/poky/meta/recipes-devtools/apt/apt/0001-Fix-musl-build.patch
@@ -1,10 +1,7 @@
-From 33b97e089d4a98d3acd20bd78337dd915b989bc2 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= <anibal.limon@linux.intel.com>
-Date: Fri, 5 Aug 2016 15:24:27 -0500
-Subject: [PATCH] apt 1.2.12: Fix musl build
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
+From 081c6be2f2f1cd77f399ea414f8d89c107826624 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Fri, 22 May 2020 15:29:23 +0000
+Subject: [PATCH] Fix musl build
methods/connect.cc: Musl doesn't support AI_IDN flag in netdb.h
header so define it manually.
@@ -12,15 +9,14 @@ apt-pkg/contrib/srvrec.h: Add explicity include of sys/types.h
to avoid errors in types u_int_SIZE.
Upstream-Status: Pending
-
-Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
apt-pkg/contrib/srvrec.h | 1 +
- methods/connect.cc | 3 +++
- 2 files changed, 4 insertions(+)
+ methods/connect.cc | 5 +++++
+ 2 files changed, 6 insertions(+)
diff --git a/apt-pkg/contrib/srvrec.h b/apt-pkg/contrib/srvrec.h
-index 01b8102..15b6875 100644
+index e22b7a1..b1115f5 100644
--- a/apt-pkg/contrib/srvrec.h
+++ b/apt-pkg/contrib/srvrec.h
@@ -9,6 +9,7 @@
@@ -28,23 +24,22 @@ index 01b8102..15b6875 100644
#define SRVREC_H
+#include <sys/types.h>
- #include <arpa/nameser.h>
- #include <vector>
#include <string>
+ #include <vector>
+ #include <arpa/nameser.h>
diff --git a/methods/connect.cc b/methods/connect.cc
-index 07a730b..bb0ab5a 100644
+index 1d6f891..122df35 100644
--- a/methods/connect.cc
+++ b/methods/connect.cc
-@@ -33,6 +33,9 @@
- #include <sys/socket.h>
- #include <arpa/inet.h>
- #include <netdb.h>
+@@ -42,6 +42,11 @@
+ #include "connect.h"
+ #include "rfc2553emu.h"
+ #include <apti18n.h>
++
+#ifndef AI_IDN
+#define AI_IDN 0x0040
+#endif
++
+ /*}}}*/
- #include "connect.h"
- #include "rfc2553emu.h"
---
-2.1.4
-
+ static std::string LastHost;
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-Include-array.h-for-std-array.patch b/poky/meta/recipes-devtools/apt/apt/0001-Include-array.h-for-std-array.patch
deleted file mode 100644
index e4a8faa2b..000000000
--- a/poky/meta/recipes-devtools/apt/apt/0001-Include-array.h-for-std-array.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 4d64ec843185bf6fd1b85c3a6a4c4e3c968c8ab1 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 20 Jan 2019 18:56:58 -0800
-Subject: [PATCH] Include <array.h> for std::array
-
-When compiling using clang/libc++ it fails to build because this header
-is not included, with libstdc++ this seems to be pulled in
-automatically.
-
-Fixes below error
-
-apt-pkg/contrib/strutl.cc:949:38: error: implicit instantiation of undefined template 'std::__1::array<const char *const, 7>'
- std::array<char const * const, 7> c_weekdays = {{ "sun", "mon", "tue", "wed", "thu", "fri", "sat" }};
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Upstream-Status: Backport [https://github.com/Debian/apt/commit/24a59c62efafbdb8387b2d3c5616b04b9fd21306]
----
- apt-pkg/contrib/strutl.cc | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/apt-pkg/contrib/strutl.cc b/apt-pkg/contrib/strutl.cc
-index 60d0ca8..c2bfcbc 100644
---- a/apt-pkg/contrib/strutl.cc
-+++ b/apt-pkg/contrib/strutl.cc
-@@ -21,6 +21,7 @@
- #include <apt-pkg/fileutl.h>
- #include <apt-pkg/error.h>
-
-+#include <array>
- #include <algorithm>
- #include <iomanip>
- #include <locale>
---
-2.20.1
-
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch b/poky/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch
index 734ba00d4..8c4cc0450 100644
--- a/poky/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch
+++ b/poky/meta/recipes-devtools/apt/apt/0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch
@@ -1,11 +1,9 @@
-From dfc1370d50322e2e9d225a7a63b44993fc01a727 Mon Sep 17 00:00:00 2001
-From: Roy Li <rongqing.li@windriver.com>
-Date: Fri, 22 May 2015 08:05:15 +0800
+From 742fbb243f99e940c3e6b31296f7f416f550a57a Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Thu, 21 May 2020 20:13:25 +0000
Subject: [PATCH] Revert "always run 'dpkg --configure -a' at the end of our
dpkg callings"
-Upstream-Status: Inappropriate [embedded specific]
-
This reverts commit a2a75ff4516f7609f4c55b42270abb8d08943c60, which
always run 'dpkg --configure -a' at the end of our dpkg callings,
but it does not work for cross-compile, since the rootfs dir can not
@@ -14,19 +12,19 @@ be passed into dpkg, and lead to the below similar error:
|mkdir: cannot create directory '/usr/lib/opkg': Permission denied
-------
-Signed-off-by: Roy Li <rongqing.li@windriver.com>
+Upstream-Status: Inappropriate [embedded specific]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
---
- apt-pkg/deb/dpkgpm.cc | 9 ++-------
- test/integration/test-apt-progress-fd-deb822 | 14 +++++++-------
- test/integration/test-no-fds-leaked-to-maintainer-scripts | 6 ++----
- 3 files changed, 11 insertions(+), 18 deletions(-)
+ apt-pkg/deb/dpkgpm.cc | 9 ++-------
+ 1 file changed, 2 insertions(+), 7 deletions(-)
diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc
-index 533d9b367..6ce81bbd9 100644
+index ffa880d..5875e86 100644
--- a/apt-pkg/deb/dpkgpm.cc
+++ b/apt-pkg/deb/dpkgpm.cc
-@@ -1041,12 +1041,6 @@ void pkgDPkgPM::BuildPackagesProgressMap()
- PackagesTotal++;
+@@ -1215,12 +1215,6 @@ void pkgDPkgPM::BuildPackagesProgressMap()
+ }
}
}
- /* one extra: We don't want the progress bar to reach 100%, especially not
@@ -37,90 +35,14 @@ index 533d9b367..6ce81bbd9 100644
- ++PackagesTotal;
}
/*}}}*/
- bool pkgDPkgPM::Go(int StatusFd)
-@@ -1268,8 +1262,9 @@ bool pkgDPkgPM::Go(APT::Progress::PackageManager *progress)
-
- // support subpressing of triggers processing for special
- // cases like d-i that runs the triggers handling manually
-+ bool const SmartConf = (_config->Find("PackageManager::Configure", "all") != "all");
+ bool pkgDPkgPM::Go(int StatusFd) /*{{{*/
+@@ -1716,7 +1710,8 @@ bool pkgDPkgPM::Go(APT::Progress::PackageManager *progress)
+
+ // support subpressing of triggers processing for special
+ // cases like d-i that runs the triggers handling manually
+- if (_config->FindB("DPkg::ConfigurePending", true))
++ bool const SmartConf = (_config->Find("PackageManager::Configure", "all") != "all");
++ if (0)
+ List.emplace_back(Item::ConfigurePending, pkgCache::PkgIterator());
+ }
bool const TriggersPending = _config->FindB("DPkg::TriggersPending", false);
-- if (_config->FindB("DPkg::ConfigurePending", true) == true)
-+ if (_config->FindB("DPkg::ConfigurePending", SmartConf) == true)
- List.push_back(Item(Item::ConfigurePending, PkgIterator()));
-
- // for the progress
-diff --git a/test/integration/test-apt-progress-fd-deb822 b/test/integration/test-apt-progress-fd-deb822
-index a8d59608d..0c6a9bbbf 100755
---- a/test/integration/test-apt-progress-fd-deb822
-+++ b/test/integration/test-apt-progress-fd-deb822
-@@ -27,36 +27,36 @@ Message: Installing testing (amd64)
-
- Status: progress
- Package: testing:amd64
--Percent: 16.6667
-+Percent: 20
- Message: Preparing testing (amd64)
-
- Status: progress
- Package: testing:amd64
--Percent: 33.3333
-+Percent: 40
- Message: Unpacking testing (amd64)
-
- Status: progress
- Package: testing:amd64
--Percent: 50.0000
-+Percent: 60.0000
- Message: Preparing to configure testing (amd64)
-
- Status: progress
--Percent: 50.0000
-+Percent: 60.0000
- Message: Running dpkg
-
- Status: progress
- Package: testing:amd64
--Percent: 50.0000
-+Percent: 60.0000
- Message: Configuring testing (amd64)
-
- Status: progress
- Package: testing:amd64
--Percent: 66.6667
-+Percent: 80
- Message: Configuring testing (amd64)
-
- Status: progress
- Package: testing:amd64
--Percent: 83.3333
-+Percent: 100
- Message: Installed testing (amd64)
-
- Status: progress
-diff --git a/test/integration/test-no-fds-leaked-to-maintainer-scripts b/test/integration/test-no-fds-leaked-to-maintainer-scripts
-index d86e638cd..ef6d23be2 100755
---- a/test/integration/test-no-fds-leaked-to-maintainer-scripts
-+++ b/test/integration/test-no-fds-leaked-to-maintainer-scripts
-@@ -59,8 +59,7 @@ startup packages configure
- configure $PKGNAME 1.0 <none>
- status unpacked $PKGNAME 1.0
- status half-configured $PKGNAME 1.0
--status installed $PKGNAME 1.0
--startup packages configure" cut -f 3- -d' ' rootdir/var/log/dpkg.log
-+status installed $PKGNAME 1.0" cut -f 3- -d' ' rootdir/var/log/dpkg.log
- }
- checkinstall
-
-@@ -85,8 +84,7 @@ status config-files $PKGNAME 1.0
- status config-files $PKGNAME 1.0
- status config-files $PKGNAME 1.0
- status config-files $PKGNAME 1.0
--status not-installed $PKGNAME <none>
--startup packages configure" cut -f 3- -d' ' rootdir/var/log/dpkg.log
-+status not-installed $PKGNAME <none>" cut -f 3- -d' ' rootdir/var/log/dpkg.log
- }
- checkpurge
-
---
-2.11.0
-
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch b/poky/meta/recipes-devtools/apt/apt/0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch
deleted file mode 100644
index ce5c00508..000000000
--- a/poky/meta/recipes-devtools/apt/apt/0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 7e8839731ae3fdf7502b91643aa6b252f6c5eaa6 Mon Sep 17 00:00:00 2001
-From: Adrian Bunk <bunk@stusta.de>
-Date: Thu, 14 May 2020 00:08:21 +0300
-Subject: The C.UTF-8 locale is not portable, use std::locale::classic()
-
-Upstream-Status: Inappropriate [Similar fix already in apt >= 1.3]
-Signed-off-by: Adrian Bunk <bunk@stusta.de>
----
- ftparchive/writer.cc | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/ftparchive/writer.cc b/ftparchive/writer.cc
-index 25963820a..6ad571d2a 100644
---- a/ftparchive/writer.cc
-+++ b/ftparchive/writer.cc
-@@ -984,7 +984,7 @@ ReleaseWriter::ReleaseWriter(FileFd * const GivenOutput, string const &/*DB*/) :
- AddPatterns(_config->FindVector("APT::FTPArchive::Release::Patterns"));
-
- time_t const now = time(NULL);
-- auto const posix = std::locale("C.UTF-8");
-+ auto const posix = std::locale::classic();
-
- // FIXME: use TimeRFC1123 here? But that uses GMT to satisfy HTTP/1.1
- std::ostringstream datestr;
---
-2.20.1
-
diff --git a/poky/meta/recipes-devtools/apt/apt/0001-environment.mak-musl-based-systems-can-generate-shar.patch b/poky/meta/recipes-devtools/apt/apt/0001-environment.mak-musl-based-systems-can-generate-shar.patch
deleted file mode 100644
index 042372b51..000000000
--- a/poky/meta/recipes-devtools/apt/apt/0001-environment.mak-musl-based-systems-can-generate-shar.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 2f8aa21ace375c18977ed908b291c80a210a93c6 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 31 Dec 2015 08:06:12 +0000
-Subject: [PATCH] environment.mak: musl based systems can generate shared
- objects too
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Pending
-
- buildlib/environment.mak.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/buildlib/environment.mak.in b/buildlib/environment.mak.in
-index b0a8d9d..3a52344 100644
---- a/buildlib/environment.mak.in
-+++ b/buildlib/environment.mak.in
-@@ -68,7 +68,7 @@ NEED_SOCKLEN_T_DEFINE = @NEED_SOCKLEN_T_DEFINE@
-
- # Shared library things
- HOST_OS = @host_os@
--ifneq ($(words $(filter gnu% linux-gnu% kfreebsd-gnu% %-gnu,$(HOST_OS))),0)
-+ifneq ($(words $(filter gnu% linux-gnu% kfreebsd-gnu% %-gnu linux-musl%,$(HOST_OS))),0)
- SONAME_MAGIC=-Wl,-soname -Wl,
- LFLAGS_SO=
- else
---
-2.6.4
-
diff --git a/poky/meta/recipes-devtools/apt/apt/disable-configure-in-makefile.patch b/poky/meta/recipes-devtools/apt/apt/disable-configure-in-makefile.patch
deleted file mode 100644
index 7c2f64e3e..000000000
--- a/poky/meta/recipes-devtools/apt/apt/disable-configure-in-makefile.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Disable configure at compilation stage
-
-Upstream-Status: Inappropriate [configuration]
-Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
-
-Index: apt-0.9.7.7/Makefile
-===================================================================
---- apt-0.9.7.7.orig/Makefile
-+++ apt-0.9.7.7/Makefile
-@@ -33,7 +33,7 @@ veryclean: clean
- # The startup target builds the necessary configure scripts. It should
- # be used after a CVS checkout.
- CONVERTED=environment.mak include/config.h include/apti18n.h build/doc/Doxyfile makefile
--include buildlib/configure.mak
-+#include buildlib/configure.mak
- $(BUILDDIR)/include/config.h: buildlib/config.h.in
- $(BUILDDIR)/include/apti18n.h: buildlib/apti18n.h.in
- $(BUILDDIR)/environment.mak: buildlib/environment.mak.in
diff --git a/poky/meta/recipes-devtools/apt/apt/disable-test.patch b/poky/meta/recipes-devtools/apt/apt/disable-test.patch
deleted file mode 100644
index d16b5c771..000000000
--- a/poky/meta/recipes-devtools/apt/apt/disable-test.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-From 67bc7948e0a721c75d636931abc105da5dcb0763 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= <anibal.limon@linux.intel.com>
-Date: Thu, 26 May 2016 15:32:11 -0500
-Subject: [PATCH] [PATCH] disable test
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Upstream-Status: Inappropriate [configuration]
-
-test needs gtest package, so not build the test dir
-
-Signed-off-by: Roy Li <rongqing.li@windriver.com>
-Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
----
- Makefile | 9 +++------
- configure.ac | 7 -------
- 2 files changed, 3 insertions(+), 13 deletions(-)
-
-Index: apt-1.2.24/Makefile
-===================================================================
---- apt-1.2.24.orig/Makefile
-+++ apt-1.2.24/Makefile
-@@ -9,8 +9,8 @@ endif
- .PHONY: default
- default: startup all
-
--.PHONY: fast headers library clean veryclean all binary program doc test update-po
--all headers library clean veryclean binary program doc manpages docbook test update-po startup dirs:
-+.PHONY: fast headers library clean veryclean all binary program doc update-po
-+all headers library clean veryclean binary program doc manpages docbook update-po startup dirs:
- $(MAKE) -C vendor $@
- $(MAKE) -C apt-pkg $@
- $(MAKE) -C apt-inst $@
-@@ -21,8 +21,6 @@ all headers library clean veryclean bina
- $(MAKE) -C dselect $@
- # $(MAKE) -C doc $@
- $(MAKE) -C po $@
-- # FIXME: -C test has issue swith parallel builds, investigate!
-- -$(MAKE) -C test $@
-
- fast:
- $(MAKE) -C vendor all
-@@ -32,9 +30,8 @@ fast:
- $(MAKE) -C methods all
- $(MAKE) -C cmdline all
- $(MAKE) -C ftparchive all
-- $(MAKE) -C test all
-
--all headers library clean veryclean binary program doc manpages docbook test update-po: startup dirs
-+all headers library clean veryclean binary program doc manpages docbook update-po: startup dirs
-
- dirs: startup
-
-Index: apt-1.2.24/configure.ac
-===================================================================
---- apt-1.2.24.orig/configure.ac
-+++ apt-1.2.24/configure.ac
-@@ -90,13 +90,6 @@ AC_CHECK_LIB(curl, curl_easy_init,
- AC_MSG_ERROR([failed: I need CURL due https support]),
- )
-
--AC_LANG_PUSH([C++])
--AC_CHECK_HEADER(gtest/gtest.h,,
-- AC_MSG_WARN([failed: I need gtest (packaged as libgtest-dev) for unit testing]),
--)
--AC_LANG_POP([C++])
--
--
- AC_SUBST(BDBLIB)
-
- HAVE_ZLIB=no
diff --git a/poky/meta/recipes-devtools/apt/apt/fix-gcc-4.6-null-not-defined.patch b/poky/meta/recipes-devtools/apt/apt/fix-gcc-4.6-null-not-defined.patch
deleted file mode 100644
index 899c6ef2f..000000000
--- a/poky/meta/recipes-devtools/apt/apt/fix-gcc-4.6-null-not-defined.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Upstream-Status: Pending
-
-Index: apt-1.2.24/apt-pkg/contrib/weakptr.h
-===================================================================
---- apt-1.2.24.orig/apt-pkg/contrib/weakptr.h
-+++ apt-1.2.24/apt-pkg/contrib/weakptr.h
-@@ -21,6 +21,7 @@
- #ifndef WEAK_POINTER_H
- #define WEAK_POINTER_H
-
-+#include <cstdlib>
- #include <set>
- #include <stddef.h>
-
diff --git a/poky/meta/recipes-devtools/apt/apt/makerace.patch b/poky/meta/recipes-devtools/apt/apt/makerace.patch
deleted file mode 100644
index 0c686d6e2..000000000
--- a/poky/meta/recipes-devtools/apt/apt/makerace.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-I was seeing various issues with parallel make, mainly due to to what was likely
-partially installed headers. If you change into the source directory and
-"NOISY=1 make ../obj/apt-pkg/sourcelist.opic" in apt-pkg, you'll see it
-doesn't have any dependencies on the headers being installed. This patch
-fixes that so things build correctly.
-
-RP 2012/3/19
-
-Upstream-Status: Pending
-
-Index: apt-1.2.24/buildlib/library.mak
-===================================================================
---- apt-1.2.24.orig/buildlib/library.mak
-+++ apt-1.2.24/buildlib/library.mak
-@@ -65,7 +65,7 @@ $(LIB)/lib$(LIBRARY).so.$(MAJOR).$(MINOR
-
- # Compilation rules
- vpath %.cc $(SUBDIRS)
--$(OBJ)/%.opic: %.cc $(LIBRARYDEPENDS)
-+$(OBJ)/%.opic: %.cc $(LIBRARYDEPENDS) $($(LOCAL)-HEADERS)
- echo Compiling $< to $@
- $(CXX) -c $(INLINEDEPFLAG) $(CPPFLAGS) $(CXXSTD) $(CXXFLAGS) $(PICFLAGS) -o $@ '$(abspath $<)'
- $(DoDep)
diff --git a/poky/meta/recipes-devtools/apt/apt/no-nls-dpkg.patch b/poky/meta/recipes-devtools/apt/apt/no-nls-dpkg.patch
deleted file mode 100644
index 98b6c96ca..000000000
--- a/poky/meta/recipes-devtools/apt/apt/no-nls-dpkg.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-Upstream-Status: Pending
-
-Index: apt-1.2.24/apt-pkg/deb/dpkgpm.cc
-===================================================================
---- apt-1.2.24.orig/apt-pkg/deb/dpkgpm.cc
-+++ apt-1.2.24/apt-pkg/deb/dpkgpm.cc
-@@ -54,6 +54,12 @@
- #include <apti18n.h>
- /*}}}*/
-
-+#ifdef USE_NLS
-+#define _dpkg(x) dgettext("dpkg", x)
-+#else
-+#define _dpkg(x) x
-+#endif
-+
- using namespace std;
-
- APT_PURE static string
-@@ -1703,7 +1709,7 @@ void pkgDPkgPM::WriteApportReport(const
- }
-
- // check if its not a follow up error
-- const char *needle = dgettext("dpkg", "dependency problems - leaving unconfigured");
-+ const char *needle = _dpkg("dependency problems - leaving unconfigured");
- if(strstr(errormsg, needle) != NULL) {
- std::clog << _("No apport report written because the error message indicates its a followup error from a previous failure.") << std::endl;
- return;
diff --git a/poky/meta/recipes-devtools/apt/apt/noconfigure.patch b/poky/meta/recipes-devtools/apt/apt/noconfigure.patch
deleted file mode 100644
index ebc67203b..000000000
--- a/poky/meta/recipes-devtools/apt/apt/noconfigure.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-Upstream-Status: Inappropriate [configuration]
-Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
-
-
-diff --git a/apt-pkg/packagemanager.cc b/apt-pkg/packagemanager.cc
-index 249542c..0a1911f 100644
---- a/apt-pkg/packagemanager.cc
-+++ b/apt-pkg/packagemanager.cc
-@@ -952,10 +952,12 @@ bool pkgPackageManager::SmartUnPack(PkgIterator Pkg, bool const Immediate, int c
- return false;
-
- if (Immediate == true) {
-+#if 0
- // Perform immedate configuration of the package.
- if (SmartConfigure(Pkg, Depth + 1) == false)
- _error->Error(_("Could not perform immediate configuration on '%s'. "
- "Please see man 5 apt.conf under APT::Immediate-Configure for details. (%d)"),Pkg.FullName().c_str(),2);
-+#endif
- }
-
- return true;
-@@ -1038,6 +1040,7 @@ pkgPackageManager::OrderResult pkgPackageManager::OrderInstall()
- }
- }
-
-+#if 0
- // Final run through the configure phase
- if (ConfigureAll() == false)
- return Failed;
-@@ -1052,6 +1055,7 @@ pkgPackageManager::OrderResult pkgPackageManager::OrderInstall()
- return Failed;
- }
- }
-+#endif
-
- return Completed;
- }
diff --git a/poky/meta/recipes-devtools/apt/apt/nodoc.patch b/poky/meta/recipes-devtools/apt/apt/nodoc.patch
deleted file mode 100644
index 78cf53884..000000000
--- a/poky/meta/recipes-devtools/apt/apt/nodoc.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Disable documentation
-
-Upstream-Status: Inappropriate [configuration]
-Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
-
-Index: apt-1.2.24/Makefile
-===================================================================
---- apt-1.2.24.orig/Makefile
-+++ apt-1.2.24/Makefile
-@@ -19,7 +19,7 @@ all headers library clean veryclean bina
- $(MAKE) -C cmdline $@
- $(MAKE) -C ftparchive $@
- $(MAKE) -C dselect $@
-- $(MAKE) -C doc $@
-+# $(MAKE) -C doc $@
- $(MAKE) -C po $@
- # FIXME: -C test has issue swith parallel builds, investigate!
- -$(MAKE) -C test $@
diff --git a/poky/meta/recipes-devtools/apt/apt/triehash b/poky/meta/recipes-devtools/apt/apt/triehash
new file mode 100755
index 000000000..b08bc6ec3
--- /dev/null
+++ b/poky/meta/recipes-devtools/apt/apt/triehash
@@ -0,0 +1,728 @@
+#!/usr/bin/perl -w
+#
+# Copyright (C) 2016 Julian Andres Klode <jak@jak-linux.org>
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
+=encoding utf8
+
+=head1 NAME
+
+triehash - Generate a perfect hash function derived from a trie.
+
+=cut
+
+use strict;
+use warnings;
+use utf8;
+use Getopt::Long;
+
+=head1 SYNOPSIS
+
+B<triehash> [S<I<option>>] [S<I<input file>>]
+
+=head1 DESCRIPTION
+
+triehash takes a list of words in input file and generates a function and
+an enumeration to describe the word
+
+=head1 INPUT FILE FORMAT
+
+The file consists of multiple lines of the form:
+
+ [label ~ ] word [= value]
+
+This maps word to value, and generates an enumeration with entries of the form:
+
+ label = value
+
+If I<label> is undefined, the word will be used, the minus character will be
+replaced by an underscore. If value is undefined it is counted upwards from
+the last value.
+
+There may also be one line of the format
+
+ [ label ~] = value
+
+Which defines the value to be used for non-existing keys. Note that this also
+changes default value for other keys, as for normal entries. So if you place
+
+ = 0
+
+at the beginning of the file, unknown strings map to 0, and the other strings
+map to values starting with 1. If label is not specified, the default is
+I<Unknown>.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-C>I<.c file> B<--code>=I<.c file>
+
+Generate code in the given file.
+
+=item B<-H>I<header file> B<--header>=I<header file>
+
+Generate a header in the given file, containing a declaration of the hash
+function and an enumeration.
+
+=item B<--enum-name=>I<word>
+
+The name of the enumeration.
+
+=item B<--function-name=>I<word>
+
+The name of the function.
+
+=item B<--label-prefix=>I<word>
+
+The prefix to use for labels.
+
+=item B<--label-uppercase>
+
+Uppercase label names when normalizing them.
+
+=item B<--namespace=>I<name>
+
+Put the function and enum into a namespace (C++)
+
+=item B<--class=>I<name>
+
+Put the function and enum into a class (C++)
+
+=item B<--enum-class>
+
+Generate an enum class instead of an enum (C++)
+
+=item B<--counter-name=>I<name>
+
+Use I<name> for a counter that is set to the latest entry in the enumeration
++ 1. This can be useful for defining array sizes.
+
+=item B<--ignore-case>
+
+Ignore case for words.
+
+=item B<--multi-byte>=I<value>
+
+Generate code reading multiple bytes at once. The value is a string of power
+of twos to enable. The default value is 320 meaning that 8, 4, and single byte
+reads are enabled. Specify 0 to disable multi-byte completely, or add 2 if you
+also want to allow 2-byte reads. 2-byte reads are disabled by default because
+they negatively affect performance on older Intel architectures.
+
+This generates code for both multiple bytes and single byte reads, but only
+enables the multiple byte reads of GNU C compatible compilers, as the following
+extensions are used:
+
+=over 8
+
+=item Byte-aligned integers
+
+We must be able to generate integers that are aligned to a single byte using:
+
+ typedef uint64_t __attribute__((aligned (1))) triehash_uu64;
+
+=item Byte-order
+
+The macros __BYTE_ORDER__ and __ORDER_LITTLE_ENDIAN__ must be defined.
+
+=back
+
+We forcefully disable multi-byte reads on platforms where the variable
+I<__ARM_ARCH> is defined and I<__ARM_FEATURE_UNALIGNED> is not defined,
+as there is a measurable overhead from emulating the unaligned reads on
+ARM.
+
+=item B<--language=>I<language>
+
+Generate a file in the specified language. Currently known are 'C' and 'tree',
+the latter generating a tree.
+
+=item B<--include=>I<header>
+
+Add the header to the include statements of the header file. The value must
+be surrounded by quotes or angle brackets for C code. May be specified multiple
+times.
+
+=back
+
+=cut
+
+my $unknown = -1;
+my $unknown_label = undef;
+my $counter_start = 0;
+my $enum_name = 'PerfectKey';
+my $function_name = 'PerfectHash';
+my $enum_class = 0;
+
+my $code_name = '-';
+my $header_name = '-';
+my $code;
+my $header;
+my $label_prefix = undef;
+my $label_uppercase = 0;
+my $ignore_case = 0;
+my $multi_byte = '320';
+my $language = 'C';
+my $counter_name = undef;
+my @includes = ();
+
+
+Getopt::Long::config('default',
+ 'bundling',
+ 'no_getopt_compat',
+ 'no_auto_abbrev',
+ 'permute',
+ 'auto_help');
+
+GetOptions ('code|C=s' => \$code_name,
+ 'header|H=s' => \$header_name,
+ 'function-name=s' => \$function_name,
+ 'label-prefix=s' => \$label_prefix,
+ 'label-uppercase' => \$label_uppercase,
+ 'ignore-case' => \$ignore_case,
+ 'enum-name=s' => \$enum_name,
+ 'language|l=s' => \$language,
+ 'multi-byte=s' => \$multi_byte,
+ 'enum-class' => \$enum_class,
+ 'include=s' => \@includes,
+ 'counter-name=s' => \$counter_name)
+ or die('Could not parse options!');
+
+
+# This implements a simple trie. Each node has three attributes:
+#
+# children - A hash of keys to other nodes
+# value - The value to be stored here
+# label - A named representation of the value.
+#
+# The key at each level of the trie can consist of one or more bytes, and the
+# trie can be normalized to a form where all keys at a level have the same
+# length using rebuild_tree().
+package Trie {
+
+ sub new {
+ my $class = shift;
+ my $self = {};
+ bless $self, $class;
+
+ $self->{children} = {};
+ $self->{value} = undef;
+ $self->{label} = undef;
+
+ return $self;
+ }
+
+ # Return the largest power of 2 smaller or equal to the argument
+ sub alignpower2 {
+ my ($self, $length) = @_;
+
+ return 8 if ($length >= 8 && $multi_byte =~ /3/);
+ return 4 if ($length >= 4 && $multi_byte =~ /2/);
+ return 2 if ($length >= 2 && $multi_byte =~ /1/);
+
+ return 1;
+ }
+
+ # Split the key into a head block and a tail
+ sub split_key {
+ my ($self, $key) = @_;
+ my $length = length $key;
+ my $split = $self->alignpower2($length);
+
+ return (substr($key, 0, $split), substr($key, $split));
+ }
+
+ # Given a key, a label, and a value, insert that into the tree, possibly
+ # replacing an existing node.
+ sub insert {
+ my ($self, $key, $label, $value) = @_;
+
+ if (length($key) == 0) {
+ $self->{label} = $label;
+ $self->{value} = $value;
+ return;
+ }
+
+ my ($child, $tail) = $self->split_key($key);
+
+ $self->{children}{$child} = Trie->new if (!defined($self->{children}{$child}));
+
+ $self->{children}{$child}->insert($tail, $label, $value);
+ }
+
+ # Construct a new trie that only contains words of a given length. This
+ # is used to split up the common trie after knowing all words, so we can
+ # switch on the expected word length first, and have the per-trie function
+ # implement simple longest prefix matching.
+ sub filter_depth {
+ my ($self, $togo) = @_;
+
+ my $new = Trie->new;
+
+ if ($togo != 0) {
+ my $found = 0;
+ foreach my $key (sort keys %{$self->{children}}) {
+ if ($togo > length($key) || defined $self->{children}{$key}->{value}) {
+ my $child = $self->{children}{$key}->filter_depth($togo - length($key));
+
+ $new->{children}{$key}= $child if defined $child;
+ $found = 1 if defined $child;
+ }
+ }
+ return if (!$found);
+ } else {
+ $new->{value} = $self->{value};
+ $new->{label} = $self->{label};
+ }
+
+ return $new;
+ }
+
+ # (helper for rebuild_tree)
+ # Reinsert all value nodes into the specified $trie, prepending $prefix
+ # to their $paths.
+ sub reinsert_value_nodes_into {
+ my ($self, $trie, $prefix) = @_;
+
+ $trie->insert($prefix, $self->{label}, $self->{value}) if (defined $self->{value});
+
+ foreach my $key (sort keys %{$self->{children}}) {
+ $self->{children}{$key}->reinsert_value_nodes_into($trie, $prefix . $key);
+ }
+ }
+
+ # (helper for rebuild_tree)
+ # Find the earliest point to split a key. Normally, we split at the maximum
+ # power of 2 that is greater or equal than the length of the key. When we
+ # are building an ASCII-optimised case-insensitive trie that simply ORs
+ # each byte with 0x20, we need to split at the first ambiguous character:
+ #
+ # For example, the words a-bc and a\rbc are identical in such a situation:
+ # '-' | 0x20 == '-' == '\r' | 0x20
+ # We cannot simply switch on all 4 bytes at once, but need to split before
+ # the ambiguous character so we can process the ambiguous character on its
+ # own.
+ sub find_earlier_split {
+ my ($self, $key) = @_;
+
+ if ($ignore_case) {
+ for my $i (0..length($key)-1) {
+ # If the key starts with an ambiguous character, we need to
+ # take only it. Otherwise, we need to take everything
+ # before the character.
+ return $self->alignpower2($i || 1) if (main::ambiguous(substr($key, $i, 1)));
+ }
+ }
+ return $self->alignpower2(length $key);
+ }
+
+ # This rebuilds the trie, splitting each key before ambiguous characters
+ # as explained in find_earlier_split(), and then chooses the smallest
+ # such split at each level, so that all keys at all levels have the same
+ # length (so we can use a multi-byte switch).
+ sub rebuild_tree {
+ my $self = shift;
+ # Determine if/where we need to split before an ambiguous character
+ my $new_split = 99999999999999999;
+ foreach my $key (sort keys %{$self->{children}}) {
+ my $special_length = $self->find_earlier_split($key);
+ $new_split = $special_length if ($special_length < $new_split);
+ }
+
+ # Start building a new uniform trie
+ my $newself = Trie->new;
+ $newself->{label} = $self->{label};
+ $newself->{value} = $self->{value};
+ $newself->{children} = {};
+
+ foreach my $key (sort keys %{$self->{children}}) {
+ my $head = substr($key, 0, $new_split);
+ my $tail = substr($key, $new_split);
+ # Rebuild the child node at $head, pushing $tail downwards
+ $newself->{children}{$head} //= Trie->new;
+ $self->{children}{$key}->reinsert_value_nodes_into($newself->{children}{$head}, $tail);
+ # We took up to one special character of each key label. There might
+ # be more, so we need to rebuild recursively.
+ $newself->{children}{$head} = $newself->{children}{$head}->rebuild_tree();
+ }
+
+ return $newself;
+ }
+}
+
+# Code generator for C and C++
+package CCodeGen {
+ my $static = ($code_name eq $header_name) ? "static " : "";
+ my $enum_specifier = $enum_class ? "enum class" : "enum";
+
+ sub new {
+ my $class = shift;
+ my $self = {};
+ bless $self, $class;
+
+ return $self;
+ }
+
+ sub open_output {
+ my $self = shift;
+ if ($code_name ne '-') {
+ open($code, '>', $code_name) or die "Cannot open $code_name: $!" ;
+ } else {
+ $code = *STDOUT;
+ }
+ if($code_name eq $header_name) {
+ $header = $code;
+ } elsif ($header_name ne '-') {
+ open($header, '>', $header_name) or die "Cannot open $header_name: $!" ;
+ } else {
+ $header = *STDOUT;
+ }
+ }
+
+ sub mangle_label {
+ my ($self, $label) = @_;
+
+ $label = $label_prefix . $label if defined($label_prefix);
+ $label = uc $label if $label_uppercase;
+
+ return $label;
+ }
+
+ sub word_to_label {
+ my ($self, $word) = @_;
+
+ $word =~ s/_/__/g;
+ $word =~ s/-/_/g;
+
+ return $self->mangle_label($word);
+ }
+
+ # Return a case label, by shifting and or-ing bytes in the word
+ sub case_label {
+ my ($self, $key) = @_;
+
+ return sprintf("'%s'", substr($key, 0, 1)) if not $multi_byte;
+
+ my $output = '0';
+
+ for my $i (0..length($key)-1) {
+ $output .= sprintf("| onechar('%s', %d, %d)", substr($key, $i, 1), 8 * $i, 8*length($key));
+ }
+
+ return $output;
+ }
+
+ # Return an appropriate read instruction for $length bytes from $offset
+ sub switch_key {
+ my ($self, $offset, $length) = @_;
+
+ return "string[$offset]" if $length == 1;
+ return sprintf("*((triehash_uu%s*) &string[$offset])", $length * 8);
+ }
+
+ # Render the trie so that it matches the longest prefix.
+ sub print_table {
+ my ($self, $trie, $fh, $indent, $index) = @_;
+ $indent //= 0;
+ $index //= 0;
+
+ # If we have children, try to match them.
+ if (%{$trie->{children}}) {
+ # The difference between lowercase and uppercase alphabetical characters
+ # is that they have one bit flipped. If we have alphabetical characters
+ # in the search space, and the entire search space works fine if we
+ # always turn on the flip, just OR the character we are switching over
+ # with the bit.
+ my $want_use_bit = 0;
+ my $can_use_bit = 1;
+ my $key_length = 0;
+ foreach my $key (sort keys %{$trie->{children}}) {
+ $can_use_bit &= not main::ambiguous($key);
+ $want_use_bit |= ($key =~ /^[a-zA-Z]+$/);
+ $key_length = length($key);
+ }
+
+ if ($ignore_case && $can_use_bit && $want_use_bit) {
+ printf { $fh } ((' ' x $indent) . "switch(%s | 0x%s) {\n", $self->switch_key($index, $key_length), '20' x $key_length);
+ } else {
+ printf { $fh } ((' ' x $indent) . "switch(%s) {\n", $self->switch_key($index, $key_length));
+ }
+
+ my $notfirst = 0;
+ foreach my $key (sort keys %{$trie->{children}}) {
+ if ($notfirst) {
+ printf { $fh } (' ' x $indent . " break;\n");
+ }
+ if ($ignore_case) {
+ printf { $fh } (' ' x $indent . "case %s:\n", $self->case_label(lc($key)));
+ printf { $fh } (' ' x $indent . "case %s:\n", $self->case_label(uc($key))) if lc($key) ne uc($key) && !($can_use_bit && $want_use_bit);
+ } else {
+ printf { $fh } (' ' x $indent . "case %s:\n", $self->case_label($key));
+ }
+
+ $self->print_table($trie->{children}{$key}, $fh, $indent + 1, $index + length($key));
+
+ $notfirst=1;
+ }
+
+ printf { $fh } (' ' x $indent . "}\n");
+ }
+
+
+ # This node has a value, so it is a possible end point. If no children
+ # matched, we have found our longest prefix.
+ if (defined $trie->{value}) {
+ printf { $fh } (' ' x $indent . "return %s;\n", ($enum_class ? "${enum_name}::" : '').$trie->{label});
+ }
+
+ }
+
+ sub print_words {
+ my ($self, $trie, $fh, $indent, $sofar) = @_;
+
+ $indent //= 0;
+ $sofar //= '';
+
+
+ printf { $fh } (' ' x $indent."%s = %s,\n", $trie->{label}, $trie->{value}) if defined $trie->{value};
+
+ foreach my $key (sort keys %{$trie->{children}}) {
+ $self->print_words($trie->{children}{$key}, $fh, $indent, $sofar . $key);
+ }
+ }
+
+ sub print_functions {
+ my ($self, $trie, %lengths) = @_;
+ foreach my $local_length (sort { $a <=> $b } (keys %lengths)) {
+ print { $code } ("static enum ${enum_name} ${function_name}${local_length}(const char *string)\n");
+ print { $code } ("{\n");
+ $self->print_table($trie->filter_depth($local_length)->rebuild_tree(), $code, 1);
+ printf { $code } (" return %s$unknown_label;\n", ($enum_class ? "${enum_name}::" : ''));
+ print { $code } ("}\n");
+ }
+ }
+
+ sub main {
+ my ($self, $trie, $num_values, %lengths) = @_;
+ print { $header } ("#ifndef TRIE_HASH_${function_name}\n");
+ print { $header } ("#define TRIE_HASH_${function_name}\n");
+ print { $header } ("#include <stddef.h>\n");
+ print { $header } ("#include <stdint.h>\n");
+ foreach my $include (@includes) {
+ print { $header } ("#include $include\n");
+ }
+ printf { $header } ("enum { $counter_name = $num_values };\n") if (defined($counter_name));
+ print { $header } ("${enum_specifier} ${enum_name} {\n");
+ $self->print_words($trie, $header, 1);
+ printf { $header } (" $unknown_label = $unknown,\n");
+ print { $header } ("};\n");
+ print { $header } ("${static}enum ${enum_name} ${function_name}(const char *string, size_t length);\n");
+
+ print { $code } ("#include \"$header_name\"\n") if ($header_name ne $code_name);
+
+ if ($multi_byte) {
+ print { $code } ("#ifdef __GNUC__\n");
+ foreach my $i ((16, 32, 64)) {
+ print { $code } ("typedef uint${i}_t __attribute__((aligned (1))) triehash_uu${i};\n");
+ print { $code } ("typedef char static_assert${i}[__alignof__(triehash_uu${i}) == 1 ? 1 : -1];\n");
+ }
+
+ print { $code } ("#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__\n");
+ print { $code } ("#define onechar(c, s, l) (((uint64_t)(c)) << (s))\n");
+ print { $code } ("#else\n");
+ print { $code } ("#define onechar(c, s, l) (((uint64_t)(c)) << (l-8-s))\n");
+ print { $code } ("#endif\n");
+ print { $code } ("#if (!defined(__ARM_ARCH) || defined(__ARM_FEATURE_UNALIGNED)) && !defined(TRIE_HASH_NO_MULTI_BYTE)\n");
+ print { $code } ("#define TRIE_HASH_MULTI_BYTE\n");
+ print { $code } ("#endif\n");
+ print { $code } ("#endif /*GNUC */\n");
+
+ print { $code } ("#ifdef TRIE_HASH_MULTI_BYTE\n");
+ $self->print_functions($trie, %lengths);
+ $multi_byte = 0;
+ print { $code } ("#else\n");
+ $self->print_functions($trie, %lengths);
+ print { $code } ("#endif /* TRIE_HASH_MULTI_BYTE */\n");
+ } else {
+ $self->print_functions($trie, %lengths);
+ }
+
+ print { $code } ("${static}enum ${enum_name} ${function_name}(const char *string, size_t length)\n");
+ print { $code } ("{\n");
+ print { $code } (" switch (length) {\n");
+ foreach my $local_length (sort { $a <=> $b } (keys %lengths)) {
+ print { $code } (" case $local_length:\n");
+ print { $code } (" return ${function_name}${local_length}(string);\n");
+ }
+ print { $code } (" default:\n");
+ printf { $code } (" return %s$unknown_label;\n", ($enum_class ? "${enum_name}::" : ''));
+ print { $code } (" }\n");
+ print { $code } ("}\n");
+
+ # Print end of header here, in case header and code point to the same file
+ print { $header } ("#endif /* TRIE_HASH_${function_name} */\n");
+ }
+}
+
+# A character is ambiguous if the 1<<5 (0x20) bit does not correspond to the
+# lower case bit. A word is ambiguous if any character is. This definition is
+# used to check if we can perform the |0x20 optimization when building a case-
+# insensitive trie.
+sub ambiguous {
+ my $word = shift;
+
+ foreach my $char (split //, $word) {
+ # If 0x20 does not solely indicate lowercase, it is ambiguous
+ return 1 if ord(lc($char)) != (ord($char) | 0x20);
+ return 1 if ord(uc($char)) != (ord($char) & ~0x20);
+ }
+
+ return 0;
+}
+
+sub build_trie {
+ my $codegen = shift;
+ my $trie = Trie->new;
+
+ my $counter = $counter_start;
+ my $prev_value;
+ my %lengths;
+
+ open(my $input, '<', $ARGV[0]) or die "Cannot open $ARGV[0]: $!";
+ while (my $line = <$input>) {
+ my ($label, $word, $value) = $line =~ m{
+ (?:\s*([^~\s]+)\s*~)? # Label ~
+ (?:\s*([^~=\s]+))? # Word
+ (?:\s*=\s*([^\s]+)\s+)? # = Value
+ \s*
+ }x;
+
+ if (defined $word) {
+ $label //= $codegen->word_to_label($word);
+ $value //= defined $prev_value ? $prev_value + 1 : 0;
+
+ $trie->insert($word, $label, $value);
+ $lengths{length($word)} = 1;
+ } elsif (defined $value) {
+ $unknown = $value;
+ $unknown_label = $codegen->mangle_label($label) if defined $label;
+ } else {
+ die "Invalid line: $line";
+ }
+
+ $prev_value = $value;
+ $counter = $value + 1 if $value >= $counter;
+ }
+
+ $unknown_label //= $codegen->mangle_label('Unknown');
+
+ return ($trie, $counter, %lengths);
+}
+
+# Generates an ASCII art tree
+package TreeCodeGen {
+
+ sub new {
+ my $class = shift;
+ my $self = {};
+ bless $self, $class;
+
+ return $self;
+ }
+
+ sub mangle_label {
+ my ($self, $label) = @_;
+ return $label;
+ }
+
+ sub word_to_label {
+ my ($self, $word) = @_;
+ return $word;
+ }
+
+ sub main {
+ my ($self, $trie, $counter, %lengths) = @_;
+ printf { $code } ("┌────────────────────────────────────────────────────┐\n");
+ printf { $code } ("│ Initial trie │\n");
+ printf { $code } ("└────────────────────────────────────────────────────┘\n");
+ $self->print($trie);
+ printf { $code } ("┌────────────────────────────────────────────────────┐\n");
+ printf { $code } ("│ Rebuilt trie │\n");
+ printf { $code } ("└────────────────────────────────────────────────────┘\n");
+ $self->print($trie->rebuild_tree());
+
+ foreach my $local_length (sort { $a <=> $b } (keys %lengths)) {
+ printf { $code } ("┌────────────────────────────────────────────────────┐\n");
+ printf { $code } ("│ Trie for words of length %-4d │\n", $local_length);
+ printf { $code } ("└────────────────────────────────────────────────────┘\n");
+ $self->print($trie->filter_depth($local_length)->rebuild_tree());
+ }
+ }
+
+ sub open_output {
+ my $self = shift;
+ if ($code_name ne '-') {
+ open($code, '>:encoding(utf8)', $code_name) or die "Cannot open $ARGV[0]: $!" ;
+ } else {
+ $code = *STDOUT;
+ binmode($code, ':encoding(utf8)');
+ }
+ }
+
+ # Print a trie
+ sub print {
+ my ($self, $trie, $depth) = @_;
+ $depth //= 0;
+
+ print { $code } (' → ') if defined($trie->{label});
+ print { $code } ($trie->{label} // '', "\n");
+ foreach my $key (sort keys %{$trie->{children}}) {
+ print { $code } ('│ ' x ($depth), "├── $key");
+ $self->print($trie->{children}{$key}, $depth + 1);
+ }
+ }
+}
+
+my %codegens = (
+ C => 'CCodeGen',
+ tree => 'TreeCodeGen',
+);
+
+
+defined($codegens{$language}) or die "Unknown language $language. Valid choices: ", join(', ', keys %codegens);
+my $codegen = $codegens{$language}->new();
+my ($trie, $counter, %lengths) = build_trie($codegen);
+
+$codegen->open_output();
+$codegen->main($trie, $counter, %lengths);
+
+
+=head1 LICENSE
+
+triehash is available under the MIT/Expat license, see the source code
+for more information.
+
+=head1 AUTHOR
+
+Julian Andres Klode <jak@jak-linux.org>
+
+=cut
+
diff --git a/poky/meta/recipes-devtools/apt/apt/truncate-filename.patch b/poky/meta/recipes-devtools/apt/apt/truncate-filename.patch
deleted file mode 100644
index db1c42b66..000000000
--- a/poky/meta/recipes-devtools/apt/apt/truncate-filename.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-strutl.cc: the filename can't be longer than 255
-
-The URItoFileName translates the path into the filename, but the
-filename can't be longer than 255 according to
-/usr/include/linux/limits.h.
-
-Truncate it when it is longer than 240 (leave some spaces for
-".Packages" and "._Release" suffix)
-
-Upstream-Status: Pending
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
----
- apt-pkg/contrib/strutl.cc | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/apt-pkg/contrib/strutl.cc b/apt-pkg/contrib/strutl.cc
---- a/apt-pkg/contrib/strutl.cc
-+++ b/apt-pkg/contrib/strutl.cc
-@@ -399,7 +399,12 @@ string URItoFileName(const string &URI)
- // "\x00-\x20{}|\\\\^\\[\\]<>\"\x7F-\xFF";
- string NewURI = QuoteString(U,"\\|{}[]<>\"^~_=!@#$%^&*");
- replace(NewURI.begin(),NewURI.end(),'/','_');
-- return NewURI;
-+
-+ // Truncate from the head when it is longer than 240
-+ if(NewURI.length() > 240)
-+ return NewURI.substr(NewURI.length() - 240, NewURI.length() - 1);
-+ else
-+ return NewURI;
- }
- /*}}}*/
- // Base64Encode - Base64 Encoding routine for short strings /*{{{*/
---
-1.7.10.4
-
diff --git a/poky/meta/recipes-devtools/apt/apt/use-host.patch b/poky/meta/recipes-devtools/apt/apt/use-host.patch
deleted file mode 100644
index b30fcff0d..000000000
--- a/poky/meta/recipes-devtools/apt/apt/use-host.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Upstream-Status: Pending
-
-Index: apt-0.9.7.7/configure.ac
-===================================================================
---- apt-0.9.7.7.orig/configure.ac
-+++ apt-0.9.7.7/configure.ac
-@@ -112,7 +112,7 @@ dnl This is often the dpkg architecture
- dnl First check against the full canonical canoncial-system-type in $target
- dnl and if that fails, just look for the cpu
- AC_MSG_CHECKING(debian architecture)
--archset="`dpkg-architecture -qDEB_HOST_ARCH`"
-+archset="`echo $host_alias|cut -d'-' -f1`"
- if test "x$archset" = "x"; then
- AC_MSG_ERROR([failed: use --host= or output from dpkg-architecture])
- fi
diff --git a/poky/meta/recipes-devtools/apt/apt_1.2.31.bb b/poky/meta/recipes-devtools/apt/apt_1.2.31.bb
deleted file mode 100644
index ae0bce933..000000000
--- a/poky/meta/recipes-devtools/apt/apt_1.2.31.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-DEPENDS = "curl db zlib"
-RDEPENDS_${PN} = "dpkg bash debianutils"
-require apt.inc
-
-require apt-package.inc
-
-PACKAGECONFIG ??= "lzma"
-PACKAGECONFIG[lzma] = "ac_cv_lib_lzma_lzma_easy_encoder=yes,ac_cv_lib_lzma_lzma_easy_encoder=no,xz"
-PACKAGECONFIG[bz2] = "ac_cv_lib_bz2_BZ2_bzopen=yes,ac_cv_lib_bz2_BZ2_bzopen=no,bzip2"
-PACKAGECONFIG[lz4] = "ac_cv_lib_lz4_LZ4F_createCompressionContext=yes,ac_cv_lib_lz4_LZ4F_createCompressionContext=no,lz4"
-
-FILES_${PN} += "${bindir}/apt-key"
-apt-manpages += "doc/apt-key.8"
-
-do_install_append() {
- #Write the correct apt-architecture to apt.conf
- APT_CONF=${D}/etc/apt/apt.conf
- echo 'APT::Architecture "${DPKG_ARCH}";' > ${APT_CONF}
- oe_libinstall -so -C bin libapt-private ${D}${libdir}/
-}
diff --git a/poky/meta/recipes-devtools/apt/apt_1.8.2.1.bb b/poky/meta/recipes-devtools/apt/apt_1.8.2.1.bb
new file mode 100644
index 000000000..bd1f4f39c
--- /dev/null
+++ b/poky/meta/recipes-devtools/apt/apt_1.8.2.1.bb
@@ -0,0 +1,106 @@
+SUMMARY = "Advanced front-end for dpkg"
+LICENSE = "GPLv2.0+"
+SECTION = "base"
+
+# Triehash script taken from https://github.com/julian-klode/triehash
+SRC_URI = "${DEBIAN_MIRROR}/main/a/apt/${BPN}_${PV}.tar.xz \
+ file://triehash \
+ file://0001-Disable-documentation-directory-altogether.patch \
+ file://0001-Fix-musl-build.patch \
+ file://0001-CMakeLists.txt-avoid-changing-install-paths-based-on.patch \
+ "
+
+SRC_URI_append_class-native = " \
+ file://0001-Do-not-init-tables-from-dpkg-configuration.patch \
+ file://0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch \
+ file://0001-Do-not-configure-packages-on-installation.patch \
+ "
+
+SRC_URI[sha256sum] = "6d447f2e9437ec24e78350b63bb0592bee1f050811d51990b0c783183b0983f8"
+LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+# the package is taken from snapshots.debian.org; that source is static and goes stale
+# so we check the latest upstream from a directory that does get updated
+UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/a/apt/"
+
+inherit cmake perlnative bash-completion upstream-version-is-even
+
+BBCLASSEXTEND = "native"
+
+DEPENDS += "virtual/libiconv virtual/libintl db gnutls lz4 zlib bzip2 xz"
+
+EXTRA_OECMAKE_append = " -DCURRENT_VENDOR=debian -DWITH_DOC=False -DUSE_NLS=False -DDPKG_DATADIR=${datadir}/dpkg -DTRIEHASH_EXECUTABLE=${WORKDIR}/triehash"
+
+do_configure_prepend () {
+ echo "set( CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH )" >> ${WORKDIR}/toolchain.cmake
+
+}
+
+# Unfortunately apt hardcodes this all over the place
+FILES_${PN} += "${prefix}/lib/dpkg ${prefix}/lib/apt"
+RDEPENDS_${PN} += "bash perl dpkg"
+
+do_install_append_class-native() {
+ cat > ${D}${sysconfdir}/apt/apt.conf.sample << EOF
+Dir "${STAGING_DIR_NATIVE}/"
+{
+ State "var/lib/apt/"
+ {
+ Lists "#APTCONF#/lists/";
+ status "#ROOTFS#/var/lib/dpkg/status";
+ };
+ Cache "var/cache/apt/"
+ {
+ Archives "archives/";
+ pkgcache "";
+ srcpkgcache "";
+ };
+ Bin "${STAGING_BINDIR_NATIVE}/"
+ {
+ methods "${STAGING_LIBDIR}/apt/methods/";
+ gzip "/bin/gzip";
+ dpkg "dpkg";
+ dpkg-source "dpkg-source";
+ dpkg-buildpackage "dpkg-buildpackage";
+ apt-get "apt-get";
+ apt-cache "apt-cache";
+ };
+ Etc "#APTCONF#"
+ {
+ Preferences "preferences";
+ };
+ Log "var/log/apt";
+};
+
+APT
+{
+ Install-Recommends "true";
+ Immediate-Configure "false";
+ Architecture "i586";
+ Get
+ {
+ Assume-Yes "true";
+ };
+};
+
+Acquire
+{
+ AllowInsecureRepositories "true";
+};
+
+DPkg::Options {"--root=#ROOTFS#";"--admindir=#ROOTFS#/var/lib/dpkg";"--force-all";"--no-debsig"};
+DPkg::Path "";
+EOF
+}
+
+do_install_append_class-target() {
+ #Write the correct apt-architecture to apt.conf
+ APT_CONF=${D}/etc/apt/apt.conf
+ echo 'APT::Architecture "${DPKG_ARCH}";' > ${APT_CONF}
+}
+
+# Avoid non-reproducible -src package
+do_install_append () {
+ sed -i -e "s,${B},,g" \
+ ${B}/apt-pkg/tagfile-keys.cc
+}
diff --git a/poky/meta/recipes-devtools/apt/files/apt.conf b/poky/meta/recipes-devtools/apt/files/apt.conf
deleted file mode 100644
index c95a5b07a..000000000
--- a/poky/meta/recipes-devtools/apt/files/apt.conf
+++ /dev/null
@@ -1,42 +0,0 @@
-Dir "${STAGING_DIR_NATIVE}/"
-{
- State "var/lib/apt/"
- {
- Lists "#APTCONF#/lists/";
- status "#ROOTFS#/var/lib/dpkg/status";
- };
- Cache "var/cache/apt/"
- {
- Archives "archives/";
- pkgcache "";
- srcpkgcache "";
- };
- Bin "${STAGING_BINDIR_NATIVE}/"
- {
- methods "${STAGING_LIBDIR}/apt/methods/";
- gzip "/bin/gzip";
- dpkg "dpkg";
- dpkg-source "dpkg-source";
- dpkg-buildpackage "dpkg-buildpackage";
- apt-get "apt-get";
- apt-cache "apt-cache";
- };
- Etc "#APTCONF#"
- {
- Preferences "preferences";
- };
-};
-
-APT
-{
- Install-Recommends "true";
- Immediate-Configure "false";
- Architecture "i586";
- Get
- {
- Assume-Yes "true";
- Force-Yes "true"
- };
-};
-
-DPkg::Options {"--root=#ROOTFS#";"--admindir=#ROOTFS#/var/lib/dpkg";"--force-all";"--no-force-overwrite";"--no-debsig"};
diff --git a/poky/meta/recipes-devtools/apt/files/db_linking_hack.patch b/poky/meta/recipes-devtools/apt/files/db_linking_hack.patch
deleted file mode 100644
index a61d4b07c..000000000
--- a/poky/meta/recipes-devtools/apt/files/db_linking_hack.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Upstream-Status: Backport
-
-Index: apt-0.7.3/configure.ac
-===================================================================
---- apt-0.7.3.orig/configure.ac 2007-07-01 10:38:45.000000000 +0000
-+++ apt-0.7.3/configure.ac 2007-08-21 13:39:26.000000000 +0000
-@@ -67,8 +67,20 @@
- [AC_DEFINE(HAVE_BDB)
- BDBLIB="-ldb"
- AC_MSG_RESULT(yes)],
-- [BDBLIB=""
-- AC_MSG_RESULT(no)]
-+
-+ LIBS="$LIBS -lpthread"
-+ [AC_MSG_CHECKING(if we can link against BerkeleyDB with pthread)
-+ AC_LINK_IFELSE(
-+ [AC_LANG_PROGRAM(
-+ [#include <db.h>],
-+ [int r, s, t; db_version(&r, &s, &t);]
-+ )],
-+ [AC_DEFINE(HAVE_BDB)
-+ BDBLIB="-ldb -lpthread"
-+ AC_MSG_RESULT(yes)],
-+ [BDBLIB=""
-+ AC_MSG_RESULT(no)]
-+ )]
- )]
- )
-
diff --git a/poky/meta/recipes-devtools/apt/files/environment.patch b/poky/meta/recipes-devtools/apt/files/environment.patch
deleted file mode 100644
index 9a0303803..000000000
--- a/poky/meta/recipes-devtools/apt/files/environment.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Upstream-Status: Backport
-
-Index: apt-0.6.46.2/buildlib/environment.mak.in
-===================================================================
---- apt-0.6.46.2.orig/buildlib/environment.mak.in 2007-03-29 11:38:58.000000000 +0100
-+++ apt-0.6.46.2/buildlib/environment.mak.in 2007-03-29 11:39:12.000000000 +0100
-@@ -62,7 +62,7 @@
-
- # Shared library things
- HOST_OS = @host_os@
--ifneq ($(words $(filter linux-gnu gnu% %gnu,$(HOST_OS))),0)
-+ifneq ($(words $(filter linux-gnu linux-gnueabi gnu% %gnu,$(HOST_OS))),0)
- SONAME_MAGIC=-Wl,-soname -Wl,
- LFLAGS_SO=
- else
diff --git a/poky/meta/recipes-devtools/apt/files/no-curl.patch b/poky/meta/recipes-devtools/apt/files/no-curl.patch
deleted file mode 100644
index 0838552b2..000000000
--- a/poky/meta/recipes-devtools/apt/files/no-curl.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-Upstream-Status: Inappropriate [configuration]
-From 5d61ac822fd9a3871cd5089389c210606232ecdc Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= <anibal.limon@linux.intel.com>
-Date: Thu, 26 May 2016 15:34:45 -0500
-Subject: [PATCH] Upstream-Status: Inappropriate [configuration]
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
----
- configure.ac | 7 -------
- methods/makefile | 7 -------
- 2 files changed, 14 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index e47f459..cd24264 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -83,13 +83,6 @@ AC_CHECK_HEADER(db.h,
-
- LIBS="$saveLIBS"
-
--AC_CHECK_LIB(curl, curl_easy_init,
-- [AC_CHECK_HEADER(curl/curl.h,
-- curl_ok=yes,
-- curl_ok=no)],
-- AC_MSG_ERROR([failed: I need CURL due https support]),
--)
--
- AC_SUBST(BDBLIB)
-
- HAVE_ZLIB=no
-diff --git a/methods/makefile b/methods/makefile
-index 3274e92..255086b 100644
---- a/methods/makefile
-+++ b/methods/makefile
-@@ -51,13 +51,6 @@ LIB_MAKES = apt-pkg/makefile
- SOURCE = http.cc http_main.cc rfc2553emu.cc connect.cc server.cc
- include $(PROGRAM_H)
-
--# The https method
--PROGRAM=https
--SLIBS = -lapt-pkg -lcurl $(INTLLIBS) -lresolv
--LIB_MAKES = apt-pkg/makefile
--SOURCE = https.cc server.cc
--include $(PROGRAM_H)
--
- # The ftp method
- PROGRAM=ftp
- SLIBS = -lapt-pkg $(SOCKETLIBS) $(INTLLIBS) -lresolv
---
-2.1.4
-
diff --git a/poky/meta/recipes-devtools/autoconf/autoconf.inc b/poky/meta/recipes-devtools/autoconf/autoconf.inc
index 2c87bf829..787f30a09 100644
--- a/poky/meta/recipes-devtools/autoconf/autoconf.inc
+++ b/poky/meta/recipes-devtools/autoconf/autoconf.inc
@@ -5,9 +5,8 @@ file that lists the operating system features that the package can use, in the f
LICENSE = "GPLv3"
HOMEPAGE = "http://www.gnu.org/software/autoconf/"
SECTION = "devel"
-DEPENDS += "m4-native"
-DEPENDS_class-native = "m4-native gnu-config-native"
-DEPENDS_class-nativesdk = "nativesdk-m4 nativesdk-gnu-config"
+DEPENDS = "m4-native gnu-config-native"
+
RDEPENDS_${PN} = "m4 gnu-config \
perl \
perl-module-bytes \
@@ -62,11 +61,6 @@ RDEPENDS_${PN}_class-nativesdk = "\
nativesdk-perl-module-threads \
"
-
-
-SRC_URI = "${GNU_MIRROR}/autoconf/autoconf-${PV}.tar.gz \
- file://program_prefix.patch"
-
inherit autotools texinfo
PERL = "${USRBINPATH}/perl"
diff --git a/poky/meta/recipes-devtools/autoconf/autoconf_2.69.bb b/poky/meta/recipes-devtools/autoconf/autoconf_2.69.bb
index 8e67f4b82..2e1b9bdc9 100644
--- a/poky/meta/recipes-devtools/autoconf/autoconf_2.69.bb
+++ b/poky/meta/recipes-devtools/autoconf/autoconf_2.69.bb
@@ -5,17 +5,20 @@ PR = "r11"
LICENSE = "GPLv2 & GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \
file://COPYINGv3;md5=d32239bcb673463ab874e80d47fae504"
-SRC_URI += "file://check-automake-cross-warning.patch \
- file://autoreconf-exclude.patch \
- file://autoreconf-gnuconfigize.patch \
- file://config_site.patch \
- file://remove-usr-local-lib-from-m4.patch \
- file://preferbash.patch \
- file://autotest-automake-result-format.patch \
- file://add_musl_config.patch \
- file://performance.patch \
- file://AC_HEADER_MAJOR-port-to-glibc-2.25.patch \
- file://autoconf-replace-w-option-in-shebangs-with-modern-use-warnings.patch \
+
+SRC_URI = "${GNU_MIRROR}/autoconf/autoconf-${PV}.tar.gz \
+ file://program_prefix.patch \
+ file://check-automake-cross-warning.patch \
+ file://autoreconf-exclude.patch \
+ file://autoreconf-gnuconfigize.patch \
+ file://config_site.patch \
+ file://remove-usr-local-lib-from-m4.patch \
+ file://preferbash.patch \
+ file://autotest-automake-result-format.patch \
+ file://add_musl_config.patch \
+ file://performance.patch \
+ file://AC_HEADER_MAJOR-port-to-glibc-2.25.patch \
+ file://autoconf-replace-w-option-in-shebangs-with-modern-use-warnings.patch \
"
SRC_URI[md5sum] = "82d05e03b93e45f5a39b828dc9c6c29b"
diff --git a/poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch b/poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch
index 1592c02cb..0e84c4bf8 100644
--- a/poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch
+++ b/poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch
@@ -1,4 +1,4 @@
-From 081385f4d4bba367afad3bff1fa034f5263305e6 Mon Sep 17 00:00:00 2001
+From 857c843d4bcf576467b505eb05a47f3e7d32caaa Mon Sep 17 00:00:00 2001
From: Serhii Popovych <spopovyc@cisco.com>
Date: Wed, 10 Feb 2016 17:07:32 +0000
Subject: [PATCH] perl: Replace -w option in shebangs with modern "use
@@ -23,16 +23,16 @@ Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/bin/aclocal.in b/bin/aclocal.in
-index b3715d9..461d453 100644
+index 9a20325..bd185d4 100644
--- a/bin/aclocal.in
+++ b/bin/aclocal.in
@@ -1,4 +1,4 @@
-#!@PERL@ -w
+#!@PERL@
- # -*- perl -*-
+ # aclocal - create aclocal.m4 by scanning configure.ac -*- perl -*-
# @configure_input@
-
-@@ -32,6 +32,7 @@ BEGIN
+ # Copyright (C) 1996-2020 Free Software Foundation, Inc.
+@@ -26,6 +26,7 @@ BEGIN
}
use strict;
@@ -41,16 +41,16 @@ index b3715d9..461d453 100644
use Automake::Config;
use Automake::General;
diff --git a/bin/automake.in b/bin/automake.in
-index 8377d20..3a66965 100644
+index 5ed404a..d387b8e 100644
--- a/bin/automake.in
+++ b/bin/automake.in
@@ -1,4 +1,4 @@
-#!@PERL@ -w
+#!@PERL@
- # -*- perl -*-
+ # automake - create Makefile.in from Makefile.am -*- perl -*-
# @configure_input@
-
-@@ -28,6 +28,7 @@ eval 'case $# in 0) exec @PERL@ -S "$0";; *) exec @PERL@ -S "$0" "$@";; esac'
+ # Copyright (C) 1994-2020 Free Software Foundation, Inc.
+@@ -23,6 +23,7 @@
package Automake;
use strict;
diff --git a/poky/meta/recipes-devtools/automake/automake_1.16.1.bb b/poky/meta/recipes-devtools/automake/automake_1.16.2.bb
index d82eed3c6..fd8ed0ed3 100644
--- a/poky/meta/recipes-devtools/automake/automake_1.16.1.bb
+++ b/poky/meta/recipes-devtools/automake/automake_1.16.2.bb
@@ -28,8 +28,8 @@ SRC_URI += "file://python-libdir.patch \
file://0001-build-fix-race-in-parallel-builds.patch \
"
-SRC_URI[md5sum] = "83cc2463a4080efd46a72ba2c9f6b8f5"
-SRC_URI[sha256sum] = "608a97523f97db32f1f5d5615c98ca69326ced2054c9f82e65bade7fc4c9dea8"
+SRC_URI[md5sum] = "f1a14f2ab2b0fb861a011e1d94e589e0"
+SRC_URI[sha256sum] = "b2f361094b410b4acbf4efba7337bdb786335ca09eb2518635a09fb7319ca5c1"
PERL = "${USRBINPATH}/perl"
PERL_class-native = "${USRBINPATH}/env perl"
diff --git a/poky/meta/recipes-devtools/binutils/binutils-2.34.inc b/poky/meta/recipes-devtools/binutils/binutils-2.35.inc
index f65fdb732..5ae9ec422 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-2.34.inc
+++ b/poky/meta/recipes-devtools/binutils/binutils-2.35.inc
@@ -16,32 +16,30 @@ def binutils_branch_version(d):
# When upgrading to 2.35, please make sure there is no trailing .0, so
# that upstream version check can work correctly.
-PV = "2.34"
-CVE_VERSION = "2.34"
+PV = "2.35"
+CVE_VERSION = "2.35"
BINUPV = "${@binutils_branch_version(d)}"
#BRANCH = "binutils-${BINUPV}-branch"
-BRANCH ?= "binutils-2_34-branch"
+BRANCH ?= "binutils-2_35-branch"
UPSTREAM_CHECK_GITTAGREGEX = "binutils-(?P<pver>\d+_(\d_?)*)"
-SRCREV ?= "d4b50999b3b287b5f984ade2f8734aa8c9359440"
+SRCREV ?= "89a9065674a14a8bd94bb326b27d19a2f3583efb"
BINUTILS_GIT_URI ?= "git://sourceware.org/git/binutils-gdb.git;branch=${BRANCH};protocol=git"
SRC_URI = "\
${BINUTILS_GIT_URI} \
file://0004-configure-widen-the-regexp-for-SH-architectures.patch \
file://0005-Point-scripts-location-to-libdir.patch \
file://0006-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch \
- file://0007-Use-libtool-2.4.patch \
- file://0008-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch \
- file://0009-warn-for-uses-of-system-directories-when-cross-linki.patch \
- file://0010-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch \
- file://0011-Change-default-emulation-for-mips64-linux.patch \
- file://0012-Add-support-for-Netlogic-XLP.patch \
- file://0013-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch \
- file://0014-Detect-64-bit-MIPS-targets.patch \
+ file://0007-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch \
+ file://0008-warn-for-uses-of-system-directories-when-cross-linki.patch \
+ file://0009-Change-default-emulation-for-mips64-linux.patch \
+ file://0010-Add-support-for-Netlogic-XLP.patch \
+ file://0011-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch \
+ file://0012-Detect-64-bit-MIPS-targets.patch \
+ file://0013-Use-libtool-2.4.patch \
+ file://0014-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch \
file://0015-sync-with-OE-libtool-changes.patch \
file://0016-Check-for-clang-before-checking-gcc-version.patch \
- file://0017-binutils-drop-redundant-program_name-definition-fno-.patch \
- file://CVE-2020-0551.patch \
"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/binutils/binutils-cross-canadian_2.34.bb b/poky/meta/recipes-devtools/binutils/binutils-cross-canadian_2.35.bb
index 5dbaa0301..5dbaa0301 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-cross-canadian_2.34.bb
+++ b/poky/meta/recipes-devtools/binutils/binutils-cross-canadian_2.35.bb
diff --git a/poky/meta/recipes-devtools/binutils/binutils-cross-testsuite_2.34.bb b/poky/meta/recipes-devtools/binutils/binutils-cross-testsuite_2.35.bb
index 07a8e7c41..07a8e7c41 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-cross-testsuite_2.34.bb
+++ b/poky/meta/recipes-devtools/binutils/binutils-cross-testsuite_2.35.bb
diff --git a/poky/meta/recipes-devtools/binutils/binutils-cross_2.34.bb b/poky/meta/recipes-devtools/binutils/binutils-cross_2.35.bb
index fbd1f7d25..fbd1f7d25 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-cross_2.34.bb
+++ b/poky/meta/recipes-devtools/binutils/binutils-cross_2.35.bb
diff --git a/poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.34.bb b/poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.35.bb
index 37f4d6d2e..37f4d6d2e 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.34.bb
+++ b/poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.35.bb
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0001-binutils-crosssdk-Generate-relocatable-SDKs.patch b/poky/meta/recipes-devtools/binutils/binutils/0001-binutils-crosssdk-Generate-relocatable-SDKs.patch
index 14e84215e..4c1d11291 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0001-binutils-crosssdk-Generate-relocatable-SDKs.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0001-binutils-crosssdk-Generate-relocatable-SDKs.patch
@@ -1,24 +1,40 @@
-From b05f0be13aadf0b26a0b39dfe7daf2c47a300338 Mon Sep 17 00:00:00 2001
+From a0b23b160d6cfa7be4437c6e623633d76395f2ad Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 01:58:54 +0000
-Subject: [PATCH] binutils-crosssdk: Generate relocatable SDKs
+Subject: [PATCH 01/16] binutils-crosssdk: Generate relocatable SDKs
This patch will modify the ELF linker scripts so that the crosssdk
linker will generate binaries with a 4096 bytes PT_INTERP section. When the binaries
will be relocated, at SDK install time, the interpreter path can be easily
changed by the relocating script.
+generate larger .interp section for gold linker as well
+
Upstream-Status: Inappropriate [SDK specific]
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
+ gold/layout.cc | 2 +-
ld/genscripts.sh | 3 +++
ld/scripttempl/elf.sc | 4 ++--
- 2 files changed, 5 insertions(+), 2 deletions(-)
+ 3 files changed, 6 insertions(+), 3 deletions(-)
+diff --git a/gold/layout.cc b/gold/layout.cc
+index 13e533aaf21..b0afff16e2e 100644
+--- a/gold/layout.cc
++++ b/gold/layout.cc
+@@ -5019,7 +5019,7 @@ Layout::create_interp(const Target* target)
+ gold_assert(interp != NULL);
+ }
+
+- size_t len = strlen(interp) + 1;
++ size_t len = 4096;
+
+ Output_section_data* odata = new Output_data_const(interp, len, 1);
+
diff --git a/ld/genscripts.sh b/ld/genscripts.sh
-index 03392d265c..435689ea14 100755
+index 03392d265c7..435689ea144 100755
--- a/ld/genscripts.sh
+++ b/ld/genscripts.sh
@@ -304,6 +304,7 @@ DATA_ALIGNMENT_u="${DATA_ALIGNMENT_u-${DATA_ALIGNMENT_r}}"
@@ -43,10 +59,10 @@ index 03392d265c..435689ea14 100755
DATA_ALIGNMENT=${DATA_ALIGNMENT_}
RELOCATING=" "
diff --git a/ld/scripttempl/elf.sc b/ld/scripttempl/elf.sc
-index 0b8b32a440..ee6b71075d 100644
+index eb74743e5c3..c9a8a47615f 100644
--- a/ld/scripttempl/elf.sc
+++ b/ld/scripttempl/elf.sc
-@@ -140,8 +140,8 @@ if test -z "$DATA_SEGMENT_ALIGN"; then
+@@ -143,8 +143,8 @@ if test -z "$DATA_SEGMENT_ALIGN"; then
DATA_SEGMENT_RELRO_END=". = DATA_SEGMENT_RELRO_END (${SEPARATE_GOTPLT-0}, .);"
fi
fi
@@ -57,3 +73,6 @@ index 0b8b32a440..ee6b71075d 100644
fi
if test -z "$PLT"; then
IPLT=".iplt ${RELOCATING-0} : { *(.iplt) }"
+--
+2.28.0
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0002-binutils-cross-Do-not-generate-linker-script-directo.patch b/poky/meta/recipes-devtools/binutils/binutils/0002-binutils-cross-Do-not-generate-linker-script-directo.patch
index 91de94b76..41dff05b2 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0002-binutils-cross-Do-not-generate-linker-script-directo.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0002-binutils-cross-Do-not-generate-linker-script-directo.patch
@@ -1,7 +1,8 @@
-From 6d79f81336e7cbe727b5a51134f5d314a455379d Mon Sep 17 00:00:00 2001
+From 0d14f8f333a9b519202246ce779f3e380491826c Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 6 Mar 2017 23:37:05 -0800
-Subject: [PATCH] binutils-cross: Do not generate linker script directories
+Subject: [PATCH 02/17] binutils-cross: Do not generate linker script
+ directories
We don't place target libraries within ${exec_prefix}, we'd always place these
within the target sysroot within the standard library directories. Worse, the
@@ -22,7 +23,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 25 deletions(-)
diff --git a/ld/genscripts.sh b/ld/genscripts.sh
-index 435689ea14..cff8a1467f 100755
+index 435689ea144..cff8a1467f9 100755
--- a/ld/genscripts.sh
+++ b/ld/genscripts.sh
@@ -235,31 +235,6 @@ append_to_lib_path()
@@ -57,3 +58,6 @@ index 435689ea14..cff8a1467f 100755
if [ "x${LIB_PATH}" = "x" ] && [ "x${USE_LIBPATH}" = xyes ] ; then
libs=${NATIVE_LIB_DIRS}
if [ "x${NATIVE}" = "xyes" ] ; then
+--
+2.28.0
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0003-binutils-nativesdk-Search-for-alternative-ld.so.conf.patch b/poky/meta/recipes-devtools/binutils/binutils/0003-binutils-nativesdk-Search-for-alternative-ld.so.conf.patch
index 4b4d73d21..28daf58f7 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0003-binutils-nativesdk-Search-for-alternative-ld.so.conf.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0003-binutils-nativesdk-Search-for-alternative-ld.so.conf.patch
@@ -1,8 +1,8 @@
-From d057b215f114f6158b4010ab44a19cae9dcc8386 Mon Sep 17 00:00:00 2001
+From 3bbec749ec9fe681ade6812c48c541a752fcffd5 Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Wed, 19 Feb 2020 09:51:16 -0800
-Subject: [PATCH] binutils-nativesdk: Search for alternative ld.so.conf in SDK
- installation
+Subject: [PATCH 03/17] binutils-nativesdk: Search for alternative ld.so.conf
+ in SDK installation
We need binutils to look at our ld.so.conf file within the SDK to ensure
we search the SDK's libdirs as well as those from the host system.
@@ -29,7 +29,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
5 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/ld/Makefile.am b/ld/Makefile.am
-index 4a9b8404b7..1c132d3ce4 100644
+index 02c4fc16395..a5762227f0a 100644
--- a/ld/Makefile.am
+++ b/ld/Makefile.am
@@ -42,7 +42,8 @@ ZLIBINC = @zlibinc@
@@ -43,10 +43,10 @@ index 4a9b8404b7..1c132d3ce4 100644
NO_WERROR = @NO_WERROR@
AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
diff --git a/ld/Makefile.in b/ld/Makefile.in
-index 46d9b14077..e453bc1b33 100644
+index 2fe12e14f63..8f0c83ac8d2 100644
--- a/ld/Makefile.in
+++ b/ld/Makefile.in
-@@ -555,7 +555,8 @@ ZLIB = @zlibdir@ -lz
+@@ -548,7 +548,8 @@ ZLIB = @zlibdir@ -lz
ZLIBINC = @zlibinc@
ELF_CLFAGS = -DELF_LIST_OPTIONS=@elf_list_options@ \
-DELF_SHLIB_LIST_OPTIONS=@elf_shlib_list_options@ \
@@ -55,25 +55,25 @@ index 46d9b14077..e453bc1b33 100644
+ -DSYSCONFDIR="\"$(sysconfdir)\""
AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
- @ENABLE_PLUGINS_FALSE@PLUGIN_C =
+
diff --git a/ld/ldelf.c b/ld/ldelf.c
-index 2e27cf48a8..a095d6aac5 100644
+index bada3ade2d7..b4784009d7a 100644
--- a/ld/ldelf.c
+++ b/ld/ldelf.c
-@@ -907,7 +907,7 @@ ldelf_check_ld_so_conf (const struct bfd_link_needed_list *l, int force,
+@@ -911,7 +911,7 @@ ldelf_check_ld_so_conf (const struct bfd_link_needed_list *l, int force,
info.path = NULL;
info.len = info.alloc = 0;
- tmppath = concat (ld_sysroot, prefix, "/etc/ld.so.conf",
-+ tmppath = concat (ld_sysconfdir, "/ld.so.conf",
++ tmppath = concat (ld_sysconfdir, "/etc/ld.so.conf",
(const char *) NULL);
if (!ldelf_parse_ld_so_conf (&info, tmppath))
{
diff --git a/ld/ldmain.c b/ld/ldmain.c
-index c4af10f4e9..da1ad17763 100644
+index 08be9030cb5..f5c5a336320 100644
--- a/ld/ldmain.c
+++ b/ld/ldmain.c
-@@ -69,6 +69,7 @@ char *program_name;
+@@ -70,6 +70,7 @@ char *program_name;
/* The prefix for system library directories. */
const char *ld_sysroot;
@@ -82,7 +82,7 @@ index c4af10f4e9..da1ad17763 100644
/* The canonical representation of ld_sysroot. */
char *ld_canon_sysroot;
diff --git a/ld/ldmain.h b/ld/ldmain.h
-index 0f05821d1e..54c36a94ce 100644
+index ac7db5720d5..1cbe1771912 100644
--- a/ld/ldmain.h
+++ b/ld/ldmain.h
@@ -23,6 +23,7 @@
@@ -93,3 +93,6 @@ index 0f05821d1e..54c36a94ce 100644
extern char *ld_canon_sysroot;
extern int ld_canon_sysroot_len;
extern FILE *saved_script_handle;
+--
+2.28.0
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0004-configure-widen-the-regexp-for-SH-architectures.patch b/poky/meta/recipes-devtools/binutils/binutils/0004-configure-widen-the-regexp-for-SH-architectures.patch
index d10a144ed..2381c7b85 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0004-configure-widen-the-regexp-for-SH-architectures.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0004-configure-widen-the-regexp-for-SH-architectures.patch
@@ -1,7 +1,7 @@
-From f7ad8a44c10f01e03680f093fd7af71c9f5e8606 Mon Sep 17 00:00:00 2001
+From 361c2c313196c095d12d17cecf0a069107dd629b Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 01:07:33 +0000
-Subject: [PATCH] configure: widen the regexp for SH architectures
+Subject: [PATCH 04/17] configure: widen the regexp for SH architectures
gprof needs to know about uclibc
@@ -14,10 +14,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/configure b/configure
-index 91dc42f6c7..7c1b747e7c 100755
+index 54d0339ab9e..6782f8b6ab8 100755
--- a/configure
+++ b/configure
-@@ -3915,7 +3915,7 @@ case "${target}" in
+@@ -3937,7 +3937,7 @@ case "${target}" in
nvptx*-*-*)
noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc"
;;
@@ -27,10 +27,10 @@ index 91dc42f6c7..7c1b747e7c 100755
sh*-*-elf)
;;
diff --git a/configure.ac b/configure.ac
-index 4bd869a63a..7187b34dfc 100644
+index a910c4fd6ba..55beb1dea46 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -1159,7 +1159,7 @@ case "${target}" in
+@@ -1178,7 +1178,7 @@ case "${target}" in
nvptx*-*-*)
noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc"
;;
@@ -39,3 +39,6 @@ index 4bd869a63a..7187b34dfc 100644
case "${target}" in
sh*-*-elf)
;;
+--
+2.28.0
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0005-Point-scripts-location-to-libdir.patch b/poky/meta/recipes-devtools/binutils/binutils/0005-Point-scripts-location-to-libdir.patch
index 3ba0ba63f..c31a0bc9a 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0005-Point-scripts-location-to-libdir.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0005-Point-scripts-location-to-libdir.patch
@@ -1,7 +1,7 @@
-From 08b088b7dd3d9707ed66948a7271ffb438eeddf5 Mon Sep 17 00:00:00 2001
+From 39b478b7e52fb1b892a392f3c3750b9023cfabc8 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 01:09:58 +0000
-Subject: [PATCH] Point scripts location to libdir
+Subject: [PATCH 05/17] Point scripts location to libdir
Upstream-Status: Inappropriate [debian patch]
@@ -12,10 +12,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/ld/Makefile.am b/ld/Makefile.am
-index 1c132d3ce4..8d82cf2e16 100644
+index a5762227f0a..e1c665898f3 100644
--- a/ld/Makefile.am
+++ b/ld/Makefile.am
-@@ -64,7 +64,7 @@ endif
+@@ -51,7 +51,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
# We put the scripts in the directory $(scriptdir)/ldscripts.
# We can't put the scripts in $(datadir) because the SEARCH_DIR
# directives need to be different for native and cross linkers.
@@ -25,10 +25,10 @@ index 1c132d3ce4..8d82cf2e16 100644
EMUL = @EMUL@
EMULATION_OFILES = @EMULATION_OFILES@
diff --git a/ld/Makefile.in b/ld/Makefile.in
-index e453bc1b33..2dcd72f809 100644
+index 8f0c83ac8d2..acc24ec4130 100644
--- a/ld/Makefile.in
+++ b/ld/Makefile.in
-@@ -573,7 +573,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
+@@ -556,7 +556,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
# We put the scripts in the directory $(scriptdir)/ldscripts.
# We can't put the scripts in $(datadir) because the SEARCH_DIR
# directives need to be different for native and cross linkers.
@@ -37,3 +37,6 @@ index e453bc1b33..2dcd72f809 100644
BASEDIR = $(srcdir)/..
BFDDIR = $(BASEDIR)/bfd
INCDIR = $(BASEDIR)/include
+--
+2.28.0
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0006-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch b/poky/meta/recipes-devtools/binutils/binutils/0006-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch
index d92072920..654b64ff7 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0006-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0006-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch
@@ -1,7 +1,8 @@
-From 13791636abf518f0db209dc51c29445d80421f2e Mon Sep 17 00:00:00 2001
+From 59640ddf11104a604ccf7c078a48359d711c2f9c Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 01:27:17 +0000
-Subject: [PATCH] Only generate an RPATH entry if LD_RUN_PATH is not empty
+Subject: [PATCH 06/17] Only generate an RPATH entry if LD_RUN_PATH is not
+ empty
for cases where -rpath isn't specified. debian (#151024)
@@ -14,10 +15,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 4 insertions(+)
diff --git a/ld/ldelf.c b/ld/ldelf.c
-index a095d6aac5..a2455a8793 100644
+index b4784009d7a..541772f4604 100644
--- a/ld/ldelf.c
+++ b/ld/ldelf.c
-@@ -1229,6 +1229,8 @@ ldelf_after_open (int use_libpath, int native, int is_linux, int is_freebsd,
+@@ -1247,6 +1247,8 @@ ldelf_after_open (int use_libpath, int native, int is_linux, int is_freebsd,
&& command_line.rpath == NULL)
{
path = (const char *) getenv ("LD_RUN_PATH");
@@ -26,7 +27,7 @@ index a095d6aac5..a2455a8793 100644
if (path
&& ldelf_search_needed (path, &n, force,
is_linux, elfsize))
-@@ -1573,6 +1575,8 @@ ldelf_before_allocation (char *audit, char *depaudit,
+@@ -1605,6 +1607,8 @@ ldelf_before_allocation (char *audit, char *depaudit,
rpath = command_line.rpath;
if (rpath == NULL)
rpath = (const char *) getenv ("LD_RUN_PATH");
@@ -35,3 +36,6 @@ index a095d6aac5..a2455a8793 100644
for (abfd = link_info.input_bfds; abfd; abfd = abfd->link.next)
if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
+--
+2.28.0
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0008-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch b/poky/meta/recipes-devtools/binutils/binutils/0007-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch
index b0e94ab1c..7f8fc9a5c 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0008-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0007-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch
@@ -1,8 +1,8 @@
-From e36a4e05f900bbe6a8d744a93f3a407bc55c96f7 Mon Sep 17 00:00:00 2001
+From 2b81508b9af76db292cd756432b03035cb8157e0 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 01:39:01 +0000
-Subject: [PATCH] don't let the distro compiler point to the wrong installation
- location
+Subject: [PATCH 07/17] don't let the distro compiler point to the wrong
+ installation location
Thanks to RP for helping find the source code causing the issue.
@@ -17,10 +17,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in
-index fe738d0db4..27d818f253 100644
+index 895f701bcd0..97a53f15bb6 100644
--- a/libiberty/Makefile.in
+++ b/libiberty/Makefile.in
-@@ -365,7 +365,8 @@ install-strip: install
+@@ -367,7 +367,8 @@ install-strip: install
# multilib-specific flags, it's overridden by FLAGS_TO_PASS from the
# default multilib, so we have to take CFLAGS into account as well,
# since it will be passed the multilib flags.
@@ -30,3 +30,6 @@ index fe738d0db4..27d818f253 100644
install_to_libdir: all
if test -n "${target_header_dir}"; then \
${mkinstalldirs} $(DESTDIR)$(libdir)/$(MULTIOSDIR); \
+--
+2.28.0
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0009-warn-for-uses-of-system-directories-when-cross-linki.patch b/poky/meta/recipes-devtools/binutils/binutils/0008-warn-for-uses-of-system-directories-when-cross-linki.patch
index 11a8110d4..2356c6a60 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0009-warn-for-uses-of-system-directories-when-cross-linki.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0008-warn-for-uses-of-system-directories-when-cross-linki.patch
@@ -1,7 +1,7 @@
-From 7b24f81e04c9d00d96de7dbd250beade6d2c6e44 Mon Sep 17 00:00:00 2001
+From 413075afbdb16e7cc05511682ca9e3c880acb5a7 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 15 Jan 2016 06:31:09 +0000
-Subject: [PATCH] warn for uses of system directories when cross linking
+Subject: [PATCH 08/17] warn for uses of system directories when cross linking
2008-07-02 Joseph Myers <joseph@codesourcery.com>
@@ -57,16 +57,16 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
ld/ld.h | 8 ++++++++
ld/ld.texi | 12 ++++++++++++
ld/ldfile.c | 17 +++++++++++++++++
- ld/ldlex.h | 2 ++
+ ld/ldlex.h | 5 +++++
ld/ldmain.c | 2 ++
- ld/lexsup.c | 15 +++++++++++++++
- 9 files changed, 85 insertions(+)
+ ld/lexsup.c | 27 +++++++++++++++++++++++++++
+ 9 files changed, 100 insertions(+)
diff --git a/ld/config.in b/ld/config.in
-index d93c9b0830..5da2742bea 100644
+index f1712107367..308e0173c16 100644
--- a/ld/config.in
+++ b/ld/config.in
-@@ -31,6 +31,9 @@
+@@ -40,6 +40,9 @@
language is requested. */
#undef ENABLE_NLS
@@ -77,7 +77,7 @@ index d93c9b0830..5da2742bea 100644
#undef EXTRA_SHLIB_EXTENSION
diff --git a/ld/configure b/ld/configure
-index 811134a503..f8c17c19ae 100755
+index f08ce9969ea..1c872c0db5f 100755
--- a/ld/configure
+++ b/ld/configure
@@ -826,6 +826,7 @@ with_lib_path
@@ -88,7 +88,7 @@ index 811134a503..f8c17c19ae 100755
enable_gold
enable_got
enable_compressed_debug_sections
-@@ -1491,6 +1492,8 @@ Optional Features:
+@@ -1493,6 +1494,8 @@ Optional Features:
--disable-largefile omit support for large files
--enable-targets alternative target configurations
--enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes)
@@ -97,7 +97,7 @@ index 811134a503..f8c17c19ae 100755
--enable-gold[=ARG] build gold [ARG={default,yes,no}]
--enable-got=<type> GOT handling scheme (target, single, negative,
multigot)
-@@ -15788,6 +15791,19 @@ fi
+@@ -15793,6 +15796,19 @@ fi
@@ -118,7 +118,7 @@ index 811134a503..f8c17c19ae 100755
if test "${enable_gold+set}" = set; then :
enableval=$enable_gold; case "${enableval}" in
diff --git a/ld/configure.ac b/ld/configure.ac
-index b5e849d84a..22e022ec03 100644
+index 5a4938afdb0..dbbbde74b04 100644
--- a/ld/configure.ac
+++ b/ld/configure.ac
@@ -94,6 +94,16 @@ AC_SUBST(use_sysroot)
@@ -139,7 +139,7 @@ index b5e849d84a..22e022ec03 100644
dnl "install_as_default" is set to false if gold is the default linker.
dnl "installed_linker" is the installed BFD linker name.
diff --git a/ld/ld.h b/ld/ld.h
-index 71fd781267..5c7843100b 100644
+index 1790dc81a66..73f832eb169 100644
--- a/ld/ld.h
+++ b/ld/ld.h
@@ -166,6 +166,14 @@ typedef struct
@@ -158,10 +158,10 @@ index 71fd781267..5c7843100b 100644
enum endian_enum endian;
diff --git a/ld/ld.texi b/ld/ld.texi
-index eb7bcb9933..3c73d445a0 100644
+index 2a93e9456ac..3eeb70607fd 100644
--- a/ld/ld.texi
+++ b/ld/ld.texi
-@@ -2551,6 +2551,18 @@ string identifying the original linked file does not change.
+@@ -2655,6 +2655,18 @@ string identifying the original linked file does not change.
Passing @code{none} for @var{style} disables the setting from any
@code{--build-id} options earlier on the command line.
@@ -181,7 +181,7 @@ index eb7bcb9933..3c73d445a0 100644
@c man end
diff --git a/ld/ldfile.c b/ld/ldfile.c
-index 411f7ddf97..17db16c2cc 100644
+index e39170b5d94..fadc248a140 100644
--- a/ld/ldfile.c
+++ b/ld/ldfile.c
@@ -117,6 +117,23 @@ ldfile_add_library_path (const char *name, bfd_boolean cmdline)
@@ -209,23 +209,26 @@ index 411f7ddf97..17db16c2cc 100644
/* Try to open a BFD for a lang_input_statement. */
diff --git a/ld/ldlex.h b/ld/ldlex.h
-index 5287f19a7f..55096e4fc9 100644
+index 5ea083ebeb3..941dc5f3dc8 100644
--- a/ld/ldlex.h
+++ b/ld/ldlex.h
-@@ -150,6 +150,8 @@ enum option_values
- OPTION_FORCE_GROUP_ALLOCATION,
- OPTION_PRINT_MAP_DISCARDED,
- OPTION_NO_PRINT_MAP_DISCARDED,
+@@ -155,6 +155,11 @@ enum option_values
+ OPTION_NON_CONTIGUOUS_REGIONS,
+ OPTION_NON_CONTIGUOUS_REGIONS_WARNINGS,
+ OPTION_DEPENDENCY_FILE,
++ OPTION_CTF_VARIABLES,
++ OPTION_NO_CTF_VARIABLES,
++ OPTION_CTF_SHARE_TYPES,
+ OPTION_NO_POISON_SYSTEM_DIRECTORIES,
+ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES,
};
/* The initial parser states. */
diff --git a/ld/ldmain.c b/ld/ldmain.c
-index da1ad17763..12d0b07d8a 100644
+index f5c5a336320..516ba0360e2 100644
--- a/ld/ldmain.c
+++ b/ld/ldmain.c
-@@ -274,6 +274,8 @@ main (int argc, char **argv)
+@@ -322,6 +322,8 @@ main (int argc, char **argv)
command_line.warn_mismatch = TRUE;
command_line.warn_search_mismatch = TRUE;
command_line.check_section_addresses = -1;
@@ -235,13 +238,25 @@ index da1ad17763..12d0b07d8a 100644
/* We initialize DEMANGLING based on the environment variable
COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the
diff --git a/ld/lexsup.c b/ld/lexsup.c
-index 3d15cc491d..0e8b4f2b7a 100644
+index 58c6c078325..879e7bb7658 100644
--- a/ld/lexsup.c
+++ b/ld/lexsup.c
-@@ -550,6 +550,14 @@ static const struct ld_option ld_options[] =
+@@ -572,6 +572,26 @@ static const struct ld_option ld_options[] =
{ {"no-print-map-discarded", no_argument, NULL, OPTION_NO_PRINT_MAP_DISCARDED},
'\0', NULL, N_("Do not show discarded sections in map file output"),
TWO_DASHES },
++ { {"ctf-variables", no_argument, NULL, OPTION_CTF_VARIABLES},
++ '\0', NULL, N_("Emit names and types of static variables in CTF"),
++ TWO_DASHES },
++ { {"no-ctf-variables", no_argument, NULL, OPTION_NO_CTF_VARIABLES},
++ '\0', NULL, N_("Do not emit names and types of static variables in CTF"),
++ TWO_DASHES },
++ { {"ctf-share-types=<method>", required_argument, NULL,
++ OPTION_CTF_SHARE_TYPES},
++ '\0', NULL, N_("How to share CTF types between translation units.\n"
++ " <method> is: share-unconflicted (default),\n"
++ " share-duplicated"),
++ TWO_DASHES },
+ { {"no-poison-system-directories", no_argument, NULL,
+ OPTION_NO_POISON_SYSTEM_DIRECTORIES},
+ '\0', NULL, N_("Do not warn for -L options using system directories"),
@@ -253,7 +268,7 @@ index 3d15cc491d..0e8b4f2b7a 100644
};
#define OPTION_COUNT ARRAY_SIZE (ld_options)
-@@ -1603,6 +1611,13 @@ parse_args (unsigned argc, char **argv)
+@@ -1632,6 +1652,13 @@ parse_args (unsigned argc, char **argv)
case OPTION_PRINT_MAP_DISCARDED:
config.print_map_discarded = TRUE;
@@ -265,5 +280,8 @@ index 3d15cc491d..0e8b4f2b7a 100644
+ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES:
+ command_line.error_poison_system_directories = TRUE;
break;
- }
- }
+
+ case OPTION_DEPENDENCY_FILE:
+--
+2.28.0
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0011-Change-default-emulation-for-mips64-linux.patch b/poky/meta/recipes-devtools/binutils/binutils/0009-Change-default-emulation-for-mips64-linux.patch
index c49b8e863..fb5276e18 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0011-Change-default-emulation-for-mips64-linux.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0009-Change-default-emulation-for-mips64-linux.patch
@@ -1,7 +1,7 @@
-From 2182791a453f34bee6968b3e72848608cf7d7abe Mon Sep 17 00:00:00 2001
+From 13a67e9040c01abd284fe506471e0eab668ee3dc Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 01:44:14 +0000
-Subject: [PATCH] Change default emulation for mips64*-*-linux
+Subject: [PATCH 09/17] Change default emulation for mips64*-*-linux
we change the default emulations to be N64 instead of N32
@@ -14,10 +14,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/bfd/config.bfd b/bfd/config.bfd
-index b96931f52e..847f9f0ba9 100644
+index 14523caf0c5..e5233cd1f7e 100644
--- a/bfd/config.bfd
+++ b/bfd/config.bfd
-@@ -911,12 +911,12 @@ case "${targ}" in
+@@ -894,12 +894,12 @@ case "${targ}" in
targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec"
;;
mips64*el-*-linux*)
@@ -35,10 +35,10 @@ index b96931f52e..847f9f0ba9 100644
mips*el-*-linux*)
targ_defvec=mips_elf32_trad_le_vec
diff --git a/ld/configure.tgt b/ld/configure.tgt
-index 23194e357f..f4f0eaf9b2 100644
+index 87c7d9a4cad..9b4bf2ca964 100644
--- a/ld/configure.tgt
+++ b/ld/configure.tgt
-@@ -541,12 +541,12 @@ mips*-*-vxworks*) targ_emul=elf32ebmipvxworks
+@@ -531,12 +531,12 @@ mips*-*-vxworks*) targ_emul=elf32ebmipvxworks
;;
mips*-*-windiss) targ_emul=elf32mipswindiss
;;
@@ -55,3 +55,6 @@ index 23194e357f..f4f0eaf9b2 100644
targ_extra_libpath=$targ_extra_emuls
;;
mips*el-*-linux-*) targ_emul=elf32ltsmip
+--
+2.28.0
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0012-Add-support-for-Netlogic-XLP.patch b/poky/meta/recipes-devtools/binutils/binutils/0010-Add-support-for-Netlogic-XLP.patch
index c32867a23..277db4ec5 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0012-Add-support-for-Netlogic-XLP.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0010-Add-support-for-Netlogic-XLP.patch
@@ -1,7 +1,7 @@
-From a0237ec2d1e58bd35c236df39dd5a06504c6d2ed Mon Sep 17 00:00:00 2001
+From 69ab45c16f80f18fa78121f6e774750b9e9a200b Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sun, 14 Feb 2016 17:06:19 +0000
-Subject: [PATCH] Add support for Netlogic XLP
+Subject: [PATCH 10/17] Add support for Netlogic XLP
Patch From: Nebu Philips <nphilips@netlogicmicro.com>
@@ -35,10 +35,10 @@ Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
15 files changed, 65 insertions(+), 21 deletions(-)
diff --git a/bfd/aoutx.h b/bfd/aoutx.h
-index fa3a9746b6..5078024fd5 100644
+index d352a1a3e44..2e2c3c1af86 100644
--- a/bfd/aoutx.h
+++ b/bfd/aoutx.h
-@@ -799,6 +799,7 @@ NAME (aout, machine_type) (enum bfd_architecture arch,
+@@ -810,6 +810,7 @@ NAME (aout, machine_type) (enum bfd_architecture arch,
case bfd_mach_mipsisa64r6:
case bfd_mach_mips_sb1:
case bfd_mach_mips_xlr:
@@ -47,7 +47,7 @@ index fa3a9746b6..5078024fd5 100644
arch_flags = M_MIPS2;
break;
diff --git a/bfd/archures.c b/bfd/archures.c
-index 232103817c..b2b3b8c124 100644
+index 551ec8732f0..2665b378623 100644
--- a/bfd/archures.c
+++ b/bfd/archures.c
@@ -185,6 +185,7 @@ DESCRIPTION
@@ -59,10 +59,10 @@ index 232103817c..b2b3b8c124 100644
.#define bfd_mach_mipsisa32r2 33
.#define bfd_mach_mipsisa32r3 34
diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
-index 7c13bc8c91..2e453c50c1 100644
+index 35ef4d755bb..48db00af80b 100644
--- a/bfd/bfd-in2.h
+++ b/bfd/bfd-in2.h
-@@ -1568,6 +1568,7 @@ enum bfd_architecture
+@@ -1585,6 +1585,7 @@ enum bfd_architecture
#define bfd_mach_mips_octeon3 6503
#define bfd_mach_mips_xlr 887682 /* decimal 'XLR'. */
#define bfd_mach_mips_interaptiv_mr2 736550 /* decimal 'IA2'. */
@@ -71,10 +71,10 @@ index 7c13bc8c91..2e453c50c1 100644
#define bfd_mach_mipsisa32r2 33
#define bfd_mach_mipsisa32r3 34
diff --git a/bfd/config.bfd b/bfd/config.bfd
-index 847f9f0ba9..a12707f827 100644
+index e5233cd1f7e..2e4ae6bbdff 100644
--- a/bfd/config.bfd
+++ b/bfd/config.bfd
-@@ -894,6 +894,11 @@ case "${targ}" in
+@@ -877,6 +877,11 @@ case "${targ}" in
targ_defvec=mips_elf32_le_vec
targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec"
;;
@@ -87,7 +87,7 @@ index 847f9f0ba9..a12707f827 100644
targ_defvec=mips_elf32_be_vec
targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec"
diff --git a/bfd/cpu-mips.c b/bfd/cpu-mips.c
-index 802acb45f1..fd9ec4c0ad 100644
+index 802acb45f1e..fd9ec4c0ad4 100644
--- a/bfd/cpu-mips.c
+++ b/bfd/cpu-mips.c
@@ -108,7 +108,8 @@ enum
@@ -111,10 +111,10 @@ index 802acb45f1..fd9ec4c0ad 100644
/* The default architecture is mips:3000, but with a machine number of
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
-index d7e3aed3b6..7baeee9ee3 100644
+index 160febec94c..4c9499cc2cf 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
-@@ -6999,6 +6999,9 @@ _bfd_elf_mips_mach (flagword flags)
+@@ -6982,6 +6982,9 @@ _bfd_elf_mips_mach (flagword flags)
case E_MIPS_MACH_IAMR2:
return bfd_mach_mips_interaptiv_mr2;
@@ -124,7 +124,7 @@ index d7e3aed3b6..7baeee9ee3 100644
default:
switch (flags & EF_MIPS_ARCH)
{
-@@ -12355,6 +12358,10 @@ mips_set_isa_flags (bfd *abfd)
+@@ -12356,6 +12359,10 @@ mips_set_isa_flags (bfd *abfd)
val = E_MIPS_ARCH_64R2 | E_MIPS_MACH_OCTEON2;
break;
@@ -135,7 +135,7 @@ index d7e3aed3b6..7baeee9ee3 100644
case bfd_mach_mipsisa32:
val = E_MIPS_ARCH_32;
break;
-@@ -14379,6 +14386,7 @@ static const struct mips_mach_extension mips_mach_extensions[] =
+@@ -14373,6 +14380,7 @@ static const struct mips_mach_extension mips_mach_extensions[] =
{ bfd_mach_mips_gs264e, bfd_mach_mips_gs464e },
{ bfd_mach_mips_gs464e, bfd_mach_mips_gs464 },
{ bfd_mach_mips_gs464, bfd_mach_mipsisa64r2 },
@@ -144,10 +144,10 @@ index d7e3aed3b6..7baeee9ee3 100644
/* MIPS64 extensions. */
{ bfd_mach_mipsisa64r2, bfd_mach_mipsisa64 },
diff --git a/binutils/readelf.c b/binutils/readelf.c
-index 6b5bebe743..d15a7828db 100644
+index 6057515a89b..ea119b0b254 100644
--- a/binutils/readelf.c
+++ b/binutils/readelf.c
-@@ -3440,6 +3440,7 @@ get_machine_flags (Filedata * filedata, unsigned e_flags, unsigned e_machine)
+@@ -3483,6 +3483,7 @@ get_machine_flags (Filedata * filedata, unsigned e_flags, unsigned e_machine)
case E_MIPS_MACH_OCTEON3: strcat (buf, ", octeon3"); break;
case E_MIPS_MACH_XLR: strcat (buf, ", xlr"); break;
case E_MIPS_MACH_IAMR2: strcat (buf, ", interaptiv-mr2"); break;
@@ -156,7 +156,7 @@ index 6b5bebe743..d15a7828db 100644
/* We simply ignore the field in this case to avoid confusion:
MIPS ELF does not specify EF_MIPS_MACH, it is a GNU
diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c
-index fc6898834e..2c7151ccdb 100644
+index 31acb77d78a..0ead168d51e 100644
--- a/gas/config/tc-mips.c
+++ b/gas/config/tc-mips.c
@@ -568,6 +568,7 @@ static int mips_32bitmode = 0;
@@ -175,7 +175,7 @@ index fc6898834e..2c7151ccdb 100644
)
/* Whether the processor uses hardware interlocks to protect reads
-@@ -20135,7 +20137,7 @@ static const struct mips_cpu_info mips_cpu_info_table[] =
+@@ -20174,7 +20176,7 @@ static const struct mips_cpu_info mips_cpu_info_table[] =
/* Broadcom XLP.
XLP is mostly like XLR, with the prominent exception that it is
MIPS64R2 rather than MIPS64. */
@@ -185,7 +185,7 @@ index fc6898834e..2c7151ccdb 100644
/* MIPS 64 Release 6. */
{ "i6400", 0, ASE_VIRT | ASE_MSA, ISA_MIPS64R6, CPU_MIPS64R6},
diff --git a/gas/configure b/gas/configure
-index 60c1a055ae..59d6d11215 100755
+index 5bccfd9d1b7..d4b13e6fc8b 100755
--- a/gas/configure
+++ b/gas/configure
@@ -12722,6 +12722,9 @@ _ACEOF
@@ -199,7 +199,7 @@ index 60c1a055ae..59d6d11215 100755
mips_cpu=r3900
;;
diff --git a/gas/configure.ac b/gas/configure.ac
-index 6f32e55a1a..11c2e0d273 100644
+index b65108fecb2..ce1f2dad9bc 100644
--- a/gas/configure.ac
+++ b/gas/configure.ac
@@ -325,6 +325,9 @@ changequote([,])dnl
@@ -213,7 +213,7 @@ index 6f32e55a1a..11c2e0d273 100644
mips_cpu=r3900
;;
diff --git a/include/elf/mips.h b/include/elf/mips.h
-index d116b036b6..dceeb3f156 100644
+index cc08ebd4318..bb518575ce1 100644
--- a/include/elf/mips.h
+++ b/include/elf/mips.h
@@ -290,6 +290,7 @@ END_RELOC_NUMBERS (R_MIPS_maxext)
@@ -225,7 +225,7 @@ index d116b036b6..dceeb3f156 100644
#define E_MIPS_MACH_OCTEON3 0x008e0000
#define E_MIPS_MACH_5400 0x00910000
diff --git a/include/opcode/mips.h b/include/opcode/mips.h
-index fd031f3758..a96a44df84 100644
+index fd031f37588..a96a44df840 100644
--- a/include/opcode/mips.h
+++ b/include/opcode/mips.h
@@ -1260,6 +1260,8 @@ static const unsigned int mips_isa_table[] = {
@@ -256,10 +256,10 @@ index fd031f3758..a96a44df84 100644
return FALSE;
}
diff --git a/ld/configure.tgt b/ld/configure.tgt
-index f4f0eaf9b2..0da3eca19c 100644
+index 9b4bf2ca964..f6d7171dff7 100644
--- a/ld/configure.tgt
+++ b/ld/configure.tgt
-@@ -520,6 +520,9 @@ mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*)
+@@ -510,6 +510,9 @@ mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*)
targ_emul=elf32btsmip
targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip"
;;
@@ -270,7 +270,7 @@ index f4f0eaf9b2..0da3eca19c 100644
targ_extra_emuls="elf32lr5900"
targ_extra_libpath=$targ_extra_emuls
diff --git a/opcodes/mips-dis.c b/opcodes/mips-dis.c
-index 755bbe294b..ce22ef683a 100644
+index 755bbe294bd..ce22ef683a6 100644
--- a/opcodes/mips-dis.c
+++ b/opcodes/mips-dis.c
@@ -674,13 +674,11 @@ const struct mips_arch_choice mips_arch_choices[] =
@@ -293,7 +293,7 @@ index 755bbe294b..ce22ef683a 100644
/* This entry, mips16, is here only for ISA/processor selection; do
not print its name. */
diff --git a/opcodes/mips-opc.c b/opcodes/mips-opc.c
-index 5270aeefa8..d17dc78cd7 100644
+index 5270aeefa80..d17dc78cd71 100644
--- a/opcodes/mips-opc.c
+++ b/opcodes/mips-opc.c
@@ -328,6 +328,7 @@ decode_mips_operand (const char *p)
@@ -404,3 +404,6 @@ index 5270aeefa8..d17dc78cd7 100644
{"swc0", "E,o(b)", 0xe0000000, 0xfc000000, RD_3|RD_C0|SM, 0, I1, 0, IOCT|IOCTP|IOCT2|I37 },
{"swc0", "E,A(b)", 0, (int) M_SWC0_AB, INSN_MACRO, 0, I1, 0, IOCT|IOCTP|IOCT2|I37 },
{"swc1", "T,o(b)", 0xe4000000, 0xfc000000, RD_1|RD_3|SM|FP_S, 0, I1, 0, 0 },
+--
+2.28.0
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0011-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch b/poky/meta/recipes-devtools/binutils/binutils/0011-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch
new file mode 100644
index 000000000..10c3d8086
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/0011-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch
@@ -0,0 +1,37 @@
+From 7836f8aa56ef0f18c8658dc7e4952a9d097ba7e8 Mon Sep 17 00:00:00 2001
+From: Zhenhua Luo <zhenhua.luo@nxp.com>
+Date: Sat, 11 Jun 2016 22:08:29 -0500
+Subject: [PATCH 11/17] fix the incorrect assembling for ppc wait mnemonic
+
+Signed-off-by: Zhenhua Luo <zhenhua.luo@nxp.com>
+
+Upstream-Status: Pending
+---
+ opcodes/ppc-opc.c | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c
+index 5e20d617664..4c9656ecf08 100644
+--- a/opcodes/ppc-opc.c
++++ b/opcodes/ppc-opc.c
+@@ -6265,8 +6265,6 @@ const struct powerpc_opcode powerpc_opcodes[] = {
+ {"waitasec", X(31,30), XRTRARB_MASK, POWER8, POWER9, {0}},
+ {"waitrsv", XWCPL(31,30,1,0),0xffffffff, POWER10, 0, {0}},
+ {"pause_short", XWCPL(31,30,2,0),0xffffffff, POWER10, 0, {0}},
+-{"wait", X(31,30), XWCPL_MASK, POWER10, 0, {WC, PL}},
+-{"wait", X(31,30), XWC_MASK, POWER9, POWER10, {WC}},
+
+ {"lwepx", X(31,31), X_MASK, E500MC|PPCA2, 0, {RT, RA0, RB}},
+
+@@ -6326,7 +6324,7 @@ const struct powerpc_opcode powerpc_opcodes[] = {
+
+ {"waitrsv", X(31,62)|(1<<21), 0xffffffff, E500MC|PPCA2, 0, {0}},
+ {"waitimpl", X(31,62)|(2<<21), 0xffffffff, E500MC|PPCA2, 0, {0}},
+-{"wait", X(31,62), XWC_MASK, E500MC|PPCA2, 0, {WC}},
++{"wait", X(31,62), XWC_MASK, E500MC|PPCA2|POWER9|POWER10, 0, {WC}},
+
+ {"dcbstep", XRT(31,63,0), XRT_MASK, E500MC|PPCA2, 0, {RA0, RB}},
+
+--
+2.28.0
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0014-Detect-64-bit-MIPS-targets.patch b/poky/meta/recipes-devtools/binutils/binutils/0012-Detect-64-bit-MIPS-targets.patch
index 6acde1f78..ef8b253b6 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0014-Detect-64-bit-MIPS-targets.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0012-Detect-64-bit-MIPS-targets.patch
@@ -1,7 +1,7 @@
-From 2f7f2389764ef1d699f6ad32057314024b7e84e7 Mon Sep 17 00:00:00 2001
+From dbff6bdf2123f5495b8be930304d9aa5e88006a7 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 31 Mar 2017 11:42:03 -0700
-Subject: [PATCH] Detect 64-bit MIPS targets
+Subject: [PATCH 12/17] Detect 64-bit MIPS targets
Add mips64 target triplets and default to N64
@@ -14,7 +14,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 14 insertions(+)
diff --git a/gold/configure.tgt b/gold/configure.tgt
-index aa7ec552ae..470515062e 100644
+index aa7ec552aec..470515062e4 100644
--- a/gold/configure.tgt
+++ b/gold/configure.tgt
@@ -153,6 +153,13 @@ aarch64*-*)
@@ -45,3 +45,6 @@ index aa7ec552ae..470515062e 100644
mips*-*-*)
targ_obj=mips
targ_machine=EM_MIPS
+--
+2.28.0
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0007-Use-libtool-2.4.patch b/poky/meta/recipes-devtools/binutils/binutils/0013-Use-libtool-2.4.patch
index 89da62fbf..987a96f4b 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0007-Use-libtool-2.4.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0013-Use-libtool-2.4.patch
@@ -1,7 +1,7 @@
-From b8fafd8ce6c47c9a551ed796176d884a34930086 Mon Sep 17 00:00:00 2001
+From 7e2ddee8704c9c3b73760dd9464b18fade563d85 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sun, 14 Feb 2016 17:04:07 +0000
-Subject: [PATCH 07/15] Use libtool 2.4
+Subject: [PATCH 13/17] Use libtool 2.4
get libtool sysroot support
@@ -22,10 +22,11 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
ltversion.m4 | 12 +-
lt~obsolete.m4 | 2 +-
opcodes/configure | 1320 +++++++++++++++-----
- 13 files changed, 9939 insertions(+), 3700 deletions(-)
+ zlib/configure | 1320 +++++++++++++++-----
+ 14 files changed, 10931 insertions(+), 4028 deletions(-)
diff --git a/bfd/configure b/bfd/configure
-index bc576b7894a..cd036638081 100755
+index 0340ed541b5..2012656b3b7 100755
--- a/bfd/configure
+++ b/bfd/configure
@@ -704,6 +704,9 @@ OTOOL
@@ -1350,7 +1351,7 @@ index bc576b7894a..cd036638081 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -14554,7 +15209,7 @@ SHARED_LDFLAGS=
+@@ -14578,7 +15233,7 @@ SHARED_LDFLAGS=
if test "$enable_shared" = "yes"; then
x=`sed -n -e 's/^[ ]*PICFLAG[ ]*=[ ]*//p' < ../libiberty/Makefile | sed -n '$p'`
if test -n "$x"; then
@@ -1359,7 +1360,7 @@ index bc576b7894a..cd036638081 100755
fi
case "${host}" in
-@@ -17176,13 +17831,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -17197,13 +17852,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -1380,7 +1381,7 @@ index bc576b7894a..cd036638081 100755
STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -17197,14 +17859,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -17218,14 +17880,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -1399,7 +1400,7 @@ index bc576b7894a..cd036638081 100755
DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -17237,12 +17902,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -17258,12 +17923,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -1413,7 +1414,7 @@ index bc576b7894a..cd036638081 100755
file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -17297,8 +17962,13 @@ reload_flag \
+@@ -17318,8 +17983,13 @@ reload_flag \
OBJDUMP \
deplibs_check_method \
file_magic_cmd \
@@ -1427,7 +1428,7 @@ index bc576b7894a..cd036638081 100755
STRIP \
RANLIB \
CC \
-@@ -17308,12 +17978,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -17329,12 +17999,14 @@ lt_cv_sys_global_symbol_pipe \
lt_cv_sys_global_symbol_to_cdecl \
lt_cv_sys_global_symbol_to_c_name_address \
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -1443,7 +1444,7 @@ index bc576b7894a..cd036638081 100755
DSYMUTIL \
NMEDIT \
LIPO \
-@@ -17329,7 +18001,6 @@ no_undefined_flag \
+@@ -17350,7 +18022,6 @@ no_undefined_flag \
hardcode_libdir_flag_spec \
hardcode_libdir_flag_spec_ld \
hardcode_libdir_separator \
@@ -1451,7 +1452,7 @@ index bc576b7894a..cd036638081 100755
exclude_expsyms \
include_expsyms \
file_list_spec \
-@@ -17365,6 +18036,7 @@ module_cmds \
+@@ -17386,6 +18057,7 @@ module_cmds \
module_expsym_cmds \
export_symbols_cmds \
prelink_cmds \
@@ -1459,7 +1460,7 @@ index bc576b7894a..cd036638081 100755
postinstall_cmds \
postuninstall_cmds \
finish_cmds \
-@@ -18153,7 +18825,8 @@ $as_echo X"$file" |
+@@ -18174,7 +18846,8 @@ $as_echo X"$file" |
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
#
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -1469,7 +1470,7 @@ index bc576b7894a..cd036638081 100755
# Written by Gordon Matzigkeit, 1996
#
# This file is part of GNU Libtool.
-@@ -18256,19 +18929,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -18277,19 +18950,42 @@ SP2NL=$lt_lt_SP2NL
# turn newlines into spaces.
NL2SP=$lt_lt_NL2SP
@@ -1513,7 +1514,7 @@ index bc576b7894a..cd036638081 100755
# A symbol stripping program.
STRIP=$lt_STRIP
-@@ -18298,6 +18994,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -18319,6 +19015,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
# Transform the output of nm in a C name address pair when lib prefix is needed.
global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
@@ -1526,7 +1527,7 @@ index bc576b7894a..cd036638081 100755
# The name of the directory that contains temporary libtool files.
objdir=$objdir
-@@ -18307,6 +19009,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -18328,6 +19030,9 @@ MAGIC_CMD=$MAGIC_CMD
# Must we lock files when doing compilation?
need_locks=$lt_need_locks
@@ -1536,7 +1537,7 @@ index bc576b7894a..cd036638081 100755
# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
DSYMUTIL=$lt_DSYMUTIL
-@@ -18421,12 +19126,12 @@ with_gcc=$GCC
+@@ -18442,12 +19147,12 @@ with_gcc=$GCC
# Compiler flag to turn off builtin functions.
no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
@@ -1552,7 +1553,7 @@ index bc576b7894a..cd036638081 100755
# Compiler flag to prevent dynamic linking.
link_static_flag=$lt_lt_prog_compiler_static
-@@ -18513,9 +19218,6 @@ inherit_rpath=$inherit_rpath
+@@ -18534,9 +19239,6 @@ inherit_rpath=$inherit_rpath
# Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=$link_all_deplibs
@@ -1562,7 +1563,7 @@ index bc576b7894a..cd036638081 100755
# Set to "yes" if exported symbols are required.
always_export_symbols=$always_export_symbols
-@@ -18531,6 +19233,9 @@ include_expsyms=$lt_include_expsyms
+@@ -18552,6 +19254,9 @@ include_expsyms=$lt_include_expsyms
# Commands necessary for linking programs (against libraries) with templates.
prelink_cmds=$lt_prelink_cmds
@@ -1572,7 +1573,7 @@ index bc576b7894a..cd036638081 100755
# Specify filename containing input files.
file_list_spec=$lt_file_list_spec
-@@ -18563,210 +19268,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -18584,210 +19289,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
# if finds mixed CR/LF and LF-only lines. Since sed operates in
# text mode, it properly converts lines to CR/LF. This bash problem
# is reportedly fixed, but why not run on old versions too?
@@ -1947,10 +1948,10 @@ index bc576b7894a..cd036638081 100755
chmod +x "$ofile"
diff --git a/bfd/configure.ac b/bfd/configure.ac
-index c5bfbd5d129..e666b1cc106 100644
+index 8e86f8399ce..e8700c9d4d2 100644
--- a/bfd/configure.ac
+++ b/bfd/configure.ac
-@@ -290,7 +290,7 @@ changequote(,)dnl
+@@ -314,7 +314,7 @@ changequote(,)dnl
x=`sed -n -e 's/^[ ]*PICFLAG[ ]*=[ ]*//p' < ../libiberty/Makefile | sed -n '$p'`
changequote([,])dnl
if test -n "$x"; then
@@ -1960,10 +1961,10 @@ index c5bfbd5d129..e666b1cc106 100644
case "${host}" in
diff --git a/binutils/configure b/binutils/configure
-index a8dfd4bd68c..82316496953 100755
+index 89c99abfeba..d3289a5efcd 100755
--- a/binutils/configure
+++ b/binutils/configure
-@@ -690,8 +690,11 @@ OTOOL
+@@ -692,8 +692,11 @@ OTOOL
LIPO
NMEDIT
DSYMUTIL
@@ -1975,7 +1976,7 @@ index a8dfd4bd68c..82316496953 100755
OBJDUMP
LN_S
NM
-@@ -808,6 +811,7 @@ enable_static
+@@ -810,6 +813,7 @@ enable_static
with_pic
enable_fast_install
with_gnu_ld
@@ -1983,7 +1984,7 @@ index a8dfd4bd68c..82316496953 100755
enable_libtool_lock
enable_plugins
enable_largefile
-@@ -1485,6 +1489,8 @@ Optional Packages:
+@@ -1490,6 +1494,8 @@ Optional Packages:
--with-pic try to use only PIC/non-PIC objects [default=use
both]
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
@@ -1992,7 +1993,7 @@ index a8dfd4bd68c..82316496953 100755
--with-debuginfod Enable debuginfo lookups with debuginfod
(auto/yes/no)
--with-system-zlib use installed libz
-@@ -5461,8 +5467,8 @@ esac
+@@ -5467,8 +5473,8 @@ esac
@@ -2003,7 +2004,7 @@ index a8dfd4bd68c..82316496953 100755
-@@ -5502,7 +5508,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -5508,7 +5514,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
$as_echo_n "checking how to print strings... " >&6; }
# Test print first, because it will be a builtin if present.
@@ -2012,7 +2013,7 @@ index a8dfd4bd68c..82316496953 100755
test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
ECHO='print -r --'
elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -6188,8 +6194,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -6194,8 +6200,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
# Try some XSI features
xsi_shell=no
( _lt_dummy="a/b/c"
@@ -2023,7 +2024,7 @@ index a8dfd4bd68c..82316496953 100755
&& eval 'test $(( 1 + 1 )) -eq 2 \
&& test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
&& xsi_shell=yes
-@@ -6238,6 +6244,80 @@ esac
+@@ -6244,6 +6250,80 @@ esac
@@ -2104,7 +2105,7 @@ index a8dfd4bd68c..82316496953 100755
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
$as_echo_n "checking for $LD option to reload object files... " >&6; }
if ${lt_cv_ld_reload_flag+:} false; then :
-@@ -6254,6 +6334,11 @@ case $reload_flag in
+@@ -6260,6 +6340,11 @@ case $reload_flag in
esac
reload_cmds='$LD$reload_flag -o $output$reload_objs'
case $host_os in
@@ -2116,7 +2117,7 @@ index a8dfd4bd68c..82316496953 100755
darwin*)
if test "$GCC" = yes; then
reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -6422,7 +6507,8 @@ mingw* | pw32*)
+@@ -6428,7 +6513,8 @@ mingw* | pw32*)
lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
lt_cv_file_magic_cmd='func_win32_libid'
else
@@ -2126,7 +2127,7 @@ index a8dfd4bd68c..82316496953 100755
lt_cv_file_magic_cmd='$OBJDUMP -f'
fi
;;
-@@ -6576,6 +6662,21 @@ esac
+@@ -6582,6 +6668,21 @@ esac
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
$as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -2148,7 +2149,7 @@ index a8dfd4bd68c..82316496953 100755
file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -6591,9 +6692,162 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -6597,9 +6698,162 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
@@ -2313,7 +2314,7 @@ index a8dfd4bd68c..82316496953 100755
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
if ${ac_cv_prog_AR+:} false; then :
-@@ -6609,7 +6863,7 @@ do
+@@ -6615,7 +6869,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -2322,7 +2323,7 @@ index a8dfd4bd68c..82316496953 100755
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -6629,11 +6883,15 @@ $as_echo "no" >&6; }
+@@ -6635,11 +6889,15 @@ $as_echo "no" >&6; }
fi
@@ -2341,7 +2342,7 @@ index a8dfd4bd68c..82316496953 100755
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
if ${ac_cv_prog_ac_ct_AR+:} false; then :
-@@ -6649,7 +6907,7 @@ do
+@@ -6655,7 +6913,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -2350,7 +2351,7 @@ index a8dfd4bd68c..82316496953 100755
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -6668,6 +6926,10 @@ else
+@@ -6674,6 +6932,10 @@ else
$as_echo "no" >&6; }
fi
@@ -2361,7 +2362,7 @@ index a8dfd4bd68c..82316496953 100755
if test "x$ac_ct_AR" = x; then
AR="false"
else
-@@ -6679,12 +6941,10 @@ ac_tool_warned=yes ;;
+@@ -6685,12 +6947,10 @@ ac_tool_warned=yes ;;
esac
AR=$ac_ct_AR
fi
@@ -2376,7 +2377,7 @@ index a8dfd4bd68c..82316496953 100755
-@@ -6696,6 +6956,64 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
+@@ -6702,6 +6962,64 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
@@ -2441,7 +2442,7 @@ index a8dfd4bd68c..82316496953 100755
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
-@@ -7030,8 +7348,8 @@ esac
+@@ -7036,8 +7354,8 @@ esac
lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
# Transform an extracted symbol line into symbol name and symbol address
@@ -2452,7 +2453,7 @@ index a8dfd4bd68c..82316496953 100755
# Handle CRLF in mingw tool chain
opt_cr=
-@@ -7067,6 +7385,7 @@ for ac_symprfx in "" "_"; do
+@@ -7073,6 +7391,7 @@ for ac_symprfx in "" "_"; do
else
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
fi
@@ -2460,7 +2461,7 @@ index a8dfd4bd68c..82316496953 100755
# Check to see that the pipe works correctly.
pipe_works=no
-@@ -7108,6 +7427,18 @@ _LT_EOF
+@@ -7114,6 +7433,18 @@ _LT_EOF
if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
cat <<_LT_EOF > conftest.$ac_ext
@@ -2479,7 +2480,7 @@ index a8dfd4bd68c..82316496953 100755
#ifdef __cplusplus
extern "C" {
#endif
-@@ -7119,7 +7450,7 @@ _LT_EOF
+@@ -7125,7 +7456,7 @@ _LT_EOF
cat <<_LT_EOF >> conftest.$ac_ext
/* The mapping between symbol names and symbols. */
@@ -2488,7 +2489,7 @@ index a8dfd4bd68c..82316496953 100755
const char *name;
void *address;
}
-@@ -7145,8 +7476,8 @@ static const void *lt_preloaded_setup() {
+@@ -7151,8 +7482,8 @@ static const void *lt_preloaded_setup() {
_LT_EOF
# Now try linking the two files.
mv conftest.$ac_objext conftstm.$ac_objext
@@ -2499,7 +2500,7 @@ index a8dfd4bd68c..82316496953 100755
LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -7156,8 +7487,8 @@ _LT_EOF
+@@ -7162,8 +7493,8 @@ _LT_EOF
test $ac_status = 0; } && test -s conftest${ac_exeext}; then
pipe_works=yes
fi
@@ -2510,7 +2511,7 @@ index a8dfd4bd68c..82316496953 100755
else
echo "cannot find nm_test_func in $nlist" >&5
fi
-@@ -7194,6 +7525,21 @@ else
+@@ -7200,6 +7531,21 @@ else
$as_echo "ok" >&6; }
fi
@@ -2532,7 +2533,7 @@ index a8dfd4bd68c..82316496953 100755
-@@ -7210,6 +7556,40 @@ fi
+@@ -7216,6 +7562,40 @@ fi
@@ -2573,7 +2574,7 @@ index a8dfd4bd68c..82316496953 100755
-@@ -7421,6 +7801,123 @@ esac
+@@ -7427,6 +7807,123 @@ esac
need_locks="$enable_libtool_lock"
@@ -2697,7 +2698,7 @@ index a8dfd4bd68c..82316496953 100755
case $host_os in
rhapsody* | darwin*)
-@@ -7984,6 +8481,8 @@ _LT_EOF
+@@ -7990,6 +8487,8 @@ _LT_EOF
$LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
echo "$AR cru libconftest.a conftest.o" >&5
$AR cru libconftest.a conftest.o 2>&5
@@ -2706,7 +2707,7 @@ index a8dfd4bd68c..82316496953 100755
cat > conftest.c << _LT_EOF
int main() { return 0;}
_LT_EOF
-@@ -8179,7 +8678,8 @@ fi
+@@ -8185,7 +8684,8 @@ fi
LIBTOOL_DEPS="$ltmain"
# Always use our own libtool.
@@ -2716,7 +2717,7 @@ index a8dfd4bd68c..82316496953 100755
-@@ -8268,7 +8768,7 @@ aix3*)
+@@ -8274,7 +8774,7 @@ aix3*)
esac
# Global variables:
@@ -2725,7 +2726,7 @@ index a8dfd4bd68c..82316496953 100755
can_build_shared=yes
# All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -8566,8 +9066,6 @@ fi
+@@ -8572,8 +9072,6 @@ fi
lt_prog_compiler_pic=
lt_prog_compiler_static=
@@ -2734,7 +2735,7 @@ index a8dfd4bd68c..82316496953 100755
if test "$GCC" = yes; then
lt_prog_compiler_wl='-Wl,'
-@@ -8733,6 +9231,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8739,6 +9237,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
lt_prog_compiler_pic='--shared'
lt_prog_compiler_static='--static'
;;
@@ -2747,7 +2748,7 @@ index a8dfd4bd68c..82316496953 100755
pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
-@@ -8795,7 +9299,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8801,7 +9305,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
lt_prog_compiler_pic='-KPIC'
lt_prog_compiler_static='-Bstatic'
case $cc_basename in
@@ -2756,7 +2757,7 @@ index a8dfd4bd68c..82316496953 100755
lt_prog_compiler_wl='-Qoption ld ';;
*)
lt_prog_compiler_wl='-Wl,';;
-@@ -8852,13 +9356,17 @@ case $host_os in
+@@ -8858,13 +9362,17 @@ case $host_os in
lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
;;
esac
@@ -2780,7 +2781,7 @@ index a8dfd4bd68c..82316496953 100755
#
# Check to make sure the PIC flag actually works.
-@@ -8919,6 +9427,11 @@ fi
+@@ -8925,6 +9433,11 @@ fi
@@ -2792,7 +2793,7 @@ index a8dfd4bd68c..82316496953 100755
#
# Check to make sure the static flag actually works.
#
-@@ -9269,7 +9782,8 @@ _LT_EOF
+@@ -9275,7 +9788,8 @@ _LT_EOF
allow_undefined_flag=unsupported
always_export_symbols=no
enable_shared_with_static_runtimes=yes
@@ -2802,7 +2803,7 @@ index a8dfd4bd68c..82316496953 100755
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -9368,12 +9882,12 @@ _LT_EOF
+@@ -9374,12 +9888,12 @@ _LT_EOF
whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
hardcode_libdir_flag_spec=
hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -2817,7 +2818,7 @@ index a8dfd4bd68c..82316496953 100755
fi
;;
esac
-@@ -9387,8 +9901,8 @@ _LT_EOF
+@@ -9393,8 +9907,8 @@ _LT_EOF
archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
wlarc=
else
@@ -2828,7 +2829,7 @@ index a8dfd4bd68c..82316496953 100755
fi
;;
-@@ -9406,8 +9920,8 @@ _LT_EOF
+@@ -9412,8 +9926,8 @@ _LT_EOF
_LT_EOF
elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -2839,7 +2840,7 @@ index a8dfd4bd68c..82316496953 100755
else
ld_shlibs=no
fi
-@@ -9453,8 +9967,8 @@ _LT_EOF
+@@ -9459,8 +9973,8 @@ _LT_EOF
*)
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -2850,7 +2851,7 @@ index a8dfd4bd68c..82316496953 100755
else
ld_shlibs=no
fi
-@@ -9584,7 +10098,13 @@ _LT_EOF
+@@ -9590,7 +10104,13 @@ _LT_EOF
allow_undefined_flag='-berok'
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -2865,7 +2866,7 @@ index a8dfd4bd68c..82316496953 100755
/* end confdefs.h. */
int
-@@ -9597,22 +10117,29 @@ main ()
+@@ -9603,22 +10123,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -2908,7 +2909,7 @@ index a8dfd4bd68c..82316496953 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -9624,7 +10151,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9630,7 +10157,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
else
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -2923,7 +2924,7 @@ index a8dfd4bd68c..82316496953 100755
/* end confdefs.h. */
int
-@@ -9637,22 +10170,29 @@ main ()
+@@ -9643,22 +10176,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -2966,7 +2967,7 @@ index a8dfd4bd68c..82316496953 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
# Warning - without using the other run time loading flags,
-@@ -9697,20 +10237,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9703,20 +10243,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
@@ -3044,7 +3045,7 @@ index a8dfd4bd68c..82316496953 100755
;;
darwin* | rhapsody*)
-@@ -9771,7 +10354,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9777,7 +10360,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
freebsd* | dragonfly*)
@@ -3053,7 +3054,7 @@ index a8dfd4bd68c..82316496953 100755
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
hardcode_shlibpath_var=no
-@@ -9779,7 +10362,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9785,7 +10368,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
hpux9*)
if test "$GCC" = yes; then
@@ -3062,7 +3063,7 @@ index a8dfd4bd68c..82316496953 100755
else
archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
fi
-@@ -9795,7 +10378,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9801,7 +10384,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
hpux10*)
if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -3071,7 +3072,7 @@ index a8dfd4bd68c..82316496953 100755
else
archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
fi
-@@ -9819,10 +10402,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9825,10 +10408,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
ia64*)
@@ -3084,7 +3085,7 @@ index a8dfd4bd68c..82316496953 100755
;;
esac
else
-@@ -9901,23 +10484,36 @@ fi
+@@ -9907,23 +10490,36 @@ fi
irix5* | irix6* | nonstopux*)
if test "$GCC" = yes; then
@@ -3129,7 +3130,7 @@ index a8dfd4bd68c..82316496953 100755
else
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -10002,7 +10598,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -10008,7 +10604,7 @@ rm -f core conftest.err conftest.$ac_objext \
osf4* | osf5*) # as osf3* with the addition of -msym flag
if test "$GCC" = yes; then
allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -3138,7 +3139,7 @@ index a8dfd4bd68c..82316496953 100755
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
allow_undefined_flag=' -expect_unresolved \*'
-@@ -10021,9 +10617,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -10027,9 +10623,9 @@ rm -f core conftest.err conftest.$ac_objext \
no_undefined_flag=' -z defs'
if test "$GCC" = yes; then
wlarc='${wl}'
@@ -3150,7 +3151,7 @@ index a8dfd4bd68c..82316496953 100755
else
case `$CC -V 2>&1` in
*"Compilers 5.0"*)
-@@ -10599,8 +11195,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10605,8 +11201,9 @@ cygwin* | mingw* | pw32* | cegcc*)
need_version=no
need_lib_prefix=no
@@ -3162,7 +3163,7 @@ index a8dfd4bd68c..82316496953 100755
library_names_spec='$libname.dll.a'
# DLL is installed to $(libdir)/../bin by postinstall_cmds
postinstall_cmds='base_file=`basename \${file}`~
-@@ -10633,13 +11230,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10639,13 +11236,71 @@ cygwin* | mingw* | pw32* | cegcc*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
;;
esac
@@ -3235,7 +3236,7 @@ index a8dfd4bd68c..82316496953 100755
# FIXME: first we should search . and the directory the executable is in
shlibpath_var=PATH
;;
-@@ -10731,7 +11386,7 @@ haiku*)
+@@ -10737,7 +11392,7 @@ haiku*)
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LIBRARY_PATH
shlibpath_overrides_runpath=yes
@@ -3244,16 +3245,16 @@ index a8dfd4bd68c..82316496953 100755
hardcode_into_libs=yes
;;
-@@ -11527,7 +12182,7 @@ else
+@@ -11533,7 +12188,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
--#line 11530 "configure"
+-#line 11536 "configure"
+#line $LINENO "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
-@@ -11571,10 +12226,10 @@ else
+@@ -11577,10 +12232,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -3266,16 +3267,16 @@ index a8dfd4bd68c..82316496953 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -11633,7 +12288,7 @@ else
+@@ -11639,7 +12294,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
--#line 11636 "configure"
+-#line 11642 "configure"
+#line $LINENO "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
-@@ -11677,10 +12332,10 @@ else
+@@ -11683,10 +12338,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -3288,7 +3289,7 @@ index a8dfd4bd68c..82316496953 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -16024,13 +16679,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -16076,13 +16731,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -3309,7 +3310,7 @@ index a8dfd4bd68c..82316496953 100755
STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -16045,14 +16707,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -16097,14 +16759,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -3328,7 +3329,7 @@ index a8dfd4bd68c..82316496953 100755
DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -16085,12 +16750,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -16137,12 +16802,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -3342,7 +3343,7 @@ index a8dfd4bd68c..82316496953 100755
file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -16145,8 +16810,13 @@ reload_flag \
+@@ -16197,8 +16862,13 @@ reload_flag \
OBJDUMP \
deplibs_check_method \
file_magic_cmd \
@@ -3356,7 +3357,7 @@ index a8dfd4bd68c..82316496953 100755
STRIP \
RANLIB \
CC \
-@@ -16156,12 +16826,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -16208,12 +16878,14 @@ lt_cv_sys_global_symbol_pipe \
lt_cv_sys_global_symbol_to_cdecl \
lt_cv_sys_global_symbol_to_c_name_address \
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -3372,7 +3373,7 @@ index a8dfd4bd68c..82316496953 100755
DSYMUTIL \
NMEDIT \
LIPO \
-@@ -16177,7 +16849,6 @@ no_undefined_flag \
+@@ -16229,7 +16901,6 @@ no_undefined_flag \
hardcode_libdir_flag_spec \
hardcode_libdir_flag_spec_ld \
hardcode_libdir_separator \
@@ -3380,7 +3381,7 @@ index a8dfd4bd68c..82316496953 100755
exclude_expsyms \
include_expsyms \
file_list_spec \
-@@ -16213,6 +16884,7 @@ module_cmds \
+@@ -16265,6 +16936,7 @@ module_cmds \
module_expsym_cmds \
export_symbols_cmds \
prelink_cmds \
@@ -3388,7 +3389,7 @@ index a8dfd4bd68c..82316496953 100755
postinstall_cmds \
postuninstall_cmds \
finish_cmds \
-@@ -16979,7 +17651,8 @@ $as_echo X"$file" |
+@@ -17031,7 +17703,8 @@ $as_echo X"$file" |
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
#
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -3398,7 +3399,7 @@ index a8dfd4bd68c..82316496953 100755
# Written by Gordon Matzigkeit, 1996
#
# This file is part of GNU Libtool.
-@@ -17082,19 +17755,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -17134,19 +17807,42 @@ SP2NL=$lt_lt_SP2NL
# turn newlines into spaces.
NL2SP=$lt_lt_NL2SP
@@ -3442,7 +3443,7 @@ index a8dfd4bd68c..82316496953 100755
# A symbol stripping program.
STRIP=$lt_STRIP
-@@ -17124,6 +17820,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -17176,6 +17872,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
# Transform the output of nm in a C name address pair when lib prefix is needed.
global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
@@ -3455,7 +3456,7 @@ index a8dfd4bd68c..82316496953 100755
# The name of the directory that contains temporary libtool files.
objdir=$objdir
-@@ -17133,6 +17835,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -17185,6 +17887,9 @@ MAGIC_CMD=$MAGIC_CMD
# Must we lock files when doing compilation?
need_locks=$lt_need_locks
@@ -3465,7 +3466,7 @@ index a8dfd4bd68c..82316496953 100755
# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
DSYMUTIL=$lt_DSYMUTIL
-@@ -17247,12 +17952,12 @@ with_gcc=$GCC
+@@ -17299,12 +18004,12 @@ with_gcc=$GCC
# Compiler flag to turn off builtin functions.
no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
@@ -3481,7 +3482,7 @@ index a8dfd4bd68c..82316496953 100755
# Compiler flag to prevent dynamic linking.
link_static_flag=$lt_lt_prog_compiler_static
-@@ -17339,9 +18044,6 @@ inherit_rpath=$inherit_rpath
+@@ -17391,9 +18096,6 @@ inherit_rpath=$inherit_rpath
# Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=$link_all_deplibs
@@ -3491,7 +3492,7 @@ index a8dfd4bd68c..82316496953 100755
# Set to "yes" if exported symbols are required.
always_export_symbols=$always_export_symbols
-@@ -17357,6 +18059,9 @@ include_expsyms=$lt_include_expsyms
+@@ -17409,6 +18111,9 @@ include_expsyms=$lt_include_expsyms
# Commands necessary for linking programs (against libraries) with templates.
prelink_cmds=$lt_prelink_cmds
@@ -3501,7 +3502,7 @@ index a8dfd4bd68c..82316496953 100755
# Specify filename containing input files.
file_list_spec=$lt_file_list_spec
-@@ -17389,210 +18094,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -17441,210 +18146,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
# if finds mixed CR/LF and LF-only lines. Since sed operates in
# text mode, it properly converts lines to CR/LF. This bash problem
# is reportedly fixed, but why not run on old versions too?
@@ -3876,7 +3877,7 @@ index a8dfd4bd68c..82316496953 100755
chmod +x "$ofile"
diff --git a/gas/configure b/gas/configure
-index 60c1a055ae2..0e0ce4c0e23 100755
+index d4b13e6fc8b..dd5224c5c81 100755
--- a/gas/configure
+++ b/gas/configure
@@ -681,8 +681,11 @@ OTOOL
@@ -5204,7 +5205,7 @@ index 60c1a055ae2..0e0ce4c0e23 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -15928,13 +16583,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -15981,13 +16636,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -5225,7 +5226,7 @@ index 60c1a055ae2..0e0ce4c0e23 100755
STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -15949,14 +16611,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -16002,14 +16664,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -5244,7 +5245,7 @@ index 60c1a055ae2..0e0ce4c0e23 100755
DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -15989,12 +16654,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -16042,12 +16707,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -5258,7 +5259,7 @@ index 60c1a055ae2..0e0ce4c0e23 100755
file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -16049,8 +16714,13 @@ reload_flag \
+@@ -16102,8 +16767,13 @@ reload_flag \
OBJDUMP \
deplibs_check_method \
file_magic_cmd \
@@ -5272,7 +5273,7 @@ index 60c1a055ae2..0e0ce4c0e23 100755
STRIP \
RANLIB \
CC \
-@@ -16060,12 +16730,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -16113,12 +16783,14 @@ lt_cv_sys_global_symbol_pipe \
lt_cv_sys_global_symbol_to_cdecl \
lt_cv_sys_global_symbol_to_c_name_address \
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -5288,7 +5289,7 @@ index 60c1a055ae2..0e0ce4c0e23 100755
DSYMUTIL \
NMEDIT \
LIPO \
-@@ -16081,7 +16753,6 @@ no_undefined_flag \
+@@ -16134,7 +16806,6 @@ no_undefined_flag \
hardcode_libdir_flag_spec \
hardcode_libdir_flag_spec_ld \
hardcode_libdir_separator \
@@ -5296,7 +5297,7 @@ index 60c1a055ae2..0e0ce4c0e23 100755
exclude_expsyms \
include_expsyms \
file_list_spec \
-@@ -16117,6 +16788,7 @@ module_cmds \
+@@ -16170,6 +16841,7 @@ module_cmds \
module_expsym_cmds \
export_symbols_cmds \
prelink_cmds \
@@ -5304,7 +5305,7 @@ index 60c1a055ae2..0e0ce4c0e23 100755
postinstall_cmds \
postuninstall_cmds \
finish_cmds \
-@@ -16890,7 +17562,8 @@ $as_echo X"$file" |
+@@ -16943,7 +17615,8 @@ $as_echo X"$file" |
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
#
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -5314,7 +5315,7 @@ index 60c1a055ae2..0e0ce4c0e23 100755
# Written by Gordon Matzigkeit, 1996
#
# This file is part of GNU Libtool.
-@@ -16993,19 +17666,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -17046,19 +17719,42 @@ SP2NL=$lt_lt_SP2NL
# turn newlines into spaces.
NL2SP=$lt_lt_NL2SP
@@ -5358,7 +5359,7 @@ index 60c1a055ae2..0e0ce4c0e23 100755
# A symbol stripping program.
STRIP=$lt_STRIP
-@@ -17035,6 +17731,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -17088,6 +17784,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
# Transform the output of nm in a C name address pair when lib prefix is needed.
global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
@@ -5371,7 +5372,7 @@ index 60c1a055ae2..0e0ce4c0e23 100755
# The name of the directory that contains temporary libtool files.
objdir=$objdir
-@@ -17044,6 +17746,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -17097,6 +17799,9 @@ MAGIC_CMD=$MAGIC_CMD
# Must we lock files when doing compilation?
need_locks=$lt_need_locks
@@ -5381,7 +5382,7 @@ index 60c1a055ae2..0e0ce4c0e23 100755
# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
DSYMUTIL=$lt_DSYMUTIL
-@@ -17158,12 +17863,12 @@ with_gcc=$GCC
+@@ -17211,12 +17916,12 @@ with_gcc=$GCC
# Compiler flag to turn off builtin functions.
no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
@@ -5397,7 +5398,7 @@ index 60c1a055ae2..0e0ce4c0e23 100755
# Compiler flag to prevent dynamic linking.
link_static_flag=$lt_lt_prog_compiler_static
-@@ -17250,9 +17955,6 @@ inherit_rpath=$inherit_rpath
+@@ -17303,9 +18008,6 @@ inherit_rpath=$inherit_rpath
# Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=$link_all_deplibs
@@ -5407,7 +5408,7 @@ index 60c1a055ae2..0e0ce4c0e23 100755
# Set to "yes" if exported symbols are required.
always_export_symbols=$always_export_symbols
-@@ -17268,6 +17970,9 @@ include_expsyms=$lt_include_expsyms
+@@ -17321,6 +18023,9 @@ include_expsyms=$lt_include_expsyms
# Commands necessary for linking programs (against libraries) with templates.
prelink_cmds=$lt_prelink_cmds
@@ -5417,7 +5418,7 @@ index 60c1a055ae2..0e0ce4c0e23 100755
# Specify filename containing input files.
file_list_spec=$lt_file_list_spec
-@@ -17300,210 +18005,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -17353,210 +18058,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
# if finds mixed CR/LF and LF-only lines. Since sed operates in
# text mode, it properly converts lines to CR/LF. This bash problem
# is reportedly fixed, but why not run on old versions too?
@@ -5792,7 +5793,7 @@ index 60c1a055ae2..0e0ce4c0e23 100755
chmod +x "$ofile"
diff --git a/gprof/configure b/gprof/configure
-index c23692e5c3d..9f936a5b03d 100755
+index 3cf41b79116..e5d57f52912 100755
--- a/gprof/configure
+++ b/gprof/configure
@@ -662,8 +662,11 @@ OTOOL
@@ -7707,7 +7708,7 @@ index c23692e5c3d..9f936a5b03d 100755
chmod +x "$ofile"
diff --git a/ld/configure b/ld/configure
-index 811134a503b..f432f4637d0 100755
+index 1c872c0db5f..fe938e6c99f 100755
--- a/ld/configure
+++ b/ld/configure
@@ -691,8 +691,11 @@ OTOOL
@@ -7730,7 +7731,7 @@ index 811134a503b..f432f4637d0 100755
enable_libtool_lock
enable_plugins
enable_largefile
-@@ -1512,6 +1516,8 @@ Optional Packages:
+@@ -1520,6 +1524,8 @@ Optional Packages:
--with-pic try to use only PIC/non-PIC objects [default=use
both]
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
@@ -7739,7 +7740,7 @@ index 811134a503b..f432f4637d0 100755
--with-lib-path=dir1:dir2... set default LIB_PATH
--with-sysroot=DIR Search for usr/lib et al within DIR.
--with-system-zlib use installed libz
-@@ -5965,8 +5971,8 @@ esac
+@@ -5973,8 +5979,8 @@ esac
@@ -7750,7 +7751,7 @@ index 811134a503b..f432f4637d0 100755
-@@ -6006,7 +6012,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -6014,7 +6020,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
$as_echo_n "checking how to print strings... " >&6; }
# Test print first, because it will be a builtin if present.
@@ -7759,7 +7760,7 @@ index 811134a503b..f432f4637d0 100755
test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
ECHO='print -r --'
elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -6692,8 +6698,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -6700,8 +6706,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
# Try some XSI features
xsi_shell=no
( _lt_dummy="a/b/c"
@@ -7770,7 +7771,7 @@ index 811134a503b..f432f4637d0 100755
&& eval 'test $(( 1 + 1 )) -eq 2 \
&& test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
&& xsi_shell=yes
-@@ -6742,6 +6748,80 @@ esac
+@@ -6750,6 +6756,80 @@ esac
@@ -7851,7 +7852,7 @@ index 811134a503b..f432f4637d0 100755
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
$as_echo_n "checking for $LD option to reload object files... " >&6; }
if ${lt_cv_ld_reload_flag+:} false; then :
-@@ -6758,6 +6838,11 @@ case $reload_flag in
+@@ -6766,6 +6846,11 @@ case $reload_flag in
esac
reload_cmds='$LD$reload_flag -o $output$reload_objs'
case $host_os in
@@ -7863,7 +7864,7 @@ index 811134a503b..f432f4637d0 100755
darwin*)
if test "$GCC" = yes; then
reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -6926,7 +7011,8 @@ mingw* | pw32*)
+@@ -6934,7 +7019,8 @@ mingw* | pw32*)
lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
lt_cv_file_magic_cmd='func_win32_libid'
else
@@ -7873,7 +7874,7 @@ index 811134a503b..f432f4637d0 100755
lt_cv_file_magic_cmd='$OBJDUMP -f'
fi
;;
-@@ -7080,6 +7166,21 @@ esac
+@@ -7088,6 +7174,21 @@ esac
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
$as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -7895,7 +7896,7 @@ index 811134a503b..f432f4637d0 100755
file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -7095,9 +7196,162 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -7103,9 +7204,162 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
@@ -8060,7 +8061,7 @@ index 811134a503b..f432f4637d0 100755
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
if ${ac_cv_prog_AR+:} false; then :
-@@ -7113,7 +7367,7 @@ do
+@@ -7121,7 +7375,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -8069,7 +8070,7 @@ index 811134a503b..f432f4637d0 100755
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -7133,11 +7387,15 @@ $as_echo "no" >&6; }
+@@ -7141,11 +7395,15 @@ $as_echo "no" >&6; }
fi
@@ -8088,7 +8089,7 @@ index 811134a503b..f432f4637d0 100755
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
if ${ac_cv_prog_ac_ct_AR+:} false; then :
-@@ -7153,7 +7411,7 @@ do
+@@ -7161,7 +7419,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -8097,7 +8098,7 @@ index 811134a503b..f432f4637d0 100755
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -7172,6 +7430,10 @@ else
+@@ -7180,6 +7438,10 @@ else
$as_echo "no" >&6; }
fi
@@ -8108,7 +8109,7 @@ index 811134a503b..f432f4637d0 100755
if test "x$ac_ct_AR" = x; then
AR="false"
else
-@@ -7183,12 +7445,12 @@ ac_tool_warned=yes ;;
+@@ -7191,12 +7453,12 @@ ac_tool_warned=yes ;;
esac
AR=$ac_ct_AR
fi
@@ -8125,7 +8126,7 @@ index 811134a503b..f432f4637d0 100755
-@@ -7198,6 +7460,62 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
+@@ -7206,6 +7468,62 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
@@ -8188,7 +8189,7 @@ index 811134a503b..f432f4637d0 100755
if test -n "$ac_tool_prefix"; then
-@@ -7534,8 +7852,8 @@ esac
+@@ -7542,8 +7860,8 @@ esac
lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
# Transform an extracted symbol line into symbol name and symbol address
@@ -8199,7 +8200,7 @@ index 811134a503b..f432f4637d0 100755
# Handle CRLF in mingw tool chain
opt_cr=
-@@ -7571,6 +7889,7 @@ for ac_symprfx in "" "_"; do
+@@ -7579,6 +7897,7 @@ for ac_symprfx in "" "_"; do
else
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
fi
@@ -8207,7 +8208,7 @@ index 811134a503b..f432f4637d0 100755
# Check to see that the pipe works correctly.
pipe_works=no
-@@ -7612,6 +7931,18 @@ _LT_EOF
+@@ -7620,6 +7939,18 @@ _LT_EOF
if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
cat <<_LT_EOF > conftest.$ac_ext
@@ -8226,7 +8227,7 @@ index 811134a503b..f432f4637d0 100755
#ifdef __cplusplus
extern "C" {
#endif
-@@ -7623,7 +7954,7 @@ _LT_EOF
+@@ -7631,7 +7962,7 @@ _LT_EOF
cat <<_LT_EOF >> conftest.$ac_ext
/* The mapping between symbol names and symbols. */
@@ -8235,7 +8236,7 @@ index 811134a503b..f432f4637d0 100755
const char *name;
void *address;
}
-@@ -7649,8 +7980,8 @@ static const void *lt_preloaded_setup() {
+@@ -7657,8 +7988,8 @@ static const void *lt_preloaded_setup() {
_LT_EOF
# Now try linking the two files.
mv conftest.$ac_objext conftstm.$ac_objext
@@ -8246,7 +8247,7 @@ index 811134a503b..f432f4637d0 100755
LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -7660,8 +7991,8 @@ _LT_EOF
+@@ -7668,8 +7999,8 @@ _LT_EOF
test $ac_status = 0; } && test -s conftest${ac_exeext}; then
pipe_works=yes
fi
@@ -8257,7 +8258,7 @@ index 811134a503b..f432f4637d0 100755
else
echo "cannot find nm_test_func in $nlist" >&5
fi
-@@ -7698,6 +8029,19 @@ else
+@@ -7706,6 +8037,19 @@ else
$as_echo "ok" >&6; }
fi
@@ -8277,7 +8278,7 @@ index 811134a503b..f432f4637d0 100755
-@@ -7714,6 +8058,42 @@ fi
+@@ -7722,6 +8066,42 @@ fi
@@ -8320,7 +8321,7 @@ index 811134a503b..f432f4637d0 100755
-@@ -7925,6 +8305,123 @@ esac
+@@ -7933,6 +8313,123 @@ esac
need_locks="$enable_libtool_lock"
@@ -8444,7 +8445,7 @@ index 811134a503b..f432f4637d0 100755
case $host_os in
rhapsody* | darwin*)
-@@ -8488,6 +8985,8 @@ _LT_EOF
+@@ -8496,6 +8993,8 @@ _LT_EOF
$LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
echo "$AR cru libconftest.a conftest.o" >&5
$AR cru libconftest.a conftest.o 2>&5
@@ -8453,7 +8454,7 @@ index 811134a503b..f432f4637d0 100755
cat > conftest.c << _LT_EOF
int main() { return 0;}
_LT_EOF
-@@ -8556,6 +9055,16 @@ done
+@@ -8564,6 +9063,16 @@ done
@@ -8470,7 +8471,7 @@ index 811134a503b..f432f4637d0 100755
# Set options
-@@ -8684,7 +9193,8 @@ fi
+@@ -8692,7 +9201,8 @@ fi
LIBTOOL_DEPS="$ltmain"
# Always use our own libtool.
@@ -8480,7 +8481,7 @@ index 811134a503b..f432f4637d0 100755
-@@ -8773,7 +9283,7 @@ aix3*)
+@@ -8781,7 +9291,7 @@ aix3*)
esac
# Global variables:
@@ -8489,7 +8490,7 @@ index 811134a503b..f432f4637d0 100755
can_build_shared=yes
# All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -9071,8 +9581,6 @@ fi
+@@ -9079,8 +9589,6 @@ fi
lt_prog_compiler_pic=
lt_prog_compiler_static=
@@ -8498,7 +8499,7 @@ index 811134a503b..f432f4637d0 100755
if test "$GCC" = yes; then
lt_prog_compiler_wl='-Wl,'
-@@ -9238,6 +9746,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -9246,6 +9754,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
lt_prog_compiler_pic='--shared'
lt_prog_compiler_static='--static'
;;
@@ -8511,7 +8512,7 @@ index 811134a503b..f432f4637d0 100755
pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
-@@ -9300,7 +9814,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -9308,7 +9822,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
lt_prog_compiler_pic='-KPIC'
lt_prog_compiler_static='-Bstatic'
case $cc_basename in
@@ -8520,7 +8521,7 @@ index 811134a503b..f432f4637d0 100755
lt_prog_compiler_wl='-Qoption ld ';;
*)
lt_prog_compiler_wl='-Wl,';;
-@@ -9357,13 +9871,17 @@ case $host_os in
+@@ -9365,13 +9879,17 @@ case $host_os in
lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
;;
esac
@@ -8544,7 +8545,7 @@ index 811134a503b..f432f4637d0 100755
#
# Check to make sure the PIC flag actually works.
-@@ -9424,6 +9942,11 @@ fi
+@@ -9432,6 +9950,11 @@ fi
@@ -8556,7 +8557,7 @@ index 811134a503b..f432f4637d0 100755
#
# Check to make sure the static flag actually works.
#
-@@ -9774,7 +10297,8 @@ _LT_EOF
+@@ -9782,7 +10305,8 @@ _LT_EOF
allow_undefined_flag=unsupported
always_export_symbols=no
enable_shared_with_static_runtimes=yes
@@ -8566,7 +8567,7 @@ index 811134a503b..f432f4637d0 100755
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -9873,12 +10397,12 @@ _LT_EOF
+@@ -9881,12 +10405,12 @@ _LT_EOF
whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
hardcode_libdir_flag_spec=
hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -8581,7 +8582,7 @@ index 811134a503b..f432f4637d0 100755
fi
;;
esac
-@@ -9892,8 +10416,8 @@ _LT_EOF
+@@ -9900,8 +10424,8 @@ _LT_EOF
archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
wlarc=
else
@@ -8592,7 +8593,7 @@ index 811134a503b..f432f4637d0 100755
fi
;;
-@@ -9911,8 +10435,8 @@ _LT_EOF
+@@ -9919,8 +10443,8 @@ _LT_EOF
_LT_EOF
elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -8603,7 +8604,7 @@ index 811134a503b..f432f4637d0 100755
else
ld_shlibs=no
fi
-@@ -9958,8 +10482,8 @@ _LT_EOF
+@@ -9966,8 +10490,8 @@ _LT_EOF
*)
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -8614,7 +8615,7 @@ index 811134a503b..f432f4637d0 100755
else
ld_shlibs=no
fi
-@@ -10089,7 +10613,13 @@ _LT_EOF
+@@ -10097,7 +10621,13 @@ _LT_EOF
allow_undefined_flag='-berok'
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -8629,7 +8630,7 @@ index 811134a503b..f432f4637d0 100755
/* end confdefs.h. */
int
-@@ -10102,22 +10632,29 @@ main ()
+@@ -10110,22 +10640,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -8672,7 +8673,7 @@ index 811134a503b..f432f4637d0 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -10129,7 +10666,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -10137,7 +10674,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
else
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -8687,7 +8688,7 @@ index 811134a503b..f432f4637d0 100755
/* end confdefs.h. */
int
-@@ -10142,22 +10685,29 @@ main ()
+@@ -10150,22 +10693,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -8730,7 +8731,7 @@ index 811134a503b..f432f4637d0 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
# Warning - without using the other run time loading flags,
-@@ -10201,21 +10751,64 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -10209,21 +10759,64 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
# When not using gcc, we currently assume that we are using
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
@@ -8810,7 +8811,7 @@ index 811134a503b..f432f4637d0 100755
;;
darwin* | rhapsody*)
-@@ -10276,7 +10869,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -10284,7 +10877,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
freebsd* | dragonfly*)
@@ -8819,7 +8820,7 @@ index 811134a503b..f432f4637d0 100755
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
hardcode_shlibpath_var=no
-@@ -10284,7 +10877,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -10292,7 +10885,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
hpux9*)
if test "$GCC" = yes; then
@@ -8828,7 +8829,7 @@ index 811134a503b..f432f4637d0 100755
else
archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
fi
-@@ -10300,7 +10893,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -10308,7 +10901,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
hpux10*)
if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -8837,7 +8838,7 @@ index 811134a503b..f432f4637d0 100755
else
archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
fi
-@@ -10324,10 +10917,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -10332,10 +10925,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
ia64*)
@@ -8850,7 +8851,7 @@ index 811134a503b..f432f4637d0 100755
;;
esac
else
-@@ -10406,23 +10999,36 @@ fi
+@@ -10414,23 +11007,36 @@ fi
irix5* | irix6* | nonstopux*)
if test "$GCC" = yes; then
@@ -8895,7 +8896,7 @@ index 811134a503b..f432f4637d0 100755
else
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -10507,7 +11113,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -10515,7 +11121,7 @@ rm -f core conftest.err conftest.$ac_objext \
osf4* | osf5*) # as osf3* with the addition of -msym flag
if test "$GCC" = yes; then
allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -8904,7 +8905,7 @@ index 811134a503b..f432f4637d0 100755
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
allow_undefined_flag=' -expect_unresolved \*'
-@@ -10526,9 +11132,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -10534,9 +11140,9 @@ rm -f core conftest.err conftest.$ac_objext \
no_undefined_flag=' -z defs'
if test "$GCC" = yes; then
wlarc='${wl}'
@@ -8916,7 +8917,7 @@ index 811134a503b..f432f4637d0 100755
else
case `$CC -V 2>&1` in
*"Compilers 5.0"*)
-@@ -11104,8 +11710,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -11112,8 +11718,9 @@ cygwin* | mingw* | pw32* | cegcc*)
need_version=no
need_lib_prefix=no
@@ -8928,7 +8929,7 @@ index 811134a503b..f432f4637d0 100755
library_names_spec='$libname.dll.a'
# DLL is installed to $(libdir)/../bin by postinstall_cmds
postinstall_cmds='base_file=`basename \${file}`~
-@@ -11138,13 +11745,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -11146,13 +11753,71 @@ cygwin* | mingw* | pw32* | cegcc*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
;;
esac
@@ -9001,7 +9002,7 @@ index 811134a503b..f432f4637d0 100755
# FIXME: first we should search . and the directory the executable is in
shlibpath_var=PATH
;;
-@@ -11236,7 +11901,7 @@ haiku*)
+@@ -11244,7 +11909,7 @@ haiku*)
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LIBRARY_PATH
shlibpath_overrides_runpath=yes
@@ -9010,16 +9011,16 @@ index 811134a503b..f432f4637d0 100755
hardcode_into_libs=yes
;;
-@@ -12032,7 +12697,7 @@ else
+@@ -12040,7 +12705,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
--#line 12035 "configure"
+-#line 12040 "configure"
+#line $LINENO "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
-@@ -12076,10 +12741,10 @@ else
+@@ -12084,10 +12749,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -9032,16 +9033,16 @@ index 811134a503b..f432f4637d0 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -12138,7 +12803,7 @@ else
+@@ -12146,7 +12811,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
--#line 12141 "configure"
+-#line 12146 "configure"
+#line $LINENO "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
-@@ -12182,10 +12847,10 @@ else
+@@ -12190,10 +12855,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -9054,7 +9055,7 @@ index 811134a503b..f432f4637d0 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -12577,6 +13242,7 @@ $RM -r conftest*
+@@ -12585,6 +13250,7 @@ $RM -r conftest*
# Allow CC to be a program name with arguments.
lt_save_CC=$CC
@@ -9062,7 +9063,7 @@ index 811134a503b..f432f4637d0 100755
lt_save_LD=$LD
lt_save_GCC=$GCC
GCC=$GXX
-@@ -12594,6 +13260,7 @@ $RM -r conftest*
+@@ -12602,6 +13268,7 @@ $RM -r conftest*
fi
test -z "${LDCXX+set}" || LD=$LDCXX
CC=${CXX-"c++"}
@@ -9070,7 +9071,7 @@ index 811134a503b..f432f4637d0 100755
compiler=$CC
compiler_CXX=$CC
for cc_temp in $compiler""; do
-@@ -12876,7 +13543,13 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
+@@ -12884,7 +13551,13 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
allow_undefined_flag_CXX='-berok'
# Determine the default libpath from the value encoded in an empty
# executable.
@@ -9085,7 +9086,7 @@ index 811134a503b..f432f4637d0 100755
/* end confdefs.h. */
int
-@@ -12889,22 +13562,29 @@ main ()
+@@ -12897,22 +13570,29 @@ main ()
_ACEOF
if ac_fn_cxx_try_link "$LINENO"; then :
@@ -9128,7 +9129,7 @@ index 811134a503b..f432f4637d0 100755
hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath"
-@@ -12917,7 +13597,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -12925,7 +13605,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
else
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -9143,7 +9144,7 @@ index 811134a503b..f432f4637d0 100755
/* end confdefs.h. */
int
-@@ -12930,22 +13616,29 @@ main ()
+@@ -12938,22 +13624,29 @@ main ()
_ACEOF
if ac_fn_cxx_try_link "$LINENO"; then :
@@ -9186,7 +9187,7 @@ index 811134a503b..f432f4637d0 100755
hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath"
# Warning - without using the other run time loading flags,
-@@ -12988,29 +13681,75 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -12996,29 +13689,75 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
;;
cygwin* | mingw* | pw32* | cegcc*)
@@ -9285,7 +9286,7 @@ index 811134a503b..f432f4637d0 100755
darwin* | rhapsody*)
-@@ -13116,7 +13855,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -13124,7 +13863,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
;;
*)
if test "$GXX" = yes; then
@@ -9294,7 +9295,7 @@ index 811134a503b..f432f4637d0 100755
else
# FIXME: insert proper C++ library support
ld_shlibs_CXX=no
-@@ -13187,10 +13926,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -13195,10 +13934,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
ia64*)
@@ -9307,7 +9308,7 @@ index 811134a503b..f432f4637d0 100755
;;
esac
fi
-@@ -13231,9 +13970,9 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -13239,9 +13978,9 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
*)
if test "$GXX" = yes; then
if test "$with_gnu_ld" = no; then
@@ -9319,7 +9320,7 @@ index 811134a503b..f432f4637d0 100755
fi
fi
link_all_deplibs_CXX=yes
-@@ -13303,20 +14042,20 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -13311,20 +14050,20 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
prelink_cmds_CXX='tpldir=Template.dir~
rm -rf $tpldir~
$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
@@ -9344,7 +9345,7 @@ index 811134a503b..f432f4637d0 100755
;;
*) # Version 6 and above use weak symbols
archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
-@@ -13511,7 +14250,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -13519,7 +14258,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
archive_cmds_CXX='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
;;
*)
@@ -9353,7 +9354,7 @@ index 811134a503b..f432f4637d0 100755
;;
esac
-@@ -13557,7 +14296,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -13565,7 +14304,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
solaris*)
case $cc_basename in
@@ -9362,7 +9363,7 @@ index 811134a503b..f432f4637d0 100755
# Sun C++ 4.2, 5.x and Centerline C++
archive_cmds_need_lc_CXX=yes
no_undefined_flag_CXX=' -zdefs'
-@@ -13598,9 +14337,9 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -13606,9 +14345,9 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
if test "$GXX" = yes && test "$with_gnu_ld" = no; then
no_undefined_flag_CXX=' ${wl}-z ${wl}defs'
if $CC --version | $GREP -v '^2\.7' > /dev/null; then
@@ -9374,7 +9375,7 @@ index 811134a503b..f432f4637d0 100755
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
-@@ -13735,6 +14474,13 @@ private:
+@@ -13743,6 +14482,13 @@ private:
};
_LT_EOF
@@ -9388,7 +9389,7 @@ index 811134a503b..f432f4637d0 100755
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
(eval $ac_compile) 2>&5
ac_status=$?
-@@ -13748,7 +14494,7 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
+@@ -13756,7 +14502,7 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
pre_test_object_deps_done=no
for p in `eval "$output_verbose_link_cmd"`; do
@@ -9397,7 +9398,7 @@ index 811134a503b..f432f4637d0 100755
-L* | -R* | -l*)
# Some compilers place space between "-{L,R}" and the path.
-@@ -13757,13 +14503,22 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
+@@ -13765,13 +14511,22 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
test $p = "-R"; then
prev=$p
continue
@@ -9424,7 +9425,7 @@ index 811134a503b..f432f4637d0 100755
# Internal compiler library paths should come after those
# provided the user. The postdeps already come after the
# user supplied libs so there is no need to process them.
-@@ -13783,8 +14538,10 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
+@@ -13791,8 +14546,10 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
postdeps_CXX="${postdeps_CXX} ${prev}${p}"
fi
fi
@@ -9435,7 +9436,7 @@ index 811134a503b..f432f4637d0 100755
*.$objext)
# This assumes that the test object file only shows up
# once in the compiler output.
-@@ -13820,6 +14577,7 @@ else
+@@ -13828,6 +14585,7 @@ else
fi
$RM -f confest.$objext
@@ -9443,7 +9444,7 @@ index 811134a503b..f432f4637d0 100755
# PORTME: override above test on systems where it is broken
case $host_os in
-@@ -13855,7 +14613,7 @@ linux*)
+@@ -13863,7 +14621,7 @@ linux*)
solaris*)
case $cc_basename in
@@ -9452,7 +9453,7 @@ index 811134a503b..f432f4637d0 100755
# The more standards-conforming stlport4 library is
# incompatible with the Cstd library. Avoid specifying
# it if it's in CXXFLAGS. Ignore libCrun as
-@@ -13920,8 +14678,6 @@ fi
+@@ -13928,8 +14686,6 @@ fi
lt_prog_compiler_pic_CXX=
lt_prog_compiler_static_CXX=
@@ -9461,7 +9462,7 @@ index 811134a503b..f432f4637d0 100755
# C++ specific cases for pic, static, wl, etc.
if test "$GXX" = yes; then
-@@ -14026,6 +14782,11 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -14034,6 +14790,11 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
;;
esac
;;
@@ -9473,7 +9474,7 @@ index 811134a503b..f432f4637d0 100755
dgux*)
case $cc_basename in
ec++*)
-@@ -14178,7 +14939,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -14186,7 +14947,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
;;
solaris*)
case $cc_basename in
@@ -9482,7 +9483,7 @@ index 811134a503b..f432f4637d0 100755
# Sun C++ 4.2, 5.x and Centerline C++
lt_prog_compiler_pic_CXX='-KPIC'
lt_prog_compiler_static_CXX='-Bstatic'
-@@ -14243,10 +15004,17 @@ case $host_os in
+@@ -14251,10 +15012,17 @@ case $host_os in
lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX -DPIC"
;;
esac
@@ -9503,7 +9504,7 @@ index 811134a503b..f432f4637d0 100755
#
# Check to make sure the PIC flag actually works.
-@@ -14304,6 +15072,8 @@ fi
+@@ -14312,6 +15080,8 @@ fi
@@ -9512,7 +9513,7 @@ index 811134a503b..f432f4637d0 100755
#
# Check to make sure the static flag actually works.
#
-@@ -14481,6 +15251,7 @@ fi
+@@ -14489,6 +15259,7 @@ fi
$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
@@ -9520,7 +9521,7 @@ index 811134a503b..f432f4637d0 100755
case $host_os in
aix[4-9]*)
# If we're using GNU nm, then we don't want the "-C" option.
-@@ -14495,15 +15266,20 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
+@@ -14503,15 +15274,20 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
;;
pw32*)
export_symbols_cmds_CXX="$ltdll_cmds"
@@ -9546,7 +9547,7 @@ index 811134a503b..f432f4637d0 100755
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
$as_echo "$ld_shlibs_CXX" >&6; }
-@@ -14766,8 +15542,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -14774,8 +15550,9 @@ cygwin* | mingw* | pw32* | cegcc*)
need_version=no
need_lib_prefix=no
@@ -9558,7 +9559,7 @@ index 811134a503b..f432f4637d0 100755
library_names_spec='$libname.dll.a'
# DLL is installed to $(libdir)/../bin by postinstall_cmds
postinstall_cmds='base_file=`basename \${file}`~
-@@ -14799,13 +15576,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -14807,13 +15584,71 @@ cygwin* | mingw* | pw32* | cegcc*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
;;
esac
@@ -9631,7 +9632,7 @@ index 811134a503b..f432f4637d0 100755
# FIXME: first we should search . and the directory the executable is in
shlibpath_var=PATH
;;
-@@ -14896,7 +15731,7 @@ haiku*)
+@@ -14904,7 +15739,7 @@ haiku*)
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LIBRARY_PATH
shlibpath_overrides_runpath=yes
@@ -9640,7 +9641,7 @@ index 811134a503b..f432f4637d0 100755
hardcode_into_libs=yes
;;
-@@ -15355,6 +16190,7 @@ fi
+@@ -15363,6 +16198,7 @@ fi
fi # test -n "$compiler"
CC=$lt_save_CC
@@ -9648,7 +9649,7 @@ index 811134a503b..f432f4637d0 100755
LDCXX=$LD
LD=$lt_save_LD
GCC=$lt_save_GCC
-@@ -18477,13 +19313,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -18554,13 +19390,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -9669,7 +9670,7 @@ index 811134a503b..f432f4637d0 100755
STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -18498,14 +19341,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -18575,14 +19418,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -9688,7 +9689,7 @@ index 811134a503b..f432f4637d0 100755
DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -18538,12 +19384,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -18615,12 +19461,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -9702,7 +9703,7 @@ index 811134a503b..f432f4637d0 100755
file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -18582,8 +19428,8 @@ old_archive_cmds_CXX='`$ECHO "$old_archive_cmds_CXX" | $SED "$delay_single_quote
+@@ -18659,8 +19505,8 @@ old_archive_cmds_CXX='`$ECHO "$old_archive_cmds_CXX" | $SED "$delay_single_quote
compiler_CXX='`$ECHO "$compiler_CXX" | $SED "$delay_single_quote_subst"`'
GCC_CXX='`$ECHO "$GCC_CXX" | $SED "$delay_single_quote_subst"`'
lt_prog_compiler_no_builtin_flag_CXX='`$ECHO "$lt_prog_compiler_no_builtin_flag_CXX" | $SED "$delay_single_quote_subst"`'
@@ -9712,7 +9713,7 @@ index 811134a503b..f432f4637d0 100755
lt_prog_compiler_static_CXX='`$ECHO "$lt_prog_compiler_static_CXX" | $SED "$delay_single_quote_subst"`'
lt_cv_prog_compiler_c_o_CXX='`$ECHO "$lt_cv_prog_compiler_c_o_CXX" | $SED "$delay_single_quote_subst"`'
archive_cmds_need_lc_CXX='`$ECHO "$archive_cmds_need_lc_CXX" | $SED "$delay_single_quote_subst"`'
-@@ -18610,12 +19456,12 @@ hardcode_shlibpath_var_CXX='`$ECHO "$hardcode_shlibpath_var_CXX" | $SED "$delay_
+@@ -18687,12 +19533,12 @@ hardcode_shlibpath_var_CXX='`$ECHO "$hardcode_shlibpath_var_CXX" | $SED "$delay_
hardcode_automatic_CXX='`$ECHO "$hardcode_automatic_CXX" | $SED "$delay_single_quote_subst"`'
inherit_rpath_CXX='`$ECHO "$inherit_rpath_CXX" | $SED "$delay_single_quote_subst"`'
link_all_deplibs_CXX='`$ECHO "$link_all_deplibs_CXX" | $SED "$delay_single_quote_subst"`'
@@ -9726,7 +9727,7 @@ index 811134a503b..f432f4637d0 100755
file_list_spec_CXX='`$ECHO "$file_list_spec_CXX" | $SED "$delay_single_quote_subst"`'
hardcode_action_CXX='`$ECHO "$hardcode_action_CXX" | $SED "$delay_single_quote_subst"`'
compiler_lib_search_dirs_CXX='`$ECHO "$compiler_lib_search_dirs_CXX" | $SED "$delay_single_quote_subst"`'
-@@ -18653,8 +19499,13 @@ reload_flag \
+@@ -18730,8 +19576,13 @@ reload_flag \
OBJDUMP \
deplibs_check_method \
file_magic_cmd \
@@ -9740,7 +9741,7 @@ index 811134a503b..f432f4637d0 100755
STRIP \
RANLIB \
CC \
-@@ -18664,12 +19515,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -18741,12 +19592,14 @@ lt_cv_sys_global_symbol_pipe \
lt_cv_sys_global_symbol_to_cdecl \
lt_cv_sys_global_symbol_to_c_name_address \
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -9756,7 +9757,7 @@ index 811134a503b..f432f4637d0 100755
DSYMUTIL \
NMEDIT \
LIPO \
-@@ -18685,7 +19538,6 @@ no_undefined_flag \
+@@ -18762,7 +19615,6 @@ no_undefined_flag \
hardcode_libdir_flag_spec \
hardcode_libdir_flag_spec_ld \
hardcode_libdir_separator \
@@ -9764,7 +9765,7 @@ index 811134a503b..f432f4637d0 100755
exclude_expsyms \
include_expsyms \
file_list_spec \
-@@ -18707,8 +19559,8 @@ LD_CXX \
+@@ -18784,8 +19636,8 @@ LD_CXX \
reload_flag_CXX \
compiler_CXX \
lt_prog_compiler_no_builtin_flag_CXX \
@@ -9774,7 +9775,7 @@ index 811134a503b..f432f4637d0 100755
lt_prog_compiler_static_CXX \
lt_cv_prog_compiler_c_o_CXX \
export_dynamic_flag_spec_CXX \
-@@ -18720,7 +19572,6 @@ no_undefined_flag_CXX \
+@@ -18797,7 +19649,6 @@ no_undefined_flag_CXX \
hardcode_libdir_flag_spec_CXX \
hardcode_libdir_flag_spec_ld_CXX \
hardcode_libdir_separator_CXX \
@@ -9782,7 +9783,7 @@ index 811134a503b..f432f4637d0 100755
exclude_expsyms_CXX \
include_expsyms_CXX \
file_list_spec_CXX \
-@@ -18754,6 +19605,7 @@ module_cmds \
+@@ -18831,6 +19682,7 @@ module_cmds \
module_expsym_cmds \
export_symbols_cmds \
prelink_cmds \
@@ -9790,7 +9791,7 @@ index 811134a503b..f432f4637d0 100755
postinstall_cmds \
postuninstall_cmds \
finish_cmds \
-@@ -18768,7 +19620,8 @@ archive_expsym_cmds_CXX \
+@@ -18845,7 +19697,8 @@ archive_expsym_cmds_CXX \
module_cmds_CXX \
module_expsym_cmds_CXX \
export_symbols_cmds_CXX \
@@ -9800,7 +9801,7 @@ index 811134a503b..f432f4637d0 100755
case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
*[\\\\\\\`\\"\\\$]*)
eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
-@@ -19533,7 +20386,8 @@ $as_echo X"$file" |
+@@ -19610,7 +20463,8 @@ $as_echo X"$file" |
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
#
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -9810,7 +9811,7 @@ index 811134a503b..f432f4637d0 100755
# Written by Gordon Matzigkeit, 1996
#
# This file is part of GNU Libtool.
-@@ -19636,19 +20490,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -19713,19 +20567,42 @@ SP2NL=$lt_lt_SP2NL
# turn newlines into spaces.
NL2SP=$lt_lt_NL2SP
@@ -9854,7 +9855,7 @@ index 811134a503b..f432f4637d0 100755
# A symbol stripping program.
STRIP=$lt_STRIP
-@@ -19678,6 +20555,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -19755,6 +20632,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
# Transform the output of nm in a C name address pair when lib prefix is needed.
global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
@@ -9867,7 +9868,7 @@ index 811134a503b..f432f4637d0 100755
# The name of the directory that contains temporary libtool files.
objdir=$objdir
-@@ -19687,6 +20570,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -19764,6 +20647,9 @@ MAGIC_CMD=$MAGIC_CMD
# Must we lock files when doing compilation?
need_locks=$lt_need_locks
@@ -9877,7 +9878,7 @@ index 811134a503b..f432f4637d0 100755
# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
DSYMUTIL=$lt_DSYMUTIL
-@@ -19801,12 +20687,12 @@ with_gcc=$GCC
+@@ -19878,12 +20764,12 @@ with_gcc=$GCC
# Compiler flag to turn off builtin functions.
no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
@@ -9893,7 +9894,7 @@ index 811134a503b..f432f4637d0 100755
# Compiler flag to prevent dynamic linking.
link_static_flag=$lt_lt_prog_compiler_static
-@@ -19893,9 +20779,6 @@ inherit_rpath=$inherit_rpath
+@@ -19970,9 +20856,6 @@ inherit_rpath=$inherit_rpath
# Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=$link_all_deplibs
@@ -9903,7 +9904,7 @@ index 811134a503b..f432f4637d0 100755
# Set to "yes" if exported symbols are required.
always_export_symbols=$always_export_symbols
-@@ -19911,6 +20794,9 @@ include_expsyms=$lt_include_expsyms
+@@ -19988,6 +20871,9 @@ include_expsyms=$lt_include_expsyms
# Commands necessary for linking programs (against libraries) with templates.
prelink_cmds=$lt_prelink_cmds
@@ -9913,7 +9914,7 @@ index 811134a503b..f432f4637d0 100755
# Specify filename containing input files.
file_list_spec=$lt_file_list_spec
-@@ -19957,210 +20843,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -20034,210 +20920,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
# if finds mixed CR/LF and LF-only lines. Since sed operates in
# text mode, it properly converts lines to CR/LF. This bash problem
# is reportedly fixed, but why not run on old versions too?
@@ -10287,7 +10288,7 @@ index 811134a503b..f432f4637d0 100755
(rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
chmod +x "$ofile"
-@@ -20188,12 +21033,12 @@ with_gcc=$GCC_CXX
+@@ -20265,12 +21110,12 @@ with_gcc=$GCC_CXX
# Compiler flag to turn off builtin functions.
no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX
@@ -10303,7 +10304,7 @@ index 811134a503b..f432f4637d0 100755
# Compiler flag to prevent dynamic linking.
link_static_flag=$lt_lt_prog_compiler_static_CXX
-@@ -20280,9 +21125,6 @@ inherit_rpath=$inherit_rpath_CXX
+@@ -20357,9 +21202,6 @@ inherit_rpath=$inherit_rpath_CXX
# Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=$link_all_deplibs_CXX
@@ -10313,7 +10314,7 @@ index 811134a503b..f432f4637d0 100755
# Set to "yes" if exported symbols are required.
always_export_symbols=$always_export_symbols_CXX
-@@ -20298,6 +21140,9 @@ include_expsyms=$lt_include_expsyms_CXX
+@@ -20375,6 +21217,9 @@ include_expsyms=$lt_include_expsyms_CXX
# Commands necessary for linking programs (against libraries) with templates.
prelink_cmds=$lt_prelink_cmds_CXX
@@ -10324,7 +10325,7 @@ index 811134a503b..f432f4637d0 100755
file_list_spec=$lt_file_list_spec_CXX
diff --git a/libctf/configure b/libctf/configure
-index e5493b31691..9977e4f7a42 100755
+index 1dc1b65fac3..c5c2f36bbc0 100755
--- a/libctf/configure
+++ b/libctf/configure
@@ -663,6 +663,8 @@ OTOOL
@@ -10336,7 +10337,7 @@ index e5493b31691..9977e4f7a42 100755
OBJDUMP
LN_S
NM
-@@ -778,6 +780,7 @@ enable_static
+@@ -790,6 +792,7 @@ enable_static
with_pic
enable_fast_install
with_gnu_ld
@@ -10344,7 +10345,7 @@ index e5493b31691..9977e4f7a42 100755
enable_libtool_lock
enable_largefile
enable_werror_always
-@@ -1436,6 +1439,8 @@ Optional Packages:
+@@ -1448,6 +1451,8 @@ Optional Packages:
--with-pic try to use only PIC/non-PIC objects [default=use
both]
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
@@ -10353,7 +10354,7 @@ index e5493b31691..9977e4f7a42 100755
--with-system-zlib use installed libz
Some influential environment variables:
-@@ -5324,8 +5329,8 @@ esac
+@@ -5406,8 +5411,8 @@ esac
@@ -10364,7 +10365,7 @@ index e5493b31691..9977e4f7a42 100755
-@@ -5436,7 +5441,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -5518,7 +5523,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
$as_echo_n "checking how to print strings... " >&6; }
# Test print first, because it will be a builtin if present.
@@ -10373,7 +10374,7 @@ index e5493b31691..9977e4f7a42 100755
test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
ECHO='print -r --'
elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -6122,8 +6127,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -6204,8 +6209,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
# Try some XSI features
xsi_shell=no
( _lt_dummy="a/b/c"
@@ -10384,7 +10385,7 @@ index e5493b31691..9977e4f7a42 100755
&& eval 'test $(( 1 + 1 )) -eq 2 \
&& test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
&& xsi_shell=yes
-@@ -6172,6 +6177,80 @@ esac
+@@ -6254,6 +6259,80 @@ esac
@@ -10465,7 +10466,7 @@ index e5493b31691..9977e4f7a42 100755
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
$as_echo_n "checking for $LD option to reload object files... " >&6; }
if ${lt_cv_ld_reload_flag+:} false; then :
-@@ -6188,6 +6267,11 @@ case $reload_flag in
+@@ -6270,6 +6349,11 @@ case $reload_flag in
esac
reload_cmds='$LD$reload_flag -o $output$reload_objs'
case $host_os in
@@ -10477,7 +10478,7 @@ index e5493b31691..9977e4f7a42 100755
darwin*)
if test "$GCC" = yes; then
reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -6356,7 +6440,8 @@ mingw* | pw32*)
+@@ -6438,7 +6522,8 @@ mingw* | pw32*)
lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
lt_cv_file_magic_cmd='func_win32_libid'
else
@@ -10487,7 +10488,7 @@ index e5493b31691..9977e4f7a42 100755
lt_cv_file_magic_cmd='$OBJDUMP -f'
fi
;;
-@@ -6510,6 +6595,21 @@ esac
+@@ -6592,6 +6677,21 @@ esac
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
$as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -10509,7 +10510,7 @@ index e5493b31691..9977e4f7a42 100755
file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -6525,9 +6625,162 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -6607,9 +6707,162 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
@@ -10674,7 +10675,7 @@ index e5493b31691..9977e4f7a42 100755
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
if ${ac_cv_prog_AR+:} false; then :
-@@ -6543,7 +6796,7 @@ do
+@@ -6625,7 +6878,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -10683,7 +10684,7 @@ index e5493b31691..9977e4f7a42 100755
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -6563,11 +6816,15 @@ $as_echo "no" >&6; }
+@@ -6645,11 +6898,15 @@ $as_echo "no" >&6; }
fi
@@ -10702,7 +10703,7 @@ index e5493b31691..9977e4f7a42 100755
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
if ${ac_cv_prog_ac_ct_AR+:} false; then :
-@@ -6583,7 +6840,7 @@ do
+@@ -6665,7 +6922,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -10711,7 +10712,7 @@ index e5493b31691..9977e4f7a42 100755
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -6602,6 +6859,10 @@ else
+@@ -6684,6 +6941,10 @@ else
$as_echo "no" >&6; }
fi
@@ -10722,7 +10723,7 @@ index e5493b31691..9977e4f7a42 100755
if test "x$ac_ct_AR" = x; then
AR="false"
else
-@@ -6613,16 +6874,72 @@ ac_tool_warned=yes ;;
+@@ -6695,16 +6956,72 @@ ac_tool_warned=yes ;;
esac
AR=$ac_ct_AR
fi
@@ -10799,7 +10800,7 @@ index e5493b31691..9977e4f7a42 100755
-@@ -6964,8 +7281,8 @@ esac
+@@ -7046,8 +7363,8 @@ esac
lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
# Transform an extracted symbol line into symbol name and symbol address
@@ -10810,7 +10811,7 @@ index e5493b31691..9977e4f7a42 100755
# Handle CRLF in mingw tool chain
opt_cr=
-@@ -7001,6 +7318,7 @@ for ac_symprfx in "" "_"; do
+@@ -7083,6 +7400,7 @@ for ac_symprfx in "" "_"; do
else
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
fi
@@ -10818,7 +10819,7 @@ index e5493b31691..9977e4f7a42 100755
# Check to see that the pipe works correctly.
pipe_works=no
-@@ -7042,6 +7360,18 @@ _LT_EOF
+@@ -7124,6 +7442,18 @@ _LT_EOF
if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
cat <<_LT_EOF > conftest.$ac_ext
@@ -10837,7 +10838,7 @@ index e5493b31691..9977e4f7a42 100755
#ifdef __cplusplus
extern "C" {
#endif
-@@ -7053,7 +7383,7 @@ _LT_EOF
+@@ -7135,7 +7465,7 @@ _LT_EOF
cat <<_LT_EOF >> conftest.$ac_ext
/* The mapping between symbol names and symbols. */
@@ -10846,7 +10847,7 @@ index e5493b31691..9977e4f7a42 100755
const char *name;
void *address;
}
-@@ -7079,8 +7409,8 @@ static const void *lt_preloaded_setup() {
+@@ -7161,8 +7491,8 @@ static const void *lt_preloaded_setup() {
_LT_EOF
# Now try linking the two files.
mv conftest.$ac_objext conftstm.$ac_objext
@@ -10857,7 +10858,7 @@ index e5493b31691..9977e4f7a42 100755
LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -7090,8 +7420,8 @@ _LT_EOF
+@@ -7172,8 +7502,8 @@ _LT_EOF
test $ac_status = 0; } && test -s conftest${ac_exeext}; then
pipe_works=yes
fi
@@ -10868,7 +10869,7 @@ index e5493b31691..9977e4f7a42 100755
else
echo "cannot find nm_test_func in $nlist" >&5
fi
-@@ -7128,6 +7458,16 @@ else
+@@ -7210,6 +7540,16 @@ else
$as_echo "ok" >&6; }
fi
@@ -10885,7 +10886,7 @@ index e5493b31691..9977e4f7a42 100755
-@@ -7144,6 +7484,45 @@ fi
+@@ -7226,6 +7566,45 @@ fi
@@ -10931,7 +10932,7 @@ index e5493b31691..9977e4f7a42 100755
-@@ -7355,6 +7734,123 @@ esac
+@@ -7437,6 +7816,123 @@ esac
need_locks="$enable_libtool_lock"
@@ -11055,7 +11056,7 @@ index e5493b31691..9977e4f7a42 100755
case $host_os in
rhapsody* | darwin*)
-@@ -7918,6 +8414,8 @@ _LT_EOF
+@@ -8000,6 +8496,8 @@ _LT_EOF
$LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
echo "$AR cru libconftest.a conftest.o" >&5
$AR cru libconftest.a conftest.o 2>&5
@@ -11064,7 +11065,7 @@ index e5493b31691..9977e4f7a42 100755
cat > conftest.c << _LT_EOF
int main() { return 0;}
_LT_EOF
-@@ -8083,7 +8581,8 @@ fi
+@@ -8165,7 +8663,8 @@ fi
LIBTOOL_DEPS="$ltmain"
# Always use our own libtool.
@@ -11074,7 +11075,7 @@ index e5493b31691..9977e4f7a42 100755
-@@ -8172,7 +8671,7 @@ aix3*)
+@@ -8254,7 +8753,7 @@ aix3*)
esac
# Global variables:
@@ -11083,7 +11084,7 @@ index e5493b31691..9977e4f7a42 100755
can_build_shared=yes
# All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -8470,8 +8969,6 @@ fi
+@@ -8552,8 +9051,6 @@ fi
lt_prog_compiler_pic=
lt_prog_compiler_static=
@@ -11092,7 +11093,7 @@ index e5493b31691..9977e4f7a42 100755
if test "$GCC" = yes; then
lt_prog_compiler_wl='-Wl,'
-@@ -8637,6 +9134,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8719,6 +9216,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
lt_prog_compiler_pic='--shared'
lt_prog_compiler_static='--static'
;;
@@ -11105,7 +11106,7 @@ index e5493b31691..9977e4f7a42 100755
pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
-@@ -8699,7 +9202,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8781,7 +9284,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
lt_prog_compiler_pic='-KPIC'
lt_prog_compiler_static='-Bstatic'
case $cc_basename in
@@ -11114,7 +11115,7 @@ index e5493b31691..9977e4f7a42 100755
lt_prog_compiler_wl='-Qoption ld ';;
*)
lt_prog_compiler_wl='-Wl,';;
-@@ -8756,13 +9259,17 @@ case $host_os in
+@@ -8838,13 +9341,17 @@ case $host_os in
lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
;;
esac
@@ -11138,7 +11139,7 @@ index e5493b31691..9977e4f7a42 100755
#
# Check to make sure the PIC flag actually works.
-@@ -8823,6 +9330,11 @@ fi
+@@ -8905,6 +9412,11 @@ fi
@@ -11150,7 +11151,7 @@ index e5493b31691..9977e4f7a42 100755
#
# Check to make sure the static flag actually works.
#
-@@ -9173,7 +9685,8 @@ _LT_EOF
+@@ -9255,7 +9767,8 @@ _LT_EOF
allow_undefined_flag=unsupported
always_export_symbols=no
enable_shared_with_static_runtimes=yes
@@ -11160,7 +11161,7 @@ index e5493b31691..9977e4f7a42 100755
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -9272,12 +9785,12 @@ _LT_EOF
+@@ -9354,12 +9867,12 @@ _LT_EOF
whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
hardcode_libdir_flag_spec=
hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -11175,7 +11176,7 @@ index e5493b31691..9977e4f7a42 100755
fi
;;
esac
-@@ -9291,8 +9804,8 @@ _LT_EOF
+@@ -9373,8 +9886,8 @@ _LT_EOF
archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
wlarc=
else
@@ -11186,7 +11187,7 @@ index e5493b31691..9977e4f7a42 100755
fi
;;
-@@ -9310,8 +9823,8 @@ _LT_EOF
+@@ -9392,8 +9905,8 @@ _LT_EOF
_LT_EOF
elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -11197,7 +11198,7 @@ index e5493b31691..9977e4f7a42 100755
else
ld_shlibs=no
fi
-@@ -9357,8 +9870,8 @@ _LT_EOF
+@@ -9439,8 +9952,8 @@ _LT_EOF
*)
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -11208,7 +11209,7 @@ index e5493b31691..9977e4f7a42 100755
else
ld_shlibs=no
fi
-@@ -9488,7 +10001,13 @@ _LT_EOF
+@@ -9570,7 +10083,13 @@ _LT_EOF
allow_undefined_flag='-berok'
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -11223,7 +11224,7 @@ index e5493b31691..9977e4f7a42 100755
/* end confdefs.h. */
int
-@@ -9501,22 +10020,29 @@ main ()
+@@ -9583,22 +10102,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -11266,7 +11267,7 @@ index e5493b31691..9977e4f7a42 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -9528,7 +10054,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9610,7 +10136,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
else
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -11281,7 +11282,7 @@ index e5493b31691..9977e4f7a42 100755
/* end confdefs.h. */
int
-@@ -9541,22 +10073,29 @@ main ()
+@@ -9623,22 +10155,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -11324,7 +11325,7 @@ index e5493b31691..9977e4f7a42 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
# Warning - without using the other run time loading flags,
-@@ -9601,20 +10140,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9683,20 +10222,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
@@ -11402,7 +11403,7 @@ index e5493b31691..9977e4f7a42 100755
;;
darwin* | rhapsody*)
-@@ -9675,7 +10257,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9757,7 +10339,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
freebsd* | dragonfly*)
@@ -11411,7 +11412,7 @@ index e5493b31691..9977e4f7a42 100755
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
hardcode_shlibpath_var=no
-@@ -9683,7 +10265,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9765,7 +10347,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
hpux9*)
if test "$GCC" = yes; then
@@ -11420,7 +11421,7 @@ index e5493b31691..9977e4f7a42 100755
else
archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
fi
-@@ -9699,7 +10281,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9781,7 +10363,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
hpux10*)
if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -11429,7 +11430,7 @@ index e5493b31691..9977e4f7a42 100755
else
archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
fi
-@@ -9723,10 +10305,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9805,10 +10387,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
ia64*)
@@ -11442,7 +11443,7 @@ index e5493b31691..9977e4f7a42 100755
;;
esac
else
-@@ -9805,23 +10387,36 @@ fi
+@@ -9887,23 +10469,36 @@ fi
irix5* | irix6* | nonstopux*)
if test "$GCC" = yes; then
@@ -11487,7 +11488,7 @@ index e5493b31691..9977e4f7a42 100755
else
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -9906,7 +10501,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9988,7 +10583,7 @@ rm -f core conftest.err conftest.$ac_objext \
osf4* | osf5*) # as osf3* with the addition of -msym flag
if test "$GCC" = yes; then
allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -11496,7 +11497,7 @@ index e5493b31691..9977e4f7a42 100755
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
allow_undefined_flag=' -expect_unresolved \*'
-@@ -9925,9 +10520,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -10007,9 +10602,9 @@ rm -f core conftest.err conftest.$ac_objext \
no_undefined_flag=' -z defs'
if test "$GCC" = yes; then
wlarc='${wl}'
@@ -11508,7 +11509,7 @@ index e5493b31691..9977e4f7a42 100755
else
case `$CC -V 2>&1` in
*"Compilers 5.0"*)
-@@ -10503,8 +11098,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10585,8 +11180,9 @@ cygwin* | mingw* | pw32* | cegcc*)
need_version=no
need_lib_prefix=no
@@ -11520,7 +11521,7 @@ index e5493b31691..9977e4f7a42 100755
library_names_spec='$libname.dll.a'
# DLL is installed to $(libdir)/../bin by postinstall_cmds
postinstall_cmds='base_file=`basename \${file}`~
-@@ -10537,13 +11133,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10619,13 +11215,71 @@ cygwin* | mingw* | pw32* | cegcc*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
;;
esac
@@ -11593,7 +11594,7 @@ index e5493b31691..9977e4f7a42 100755
# FIXME: first we should search . and the directory the executable is in
shlibpath_var=PATH
;;
-@@ -10635,7 +11289,7 @@ haiku*)
+@@ -10717,7 +11371,7 @@ haiku*)
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LIBRARY_PATH
shlibpath_overrides_runpath=yes
@@ -11602,16 +11603,16 @@ index e5493b31691..9977e4f7a42 100755
hardcode_into_libs=yes
;;
-@@ -11431,7 +12085,7 @@ else
+@@ -11513,7 +12167,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
--#line 11434 "configure"
+-#line 11516 "configure"
+#line $LINENO "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
-@@ -11475,10 +12129,10 @@ else
+@@ -11557,10 +12211,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -11624,16 +11625,16 @@ index e5493b31691..9977e4f7a42 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -11537,7 +12191,7 @@ else
+@@ -11619,7 +12273,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
--#line 11540 "configure"
+-#line 11622 "configure"
+#line $LINENO "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
-@@ -11581,10 +12235,10 @@ else
+@@ -11663,10 +12317,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -11646,7 +11647,7 @@ index e5493b31691..9977e4f7a42 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -13994,13 +14648,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -14110,13 +14764,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -11667,7 +11668,7 @@ index e5493b31691..9977e4f7a42 100755
STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -14015,14 +14676,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -14131,14 +14792,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -11686,7 +11687,7 @@ index e5493b31691..9977e4f7a42 100755
DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -14055,12 +14719,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -14171,12 +14835,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -11700,7 +11701,7 @@ index e5493b31691..9977e4f7a42 100755
file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -14115,8 +14779,13 @@ reload_flag \
+@@ -14231,8 +14895,13 @@ reload_flag \
OBJDUMP \
deplibs_check_method \
file_magic_cmd \
@@ -11714,7 +11715,7 @@ index e5493b31691..9977e4f7a42 100755
STRIP \
RANLIB \
CC \
-@@ -14126,12 +14795,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -14242,12 +14911,14 @@ lt_cv_sys_global_symbol_pipe \
lt_cv_sys_global_symbol_to_cdecl \
lt_cv_sys_global_symbol_to_c_name_address \
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -11730,7 +11731,7 @@ index e5493b31691..9977e4f7a42 100755
DSYMUTIL \
NMEDIT \
LIPO \
-@@ -14147,7 +14818,6 @@ no_undefined_flag \
+@@ -14263,7 +14934,6 @@ no_undefined_flag \
hardcode_libdir_flag_spec \
hardcode_libdir_flag_spec_ld \
hardcode_libdir_separator \
@@ -11738,7 +11739,7 @@ index e5493b31691..9977e4f7a42 100755
exclude_expsyms \
include_expsyms \
file_list_spec \
-@@ -14183,6 +14853,7 @@ module_cmds \
+@@ -14299,6 +14969,7 @@ module_cmds \
module_expsym_cmds \
export_symbols_cmds \
prelink_cmds \
@@ -11746,7 +11747,7 @@ index e5493b31691..9977e4f7a42 100755
postinstall_cmds \
postuninstall_cmds \
finish_cmds \
-@@ -14939,7 +15610,8 @@ $as_echo X"$file" |
+@@ -15055,7 +15726,8 @@ $as_echo X"$file" |
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
#
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -11756,7 +11757,7 @@ index e5493b31691..9977e4f7a42 100755
# Written by Gordon Matzigkeit, 1996
#
# This file is part of GNU Libtool.
-@@ -15042,19 +15714,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -15158,19 +15830,42 @@ SP2NL=$lt_lt_SP2NL
# turn newlines into spaces.
NL2SP=$lt_lt_NL2SP
@@ -11800,7 +11801,7 @@ index e5493b31691..9977e4f7a42 100755
# A symbol stripping program.
STRIP=$lt_STRIP
-@@ -15084,6 +15779,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -15200,6 +15895,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
# Transform the output of nm in a C name address pair when lib prefix is needed.
global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
@@ -11813,7 +11814,7 @@ index e5493b31691..9977e4f7a42 100755
# The name of the directory that contains temporary libtool files.
objdir=$objdir
-@@ -15093,6 +15794,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -15209,6 +15910,9 @@ MAGIC_CMD=$MAGIC_CMD
# Must we lock files when doing compilation?
need_locks=$lt_need_locks
@@ -11823,7 +11824,7 @@ index e5493b31691..9977e4f7a42 100755
# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
DSYMUTIL=$lt_DSYMUTIL
-@@ -15207,12 +15911,12 @@ with_gcc=$GCC
+@@ -15323,12 +16027,12 @@ with_gcc=$GCC
# Compiler flag to turn off builtin functions.
no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
@@ -11839,7 +11840,7 @@ index e5493b31691..9977e4f7a42 100755
# Compiler flag to prevent dynamic linking.
link_static_flag=$lt_lt_prog_compiler_static
-@@ -15299,9 +16003,6 @@ inherit_rpath=$inherit_rpath
+@@ -15415,9 +16119,6 @@ inherit_rpath=$inherit_rpath
# Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=$link_all_deplibs
@@ -11849,7 +11850,7 @@ index e5493b31691..9977e4f7a42 100755
# Set to "yes" if exported symbols are required.
always_export_symbols=$always_export_symbols
-@@ -15317,6 +16018,9 @@ include_expsyms=$lt_include_expsyms
+@@ -15433,6 +16134,9 @@ include_expsyms=$lt_include_expsyms
# Commands necessary for linking programs (against libraries) with templates.
prelink_cmds=$lt_prelink_cmds
@@ -11859,7 +11860,7 @@ index e5493b31691..9977e4f7a42 100755
# Specify filename containing input files.
file_list_spec=$lt_file_list_spec
-@@ -15349,210 +16053,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -15465,210 +16169,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
# if finds mixed CR/LF and LF-only lines. Since sed operates in
# text mode, it properly converts lines to CR/LF. This bash problem
# is reportedly fixed, but why not run on old versions too?
@@ -19317,7 +19318,7 @@ index bf92b5e0790..c573da90c5c 100644
# These exist entirely to fool aclocal when bootstrapping libtool.
#
diff --git a/opcodes/configure b/opcodes/configure
-index 4723dcdc1e8..006ccdaa458 100755
+index 8d1e561c942..a0291dfbfa7 100755
--- a/opcodes/configure
+++ b/opcodes/configure
@@ -680,6 +680,9 @@ OTOOL
@@ -21229,6 +21230,1924 @@ index 4723dcdc1e8..006ccdaa458 100755
(rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
chmod +x "$ofile"
+diff --git a/zlib/configure b/zlib/configure
+index de6fa7e9960..cce448b6a53 100755
+--- a/zlib/configure
++++ b/zlib/configure
+@@ -646,8 +646,11 @@ OTOOL
+ LIPO
+ NMEDIT
+ DSYMUTIL
++MANIFEST_TOOL
+ RANLIB
++ac_ct_AR
+ AR
++DLLTOOL
+ OBJDUMP
+ LN_S
+ NM
+@@ -774,6 +777,7 @@ enable_static
+ with_pic
+ enable_fast_install
+ with_gnu_ld
++with_libtool_sysroot
+ enable_libtool_lock
+ enable_host_shared
+ '
+@@ -1428,6 +1432,8 @@ Optional Packages:
+ --with-pic try to use only PIC/non-PIC objects [default=use
+ both]
+ --with-gnu-ld assume the C compiler uses GNU ld [default=no]
++ --with-libtool-sysroot=DIR Search for dependent libraries within DIR
++ (or the compiler's sysroot if not specified).
+
+ Some influential environment variables:
+ CC C compiler command
+@@ -4147,8 +4153,8 @@ esac
+
+
+
+-macro_version='2.2.7a'
+-macro_revision='1.3134'
++macro_version='2.4'
++macro_revision='1.3293'
+
+
+
+@@ -4188,7 +4194,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
+ $as_echo_n "checking how to print strings... " >&6; }
+ # Test print first, because it will be a builtin if present.
+-if test "X`print -r -- -n 2>/dev/null`" = X-n && \
++if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
+ test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
+ ECHO='print -r --'
+ elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
+@@ -5004,8 +5010,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+ # Try some XSI features
+ xsi_shell=no
+ ( _lt_dummy="a/b/c"
+- test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \
+- = c,a/b,, \
++ test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
++ = c,a/b,b/c, \
+ && eval 'test $(( 1 + 1 )) -eq 2 \
+ && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
+ && xsi_shell=yes
+@@ -5054,6 +5060,80 @@ esac
+
+
+
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
++$as_echo_n "checking how to convert $build file names to $host format... " >&6; }
++if ${lt_cv_to_host_file_cmd+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ case $host in
++ *-*-mingw* )
++ case $build in
++ *-*-mingw* ) # actually msys
++ lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
++ ;;
++ *-*-cygwin* )
++ lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
++ ;;
++ * ) # otherwise, assume *nix
++ lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
++ ;;
++ esac
++ ;;
++ *-*-cygwin* )
++ case $build in
++ *-*-mingw* ) # actually msys
++ lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
++ ;;
++ *-*-cygwin* )
++ lt_cv_to_host_file_cmd=func_convert_file_noop
++ ;;
++ * ) # otherwise, assume *nix
++ lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
++ ;;
++ esac
++ ;;
++ * ) # unhandled hosts (and "normal" native builds)
++ lt_cv_to_host_file_cmd=func_convert_file_noop
++ ;;
++esac
++
++fi
++
++to_host_file_cmd=$lt_cv_to_host_file_cmd
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5
++$as_echo "$lt_cv_to_host_file_cmd" >&6; }
++
++
++
++
++
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
++$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }
++if ${lt_cv_to_tool_file_cmd+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ #assume ordinary cross tools, or native build.
++lt_cv_to_tool_file_cmd=func_convert_file_noop
++case $host in
++ *-*-mingw* )
++ case $build in
++ *-*-mingw* ) # actually msys
++ lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
++ ;;
++ esac
++ ;;
++esac
++
++fi
++
++to_tool_file_cmd=$lt_cv_to_tool_file_cmd
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5
++$as_echo "$lt_cv_to_tool_file_cmd" >&6; }
++
++
++
++
++
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
+ $as_echo_n "checking for $LD option to reload object files... " >&6; }
+ if ${lt_cv_ld_reload_flag+:} false; then :
+@@ -5070,6 +5150,11 @@ case $reload_flag in
+ esac
+ reload_cmds='$LD$reload_flag -o $output$reload_objs'
+ case $host_os in
++ cygwin* | mingw* | pw32* | cegcc*)
++ if test "$GCC" != yes; then
++ reload_cmds=false
++ fi
++ ;;
+ darwin*)
+ if test "$GCC" = yes; then
+ reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
+@@ -5238,7 +5323,8 @@ mingw* | pw32*)
+ lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+ lt_cv_file_magic_cmd='func_win32_libid'
+ else
+- lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
++ # Keep this pattern in sync with the one in func_win32_libid.
++ lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
+ lt_cv_file_magic_cmd='$OBJDUMP -f'
+ fi
+ ;;
+@@ -5392,6 +5478,21 @@ esac
+ fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
+ $as_echo "$lt_cv_deplibs_check_method" >&6; }
++
++file_magic_glob=
++want_nocaseglob=no
++if test "$build" = "$host"; then
++ case $host_os in
++ mingw* | pw32*)
++ if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
++ want_nocaseglob=yes
++ else
++ file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"`
++ fi
++ ;;
++ esac
++fi
++
+ file_magic_cmd=$lt_cv_file_magic_cmd
+ deplibs_check_method=$lt_cv_deplibs_check_method
+ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -5405,11 +5506,165 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+
+
+
++
++
++
++
++
++
++
++
++
++
+
+
+ if test -n "$ac_tool_prefix"; then
+- # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
+-set dummy ${ac_tool_prefix}ar; ac_word=$2
++ # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
++set dummy ${ac_tool_prefix}dlltool; ac_word=$2
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
++$as_echo_n "checking for $ac_word... " >&6; }
++if ${ac_cv_prog_DLLTOOL+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ if test -n "$DLLTOOL"; then
++ ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
++ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++ done
++IFS=$as_save_IFS
++
++fi
++fi
++DLLTOOL=$ac_cv_prog_DLLTOOL
++if test -n "$DLLTOOL"; then
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
++$as_echo "$DLLTOOL" >&6; }
++else
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
++$as_echo "no" >&6; }
++fi
++
++
++fi
++if test -z "$ac_cv_prog_DLLTOOL"; then
++ ac_ct_DLLTOOL=$DLLTOOL
++ # Extract the first word of "dlltool", so it can be a program name with args.
++set dummy dlltool; ac_word=$2
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
++$as_echo_n "checking for $ac_word... " >&6; }
++if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ if test -n "$ac_ct_DLLTOOL"; then
++ ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_ac_ct_DLLTOOL="dlltool"
++ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++ done
++IFS=$as_save_IFS
++
++fi
++fi
++ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
++if test -n "$ac_ct_DLLTOOL"; then
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
++$as_echo "$ac_ct_DLLTOOL" >&6; }
++else
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
++$as_echo "no" >&6; }
++fi
++
++ if test "x$ac_ct_DLLTOOL" = x; then
++ DLLTOOL="false"
++ else
++ case $cross_compiling:$ac_tool_warned in
++yes:)
++{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
++$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
++ac_tool_warned=yes ;;
++esac
++ DLLTOOL=$ac_ct_DLLTOOL
++ fi
++else
++ DLLTOOL="$ac_cv_prog_DLLTOOL"
++fi
++
++test -z "$DLLTOOL" && DLLTOOL=dlltool
++
++
++
++
++
++
++
++
++
++
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
++$as_echo_n "checking how to associate runtime and link libraries... " >&6; }
++if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ lt_cv_sharedlib_from_linklib_cmd='unknown'
++
++case $host_os in
++cygwin* | mingw* | pw32* | cegcc*)
++ # two different shell functions defined in ltmain.sh
++ # decide which to use based on capabilities of $DLLTOOL
++ case `$DLLTOOL --help 2>&1` in
++ *--identify-strict*)
++ lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
++ ;;
++ *)
++ lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
++ ;;
++ esac
++ ;;
++*)
++ # fallback: assume linklib IS sharedlib
++ lt_cv_sharedlib_from_linklib_cmd="$ECHO"
++ ;;
++esac
++
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5
++$as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; }
++sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
++test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
++
++
++
++
++
++
++
++
++if test -n "$ac_tool_prefix"; then
++ for ac_prog in ar
++ do
++ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
++set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+ $as_echo_n "checking for $ac_word... " >&6; }
+ if ${ac_cv_prog_AR+:} false; then :
+@@ -5425,7 +5680,7 @@ do
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+- ac_cv_prog_AR="${ac_tool_prefix}ar"
++ ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+@@ -5445,11 +5700,15 @@ $as_echo "no" >&6; }
+ fi
+
+
++ test -n "$AR" && break
++ done
+ fi
+-if test -z "$ac_cv_prog_AR"; then
++if test -z "$AR"; then
+ ac_ct_AR=$AR
+- # Extract the first word of "ar", so it can be a program name with args.
+-set dummy ar; ac_word=$2
++ for ac_prog in ar
++do
++ # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+ $as_echo_n "checking for $ac_word... " >&6; }
+ if ${ac_cv_prog_ac_ct_AR+:} false; then :
+@@ -5465,7 +5724,7 @@ do
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+- ac_cv_prog_ac_ct_AR="ar"
++ ac_cv_prog_ac_ct_AR="$ac_prog"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+@@ -5484,6 +5743,10 @@ else
+ $as_echo "no" >&6; }
+ fi
+
++
++ test -n "$ac_ct_AR" && break
++done
++
+ if test "x$ac_ct_AR" = x; then
+ AR="false"
+ else
+@@ -5495,16 +5758,72 @@ ac_tool_warned=yes ;;
+ esac
+ AR=$ac_ct_AR
+ fi
+-else
+- AR="$ac_cv_prog_AR"
+ fi
+
+-test -z "$AR" && AR=ar
+-test -z "$AR_FLAGS" && AR_FLAGS=cru
++: ${AR=ar}
++: ${AR_FLAGS=cru}
++
++
++
++
++
++
++
++
++
++
++
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
++$as_echo_n "checking for archiver @FILE support... " >&6; }
++if ${lt_cv_ar_at_file+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ lt_cv_ar_at_file=no
++ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h. */
++
++int
++main ()
++{
+
++ ;
++ return 0;
++}
++_ACEOF
++if ac_fn_c_try_compile "$LINENO"; then :
++ echo conftest.$ac_objext > conftest.lst
++ lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5'
++ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
++ (eval $lt_ar_try) 2>&5
++ ac_status=$?
++ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
++ test $ac_status = 0; }
++ if test "$ac_status" -eq 0; then
++ # Ensure the archiver fails upon bogus file names.
++ rm -f conftest.$ac_objext libconftest.a
++ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
++ (eval $lt_ar_try) 2>&5
++ ac_status=$?
++ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
++ test $ac_status = 0; }
++ if test "$ac_status" -ne 0; then
++ lt_cv_ar_at_file=@
++ fi
++ fi
++ rm -f conftest.* libconftest.a
+
++fi
++rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
++$as_echo "$lt_cv_ar_at_file" >&6; }
+
++if test "x$lt_cv_ar_at_file" = xno; then
++ archiver_list_spec=
++else
++ archiver_list_spec=$lt_cv_ar_at_file
++fi
+
+
+
+@@ -5846,8 +6165,8 @@ esac
+ lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
+
+ # Transform an extracted symbol line into symbol name and symbol address
+-lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (void *) \&\2},/p'"
+-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
++lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\)[ ]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (void *) \&\2},/p'"
++lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\)[ ]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
+
+ # Handle CRLF in mingw tool chain
+ opt_cr=
+@@ -5883,6 +6202,7 @@ for ac_symprfx in "" "_"; do
+ else
+ lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
+ fi
++ lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
+
+ # Check to see that the pipe works correctly.
+ pipe_works=no
+@@ -5924,6 +6244,18 @@ _LT_EOF
+ if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
+ if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
+ cat <<_LT_EOF > conftest.$ac_ext
++/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
++#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
++/* DATA imports from DLLs on WIN32 con't be const, because runtime
++ relocations are performed -- see ld's documentation on pseudo-relocs. */
++# define LT_DLSYM_CONST
++#elif defined(__osf__)
++/* This system does not cope well with relocations in const data. */
++# define LT_DLSYM_CONST
++#else
++# define LT_DLSYM_CONST const
++#endif
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+@@ -5935,7 +6267,7 @@ _LT_EOF
+ cat <<_LT_EOF >> conftest.$ac_ext
+
+ /* The mapping between symbol names and symbols. */
+-const struct {
++LT_DLSYM_CONST struct {
+ const char *name;
+ void *address;
+ }
+@@ -5961,8 +6293,8 @@ static const void *lt_preloaded_setup() {
+ _LT_EOF
+ # Now try linking the two files.
+ mv conftest.$ac_objext conftstm.$ac_objext
+- lt_save_LIBS="$LIBS"
+- lt_save_CFLAGS="$CFLAGS"
++ lt_globsym_save_LIBS=$LIBS
++ lt_globsym_save_CFLAGS=$CFLAGS
+ LIBS="conftstm.$ac_objext"
+ CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
+ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
+@@ -5972,8 +6304,8 @@ _LT_EOF
+ test $ac_status = 0; } && test -s conftest${ac_exeext}; then
+ pipe_works=yes
+ fi
+- LIBS="$lt_save_LIBS"
+- CFLAGS="$lt_save_CFLAGS"
++ LIBS=$lt_globsym_save_LIBS
++ CFLAGS=$lt_globsym_save_CFLAGS
+ else
+ echo "cannot find nm_test_func in $nlist" >&5
+ fi
+@@ -6010,6 +6342,19 @@ else
+ $as_echo "ok" >&6; }
+ fi
+
++# Response file support.
++if test "$lt_cv_nm_interface" = "MS dumpbin"; then
++ nm_file_list_spec='@'
++elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then
++ nm_file_list_spec='@'
++fi
++
++
++
++
++
++
++
+
+
+
+@@ -6027,6 +6372,41 @@ fi
+
+
+
++
++
++
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
++$as_echo_n "checking for sysroot... " >&6; }
++
++# Check whether --with-libtool-sysroot was given.
++if test "${with_libtool_sysroot+set}" = set; then :
++ withval=$with_libtool_sysroot;
++else
++ with_libtool_sysroot=no
++fi
++
++
++lt_sysroot=
++case ${with_libtool_sysroot} in #(
++ yes)
++ if test "$GCC" = yes; then
++ lt_sysroot=`$CC --print-sysroot 2>/dev/null`
++ fi
++ ;; #(
++ /*)
++ lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
++ ;; #(
++ no|'')
++ ;; #(
++ *)
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
++$as_echo "${with_libtool_sysroot}" >&6; }
++ as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
++ ;;
++esac
++
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
++$as_echo "${lt_sysroot:-no}" >&6; }
+
+
+
+@@ -6241,6 +6621,123 @@ esac
+
+ need_locks="$enable_libtool_lock"
+
++if test -n "$ac_tool_prefix"; then
++ # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args.
++set dummy ${ac_tool_prefix}mt; ac_word=$2
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
++$as_echo_n "checking for $ac_word... " >&6; }
++if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ if test -n "$MANIFEST_TOOL"; then
++ ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
++ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++ done
++IFS=$as_save_IFS
++
++fi
++fi
++MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL
++if test -n "$MANIFEST_TOOL"; then
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5
++$as_echo "$MANIFEST_TOOL" >&6; }
++else
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
++$as_echo "no" >&6; }
++fi
++
++
++fi
++if test -z "$ac_cv_prog_MANIFEST_TOOL"; then
++ ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL
++ # Extract the first word of "mt", so it can be a program name with args.
++set dummy mt; ac_word=$2
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
++$as_echo_n "checking for $ac_word... " >&6; }
++if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ if test -n "$ac_ct_MANIFEST_TOOL"; then
++ ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++ IFS=$as_save_IFS
++ test -z "$as_dir" && as_dir=.
++ for ac_exec_ext in '' $ac_executable_extensions; do
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++ ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
++ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
++ break 2
++ fi
++done
++ done
++IFS=$as_save_IFS
++
++fi
++fi
++ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL
++if test -n "$ac_ct_MANIFEST_TOOL"; then
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5
++$as_echo "$ac_ct_MANIFEST_TOOL" >&6; }
++else
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
++$as_echo "no" >&6; }
++fi
++
++ if test "x$ac_ct_MANIFEST_TOOL" = x; then
++ MANIFEST_TOOL=":"
++ else
++ case $cross_compiling:$ac_tool_warned in
++yes:)
++{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
++$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
++ac_tool_warned=yes ;;
++esac
++ MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL
++ fi
++else
++ MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL"
++fi
++
++test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
++$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
++if ${lt_cv_path_mainfest_tool+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ lt_cv_path_mainfest_tool=no
++ echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5
++ $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
++ cat conftest.err >&5
++ if $GREP 'Manifest Tool' conftest.out > /dev/null; then
++ lt_cv_path_mainfest_tool=yes
++ fi
++ rm -f conftest*
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5
++$as_echo "$lt_cv_path_mainfest_tool" >&6; }
++if test "x$lt_cv_path_mainfest_tool" != xyes; then
++ MANIFEST_TOOL=:
++fi
++
++
++
++
++
+
+ case $host_os in
+ rhapsody* | darwin*)
+@@ -6807,6 +7304,8 @@ _LT_EOF
+ $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
+ echo "$AR cru libconftest.a conftest.o" >&5
+ $AR cru libconftest.a conftest.o 2>&5
++ echo "$RANLIB libconftest.a" >&5
++ $RANLIB libconftest.a 2>&5
+ cat > conftest.c << _LT_EOF
+ int main() { return 0;}
+ _LT_EOF
+@@ -7269,7 +7768,8 @@ fi
+ LIBTOOL_DEPS="$ltmain"
+
+ # Always use our own libtool.
+-LIBTOOL='$(SHELL) $(top_builddir)/libtool'
++LIBTOOL='$(SHELL) $(top_builddir)'
++LIBTOOL="$LIBTOOL/${host_alias}-libtool"
+
+
+
+@@ -7358,7 +7858,7 @@ aix3*)
+ esac
+
+ # Global variables:
+-ofile=libtool
++ofile=${host_alias}-libtool
+ can_build_shared=yes
+
+ # All known linkers require a `.a' archive for static linking (except MSVC,
+@@ -7656,8 +8156,6 @@ fi
+ lt_prog_compiler_pic=
+ lt_prog_compiler_static=
+
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
+-$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+
+ if test "$GCC" = yes; then
+ lt_prog_compiler_wl='-Wl,'
+@@ -7823,6 +8321,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+ lt_prog_compiler_pic='--shared'
+ lt_prog_compiler_static='--static'
+ ;;
++ nagfor*)
++ # NAG Fortran compiler
++ lt_prog_compiler_wl='-Wl,-Wl,,'
++ lt_prog_compiler_pic='-PIC'
++ lt_prog_compiler_static='-Bstatic'
++ ;;
+ pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
+ # Portland Group compilers (*not* the Pentium gcc compiler,
+ # which looks to be a dead project)
+@@ -7885,7 +8389,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+ lt_prog_compiler_pic='-KPIC'
+ lt_prog_compiler_static='-Bstatic'
+ case $cc_basename in
+- f77* | f90* | f95*)
++ f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
+ lt_prog_compiler_wl='-Qoption ld ';;
+ *)
+ lt_prog_compiler_wl='-Wl,';;
+@@ -7942,13 +8446,17 @@ case $host_os in
+ lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
+ ;;
+ esac
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic" >&5
+-$as_echo "$lt_prog_compiler_pic" >&6; }
+-
+-
+-
+-
+
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
++$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
++if ${lt_cv_prog_compiler_pic+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5
++$as_echo "$lt_cv_prog_compiler_pic" >&6; }
++lt_prog_compiler_pic=$lt_cv_prog_compiler_pic
+
+ #
+ # Check to make sure the PIC flag actually works.
+@@ -8009,6 +8517,11 @@ fi
+
+
+
++
++
++
++
++
+ #
+ # Check to make sure the static flag actually works.
+ #
+@@ -8359,7 +8872,8 @@ _LT_EOF
+ allow_undefined_flag=unsupported
+ always_export_symbols=no
+ enable_shared_with_static_runtimes=yes
+- export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
++ export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols'
++ exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'
+
+ if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+@@ -8458,12 +8972,12 @@ _LT_EOF
+ whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
+ hardcode_libdir_flag_spec=
+ hardcode_libdir_flag_spec_ld='-rpath $libdir'
+- archive_cmds='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib'
++ archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
+ if test "x$supports_anon_versioning" = xyes; then
+ archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
+ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+ echo "local: *; };" >> $output_objdir/$libname.ver~
+- $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
++ $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+ fi
+ ;;
+ esac
+@@ -8477,8 +8991,8 @@ _LT_EOF
+ archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
+ wlarc=
+ else
+- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
++ archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
++ archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ fi
+ ;;
+
+@@ -8496,8 +9010,8 @@ _LT_EOF
+
+ _LT_EOF
+ elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
++ archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
++ archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ ld_shlibs=no
+ fi
+@@ -8543,8 +9057,8 @@ _LT_EOF
+
+ *)
+ if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
+- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
++ archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
++ archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+ else
+ ld_shlibs=no
+ fi
+@@ -8674,7 +9188,13 @@ _LT_EOF
+ allow_undefined_flag='-berok'
+ # Determine the default libpath from the value encoded in an
+ # empty executable.
+- if test x$gcc_no_link = xyes; then
++ if test "${lt_cv_aix_libpath+set}" = set; then
++ aix_libpath=$lt_cv_aix_libpath
++else
++ if ${lt_cv_aix_libpath_+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ if test x$gcc_no_link = xyes; then
+ as_fn_error $? "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
+ fi
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+@@ -8690,22 +9210,29 @@ main ()
+ _ACEOF
+ if ac_fn_c_try_link "$LINENO"; then :
+
+-lt_aix_libpath_sed='
+- /Import File Strings/,/^$/ {
+- /^0/ {
+- s/^0 *\(.*\)$/\1/
+- p
+- }
+- }'
+-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+-# Check for a 64-bit object if we didn't find anything.
+-if test -z "$aix_libpath"; then
+- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+-fi
++ lt_aix_libpath_sed='
++ /Import File Strings/,/^$/ {
++ /^0/ {
++ s/^0 *\([^ ]*\) *$/\1/
++ p
++ }
++ }'
++ lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
++ # Check for a 64-bit object if we didn't find anything.
++ if test -z "$lt_cv_aix_libpath_"; then
++ lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
++ fi
+ fi
+ rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
++ if test -z "$lt_cv_aix_libpath_"; then
++ lt_cv_aix_libpath_="/usr/lib:/lib"
++ fi
++
++fi
++
++ aix_libpath=$lt_cv_aix_libpath_
++fi
+
+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
+ archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+@@ -8717,7 +9244,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+ else
+ # Determine the default libpath from the value encoded in an
+ # empty executable.
+- if test x$gcc_no_link = xyes; then
++ if test "${lt_cv_aix_libpath+set}" = set; then
++ aix_libpath=$lt_cv_aix_libpath
++else
++ if ${lt_cv_aix_libpath_+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ if test x$gcc_no_link = xyes; then
+ as_fn_error $? "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
+ fi
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+@@ -8733,22 +9266,29 @@ main ()
+ _ACEOF
+ if ac_fn_c_try_link "$LINENO"; then :
+
+-lt_aix_libpath_sed='
+- /Import File Strings/,/^$/ {
+- /^0/ {
+- s/^0 *\(.*\)$/\1/
+- p
+- }
+- }'
+-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+-# Check for a 64-bit object if we didn't find anything.
+-if test -z "$aix_libpath"; then
+- aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+-fi
++ lt_aix_libpath_sed='
++ /Import File Strings/,/^$/ {
++ /^0/ {
++ s/^0 *\([^ ]*\) *$/\1/
++ p
++ }
++ }'
++ lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
++ # Check for a 64-bit object if we didn't find anything.
++ if test -z "$lt_cv_aix_libpath_"; then
++ lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
++ fi
+ fi
+ rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+-if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
++ if test -z "$lt_cv_aix_libpath_"; then
++ lt_cv_aix_libpath_="/usr/lib:/lib"
++ fi
++
++fi
++
++ aix_libpath=$lt_cv_aix_libpath_
++fi
+
+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
+ # Warning - without using the other run time loading flags,
+@@ -8793,20 +9333,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+ # Microsoft Visual C++.
+ # hardcode_libdir_flag_spec is actually meaningless, as there is
+ # no search path for DLLs.
+- hardcode_libdir_flag_spec=' '
+- allow_undefined_flag=unsupported
+- # Tell ltmain to make .lib files, not .a files.
+- libext=lib
+- # Tell ltmain to make .dll files, not .so files.
+- shrext_cmds=".dll"
+- # FIXME: Setting linknames here is a bad hack.
+- archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
+- # The linker will automatically build a .lib file if we build a DLL.
+- old_archive_from_new_cmds='true'
+- # FIXME: Should let the user specify the lib program.
+- old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'
+- fix_srcfile_path='`cygpath -w "$srcfile"`'
+- enable_shared_with_static_runtimes=yes
++ case $cc_basename in
++ cl*)
++ # Native MSVC
++ hardcode_libdir_flag_spec=' '
++ allow_undefined_flag=unsupported
++ always_export_symbols=yes
++ file_list_spec='@'
++ # Tell ltmain to make .lib files, not .a files.
++ libext=lib
++ # Tell ltmain to make .dll files, not .so files.
++ shrext_cmds=".dll"
++ # FIXME: Setting linknames here is a bad hack.
++ archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
++ archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
++ sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
++ else
++ sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
++ fi~
++ $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
++ linknames='
++ # The linker will not automatically build a static lib if we build a DLL.
++ # _LT_TAGVAR(old_archive_from_new_cmds, )='true'
++ enable_shared_with_static_runtimes=yes
++ export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
++ # Don't use ranlib
++ old_postinstall_cmds='chmod 644 $oldlib'
++ postlink_cmds='lt_outputfile="@OUTPUT@"~
++ lt_tool_outputfile="@TOOL_OUTPUT@"~
++ case $lt_outputfile in
++ *.exe|*.EXE) ;;
++ *)
++ lt_outputfile="$lt_outputfile.exe"
++ lt_tool_outputfile="$lt_tool_outputfile.exe"
++ ;;
++ esac~
++ if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
++ $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
++ $RM "$lt_outputfile.manifest";
++ fi'
++ ;;
++ *)
++ # Assume MSVC wrapper
++ hardcode_libdir_flag_spec=' '
++ allow_undefined_flag=unsupported
++ # Tell ltmain to make .lib files, not .a files.
++ libext=lib
++ # Tell ltmain to make .dll files, not .so files.
++ shrext_cmds=".dll"
++ # FIXME: Setting linknames here is a bad hack.
++ archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
++ # The linker will automatically build a .lib file if we build a DLL.
++ old_archive_from_new_cmds='true'
++ # FIXME: Should let the user specify the lib program.
++ old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'
++ enable_shared_with_static_runtimes=yes
++ ;;
++ esac
+ ;;
+
+ darwin* | rhapsody*)
+@@ -8867,7 +9450,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+
+ # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
+ freebsd* | dragonfly*)
+- archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
++ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+ hardcode_libdir_flag_spec='-R$libdir'
+ hardcode_direct=yes
+ hardcode_shlibpath_var=no
+@@ -8875,7 +9458,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+
+ hpux9*)
+ if test "$GCC" = yes; then
+- archive_cmds='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
++ archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ else
+ archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ fi
+@@ -8891,7 +9474,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+
+ hpux10*)
+ if test "$GCC" = yes && test "$with_gnu_ld" = no; then
+- archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
++ archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ else
+ archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
+ fi
+@@ -8915,10 +9498,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+ archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ ia64*)
+- archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
++ archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ *)
+- archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
++ archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+ ;;
+ esac
+ else
+@@ -8997,26 +9580,39 @@ fi
+
+ irix5* | irix6* | nonstopux*)
+ if test "$GCC" = yes; then
+- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
++ archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ # Try to use the -exported_symbol ld option, if it does not
+ # work, assume that -exports_file does not work either and
+ # implicitly export all symbols.
+- save_LDFLAGS="$LDFLAGS"
+- LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
+- if test x$gcc_no_link = xyes; then
++ # This should be the same for all languages, so no per-tag cache variable.
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
++$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
++if ${lt_cv_irix_exported_symbol+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ save_LDFLAGS="$LDFLAGS"
++ LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
++ if test x$gcc_no_link = xyes; then
+ as_fn_error $? "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
+ fi
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+-int foo(void) {}
++int foo (void) { return 0; }
+ _ACEOF
+ if ac_fn_c_try_link "$LINENO"; then :
+- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
+-
++ lt_cv_irix_exported_symbol=yes
++else
++ lt_cv_irix_exported_symbol=no
+ fi
+ rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+- LDFLAGS="$save_LDFLAGS"
++ LDFLAGS="$save_LDFLAGS"
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5
++$as_echo "$lt_cv_irix_exported_symbol" >&6; }
++ if test "$lt_cv_irix_exported_symbol" = yes; then
++ archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
++ fi
+ else
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
+@@ -9101,7 +9697,7 @@ rm -f core conftest.err conftest.$ac_objext \
+ osf4* | osf5*) # as osf3* with the addition of -msym flag
+ if test "$GCC" = yes; then
+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
+- archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
++ archive_cmds='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ else
+ allow_undefined_flag=' -expect_unresolved \*'
+@@ -9120,9 +9716,9 @@ rm -f core conftest.err conftest.$ac_objext \
+ no_undefined_flag=' -z defs'
+ if test "$GCC" = yes; then
+ wlarc='${wl}'
+- archive_cmds='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
++ archive_cmds='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
+- $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
++ $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+ else
+ case `$CC -V 2>&1` in
+ *"Compilers 5.0"*)
+@@ -9698,8 +10294,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+ need_version=no
+ need_lib_prefix=no
+
+- case $GCC,$host_os in
+- yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
++ case $GCC,$cc_basename in
++ yes,*)
++ # gcc
+ library_names_spec='$libname.dll.a'
+ # DLL is installed to $(libdir)/../bin by postinstall_cmds
+ postinstall_cmds='base_file=`basename \${file}`~
+@@ -9732,13 +10329,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+ library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
+ ;;
+ esac
++ dynamic_linker='Win32 ld.exe'
++ ;;
++
++ *,cl*)
++ # Native MSVC
++ libname_spec='$name'
++ soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
++ library_names_spec='${libname}.dll.lib'
++
++ case $build_os in
++ mingw*)
++ sys_lib_search_path_spec=
++ lt_save_ifs=$IFS
++ IFS=';'
++ for lt_path in $LIB
++ do
++ IFS=$lt_save_ifs
++ # Let DOS variable expansion print the short 8.3 style file name.
++ lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
++ sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
++ done
++ IFS=$lt_save_ifs
++ # Convert to MSYS style.
++ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`
++ ;;
++ cygwin*)
++ # Convert to unix form, then to dos form, then back to unix form
++ # but this time dos style (no spaces!) so that the unix form looks
++ # like /cygdrive/c/PROGRA~1:/cygdr...
++ sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
++ sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
++ sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
++ ;;
++ *)
++ sys_lib_search_path_spec="$LIB"
++ if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
++ # It is most probably a Windows format PATH.
++ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
++ else
++ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
++ fi
++ # FIXME: find the short name or the path components, as spaces are
++ # common. (e.g. "Program Files" -> "PROGRA~1")
++ ;;
++ esac
++
++ # DLL is installed to $(libdir)/../bin by postinstall_cmds
++ postinstall_cmds='base_file=`basename \${file}`~
++ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
++ dldir=$destdir/`dirname \$dlpath`~
++ test -d \$dldir || mkdir -p \$dldir~
++ $install_prog $dir/$dlname \$dldir/$dlname'
++ postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
++ dlpath=$dir/\$dldll~
++ $RM \$dlpath'
++ shlibpath_overrides_runpath=yes
++ dynamic_linker='Win32 link.exe'
+ ;;
+
+ *)
++ # Assume MSVC wrapper
+ library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib'
++ dynamic_linker='Win32 ld.exe'
+ ;;
+ esac
+- dynamic_linker='Win32 ld.exe'
+ # FIXME: first we should search . and the directory the executable is in
+ shlibpath_var=PATH
+ ;;
+@@ -9830,7 +10485,7 @@ haiku*)
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+- sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/beos/system/lib'
++ sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
+ hardcode_into_libs=yes
+ ;;
+
+@@ -10644,7 +11299,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 10647 "configure"
++#line $LINENO "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -10688,10 +11343,10 @@ else
+ /* When -fvisbility=hidden is used, assume the code has been annotated
+ correspondingly for the symbols needed. */
+ #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
+-void fnord () __attribute__((visibility("default")));
++int fnord () __attribute__((visibility("default")));
+ #endif
+
+-void fnord () { int i=42; }
++int fnord () { return 42; }
+ int main ()
+ {
+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
+@@ -10750,7 +11405,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 10753 "configure"
++#line $LINENO "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -10794,10 +11449,10 @@ else
+ /* When -fvisbility=hidden is used, assume the code has been annotated
+ correspondingly for the symbols needed. */
+ #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
+-void fnord () __attribute__((visibility("default")));
++int fnord () __attribute__((visibility("default")));
+ #endif
+
+-void fnord () { int i=42; }
++int fnord () { return 42; }
+ int main ()
+ {
+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
+@@ -12267,13 +12922,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+ lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
+ lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
+ lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
++lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`'
++lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`'
+ reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`'
+ reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`'
+ OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`'
+ deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`'
+ file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`'
++file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`'
++want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`'
++DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`'
++sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`'
+ AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`'
+ AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`'
++archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`'
+ STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
+ RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
+ old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
+@@ -12288,14 +12950,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+ lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
+ lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
+ lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
++nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`'
++lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`'
+ objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`'
+ MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`'
+ lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`'
+-lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`'
+ lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`'
++lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`'
+ lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`'
+ lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`'
+ need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`'
++MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`'
+ DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
+ NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
+ LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
+@@ -12328,12 +12993,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+ hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
+ inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
+ link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
+-fix_srcfile_path='`$ECHO "$fix_srcfile_path" | $SED "$delay_single_quote_subst"`'
+ always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`'
+ export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`'
+ exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`'
+ include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`'
+ prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`'
++postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`'
+ file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
+ variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
+ need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
+@@ -12388,8 +13053,13 @@ reload_flag \
+ OBJDUMP \
+ deplibs_check_method \
+ file_magic_cmd \
++file_magic_glob \
++want_nocaseglob \
++DLLTOOL \
++sharedlib_from_linklib_cmd \
+ AR \
+ AR_FLAGS \
++archiver_list_spec \
+ STRIP \
+ RANLIB \
+ CC \
+@@ -12399,12 +13069,14 @@ lt_cv_sys_global_symbol_pipe \
+ lt_cv_sys_global_symbol_to_cdecl \
+ lt_cv_sys_global_symbol_to_c_name_address \
+ lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
++nm_file_list_spec \
+ lt_prog_compiler_no_builtin_flag \
+-lt_prog_compiler_wl \
+ lt_prog_compiler_pic \
++lt_prog_compiler_wl \
+ lt_prog_compiler_static \
+ lt_cv_prog_compiler_c_o \
+ need_locks \
++MANIFEST_TOOL \
+ DSYMUTIL \
+ NMEDIT \
+ LIPO \
+@@ -12420,7 +13092,6 @@ no_undefined_flag \
+ hardcode_libdir_flag_spec \
+ hardcode_libdir_flag_spec_ld \
+ hardcode_libdir_separator \
+-fix_srcfile_path \
+ exclude_expsyms \
+ include_expsyms \
+ file_list_spec \
+@@ -12456,6 +13127,7 @@ module_cmds \
+ module_expsym_cmds \
+ export_symbols_cmds \
+ prelink_cmds \
++postlink_cmds \
+ postinstall_cmds \
+ postuninstall_cmds \
+ finish_cmds \
+@@ -13054,7 +13726,8 @@ $as_echo X"$file" |
+ # NOTE: Changes made to this file will be lost: look at ltmain.sh.
+ #
+ # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
+-# 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
++# 2006, 2007, 2008, 2009, 2010 Free Software Foundation,
++# Inc.
+ # Written by Gordon Matzigkeit, 1996
+ #
+ # This file is part of GNU Libtool.
+@@ -13157,19 +13830,42 @@ SP2NL=$lt_lt_SP2NL
+ # turn newlines into spaces.
+ NL2SP=$lt_lt_NL2SP
+
++# convert \$build file names to \$host format.
++to_host_file_cmd=$lt_cv_to_host_file_cmd
++
++# convert \$build files to toolchain format.
++to_tool_file_cmd=$lt_cv_to_tool_file_cmd
++
+ # An object symbol dumper.
+ OBJDUMP=$lt_OBJDUMP
+
+ # Method to check whether dependent libraries are shared objects.
+ deplibs_check_method=$lt_deplibs_check_method
+
+-# Command to use when deplibs_check_method == "file_magic".
++# Command to use when deplibs_check_method = "file_magic".
+ file_magic_cmd=$lt_file_magic_cmd
+
++# How to find potential files when deplibs_check_method = "file_magic".
++file_magic_glob=$lt_file_magic_glob
++
++# Find potential files using nocaseglob when deplibs_check_method = "file_magic".
++want_nocaseglob=$lt_want_nocaseglob
++
++# DLL creation program.
++DLLTOOL=$lt_DLLTOOL
++
++# Command to associate shared and link libraries.
++sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd
++
+ # The archiver.
+ AR=$lt_AR
++
++# Flags to create an archive.
+ AR_FLAGS=$lt_AR_FLAGS
+
++# How to feed a file listing to the archiver.
++archiver_list_spec=$lt_archiver_list_spec
++
+ # A symbol stripping program.
+ STRIP=$lt_STRIP
+
+@@ -13199,6 +13895,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+ # Transform the output of nm in a C name address pair when lib prefix is needed.
+ global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
+
++# Specify filename containing input files for \$NM.
++nm_file_list_spec=$lt_nm_file_list_spec
++
++# The root where to search for dependent libraries,and in which our libraries should be installed.
++lt_sysroot=$lt_sysroot
++
+ # The name of the directory that contains temporary libtool files.
+ objdir=$objdir
+
+@@ -13208,6 +13910,9 @@ MAGIC_CMD=$MAGIC_CMD
+ # Must we lock files when doing compilation?
+ need_locks=$lt_need_locks
+
++# Manifest tool.
++MANIFEST_TOOL=$lt_MANIFEST_TOOL
++
+ # Tool to manipulate archived DWARF debug symbol files on Mac OS X.
+ DSYMUTIL=$lt_DSYMUTIL
+
+@@ -13322,12 +14027,12 @@ with_gcc=$GCC
+ # Compiler flag to turn off builtin functions.
+ no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
+
+-# How to pass a linker flag through the compiler.
+-wl=$lt_lt_prog_compiler_wl
+-
+ # Additional compiler flags for building library objects.
+ pic_flag=$lt_lt_prog_compiler_pic
+
++# How to pass a linker flag through the compiler.
++wl=$lt_lt_prog_compiler_wl
++
+ # Compiler flag to prevent dynamic linking.
+ link_static_flag=$lt_lt_prog_compiler_static
+
+@@ -13414,9 +14119,6 @@ inherit_rpath=$inherit_rpath
+ # Whether libtool must link a program against all its dependency libraries.
+ link_all_deplibs=$link_all_deplibs
+
+-# Fix the shell variable \$srcfile for the compiler.
+-fix_srcfile_path=$lt_fix_srcfile_path
+-
+ # Set to "yes" if exported symbols are required.
+ always_export_symbols=$always_export_symbols
+
+@@ -13432,6 +14134,9 @@ include_expsyms=$lt_include_expsyms
+ # Commands necessary for linking programs (against libraries) with templates.
+ prelink_cmds=$lt_prelink_cmds
+
++# Commands necessary for finishing linking programs.
++postlink_cmds=$lt_postlink_cmds
++
+ # Specify filename containing input files.
+ file_list_spec=$lt_file_list_spec
+
+@@ -13464,210 +14169,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+ # if finds mixed CR/LF and LF-only lines. Since sed operates in
+ # text mode, it properly converts lines to CR/LF. This bash problem
+ # is reportedly fixed, but why not run on old versions too?
+- sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
+- || (rm -f "$cfgfile"; exit 1)
+-
+- case $xsi_shell in
+- yes)
+- cat << \_LT_EOF >> "$cfgfile"
+-
+-# func_dirname file append nondir_replacement
+-# Compute the dirname of FILE. If nonempty, add APPEND to the result,
+-# otherwise set result to NONDIR_REPLACEMENT.
+-func_dirname ()
+-{
+- case ${1} in
+- */*) func_dirname_result="${1%/*}${2}" ;;
+- * ) func_dirname_result="${3}" ;;
+- esac
+-}
+-
+-# func_basename file
+-func_basename ()
+-{
+- func_basename_result="${1##*/}"
+-}
+-
+-# func_dirname_and_basename file append nondir_replacement
+-# perform func_basename and func_dirname in a single function
+-# call:
+-# dirname: Compute the dirname of FILE. If nonempty,
+-# add APPEND to the result, otherwise set result
+-# to NONDIR_REPLACEMENT.
+-# value returned in "$func_dirname_result"
+-# basename: Compute filename of FILE.
+-# value retuned in "$func_basename_result"
+-# Implementation must be kept synchronized with func_dirname
+-# and func_basename. For efficiency, we do not delegate to
+-# those functions but instead duplicate the functionality here.
+-func_dirname_and_basename ()
+-{
+- case ${1} in
+- */*) func_dirname_result="${1%/*}${2}" ;;
+- * ) func_dirname_result="${3}" ;;
+- esac
+- func_basename_result="${1##*/}"
+-}
+-
+-# func_stripname prefix suffix name
+-# strip PREFIX and SUFFIX off of NAME.
+-# PREFIX and SUFFIX must not contain globbing or regex special
+-# characters, hashes, percent signs, but SUFFIX may contain a leading
+-# dot (in which case that matches only a dot).
+-func_stripname ()
+-{
+- # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
+- # positional parameters, so assign one to ordinary parameter first.
+- func_stripname_result=${3}
+- func_stripname_result=${func_stripname_result#"${1}"}
+- func_stripname_result=${func_stripname_result%"${2}"}
+-}
+-
+-# func_opt_split
+-func_opt_split ()
+-{
+- func_opt_split_opt=${1%%=*}
+- func_opt_split_arg=${1#*=}
+-}
+-
+-# func_lo2o object
+-func_lo2o ()
+-{
+- case ${1} in
+- *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
+- *) func_lo2o_result=${1} ;;
+- esac
+-}
+-
+-# func_xform libobj-or-source
+-func_xform ()
+-{
+- func_xform_result=${1%.*}.lo
+-}
+-
+-# func_arith arithmetic-term...
+-func_arith ()
+-{
+- func_arith_result=$(( $* ))
+-}
+-
+-# func_len string
+-# STRING may not start with a hyphen.
+-func_len ()
+-{
+- func_len_result=${#1}
+-}
+-
+-_LT_EOF
+- ;;
+- *) # Bourne compatible functions.
+- cat << \_LT_EOF >> "$cfgfile"
+-
+-# func_dirname file append nondir_replacement
+-# Compute the dirname of FILE. If nonempty, add APPEND to the result,
+-# otherwise set result to NONDIR_REPLACEMENT.
+-func_dirname ()
+-{
+- # Extract subdirectory from the argument.
+- func_dirname_result=`$ECHO "${1}" | $SED "$dirname"`
+- if test "X$func_dirname_result" = "X${1}"; then
+- func_dirname_result="${3}"
+- else
+- func_dirname_result="$func_dirname_result${2}"
+- fi
+-}
+-
+-# func_basename file
+-func_basename ()
+-{
+- func_basename_result=`$ECHO "${1}" | $SED "$basename"`
+-}
+-
+-
+-# func_stripname prefix suffix name
+-# strip PREFIX and SUFFIX off of NAME.
+-# PREFIX and SUFFIX must not contain globbing or regex special
+-# characters, hashes, percent signs, but SUFFIX may contain a leading
+-# dot (in which case that matches only a dot).
+-# func_strip_suffix prefix name
+-func_stripname ()
+-{
+- case ${2} in
+- .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
+- *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
+- esac
+-}
+-
+-# sed scripts:
+-my_sed_long_opt='1s/^\(-[^=]*\)=.*/\1/;q'
+-my_sed_long_arg='1s/^-[^=]*=//'
+-
+-# func_opt_split
+-func_opt_split ()
+-{
+- func_opt_split_opt=`$ECHO "${1}" | $SED "$my_sed_long_opt"`
+- func_opt_split_arg=`$ECHO "${1}" | $SED "$my_sed_long_arg"`
+-}
+-
+-# func_lo2o object
+-func_lo2o ()
+-{
+- func_lo2o_result=`$ECHO "${1}" | $SED "$lo2o"`
+-}
+-
+-# func_xform libobj-or-source
+-func_xform ()
+-{
+- func_xform_result=`$ECHO "${1}" | $SED 's/\.[^.]*$/.lo/'`
+-}
+-
+-# func_arith arithmetic-term...
+-func_arith ()
+-{
+- func_arith_result=`expr "$@"`
+-}
+-
+-# func_len string
+-# STRING may not start with a hyphen.
+-func_len ()
+-{
+- func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len`
+-}
+-
+-_LT_EOF
+-esac
+-
+-case $lt_shell_append in
+- yes)
+- cat << \_LT_EOF >> "$cfgfile"
+-
+-# func_append var value
+-# Append VALUE to the end of shell variable VAR.
+-func_append ()
+-{
+- eval "$1+=\$2"
+-}
+-_LT_EOF
+- ;;
+- *)
+- cat << \_LT_EOF >> "$cfgfile"
+-
+-# func_append var value
+-# Append VALUE to the end of shell variable VAR.
+-func_append ()
+-{
+- eval "$1=\$$1\$2"
+-}
+-
+-_LT_EOF
+- ;;
+- esac
+-
+-
+- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
+- || (rm -f "$cfgfile"; exit 1)
+-
+- mv -f "$cfgfile" "$ofile" ||
++ sed '$q' "$ltmain" >> "$cfgfile" \
++ || (rm -f "$cfgfile"; exit 1)
++
++ if test x"$xsi_shell" = xyes; then
++ sed -e '/^func_dirname ()$/,/^} # func_dirname /c\
++func_dirname ()\
++{\
++\ case ${1} in\
++\ */*) func_dirname_result="${1%/*}${2}" ;;\
++\ * ) func_dirname_result="${3}" ;;\
++\ esac\
++} # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \
++ && mv -f "$cfgfile.tmp" "$cfgfile" \
++ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
++test 0 -eq $? || _lt_function_replace_fail=:
++
++
++ sed -e '/^func_basename ()$/,/^} # func_basename /c\
++func_basename ()\
++{\
++\ func_basename_result="${1##*/}"\
++} # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \
++ && mv -f "$cfgfile.tmp" "$cfgfile" \
++ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
++test 0 -eq $? || _lt_function_replace_fail=:
++
++
++ sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\
++func_dirname_and_basename ()\
++{\
++\ case ${1} in\
++\ */*) func_dirname_result="${1%/*}${2}" ;;\
++\ * ) func_dirname_result="${3}" ;;\
++\ esac\
++\ func_basename_result="${1##*/}"\
++} # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \
++ && mv -f "$cfgfile.tmp" "$cfgfile" \
++ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
++test 0 -eq $? || _lt_function_replace_fail=:
++
++
++ sed -e '/^func_stripname ()$/,/^} # func_stripname /c\
++func_stripname ()\
++{\
++\ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\
++\ # positional parameters, so assign one to ordinary parameter first.\
++\ func_stripname_result=${3}\
++\ func_stripname_result=${func_stripname_result#"${1}"}\
++\ func_stripname_result=${func_stripname_result%"${2}"}\
++} # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \
++ && mv -f "$cfgfile.tmp" "$cfgfile" \
++ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
++test 0 -eq $? || _lt_function_replace_fail=:
++
++
++ sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\
++func_split_long_opt ()\
++{\
++\ func_split_long_opt_name=${1%%=*}\
++\ func_split_long_opt_arg=${1#*=}\
++} # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \
++ && mv -f "$cfgfile.tmp" "$cfgfile" \
++ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
++test 0 -eq $? || _lt_function_replace_fail=:
++
++
++ sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\
++func_split_short_opt ()\
++{\
++\ func_split_short_opt_arg=${1#??}\
++\ func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\
++} # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \
++ && mv -f "$cfgfile.tmp" "$cfgfile" \
++ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
++test 0 -eq $? || _lt_function_replace_fail=:
++
++
++ sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\
++func_lo2o ()\
++{\
++\ case ${1} in\
++\ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\
++\ *) func_lo2o_result=${1} ;;\
++\ esac\
++} # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \
++ && mv -f "$cfgfile.tmp" "$cfgfile" \
++ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
++test 0 -eq $? || _lt_function_replace_fail=:
++
++
++ sed -e '/^func_xform ()$/,/^} # func_xform /c\
++func_xform ()\
++{\
++ func_xform_result=${1%.*}.lo\
++} # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \
++ && mv -f "$cfgfile.tmp" "$cfgfile" \
++ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
++test 0 -eq $? || _lt_function_replace_fail=:
++
++
++ sed -e '/^func_arith ()$/,/^} # func_arith /c\
++func_arith ()\
++{\
++ func_arith_result=$(( $* ))\
++} # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \
++ && mv -f "$cfgfile.tmp" "$cfgfile" \
++ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
++test 0 -eq $? || _lt_function_replace_fail=:
++
++
++ sed -e '/^func_len ()$/,/^} # func_len /c\
++func_len ()\
++{\
++ func_len_result=${#1}\
++} # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \
++ && mv -f "$cfgfile.tmp" "$cfgfile" \
++ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
++test 0 -eq $? || _lt_function_replace_fail=:
++
++fi
++
++if test x"$lt_shell_append" = xyes; then
++ sed -e '/^func_append ()$/,/^} # func_append /c\
++func_append ()\
++{\
++ eval "${1}+=\\${2}"\
++} # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \
++ && mv -f "$cfgfile.tmp" "$cfgfile" \
++ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
++test 0 -eq $? || _lt_function_replace_fail=:
++
++
++ sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\
++func_append_quoted ()\
++{\
++\ func_quote_for_eval "${2}"\
++\ eval "${1}+=\\\\ \\$func_quote_for_eval_result"\
++} # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \
++ && mv -f "$cfgfile.tmp" "$cfgfile" \
++ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
++test 0 -eq $? || _lt_function_replace_fail=:
++
++
++ # Save a `func_append' function call where possible by direct use of '+='
++ sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
++ && mv -f "$cfgfile.tmp" "$cfgfile" \
++ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
++ test 0 -eq $? || _lt_function_replace_fail=:
++else
++ # Save a `func_append' function call even when '+=' is not available
++ sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
++ && mv -f "$cfgfile.tmp" "$cfgfile" \
++ || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
++ test 0 -eq $? || _lt_function_replace_fail=:
++fi
++
++if test x"$_lt_function_replace_fail" = x":"; then
++ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5
++$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;}
++fi
++
++
++ mv -f "$cfgfile" "$ofile" ||
+ (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
+ chmod +x "$ofile"
+
--
-2.26.0
+2.28.0
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0013-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch b/poky/meta/recipes-devtools/binutils/binutils/0013-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch
deleted file mode 100644
index 463de8063..000000000
--- a/poky/meta/recipes-devtools/binutils/binutils/0013-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From ef4ad1cb9ff1b5a871ffa792a71b3ad6d14eb3dc Mon Sep 17 00:00:00 2001
-From: Zhenhua Luo <zhenhua.luo@nxp.com>
-Date: Sat, 11 Jun 2016 22:08:29 -0500
-Subject: [PATCH] fix the incorrect assembling for ppc wait mnemonic
-
-Signed-off-by: Zhenhua Luo <zhenhua.luo@nxp.com>
-
-Upstream-Status: Pending
----
- opcodes/ppc-opc.c | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c
-index 7ef91d819b..145953d3c4 100644
---- a/opcodes/ppc-opc.c
-+++ b/opcodes/ppc-opc.c
-@@ -5709,7 +5709,6 @@ const struct powerpc_opcode powerpc_opcodes[] = {
- {"ldepx", X(31,29), X_MASK, E500MC|PPCA2, 0, {RT, RA0, RB}},
-
- {"waitasec", X(31,30), XRTRARB_MASK, POWER8, POWER9, {0}},
--{"wait", X(31,30), XWC_MASK, POWER9, 0, {WC}},
-
- {"lwepx", X(31,31), X_MASK, E500MC|PPCA2, 0, {RT, RA0, RB}},
-
-@@ -5763,7 +5762,7 @@ const struct powerpc_opcode powerpc_opcodes[] = {
-
- {"waitrsv", X(31,62)|(1<<21), 0xffffffff, E500MC|PPCA2, 0, {0}},
- {"waitimpl", X(31,62)|(2<<21), 0xffffffff, E500MC|PPCA2, 0, {0}},
--{"wait", X(31,62), XWC_MASK, E500MC|PPCA2, 0, {WC}},
-+{"wait", X(31,62), XWC_MASK, E500MC|PPCA2|POWER9, 0, {WC}},
-
- {"dcbstep", XRT(31,63,0), XRT_MASK, E500MC|PPCA2, 0, {RA0, RB}},
-
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0010-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch b/poky/meta/recipes-devtools/binutils/binutils/0014-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch
index f4f1a068c..69a238378 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0010-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0014-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch
@@ -1,7 +1,7 @@
-From 70f3f2d9e912ea777fa113e02cdbc3465a66e40d Mon Sep 17 00:00:00 2001
+From f791a5d84475c02356f16679b7f4ee9c9c3408aa Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 01:42:38 +0000
-Subject: [PATCH] Fix rpath in libtool when sysroot is enabled
+Subject: [PATCH 14/17] Fix rpath in libtool when sysroot is enabled
Enabling sysroot support in libtool exposed a bug where the final
library had an RPATH encoded into it which still pointed to the
@@ -19,7 +19,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/ltmain.sh b/ltmain.sh
-index 70e856e065..11ee684ccc 100644
+index 70e856e0659..11ee684cccf 100644
--- a/ltmain.sh
+++ b/ltmain.sh
@@ -8035,9 +8035,11 @@ EOF
@@ -47,3 +47,6 @@ index 70e856e065..11ee684ccc 100644
if test -n "$hardcode_libdir_separator"; then
if test -z "$hardcode_libdirs"; then
hardcode_libdirs="$libdir"
+--
+2.28.0
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0015-sync-with-OE-libtool-changes.patch b/poky/meta/recipes-devtools/binutils/binutils/0015-sync-with-OE-libtool-changes.patch
index a794719bd..e848f146b 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0015-sync-with-OE-libtool-changes.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0015-sync-with-OE-libtool-changes.patch
@@ -1,7 +1,7 @@
-From 392d474a72d37b669f53ab9f0fa913b958af93f6 Mon Sep 17 00:00:00 2001
+From e087f96e219d47c4d2244c3f32397e56d41bfdec Mon Sep 17 00:00:00 2001
From: Ross Burton <ross.burton@intel.com>
Date: Mon, 6 Mar 2017 23:33:27 -0800
-Subject: [PATCH] sync with OE libtool changes
+Subject: [PATCH 15/17] sync with OE libtool changes
Apply these patches from our libtool patches as not only are redundant RPATHs a
waste of space but they can cause incorrect linking when native packages are
@@ -26,7 +26,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 28 insertions(+), 6 deletions(-)
diff --git a/ltmain.sh b/ltmain.sh
-index 11ee684ccc..3b19ac1532 100644
+index 11ee684cccf..3b19ac15328 100644
--- a/ltmain.sh
+++ b/ltmain.sh
@@ -8053,8 +8053,16 @@ EOF
@@ -84,3 +84,6 @@ index 11ee684ccc..3b19ac1532 100644
fi
elif test -n "$runpath_var"; then
case "$finalize_perm_rpath " in
+--
+2.28.0
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0016-Check-for-clang-before-checking-gcc-version.patch b/poky/meta/recipes-devtools/binutils/binutils/0016-Check-for-clang-before-checking-gcc-version.patch
index c694b42dc..400b79823 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0016-Check-for-clang-before-checking-gcc-version.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0016-Check-for-clang-before-checking-gcc-version.patch
@@ -1,7 +1,7 @@
-From 67590a44c1256491fa674426f0170d5d05377d05 Mon Sep 17 00:00:00 2001
+From ae5a7d622dc9addb2ca9fc85889c45964c025a9c Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 15 Apr 2020 14:17:20 -0700
-Subject: [PATCH 16/16] Check for clang before checking gcc version
+Subject: [PATCH 16/17] Check for clang before checking gcc version
Clang advertises itself to be gcc 4.2.1, so when compiling this test
here fails since gcc < 4.4.5 did not support -static-libstdc++ but thats
@@ -18,10 +18,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/configure b/configure
-index 590b03c2da0..46f116fdb54 100755
+index 6782f8b6ab8..72f5766b363 100755
--- a/configure
+++ b/configure
-@@ -5140,7 +5140,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+@@ -5143,7 +5143,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -31,10 +31,10 @@ index 590b03c2da0..46f116fdb54 100755
#endif
int main() {}
diff --git a/configure.ac b/configure.ac
-index d3f85e6f5d5..c0eb1343121 100644
+index 55beb1dea46..3f9e613e2d9 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -1309,7 +1309,7 @@ if test "$GCC" = yes; then
+@@ -1312,7 +1312,7 @@ if test "$GCC" = yes; then
AC_MSG_CHECKING([whether g++ accepts -static-libstdc++ -static-libgcc])
AC_LANG_PUSH(C++)
AC_LINK_IFELSE([AC_LANG_SOURCE([
@@ -44,5 +44,5 @@ index d3f85e6f5d5..c0eb1343121 100644
#endif
int main() {}])],
--
-2.26.1
+2.28.0
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0017-binutils-drop-redundant-program_name-definition-fno-.patch b/poky/meta/recipes-devtools/binutils/binutils/0017-binutils-drop-redundant-program_name-definition-fno-.patch
deleted file mode 100644
index 55af9abc1..000000000
--- a/poky/meta/recipes-devtools/binutils/binutils/0017-binutils-drop-redundant-program_name-definition-fno-.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From 57a3e055605b28a9449b1b27eda7125737c42b00 Mon Sep 17 00:00:00 2001
-From: Sergei Trofimovich <siarheit@google.com>
-Date: Sat, 1 Feb 2020 23:16:11 +0000
-Subject: [PATCH] binutils: drop redundant 'program_name' definition
- (-fno-common)
-
- * coffdump.c (program_name): Drop redundant definition.
- * srconv.c (program_name): Likewise
- * sysdump.c (program_name): Likewise
-
-Upstream-Status: Accepted (commit 0b398d69ac)
-Signed-off-by: Sergei Trofimovich <siarheit@google.com>
-Signed-off-by: Richard Leitner <richard.leitner@skidata.com>
----
- binutils/coffdump.c | 2 --
- binutils/srconv.c | 2 --
- binutils/sysdump.c | 2 --
- 3 files changed, 6 deletions(-)
-
-diff --git a/binutils/coffdump.c b/binutils/coffdump.c
-index 531a4e46c3..336da57ca2 100644
---- a/binutils/coffdump.c
-+++ b/binutils/coffdump.c
-@@ -456,8 +456,6 @@ coff_dump (struct coff_ofile *ptr)
- dump_coff_section (ptr->sections + i);
- }
-
--char * program_name;
--
- static void
- show_usage (FILE *file, int status)
- {
-diff --git a/binutils/srconv.c b/binutils/srconv.c
-index 5742b16759..f071794f0a 100644
---- a/binutils/srconv.c
-+++ b/binutils/srconv.c
-@@ -1687,8 +1687,6 @@ prescan (struct coff_ofile *otree)
- }
- }
-
--char *program_name;
--
- ATTRIBUTE_NORETURN static void
- show_usage (FILE *ffile, int status)
- {
-diff --git a/binutils/sysdump.c b/binutils/sysdump.c
-index d433e71ed9..7eebbd61d3 100644
---- a/binutils/sysdump.c
-+++ b/binutils/sysdump.c
-@@ -633,8 +633,6 @@ module (void)
- }
- }
-
--char *program_name;
--
- ATTRIBUTE_NORETURN static void
- show_usage (FILE *ffile, int status)
- {
---
-2.26.2
-
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2020-0551.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2020-0551.patch
deleted file mode 100644
index 53e3caf44..000000000
--- a/poky/meta/recipes-devtools/binutils/binutils/CVE-2020-0551.patch
+++ /dev/null
@@ -1,549 +0,0 @@
-From ae531041c7c5956672342f89c486a011c84f027f Mon Sep 17 00:00:00 2001
-From: "H.J. Lu" <hjl.tools@gmail.com>
-Date: Wed, 11 Mar 2020 09:46:19 -0700
-Subject: [PATCH 1/1] i386: Generate lfence with load/indirect branch/ret
- [CVE-2020-0551]
-
-Add 3 command-line options to generate lfence for load, indirect near
-branch and ret to help mitigate:
-
-https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00334.html
-http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-0551
-
-1. -mlfence-after-load=[no|yes]:
- -mlfence-after-load=yes generates lfence after load instructions.
-2. -mlfence-before-indirect-branch=[none|all|memory|register]:
- a. -mlfence-before-indirect-branch=all generates lfence before indirect
- near branches via register and a warning before indirect near branches
- via memory.
- b. -mlfence-before-indirect-branch=memory issue a warning before
- indirect near branches via memory.
- c. -mlfence-before-indirect-branch=register generates lfence before
- indirect near branches via register.
-Note that lfence won't be generated before indirect near branches via
-register with -mlfence-after-load=yes since lfence will be generated
-after loading branch target register.
-3. -mlfence-before-ret=[none|or|not]
- a. -mlfence-before-ret=or generates or with lfence before ret.
- b. -mlfence-before-ret=not generates not with lfence before ret.
-
-A warning will be issued and lfence won't be generated before indirect
-near branch and ret if the previous item is a prefix or a constant
-directive, which may be used to hardcode an instruction, since there
-is no clear instruction boundary.
-
- * config/tc-i386.c (lfence_after_load): New.
- (lfence_before_indirect_branch_kind): New.
- (lfence_before_indirect_branch): New.
- (lfence_before_ret_kind): New.
- (lfence_before_ret): New.
- (last_insn): New.
- (load_insn_p): New.
- (insert_lfence_after): New.
- (insert_lfence_before): New.
- (md_assemble): Call insert_lfence_before and insert_lfence_after.
- Set last_insn.
- (OPTION_MLFENCE_AFTER_LOAD): New.
- (OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH): New.
- (OPTION_MLFENCE_BEFORE_RET): New.
- (md_longopts): Add -mlfence-after-load=,
- -mlfence-before-indirect-branch= and -mlfence-before-ret=.
- (md_parse_option): Handle -mlfence-after-load=,
- -mlfence-before-indirect-branch= and -mlfence-before-ret=.
- (md_show_usage): Display -mlfence-after-load=,
- -mlfence-before-indirect-branch= and -mlfence-before-ret=.
- (i386_cons_align): New.
- * config/tc-i386.h (i386_cons_align): New.
- (md_cons_align): New.
- * doc/c-i386.texi: Document -mlfence-after-load=,
- -mlfence-before-indirect-branch= and -mlfence-before-ret=.
-
-Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
-Upstream-Status: Backport [https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ae531041c7c5956672342f89c486a011c84f027f]
-CVE: CVE-2020-0551
----
-diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
-index b020f39c863..09063f784b7 100644
---- a/gas/config/tc-i386.c
-+++ b/gas/config/tc-i386.c
-@@ -629,7 +629,29 @@ static int omit_lock_prefix = 0;
- "lock addl $0, (%{re}sp)". */
- static int avoid_fence = 0;
-
--/* Type of the previous instruction. */
-+/* 1 if lfence should be inserted after every load. */
-+static int lfence_after_load = 0;
-+
-+/* Non-zero if lfence should be inserted before indirect branch. */
-+static enum lfence_before_indirect_branch_kind
-+ {
-+ lfence_branch_none = 0,
-+ lfence_branch_register,
-+ lfence_branch_memory,
-+ lfence_branch_all
-+ }
-+lfence_before_indirect_branch;
-+
-+/* Non-zero if lfence should be inserted before ret. */
-+static enum lfence_before_ret_kind
-+ {
-+ lfence_before_ret_none = 0,
-+ lfence_before_ret_not,
-+ lfence_before_ret_or
-+ }
-+lfence_before_ret;
-+
-+/* Types of previous instruction is .byte or prefix. */
- static struct
- {
- segT seg;
-@@ -4311,6 +4333,283 @@ optimize_encoding (void)
- }
- }
-
-+/* Return non-zero for load instruction. */
-+
-+static int
-+load_insn_p (void)
-+{
-+ unsigned int dest;
-+ int any_vex_p = is_any_vex_encoding (&i.tm);
-+ unsigned int base_opcode = i.tm.base_opcode | 1;
-+
-+ if (!any_vex_p)
-+ {
-+ /* lea */
-+ if (i.tm.base_opcode == 0x8d)
-+ return 0;
-+
-+ /* pop */
-+ if ((i.tm.base_opcode & ~7) == 0x58
-+ || (i.tm.base_opcode == 0x8f && i.tm.extension_opcode == 0))
-+ return 1;
-+
-+ /* movs, cmps, lods, scas. */
-+ if ((i.tm.base_opcode | 0xb) == 0xaf)
-+ return 1;
-+
-+ /* outs */
-+ if (base_opcode == 0x6f)
-+ return 1;
-+ }
-+
-+ /* No memory operand. */
-+ if (!i.mem_operands)
-+ return 0;
-+
-+ if (any_vex_p)
-+ {
-+ /* vldmxcsr. */
-+ if (i.tm.base_opcode == 0xae
-+ && i.tm.opcode_modifier.vex
-+ && i.tm.opcode_modifier.vexopcode == VEX0F
-+ && i.tm.extension_opcode == 2)
-+ return 1;
-+ }
-+ else
-+ {
-+ /* test, not, neg, mul, imul, div, idiv. */
-+ if ((i.tm.base_opcode == 0xf6 || i.tm.base_opcode == 0xf7)
-+ && i.tm.extension_opcode != 1)
-+ return 1;
-+
-+ /* inc, dec. */
-+ if (base_opcode == 0xff && i.tm.extension_opcode <= 1)
-+ return 1;
-+
-+ /* add, or, adc, sbb, and, sub, xor, cmp. */
-+ if (i.tm.base_opcode >= 0x80 && i.tm.base_opcode <= 0x83)
-+ return 1;
-+
-+ /* bt, bts, btr, btc. */
-+ if (i.tm.base_opcode == 0xfba
-+ && (i.tm.extension_opcode >= 4 && i.tm.extension_opcode <= 7))
-+ return 1;
-+
-+ /* rol, ror, rcl, rcr, shl/sal, shr, sar. */
-+ if ((base_opcode == 0xc1
-+ || (i.tm.base_opcode >= 0xd0 && i.tm.base_opcode <= 0xd3))
-+ && i.tm.extension_opcode != 6)
-+ return 1;
-+
-+ /* cmpxchg8b, cmpxchg16b, xrstors. */
-+ if (i.tm.base_opcode == 0xfc7
-+ && (i.tm.extension_opcode == 1 || i.tm.extension_opcode == 3))
-+ return 1;
-+
-+ /* fxrstor, ldmxcsr, xrstor. */
-+ if (i.tm.base_opcode == 0xfae
-+ && (i.tm.extension_opcode == 1
-+ || i.tm.extension_opcode == 2
-+ || i.tm.extension_opcode == 5))
-+ return 1;
-+
-+ /* lgdt, lidt, lmsw. */
-+ if (i.tm.base_opcode == 0xf01
-+ && (i.tm.extension_opcode == 2
-+ || i.tm.extension_opcode == 3
-+ || i.tm.extension_opcode == 6))
-+ return 1;
-+
-+ /* vmptrld */
-+ if (i.tm.base_opcode == 0xfc7
-+ && i.tm.extension_opcode == 6)
-+ return 1;
-+
-+ /* Check for x87 instructions. */
-+ if (i.tm.base_opcode >= 0xd8 && i.tm.base_opcode <= 0xdf)
-+ {
-+ /* Skip fst, fstp, fstenv, fstcw. */
-+ if (i.tm.base_opcode == 0xd9
-+ && (i.tm.extension_opcode == 2
-+ || i.tm.extension_opcode == 3
-+ || i.tm.extension_opcode == 6
-+ || i.tm.extension_opcode == 7))
-+ return 0;
-+
-+ /* Skip fisttp, fist, fistp, fstp. */
-+ if (i.tm.base_opcode == 0xdb
-+ && (i.tm.extension_opcode == 1
-+ || i.tm.extension_opcode == 2
-+ || i.tm.extension_opcode == 3
-+ || i.tm.extension_opcode == 7))
-+ return 0;
-+
-+ /* Skip fisttp, fst, fstp, fsave, fstsw. */
-+ if (i.tm.base_opcode == 0xdd
-+ && (i.tm.extension_opcode == 1
-+ || i.tm.extension_opcode == 2
-+ || i.tm.extension_opcode == 3
-+ || i.tm.extension_opcode == 6
-+ || i.tm.extension_opcode == 7))
-+ return 0;
-+
-+ /* Skip fisttp, fist, fistp, fbstp, fistp. */
-+ if (i.tm.base_opcode == 0xdf
-+ && (i.tm.extension_opcode == 1
-+ || i.tm.extension_opcode == 2
-+ || i.tm.extension_opcode == 3
-+ || i.tm.extension_opcode == 6
-+ || i.tm.extension_opcode == 7))
-+ return 0;
-+
-+ return 1;
-+ }
-+ }
-+
-+ dest = i.operands - 1;
-+
-+ /* Check fake imm8 operand and 3 source operands. */
-+ if ((i.tm.opcode_modifier.immext
-+ || i.tm.opcode_modifier.vexsources == VEX3SOURCES)
-+ && i.types[dest].bitfield.imm8)
-+ dest--;
-+
-+ /* add, or, adc, sbb, and, sub, xor, cmp, test, xchg, xadd */
-+ if (!any_vex_p
-+ && (base_opcode == 0x1
-+ || base_opcode == 0x9
-+ || base_opcode == 0x11
-+ || base_opcode == 0x19
-+ || base_opcode == 0x21
-+ || base_opcode == 0x29
-+ || base_opcode == 0x31
-+ || base_opcode == 0x39
-+ || (i.tm.base_opcode >= 0x84 && i.tm.base_opcode <= 0x87)
-+ || base_opcode == 0xfc1))
-+ return 1;
-+
-+ /* Check for load instruction. */
-+ return (i.types[dest].bitfield.class != ClassNone
-+ || i.types[dest].bitfield.instance == Accum);
-+}
-+
-+/* Output lfence, 0xfaee8, after instruction. */
-+
-+static void
-+insert_lfence_after (void)
-+{
-+ if (lfence_after_load && load_insn_p ())
-+ {
-+ char *p = frag_more (3);
-+ *p++ = 0xf;
-+ *p++ = 0xae;
-+ *p = 0xe8;
-+ }
-+}
-+
-+/* Output lfence, 0xfaee8, before instruction. */
-+
-+static void
-+insert_lfence_before (void)
-+{
-+ char *p;
-+
-+ if (is_any_vex_encoding (&i.tm))
-+ return;
-+
-+ if (i.tm.base_opcode == 0xff
-+ && (i.tm.extension_opcode == 2 || i.tm.extension_opcode == 4))
-+ {
-+ /* Insert lfence before indirect branch if needed. */
-+
-+ if (lfence_before_indirect_branch == lfence_branch_none)
-+ return;
-+
-+ if (i.operands != 1)
-+ abort ();
-+
-+ if (i.reg_operands == 1)
-+ {
-+ /* Indirect branch via register. Don't insert lfence with
-+ -mlfence-after-load=yes. */
-+ if (lfence_after_load
-+ || lfence_before_indirect_branch == lfence_branch_memory)
-+ return;
-+ }
-+ else if (i.mem_operands == 1
-+ && lfence_before_indirect_branch != lfence_branch_register)
-+ {
-+ as_warn (_("indirect `%s` with memory operand should be avoided"),
-+ i.tm.name);
-+ return;
-+ }
-+ else
-+ return;
-+
-+ if (last_insn.kind != last_insn_other
-+ && last_insn.seg == now_seg)
-+ {
-+ as_warn_where (last_insn.file, last_insn.line,
-+ _("`%s` skips -mlfence-before-indirect-branch on `%s`"),
-+ last_insn.name, i.tm.name);
-+ return;
-+ }
-+
-+ p = frag_more (3);
-+ *p++ = 0xf;
-+ *p++ = 0xae;
-+ *p = 0xe8;
-+ return;
-+ }
-+
-+ /* Output or/not and lfence before ret. */
-+ if (lfence_before_ret != lfence_before_ret_none
-+ && (i.tm.base_opcode == 0xc2
-+ || i.tm.base_opcode == 0xc3
-+ || i.tm.base_opcode == 0xca
-+ || i.tm.base_opcode == 0xcb))
-+ {
-+ if (last_insn.kind != last_insn_other
-+ && last_insn.seg == now_seg)
-+ {
-+ as_warn_where (last_insn.file, last_insn.line,
-+ _("`%s` skips -mlfence-before-ret on `%s`"),
-+ last_insn.name, i.tm.name);
-+ return;
-+ }
-+ if (lfence_before_ret == lfence_before_ret_or)
-+ {
-+ /* orl: 0x830c2400. */
-+ p = frag_more ((flag_code == CODE_64BIT ? 1 : 0) + 4 + 3);
-+ if (flag_code == CODE_64BIT)
-+ *p++ = 0x48;
-+ *p++ = 0x83;
-+ *p++ = 0xc;
-+ *p++ = 0x24;
-+ *p++ = 0x0;
-+ }
-+ else
-+ {
-+ p = frag_more ((flag_code == CODE_64BIT ? 2 : 0) + 6 + 3);
-+ /* notl: 0xf71424. */
-+ if (flag_code == CODE_64BIT)
-+ *p++ = 0x48;
-+ *p++ = 0xf7;
-+ *p++ = 0x14;
-+ *p++ = 0x24;
-+ /* notl: 0xf71424. */
-+ if (flag_code == CODE_64BIT)
-+ *p++ = 0x48;
-+ *p++ = 0xf7;
-+ *p++ = 0x14;
-+ *p++ = 0x24;
-+ }
-+ *p++ = 0xf;
-+ *p++ = 0xae;
-+ *p = 0xe8;
-+ }
-+}
-+
- /* This is the guts of the machine-dependent assembler. LINE points to a
- machine dependent instruction. This function is supposed to emit
- the frags/bytes it assembles to. */
-@@ -4628,9 +4927,13 @@ md_assemble (char *line)
- if (i.rex != 0)
- add_prefix (REX_OPCODE | i.rex);
-
-+ insert_lfence_before ();
-+
- /* We are ready to output the insn. */
- output_insn ();
-
-+ insert_lfence_after ();
-+
- last_insn.seg = now_seg;
-
- if (i.tm.opcode_modifier.isprefix)
-@@ -12250,6 +12553,9 @@ const char *md_shortopts = "qnO::";
- #define OPTION_MALIGN_BRANCH_PREFIX_SIZE (OPTION_MD_BASE + 28)
- #define OPTION_MALIGN_BRANCH (OPTION_MD_BASE + 29)
- #define OPTION_MBRANCHES_WITH_32B_BOUNDARIES (OPTION_MD_BASE + 30)
-+#define OPTION_MLFENCE_AFTER_LOAD (OPTION_MD_BASE + 31)
-+#define OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH (OPTION_MD_BASE + 32)
-+#define OPTION_MLFENCE_BEFORE_RET (OPTION_MD_BASE + 33)
-
- struct option md_longopts[] =
- {
-@@ -12289,6 +12595,10 @@ struct option md_longopts[] =
- {"malign-branch-prefix-size", required_argument, NULL, OPTION_MALIGN_BRANCH_PREFIX_SIZE},
- {"malign-branch", required_argument, NULL, OPTION_MALIGN_BRANCH},
- {"mbranches-within-32B-boundaries", no_argument, NULL, OPTION_MBRANCHES_WITH_32B_BOUNDARIES},
-+ {"mlfence-after-load", required_argument, NULL, OPTION_MLFENCE_AFTER_LOAD},
-+ {"mlfence-before-indirect-branch", required_argument, NULL,
-+ OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH},
-+ {"mlfence-before-ret", required_argument, NULL, OPTION_MLFENCE_BEFORE_RET},
- {"mamd64", no_argument, NULL, OPTION_MAMD64},
- {"mintel64", no_argument, NULL, OPTION_MINTEL64},
- {NULL, no_argument, NULL, 0}
-@@ -12668,6 +12978,41 @@ md_parse_option (int c, const char *arg)
- as_fatal (_("invalid -mfence-as-lock-add= option: `%s'"), arg);
- break;
-
-+ case OPTION_MLFENCE_AFTER_LOAD:
-+ if (strcasecmp (arg, "yes") == 0)
-+ lfence_after_load = 1;
-+ else if (strcasecmp (arg, "no") == 0)
-+ lfence_after_load = 0;
-+ else
-+ as_fatal (_("invalid -mlfence-after-load= option: `%s'"), arg);
-+ break;
-+
-+ case OPTION_MLFENCE_BEFORE_INDIRECT_BRANCH:
-+ if (strcasecmp (arg, "all") == 0)
-+ lfence_before_indirect_branch = lfence_branch_all;
-+ else if (strcasecmp (arg, "memory") == 0)
-+ lfence_before_indirect_branch = lfence_branch_memory;
-+ else if (strcasecmp (arg, "register") == 0)
-+ lfence_before_indirect_branch = lfence_branch_register;
-+ else if (strcasecmp (arg, "none") == 0)
-+ lfence_before_indirect_branch = lfence_branch_none;
-+ else
-+ as_fatal (_("invalid -mlfence-before-indirect-branch= option: `%s'"),
-+ arg);
-+ break;
-+
-+ case OPTION_MLFENCE_BEFORE_RET:
-+ if (strcasecmp (arg, "or") == 0)
-+ lfence_before_ret = lfence_before_ret_or;
-+ else if (strcasecmp (arg, "not") == 0)
-+ lfence_before_ret = lfence_before_ret_not;
-+ else if (strcasecmp (arg, "none") == 0)
-+ lfence_before_ret = lfence_before_ret_none;
-+ else
-+ as_fatal (_("invalid -mlfence-before-ret= option: `%s'"),
-+ arg);
-+ break;
-+
- case OPTION_MRELAX_RELOCATIONS:
- if (strcasecmp (arg, "yes") == 0)
- generate_relax_relocations = 1;
-@@ -13025,6 +13370,15 @@ md_show_usage (FILE *stream)
- -mbranches-within-32B-boundaries\n\
- align branches within 32 byte boundary\n"));
- fprintf (stream, _("\
-+ -mlfence-after-load=[no|yes] (default: no)\n\
-+ generate lfence after load\n"));
-+ fprintf (stream, _("\
-+ -mlfence-before-indirect-branch=[none|all|register|memory] (default: none)\n\
-+ generate lfence before indirect near branch\n"));
-+ fprintf (stream, _("\
-+ -mlfence-before-ret=[none|or|not] (default: none)\n\
-+ generate lfence before ret\n"));
-+ fprintf (stream, _("\
- -mamd64 accept only AMD64 ISA [default]\n"));
- fprintf (stream, _("\
- -mintel64 accept only Intel64 ISA\n"));
-@@ -13254,6 +13608,16 @@ i386_cons_align (int ignore ATTRIBUTE_UNUSED)
- last_insn.kind = last_insn_directive;
- last_insn.name = "constant directive";
- last_insn.file = as_where (&last_insn.line);
-+ if (lfence_before_ret != lfence_before_ret_none)
-+ {
-+ if (lfence_before_indirect_branch != lfence_branch_none)
-+ as_warn (_("constant directive skips -mlfence-before-ret "
-+ "and -mlfence-before-indirect-branch"));
-+ else
-+ as_warn (_("constant directive skips -mlfence-before-ret"));
-+ }
-+ else if (lfence_before_indirect_branch != lfence_branch_none)
-+ as_warn (_("constant directive skips -mlfence-before-indirect-branch"));
- }
- }
-
-diff --git a/gas/doc/c-i386.texi b/gas/doc/c-i386.texi
-index c536759cb38..1dd99f91bb0 100644
---- a/gas/doc/c-i386.texi
-+++ b/gas/doc/c-i386.texi
-@@ -464,6 +464,49 @@ on an instruction. It is equivalent to
- @option{-malign-branch-prefix-size=5}.
- The default doesn't align branches.
-
-+@cindex @samp{-mlfence-after-load=} option, i386
-+@cindex @samp{-mlfence-after-load=} option, x86-64
-+@item -mlfence-after-load=@var{no}
-+@itemx -mlfence-after-load=@var{yes}
-+These options control whether the assembler should generate lfence
-+after load instructions. @option{-mlfence-after-load=@var{yes}} will
-+generate lfence. @option{-mlfence-after-load=@var{no}} will not generate
-+lfence, which is the default.
-+
-+@cindex @samp{-mlfence-before-indirect-branch=} option, i386
-+@cindex @samp{-mlfence-before-indirect-branch=} option, x86-64
-+@item -mlfence-before-indirect-branch=@var{none}
-+@item -mlfence-before-indirect-branch=@var{all}
-+@item -mlfence-before-indirect-branch=@var{register}
-+@itemx -mlfence-before-indirect-branch=@var{memory}
-+These options control whether the assembler should generate lfence
-+after indirect near branch instructions.
-+@option{-mlfence-before-indirect-branch=@var{all}} will generate lfence
-+after indirect near branch via register and issue a warning before
-+indirect near branch via memory.
-+@option{-mlfence-before-indirect-branch=@var{register}} will generate
-+lfence after indirect near branch via register.
-+@option{-mlfence-before-indirect-branch=@var{memory}} will issue a
-+warning before indirect near branch via memory.
-+@option{-mlfence-before-indirect-branch=@var{none}} will not generate
-+lfence nor issue warning, which is the default. Note that lfence won't
-+be generated before indirect near branch via register with
-+@option{-mlfence-after-load=@var{yes}} since lfence will be generated
-+after loading branch target register.
-+
-+@cindex @samp{-mlfence-before-ret=} option, i386
-+@cindex @samp{-mlfence-before-ret=} option, x86-64
-+@item -mlfence-before-ret=@var{none}
-+@item -mlfence-before-ret=@var{or}
-+@itemx -mlfence-before-ret=@var{not}
-+These options control whether the assembler should generate lfence
-+before ret. @option{-mlfence-before-ret=@var{or}} will generate
-+generate or instruction with lfence.
-+@option{-mlfence-before-ret=@var{not}} will generate not instruction
-+with lfence.
-+@option{-mlfence-before-ret=@var{none}} will not generate lfence,
-+which is the default.
-+
- @cindex @samp{-mx86-used-note=} option, i386
- @cindex @samp{-mx86-used-note=} option, x86-64
- @item -mx86-used-note=@var{no}
---
-2.18.2
diff --git a/poky/meta/recipes-devtools/binutils/binutils_2.34.bb b/poky/meta/recipes-devtools/binutils/binutils_2.35.bb
index 2e645e1ed..2e645e1ed 100644
--- a/poky/meta/recipes-devtools/binutils/binutils_2.34.bb
+++ b/poky/meta/recipes-devtools/binutils/binutils_2.35.bb
diff --git a/poky/meta/recipes-devtools/bison/bison/0001-bison-fix-the-parallel-build.patch b/poky/meta/recipes-devtools/bison/bison/0001-bison-fix-the-parallel-build.patch
deleted file mode 100644
index c3be91a10..000000000
--- a/poky/meta/recipes-devtools/bison/bison/0001-bison-fix-the-parallel-build.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From e0dbcee6e25b3c0cb11a627bbfe3af45ef67ec30 Mon Sep 17 00:00:00 2001
-From: Mingli Yu <mingli.yu@windriver.com>
-Date: Thu, 14 May 2020 15:23:16 +0800
-Subject: [PATCH] bison: fix the parallel build
-
-Explicitly make the BUILT_SOURCES which
-are the generated headers such as stdio.h,
-fcntl.h and etc to be the dependencies of
-the gl_LIBOBJS such as libbison_a-sprintf.o,
-libbison_a-printf.o and etc to guarantee the
-BUILT_SOURCES is generated before begin to
-compile EXTRA_lib_libbison_a_SOURCES such as
-fprintf.c in parallel builid, otherwise there
-may come below error:
- | muscle-tab.c:(.text+0x77a): undefined reference to `rpl_sprintf'
-
-It does the same for src_bison_OBJECTS and
-lib_libbison_a_OBJECTS to make sure BUILT_SOURCES
-generated before begin to compile src_bison_SOURCES
-which contains AnnotationList.c and etc.
-
-BTW, the MOSTLYCLEANFILES also contains the
-generated header needs to be created early
-in the build process, so add it also in to
-avoid below error:
- | ./lib/uniwidth/width.c:21:10: fatal error: uniwidth.h: No such file or directory
-
-Upstream-Status: Submitted [bison-patches@gnu.org maillist]
-
-Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
----
- lib/gnulib.mk | 2 ++
- src/local.mk | 1 +
- 2 files changed, 3 insertions(+)
-
-diff --git a/lib/gnulib.mk b/lib/gnulib.mk
-index c21c656..27fb3dc 100644
---- a/lib/gnulib.mk
-+++ b/lib/gnulib.mk
-@@ -120,6 +120,8 @@ lib_libbison_a_SOURCES =
- lib_libbison_a_LIBADD = $(gl_LIBOBJS)
- lib_libbison_a_DEPENDENCIES = $(gl_LIBOBJS)
- EXTRA_lib_libbison_a_SOURCES =
-+$(lib_libbison_a_OBJECTS): $(BUILT_SOURCES) $(MOSTLYCLEANFILES:%.h)
-+$(gl_LIBOBJS): $(BUILT_SOURCES) $(MOSTLYCLEANFILES:%.h)
-
- lib_libbison_a_CPPFLAGS = $(AM_CPPFLAGS) -DDEFAULT_TEXT_DOMAIN=\"bison-gnulib\"
-
-diff --git a/src/local.mk b/src/local.mk
-index 61dc573..b5b9079 100644
---- a/src/local.mk
-+++ b/src/local.mk
-@@ -24,6 +24,7 @@ if RELOCATABLE_VIA_LD
- src_bison_LDFLAGS = `$(RELOCATABLE_LDFLAGS) $(bindir)`
- endif
-
-+$(src_bison_OBJECTS): $(BUILT_SOURCES) $(MOSTLYCLEANFILES:%.h)
- src_bison_CFLAGS = $(AM_CFLAGS) $(WERROR_CFLAGS)
- src_bison_SOURCES = \
- src/AnnotationList.c \
---
-2.17.1
-
diff --git a/poky/meta/recipes-devtools/bison/bison/dont-depend-on-help2man.patch.patch b/poky/meta/recipes-devtools/bison/bison/dont-depend-on-help2man.patch.patch
deleted file mode 100644
index 8a41a3a76..000000000
--- a/poky/meta/recipes-devtools/bison/bison/dont-depend-on-help2man.patch.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 31bb81ef15c42b10844eb8af8738f672076edf0e Mon Sep 17 00:00:00 2001
-From: Marko Lindqvist <cazfi74@gmail.com>
-Date: Tue, 21 Apr 2015 00:48:45 -0700
-Subject: [PATCH] doc/local.mk: dont-depend-on-help2man.patch
-
-Upstream-Status: Inappropriate
-
-Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
-
-Updated for bison 3.0.4
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
-
----
- doc/local.mk | 9 +--------
- 1 file changed, 1 insertion(+), 8 deletions(-)
-
-diff --git a/doc/local.mk b/doc/local.mk
-index d12836e..f9bf332 100644
---- a/doc/local.mk
-+++ b/doc/local.mk
-@@ -101,10 +101,7 @@ endif ! CROSS_COMPILING
- ## Man Pages. ##
- ## ----------- ##
-
--dist_man_MANS = $(top_srcdir)/doc/bison.1
--
--EXTRA_DIST += $(dist_man_MANS:.1=.x)
--MAINTAINERCLEANFILES += $(dist_man_MANS)
-+EXTRA_DIST += bison.x
-
- # Differences to ignore when comparing the man page (the date).
- remove_time_stamp = \
-@@ -127,10 +124,6 @@ $(top_srcdir)/doc/bison.1: $(MAN_DEPS)
- fi
- $(AM_V_at)rm -f $@*.tmp
-
--if ENABLE_YACC
--nodist_man_MANS = doc/yacc.1
--endif
--
- ## ----------------------------- ##
- ## Graphviz examples generation. ##
- ## ----------------------------- ##
diff --git a/poky/meta/recipes-devtools/bison/bison_3.5.4.bb b/poky/meta/recipes-devtools/bison/bison_3.7.2.bb
index 124bc41d3..ace4ea5c3 100644
--- a/poky/meta/recipes-devtools/bison/bison_3.5.4.bb
+++ b/poky/meta/recipes-devtools/bison/bison_3.7.2.bb
@@ -10,25 +10,17 @@ SECTION = "devel"
DEPENDS = "bison-native flex-native"
SRC_URI = "${GNU_MIRROR}/bison/bison-${PV}.tar.xz \
- file://dont-depend-on-help2man.patch.patch \
file://add-with-bisonlocaledir.patch \
- file://0001-bison-fix-the-parallel-build.patch \
-"
-SRC_URI[sha256sum] = "4c17e99881978fa32c05933c5262457fa5b2b611668454f8dc2a695cd6b3720c"
+ "
+SRC_URI[sha256sum] = "7948d193104d979c0fb0294a1854c73c89d72ae41acfc081826142578a78a91b"
# No point in hardcoding path to m4, just use PATH
EXTRA_OECONF += "M4=m4"
-# Reset any loadavg set via environment, it breaks parallel build
-# | ../bison-3.5.2/lib/uniwidth/width.c:21:10: fatal error: uniwidth.h: No such file or directory
-# | #include "uniwidth.h"
-# | ^~~~~~~~~~~~
-EXTRA_OEMAKE_append = " -l"
-
inherit autotools gettext texinfo
# The automatic m4 path detection gets confused, so force the right value
-acpaths = "-I ${S}/m4"
+acpaths = "-I ./m4"
do_compile_prepend() {
for i in mfcalc calc++ rpcalc; do mkdir -p ${B}/examples/$i; done
diff --git a/poky/meta/recipes-devtools/bootchart2/bootchart2_0.14.8.bb b/poky/meta/recipes-devtools/bootchart2/bootchart2_0.14.9.bb
index a938b2da4..6571c1993 100644
--- a/poky/meta/recipes-devtools/bootchart2/bootchart2_0.14.8.bb
+++ b/poky/meta/recipes-devtools/bootchart2/bootchart2_0.14.9.bb
@@ -97,8 +97,7 @@ SRC_URI = "git://github.com/xrmx/bootchart.git \
"
S = "${WORKDIR}/git"
-SRCREV = "331ada031f1d65f6d934d918f896e1c708c64bf7"
-PV .= "+git${SRCPV}"
+SRCREV = "868a2afab9da34f32c007d773b77253c93104636"
inherit systemd update-rc.d python3native update-alternatives
diff --git a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.4.1.bb b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.7.bb
index cdc971cf5..e61ea9bf8 100644
--- a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.4.1.bb
+++ b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.7.bb
@@ -14,7 +14,7 @@ DEPENDS = "util-linux attr e2fsprogs lzo acl"
DEPENDS_append_class-target = " udev"
RDEPENDS_${PN} = "libgcc"
-SRCREV = "3fc2326d3474a5e4df2449f5e3043f7298501334"
+SRCREV = "11acf45eea6dd81e891564967051e2bb10bd25f7"
SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/kdave/btrfs-progs.git \
file://0001-Add-a-possibility-to-specify-where-python-modules-ar.patch \
"
@@ -49,4 +49,4 @@ do_install_append() {
fi
}
-BBCLASSEXTEND = "native"
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/build-compare/build-compare_git.bb b/poky/meta/recipes-devtools/build-compare/build-compare_git.bb
deleted file mode 100644
index d2a4b5444..000000000
--- a/poky/meta/recipes-devtools/build-compare/build-compare_git.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-SUMMARY = "Build Result Compare Script"
-DESCRIPTION = "This package contains scripts to find out if the build result\
-differs to a former build."
-HOMEPAGE = "https://github.com/openSUSE/build-compare"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-
-SRC_URI = "git://github.com/openSUSE/build-compare.git"
-
-# Date matches entry in build-compare.changes and date of SRCREV.
-#
-SRCREV = "28bf642fcfdab94adb9b847329338005be6f73c7"
-PE = "1"
-PV = "2020.03.31+git${SRCPV}"
-UPSTREAM_CHECK_COMMITS = "1"
-
-S = "${WORKDIR}/git"
-
-BBCLASSEXTEND = "native nativesdk"
-
-do_install() {
- install -d ${D}/${bindir}
- install -m 755 functions.sh ${D}/${bindir}
- install -m 755 pkg-diff.sh ${D}/${bindir}
- install -m 755 same-build-result.sh ${D}/${bindir}
- install -m 755 srpm-check.sh ${D}/${bindir}
-}
-
-RDEPENDS_${PN} += "bash"
diff --git a/poky/meta/recipes-devtools/ccache/ccache.inc b/poky/meta/recipes-devtools/ccache/ccache_3.7.11.bb
index dcbbf0ca7..fd004f4c9 100644
--- a/poky/meta/recipes-devtools/ccache/ccache.inc
+++ b/poky/meta/recipes-devtools/ccache/ccache_3.7.11.bb
@@ -5,11 +5,15 @@ same compilation is being done again. Supported languages are C, C\+\+, \
Objective-C and Objective-C++."
HOMEPAGE = "http://ccache.samba.org"
SECTION = "devel"
+
LICENSE = "GPLv3+"
+LIC_FILES_CHKSUM = "file://LICENSE.adoc;md5=22d514dbc01fdf9a9784334b6b59417a"
DEPENDS = "zlib"
SRC_URI = "https://github.com/ccache/ccache/releases/download/v${PV}/${BP}.tar.gz"
+SRC_URI[sha256sum] = "34309a59d4b6b6b33756366aa9d3144a4655587be9f914476b4c0e2d36365f01"
+
UPSTREAM_CHECK_URI = "https://github.com/ccache/ccache/releases/"
inherit autotools
diff --git a/poky/meta/recipes-devtools/ccache/ccache_3.7.7.bb b/poky/meta/recipes-devtools/ccache/ccache_3.7.7.bb
deleted file mode 100644
index 3e7362b28..000000000
--- a/poky/meta/recipes-devtools/ccache/ccache_3.7.7.bb
+++ /dev/null
@@ -1,7 +0,0 @@
-require ccache.inc
-
-LICENSE = "GPLv3+"
-LIC_FILES_CHKSUM = "file://LICENSE.adoc;md5=22d514dbc01fdf9a9784334b6b59417a"
-
-SRC_URI[md5sum] = "500d7bd9ebc6ee3105d7fc332c1ef395"
-SRC_URI[sha256sum] = "9b61f7fab2ec15305ee8382b03365503232dfb04b57414e7b0433768d530fa8a"
diff --git a/poky/meta/recipes-devtools/cmake/cmake-native_3.16.5.bb b/poky/meta/recipes-devtools/cmake/cmake-native_3.18.2.bb
index b2952ee5f..d91e42ef9 100644
--- a/poky/meta/recipes-devtools/cmake/cmake-native_3.16.5.bb
+++ b/poky/meta/recipes-devtools/cmake/cmake-native_3.18.2.bb
@@ -1,7 +1,7 @@
require cmake.inc
inherit native
-DEPENDS += "bzip2-replacement-native expat-native xz-native zlib-native curl-native ncurses-native"
+DEPENDS += "bzip2-replacement-native xz-native zlib-native curl-native ncurses-native"
SRC_URI += "file://OEToolchainConfig.cmake \
file://environment.d-cmake.sh \
@@ -21,6 +21,7 @@ CMAKE_EXTRACONF = "\
-DCMAKE_USE_SYSTEM_LIBRARY_LIBARCHIVE=0 \
-DCMAKE_USE_SYSTEM_LIBRARY_LIBUV=0 \
-DCMAKE_USE_SYSTEM_LIBRARY_LIBRHASH=0 \
+ -DCMAKE_USE_SYSTEM_LIBRARY_EXPAT=0 \
-DENABLE_ACL=0 -DHAVE_ACL_LIBACL_H=0 \
-DHAVE_SYS_ACL_H=0 \
"
diff --git a/poky/meta/recipes-devtools/cmake/cmake.inc b/poky/meta/recipes-devtools/cmake/cmake.inc
index 09949b566..fa1b818ae 100644
--- a/poky/meta/recipes-devtools/cmake/cmake.inc
+++ b/poky/meta/recipes-devtools/cmake/cmake.inc
@@ -10,8 +10,8 @@ HOMEPAGE = "http://www.cmake.org/"
BUGTRACKER = "http://public.kitware.com/Bug/my_view_page.php"
SECTION = "console/utils"
LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://Copyright.txt;md5=622747147b46f22e1953876a7cba3323 \
- file://Source/cmake.h;md5=4494dee184212fc89c469c3acd555a14;beginline=1;endline=3 \
+LIC_FILES_CHKSUM = "file://Copyright.txt;md5=c721f56fce89ba2eadc2fdd8ba1f4d83 \
+ file://Source/cmake.h;beginline=1;endline=3;md5=4494dee184212fc89c469c3acd555a14 \
"
CMAKE_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:2])}"
@@ -22,7 +22,10 @@ SRC_URI = "https://cmake.org/files/v${CMAKE_MAJOR_VERSION}/cmake-${PV}.tar.gz \
file://0004-Fail-silently-if-system-Qt-installation-is-broken.patch \
"
-SRC_URI[md5sum] = "d86ccaf3d2462b6b5947919abe5b9f15"
-SRC_URI[sha256sum] = "5f760b50b8ecc9c0c37135fae5fbf00a2fef617059aa9d61c1bb91653e5a8bfc"
+SRC_URI[sha256sum] = "5d4e40fc775d3d828c72e5c45906b4d9b59003c9433ff1b36a1cb552bbd51d7e"
UPSTREAM_CHECK_REGEX = "cmake-(?P<pver>\d+(\.\d+)+)\.tar"
+
+# This is specific to the npm package that installs cmake, so isn't
+# relevant to OpenEmbedded
+CVE_CHECK_WHITELIST += "CVE-2016-10642"
diff --git a/poky/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch b/poky/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch
index e2a58d25e..c4f81b27b 100644
--- a/poky/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch
+++ b/poky/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch
@@ -1,4 +1,4 @@
-From ab272d703ce77f323aa1285526559c9efbf85834 Mon Sep 17 00:00:00 2001
+From dd0fe8d54def4684d360b3e9b10e963ef0208202 Mon Sep 17 00:00:00 2001
From: Cody P Schafer <dev@codyps.com>
Date: Thu, 27 Apr 2017 11:35:05 -0400
Subject: [PATCH] CMakeDetermineSystem: use oe environment vars to load default
@@ -25,7 +25,7 @@ Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
1 file changed, 7 insertions(+)
diff --git a/Modules/CMakeDetermineSystem.cmake b/Modules/CMakeDetermineSystem.cmake
-index dc208c6..e0af4ca 100644
+index f3ec4da..bb05656 100644
--- a/Modules/CMakeDetermineSystem.cmake
+++ b/Modules/CMakeDetermineSystem.cmake
@@ -81,6 +81,13 @@ else()
diff --git a/poky/meta/recipes-devtools/cmake/cmake/0002-cmake-Prevent-the-detection-of-Qt5.patch b/poky/meta/recipes-devtools/cmake/cmake/0002-cmake-Prevent-the-detection-of-Qt5.patch
index 61c8f27cd..162bfe578 100644
--- a/poky/meta/recipes-devtools/cmake/cmake/0002-cmake-Prevent-the-detection-of-Qt5.patch
+++ b/poky/meta/recipes-devtools/cmake/cmake/0002-cmake-Prevent-the-detection-of-Qt5.patch
@@ -1,4 +1,4 @@
-From 5a86c7fa987bd407f228176df2abeffd015be9ea Mon Sep 17 00:00:00 2001
+From 106cf5134d22db889e4ddf2f98ec302d5f4b9ca7 Mon Sep 17 00:00:00 2001
From: Otavio Salvador <otavio@ossystems.com.br>
Date: Wed, 17 Jan 2018 10:02:14 -0200
Subject: [PATCH] cmake: Prevent the detection of Qt5
@@ -25,7 +25,7 @@ Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
7 files changed, 8 insertions(+), 9 deletions(-)
diff --git a/Source/QtDialog/CMakeLists.txt b/Source/QtDialog/CMakeLists.txt
-index cb89d19..9e68981 100644
+index 98dd0e2..252302b 100644
--- a/Source/QtDialog/CMakeLists.txt
+++ b/Source/QtDialog/CMakeLists.txt
@@ -3,7 +3,7 @@
@@ -38,18 +38,18 @@ index cb89d19..9e68981 100644
include_directories(${Qt5Widgets_INCLUDE_DIRS})
add_definitions(${Qt5Widgets_DEFINITONS})
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
-index 57fa7fc..d50c146 100644
+index db6dbf3..5b26879 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
-@@ -1329,7 +1329,7 @@ ${CMake_SOURCE_DIR}/Utilities/Release/push.bash --dir dev -- '${CMake_BUILD_NIGH
+@@ -215,7 +215,7 @@ if(BUILD_TESTING)
set(CMake_TEST_Qt5 1)
endif()
if(CMake_TEST_Qt5)
- find_package(Qt5Widgets QUIET NO_MODULE)
+ #find_package(Qt5Widgets QUIET NO_MODULE)
endif()
- if(CMake_TEST_Qt5 AND Qt5Widgets_FOUND)
- add_subdirectory(Qt5Autogen)
+
+ if(NOT CMake_TEST_EXTERNAL_CMAKE)
diff --git a/Tests/Qt4And5Automoc/CMakeLists.txt b/Tests/Qt4And5Automoc/CMakeLists.txt
index ad74961..a9dd74b 100644
--- a/Tests/Qt4And5Automoc/CMakeLists.txt
@@ -96,11 +96,11 @@ index c08efc4..87e25d9 100644
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/output/bin)
diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt
-index 6b2f117..1002005 100644
+index 10e66c3..ecc4eeb 100644
--- a/Tests/RunCMake/CMakeLists.txt
+++ b/Tests/RunCMake/CMakeLists.txt
-@@ -376,7 +376,7 @@ else()
- endif()
+@@ -440,7 +440,7 @@ if(NOT WIN32)
+ endif ()
find_package(Qt4 QUIET)
-find_package(Qt5Core QUIET)
diff --git a/poky/meta/recipes-devtools/cmake/cmake/0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch b/poky/meta/recipes-devtools/cmake/cmake/0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch
index e30dc51e4..575a5cb7f 100644
--- a/poky/meta/recipes-devtools/cmake/cmake/0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch
+++ b/poky/meta/recipes-devtools/cmake/cmake/0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch
@@ -1,4 +1,4 @@
-From e528861023bf69df0ad061a59fd4e527c9dde1ce Mon Sep 17 00:00:00 2001
+From 2d02ac91d5a5d72eaddba4894eaa6db3ed8fee62 Mon Sep 17 00:00:00 2001
From: Otavio Salvador <otavio@ossystems.com.br>
Date: Thu, 12 May 2011 15:36:03 +0000
Subject: [PATCH] cmake: support OpenEmbedded Qt4 tool binary names
diff --git a/poky/meta/recipes-devtools/cmake/cmake/0004-Fail-silently-if-system-Qt-installation-is-broken.patch b/poky/meta/recipes-devtools/cmake/cmake/0004-Fail-silently-if-system-Qt-installation-is-broken.patch
index 48f43be83..1b196db81 100644
--- a/poky/meta/recipes-devtools/cmake/cmake/0004-Fail-silently-if-system-Qt-installation-is-broken.patch
+++ b/poky/meta/recipes-devtools/cmake/cmake/0004-Fail-silently-if-system-Qt-installation-is-broken.patch
@@ -1,4 +1,4 @@
-From b0aeca35187983e22ec256a439cff4702dbde331 Mon Sep 17 00:00:00 2001
+From 60864efbe52cc12018efaafbc4e4c3c8b4af2b65 Mon Sep 17 00:00:00 2001
From: Otavio Salvador <otavio@ossystems.com.br>
Date: Thu, 5 Jul 2018 10:26:48 -0300
Subject: [PATCH] Fail silently if system Qt installation is broken
diff --git a/poky/meta/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch b/poky/meta/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch
index ad42d409d..d6f7308fe 100644
--- a/poky/meta/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch
+++ b/poky/meta/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch
@@ -1,7 +1,8 @@
-From 0df8d46d14c371f21c327966a553c4c187a8acfe Mon Sep 17 00:00:00 2001
+From fd9a04c1434e12f21c043385e306e0b52d38d749 Mon Sep 17 00:00:00 2001
From: Otavio Salvador <otavio@ossystems.com.br>
Date: Thu, 5 Jul 2018 10:28:04 -0300
-Subject: [PATCH 5/5] Disable use of ext2fs/ext2_fs.h by cmake's internal
+Subject: [PATCH] Disable use of ext2fs/ext2_fs.h by cmake's internal
+
libarchive copy
Organization: O.S. Systems Software LTDA.
@@ -12,15 +13,16 @@ Upstream-Status: Inappropriate [config]
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
+
---
Utilities/cmlibarchive/CMakeLists.txt | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/Utilities/cmlibarchive/CMakeLists.txt b/Utilities/cmlibarchive/CMakeLists.txt
-index 206f3c6a5..642fb0dd9 100644
+index bfcaf30..2960683 100644
--- a/Utilities/cmlibarchive/CMakeLists.txt
+++ b/Utilities/cmlibarchive/CMakeLists.txt
-@@ -430,12 +430,8 @@ LA_CHECK_INCLUDE_FILE("copyfile.h" HAVE_COPYFILE_H)
+@@ -682,12 +682,8 @@ LA_CHECK_INCLUDE_FILE("copyfile.h" HAVE_COPYFILE_H)
LA_CHECK_INCLUDE_FILE("direct.h" HAVE_DIRECT_H)
LA_CHECK_INCLUDE_FILE("dlfcn.h" HAVE_DLFCN_H)
LA_CHECK_INCLUDE_FILE("errno.h" HAVE_ERRNO_H)
@@ -34,7 +36,4 @@ index 206f3c6a5..642fb0dd9 100644
+SET(HAVE_WORKING_EXT2_IOC_GETFLAGS 0)
LA_CHECK_INCLUDE_FILE("fcntl.h" HAVE_FCNTL_H)
LA_CHECK_INCLUDE_FILE("grp.h" HAVE_GRP_H)
- LA_CHECK_INCLUDE_FILE("inttypes.h" HAVE_INTTYPES_H)
---
-2.18.0
-
+ LA_CHECK_INCLUDE_FILE("io.h" HAVE_IO_H)
diff --git a/poky/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake b/poky/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake
index 398069eef..8f6f3a272 100644
--- a/poky/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake
+++ b/poky/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake
@@ -19,7 +19,7 @@ if ($ENV{SDKTARGETSYSROOT} MATCHES "/sysroots/([a-zA-Z0-9_-]+)-.+-.+")
endif()
# Include the toolchain configuration subscripts
-file( GLOB toolchain_config_files "${CMAKE_TOOLCHAIN_FILE}.d/*.cmake" )
+file( GLOB toolchain_config_files "${CMAKE_CURRENT_LIST_FILE}.d/*.cmake" )
foreach(config ${toolchain_config_files})
include(${config})
endforeach()
diff --git a/poky/meta/recipes-devtools/cmake/cmake_3.16.5.bb b/poky/meta/recipes-devtools/cmake/cmake_3.18.2.bb
index e0457677e..64c92b89f 100644
--- a/poky/meta/recipes-devtools/cmake/cmake_3.16.5.bb
+++ b/poky/meta/recipes-devtools/cmake/cmake_3.18.2.bb
@@ -1,6 +1,6 @@
require cmake.inc
-inherit cmake
+inherit cmake bash-completion
DEPENDS += "curl expat zlib libarchive xz ncurses bzip2"
@@ -46,7 +46,7 @@ do_install_append_class-nativesdk() {
FILES_${PN}_append_class-nativesdk = " ${SDKPATHNATIVE}"
-FILES_${PN} += "${datadir}/cmake-${CMAKE_MAJOR_VERSION} ${datadir}/cmake ${datadir}/aclocal"
+FILES_${PN} += "${datadir}/cmake-${CMAKE_MAJOR_VERSION} ${datadir}/cmake ${datadir}/aclocal ${datadir}/emacs ${datadir}/vim"
FILES_${PN}-doc += "${docdir}/cmake-${CMAKE_MAJOR_VERSION}"
FILES_${PN}-dev = ""
diff --git a/poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.15.7.bb b/poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.16.0.bb
index c6a53ffec..c6d896307 100644
--- a/poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.15.7.bb
+++ b/poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.16.0.bb
@@ -8,7 +8,7 @@ SRC_URI = "git://github.com/rpm-software-management/createrepo_c \
file://0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \
"
-SRCREV = "4ab6b56b8b718396386982afba4ade297c14d91a"
+SRCREV = "bac48ace91c51abe37792415e75452bbabd44d93"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/desktop-file-utils/desktop-file-utils_0.24.bb b/poky/meta/recipes-devtools/desktop-file-utils/desktop-file-utils_0.26.bb
index aecba0723..90c265aed 100644
--- a/poky/meta/recipes-devtools/desktop-file-utils/desktop-file-utils_0.24.bb
+++ b/poky/meta/recipes-devtools/desktop-file-utils/desktop-file-utils_0.26.bb
@@ -7,8 +7,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://src/validator.c;beginline=4;endline=27;md5=281e1114ee6c486a1a0a4295986b9416"
SRC_URI = "http://freedesktop.org/software/${BPN}/releases/${BP}.tar.xz"
-SRC_URI[md5sum] = "9364b82e14cfcad881161aa7ea5257ae"
-SRC_URI[sha256sum] = "a1de5da60cbdbe91e5c9c10ac9afee6c3deb019e0cee5fdb9a99dddc245f83d9"
+SRC_URI[md5sum] = "29739e005f5887cf41639b8450f3c23f"
+SRC_URI[sha256sum] = "b26dbde79ea72c8c84fb7f9d870ffd857381d049a86d25e0038c4cef4c747309"
DEPENDS = "glib-2.0"
diff --git a/poky/meta/recipes-devtools/distcc/distcc_3.3.3.bb b/poky/meta/recipes-devtools/distcc/distcc_3.3.3.bb
index c52f136be..d92b9c304 100644
--- a/poky/meta/recipes-devtools/distcc/distcc_3.3.3.bb
+++ b/poky/meta/recipes-devtools/distcc/distcc_3.3.3.bb
@@ -17,6 +17,7 @@ RRECOMMENDS_${PN}-server = "avahi-daemon"
SRC_URI = "git://github.com/distcc/distcc.git \
file://fix-gnome.patch \
file://separatebuilddir.patch \
+ file://0001-Fix-build-with-gcc-10-which-defaults-to-fno-common-c.patch \
file://default \
file://distcc \
file://distcc.service"
diff --git a/poky/meta/recipes-devtools/distcc/files/0001-Fix-build-with-gcc-10-which-defaults-to-fno-common-c.patch b/poky/meta/recipes-devtools/distcc/files/0001-Fix-build-with-gcc-10-which-defaults-to-fno-common-c.patch
new file mode 100644
index 000000000..86c07c11f
--- /dev/null
+++ b/poky/meta/recipes-devtools/distcc/files/0001-Fix-build-with-gcc-10-which-defaults-to-fno-common-c.patch
@@ -0,0 +1,34 @@
+From 98530865795300008fe06bb647a6fc2dddfc7967 Mon Sep 17 00:00:00 2001
+From: Romain Geissler <romain.geissler@amadeus.com>
+Date: Mon, 27 Jan 2020 09:28:43 +0000
+Subject: [PATCH] Fix build with gcc 10 which defaults to -fno-common (cf
+ https://gcc.gnu.org/gcc-10/porting_to.html)
+
+This fixes the following link error I see when I use the latest gcc 10
+git branch:
+/opt/1A/toolchain/x86_64-v20.0.7/lib/gcc/x86_64-1a-linux-gnu/10.0.1/../../../../x86_64-1a-linux-gnu/bin/ld: src/serve.o:(.bss+0x0): multiple definition of `stats_text'; src/prefork.o:(.bss+0x0): first defined here
+/opt/1A/toolchain/x86_64-v20.0.7/lib/gcc/x86_64-1a-linux-gnu/10.0.1/../../../../x86_64-1a-linux-gnu/bin/ld: src/stats.o:(.data+0x20): multiple definition of `stats_text'; src/prefork.o:(.bss+0x0): first defined here
+collect2: error: ld returned 1 exit status
+
+Upstream-Status: Backport [https://github.com/distcc/distcc/pull/373]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/stats.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/stats.h b/src/stats.h
+index 9bde285..74d4690 100644
+--- a/src/stats.h
++++ b/src/stats.h
+@@ -33,7 +33,7 @@ enum stats_e { STATS_TCP_ACCEPT, STATS_REJ_BAD_REQ, STATS_REJ_OVERLOAD,
+ STATS_COMPILE_OK, STATS_COMPILE_ERROR, STATS_COMPILE_TIMEOUT,
+ STATS_CLI_DISCONN, STATS_OTHER, STATS_ENUM_MAX };
+
+-const char *stats_text[20];
++extern const char *stats_text[20];
+
+ int dcc_stats_init(void);
+ void dcc_stats_init_kid(void);
+--
+2.28.0
+
diff --git a/poky/meta/recipes-devtools/dnf/dnf_4.2.21.bb b/poky/meta/recipes-devtools/dnf/dnf_4.2.23.bb
index 44dab1d8a..8cfd4d0c8 100644
--- a/poky/meta/recipes-devtools/dnf/dnf_4.2.21.bb
+++ b/poky/meta/recipes-devtools/dnf/dnf_4.2.23.bb
@@ -17,7 +17,7 @@ SRC_URI = "git://github.com/rpm-software-management/dnf.git \
file://0001-dnf-write-the-log-lock-to-root.patch \
"
-SRCREV = "864c381baabf024c299dca75abfda96139b8f583"
+SRCREV = "126d861812f827285960592359615ed7cb195aac"
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/dosfstools/dosfstools_4.1.bb b/poky/meta/recipes-devtools/dosfstools/dosfstools_4.1.bb
index 23b883667..97ce44995 100644
--- a/poky/meta/recipes-devtools/dosfstools/dosfstools_4.1.bb
+++ b/poky/meta/recipes-devtools/dosfstools/dosfstools_4.1.bb
@@ -22,7 +22,7 @@ EXTRA_OECONF = "--without-udev --enable-compat-symlinks"
CFLAGS += "-D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
-BBCLASSEXTEND = "native"
+BBCLASSEXTEND = "native nativesdk"
# Add codepage437 to avoid error from `dosfsck -l`
RRECOMMENDS_${PN}_append_libc-glibc = " glibc-gconv-ibm437"
diff --git a/poky/meta/recipes-devtools/dpkg/dpkg.inc b/poky/meta/recipes-devtools/dpkg/dpkg.inc
index 1c3c585d7..04fe85c4a 100644
--- a/poky/meta/recipes-devtools/dpkg/dpkg.inc
+++ b/poky/meta/recipes-devtools/dpkg/dpkg.inc
@@ -7,7 +7,7 @@ DEPENDS_class-native = "bzip2-replacement-native zlib-native virtual/update-alte
RDEPENDS_${PN} = "${VIRTUAL-RUNTIME_update-alternatives} perl"
RDEPENDS_${PN}_class-native = ""
-UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/d/dpkg/"
+UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))"
inherit autotools gettext perlnative pkgconfig perl-version update-alternatives
@@ -30,6 +30,18 @@ EXTRA_OECONF_append_class-target = " --disable-update-alternatives DEB_HOST_ARCH
PACKAGECONFIG = "liblzma"
PACKAGECONFIG[liblzma] = "--with-liblzma,--without-liblzma, xz"
+
+#autotools.bbclass default AUTOTOOLS_AUXDIR is ${S}, we need to under ${S}/build-aux
+AUTOTOOLS_AUXDIR = "${S}/build-aux"
+
+do_configure_prepend () {
+ mkdir -p ${AUTOTOOLS_AUXDIR}
+ # autotools_do_configure updates po/Makefile.in.in, we also need
+ # update dselect/po and scripts/po
+ cp -f ${STAGING_DATADIR_NATIVE}/gettext/po/Makefile.in.in ${S}/dselect/po/
+ cp -f ${STAGING_DATADIR_NATIVE}/gettext/po/Makefile.in.in ${S}/scripts/po/
+}
+
do_install_append () {
if [ "${PN}" = "dpkg-native" ]; then
# update-alternatives doesn't have an offline mode
diff --git a/poky/meta/recipes-devtools/dpkg/dpkg/0001-build.c-ignore-return-of-1-from-tar-cf.patch b/poky/meta/recipes-devtools/dpkg/dpkg/0001-build.c-ignore-return-of-1-from-tar-cf.patch
new file mode 100644
index 000000000..ffe520c51
--- /dev/null
+++ b/poky/meta/recipes-devtools/dpkg/dpkg/0001-build.c-ignore-return-of-1-from-tar-cf.patch
@@ -0,0 +1,53 @@
+From 15b081cc8bead80c493ab83369ecb3345a24a3dc Mon Sep 17 00:00:00 2001
+From: Paul Eggleton <paul.eggleton@linux.microsoft.com>
+Date: Tue, 16 Jun 2020 03:57:25 +0000
+Subject: [PATCH] build.c: ignore return of 1 from tar -cf
+
+When running do_package_write_deb, we have trees of hardlinked files
+such as the dbg source files in ${PN}-dbg. If something makes another
+copy of one of those files (or deletes one), the number of links a file
+has changes and tar can notice this, e.g.:
+
+| DEBUG: Executing python function do_package_deb
+| dpkg-deb: building package `sed-ptest' in `/media/build1/poky/build/tmp/work/i586-poky-linux/sed/4.2.2-r0/deploy-debs/i586/sed-ptest_4.2.2-r0.3_i386.deb'.
+| tar: ./usr/lib/sed/ptest/testsuite/tst-regex2: file changed as we read it
+| dpkg-deb: error: subprocess tar -cf returned error exit status 1
+
+Tar returns an error of 1 when files 'change' and other errors codes
+in other error cases. We tweak dpkg-deb here so that it ignores an exit
+code of 1 from tar. The files don't really change (and we have locking in
+place to avoid that kind of issue).
+
+Upstream-Status: Inappropriate [OE specific]
+
+Original patch by RP 2015/3/27, rebased by Paul Eggleton
+
+Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
+
+---
+ dpkg-deb/build.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/dpkg-deb/build.c b/dpkg-deb/build.c
+index 8436839cd..6b44a36f7 100644
+--- a/dpkg-deb/build.c
++++ b/dpkg-deb/build.c
+@@ -434,6 +434,7 @@ tarball_pack(const char *dir, filenames_feed_func *tar_filenames_feeder,
+ {
+ int pipe_filenames[2], pipe_tarball[2];
+ pid_t pid_tar, pid_comp;
++ int rc;
+
+ /* Fork off a tar. We will feed it a list of filenames on stdin later. */
+ m_pipe(pipe_filenames);
+@@ -486,7 +487,9 @@ tarball_pack(const char *dir, filenames_feed_func *tar_filenames_feeder,
+ /* All done, clean up wait for tar and <compress> to finish their job. */
+ close(pipe_filenames[1]);
+ subproc_reap(pid_comp, _("<compress> from tar -cf"), 0);
+- subproc_reap(pid_tar, "tar -cf", 0);
++ rc = subproc_reap(pid_tar, "tar -cf", SUBPROC_RETERROR);
++ if (rc && rc != 1)
++ ohshite(_("subprocess %s returned error exit status %d"), "tar -cf", rc);
+ }
+
+ static time_t
diff --git a/poky/meta/recipes-devtools/dpkg/dpkg/tweak-options-require-tar-1.27.patch b/poky/meta/recipes-devtools/dpkg/dpkg/tweak-options-require-tar-1.27.patch
deleted file mode 100644
index e9119918b..000000000
--- a/poky/meta/recipes-devtools/dpkg/dpkg/tweak-options-require-tar-1.27.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-GNU tar >= 1.27 is required for --owner=NAME:ID and --group=NAME:ID. And fails
-to build .deb packages with error:
-
-| dpkg-deb: building package 'linux-libc-headers-dbg' in '.../tmp/work/i586-poky-linux/linux-libc-headers/4.19-r0/deploy-debs/i586/linux-libc-headers-dbg_ 4.19-r0.0_i386.deb'.
-| tar: root\:0: Invalid owner
-| tar: Error is not recoverable: exiting now
-| dpkg-deb: error: tar -cf subprocess returned error exit status 2
-
-Tweak tar options in dpkg-deb source code to make it work on old machines.
-
-Upstream-Status: Inappropriate [cross build specific]
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
----
-diff --git a/dpkg-deb/build.c b/dpkg-deb/build.c
-index 68d187511..86fe22e25 100644
---- a/dpkg-deb/build.c
-+++ b/dpkg-deb/build.c
-@@ -462,7 +462,7 @@ tarball_pack(const char *dir, filenames_feed_func *tar_filenames_feeder,
- if (options->mode)
- command_add_args(&cmd, "--mode", options->mode, NULL);
- if (options->root_owner_group)
-- command_add_args(&cmd, "--owner", "root:0", "--group", "root:0", NULL);
-+ command_add_args(&cmd, "--owner", "root", "--group", "root", NULL);
- command_add_args(&cmd, "--null", "--no-unquote", "--no-recursion",
- "-T", "-", NULL);
- command_exec(&cmd);
diff --git a/poky/meta/recipes-devtools/dpkg/dpkg_1.19.7.bb b/poky/meta/recipes-devtools/dpkg/dpkg_1.20.5.bb
index 50fe54dee..d97b69c0b 100644
--- a/poky/meta/recipes-devtools/dpkg/dpkg_1.19.7.bb
+++ b/poky/meta/recipes-devtools/dpkg/dpkg_1.20.5.bb
@@ -1,7 +1,7 @@
require dpkg.inc
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-SRC_URI = "${DEBIAN_MIRROR}/main/d/${BPN}/${BPN}_${PV}.tar.xz \
+SRC_URI = "git://salsa.debian.org/dpkg-team/dpkg.git;protocol=https \
file://noman.patch \
file://remove-tar-no-timestamp.patch \
file://arch_pm.patch \
@@ -15,9 +15,9 @@ SRC_URI = "${DEBIAN_MIRROR}/main/d/${BPN}/${BPN}_${PV}.tar.xz \
file://pager.patch \
file://0001-Add-support-for-riscv32-CPU.patch \
"
-SRC_URI_append_class-native = " \
- file://tweak-options-require-tar-1.27.patch \
-"
-SRC_URI[md5sum] = "60f57c5494e6dfa177504d47bfa0e383"
-SRC_URI[sha256sum] = "4c27fededf620c0aa522fff1a48577ba08144445341257502e7730f2b1a296e8"
+SRC_URI_append_class-native = " file://0001-build.c-ignore-return-of-1-from-tar-cf.patch"
+
+SRCREV = "823a67d67538b1b403a32d1fef40e6e228265566"
+
+S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-fix-up-check-for-hardlinks-always-false-if-inode-0xF.patch b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-fix-up-check-for-hardlinks-always-false-if-inode-0xF.patch
new file mode 100644
index 000000000..0e8cbad25
--- /dev/null
+++ b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-fix-up-check-for-hardlinks-always-false-if-inode-0xF.patch
@@ -0,0 +1,55 @@
+From dcb36fd007ddb32d8c5cfcf5e9ddb3d713d65396 Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Tue, 21 Jul 2020 09:43:03 +0800
+Subject: [PATCH] fix up check for hardlinks always false if inode > 0xFFFFFFFF
+
+Since commit [382ed4a1 e2fsck: use proper types for variables][1]
+applied, it used ext2_ino_t instead of ino_t for referencing inode
+numbers, but the type of is_hardlink's `ino' should not be instead,
+The ext2_ino_t is 32bit, if inode > 0xFFFFFFFF, its value will be
+truncated.
+
+Add a debug printf to show the value of inode, when it check for hardlink
+files, it will always return false if inode > 0xFFFFFFFF
+|--- a/misc/create_inode.c
+|+++ b/misc/create_inode.c
+|@@ -605,6 +605,7 @@ static int is_hardlink(struct hdlinks_s *hdlinks, dev_t dev, ext2_ino_t ino)
+| {
+| int i;
+|
+|+ printf("%s %d, %lX, %lX\n", __FUNCTION__, __LINE__, hdlinks->hdl[i].src_ino, ino);
+| for (i = 0; i < hdlinks->count; i++) {
+| if (hdlinks->hdl[i].src_dev == dev &&
+| hdlinks->hdl[i].src_ino == ino)
+
+Here is debug message:
+is_hardlink 608, 2913DB886, 913DB886
+
+The length of ext2_ino_t is 32bit (typedef __u32 __bitwise ext2_ino_t;),
+and ino_t is 64bit on 64bit system (such as x86-64), recover `ino' to ino_t.
+
+[1] https://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git/commit/?id=382ed4a1c2b60acb9db7631e86dda207bde6076e
+
+Upstream-Status: Submitted [https://github.com/tytso/e2fsprogs/pull/48]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ misc/create_inode.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/misc/create_inode.c b/misc/create_inode.c
+index e8d1df6b..837f3875 100644
+--- a/misc/create_inode.c
++++ b/misc/create_inode.c
+@@ -601,7 +601,7 @@ out:
+ return err;
+ }
+
+-static int is_hardlink(struct hdlinks_s *hdlinks, dev_t dev, ext2_ino_t ino)
++static int is_hardlink(struct hdlinks_s *hdlinks, dev_t dev, ino_t ino)
+ {
+ int i;
+
+--
+2.18.2
+
diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.45.6.bb b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.45.6.bb
index 4ad5b03ca..15054768d 100644
--- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.45.6.bb
+++ b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.45.6.bb
@@ -6,6 +6,7 @@ SRC_URI += "file://remove.ldconfig.call.patch \
file://mkdir_p.patch \
file://0001-configure.ac-correct-AM_GNU_GETTEXT.patch \
file://0001-intl-do-not-try-to-use-gettext-defines-that-no-longe.patch \
+ file://0001-fix-up-check-for-hardlinks-always-false-if-inode-0xF.patch \
"
SRC_URI_append_class-native = " file://e2fsprogs-fix-missing-check-for-permission-denied.patch \
diff --git a/poky/meta/recipes-devtools/elfutils/elfutils_0.179.bb b/poky/meta/recipes-devtools/elfutils/elfutils_0.180.bb
index 1da95ec1d..61e46a4ed 100644
--- a/poky/meta/recipes-devtools/elfutils/elfutils_0.179.bb
+++ b/poky/meta/recipes-devtools/elfutils/elfutils_0.180.bb
@@ -15,33 +15,20 @@ SRC_URI = "https://sourceware.org/elfutils/ftp/${PV}/${BP}.tar.bz2 \
file://0006-Fix-build-on-aarch64-musl.patch \
file://0001-libasm-may-link-with-libbz2-if-found.patch \
file://0001-libelf-elf_end.c-check-data_list.data.d.d_buf-before.patch \
- file://debian/hppa_backend.diff \
- file://debian/arm_backend.diff \
- file://debian/mips_backend.diff \
- file://debian/mips_readelf_w.patch \
- file://debian/kfreebsd_path.patch \
- file://debian/0001-Ignore-differences-between-mips-machine-identifiers.patch \
- file://debian/0002-Add-support-for-mips64-abis-in-mips_retval.c.patch \
- file://debian/0003-Add-mips-n64-relocation-format-hack.patch \
- file://debian/hurd_path.patch \
- file://debian/ignore_strmerge.diff \
- file://debian/disable_werror.patch \
- file://debian/testsuite-ignore-elflint.diff \
- file://debian/mips_cfi.patch \
- file://debian/0001-fix-compile-failure-with-debian-patches.patch \
file://0001-skip-the-test-when-gcc-not-deployed.patch \
file://0001-ppc_initreg.c-Incliude-asm-ptrace.h-for-pt_regs-defi.patch \
file://run-ptest \
file://ptest.patch \
+ file://0001-tests-Makefile.am-compile-test_nlist-with-standard-C.patch \
"
SRC_URI_append_libc-musl = " \
file://0001-musl-obstack-fts.patch \
file://0002-musl-libs.patch \
file://0003-musl-utils.patch \
file://0004-Fix-error-on-musl.patch \
+ file://0015-config-eu.am-do-not-use-Werror.patch \
"
-SRC_URI[md5sum] = "8ee56b371b5a7ea081284c44e5164600"
-SRC_URI[sha256sum] = "25a545566cbacaa37ae6222e58f1c48ea4570f53ba991886e2f5ce96e22a23a2"
+SRC_URI[sha256sum] = "b827b6e35c59d188ba97d7cf148fa8dc6f5c68eb6c5981888dfdbb758c0b569d"
inherit autotools gettext ptest pkgconfig
@@ -127,6 +114,8 @@ FILES_libdw = "${libdir}/libdw-${PV}.so ${libdir}/libdw.so.* ${libdir}/elfutils
# The package contains symlinks that trip up insane
INSANE_SKIP_${MLPREFIX}libdw = "dev-so"
+# The nlist binary in the tests uses explicitly minimal compiler flags
+INSANE_SKIP_${PN}-ptest += "ldflags"
# avoid stripping some generated binaries otherwise some of the tests such as test-nlist,
# run-strip-reloc.sh, run-strip-strmerge.sh and so on will fail
diff --git a/poky/meta/recipes-devtools/elfutils/files/0001-musl-obstack-fts.patch b/poky/meta/recipes-devtools/elfutils/files/0001-musl-obstack-fts.patch
index f751a2ecd..2450b0d6b 100644
--- a/poky/meta/recipes-devtools/elfutils/files/0001-musl-obstack-fts.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/0001-musl-obstack-fts.patch
@@ -1,7 +1,7 @@
-From 8ccf3d92b8766b53f203df7e01b489604ef851f3 Mon Sep 17 00:00:00 2001
+From 1ec7b2208803e0fbdcbe6c07b849e7dc4d9fa8a2 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Fri, 23 Aug 2019 10:17:25 +0800
-Subject: [PATCH 1/4] musl-obstack-fts
+Subject: [PATCH] musl-obstack-fts
Look for libfts and libobstack during configure, these
libraries are external to libc when using musl, whereas
@@ -20,10 +20,10 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
3 files changed, 58 insertions(+), 4 deletions(-)
diff --git a/configure.ac b/configure.ac
-index cad7b2b..6d4229b 100644
+index e9649c2..03643c8 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -529,6 +529,60 @@ else
+@@ -538,6 +538,60 @@ else
fi
AC_SUBST([argp_LDADD])
@@ -122,6 +122,3 @@ index 13d9bda..d5a4f7d 100644
unstrip_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD)
stack_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) $(demanglelib)
elfcompress_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD)
---
-2.17.1
-
diff --git a/poky/meta/recipes-devtools/elfutils/files/0001-tests-Makefile.am-compile-test_nlist-with-standard-C.patch b/poky/meta/recipes-devtools/elfutils/files/0001-tests-Makefile.am-compile-test_nlist-with-standard-C.patch
new file mode 100644
index 000000000..481b91238
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/0001-tests-Makefile.am-compile-test_nlist-with-standard-C.patch
@@ -0,0 +1,27 @@
+From 1ca86294ee5454592c9ad855e13080509d8a92d3 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Tue, 23 Jun 2020 07:49:35 +0000
+Subject: [PATCH] tests/Makefile.am: compile test_nlist with standard CFLAGS
+
+Otherwise, it will contain build paths in it and wont
+be reproducible.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ tests/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/Makefile.am b/tests/Makefile.am
+index 8048b69..d2b28a4 100644
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -86,7 +86,7 @@ backtrace-child-biarch$(EXEEXT): backtrace-child.c
+ test-nlist$(EXEEXT): test-nlist.c
+ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) \
+- $(test_nlist_CFLAGS) $(test_nlist_LDADD) -o $@ $<
++ $(CFLAGS) $(test_nlist_LDADD) -o $@ $<
+
+ TESTS = run-arextract.sh run-arsymtest.sh run-ar.sh newfile test-nlist \
+ update1 update2 update3 update4 \
diff --git a/poky/meta/recipes-devtools/elfutils/files/0002-musl-libs.patch b/poky/meta/recipes-devtools/elfutils/files/0002-musl-libs.patch
index cf1468386..d5ec0ec9e 100644
--- a/poky/meta/recipes-devtools/elfutils/files/0002-musl-libs.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/0002-musl-libs.patch
@@ -1,7 +1,7 @@
-From ea908c7009de5a208383abf4bec4c6b3d9519ca3 Mon Sep 17 00:00:00 2001
+From 9a57efb0f826a70ae360aa55504ee2de656b92b6 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Fri, 23 Aug 2019 10:18:47 +0800
-Subject: [PATCH 2/4] musl-libs
+Subject: [PATCH] musl-libs
Collection of fixes needed to compile libelf and other libraries
provided by elfutils for musl targets
@@ -104,7 +104,7 @@ index 7bcf61c..11dcc8b 100644
return elf_errmsg (error & 0xffff);
case OTHER_ERROR (LIBDW):
diff --git a/libdwfl/linux-kernel-modules.c b/libdwfl/linux-kernel-modules.c
-index d46ab5a..1c3faee 100644
+index 0434f1e..5afaee8 100644
--- a/libdwfl/linux-kernel-modules.c
+++ b/libdwfl/linux-kernel-modules.c
@@ -50,6 +50,7 @@
@@ -116,7 +116,7 @@ index d46ab5a..1c3faee 100644
/* If fts.h is included before config.h, its indirect inclusions may not
give us the right LFS aliases of these functions, so map them manually. */
diff --git a/libelf/elf.h b/libelf/elf.h
-index bed273d..be228e6 100644
+index 197b557..8e5b94c 100644
--- a/libelf/elf.h
+++ b/libelf/elf.h
@@ -21,7 +21,9 @@
@@ -130,9 +130,9 @@ index bed273d..be228e6 100644
/* Standard ELF types. */
-@@ -4029,6 +4031,7 @@ enum
- #define R_NDS32_TLS_TPOFF 102
- #define R_NDS32_TLS_DESC 119
+@@ -4103,6 +4105,7 @@ enum
+ #define R_ARC_TLS_LE_S9 0x4a
+ #define R_ARC_TLS_LE_32 0x4b
-__END_DECLS
-
@@ -140,6 +140,3 @@ index bed273d..be228e6 100644
+}
+#endif
#endif /* elf.h */
---
-2.17.1
-
diff --git a/poky/meta/recipes-devtools/elfutils/files/0003-musl-utils.patch b/poky/meta/recipes-devtools/elfutils/files/0003-musl-utils.patch
index 79c9d9ad5..4f28d9d02 100644
--- a/poky/meta/recipes-devtools/elfutils/files/0003-musl-utils.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/0003-musl-utils.patch
@@ -1,7 +1,7 @@
-From 94028b16e56c8eef1aa02dcc4da268a0e471b4ea Mon Sep 17 00:00:00 2001
+From 6923400b777d4ba6f040c4006413bf997326460f Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Fri, 23 Aug 2019 10:19:48 +0800
-Subject: [PATCH 3/4] musl-utils
+Subject: [PATCH] musl-utils
Provide missing defines which otherwise are available on glibc system headers
@@ -161,6 +161,3 @@ index 9b8c09a..1fb5063 100644
/* Name and version of program. */
ARGP_PROGRAM_VERSION_HOOK_DEF = print_version;
---
-2.17.1
-
diff --git a/poky/meta/recipes-devtools/elfutils/files/0004-Fix-error-on-musl.patch b/poky/meta/recipes-devtools/elfutils/files/0004-Fix-error-on-musl.patch
index 1b2f9ed98..481e4b38e 100644
--- a/poky/meta/recipes-devtools/elfutils/files/0004-Fix-error-on-musl.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/0004-Fix-error-on-musl.patch
@@ -1,7 +1,7 @@
-From 7ff8cbecde7455b530fa7894a78d2326799f2556 Mon Sep 17 00:00:00 2001
+From 48b769ab692c8f02c1ae467229fe3404f662098a Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Wed, 1 May 2019 22:15:03 +0100
-Subject: [PATCH 4/4] Fix error on musl:
+Subject: [PATCH] Fix error on musl:
| ../../elfutils-0.176/tests/elfstrmerge.c: In function 'main':
| ../../elfutils-0.176/tests/elfstrmerge.c:370:60: error: 'ALLPERMS' undeclared (first use in this function); did you mean 'EPERM'?
@@ -34,6 +34,3 @@ index ba0d68d..1d2447f 100644
/* The original ELF file. */
static int fd = -1;
static Elf *elf = NULL;
---
-2.17.1
-
diff --git a/poky/meta/recipes-devtools/elfutils/files/0015-config-eu.am-do-not-use-Werror.patch b/poky/meta/recipes-devtools/elfutils/files/0015-config-eu.am-do-not-use-Werror.patch
new file mode 100644
index 000000000..c3ae35726
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/0015-config-eu.am-do-not-use-Werror.patch
@@ -0,0 +1,36 @@
+From dce2187dd8f592316357b200ebbe8dbed9ee65cb Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Mon, 22 Jun 2020 21:35:16 +0000
+Subject: [PATCH] config/eu.am: do not use -Werror
+
+Due to re-definition of error() on musl, gcc starts throwing
+errors where none happen with glibc. Since upstream is not
+likely to be interested in musl builds, lets just disable
+Werror.
+
+Upstream-Status: Inappropriate [oe core specific]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ config/eu.am | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/config/eu.am b/config/eu.am
+index 6c3c444..3bc0dc9 100644
+--- a/config/eu.am
++++ b/config/eu.am
+@@ -73,7 +73,6 @@ AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \
+ -Wold-style-definition -Wstrict-prototypes -Wtrampolines \
+ $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \
+ $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \
+- $(if $($(*F)_no_Werror),,-Werror) \
+ $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \
+ $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
+ $(if $($(*F)_no_Wpacked_not_aligned),-Wno-packed-not-aligned,) \
+@@ -83,7 +82,6 @@ AM_CXXFLAGS = -std=c++11 -Wall -Wshadow \
+ -Wtrampolines \
+ $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \
+ $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \
+- $(if $($(*F)_no_Werror),,-Werror) \
+ $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \
+ $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
+ $(if $($(*F)_no_Wpacked_not_aligned),-Wno-packed-not-aligned,) \
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/0001-Ignore-differences-between-mips-machine-identifiers.patch b/poky/meta/recipes-devtools/elfutils/files/debian/0001-Ignore-differences-between-mips-machine-identifiers.patch
deleted file mode 100644
index a2983c577..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/debian/0001-Ignore-differences-between-mips-machine-identifiers.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 77cb4a53c270d5854d3af24f19547bc3de825233 Mon Sep 17 00:00:00 2001
-From: James Cowgill <james410@cowgill.org.uk>
-Date: Mon, 5 Jan 2015 15:16:58 +0000
-Subject: [PATCH 1/3] Ignore differences between mips machine identifiers
-
-Little endian binaries actually use EM_MIPS so you can't tell the endianness
-from the elf machine id. Also, the EM_MIPS_RS3_LE machine is dead anyway (the
-kernel will not load binaries containing it).
-
-Signed-off-by: James Cowgill <james410@cowgill.org.uk>
-
-Upstream-Status: Pending [from debian]
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- backends/mips_init.c | 6 +-----
- 1 file changed, 1 insertion(+), 5 deletions(-)
-
-Index: b/backends/mips_init.c
-===================================================================
---- a/backends/mips_init.c
-+++ b/backends/mips_init.c
-@@ -45,11 +45,7 @@ mips_init (Elf *elf __attribute__ ((unus
- return NULL;
-
- /* We handle it. */
-- if (machine == EM_MIPS)
-- eh->name = "MIPS R3000 big-endian";
-- else if (machine == EM_MIPS_RS3_LE)
-- eh->name = "MIPS R3000 little-endian";
--
-+ eh->name = "MIPS";
- mips_init_reloc (eh);
- HOOK (eh, reloc_simple_type);
- HOOK (eh, return_value_location);
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/0001-fix-compile-failure-with-debian-patches.patch b/poky/meta/recipes-devtools/elfutils/files/debian/0001-fix-compile-failure-with-debian-patches.patch
deleted file mode 100644
index 19a201506..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/debian/0001-fix-compile-failure-with-debian-patches.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From 3f3e7b16934ec58ab47d2bdc9982f54a55b07534 Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Wed, 21 Aug 2019 16:25:33 +0800
-Subject: [PATCH] fix compile failure with debian patches
-
-While applying debian patches, there is a compile failure
-...
-elfutils-0.177/backends/mips_init.c:48:5: error: 'Ebl' {aka 'struct ebl'} has no member named 'name'
-...
-
-Since upstream applied commit [b323391 libdwelf: Add dwelf_elf_e_machine_string
-and use it in readelf], it remove 'name' from 'struct ebl'
-
-Upstream-Status: Pending
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- backends/mips_init.c | 1 -
- backends/parisc_init.c | 1 -
- 2 files changed, 2 deletions(-)
-
-diff --git a/backends/mips_init.c b/backends/mips_init.c
-index bce5abe..e1c65c8 100644
---- a/backends/mips_init.c
-+++ b/backends/mips_init.c
-@@ -45,7 +45,6 @@ mips_init (Elf *elf __attribute__ ((unused)),
- return NULL;
-
- /* We handle it. */
-- eh->name = "MIPS";
- mips_init_reloc (eh);
- HOOK (eh, reloc_simple_type);
- HOOK (eh, return_value_location);
-diff --git a/backends/parisc_init.c b/backends/parisc_init.c
-index f1e401c..97b4a8c 100644
---- a/backends/parisc_init.c
-+++ b/backends/parisc_init.c
-@@ -56,7 +56,6 @@ parisc_init (Elf *elf __attribute__ ((unused)),
- pa64 = 1;
- }
- /* We handle it. */
-- eh->name = "PA-RISC";
- parisc_init_reloc (eh);
- HOOK (eh, reloc_simple_type);
- HOOK (eh, machine_flag_check);
---
-2.7.4
-
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/0002-Add-support-for-mips64-abis-in-mips_retval.c.patch b/poky/meta/recipes-devtools/elfutils/files/debian/0002-Add-support-for-mips64-abis-in-mips_retval.c.patch
deleted file mode 100644
index aee00cba1..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/debian/0002-Add-support-for-mips64-abis-in-mips_retval.c.patch
+++ /dev/null
@@ -1,171 +0,0 @@
-From fdaab18a65ed2529656baa64cb6169f34d7e507b Mon Sep 17 00:00:00 2001
-From: James Cowgill <james410@cowgill.org.uk>
-Date: Mon, 5 Jan 2015 15:17:01 +0000
-Subject: [PATCH 2/3] Add support for mips64 abis in mips_retval.c
-
-Signed-off-by: James Cowgill <james410@cowgill.org.uk>
-
-Upstream-Status: Pending [from debian]
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- backends/mips_retval.c | 104 ++++++++++++++++++++++++++++++++++++++++++++-----
- 1 file changed, 94 insertions(+), 10 deletions(-)
-
-diff --git a/backends/mips_retval.c b/backends/mips_retval.c
-index 33f12a7..d5c6ef0 100644
---- a/backends/mips_retval.c
-+++ b/backends/mips_retval.c
-@@ -91,6 +91,8 @@ enum mips_abi find_mips_abi(Elf *elf)
- default:
- if ((elf_flags & EF_MIPS_ABI2))
- return MIPS_ABI_N32;
-+ else if ((ehdr->e_ident[EI_CLASS] == ELFCLASS64))
-+ return MIPS_ABI_N64;
- }
-
- /* GCC creates a pseudo-section whose name describes the ABI. */
-@@ -195,6 +197,57 @@ static const Dwarf_Op loc_aggregate[] =
- };
- #define nloc_aggregate 1
-
-+/* Test if a struct member is a float */
-+static int is_float_child(Dwarf_Die *childdie)
-+{
-+ /* Test if this is actually a struct member */
-+ if (dwarf_tag(childdie) != DW_TAG_member)
-+ return 0;
-+
-+ /* Get type of member */
-+ Dwarf_Attribute attr_mem;
-+ Dwarf_Die child_type_mem;
-+ Dwarf_Die *child_typedie =
-+ dwarf_formref_die(dwarf_attr_integrate(childdie,
-+ DW_AT_type,
-+ &attr_mem), &child_type_mem);
-+
-+ if (dwarf_tag(child_typedie) != DW_TAG_base_type)
-+ return 0;
-+
-+ /* Get base subtype */
-+ Dwarf_Word encoding;
-+ if (dwarf_formudata (dwarf_attr_integrate (child_typedie,
-+ DW_AT_encoding,
-+ &attr_mem), &encoding) != 0)
-+ return 0;
-+
-+ return encoding == DW_ATE_float;
-+}
-+
-+/* Returns the number of fpregs which can be returned in the given struct */
-+static int get_struct_fpregs(Dwarf_Die *structtypedie)
-+{
-+ Dwarf_Die child_mem;
-+ int fpregs = 0;
-+
-+ /* Get first structure member */
-+ if (dwarf_child(structtypedie, &child_mem) != 0)
-+ return 0;
-+
-+ do
-+ {
-+ /* Ensure this register is a float */
-+ if (!is_float_child(&child_mem))
-+ return 0;
-+
-+ fpregs++;
-+ }
-+ while (dwarf_siblingof (&child_mem, &child_mem) == 0);
-+
-+ return fpregs;
-+}
-+
- int
- mips_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- {
-@@ -240,6 +293,7 @@ mips_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- tag = dwarf_tag (typedie);
- }
-
-+ Dwarf_Word size;
- switch (tag)
- {
- case -1:
-@@ -258,8 +312,6 @@ mips_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- case DW_TAG_enumeration_type:
- case DW_TAG_pointer_type:
- case DW_TAG_ptr_to_member_type:
-- {
-- Dwarf_Word size;
- if (dwarf_formudata (dwarf_attr_integrate (typedie, DW_AT_byte_size,
- &attr_mem), &size) != 0)
- {
-@@ -289,7 +341,7 @@ mips_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- if (size <= 4*regsize && abi == MIPS_ABI_O32)
- return nloc_fpregquad;
-
-- goto aggregate;
-+ goto large;
- }
- }
- *locp = ABI_LOC(loc_intreg, regsize);
-@@ -298,18 +350,50 @@ mips_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- if (size <= 2*regsize)
- return nloc_intregpair;
-
-- /* Else fall through. Shouldn't happen though (at least with gcc) */
-- }
-+ /* Else pass in memory. Shouldn't happen though (at least with gcc) */
-+ goto large;
-
- case DW_TAG_structure_type:
- case DW_TAG_class_type:
- case DW_TAG_union_type:
-- case DW_TAG_array_type:
-- aggregate:
-- /* XXX TODO: Can't handle structure return with other ABI's yet :-/ */
-- if ((abi != MIPS_ABI_O32) && (abi != MIPS_ABI_O64))
-- return -2;
-+ /* Handle special cases for structures <= 128 bytes in newer ABIs */
-+ if (abi == MIPS_ABI_EABI32 || abi == MIPS_ABI_EABI64 ||
-+ abi == MIPS_ABI_N32 || abi == MIPS_ABI_N64)
-+ {
-+ if (dwarf_aggregate_size (typedie, &size) == 0 && size <= 16)
-+ {
-+ /*
-+ * Special case in N64 / N32 -
-+ * structures containing only floats are returned in fp regs.
-+ * Everything else is returned in integer regs.
-+ */
-+ if (tag != DW_TAG_union_type &&
-+ (abi == MIPS_ABI_N32 || abi == MIPS_ABI_N64))
-+ {
-+ int num_fpregs = get_struct_fpregs(typedie);
-+ if (num_fpregs == 1 || num_fpregs == 2)
-+ {
-+ *locp = loc_fpreg;
-+ if (num_fpregs == 1)
-+ return nloc_fpreg;
-+ else
-+ return nloc_fpregpair;
-+ }
-+ }
-+
-+ *locp = loc_intreg;
-+ if (size <= 8)
-+ return nloc_intreg;
-+ else
-+ return nloc_intregpair;
-+ }
-+ }
-+
-+ /* Fallthrough to handle large types */
-
-+ case DW_TAG_array_type:
-+ large:
-+ /* Return large structures in memory */
- *locp = loc_aggregate;
- return nloc_aggregate;
- }
---
-2.1.4
-
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/0003-Add-mips-n64-relocation-format-hack.patch b/poky/meta/recipes-devtools/elfutils/files/debian/0003-Add-mips-n64-relocation-format-hack.patch
deleted file mode 100644
index c949e9653..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/debian/0003-Add-mips-n64-relocation-format-hack.patch
+++ /dev/null
@@ -1,229 +0,0 @@
-From 59d4b8c48e5040af7e02b34eb26ea602ec82a38e Mon Sep 17 00:00:00 2001
-From: James Cowgill <james410@cowgill.org.uk>
-Date: Mon, 5 Jan 2015 15:17:02 +0000
-Subject: [PATCH 3/3] Add mips n64 relocation format hack
-
-MIPSEL N64 ELF files use a slightly different format for storing relocation
-entries which is incompatible with the normal R_SYM / R_INFO macros.
-To workaround this, we rearrange the bytes in the relocation's r_info field
-when reading and writing the relocations.
-
-This patch also ensures that strip.c sets the correct value of e_machine
-before manipulating relocations so that these changes take effect.
-
-Signed-off-by: James Cowgill <james410@cowgill.org.uk>
-
-Upstream-Status: Pending [from debian]
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- libelf/gelf_getrel.c | 25 +++++++++++++++++++++++--
- libelf/gelf_getrela.c | 25 +++++++++++++++++++++++--
- libelf/gelf_update_rel.c | 20 +++++++++++++++++++-
- libelf/gelf_update_rela.c | 20 +++++++++++++++++++-
- src/strip.c | 17 +++++++++++++++++
- 5 files changed, 101 insertions(+), 6 deletions(-)
-
-Index: elfutils-0.175/libelf/gelf_getrel.c
-===================================================================
---- elfutils-0.175.orig/libelf/gelf_getrel.c
-+++ elfutils-0.175/libelf/gelf_getrel.c
-@@ -36,6 +36,7 @@
-
- #include "libelfP.h"
-
-+#define EF_MIPS_ABI 0x0000F000
-
- GElf_Rel *
- gelf_getrel (Elf_Data *data, int ndx, GElf_Rel *dst)
-@@ -89,8 +90,28 @@ gelf_getrel (Elf_Data *data, int ndx, GE
- result = NULL;
- }
- else
-- result = memcpy (dst, &((Elf64_Rel *) data_scn->d.d_buf)[ndx],
-- sizeof (Elf64_Rel));
-+ {
-+ GElf_Ehdr hdr;
-+ result = memcpy (dst, &((Elf64_Rel *) data_scn->d.d_buf)[ndx],
-+ sizeof (Elf64_Rel));
-+
-+ if (gelf_getehdr(scn->elf, &hdr) != NULL &&
-+ hdr.e_ident[EI_DATA] == ELFDATA2LSB &&
-+ hdr.e_machine == EM_MIPS &&
-+ (hdr.e_flags & EF_MIPS_ABI) == 0)
-+ {
-+ /*
-+ * The relocation format is mangled on MIPSEL N64
-+ * We'll adjust it so at least R_SYM will work on it
-+ */
-+ GElf_Xword r_info = dst->r_info;
-+ dst->r_info = (r_info << 32) |
-+ ((r_info >> 8) & 0xFF000000) |
-+ ((r_info >> 24) & 0x00FF0000) |
-+ ((r_info >> 40) & 0x0000FF00) |
-+ ((r_info >> 56) & 0x000000FF);
-+ }
-+ }
- }
-
- rwlock_unlock (scn->elf->lock);
-Index: elfutils-0.175/libelf/gelf_getrela.c
-===================================================================
---- elfutils-0.175.orig/libelf/gelf_getrela.c
-+++ elfutils-0.175/libelf/gelf_getrela.c
-@@ -36,6 +36,7 @@
-
- #include "libelfP.h"
-
-+#define EF_MIPS_ABI 0x0000F000
-
- GElf_Rela *
- gelf_getrela (Elf_Data *data, int ndx, GElf_Rela *dst)
-@@ -90,8 +91,28 @@ gelf_getrela (Elf_Data *data, int ndx, G
- result = NULL;
- }
- else
-- result = memcpy (dst, &((Elf64_Rela *) data_scn->d.d_buf)[ndx],
-- sizeof (Elf64_Rela));
-+ {
-+ GElf_Ehdr hdr;
-+ result = memcpy (dst, &((Elf64_Rela *) data_scn->d.d_buf)[ndx],
-+ sizeof (Elf64_Rela));
-+
-+ if (gelf_getehdr(scn->elf, &hdr) != NULL &&
-+ hdr.e_ident[EI_DATA] == ELFDATA2LSB &&
-+ hdr.e_machine == EM_MIPS &&
-+ (hdr.e_flags & EF_MIPS_ABI) == 0)
-+ {
-+ /*
-+ * The relocation format is mangled on MIPSEL N64
-+ * We'll adjust it so at least R_SYM will work on it
-+ */
-+ GElf_Xword r_info = dst->r_info;
-+ dst->r_info = (r_info << 32) |
-+ ((r_info >> 8) & 0xFF000000) |
-+ ((r_info >> 24) & 0x00FF0000) |
-+ ((r_info >> 40) & 0x0000FF00) |
-+ ((r_info >> 56) & 0x000000FF);
-+ }
-+ }
- }
-
- rwlock_unlock (scn->elf->lock);
-Index: elfutils-0.175/libelf/gelf_update_rel.c
-===================================================================
---- elfutils-0.175.orig/libelf/gelf_update_rel.c
-+++ elfutils-0.175/libelf/gelf_update_rel.c
-@@ -36,6 +36,7 @@
-
- #include "libelfP.h"
-
-+#define EF_MIPS_ABI 0x0000F000
-
- int
- gelf_update_rel (Elf_Data *dst, int ndx, GElf_Rel *src)
-@@ -86,6 +87,9 @@ gelf_update_rel (Elf_Data *dst, int ndx,
- }
- else
- {
-+ GElf_Ehdr hdr;
-+ GElf_Rel value = *src;
-+
- /* Check whether we have to resize the data buffer. */
- if (INVALID_NDX (ndx, Elf64_Rel, &data_scn->d))
- {
-@@ -93,7 +97,21 @@ gelf_update_rel (Elf_Data *dst, int ndx,
- goto out;
- }
-
-- ((Elf64_Rel *) data_scn->d.d_buf)[ndx] = *src;
-+ if (gelf_getehdr(scn->elf, &hdr) != NULL &&
-+ hdr.e_ident[EI_DATA] == ELFDATA2LSB &&
-+ hdr.e_machine == EM_MIPS &&
-+ (hdr.e_flags & EF_MIPS_ABI) == 0)
-+ {
-+ /* Undo the MIPSEL N64 hack from gelf_getrel */
-+ GElf_Xword r_info = value.r_info;
-+ value.r_info = (r_info >> 32) |
-+ ((r_info << 8) & 0x000000FF00000000) |
-+ ((r_info << 24) & 0x0000FF0000000000) |
-+ ((r_info << 40) & 0x00FF000000000000) |
-+ ((r_info << 56) & 0xFF00000000000000);
-+ }
-+
-+ ((Elf64_Rel *) data_scn->d.d_buf)[ndx] = value;
- }
-
- result = 1;
-Index: elfutils-0.175/libelf/gelf_update_rela.c
-===================================================================
---- elfutils-0.175.orig/libelf/gelf_update_rela.c
-+++ elfutils-0.175/libelf/gelf_update_rela.c
-@@ -36,6 +36,7 @@
-
- #include "libelfP.h"
-
-+#define EF_MIPS_ABI 0x0000F000
-
- int
- gelf_update_rela (Elf_Data *dst, int ndx, GElf_Rela *src)
-@@ -89,6 +90,9 @@ gelf_update_rela (Elf_Data *dst, int ndx
- }
- else
- {
-+ GElf_Ehdr hdr;
-+ GElf_Rela value = *src;
-+
- /* Check whether we have to resize the data buffer. */
- if (INVALID_NDX (ndx, Elf64_Rela, &data_scn->d))
- {
-@@ -96,7 +100,21 @@ gelf_update_rela (Elf_Data *dst, int ndx
- goto out;
- }
-
-- ((Elf64_Rela *) data_scn->d.d_buf)[ndx] = *src;
-+ if (gelf_getehdr(scn->elf, &hdr) != NULL &&
-+ hdr.e_ident[EI_DATA] == ELFDATA2LSB &&
-+ hdr.e_machine == EM_MIPS &&
-+ (hdr.e_flags & EF_MIPS_ABI) == 0)
-+ {
-+ /* Undo the MIPSEL N64 hack from gelf_getrel */
-+ GElf_Xword r_info = value.r_info;
-+ value.r_info = (r_info >> 32) |
-+ ((r_info << 8) & 0x000000FF00000000) |
-+ ((r_info << 24) & 0x0000FF0000000000) |
-+ ((r_info << 40) & 0x00FF000000000000) |
-+ ((r_info << 56) & 0xFF00000000000000);
-+ }
-+
-+ ((Elf64_Rela *) data_scn->d.d_buf)[ndx] = value;
- }
-
- result = 1;
-Index: elfutils-0.175/src/strip.c
-===================================================================
---- elfutils-0.175.orig/src/strip.c
-+++ elfutils-0.175/src/strip.c
-@@ -1062,6 +1062,23 @@ handle_elf (int fd, Elf *elf, const char
- goto fail;
- }
-
-+ /* Copy identity part of the ELF header now */
-+ newehdr = gelf_getehdr (newelf, &newehdr_mem);
-+ if (newehdr == NULL)
-+ INTERNAL_ERROR (fname);
-+
-+ memcpy (newehdr->e_ident, ehdr->e_ident, EI_NIDENT);
-+ newehdr->e_type = ehdr->e_type;
-+ newehdr->e_machine = ehdr->e_machine;
-+ newehdr->e_version = ehdr->e_version;
-+
-+ if (gelf_update_ehdr (newelf, newehdr) == 0)
-+ {
-+ error (0, 0, gettext ("%s: error while creating ELF header: %s"),
-+ fname, elf_errmsg (-1));
-+ return 1;
-+ }
-+
- /* Copy over the old program header if needed. */
- if (phnum > 0)
- {
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/arm_backend.diff b/poky/meta/recipes-devtools/elfutils/files/debian/arm_backend.diff
deleted file mode 100644
index ba0ce33bd..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/debian/arm_backend.diff
+++ /dev/null
@@ -1,624 +0,0 @@
-From 4e6fededb3d8c90694c44214c862ac216a69ecae Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Wed, 21 Aug 2019 16:50:33 +0800
-Subject: [PATCH] arm_backend
-
-Upstream-Status: Pending [from debian]
-Rebase to 0.177
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- backends/arm_init.c | 18 ++++-
- backends/arm_regs.c | 132 ++++++++++++++++++++++++++++++++++++
- backends/arm_retval.c | 43 +++++++++++-
- backends/libebl_arm.h | 9 +++
- libelf/elf.h | 11 +++
- tests/run-addrcfi.sh | 93 ++++++++++++++++++++++++-
- tests/run-allregs.sh | 95 +++++++++++++++++++++++++-
- tests/run-readelf-mixed-corenote.sh | 11 ++-
- 8 files changed, 400 insertions(+), 12 deletions(-)
- create mode 100644 backends/libebl_arm.h
-
-diff --git a/backends/arm_init.c b/backends/arm_init.c
-index af023f0..ea2bcb7 100644
---- a/backends/arm_init.c
-+++ b/backends/arm_init.c
-@@ -35,20 +35,31 @@
- #define RELOC_PREFIX R_ARM_
- #include "libebl_CPU.h"
-
-+#include "libebl_arm.h"
-+
- /* This defines the common reloc hooks based on arm_reloc.def. */
- #include "common-reloc.c"
-
-
- const char *
--arm_init (Elf *elf __attribute__ ((unused)),
-+arm_init (Elf *elf,
- GElf_Half machine __attribute__ ((unused)),
- Ebl *eh,
- size_t ehlen)
- {
-+ int soft_float = 0;
-+
- /* Check whether the Elf_BH object has a sufficent size. */
- if (ehlen < sizeof (Ebl))
- return NULL;
-
-+ if (elf) {
-+ GElf_Ehdr ehdr_mem;
-+ GElf_Ehdr *ehdr = gelf_getehdr (elf, &ehdr_mem);
-+ if (ehdr && (ehdr->e_flags & EF_ARM_SOFT_FLOAT))
-+ soft_float = 1;
-+ }
-+
- /* We handle it. */
- arm_init_reloc (eh);
- HOOK (eh, segment_type_name);
-@@ -59,7 +70,10 @@ arm_init (Elf *elf __attribute__ ((unused)),
- HOOK (eh, core_note);
- HOOK (eh, auxv_info);
- HOOK (eh, check_object_attribute);
-- HOOK (eh, return_value_location);
-+ if (soft_float)
-+ eh->return_value_location = arm_return_value_location_soft;
-+ else
-+ eh->return_value_location = arm_return_value_location_hard;
- HOOK (eh, abi_cfi);
- HOOK (eh, check_reloc_target_type);
- HOOK (eh, symbol_type_name);
-diff --git a/backends/arm_regs.c b/backends/arm_regs.c
-index a46a4c9..418c931 100644
---- a/backends/arm_regs.c
-+++ b/backends/arm_regs.c
-@@ -31,6 +31,7 @@
- #endif
-
- #include <string.h>
-+#include <stdio.h>
- #include <dwarf.h>
-
- #define BACKEND arm_
-@@ -76,6 +77,9 @@ arm_register_info (Ebl *ebl __attribute__ ((unused)),
- break;
-
- case 16 + 0 ... 16 + 7:
-+ /* AADWARF says that there are no registers in that range,
-+ * but gcc maps FPA registers here
-+ */
- regno += 96 - 16;
- FALLTHROUGH;
- case 96 + 0 ... 96 + 7:
-@@ -87,11 +91,139 @@ arm_register_info (Ebl *ebl __attribute__ ((unused)),
- namelen = 2;
- break;
-
-+ case 64 + 0 ... 64 + 9:
-+ *setname = "VFP";
-+ *bits = 32;
-+ *type = DW_ATE_float;
-+ name[0] = 's';
-+ name[1] = regno - 64 + '0';
-+ namelen = 2;
-+ break;
-+
-+ case 64 + 10 ... 64 + 31:
-+ *setname = "VFP";
-+ *bits = 32;
-+ *type = DW_ATE_float;
-+ name[0] = 's';
-+ name[1] = (regno - 64) / 10 + '0';
-+ name[2] = (regno - 64) % 10 + '0';
-+ namelen = 3;
-+ break;
-+
-+ case 104 + 0 ... 104 + 7:
-+ /* XXX TODO:
-+ * This can be either intel wireless MMX general purpose/control
-+ * registers or xscale accumulator, which have different usage.
-+ * We only have the intel wireless MMX here now.
-+ * The name needs to be changed for the xscale accumulator too. */
-+ *setname = "MMX";
-+ *type = DW_ATE_unsigned;
-+ *bits = 32;
-+ memcpy(name, "wcgr", 4);
-+ name[4] = regno - 104 + '0';
-+ namelen = 5;
-+ break;
-+
-+ case 112 + 0 ... 112 + 9:
-+ *setname = "MMX";
-+ *type = DW_ATE_unsigned;
-+ *bits = 64;
-+ name[0] = 'w';
-+ name[1] = 'r';
-+ name[2] = regno - 112 + '0';
-+ namelen = 3;
-+ break;
-+
-+ case 112 + 10 ... 112 + 15:
-+ *setname = "MMX";
-+ *type = DW_ATE_unsigned;
-+ *bits = 64;
-+ name[0] = 'w';
-+ name[1] = 'r';
-+ name[2] = '1';
-+ name[3] = regno - 112 - 10 + '0';
-+ namelen = 4;
-+ break;
-+
- case 128:
-+ *setname = "state";
- *type = DW_ATE_unsigned;
- return stpcpy (name, "spsr") + 1 - name;
-
-+ case 129:
-+ *setname = "state";
-+ *type = DW_ATE_unsigned;
-+ return stpcpy(name, "spsr_fiq") + 1 - name;
-+
-+ case 130:
-+ *setname = "state";
-+ *type = DW_ATE_unsigned;
-+ return stpcpy(name, "spsr_irq") + 1 - name;
-+
-+ case 131:
-+ *setname = "state";
-+ *type = DW_ATE_unsigned;
-+ return stpcpy(name, "spsr_abt") + 1 - name;
-+
-+ case 132:
-+ *setname = "state";
-+ *type = DW_ATE_unsigned;
-+ return stpcpy(name, "spsr_und") + 1 - name;
-+
-+ case 133:
-+ *setname = "state";
-+ *type = DW_ATE_unsigned;
-+ return stpcpy(name, "spsr_svc") + 1 - name;
-+
-+ case 144 ... 150:
-+ *setname = "integer";
-+ *type = DW_ATE_signed;
-+ *bits = 32;
-+ return sprintf(name, "r%d_usr", regno - 144 + 8) + 1;
-+
-+ case 151 ... 157:
-+ *setname = "integer";
-+ *type = DW_ATE_signed;
-+ *bits = 32;
-+ return sprintf(name, "r%d_fiq", regno - 151 + 8) + 1;
-+
-+ case 158 ... 159:
-+ *setname = "integer";
-+ *type = DW_ATE_signed;
-+ *bits = 32;
-+ return sprintf(name, "r%d_irq", regno - 158 + 13) + 1;
-+
-+ case 160 ... 161:
-+ *setname = "integer";
-+ *type = DW_ATE_signed;
-+ *bits = 32;
-+ return sprintf(name, "r%d_abt", regno - 160 + 13) + 1;
-+
-+ case 162 ... 163:
-+ *setname = "integer";
-+ *type = DW_ATE_signed;
-+ *bits = 32;
-+ return sprintf(name, "r%d_und", regno - 162 + 13) + 1;
-+
-+ case 164 ... 165:
-+ *setname = "integer";
-+ *type = DW_ATE_signed;
-+ *bits = 32;
-+ return sprintf(name, "r%d_svc", regno - 164 + 13) + 1;
-+
-+ case 192 ... 199:
-+ *setname = "MMX";
-+ *bits = 32;
-+ *type = DW_ATE_unsigned;
-+ name[0] = 'w';
-+ name[1] = 'c';
-+ name[2] = regno - 192 + '0';
-+ namelen = 3;
-+ break;
-+
- case 256 + 0 ... 256 + 9:
-+ /* XXX TODO: Neon also uses those registers and can contain
-+ * both float and integers */
- *setname = "VFP";
- *type = DW_ATE_float;
- *bits = 64;
-diff --git a/backends/arm_retval.c b/backends/arm_retval.c
-index 1c28f01..313e4eb 100644
---- a/backends/arm_retval.c
-+++ b/backends/arm_retval.c
-@@ -48,6 +48,13 @@ static const Dwarf_Op loc_intreg[] =
- #define nloc_intreg 1
- #define nloc_intregs(n) (2 * (n))
-
-+/* f1 */ /* XXX TODO: f0 can also have number 96 if program was compiled with -mabi=aapcs */
-+static const Dwarf_Op loc_fpreg[] =
-+ {
-+ { .atom = DW_OP_reg16 },
-+ };
-+#define nloc_fpreg 1
-+
- /* The return value is a structure and is actually stored in stack space
- passed in a hidden argument by the caller. But, the compiler
- helpfully returns the address of that space in r0. */
-@@ -58,8 +65,9 @@ static const Dwarf_Op loc_aggregate[] =
- #define nloc_aggregate 1
-
-
--int
--arm_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
-+static int
-+arm_return_value_location_ (Dwarf_Die *functypedie, const Dwarf_Op **locp,
-+ int soft_float)
- {
- /* Start with the function's type, and get the DW_AT_type attribute,
- which is the type of the return value. */
-@@ -98,6 +106,21 @@ arm_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- else
- return -1;
- }
-+ if (tag == DW_TAG_base_type)
-+ {
-+ Dwarf_Word encoding;
-+ if (dwarf_formudata (dwarf_attr_integrate (typedie, DW_AT_encoding,
-+ &attr_mem), &encoding) != 0)
-+ return -1;
-+
-+ if ((encoding == DW_ATE_float) && !soft_float)
-+ {
-+ *locp = loc_fpreg;
-+ if (size <= 8)
-+ return nloc_fpreg;
-+ goto aggregate;
-+ }
-+ }
- if (size <= 16)
- {
- intreg:
-@@ -106,6 +129,7 @@ arm_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- }
-
- aggregate:
-+ /* XXX TODO sometimes aggregates are returned in r0 (-mabi=aapcs) */
- *locp = loc_aggregate;
- return nloc_aggregate;
- }
-@@ -125,3 +149,18 @@ arm_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- DWARF and might be valid. */
- return -2;
- }
-+
-+/* return location for -mabi=apcs-gnu -msoft-float */
-+int
-+arm_return_value_location_soft (Dwarf_Die *functypedie, const Dwarf_Op **locp)
-+{
-+ return arm_return_value_location_ (functypedie, locp, 1);
-+}
-+
-+/* return location for -mabi=apcs-gnu -mhard-float (current default) */
-+int
-+arm_return_value_location_hard (Dwarf_Die *functypedie, const Dwarf_Op **locp)
-+{
-+ return arm_return_value_location_ (functypedie, locp, 0);
-+}
-+
-diff --git a/backends/libebl_arm.h b/backends/libebl_arm.h
-new file mode 100644
-index 0000000..c00770c
---- /dev/null
-+++ b/backends/libebl_arm.h
-@@ -0,0 +1,9 @@
-+#ifndef _LIBEBL_ARM_H
-+#define _LIBEBL_ARM_H 1
-+
-+#include <libdw.h>
-+
-+extern int arm_return_value_location_soft(Dwarf_Die *, const Dwarf_Op **locp);
-+extern int arm_return_value_location_hard(Dwarf_Die *, const Dwarf_Op **locp);
-+
-+#endif
-diff --git a/libelf/elf.h b/libelf/elf.h
-index 01648bd..05b7e7e 100644
---- a/libelf/elf.h
-+++ b/libelf/elf.h
-@@ -2690,6 +2690,9 @@ enum
- #define EF_ARM_EABI_VER4 0x04000000
- #define EF_ARM_EABI_VER5 0x05000000
-
-+/* EI_OSABI values */
-+#define ELFOSABI_ARM_AEABI 64 /* Contains symbol versioning. */
-+
- /* Additional symbol types for Thumb. */
- #define STT_ARM_TFUNC STT_LOPROC /* A Thumb function. */
- #define STT_ARM_16BIT STT_HIPROC /* A Thumb label. */
-@@ -2707,12 +2710,19 @@ enum
-
- /* Processor specific values for the Phdr p_type field. */
- #define PT_ARM_EXIDX (PT_LOPROC + 1) /* ARM unwind segment. */
-+#define PT_ARM_UNWIND PT_ARM_EXIDX
-
- /* Processor specific values for the Shdr sh_type field. */
- #define SHT_ARM_EXIDX (SHT_LOPROC + 1) /* ARM unwind section. */
- #define SHT_ARM_PREEMPTMAP (SHT_LOPROC + 2) /* Preemption details. */
- #define SHT_ARM_ATTRIBUTES (SHT_LOPROC + 3) /* ARM attributes section. */
-
-+/* Processor specific values for the Dyn d_tag field. */
-+#define DT_ARM_RESERVED1 (DT_LOPROC + 0)
-+#define DT_ARM_SYMTABSZ (DT_LOPROC + 1)
-+#define DT_ARM_PREEMTMAB (DT_LOPROC + 2)
-+#define DT_ARM_RESERVED2 (DT_LOPROC + 3)
-+#define DT_ARM_NUM 4
-
- /* AArch64 relocs. */
-
-@@ -3005,6 +3015,7 @@ enum
- TLS block (LDR, STR). */
- #define R_ARM_TLS_IE12GP 111 /* 12 bit GOT entry relative
- to GOT origin (LDR). */
-+/* 112 - 127 private range */
- #define R_ARM_ME_TOO 128 /* Obsolete. */
- #define R_ARM_THM_TLS_DESCSEQ 129
- #define R_ARM_THM_TLS_DESCSEQ16 129
-diff --git a/tests/run-addrcfi.sh b/tests/run-addrcfi.sh
-index 64fa24d..1c2aa4d 100755
---- a/tests/run-addrcfi.sh
-+++ b/tests/run-addrcfi.sh
-@@ -3554,6 +3554,38 @@ dwarf_cfi_addrframe (.eh_frame): no matching address range
- FPA reg21 (f5): undefined
- FPA reg22 (f6): undefined
- FPA reg23 (f7): undefined
-+ VFP reg64 (s0): undefined
-+ VFP reg65 (s1): undefined
-+ VFP reg66 (s2): undefined
-+ VFP reg67 (s3): undefined
-+ VFP reg68 (s4): undefined
-+ VFP reg69 (s5): undefined
-+ VFP reg70 (s6): undefined
-+ VFP reg71 (s7): undefined
-+ VFP reg72 (s8): undefined
-+ VFP reg73 (s9): undefined
-+ VFP reg74 (s10): undefined
-+ VFP reg75 (s11): undefined
-+ VFP reg76 (s12): undefined
-+ VFP reg77 (s13): undefined
-+ VFP reg78 (s14): undefined
-+ VFP reg79 (s15): undefined
-+ VFP reg80 (s16): undefined
-+ VFP reg81 (s17): undefined
-+ VFP reg82 (s18): undefined
-+ VFP reg83 (s19): undefined
-+ VFP reg84 (s20): undefined
-+ VFP reg85 (s21): undefined
-+ VFP reg86 (s22): undefined
-+ VFP reg87 (s23): undefined
-+ VFP reg88 (s24): undefined
-+ VFP reg89 (s25): undefined
-+ VFP reg90 (s26): undefined
-+ VFP reg91 (s27): undefined
-+ VFP reg92 (s28): undefined
-+ VFP reg93 (s29): undefined
-+ VFP reg94 (s30): undefined
-+ VFP reg95 (s31): undefined
- FPA reg96 (f0): undefined
- FPA reg97 (f1): undefined
- FPA reg98 (f2): undefined
-@@ -3562,7 +3594,66 @@ dwarf_cfi_addrframe (.eh_frame): no matching address range
- FPA reg101 (f5): undefined
- FPA reg102 (f6): undefined
- FPA reg103 (f7): undefined
-- integer reg128 (spsr): undefined
-+ MMX reg104 (wcgr0): undefined
-+ MMX reg105 (wcgr1): undefined
-+ MMX reg106 (wcgr2): undefined
-+ MMX reg107 (wcgr3): undefined
-+ MMX reg108 (wcgr4): undefined
-+ MMX reg109 (wcgr5): undefined
-+ MMX reg110 (wcgr6): undefined
-+ MMX reg111 (wcgr7): undefined
-+ MMX reg112 (wr0): undefined
-+ MMX reg113 (wr1): undefined
-+ MMX reg114 (wr2): undefined
-+ MMX reg115 (wr3): undefined
-+ MMX reg116 (wr4): undefined
-+ MMX reg117 (wr5): undefined
-+ MMX reg118 (wr6): undefined
-+ MMX reg119 (wr7): undefined
-+ MMX reg120 (wr8): undefined
-+ MMX reg121 (wr9): undefined
-+ MMX reg122 (wr10): undefined
-+ MMX reg123 (wr11): undefined
-+ MMX reg124 (wr12): undefined
-+ MMX reg125 (wr13): undefined
-+ MMX reg126 (wr14): undefined
-+ MMX reg127 (wr15): undefined
-+ state reg128 (spsr): undefined
-+ state reg129 (spsr_fiq): undefined
-+ state reg130 (spsr_irq): undefined
-+ state reg131 (spsr_abt): undefined
-+ state reg132 (spsr_und): undefined
-+ state reg133 (spsr_svc): undefined
-+ integer reg144 (r8_usr): undefined
-+ integer reg145 (r9_usr): undefined
-+ integer reg146 (r10_usr): undefined
-+ integer reg147 (r11_usr): undefined
-+ integer reg148 (r12_usr): undefined
-+ integer reg149 (r13_usr): undefined
-+ integer reg150 (r14_usr): undefined
-+ integer reg151 (r8_fiq): undefined
-+ integer reg152 (r9_fiq): undefined
-+ integer reg153 (r10_fiq): undefined
-+ integer reg154 (r11_fiq): undefined
-+ integer reg155 (r12_fiq): undefined
-+ integer reg156 (r13_fiq): undefined
-+ integer reg157 (r14_fiq): undefined
-+ integer reg158 (r13_irq): undefined
-+ integer reg159 (r14_irq): undefined
-+ integer reg160 (r13_abt): undefined
-+ integer reg161 (r14_abt): undefined
-+ integer reg162 (r13_und): undefined
-+ integer reg163 (r14_und): undefined
-+ integer reg164 (r13_svc): undefined
-+ integer reg165 (r14_svc): undefined
-+ MMX reg192 (wc0): undefined
-+ MMX reg193 (wc1): undefined
-+ MMX reg194 (wc2): undefined
-+ MMX reg195 (wc3): undefined
-+ MMX reg196 (wc4): undefined
-+ MMX reg197 (wc5): undefined
-+ MMX reg198 (wc6): undefined
-+ MMX reg199 (wc7): undefined
- VFP reg256 (d0): undefined
- VFP reg257 (d1): undefined
- VFP reg258 (d2): undefined
-diff --git a/tests/run-allregs.sh b/tests/run-allregs.sh
-index 1422bd6..dc0fc99 100755
---- a/tests/run-allregs.sh
-+++ b/tests/run-allregs.sh
-@@ -2672,7 +2672,28 @@ integer registers:
- 13: sp (sp), address 32 bits
- 14: lr (lr), address 32 bits
- 15: pc (pc), address 32 bits
-- 128: spsr (spsr), unsigned 32 bits
-+ 144: r8_usr (r8_usr), signed 32 bits
-+ 145: r9_usr (r9_usr), signed 32 bits
-+ 146: r10_usr (r10_usr), signed 32 bits
-+ 147: r11_usr (r11_usr), signed 32 bits
-+ 148: r12_usr (r12_usr), signed 32 bits
-+ 149: r13_usr (r13_usr), signed 32 bits
-+ 150: r14_usr (r14_usr), signed 32 bits
-+ 151: r8_fiq (r8_fiq), signed 32 bits
-+ 152: r9_fiq (r9_fiq), signed 32 bits
-+ 153: r10_fiq (r10_fiq), signed 32 bits
-+ 154: r11_fiq (r11_fiq), signed 32 bits
-+ 155: r12_fiq (r12_fiq), signed 32 bits
-+ 156: r13_fiq (r13_fiq), signed 32 bits
-+ 157: r14_fiq (r14_fiq), signed 32 bits
-+ 158: r13_irq (r13_irq), signed 32 bits
-+ 159: r14_irq (r14_irq), signed 32 bits
-+ 160: r13_abt (r13_abt), signed 32 bits
-+ 161: r14_abt (r14_abt), signed 32 bits
-+ 162: r13_und (r13_und), signed 32 bits
-+ 163: r14_und (r14_und), signed 32 bits
-+ 164: r13_svc (r13_svc), signed 32 bits
-+ 165: r14_svc (r14_svc), signed 32 bits
- FPA registers:
- 16: f0 (f0), float 96 bits
- 17: f1 (f1), float 96 bits
-@@ -2690,7 +2711,72 @@ FPA registers:
- 101: f5 (f5), float 96 bits
- 102: f6 (f6), float 96 bits
- 103: f7 (f7), float 96 bits
-+MMX registers:
-+ 104: wcgr0 (wcgr0), unsigned 32 bits
-+ 105: wcgr1 (wcgr1), unsigned 32 bits
-+ 106: wcgr2 (wcgr2), unsigned 32 bits
-+ 107: wcgr3 (wcgr3), unsigned 32 bits
-+ 108: wcgr4 (wcgr4), unsigned 32 bits
-+ 109: wcgr5 (wcgr5), unsigned 32 bits
-+ 110: wcgr6 (wcgr6), unsigned 32 bits
-+ 111: wcgr7 (wcgr7), unsigned 32 bits
-+ 112: wr0 (wr0), unsigned 64 bits
-+ 113: wr1 (wr1), unsigned 64 bits
-+ 114: wr2 (wr2), unsigned 64 bits
-+ 115: wr3 (wr3), unsigned 64 bits
-+ 116: wr4 (wr4), unsigned 64 bits
-+ 117: wr5 (wr5), unsigned 64 bits
-+ 118: wr6 (wr6), unsigned 64 bits
-+ 119: wr7 (wr7), unsigned 64 bits
-+ 120: wr8 (wr8), unsigned 64 bits
-+ 121: wr9 (wr9), unsigned 64 bits
-+ 122: wr10 (wr10), unsigned 64 bits
-+ 123: wr11 (wr11), unsigned 64 bits
-+ 124: wr12 (wr12), unsigned 64 bits
-+ 125: wr13 (wr13), unsigned 64 bits
-+ 126: wr14 (wr14), unsigned 64 bits
-+ 127: wr15 (wr15), unsigned 64 bits
-+ 192: wc0 (wc0), unsigned 32 bits
-+ 193: wc1 (wc1), unsigned 32 bits
-+ 194: wc2 (wc2), unsigned 32 bits
-+ 195: wc3 (wc3), unsigned 32 bits
-+ 196: wc4 (wc4), unsigned 32 bits
-+ 197: wc5 (wc5), unsigned 32 bits
-+ 198: wc6 (wc6), unsigned 32 bits
-+ 199: wc7 (wc7), unsigned 32 bits
- VFP registers:
-+ 64: s0 (s0), float 32 bits
-+ 65: s1 (s1), float 32 bits
-+ 66: s2 (s2), float 32 bits
-+ 67: s3 (s3), float 32 bits
-+ 68: s4 (s4), float 32 bits
-+ 69: s5 (s5), float 32 bits
-+ 70: s6 (s6), float 32 bits
-+ 71: s7 (s7), float 32 bits
-+ 72: s8 (s8), float 32 bits
-+ 73: s9 (s9), float 32 bits
-+ 74: s10 (s10), float 32 bits
-+ 75: s11 (s11), float 32 bits
-+ 76: s12 (s12), float 32 bits
-+ 77: s13 (s13), float 32 bits
-+ 78: s14 (s14), float 32 bits
-+ 79: s15 (s15), float 32 bits
-+ 80: s16 (s16), float 32 bits
-+ 81: s17 (s17), float 32 bits
-+ 82: s18 (s18), float 32 bits
-+ 83: s19 (s19), float 32 bits
-+ 84: s20 (s20), float 32 bits
-+ 85: s21 (s21), float 32 bits
-+ 86: s22 (s22), float 32 bits
-+ 87: s23 (s23), float 32 bits
-+ 88: s24 (s24), float 32 bits
-+ 89: s25 (s25), float 32 bits
-+ 90: s26 (s26), float 32 bits
-+ 91: s27 (s27), float 32 bits
-+ 92: s28 (s28), float 32 bits
-+ 93: s29 (s29), float 32 bits
-+ 94: s30 (s30), float 32 bits
-+ 95: s31 (s31), float 32 bits
- 256: d0 (d0), float 64 bits
- 257: d1 (d1), float 64 bits
- 258: d2 (d2), float 64 bits
-@@ -2723,6 +2809,13 @@ VFP registers:
- 285: d29 (d29), float 64 bits
- 286: d30 (d30), float 64 bits
- 287: d31 (d31), float 64 bits
-+state registers:
-+ 128: spsr (spsr), unsigned 32 bits
-+ 129: spsr_fiq (spsr_fiq), unsigned 32 bits
-+ 130: spsr_irq (spsr_irq), unsigned 32 bits
-+ 131: spsr_abt (spsr_abt), unsigned 32 bits
-+ 132: spsr_und (spsr_und), unsigned 32 bits
-+ 133: spsr_svc (spsr_svc), unsigned 32 bits
- EOF
-
- # See run-readelf-mixed-corenote.sh for instructions to regenerate
-diff --git a/tests/run-readelf-mixed-corenote.sh b/tests/run-readelf-mixed-corenote.sh
-index c960f1d..e4bf074 100755
---- a/tests/run-readelf-mixed-corenote.sh
-+++ b/tests/run-readelf-mixed-corenote.sh
-@@ -31,12 +31,11 @@ Note segment of 892 bytes at offset 0x274:
- pid: 11087, ppid: 11063, pgrp: 11087, sid: 11063
- utime: 0.000000, stime: 0.010000, cutime: 0.000000, cstime: 0.000000
- orig_r0: -1, fpvalid: 1
-- r0: 1 r1: -1091672508 r2: -1091672500
-- r3: 0 r4: 0 r5: 0
-- r6: 33728 r7: 0 r8: 0
-- r9: 0 r10: -1225703496 r11: -1091672844
-- r12: 0 sp: 0xbeee64f4 lr: 0xb6dc3f48
-- pc: 0x00008500 spsr: 0x60000010
-+ r0: 1 r1: -1091672508 r2: -1091672500 r3: 0
-+ r4: 0 r5: 0 r6: 33728 r7: 0
-+ r8: 0 r9: 0 r10: -1225703496 r11: -1091672844
-+ r12: 0 sp: 0xbeee64f4 lr: 0xb6dc3f48 pc: 0x00008500
-+ spsr: 0x60000010
- CORE 124 PRPSINFO
- state: 0, sname: R, zomb: 0, nice: 0, flag: 0x00400500
- uid: 0, gid: 0, pid: 11087, ppid: 11063, pgrp: 11087, sid: 11063
---
-2.7.4
-
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/disable_werror.patch b/poky/meta/recipes-devtools/elfutils/files/debian/disable_werror.patch
deleted file mode 100644
index bd98dae4b..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/debian/disable_werror.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-From: Helmut Grohne <helmut@subdivi.de>
-Subject: disable -Werror as it tends to break with new gcc versions
-Bug-Debian: https://bugs.debian.org/886004
-Last-Update: 2018-01-01
-
-Upstream-Status: Pending [from debian]
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
-Index: elfutils-0.176/config/eu.am
-===================================================================
---- elfutils-0.176.orig/config/eu.am
-+++ elfutils-0.176/config/eu.am
-@@ -73,7 +73,6 @@ AM_CFLAGS = -std=gnu99 -Wall -Wshadow -W
- -Wold-style-definition -Wstrict-prototypes -Wtrampolines \
- $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \
- $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \
-- $(if $($(*F)_no_Werror),,-Werror) \
- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \
- $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
- $(if $($(*F)_no_Wpacked_not_aligned),-Wno-packed-not-aligned,) \
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff b/poky/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff
deleted file mode 100644
index 53fa2f435..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff
+++ /dev/null
@@ -1,828 +0,0 @@
-From ffb811e18d7046d5bbe54ede5b1b7e14eaac0146 Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Wed, 21 Aug 2019 15:44:18 +0800
-Subject: [PATCH] hppa backend
-
-Rebase to 0.177
-Upstream-Status: Pending [from debian]
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
----
- backends/Makefile.am | 7 +-
- backends/libebl_parisc.h | 9 ++
- backends/parisc_init.c | 73 +++++++++++++
- backends/parisc_regs.c | 159 ++++++++++++++++++++++++++++
- backends/parisc_reloc.def | 128 +++++++++++++++++++++++
- backends/parisc_retval.c | 213 ++++++++++++++++++++++++++++++++++++++
- backends/parisc_symbol.c | 113 ++++++++++++++++++++
- libelf/elf.h | 11 ++
- 8 files changed, 711 insertions(+), 2 deletions(-)
- create mode 100644 backends/libebl_parisc.h
- create mode 100644 backends/parisc_init.c
- create mode 100644 backends/parisc_regs.c
- create mode 100644 backends/parisc_reloc.def
- create mode 100644 backends/parisc_retval.c
- create mode 100644 backends/parisc_symbol.c
-
-diff --git a/backends/Makefile.am b/backends/Makefile.am
-index f405212..4755f61 100644
---- a/backends/Makefile.am
-+++ b/backends/Makefile.am
-@@ -37,7 +37,9 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \
- noinst_LIBRARIES = libebl_backends.a libebl_backends_pic.a
-
- modules = i386 sh x86_64 ia64 alpha arm aarch64 sparc ppc ppc64 s390 \
-- tilegx m68k bpf riscv csky
-+ tilegx m68k bpf riscv csky parisc
-+
-+parisc_SRCS = parisc_init.c parisc_symbol.c parisc_regs.c parisc_retval.c
-
- i386_SRCS = i386_init.c i386_symbol.c i386_corenote.c i386_cfi.c \
- i386_retval.c i386_regs.c i386_auxv.c i386_syscall.c \
-@@ -102,7 +104,8 @@ libebl_backends_a_SOURCES = $(i386_SRCS) $(sh_SRCS) $(x86_64_SRCS) \
- $(ia64_SRCS) $(alpha_SRCS) $(arm_SRCS) \
- $(aarch64_SRCS) $(sparc_SRCS) $(ppc_SRCS) \
- $(ppc64_SRCS) $(s390_SRCS) $(tilegx_SRCS) \
-- $(m68k_SRCS) $(bpf_SRCS) $(riscv_SRCS) $(csky_SRCS)
-+ $(m68k_SRCS) $(bpf_SRCS) $(riscv_SRCS) $(csky_SRCS) \
-+ $(parisc_SRCS)
-
- libebl_backends_pic_a_SOURCES =
- am_libebl_backends_pic_a_OBJECTS = $(libebl_backends_a_SOURCES:.c=.os)
-diff --git a/backends/libebl_parisc.h b/backends/libebl_parisc.h
-new file mode 100644
-index 0000000..f473b79
---- /dev/null
-+++ b/backends/libebl_parisc.h
-@@ -0,0 +1,9 @@
-+#ifndef _LIBEBL_HPPA_H
-+#define _LIBEBL_HPPA_H 1
-+
-+#include <libdw.h>
-+
-+extern int parisc_return_value_location_32(Dwarf_Die *, const Dwarf_Op **locp);
-+extern int parisc_return_value_location_64(Dwarf_Die *, const Dwarf_Op **locp);
-+
-+#endif
-diff --git a/backends/parisc_init.c b/backends/parisc_init.c
-new file mode 100644
-index 0000000..f1e401c
---- /dev/null
-+++ b/backends/parisc_init.c
-@@ -0,0 +1,73 @@
-+/* Initialization of PA-RISC specific backend library.
-+ Copyright (C) 2002, 2005, 2006 Red Hat, Inc.
-+ This file is part of Red Hat elfutils.
-+ Written by Ulrich Drepper <drepper@redhat.com>, 2002.
-+
-+ Red Hat elfutils 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; version 2 of the License.
-+
-+ Red Hat elfutils 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 along
-+ with Red Hat elfutils; if not, write to the Free Software Foundation,
-+ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-+
-+ Red Hat elfutils is an included package of the Open Invention Network.
-+ An included package of the Open Invention Network is a package for which
-+ Open Invention Network licensees cross-license their patents. No patent
-+ license is granted, either expressly or impliedly, by designation as an
-+ included package. Should you wish to participate in the Open Invention
-+ Network licensing program, please visit www.openinventionnetwork.com
-+ <http://www.openinventionnetwork.com>. */
-+
-+#ifdef HAVE_CONFIG_H
-+# include <config.h>
-+#endif
-+
-+#define BACKEND parisc_
-+#define RELOC_PREFIX R_PARISC_
-+#include "libebl_CPU.h"
-+#include "libebl_parisc.h"
-+
-+/* This defines the common reloc hooks based on parisc_reloc.def. */
-+#include "common-reloc.c"
-+
-+
-+const char *
-+parisc_init (Elf *elf __attribute__ ((unused)),
-+ GElf_Half machine __attribute__ ((unused)),
-+ Ebl *eh,
-+ size_t ehlen)
-+{
-+ int pa64 = 0;
-+
-+ /* Check whether the Elf_BH object has a sufficent size. */
-+ if (ehlen < sizeof (Ebl))
-+ return NULL;
-+
-+ if (elf) {
-+ GElf_Ehdr ehdr_mem;
-+ GElf_Ehdr *ehdr = gelf_getehdr (elf, &ehdr_mem);
-+ if (ehdr && (ehdr->e_flags & EF_PARISC_WIDE))
-+ pa64 = 1;
-+ }
-+ /* We handle it. */
-+ eh->name = "PA-RISC";
-+ parisc_init_reloc (eh);
-+ HOOK (eh, reloc_simple_type);
-+ HOOK (eh, machine_flag_check);
-+ HOOK (eh, symbol_type_name);
-+ HOOK (eh, segment_type_name);
-+ HOOK (eh, section_type_name);
-+ HOOK (eh, register_info);
-+ if (pa64)
-+ eh->return_value_location = parisc_return_value_location_64;
-+ else
-+ eh->return_value_location = parisc_return_value_location_32;
-+
-+ return MODVERSION;
-+}
-diff --git a/backends/parisc_regs.c b/backends/parisc_regs.c
-new file mode 100644
-index 0000000..3895f8e
---- /dev/null
-+++ b/backends/parisc_regs.c
-@@ -0,0 +1,159 @@
-+/* Register names and numbers for PA-RISC DWARF.
-+ Copyright (C) 2005, 2006 Red Hat, Inc.
-+ This file is part of Red Hat elfutils.
-+
-+ Red Hat elfutils 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; version 2 of the License.
-+
-+ Red Hat elfutils 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 along
-+ with Red Hat elfutils; if not, write to the Free Software Foundation,
-+ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-+
-+ Red Hat elfutils is an included package of the Open Invention Network.
-+ An included package of the Open Invention Network is a package for which
-+ Open Invention Network licensees cross-license their patents. No patent
-+ license is granted, either expressly or impliedly, by designation as an
-+ included package. Should you wish to participate in the Open Invention
-+ Network licensing program, please visit www.openinventionnetwork.com
-+ <http://www.openinventionnetwork.com>. */
-+
-+#ifdef HAVE_CONFIG_H
-+# include <config.h>
-+#endif
-+
-+#include <string.h>
-+#include <dwarf.h>
-+
-+#define BACKEND parisc_
-+#include "libebl_CPU.h"
-+
-+ssize_t
-+parisc_register_info (Ebl *ebl, int regno, char *name, size_t namelen,
-+ const char **prefix, const char **setname,
-+ int *bits, int *type)
-+{
-+ int pa64 = 0;
-+
-+ if (ebl->elf) {
-+ GElf_Ehdr ehdr_mem;
-+ GElf_Ehdr *ehdr = gelf_getehdr (ebl->elf, &ehdr_mem);
-+ if (ehdr->e_flags & EF_PARISC_WIDE)
-+ pa64 = 1;
-+ }
-+
-+ int nregs = pa64 ? 127 : 128;
-+
-+ if (name == NULL)
-+ return nregs;
-+
-+ if (regno < 0 || regno >= nregs || namelen < 6)
-+ return -1;
-+
-+ *prefix = "%";
-+
-+ if (regno < 32)
-+ {
-+ *setname = "integer";
-+ *type = DW_ATE_signed;
-+ if (pa64)
-+ {
-+ *bits = 64;
-+ }
-+ else
-+ {
-+ *bits = 32;
-+ }
-+ }
-+ else if (regno == 32)
-+ {
-+ *setname = "special";
-+ if (pa64)
-+ {
-+ *bits = 6;
-+ }
-+ else
-+ {
-+ *bits = 5;
-+ }
-+ *type = DW_ATE_unsigned;
-+ }
-+ else
-+ {
-+ *setname = "FPU";
-+ *type = DW_ATE_float;
-+ if (pa64)
-+ {
-+ *bits = 64;
-+ }
-+ else
-+ {
-+ *bits = 32;
-+ }
-+ }
-+
-+ if (regno < 33) {
-+ switch (regno)
-+ {
-+ case 0 ... 9:
-+ name[0] = 'r';
-+ name[1] = regno + '0';
-+ namelen = 2;
-+ break;
-+ case 10 ... 31:
-+ name[0] = 'r';
-+ name[1] = regno / 10 + '0';
-+ name[2] = regno % 10 + '0';
-+ namelen = 3;
-+ break;
-+ case 32:
-+ *prefix = NULL;
-+ name[0] = 'S';
-+ name[1] = 'A';
-+ name[2] = 'R';
-+ namelen = 3;
-+ break;
-+ }
-+ }
-+ else {
-+ if (pa64 && ((regno - 72) % 2)) {
-+ *setname = NULL;
-+ return 0;
-+ }
-+
-+ switch (regno)
-+ {
-+ case 72 + 0 ... 72 + 11:
-+ name[0] = 'f';
-+ name[1] = 'r';
-+ name[2] = (regno + 8 - 72) / 2 + '0';
-+ namelen = 3;
-+ if ((regno + 8 - 72) % 2) {
-+ name[3] = 'R';
-+ namelen++;
-+ }
-+ break;
-+ case 72 + 12 ... 72 + 55:
-+ name[0] = 'f';
-+ name[1] = 'r';
-+ name[2] = (regno + 8 - 72) / 2 / 10 + '0';
-+ name[3] = (regno + 8 - 72) / 2 % 10 + '0';
-+ namelen = 4;
-+ if ((regno + 8 - 72) % 2) {
-+ name[4] = 'R';
-+ namelen++;
-+ }
-+ break;
-+ default:
-+ *setname = NULL;
-+ return 0;
-+ }
-+ }
-+ name[namelen++] = '\0';
-+ return namelen;
-+}
-diff --git a/backends/parisc_reloc.def b/backends/parisc_reloc.def
-new file mode 100644
-index 0000000..1f875ba
---- /dev/null
-+++ b/backends/parisc_reloc.def
-@@ -0,0 +1,128 @@
-+/* List the relocation types for PA-RISC. -*- C -*-
-+ Copyright (C) 2005 Red Hat, Inc.
-+ This file is part of Red Hat elfutils.
-+
-+ Red Hat elfutils 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; version 2 of the License.
-+
-+ Red Hat elfutils 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 along
-+ with Red Hat elfutils; if not, write to the Free Software Foundation,
-+ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-+
-+ Red Hat elfutils is an included package of the Open Invention Network.
-+ An included package of the Open Invention Network is a package for which
-+ Open Invention Network licensees cross-license their patents. No patent
-+ license is granted, either expressly or impliedly, by designation as an
-+ included package. Should you wish to participate in the Open Invention
-+ Network licensing program, please visit www.openinventionnetwork.com
-+ <http://www.openinventionnetwork.com>. */
-+
-+/* NAME, REL|EXEC|DYN */
-+
-+RELOC_TYPE (NONE, EXEC|DYN)
-+RELOC_TYPE (DIR32, REL|EXEC|DYN)
-+RELOC_TYPE (DIR21L, REL|EXEC|DYN)
-+RELOC_TYPE (DIR17R, REL)
-+RELOC_TYPE (DIR17F, REL)
-+RELOC_TYPE (DIR14R, REL|DYN)
-+RELOC_TYPE (PCREL32, REL)
-+RELOC_TYPE (PCREL21L, REL)
-+RELOC_TYPE (PCREL17R, REL)
-+RELOC_TYPE (PCREL17F, REL)
-+RELOC_TYPE (PCREL14R, REL|EXEC)
-+RELOC_TYPE (DPREL21L, REL)
-+RELOC_TYPE (DPREL14WR, REL)
-+RELOC_TYPE (DPREL14DR, REL)
-+RELOC_TYPE (DPREL14R, REL)
-+RELOC_TYPE (GPREL21L, 0)
-+RELOC_TYPE (GPREL14R, 0)
-+RELOC_TYPE (LTOFF21L, REL)
-+RELOC_TYPE (LTOFF14R, REL)
-+RELOC_TYPE (DLTIND14F, 0)
-+RELOC_TYPE (SETBASE, 0)
-+RELOC_TYPE (SECREL32, REL)
-+RELOC_TYPE (BASEREL21L, 0)
-+RELOC_TYPE (BASEREL17R, 0)
-+RELOC_TYPE (BASEREL14R, 0)
-+RELOC_TYPE (SEGBASE, 0)
-+RELOC_TYPE (SEGREL32, REL)
-+RELOC_TYPE (PLTOFF21L, 0)
-+RELOC_TYPE (PLTOFF14R, 0)
-+RELOC_TYPE (PLTOFF14F, 0)
-+RELOC_TYPE (LTOFF_FPTR32, 0)
-+RELOC_TYPE (LTOFF_FPTR21L, 0)
-+RELOC_TYPE (LTOFF_FPTR14R, 0)
-+RELOC_TYPE (FPTR64, 0)
-+RELOC_TYPE (PLABEL32, REL|DYN)
-+RELOC_TYPE (PCREL64, 0)
-+RELOC_TYPE (PCREL22C, 0)
-+RELOC_TYPE (PCREL22F, 0)
-+RELOC_TYPE (PCREL14WR, 0)
-+RELOC_TYPE (PCREL14DR, 0)
-+RELOC_TYPE (PCREL16F, 0)
-+RELOC_TYPE (PCREL16WF, 0)
-+RELOC_TYPE (PCREL16DF, 0)
-+RELOC_TYPE (DIR64, REL|DYN)
-+RELOC_TYPE (DIR14WR, REL)
-+RELOC_TYPE (DIR14DR, REL)
-+RELOC_TYPE (DIR16F, REL)
-+RELOC_TYPE (DIR16WF, REL)
-+RELOC_TYPE (DIR16DF, REL)
-+RELOC_TYPE (GPREL64, 0)
-+RELOC_TYPE (GPREL14WR, 0)
-+RELOC_TYPE (GPREL14DR, 0)
-+RELOC_TYPE (GPREL16F, 0)
-+RELOC_TYPE (GPREL16WF, 0)
-+RELOC_TYPE (GPREL16DF, 0)
-+RELOC_TYPE (LTOFF64, 0)
-+RELOC_TYPE (LTOFF14WR, 0)
-+RELOC_TYPE (LTOFF14DR, 0)
-+RELOC_TYPE (LTOFF16F, 0)
-+RELOC_TYPE (LTOFF16WF, 0)
-+RELOC_TYPE (LTOFF16DF, 0)
-+RELOC_TYPE (SECREL64, 0)
-+RELOC_TYPE (BASEREL14WR, 0)
-+RELOC_TYPE (BASEREL14DR, 0)
-+RELOC_TYPE (SEGREL64, 0)
-+RELOC_TYPE (PLTOFF14WR, 0)
-+RELOC_TYPE (PLTOFF14DR, 0)
-+RELOC_TYPE (PLTOFF16F, 0)
-+RELOC_TYPE (PLTOFF16WF, 0)
-+RELOC_TYPE (PLTOFF16DF, 0)
-+RELOC_TYPE (LTOFF_FPTR64, 0)
-+RELOC_TYPE (LTOFF_FPTR14WR, 0)
-+RELOC_TYPE (LTOFF_FPTR14DR, 0)
-+RELOC_TYPE (LTOFF_FPTR16F, 0)
-+RELOC_TYPE (LTOFF_FPTR16WF, 0)
-+RELOC_TYPE (LTOFF_FPTR16DF, 0)
-+RELOC_TYPE (COPY, EXEC)
-+RELOC_TYPE (IPLT, EXEC|DYN)
-+RELOC_TYPE (EPLT, 0)
-+RELOC_TYPE (TPREL32, DYN)
-+RELOC_TYPE (TPREL21L, 0)
-+RELOC_TYPE (TPREL14R, 0)
-+RELOC_TYPE (LTOFF_TP21L, 0)
-+RELOC_TYPE (LTOFF_TP14R, 0)
-+RELOC_TYPE (LTOFF_TP14F, 0)
-+RELOC_TYPE (TPREL64, 0)
-+RELOC_TYPE (TPREL14WR, 0)
-+RELOC_TYPE (TPREL14DR, 0)
-+RELOC_TYPE (TPREL16F, 0)
-+RELOC_TYPE (TPREL16WF, 0)
-+RELOC_TYPE (TPREL16DF, 0)
-+RELOC_TYPE (LTOFF_TP64, 0)
-+RELOC_TYPE (LTOFF_TP14WR, 0)
-+RELOC_TYPE (LTOFF_TP14DR, 0)
-+RELOC_TYPE (LTOFF_TP16F, 0)
-+RELOC_TYPE (LTOFF_TP16WF, 0)
-+RELOC_TYPE (LTOFF_TP16DF, 0)
-+RELOC_TYPE (TLS_DTPMOD32, DYN)
-+RELOC_TYPE (TLS_DTPMOD64, DYN)
-+
-+#define NO_RELATIVE_RELOC 1
-diff --git a/backends/parisc_retval.c b/backends/parisc_retval.c
-new file mode 100644
-index 0000000..df7ec3a
---- /dev/null
-+++ b/backends/parisc_retval.c
-@@ -0,0 +1,213 @@
-+/* Function return value location for Linux/PA-RISC ABI.
-+ Copyright (C) 2005 Red Hat, Inc.
-+ This file is part of Red Hat elfutils.
-+
-+ Red Hat elfutils 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; version 2 of the License.
-+
-+ Red Hat elfutils 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 along
-+ with Red Hat elfutils; if not, write to the Free Software Foundation,
-+ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-+
-+ Red Hat elfutils is an included package of the Open Invention Network.
-+ An included package of the Open Invention Network is a package for which
-+ Open Invention Network licensees cross-license their patents. No patent
-+ license is granted, either expressly or impliedly, by designation as an
-+ included package. Should you wish to participate in the Open Invention
-+ Network licensing program, please visit www.openinventionnetwork.com
-+ <http://www.openinventionnetwork.com>. */
-+
-+#ifdef HAVE_CONFIG_H
-+# include <config.h>
-+#endif
-+
-+#include <assert.h>
-+#include <dwarf.h>
-+
-+#define BACKEND parisc_
-+#include "libebl_CPU.h"
-+#include "libebl_parisc.h"
-+
-+/* %r28, or pair %r28, %r29. */
-+static const Dwarf_Op loc_intreg32[] =
-+ {
-+ { .atom = DW_OP_reg28 }, { .atom = DW_OP_piece, .number = 4 },
-+ { .atom = DW_OP_reg29 }, { .atom = DW_OP_piece, .number = 4 },
-+ };
-+
-+static const Dwarf_Op loc_intreg[] =
-+ {
-+ { .atom = DW_OP_reg28 }, { .atom = DW_OP_piece, .number = 8 },
-+ { .atom = DW_OP_reg29 }, { .atom = DW_OP_piece, .number = 8 },
-+ };
-+#define nloc_intreg 1
-+#define nloc_intregpair 4
-+
-+/* %fr4L, or pair %fr4L, %fr4R on pa-32 */
-+static const Dwarf_Op loc_fpreg32[] =
-+ {
-+ { .atom = DW_OP_regx, .number = 72 }, { .atom = DW_OP_piece, .number = 4 },
-+ { .atom = DW_OP_regx, .number = 73 }, { .atom = DW_OP_piece, .number = 4 },
-+ };
-+#define nloc_fpreg32 2
-+#define nloc_fpregpair32 4
-+
-+/* $fr4 */
-+static const Dwarf_Op loc_fpreg[] =
-+ {
-+ { .atom = DW_OP_regx, .number = 72 },
-+ };
-+#define nloc_fpreg 1
-+
-+#if 0
-+/* The return value is a structure and is actually stored in stack space
-+ passed in a hidden argument by the caller. Address of the location is stored
-+ in %r28 before function call, but it may be changed by function. */
-+static const Dwarf_Op loc_aggregate[] =
-+ {
-+ { .atom = DW_OP_breg28 },
-+ };
-+#define nloc_aggregate 1
-+#endif
-+
-+static int
-+parisc_return_value_location_ (Dwarf_Die *functypedie, const Dwarf_Op **locp, int pa64)
-+{
-+ Dwarf_Word regsize = pa64 ? 8 : 4;
-+
-+ /* Start with the function's type, and get the DW_AT_type attribute,
-+ which is the type of the return value. */
-+
-+ Dwarf_Attribute attr_mem;
-+ Dwarf_Attribute *attr = dwarf_attr_integrate (functypedie, DW_AT_type, &attr_mem);
-+ if (attr == NULL)
-+ /* The function has no return value, like a `void' function in C. */
-+ return 0;
-+
-+ Dwarf_Die die_mem;
-+ Dwarf_Die *typedie = dwarf_formref_die (attr, &die_mem);
-+ int tag = dwarf_tag (typedie);
-+
-+ /* Follow typedefs and qualifiers to get to the actual type. */
-+ while (tag == DW_TAG_typedef
-+ || tag == DW_TAG_const_type || tag == DW_TAG_volatile_type
-+ || tag == DW_TAG_restrict_type)
-+ {
-+ attr = dwarf_attr_integrate (typedie, DW_AT_type, &attr_mem);
-+ typedie = dwarf_formref_die (attr, &die_mem);
-+ tag = dwarf_tag (typedie);
-+ }
-+
-+ switch (tag)
-+ {
-+ case -1:
-+ return -1;
-+
-+ case DW_TAG_subrange_type:
-+ if (! dwarf_hasattr_integrate (typedie, DW_AT_byte_size))
-+ {
-+ attr = dwarf_attr_integrate (typedie, DW_AT_type, &attr_mem);
-+ typedie = dwarf_formref_die (attr, &die_mem);
-+ tag = dwarf_tag (typedie);
-+ }
-+ /* Fall through. */
-+
-+ case DW_TAG_base_type:
-+ case DW_TAG_enumeration_type:
-+ case DW_TAG_pointer_type:
-+ case DW_TAG_ptr_to_member_type:
-+ {
-+ Dwarf_Word size;
-+ if (dwarf_formudata (dwarf_attr_integrate (typedie, DW_AT_byte_size,
-+ &attr_mem), &size) != 0)
-+ {
-+ if (tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type)
-+ size = 4;
-+ else
-+ return -1;
-+ }
-+ if (tag == DW_TAG_base_type)
-+ {
-+ Dwarf_Word encoding;
-+ if (dwarf_formudata (dwarf_attr_integrate (typedie, DW_AT_encoding,
-+ &attr_mem), &encoding) != 0)
-+ return -1;
-+
-+ if (encoding == DW_ATE_float)
-+ {
-+ if (pa64) {
-+ *locp = loc_fpreg;
-+ if (size <= 8)
-+ return nloc_fpreg;
-+ }
-+ else {
-+ *locp = loc_fpreg32;
-+ if (size <= 4)
-+ return nloc_fpreg32;
-+ else if (size <= 8)
-+ return nloc_fpregpair32;
-+ }
-+ goto aggregate;
-+ }
-+ }
-+ if (pa64)
-+ *locp = loc_intreg;
-+ else
-+ *locp = loc_intreg32;
-+ if (size <= regsize)
-+ return nloc_intreg;
-+ if (size <= 2 * regsize)
-+ return nloc_intregpair;
-+
-+ /* Else fall through. */
-+ }
-+
-+ case DW_TAG_structure_type:
-+ case DW_TAG_class_type:
-+ case DW_TAG_union_type:
-+ case DW_TAG_array_type:
-+ aggregate: {
-+ Dwarf_Word size;
-+ if (dwarf_aggregate_size (typedie, &size) != 0)
-+ return -1;
-+ if (pa64)
-+ *locp = loc_intreg;
-+ else
-+ *locp = loc_intreg32;
-+ if (size <= regsize)
-+ return nloc_intreg;
-+ if (size <= 2 * regsize)
-+ return nloc_intregpair;
-+#if 0
-+ /* there should be some way to know this location... But I do not see it. */
-+ *locp = loc_aggregate;
-+ return nloc_aggregate;
-+#endif
-+ /* fall through. */
-+ }
-+ }
-+
-+ /* XXX We don't have a good way to return specific errors from ebl calls.
-+ This value means we do not understand the type, but it is well-formed
-+ DWARF and might be valid. */
-+ return -2;
-+}
-+
-+int
-+parisc_return_value_location_32 (Dwarf_Die *functypedie, const Dwarf_Op **locp)
-+{
-+ return parisc_return_value_location_ (functypedie, locp, 0);
-+}
-+
-+int
-+parisc_return_value_location_64 (Dwarf_Die *functypedie, const Dwarf_Op **locp)
-+{
-+ return parisc_return_value_location_ (functypedie, locp, 1);
-+}
-+
-diff --git a/backends/parisc_symbol.c b/backends/parisc_symbol.c
-new file mode 100644
-index 0000000..5754bd8
---- /dev/null
-+++ b/backends/parisc_symbol.c
-@@ -0,0 +1,113 @@
-+/* PA-RISC specific symbolic name handling.
-+ Copyright (C) 2002, 2005 Red Hat, Inc.
-+ This file is part of Red Hat elfutils.
-+ Written by Ulrich Drepper <drepper@redhat.com>, 2002.
-+
-+ Red Hat elfutils 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; version 2 of the License.
-+
-+ Red Hat elfutils 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 along
-+ with Red Hat elfutils; if not, write to the Free Software Foundation,
-+ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-+
-+ Red Hat elfutils is an included package of the Open Invention Network.
-+ An included package of the Open Invention Network is a package for which
-+ Open Invention Network licensees cross-license their patents. No patent
-+ license is granted, either expressly or impliedly, by designation as an
-+ included package. Should you wish to participate in the Open Invention
-+ Network licensing program, please visit www.openinventionnetwork.com
-+ <http://www.openinventionnetwork.com>. */
-+
-+#ifdef HAVE_CONFIG_H
-+# include <config.h>
-+#endif
-+
-+#include <elf.h>
-+#include <stddef.h>
-+
-+#define BACKEND parisc_
-+#include "libebl_CPU.h"
-+
-+const char *
-+parisc_segment_type_name (int segment, char *buf __attribute__ ((unused)),
-+ size_t len __attribute__ ((unused)))
-+{
-+ switch (segment)
-+ {
-+ case PT_PARISC_ARCHEXT:
-+ return "PARISC_ARCHEXT";
-+ case PT_PARISC_UNWIND:
-+ return "PARISC_UNWIND";
-+ default:
-+ break;
-+ }
-+ return NULL;
-+}
-+
-+/* Return symbolic representation of symbol type. */
-+const char *
-+parisc_symbol_type_name(int symbol, char *buf __attribute__ ((unused)),
-+ size_t len __attribute__ ((unused)))
-+{
-+ if (symbol == STT_PARISC_MILLICODE)
-+ return "PARISC_MILLI";
-+ return NULL;
-+}
-+
-+/* Return symbolic representation of section type. */
-+const char *
-+parisc_section_type_name (int type,
-+ char *buf __attribute__ ((unused)),
-+ size_t len __attribute__ ((unused)))
-+{
-+ switch (type)
-+ {
-+ case SHT_PARISC_EXT:
-+ return "PARISC_EXT";
-+ case SHT_PARISC_UNWIND:
-+ return "PARISC_UNWIND";
-+ case SHT_PARISC_DOC:
-+ return "PARISC_DOC";
-+ }
-+
-+ return NULL;
-+}
-+
-+/* Check whether machine flags are valid. */
-+bool
-+parisc_machine_flag_check (GElf_Word flags)
-+{
-+ if (flags &~ (EF_PARISC_TRAPNIL | EF_PARISC_EXT | EF_PARISC_LSB |
-+ EF_PARISC_WIDE | EF_PARISC_NO_KABP |
-+ EF_PARISC_LAZYSWAP | EF_PARISC_ARCH))
-+ return 0;
-+
-+ GElf_Word arch = flags & EF_PARISC_ARCH;
-+
-+ return ((arch == EFA_PARISC_1_0) || (arch == EFA_PARISC_1_1) ||
-+ (arch == EFA_PARISC_2_0));
-+}
-+
-+/* Check for the simple reloc types. */
-+Elf_Type
-+parisc_reloc_simple_type (Ebl *ebl __attribute__ ((unused)), int type,
-+ int *addsub __attribute__ ((unused)))
-+{
-+ switch (type)
-+ {
-+ case R_PARISC_DIR64:
-+ case R_PARISC_SECREL64:
-+ return ELF_T_XWORD;
-+ case R_PARISC_DIR32:
-+ case R_PARISC_SECREL32:
-+ return ELF_T_WORD;
-+ default:
-+ return ELF_T_NUM;
-+ }
-+}
-diff --git a/libelf/elf.h b/libelf/elf.h
-index 01648bd..218ceb2 100644
---- a/libelf/elf.h
-+++ b/libelf/elf.h
-@@ -2162,16 +2162,24 @@ enum
- #define R_PARISC_PCREL17F 12 /* 17 bits of rel. address. */
- #define R_PARISC_PCREL14R 14 /* Right 14 bits of rel. address. */
- #define R_PARISC_DPREL21L 18 /* Left 21 bits of rel. address. */
-+#define R_PARISC_DPREL14WR 19
-+#define R_PARISC_DPREL14DR 20
- #define R_PARISC_DPREL14R 22 /* Right 14 bits of rel. address. */
- #define R_PARISC_GPREL21L 26 /* GP-relative, left 21 bits. */
- #define R_PARISC_GPREL14R 30 /* GP-relative, right 14 bits. */
- #define R_PARISC_LTOFF21L 34 /* LT-relative, left 21 bits. */
- #define R_PARISC_LTOFF14R 38 /* LT-relative, right 14 bits. */
-+#define R_PARISC_DLTIND14F 39
-+#define R_PARISC_SETBASE 40
- #define R_PARISC_SECREL32 41 /* 32 bits section rel. address. */
-+#define R_PARISC_BASEREL21L 42
-+#define R_PARISC_BASEREL17R 43
-+#define R_PARISC_BASEREL14R 46
- #define R_PARISC_SEGBASE 48 /* No relocation, set segment base. */
- #define R_PARISC_SEGREL32 49 /* 32 bits segment rel. address. */
- #define R_PARISC_PLTOFF21L 50 /* PLT rel. address, left 21 bits. */
- #define R_PARISC_PLTOFF14R 54 /* PLT rel. address, right 14 bits. */
-+#define R_PARISC_PLTOFF14F 55
- #define R_PARISC_LTOFF_FPTR32 57 /* 32 bits LT-rel. function pointer. */
- #define R_PARISC_LTOFF_FPTR21L 58 /* LT-rel. fct ptr, left 21 bits. */
- #define R_PARISC_LTOFF_FPTR14R 62 /* LT-rel. fct ptr, right 14 bits. */
-@@ -2180,6 +2188,7 @@ enum
- #define R_PARISC_PLABEL21L 66 /* Left 21 bits of fdesc address. */
- #define R_PARISC_PLABEL14R 70 /* Right 14 bits of fdesc address. */
- #define R_PARISC_PCREL64 72 /* 64 bits PC-rel. address. */
-+#define R_PARISC_PCREL22C 73
- #define R_PARISC_PCREL22F 74 /* 22 bits PC-rel. address. */
- #define R_PARISC_PCREL14WR 75 /* PC-rel. address, right 14 bits. */
- #define R_PARISC_PCREL14DR 76 /* PC rel. address, right 14 bits. */
-@@ -2205,6 +2214,8 @@ enum
- #define R_PARISC_LTOFF16WF 102 /* 16 bits LT-rel. address. */
- #define R_PARISC_LTOFF16DF 103 /* 16 bits LT-rel. address. */
- #define R_PARISC_SECREL64 104 /* 64 bits section rel. address. */
-+#define R_PARISC_BASEREL14WR 107
-+#define R_PARISC_BASEREL14DR 108
- #define R_PARISC_SEGREL64 112 /* 64 bits segment rel. address. */
- #define R_PARISC_PLTOFF14WR 115 /* PLT-rel. address, right 14 bits. */
- #define R_PARISC_PLTOFF14DR 116 /* PLT-rel. address, right 14 bits. */
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/hurd_path.patch b/poky/meta/recipes-devtools/elfutils/files/debian/hurd_path.patch
deleted file mode 100644
index 62a960f3a..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/debian/hurd_path.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Upstream-Status: Pending [from debian]
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
-Index: elfutils-0.165/tests/run-native-test.sh
-===================================================================
---- elfutils-0.165.orig/tests/run-native-test.sh
-+++ elfutils-0.165/tests/run-native-test.sh
-@@ -83,6 +83,9 @@ native_test()
- # "cannot attach to process: Function not implemented".
- [ "$(uname)" = "GNU/kFreeBSD" ] && exit 77
-
-+# hurd's /proc/$PID/maps does not give paths yet.
-+[ "$(uname)" = "GNU" ] && exit 77
-+
- native_test ${abs_builddir}/allregs
- native_test ${abs_builddir}/funcretval
-
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/ignore_strmerge.diff b/poky/meta/recipes-devtools/elfutils/files/debian/ignore_strmerge.diff
deleted file mode 100644
index 55513eedd..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/debian/ignore_strmerge.diff
+++ /dev/null
@@ -1,14 +0,0 @@
-Upstream-Status: Pending [from debian]
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
---- elfutils-0.165.orig/tests/run-strip-strmerge.sh
-+++ elfutils-0.165/tests/run-strip-strmerge.sh
-@@ -30,7 +30,7 @@ remerged=remerged.elf
- tempfiles $merged $stripped $debugfile $remerged
-
- echo elflint $input
--testrun ${abs_top_builddir}/src/elflint --gnu $input
-+testrun_on_self_skip ${abs_top_builddir}/src/elflint --gnu $input
- echo elfstrmerge
- testrun ${abs_top_builddir}/tests/elfstrmerge -o $merged $input
- echo elflint $merged
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/kfreebsd_path.patch b/poky/meta/recipes-devtools/elfutils/files/debian/kfreebsd_path.patch
deleted file mode 100644
index e85a2fed9..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/debian/kfreebsd_path.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Upstream-Status: Pending [from debian]
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
-Index: b/tests/run-native-test.sh
-===================================================================
---- a/tests/run-native-test.sh
-+++ b/tests/run-native-test.sh
-@@ -77,6 +77,12 @@ native_test()
- test $native -eq 0 || testrun "$@" -p $native > /dev/null
- }
-
-+# On the Debian buildds, GNU/kFreeBSD linprocfs /proc/$PID/maps does
-+# not give absolute paths due to sbuild's bind mounts (bug #570805)
-+# therefore the next two test programs are expected to fail with
-+# "cannot attach to process: Function not implemented".
-+[ "$(uname)" = "GNU/kFreeBSD" ] && exit 77
-+
- native_test ${abs_builddir}/allregs
- native_test ${abs_builddir}/funcretval
-
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/mips_backend.diff b/poky/meta/recipes-devtools/elfutils/files/debian/mips_backend.diff
deleted file mode 100644
index 749faa403..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/debian/mips_backend.diff
+++ /dev/null
@@ -1,724 +0,0 @@
-From 7e0b036d087dfff7f5e306f52fc78745f99454c3 Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Wed, 21 Aug 2019 15:49:52 +0800
-Subject: [PATCH] mips backend
-
-Rebase to 0.177
-Upstream-Status: Pending [from debian]
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
----
- backends/Makefile.am | 6 +-
- backends/mips_init.c | 59 ++++++++
- backends/mips_regs.c | 104 +++++++++++++
- backends/mips_reloc.def | 79 ++++++++++
- backends/mips_retval.c | 321 ++++++++++++++++++++++++++++++++++++++++
- backends/mips_symbol.c | 53 +++++++
- libebl/eblopenbackend.c | 3 +
- 7 files changed, 623 insertions(+), 2 deletions(-)
- create mode 100644 backends/mips_init.c
- create mode 100644 backends/mips_regs.c
- create mode 100644 backends/mips_reloc.def
- create mode 100644 backends/mips_retval.c
- create mode 100644 backends/mips_symbol.c
-
-diff --git a/backends/Makefile.am b/backends/Makefile.am
-index 4755f61..07d45d7 100644
---- a/backends/Makefile.am
-+++ b/backends/Makefile.am
-@@ -37,7 +37,7 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \
- noinst_LIBRARIES = libebl_backends.a libebl_backends_pic.a
-
- modules = i386 sh x86_64 ia64 alpha arm aarch64 sparc ppc ppc64 s390 \
-- tilegx m68k bpf riscv csky parisc
-+ tilegx m68k bpf riscv csky parisc mips
-
- parisc_SRCS = parisc_init.c parisc_symbol.c parisc_regs.c parisc_retval.c
-
-@@ -100,12 +100,14 @@ riscv_SRCS = riscv_init.c riscv_symbol.c riscv_cfi.c riscv_regs.c \
- csky_SRCS = csky_attrs.c csky_init.c csky_symbol.c csky_cfi.c \
- csky_regs.c csky_initreg.c csky_corenote.c
-
-+mips_SRCS = mips_init.c mips_symbol.c mips_regs.c mips_retval.c
-+
- libebl_backends_a_SOURCES = $(i386_SRCS) $(sh_SRCS) $(x86_64_SRCS) \
- $(ia64_SRCS) $(alpha_SRCS) $(arm_SRCS) \
- $(aarch64_SRCS) $(sparc_SRCS) $(ppc_SRCS) \
- $(ppc64_SRCS) $(s390_SRCS) $(tilegx_SRCS) \
- $(m68k_SRCS) $(bpf_SRCS) $(riscv_SRCS) $(csky_SRCS) \
-- $(parisc_SRCS)
-+ $(parisc_SRCS) $(mips_SRCS)
-
- libebl_backends_pic_a_SOURCES =
- am_libebl_backends_pic_a_OBJECTS = $(libebl_backends_a_SOURCES:.c=.os)
-diff --git a/backends/mips_init.c b/backends/mips_init.c
-new file mode 100644
-index 0000000..975c04e
---- /dev/null
-+++ b/backends/mips_init.c
-@@ -0,0 +1,59 @@
-+/* Initialization of mips specific backend library.
-+ Copyright (C) 2006 Red Hat, Inc.
-+ This file is part of Red Hat elfutils.
-+
-+ Red Hat elfutils 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; version 2 of the License.
-+
-+ Red Hat elfutils 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 along
-+ with Red Hat elfutils; if not, write to the Free Software Foundation,
-+ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-+
-+ Red Hat elfutils is an included package of the Open Invention Network.
-+ An included package of the Open Invention Network is a package for which
-+ Open Invention Network licensees cross-license their patents. No patent
-+ license is granted, either expressly or impliedly, by designation as an
-+ included package. Should you wish to participate in the Open Invention
-+ Network licensing program, please visit www.openinventionnetwork.com
-+ <http://www.openinventionnetwork.com>. */
-+
-+#ifdef HAVE_CONFIG_H
-+# include <config.h>
-+#endif
-+
-+#define BACKEND mips_
-+#define RELOC_PREFIX R_MIPS_
-+#include "libebl_CPU.h"
-+
-+/* This defines the common reloc hooks based on mips_reloc.def. */
-+#include "common-reloc.c"
-+
-+const char *
-+mips_init (Elf *elf __attribute__ ((unused)),
-+ GElf_Half machine __attribute__ ((unused)),
-+ Ebl *eh,
-+ size_t ehlen)
-+{
-+ /* Check whether the Elf_BH object has a sufficent size. */
-+ if (ehlen < sizeof (Ebl))
-+ return NULL;
-+
-+ /* We handle it. */
-+ if (machine == EM_MIPS)
-+ eh->name = "MIPS R3000 big-endian";
-+ else if (machine == EM_MIPS_RS3_LE)
-+ eh->name = "MIPS R3000 little-endian";
-+
-+ mips_init_reloc (eh);
-+ HOOK (eh, reloc_simple_type);
-+ HOOK (eh, return_value_location);
-+ HOOK (eh, register_info);
-+
-+ return MODVERSION;
-+}
-diff --git a/backends/mips_regs.c b/backends/mips_regs.c
-new file mode 100644
-index 0000000..44f86cb
---- /dev/null
-+++ b/backends/mips_regs.c
-@@ -0,0 +1,104 @@
-+/* Register names and numbers for MIPS DWARF.
-+ Copyright (C) 2006 Red Hat, Inc.
-+ This file is part of Red Hat elfutils.
-+
-+ Red Hat elfutils 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; version 2 of the License.
-+
-+ Red Hat elfutils 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 along
-+ with Red Hat elfutils; if not, write to the Free Software Foundation,
-+ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-+
-+ Red Hat elfutils is an included package of the Open Invention Network.
-+ An included package of the Open Invention Network is a package for which
-+ Open Invention Network licensees cross-license their patents. No patent
-+ license is granted, either expressly or impliedly, by designation as an
-+ included package. Should you wish to participate in the Open Invention
-+ Network licensing program, please visit www.openinventionnetwork.com
-+ <http://www.openinventionnetwork.com>. */
-+
-+#ifdef HAVE_CONFIG_H
-+# include <config.h>
-+#endif
-+
-+#include <string.h>
-+#include <dwarf.h>
-+
-+#define BACKEND mips_
-+#include "libebl_CPU.h"
-+
-+ssize_t
-+mips_register_info (Ebl *ebl __attribute__((unused)),
-+ int regno, char *name, size_t namelen,
-+ const char **prefix, const char **setname,
-+ int *bits, int *type)
-+{
-+ if (name == NULL)
-+ return 66;
-+
-+ if (regno < 0 || regno > 65 || namelen < 4)
-+ return -1;
-+
-+ *prefix = "$";
-+
-+ if (regno < 32)
-+ {
-+ *setname = "integer";
-+ *type = DW_ATE_signed;
-+ *bits = 32;
-+ if (regno < 32 + 10)
-+ {
-+ name[0] = regno + '0';
-+ namelen = 1;
-+ }
-+ else
-+ {
-+ name[0] = (regno / 10) + '0';
-+ name[1] = (regno % 10) + '0';
-+ namelen = 2;
-+ }
-+ }
-+ else if (regno < 64)
-+ {
-+ *setname = "FPU";
-+ *type = DW_ATE_float;
-+ *bits = 32;
-+ name[0] = 'f';
-+ if (regno < 32 + 10)
-+ {
-+ name[1] = (regno - 32) + '0';
-+ namelen = 2;
-+ }
-+ else
-+ {
-+ name[1] = (regno - 32) / 10 + '0';
-+ name[2] = (regno - 32) % 10 + '0';
-+ namelen = 3;
-+ }
-+ }
-+ else if (regno == 64)
-+ {
-+ *type = DW_ATE_signed;
-+ *bits = 32;
-+ name[0] = 'h';
-+ name[1] = 'i';
-+ namelen = 2;
-+ }
-+ else
-+ {
-+ *type = DW_ATE_signed;
-+ *bits = 32;
-+ name[0] = 'l';
-+ name[1] = 'o';
-+ namelen = 2;
-+ }
-+
-+ name[namelen++] = '\0';
-+ return namelen;
-+}
-diff --git a/backends/mips_reloc.def b/backends/mips_reloc.def
-new file mode 100644
-index 0000000..4579970
---- /dev/null
-+++ b/backends/mips_reloc.def
-@@ -0,0 +1,79 @@
-+/* List the relocation types for mips. -*- C -*-
-+ Copyright (C) 2006 Red Hat, Inc.
-+ This file is part of Red Hat elfutils.
-+
-+ Red Hat elfutils 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; version 2 of the License.
-+
-+ Red Hat elfutils 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 along
-+ with Red Hat elfutils; if not, write to the Free Software Foundation,
-+ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-+
-+ Red Hat elfutils is an included package of the Open Invention Network.
-+ An included package of the Open Invention Network is a package for which
-+ Open Invention Network licensees cross-license their patents. No patent
-+ license is granted, either expressly or impliedly, by designation as an
-+ included package. Should you wish to participate in the Open Invention
-+ Network licensing program, please visit www.openinventionnetwork.com
-+ <http://www.openinventionnetwork.com>. */
-+
-+/* NAME, REL|EXEC|DYN */
-+
-+RELOC_TYPE (NONE, 0)
-+RELOC_TYPE (16, 0)
-+RELOC_TYPE (32, 0)
-+RELOC_TYPE (REL32, 0)
-+RELOC_TYPE (26, 0)
-+RELOC_TYPE (HI16, 0)
-+RELOC_TYPE (LO16, 0)
-+RELOC_TYPE (GPREL16, 0)
-+RELOC_TYPE (LITERAL, 0)
-+RELOC_TYPE (GOT16, 0)
-+RELOC_TYPE (PC16, 0)
-+RELOC_TYPE (CALL16, 0)
-+RELOC_TYPE (GPREL32, 0)
-+
-+RELOC_TYPE (SHIFT5, 0)
-+RELOC_TYPE (SHIFT6, 0)
-+RELOC_TYPE (64, 0)
-+RELOC_TYPE (GOT_DISP, 0)
-+RELOC_TYPE (GOT_PAGE, 0)
-+RELOC_TYPE (GOT_OFST, 0)
-+RELOC_TYPE (GOT_HI16, 0)
-+RELOC_TYPE (GOT_LO16, 0)
-+RELOC_TYPE (SUB, 0)
-+RELOC_TYPE (INSERT_A, 0)
-+RELOC_TYPE (INSERT_B, 0)
-+RELOC_TYPE (DELETE, 0)
-+RELOC_TYPE (HIGHER, 0)
-+RELOC_TYPE (HIGHEST, 0)
-+RELOC_TYPE (CALL_HI16, 0)
-+RELOC_TYPE (CALL_LO16, 0)
-+RELOC_TYPE (SCN_DISP, 0)
-+RELOC_TYPE (REL16, 0)
-+RELOC_TYPE (ADD_IMMEDIATE, 0)
-+RELOC_TYPE (PJUMP, 0)
-+RELOC_TYPE (RELGOT, 0)
-+RELOC_TYPE (JALR, 0)
-+RELOC_TYPE (TLS_DTPMOD32, 0)
-+RELOC_TYPE (TLS_DTPREL32, 0)
-+RELOC_TYPE (TLS_DTPMOD64, 0)
-+RELOC_TYPE (TLS_DTPREL64, 0)
-+RELOC_TYPE (TLS_GD, 0)
-+RELOC_TYPE (TLS_LDM, 0)
-+RELOC_TYPE (TLS_DTPREL_HI16, 0)
-+RELOC_TYPE (TLS_DTPREL_LO16, 0)
-+RELOC_TYPE (TLS_GOTTPREL, 0)
-+RELOC_TYPE (TLS_TPREL32, 0)
-+RELOC_TYPE (TLS_TPREL64, 0)
-+RELOC_TYPE (TLS_TPREL_HI16, 0)
-+RELOC_TYPE (TLS_TPREL_LO16, 0)
-+
-+#define NO_COPY_RELOC 1
-+#define NO_RELATIVE_RELOC 1
-diff --git a/backends/mips_retval.c b/backends/mips_retval.c
-new file mode 100644
-index 0000000..656cd1f
---- /dev/null
-+++ b/backends/mips_retval.c
-@@ -0,0 +1,321 @@
-+/* Function return value location for Linux/mips ABI.
-+ Copyright (C) 2005 Red Hat, Inc.
-+ This file is part of Red Hat elfutils.
-+
-+ Red Hat elfutils 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; version 2 of the License.
-+
-+ Red Hat elfutils 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 along
-+ with Red Hat elfutils; if not, write to the Free Software Foundation,
-+ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-+
-+ Red Hat elfutils is an included package of the Open Invention Network.
-+ An included package of the Open Invention Network is a package for which
-+ Open Invention Network licensees cross-license their patents. No patent
-+ license is granted, either expressly or impliedly, by designation as an
-+ included package. Should you wish to participate in the Open Invention
-+ Network licensing program, please visit www.openinventionnetwork.com
-+ <http://www.openinventionnetwork.com>. */
-+
-+#ifdef HAVE_CONFIG_H
-+# include <config.h>
-+#endif
-+
-+#include <string.h>
-+#include <assert.h>
-+#include <dwarf.h>
-+#include <elf.h>
-+
-+#include "../libebl/libeblP.h"
-+#include "../libdw/libdwP.h"
-+
-+#define BACKEND mips_
-+#include "libebl_CPU.h"
-+
-+/* The ABI of the file. Also see EF_MIPS_ABI2 above. */
-+#define EF_MIPS_ABI 0x0000F000
-+
-+/* The original o32 abi. */
-+#define E_MIPS_ABI_O32 0x00001000
-+
-+/* O32 extended to work on 64 bit architectures */
-+#define E_MIPS_ABI_O64 0x00002000
-+
-+/* EABI in 32 bit mode */
-+#define E_MIPS_ABI_EABI32 0x00003000
-+
-+/* EABI in 64 bit mode */
-+#define E_MIPS_ABI_EABI64 0x00004000
-+
-+/* All the possible MIPS ABIs. */
-+enum mips_abi
-+ {
-+ MIPS_ABI_UNKNOWN = 0,
-+ MIPS_ABI_N32,
-+ MIPS_ABI_O32,
-+ MIPS_ABI_N64,
-+ MIPS_ABI_O64,
-+ MIPS_ABI_EABI32,
-+ MIPS_ABI_EABI64,
-+ MIPS_ABI_LAST
-+ };
-+
-+/* Find the mips ABI of the current file */
-+enum mips_abi find_mips_abi(Elf *elf)
-+{
-+ GElf_Ehdr ehdr_mem;
-+ GElf_Ehdr *ehdr = gelf_getehdr (elf, &ehdr_mem);
-+
-+ if (ehdr == NULL)
-+ return MIPS_ABI_LAST;
-+
-+ GElf_Word elf_flags = ehdr->e_flags;
-+
-+ /* Check elf_flags to see if it specifies the ABI being used. */
-+ switch ((elf_flags & EF_MIPS_ABI))
-+ {
-+ case E_MIPS_ABI_O32:
-+ return MIPS_ABI_O32;
-+ case E_MIPS_ABI_O64:
-+ return MIPS_ABI_O64;
-+ case E_MIPS_ABI_EABI32:
-+ return MIPS_ABI_EABI32;
-+ case E_MIPS_ABI_EABI64:
-+ return MIPS_ABI_EABI64;
-+ default:
-+ if ((elf_flags & EF_MIPS_ABI2))
-+ return MIPS_ABI_N32;
-+ }
-+
-+ /* GCC creates a pseudo-section whose name describes the ABI. */
-+ size_t shstrndx;
-+ if (elf_getshdrstrndx (elf, &shstrndx) < 0)
-+ return MIPS_ABI_LAST;
-+
-+ const char *name;
-+ Elf_Scn *scn = NULL;
-+ while ((scn = elf_nextscn (elf, scn)) != NULL)
-+ {
-+ GElf_Shdr shdr_mem;
-+ GElf_Shdr *shdr = gelf_getshdr (scn, &shdr_mem);
-+ if (shdr == NULL)
-+ return MIPS_ABI_LAST;
-+
-+ name = elf_strptr (elf, shstrndx, shdr->sh_name) ?: "";
-+ if (strncmp (name, ".mdebug.", 8) != 0)
-+ continue;
-+
-+ if (strcmp (name, ".mdebug.abi32") == 0)
-+ return MIPS_ABI_O32;
-+ else if (strcmp (name, ".mdebug.abiN32") == 0)
-+ return MIPS_ABI_N32;
-+ else if (strcmp (name, ".mdebug.abi64") == 0)
-+ return MIPS_ABI_N64;
-+ else if (strcmp (name, ".mdebug.abiO64") == 0)
-+ return MIPS_ABI_O64;
-+ else if (strcmp (name, ".mdebug.eabi32") == 0)
-+ return MIPS_ABI_EABI32;
-+ else if (strcmp (name, ".mdebug.eabi64") == 0)
-+ return MIPS_ABI_EABI64;
-+ else
-+ return MIPS_ABI_UNKNOWN;
-+ }
-+
-+ return MIPS_ABI_UNKNOWN;
-+}
-+
-+unsigned int
-+mips_abi_regsize (enum mips_abi abi)
-+{
-+ switch (abi)
-+ {
-+ case MIPS_ABI_EABI32:
-+ case MIPS_ABI_O32:
-+ return 4;
-+ case MIPS_ABI_N32:
-+ case MIPS_ABI_N64:
-+ case MIPS_ABI_O64:
-+ case MIPS_ABI_EABI64:
-+ return 8;
-+ case MIPS_ABI_UNKNOWN:
-+ case MIPS_ABI_LAST:
-+ default:
-+ return 0;
-+ }
-+}
-+
-+
-+/* $v0 or pair $v0, $v1 */
-+static const Dwarf_Op loc_intreg_o32[] =
-+ {
-+ { .atom = DW_OP_reg2 }, { .atom = DW_OP_piece, .number = 4 },
-+ { .atom = DW_OP_reg3 }, { .atom = DW_OP_piece, .number = 4 },
-+ };
-+
-+static const Dwarf_Op loc_intreg[] =
-+ {
-+ { .atom = DW_OP_reg2 }, { .atom = DW_OP_piece, .number = 8 },
-+ { .atom = DW_OP_reg3 }, { .atom = DW_OP_piece, .number = 8 },
-+ };
-+#define nloc_intreg 1
-+#define nloc_intregpair 4
-+
-+/* $f0 (float), or pair $f0, $f1 (double).
-+ * f2/f3 are used for COMPLEX (= 2 doubles) returns in Fortran */
-+static const Dwarf_Op loc_fpreg_o32[] =
-+ {
-+ { .atom = DW_OP_regx, .number = 32 }, { .atom = DW_OP_piece, .number = 4 },
-+ { .atom = DW_OP_regx, .number = 33 }, { .atom = DW_OP_piece, .number = 4 },
-+ { .atom = DW_OP_regx, .number = 34 }, { .atom = DW_OP_piece, .number = 4 },
-+ { .atom = DW_OP_regx, .number = 35 }, { .atom = DW_OP_piece, .number = 4 },
-+ };
-+
-+/* $f0, or pair $f0, $f2. */
-+static const Dwarf_Op loc_fpreg[] =
-+ {
-+ { .atom = DW_OP_regx, .number = 32 }, { .atom = DW_OP_piece, .number = 8 },
-+ { .atom = DW_OP_regx, .number = 34 }, { .atom = DW_OP_piece, .number = 8 },
-+ };
-+#define nloc_fpreg 1
-+#define nloc_fpregpair 4
-+#define nloc_fpregquad 8
-+
-+/* The return value is a structure and is actually stored in stack space
-+ passed in a hidden argument by the caller. But, the compiler
-+ helpfully returns the address of that space in $v0. */
-+static const Dwarf_Op loc_aggregate[] =
-+ {
-+ { .atom = DW_OP_breg2, .number = 0 }
-+ };
-+#define nloc_aggregate 1
-+
-+int
-+mips_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
-+{
-+ /* First find the ABI used by the elf object */
-+ enum mips_abi abi = find_mips_abi(functypedie->cu->dbg->elf);
-+
-+ /* Something went seriously wrong while trying to figure out the ABI */
-+ if (abi == MIPS_ABI_LAST)
-+ return -1;
-+
-+ /* We couldn't identify the ABI, but the file seems valid */
-+ if (abi == MIPS_ABI_UNKNOWN)
-+ return -2;
-+
-+ /* Can't handle EABI variants */
-+ if ((abi == MIPS_ABI_EABI32) || (abi == MIPS_ABI_EABI64))
-+ return -2;
-+
-+ unsigned int regsize = mips_abi_regsize (abi);
-+ if (!regsize)
-+ return -2;
-+
-+ /* Start with the function's type, and get the DW_AT_type attribute,
-+ which is the type of the return value. */
-+
-+ Dwarf_Attribute attr_mem;
-+ Dwarf_Attribute *attr = dwarf_attr_integrate (functypedie, DW_AT_type, &attr_mem);
-+ if (attr == NULL)
-+ /* The function has no return value, like a `void' function in C. */
-+ return 0;
-+
-+ Dwarf_Die die_mem;
-+ Dwarf_Die *typedie = dwarf_formref_die (attr, &die_mem);
-+ int tag = dwarf_tag (typedie);
-+
-+ /* Follow typedefs and qualifiers to get to the actual type. */
-+ while (tag == DW_TAG_typedef
-+ || tag == DW_TAG_const_type || tag == DW_TAG_volatile_type
-+ || tag == DW_TAG_restrict_type)
-+ {
-+ attr = dwarf_attr_integrate (typedie, DW_AT_type, &attr_mem);
-+ typedie = dwarf_formref_die (attr, &die_mem);
-+ tag = dwarf_tag (typedie);
-+ }
-+
-+ switch (tag)
-+ {
-+ case -1:
-+ return -1;
-+
-+ case DW_TAG_subrange_type:
-+ if (! dwarf_hasattr_integrate (typedie, DW_AT_byte_size))
-+ {
-+ attr = dwarf_attr_integrate (typedie, DW_AT_type, &attr_mem);
-+ typedie = dwarf_formref_die (attr, &die_mem);
-+ tag = dwarf_tag (typedie);
-+ }
-+ /* Fall through. */
-+
-+ case DW_TAG_base_type:
-+ case DW_TAG_enumeration_type:
-+ case DW_TAG_pointer_type:
-+ case DW_TAG_ptr_to_member_type:
-+ {
-+ Dwarf_Word size;
-+ if (dwarf_formudata (dwarf_attr_integrate (typedie, DW_AT_byte_size,
-+ &attr_mem), &size) != 0)
-+ {
-+ if (tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type)
-+ size = regsize;
-+ else
-+ return -1;
-+ }
-+ if (tag == DW_TAG_base_type)
-+ {
-+ Dwarf_Word encoding;
-+ if (dwarf_formudata (dwarf_attr_integrate (typedie, DW_AT_encoding,
-+ &attr_mem), &encoding) != 0)
-+ return -1;
-+
-+#define ABI_LOC(loc, regsize) ((regsize) == 4 ? (loc ## _o32) : (loc))
-+
-+ if (encoding == DW_ATE_float)
-+ {
-+ *locp = ABI_LOC(loc_fpreg, regsize);
-+ if (size <= regsize)
-+ return nloc_fpreg;
-+
-+ if (size <= 2*regsize)
-+ return nloc_fpregpair;
-+
-+ if (size <= 4*regsize && abi == MIPS_ABI_O32)
-+ return nloc_fpregquad;
-+
-+ goto aggregate;
-+ }
-+ }
-+ *locp = ABI_LOC(loc_intreg, regsize);
-+ if (size <= regsize)
-+ return nloc_intreg;
-+ if (size <= 2*regsize)
-+ return nloc_intregpair;
-+
-+ /* Else fall through. Shouldn't happen though (at least with gcc) */
-+ }
-+
-+ case DW_TAG_structure_type:
-+ case DW_TAG_class_type:
-+ case DW_TAG_union_type:
-+ case DW_TAG_array_type:
-+ aggregate:
-+ /* XXX TODO: Can't handle structure return with other ABI's yet :-/ */
-+ if ((abi != MIPS_ABI_O32) && (abi != MIPS_ABI_O64))
-+ return -2;
-+
-+ *locp = loc_aggregate;
-+ return nloc_aggregate;
-+ }
-+
-+ /* XXX We don't have a good way to return specific errors from ebl calls.
-+ This value means we do not understand the type, but it is well-formed
-+ DWARF and might be valid. */
-+ return -2;
-+}
-diff --git a/backends/mips_symbol.c b/backends/mips_symbol.c
-new file mode 100644
-index 0000000..261b05d
---- /dev/null
-+++ b/backends/mips_symbol.c
-@@ -0,0 +1,53 @@
-+/* MIPS specific symbolic name handling.
-+ Copyright (C) 2002, 2003, 2005 Red Hat, Inc.
-+ This file is part of Red Hat elfutils.
-+ Written by Jakub Jelinek <jakub@redhat.com>, 2002.
-+
-+ Red Hat elfutils 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; version 2 of the License.
-+
-+ Red Hat elfutils 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 along
-+ with Red Hat elfutils; if not, write to the Free Software Foundation,
-+ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
-+
-+ Red Hat elfutils is an included package of the Open Invention Network.
-+ An included package of the Open Invention Network is a package for which
-+ Open Invention Network licensees cross-license their patents. No patent
-+ license is granted, either expressly or impliedly, by designation as an
-+ included package. Should you wish to participate in the Open Invention
-+ Network licensing program, please visit www.openinventionnetwork.com
-+ <http://www.openinventionnetwork.com>. */
-+
-+#ifdef HAVE_CONFIG_H
-+# include <config.h>
-+#endif
-+
-+#include <elf.h>
-+#include <stddef.h>
-+
-+#define BACKEND mips_
-+#include "libebl_CPU.h"
-+
-+/* Check for the simple reloc types. */
-+Elf_Type
-+mips_reloc_simple_type (Ebl *ebl __attribute__ ((unused)), int type,
-+ int *addsub __attribute__ ((unused)))
-+{
-+ switch (type)
-+ {
-+ case R_MIPS_16:
-+ return ELF_T_HALF;
-+ case R_MIPS_32:
-+ return ELF_T_WORD;
-+ case R_MIPS_64:
-+ return ELF_T_XWORD;
-+ default:
-+ return ELF_T_NUM;
-+ }
-+}
-diff --git a/libebl/eblopenbackend.c b/libebl/eblopenbackend.c
-index 210b47e..1feac13 100644
---- a/libebl/eblopenbackend.c
-+++ b/libebl/eblopenbackend.c
-@@ -57,6 +57,7 @@ const char *m68k_init (Elf *, GElf_Half, Ebl *, size_t);
- const char *bpf_init (Elf *, GElf_Half, Ebl *, size_t);
- const char *riscv_init (Elf *, GElf_Half, Ebl *, size_t);
- const char *csky_init (Elf *, GElf_Half, Ebl *, size_t);
-+const char *mips_init (Elf *, GElf_Half, Ebl *, size_t);
-
- /* This table should contain the complete list of architectures as far
- as the ELF specification is concerned. */
-@@ -87,6 +88,8 @@ static const struct
- { sparc_init, "elf_sparc", "sparc", 5, EM_SPARC, 0, 0 },
- { sparc_init, "elf_sparcv8plus", "sparc", 5, EM_SPARC32PLUS, 0, 0 },
- { s390_init, "ebl_s390", "s390", 4, EM_S390, 0, 0 },
-+ { mips_init, "elf_mips", "mips", 4, EM_MIPS, 0, 0 },
-+ { mips_init, "elf_mipsel", "mipsel", 4, EM_MIPS_RS3_LE, 0, 0 },
-
- { NULL, "elf_m32", "m32", 3, EM_M32, 0, 0 },
- { m68k_init, "elf_m68k", "m68k", 4, EM_68K, ELFCLASS32, ELFDATA2MSB },
---
-2.17.1
-
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/mips_cfi.patch b/poky/meta/recipes-devtools/elfutils/files/debian/mips_cfi.patch
deleted file mode 100644
index dd8f88a45..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/debian/mips_cfi.patch
+++ /dev/null
@@ -1,129 +0,0 @@
-From 5bf6117a6eaf9007ce80adbb8b66a95ca98047a4 Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Wed, 21 Aug 2019 17:00:30 +0800
-Subject: [PATCH] mips_cfi
-
-Upstream-Status: Pending [from debian]
-
-Rebase to 0.177
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
----
- backends/Makefile.am | 2 +-
- backends/mips_cfi.c | 80 ++++++++++++++++++++++++++++++++++++++++++++
- backends/mips_init.c | 1 +
- 3 files changed, 82 insertions(+), 1 deletion(-)
- create mode 100644 backends/mips_cfi.c
-
-diff --git a/backends/Makefile.am b/backends/Makefile.am
-index 07d45d7..dec3080 100644
---- a/backends/Makefile.am
-+++ b/backends/Makefile.am
-@@ -100,7 +100,7 @@ riscv_SRCS = riscv_init.c riscv_symbol.c riscv_cfi.c riscv_regs.c \
- csky_SRCS = csky_attrs.c csky_init.c csky_symbol.c csky_cfi.c \
- csky_regs.c csky_initreg.c csky_corenote.c
-
--mips_SRCS = mips_init.c mips_symbol.c mips_regs.c mips_retval.c
-+mips_SRCS = mips_init.c mips_symbol.c mips_regs.c mips_retval.c mips_cfi.c
-
- libebl_backends_a_SOURCES = $(i386_SRCS) $(sh_SRCS) $(x86_64_SRCS) \
- $(ia64_SRCS) $(alpha_SRCS) $(arm_SRCS) \
-diff --git a/backends/mips_cfi.c b/backends/mips_cfi.c
-new file mode 100644
-index 0000000..9ffdab5
---- /dev/null
-+++ b/backends/mips_cfi.c
-@@ -0,0 +1,80 @@
-+/* MIPS ABI-specified defaults for DWARF CFI.
-+ Copyright (C) 2018 Kurt Roeckx, Inc.
-+ This file is part of elfutils.
-+
-+ This file is free software; you can redistribute it and/or modify
-+ it under the terms of either
-+
-+ * the GNU Lesser General Public License as published by the Free
-+ Software Foundation; either version 3 of the License, or (at
-+ your option) any later version
-+
-+ or
-+
-+ * the GNU General Public License as published by the Free
-+ Software Foundation; either version 2 of the License, or (at
-+ your option) any later version
-+
-+ or both in parallel, as here.
-+
-+ elfutils 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 copies of the GNU General Public License and
-+ the GNU Lesser General Public License along with this program. If
-+ not, see <http://www.gnu.org/licenses/>. */
-+
-+#ifdef HAVE_CONFIG_H
-+# include <config.h>
-+#endif
-+
-+#include <dwarf.h>
-+
-+#define BACKEND mips_
-+#include "libebl_CPU.h"
-+
-+int
-+mips_abi_cfi (Ebl *ebl __attribute__ ((unused)), Dwarf_CIE *abi_info)
-+{
-+ static const uint8_t abi_cfi[] =
-+ {
-+ /* Call-saved regs. */
-+ DW_CFA_same_value, ULEB128_7 (16), /* $16 */
-+ DW_CFA_same_value, ULEB128_7 (17), /* $17 */
-+ DW_CFA_same_value, ULEB128_7 (18), /* $18 */
-+ DW_CFA_same_value, ULEB128_7 (19), /* $19 */
-+ DW_CFA_same_value, ULEB128_7 (20), /* $20 */
-+ DW_CFA_same_value, ULEB128_7 (21), /* $21 */
-+ DW_CFA_same_value, ULEB128_7 (22), /* $22 */
-+ DW_CFA_same_value, ULEB128_7 (23), /* $23 */
-+ DW_CFA_same_value, ULEB128_7 (28), /* $28 */
-+ DW_CFA_same_value, ULEB128_7 (29), /* $29 */
-+ DW_CFA_same_value, ULEB128_7 (30), /* $30 */
-+
-+ DW_CFA_same_value, ULEB128_7 (52), /* $f20 */
-+ DW_CFA_same_value, ULEB128_7 (53), /* $f21 */
-+ DW_CFA_same_value, ULEB128_7 (54), /* $f22 */
-+ DW_CFA_same_value, ULEB128_7 (55), /* $f23 */
-+ DW_CFA_same_value, ULEB128_7 (56), /* $f24 */
-+ DW_CFA_same_value, ULEB128_7 (57), /* $f25 */
-+ DW_CFA_same_value, ULEB128_7 (58), /* $f26 */
-+ DW_CFA_same_value, ULEB128_7 (59), /* $f27 */
-+ DW_CFA_same_value, ULEB128_7 (60), /* $f28 */
-+ DW_CFA_same_value, ULEB128_7 (61), /* $f29 */
-+ DW_CFA_same_value, ULEB128_7 (62), /* $f30 */
-+ DW_CFA_same_value, ULEB128_7 (63), /* $f31 */
-+
-+ /* The CFA is the SP. */
-+ DW_CFA_def_cfa, ULEB128_7 (29), ULEB128_7 (0),
-+ };
-+
-+ abi_info->initial_instructions = abi_cfi;
-+ abi_info->initial_instructions_end = &abi_cfi[sizeof abi_cfi];
-+ abi_info->data_alignment_factor = 4;
-+
-+ abi_info->return_address_register = 31; /* $31 */
-+
-+ return 0;
-+}
-diff --git a/backends/mips_init.c b/backends/mips_init.c
-index 8482e7f..bce5abe 100644
---- a/backends/mips_init.c
-+++ b/backends/mips_init.c
-@@ -50,6 +50,7 @@ mips_init (Elf *elf __attribute__ ((unused)),
- HOOK (eh, reloc_simple_type);
- HOOK (eh, return_value_location);
- HOOK (eh, register_info);
-+ HOOK (eh, abi_cfi);
-
- return MODVERSION;
- }
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/mips_readelf_w.patch b/poky/meta/recipes-devtools/elfutils/files/debian/mips_readelf_w.patch
deleted file mode 100644
index c6d42e163..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/debian/mips_readelf_w.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 7bdc83296865cf2b2a5615dbdb7ac0d441fb1849 Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Wed, 21 Aug 2019 16:55:01 +0800
-Subject: [PATCH] mips_readelf_w
-
-Upstream-Status: Pending [from debian]
-
-Rebase to 0.177
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- src/readelf.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/readelf.c b/src/readelf.c
-index 2084fb1..5c02a9b 100644
---- a/src/readelf.c
-+++ b/src/readelf.c
-@@ -11256,7 +11256,8 @@ print_debug (Dwfl_Module *dwflmod, Ebl *ebl, GElf_Ehdr *ehdr)
- GElf_Shdr shdr_mem;
- GElf_Shdr *shdr = gelf_getshdr (scn, &shdr_mem);
-
-- if (shdr != NULL && shdr->sh_type == SHT_PROGBITS)
-+ if (shdr != NULL && (
-+ (shdr->sh_type == SHT_PROGBITS) || (shdr->sh_type == SHT_MIPS_DWARF)))
- {
- static const struct
- {
---
-2.7.4
-
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/testsuite-ignore-elflint.diff b/poky/meta/recipes-devtools/elfutils/files/debian/testsuite-ignore-elflint.diff
deleted file mode 100644
index e6d7948c6..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/debian/testsuite-ignore-elflint.diff
+++ /dev/null
@@ -1,52 +0,0 @@
-From 6393b0e57872b3ffedf0dbd6784cd29694010878 Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Wed, 21 Aug 2019 16:59:01 +0800
-Subject: [PATCH 1/2] testsuite-ignore-elflint
-
-Upstream-Status: Pending [from debian]
-
-Rebase to 0.177
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- tests/run-elflint-self.sh | 2 +-
- tests/test-subr.sh | 15 +++++++++++++++
- 2 files changed, 16 insertions(+), 1 deletion(-)
-
-diff --git a/tests/run-elflint-self.sh b/tests/run-elflint-self.sh
-index 58fa7d0..85d21a5 100755
---- a/tests/run-elflint-self.sh
-+++ b/tests/run-elflint-self.sh
-@@ -18,5 +18,5 @@
-
- . $srcdir/test-subr.sh
-
--testrun_on_self ${abs_top_builddir}/src/elflint --quiet --gnu-ld
-+testrun_on_self_skip ${abs_top_builddir}/src/elflint --quiet --gnu-ld
- testrun_on_self_compressed ${abs_top_builddir}/src/elflint --quiet --gnu-ld
-diff --git a/tests/test-subr.sh b/tests/test-subr.sh
-index 09f428d..26f61f1 100644
---- a/tests/test-subr.sh
-+++ b/tests/test-subr.sh
-@@ -201,3 +201,18 @@ testrun_on_self_quiet()
- # Only exit if something failed
- if test $exit_status != 0; then exit $exit_status; fi
- }
-+
-+# Same as testrun_on_self(), but skip on failure.
-+testrun_on_self_skip()
-+{
-+ exit_status=0
-+
-+ for file in $self_test_files; do
-+ testrun $* $file \
-+ || { echo "*** failure in $* $file"; exit_status=77; }
-+ done
-+
-+ # Only exit if something failed
-+ if test $exit_status != 0; then exit $exit_status; fi
-+}
-+
---
-2.7.4
-
diff --git a/poky/meta/recipes-devtools/file/file_5.38.bb b/poky/meta/recipes-devtools/file/file_5.39.bb
index 48cf8ab54..0dcc90548 100644
--- a/poky/meta/recipes-devtools/file/file_5.38.bb
+++ b/poky/meta/recipes-devtools/file/file_5.39.bb
@@ -13,7 +13,7 @@ DEPENDS_class-native = "bzip2-replacement-native"
SRC_URI = "git://github.com/file/file.git"
-SRCREV = "ec41083645689a787cdd00cb3b5bf578aa79e46c"
+SRCREV = "87731415de945660b00f02207d8e9d986ef9b82e"
S = "${WORKDIR}/git"
inherit autotools update-alternatives
diff --git a/poky/meta/recipes-devtools/flex/flex/check-funcs.patch b/poky/meta/recipes-devtools/flex/flex/check-funcs.patch
new file mode 100644
index 000000000..762275e7f
--- /dev/null
+++ b/poky/meta/recipes-devtools/flex/flex/check-funcs.patch
@@ -0,0 +1,67 @@
+Subject: build: Move dnl comments out of AC_CHECK_FUNCS
+
+Due to a bug, autoheader (2.69) will treat M4 dnl comments in a quoted
+argument of AC_CHECK_FUNCS as function tokens and generate a lot of
+redundant and useless HAVE_* macros in config.h.in.
+(Examples: HAVE_DNL, HAVE_AVAILABLE_, HAVE_BY)
+
+It seems to be this commit dbb4e94dc7bacbcfd4acef4f085ef752fe1aa03f of
+mine that revealed this autoheader bug, and the affected config.h.in
+had been shipped within flex-2.6.4 release tarball.
+
+I have reported the autoheader bug here:
+<https://lists.gnu.org/archive/html/bug-autoconf/2018-02/msg00005.html>
+
+As a workaround, let's move comments out of AC_CHECK_FUNCS.
+
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+Signed-off-by: Kang-Che Sung <explorer09@gmail.com>
+Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
+---
+ configure.ac | 28 +++++++++++++---------------
+ 1 file changed, 13 insertions(+), 15 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 55e774b..5ea3a93 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -153,21 +153,19 @@ AC_FUNC_REALLOC
+ AS_IF([test "$cross_compiling" = yes],
+ AC_MSG_WARN([result $ac_cv_func_realloc_0_nonnull guessed because of cross compilation]))
+
+-AC_CHECK_FUNCS([dup2 dnl
+-memset dnl
+-regcomp dnl
+-strcasecmp dnl
+-strchr dnl
+-strdup dnl
+-strtol dnl
+-], [], [AC_MSG_ERROR(required library function not found on your system)])
+-
+-# Optional library functions
+-AC_CHECK_FUNCS([dnl
+-pow dnl Used only by "examples/manual/expr"
+-setlocale dnl Needed only if NLS is enabled
+-reallocarray dnl OpenBSD function. We have replacement if not available.
+-])
++dnl Autoheader (<= 2.69) bug: "dnl" comments in a quoted argument of
++dnl AC_CHECK_FUNCS will expand wierdly in config.h.in.
++dnl (https://lists.gnu.org/archive/html/bug-autoconf/2018-02/msg00005.html)
++
++AC_CHECK_FUNCS([dup2 memset regcomp strcasecmp strchr strdup strtol], [],
++ [AC_MSG_ERROR(required library function not found on your system)])
++
++# Optional library functions:
++# pow - Used only by "examples/manual/expr".
++# setlocale - Needed only if NLS is enabled.
++# reallocarr - NetBSD function. Use reallocarray if not available.
++# reallocarray - OpenBSD function. We have replacement if not available.
++AC_CHECK_FUNCS([pow setlocale reallocarr reallocarray])
+
+ AC_CONFIG_FILES(
+ Makefile
+--
+2.25.1
+
diff --git a/poky/meta/recipes-devtools/flex/flex_2.6.4.bb b/poky/meta/recipes-devtools/flex/flex_2.6.4.bb
index 43b2547fc..3d5757286 100644
--- a/poky/meta/recipes-devtools/flex/flex_2.6.4.bb
+++ b/poky/meta/recipes-devtools/flex/flex_2.6.4.bb
@@ -15,6 +15,7 @@ SRC_URI = "https://github.com/westes/flex/releases/download/v${PV}/flex-${PV}.ta
file://0001-tests-add-a-target-for-building-tests-without-runnin.patch \
${@bb.utils.contains('PTEST_ENABLED', '1', '', 'file://disable-tests.patch', d)} \
file://0001-build-AC_USE_SYSTEM_EXTENSIONS-in-configure.ac.patch \
+ file://check-funcs.patch \
"
SRC_URI[md5sum] = "2882e3179748cc9f9c23ec593d6adc8d"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0036-Enable-CET-in-cross-compiler-if-possible.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0036-Enable-CET-in-cross-compiler-if-possible.patch
deleted file mode 100644
index af8064282..000000000
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0036-Enable-CET-in-cross-compiler-if-possible.patch
+++ /dev/null
@@ -1,150 +0,0 @@
-From 87a5ace658f2294b025e0420ef03ade1f45d926c Mon Sep 17 00:00:00 2001
-From: "H.J. Lu" <hjl.tools@gmail.com>
-Date: Fri, 8 May 2020 06:11:05 -0700
-Subject: [PATCH] Enable CET in cross compiler if possible
-
-Don't perform CET run-time check for host when cross compiling. Instead,
-enable CET in cross compiler if possible so that it will run on both CET
-and non-CET hosts.
-
-config/
-
- PR bootstrap/94998
- * cet.m4 (GCC_CET_HOST_FLAGS): Enable CET in cross compiler if
- possible.
-
-libiberty/
-
- PR bootstrap/94998
- * configure: Regenerated.
-
-lto-plugin/
-
- PR bootstrap/94998
- * configure: Regenerated.
-
-Upstream-Status: Submitted [https://patchwork.ozlabs.org/project/gcc/patch/20200508131105.170077-1-hjl.tools@gmail.com/]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- config/cet.m4 | 18 ++++++++++++------
- libiberty/configure | 12 +++++++++---
- lto-plugin/configure | 16 +++++++++++-----
- 3 files changed, 32 insertions(+), 14 deletions(-)
-
-diff --git a/config/cet.m4 b/config/cet.m4
-index ea616b728a9..d9608699cd5 100644
---- a/config/cet.m4
-+++ b/config/cet.m4
-@@ -111,7 +111,8 @@ if test x$may_have_cet = xyes; then
- fi
-
- if test x$may_have_cet = xyes; then
-- AC_TRY_RUN([
-+ if test x$cross_compiling = xno; then
-+ AC_TRY_RUN([
- static void
- foo (void)
- {
-@@ -137,12 +138,17 @@ main ()
- bar ();
- return 0;
- }
-- ],
-- [have_cet=no],
-- [have_cet=yes])
-- if test x$enable_cet = xno -a x$have_cet = xyes; then
-- AC_MSG_ERROR([Intel CET must be enabled on Intel CET enabled host])
-+ ],
-+ [have_cet=no],
-+ [have_cet=yes])
-+ if test x$enable_cet = xno -a x$have_cet = xyes; then
-+ AC_MSG_ERROR([Intel CET must be enabled on Intel CET enabled host])
-+ fi
- fi
-+else
-+ # Enable CET in cross compiler if possible so that it will run on both
-+ # CET and non-CET hosts.
-+ have_cet=yes
- fi
- if test x$enable_cet = xyes; then
- $1="-fcf-protection"
-diff --git a/libiberty/configure b/libiberty/configure
-index bb76cf1b823..3f82c5bb865 100755
---- a/libiberty/configure
-+++ b/libiberty/configure
-@@ -5375,7 +5375,8 @@ rm -f core conftest.err conftest.$ac_objext \
- fi
-
- if test x$may_have_cet = xyes; then
-- if test "$cross_compiling" = yes; then :
-+ if test x$cross_compiling = xno; then
-+ if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
- $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
- as_fn_error $? "cannot run test program while cross compiling
-@@ -5420,9 +5421,14 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
- fi
-
-- if test x$enable_cet = xno -a x$have_cet = xyes; then
-- as_fn_error $? "Intel CET must be enabled on Intel CET enabled host" "$LINENO" 5
-+ if test x$enable_cet = xno -a x$have_cet = xyes; then
-+ as_fn_error $? "Intel CET must be enabled on Intel CET enabled host" "$LINENO" 5
-+ fi
- fi
-+else
-+ # Enable CET in cross compiler if possible so that it will run on both
-+ # CET and non-CET hosts.
-+ have_cet=yes
- fi
- if test x$enable_cet = xyes; then
- CET_HOST_FLAGS="-fcf-protection"
-diff --git a/lto-plugin/configure b/lto-plugin/configure
-index 1baf6cc70b8..36c6ecc5875 100755
---- a/lto-plugin/configure
-+++ b/lto-plugin/configure
-@@ -5768,7 +5768,8 @@ rm -f core conftest.err conftest.$ac_objext \
- fi
-
- if test x$may_have_cet = xyes; then
-- if test "$cross_compiling" = yes; then :
-+ if test x$cross_compiling = xno; then
-+ if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
- $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
- as_fn_error $? "cannot run test program while cross compiling
-@@ -5813,9 +5814,14 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
- fi
-
-- if test x$enable_cet = xno -a x$have_cet = xyes; then
-- as_fn_error $? "Intel CET must be enabled on Intel CET enabled host" "$LINENO" 5
-+ if test x$enable_cet = xno -a x$have_cet = xyes; then
-+ as_fn_error $? "Intel CET must be enabled on Intel CET enabled host" "$LINENO" 5
-+ fi
- fi
-+else
-+ # Enable CET in cross compiler if possible so that it will run on both
-+ # CET and non-CET hosts.
-+ have_cet=yes
- fi
- if test x$enable_cet = xyes; then
- CET_HOST_FLAGS="-fcf-protection"
-@@ -11941,7 +11947,7 @@ else
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
--#line 11944 "configure"
-+#line 11950 "configure"
- #include "confdefs.h"
-
- #if HAVE_DLFCN_H
-@@ -12047,7 +12053,7 @@ else
- lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
- lt_status=$lt_dlunknown
- cat > conftest.$ac_ext <<_LT_EOF
--#line 12050 "configure"
-+#line 12056 "configure"
- #include "confdefs.h"
-
- #if HAVE_DLFCN_H
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1.inc b/poky/meta/recipes-devtools/gcc/gcc-10.2.inc
index a3de91a2c..7625af511 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-10.2.inc
@@ -2,13 +2,13 @@ require gcc-common.inc
# Third digit in PV should be incremented after a minor release
-PV = "10.1.0"
+PV = "10.2.0"
# BINV should be incremented to a revision after a minor gcc release
-BINV = "10.1.0"
+BINV = "10.2.0"
-FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc-10.1:${FILE_DIRNAME}/gcc-10.1/backport:"
+FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc:${FILE_DIRNAME}/gcc/backport:"
DEPENDS =+ "mpfr gmp libmpc zlib flex-native"
NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native flex-native"
@@ -63,11 +63,14 @@ SRC_URI = "\
file://0033-Re-introduce-spe-commandline-options.patch \
file://0034-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch \
file://0035-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch \
- file://0036-Enable-CET-in-cross-compiler-if-possible.patch \
- file://0037-mingw32-Enable-operation_not_supported.patch \
- file://0038-libatomic-Do-not-enforce-march-on-aarch64.patch \
+ file://0036-mingw32-Enable-operation_not_supported.patch \
+ file://0037-libatomic-Do-not-enforce-march-on-aarch64.patch \
+ file://0001-aarch64-New-Straight-Line-Speculation-SLS-mitigation.patch \
+ file://0002-aarch64-Introduce-SLS-mitigation-for-RET-and-BR-inst.patch \
+ file://0003-aarch64-Mitigate-SLS-for-BLR-instruction.patch \
+ file://0001-aarch64-Fix-up-__aarch64_cas16_acq_rel-fallback.patch \
"
-SRC_URI[sha256sum] = "b6898a23844b656f1b68691c5c012036c2e694ac4b53a8918d4712ad876e7ea2"
+SRC_URI[sha256sum] = "b8dd4368bb9c7f0b98188317ee0254dd8cc99d1e3a18d0ff146c855fe16c1d8c"
S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${PV}"
# For dev release snapshotting
diff --git a/poky/meta/recipes-devtools/gcc/gcc-configure-common.inc b/poky/meta/recipes-devtools/gcc/gcc-configure-common.inc
index 6cb40fcb7..a64c4caf0 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-configure-common.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-configure-common.inc
@@ -34,7 +34,6 @@ EXTRA_OECONF = "\
--program-prefix=${TARGET_PREFIX} \
--without-local-prefix \
--disable-install-libiberty \
- --with-specs=%{!fno-common:%{!fcommon:-fcommon}} \
${EXTRA_OECONF_BASE} \
${EXTRA_OECONF_GCC_FLOAT} \
${EXTRA_OECONF_PATHS} \
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
index 553ef7fe6..d3875c94d 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
@@ -106,7 +106,7 @@ do_install () {
rm -f ${D}${bindir}/*c++
# We don't care about the gcc-<version> copies
- rm -f ${D}${bindir}/*gcc-?.?*
+ rm -f ${D}${bindir}/*gcc-${BINV}*
# Cleanup empty directories which are not shipped
# we use rmdir instead of 'rm -f' to ensure the non empty directories are not deleted
@@ -139,6 +139,29 @@ do_install () {
chown -R root:root ${D}
cross_canadian_bindirlinks
+
+ for i in linux ${CANADIANEXTRAOS}
+ do
+ for v in ${CANADIANEXTRAVENDOR}
+ do
+ d=${D}${bindir}/../${TARGET_ARCH}$v-$i
+ install -d $d
+ for j in ${TARGET_PREFIX}gcc${EXEEXT} ${TARGET_PREFIX}g++${EXEEXT}
+ do
+ p=${TARGET_ARCH}$v-$i-`echo $j | sed -e s,${TARGET_PREFIX},,`
+ case $i in
+ *musl*)
+ rm -rf $d/$p
+ echo "#!/usr/bin/env sh" > $d/$p
+ echo "exec \`dirname \$0\`/../${TARGET_SYS}/$j -mmusl \$@" >> $d/$p
+ chmod 0755 $d/$p
+ ;;
+ *)
+ ;;
+ esac
+ done
+ done
+ done
}
ELFUTILS = "nativesdk-elfutils"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_10.1.bb b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_10.2.bb
index bf53c5cd7..bf53c5cd7 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_10.1.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_10.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross_10.1.bb b/poky/meta/recipes-devtools/gcc/gcc-cross_10.2.bb
index b43cca0c5..b43cca0c5 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-cross_10.1.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross_10.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-crosssdk_10.1.bb b/poky/meta/recipes-devtools/gcc/gcc-crosssdk_10.2.bb
index 40a6c4fef..40a6c4fef 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-crosssdk_10.1.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-crosssdk_10.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc
index df1432e68..9dcce2653 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc
@@ -138,6 +138,10 @@ do_install_append_class-target () {
ln -s ../${TARGET_SYS}/ext ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR_MULTILIB_ORIGINAL}-${TARGET_OS}/ext
fi
+ if [ "${TARGET_ARCH}" == "x86_64" -a "${MULTILIB_VARIANTS}" != "" ];then
+ ln -sf ../${X86ARCH32}${TARGET_VENDOR}-${TARGET_OS} ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR}-${TARGET_OS}/32
+ fi
+
if [ "${TCLIBC}" != "glibc" ]; then
case "${TARGET_OS}" in
"linux-musl" | "linux-*spe") extra_target_os="linux";;
diff --git a/poky/meta/recipes-devtools/gcc/gcc-runtime_10.1.bb b/poky/meta/recipes-devtools/gcc/gcc-runtime_10.2.bb
index dd430b57e..dd430b57e 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-runtime_10.1.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-runtime_10.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-sanitizers_10.1.bb b/poky/meta/recipes-devtools/gcc/gcc-sanitizers_10.2.bb
index f3c705811..f3c705811 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-sanitizers_10.1.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-sanitizers_10.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-source_10.1.bb b/poky/meta/recipes-devtools/gcc/gcc-source_10.2.bb
index b890fa33e..b890fa33e 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-source_10.1.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-source_10.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0001-aarch64-Fix-up-__aarch64_cas16_acq_rel-fallback.patch b/poky/meta/recipes-devtools/gcc/gcc/0001-aarch64-Fix-up-__aarch64_cas16_acq_rel-fallback.patch
new file mode 100644
index 000000000..c060accd9
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc/0001-aarch64-Fix-up-__aarch64_cas16_acq_rel-fallback.patch
@@ -0,0 +1,66 @@
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+From fd2ec4542fd2975e6d3f2f1c1a2639945a84f9e1 Mon Sep 17 00:00:00 2001
+From: Jakub Jelinek <jakub@redhat.com>
+Date: Mon, 3 Aug 2020 22:55:28 +0200
+Subject: [PATCH] aarch64: Fix up __aarch64_cas16_acq_rel fallback
+
+As mentioned in the PR, the fallback path when LSE is unavailable writes
+incorrect registers to the memory if the previous content compares equal
+to x0, x1 - it writes copy of x0, x1 from the start of function, but it
+should write x2, x3.
+
+2020-08-03 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/96402
+ * config/aarch64/lse.S (__aarch64_cas16_acq_rel): Use x2, x3 instead
+ of x(tmp0), x(tmp1) in STXP arguments.
+
+ * gcc.target/aarch64/pr96402.c: New test.
+
+(cherry picked from commit 90b43856fdff7d96d93d22970eca8a86c56e0ddc)
+---
+ gcc/testsuite/gcc.target/aarch64/pr96402.c | 16 ++++++++++++++++
+ libgcc/config/aarch64/lse.S | 2 +-
+ 2 files changed, 17 insertions(+), 1 deletion(-)
+ create mode 100644 gcc/testsuite/gcc.target/aarch64/pr96402.c
+
+diff --git a/gcc/testsuite/gcc.target/aarch64/pr96402.c b/gcc/testsuite/gcc.target/aarch64/pr96402.c
+new file mode 100644
+index 00000000000..fa2dddfac15
+--- /dev/null
++++ b/gcc/testsuite/gcc.target/aarch64/pr96402.c
+@@ -0,0 +1,16 @@
++/* PR target/96402 */
++/* { dg-do run { target int128 } } */
++/* { dg-options "-moutline-atomics" } */
++
++int
++main ()
++{
++ __int128 a = 0;
++ __sync_val_compare_and_swap (&a, (__int128) 0, (__int128) 1);
++ if (a != 1)
++ __builtin_abort ();
++ __sync_val_compare_and_swap (&a, (__int128) 1, (((__int128) 0xdeadbeeffeedbac1ULL) << 64) | 0xabadcafe00c0ffeeULL);
++ if (a != ((((__int128) 0xdeadbeeffeedbac1ULL) << 64) | 0xabadcafe00c0ffeeULL))
++ __builtin_abort ();
++ return 0;
++}
+diff --git a/libgcc/config/aarch64/lse.S b/libgcc/config/aarch64/lse.S
+index 64691c601c1..c8fbfbce4fd 100644
+--- a/libgcc/config/aarch64/lse.S
++++ b/libgcc/config/aarch64/lse.S
+@@ -203,7 +203,7 @@ STARTFN NAME(cas)
+ cmp x0, x(tmp0)
+ ccmp x1, x(tmp1), #0, eq
+ bne 1f
+- STXP w(tmp2), x(tmp0), x(tmp1), [x4]
++ STXP w(tmp2), x2, x3, [x4]
+ cbnz w(tmp2), 0b
+ 1: ret
+
+--
+2.26.2
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0001-aarch64-New-Straight-Line-Speculation-SLS-mitigation.patch b/poky/meta/recipes-devtools/gcc/gcc/0001-aarch64-New-Straight-Line-Speculation-SLS-mitigation.patch
new file mode 100644
index 000000000..73de4c759
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc/0001-aarch64-New-Straight-Line-Speculation-SLS-mitigation.patch
@@ -0,0 +1,202 @@
+CVE: CVE-2020-13844
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+From 1ff243934ac443b5f58cd02a5012ce58ecc31fb2 Mon Sep 17 00:00:00 2001
+From: Matthew Malcomson <matthew.malcomson@arm.com>
+Date: Thu, 9 Jul 2020 09:11:58 +0100
+Subject: [PATCH 1/3] aarch64: New Straight Line Speculation (SLS) mitigation
+ flags
+
+Here we introduce the flags that will be used for straight line speculation.
+
+The new flag introduced is `-mharden-sls=`.
+This flag can take arguments of `none`, `all`, or a comma seperated list of one
+or more of `retbr` or `blr`.
+`none` indicates no special mitigation of the straight line speculation
+vulnerability.
+`all` requests all mitigations currently implemented.
+`retbr` requests that the RET and BR instructions have a speculation barrier
+inserted after them.
+`blr` requests that BLR instructions are replaced by a BL to a function stub
+using a BR with a speculation barrier after it.
+
+Setting this on a per-function basis using attributes or the like is not
+enabled, but may be in the future.
+
+gcc/ChangeLog:
+
+2020-06-02 Matthew Malcomson <matthew.malcomson@arm.com>
+
+ * config/aarch64/aarch64-protos.h (aarch64_harden_sls_retbr_p):
+ New.
+ (aarch64_harden_sls_blr_p): New.
+ * config/aarch64/aarch64.c (enum aarch64_sls_hardening_type):
+ New.
+ (aarch64_harden_sls_retbr_p): New.
+ (aarch64_harden_sls_blr_p): New.
+ (aarch64_validate_sls_mitigation): New.
+ (aarch64_override_options): Parse options for SLS mitigation.
+ * config/aarch64/aarch64.opt (-mharden-sls): New option.
+ * doc/invoke.texi: Document new option.
+---
+ gcc/config/aarch64/aarch64-protos.h | 3 ++
+ gcc/config/aarch64/aarch64.c | 76 +++++++++++++++++++++++++++++++++++++
+ gcc/config/aarch64/aarch64.opt | 4 ++
+ gcc/doc/invoke.texi | 12 ++++++
+ 4 files changed, 95 insertions(+)
+
+diff --git a/gcc/config/aarch64/aarch64-protos.h b/gcc/config/aarch64/aarch64-protos.h
+index 723d9ba..eb5f4b4 100644
+--- a/gcc/config/aarch64/aarch64-protos.h
++++ b/gcc/config/aarch64/aarch64-protos.h
+@@ -781,4 +781,7 @@ extern const atomic_ool_names aarch64_ool_ldeor_names;
+
+ tree aarch64_resolve_overloaded_builtin_general (location_t, tree, void *);
+
++extern bool aarch64_harden_sls_retbr_p (void);
++extern bool aarch64_harden_sls_blr_p (void);
++
+ #endif /* GCC_AARCH64_PROTOS_H */
+diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
+index b86434a..437a9cf 100644
+--- a/gcc/config/aarch64/aarch64.c
++++ b/gcc/config/aarch64/aarch64.c
+@@ -14494,6 +14494,79 @@ aarch64_validate_mcpu (const char *str, const struct processor **res,
+ return false;
+ }
+
++/* Straight line speculation indicators. */
++enum aarch64_sls_hardening_type
++{
++ SLS_NONE = 0,
++ SLS_RETBR = 1,
++ SLS_BLR = 2,
++ SLS_ALL = 3,
++};
++static enum aarch64_sls_hardening_type aarch64_sls_hardening;
++
++/* Return whether we should mitigatate Straight Line Speculation for the RET
++ and BR instructions. */
++bool
++aarch64_harden_sls_retbr_p (void)
++{
++ return aarch64_sls_hardening & SLS_RETBR;
++}
++
++/* Return whether we should mitigatate Straight Line Speculation for the BLR
++ instruction. */
++bool
++aarch64_harden_sls_blr_p (void)
++{
++ return aarch64_sls_hardening & SLS_BLR;
++}
++
++/* As of yet we only allow setting these options globally, in the future we may
++ allow setting them per function. */
++static void
++aarch64_validate_sls_mitigation (const char *const_str)
++{
++ char *token_save = NULL;
++ char *str = NULL;
++
++ if (strcmp (const_str, "none") == 0)
++ {
++ aarch64_sls_hardening = SLS_NONE;
++ return;
++ }
++ if (strcmp (const_str, "all") == 0)
++ {
++ aarch64_sls_hardening = SLS_ALL;
++ return;
++ }
++
++ char *str_root = xstrdup (const_str);
++ str = strtok_r (str_root, ",", &token_save);
++ if (!str)
++ error ("invalid argument given to %<-mharden-sls=%>");
++
++ int temp = SLS_NONE;
++ while (str)
++ {
++ if (strcmp (str, "blr") == 0)
++ temp |= SLS_BLR;
++ else if (strcmp (str, "retbr") == 0)
++ temp |= SLS_RETBR;
++ else if (strcmp (str, "none") == 0 || strcmp (str, "all") == 0)
++ {
++ error ("%<%s%> must be by itself for %<-mharden-sls=%>", str);
++ break;
++ }
++ else
++ {
++ error ("invalid argument %<%s%> for %<-mharden-sls=%>", str);
++ break;
++ }
++ str = strtok_r (NULL, ",", &token_save);
++ }
++ aarch64_sls_hardening = (aarch64_sls_hardening_type) temp;
++ free (str_root);
++}
++
+ /* Parses CONST_STR for branch protection features specified in
+ aarch64_branch_protect_types, and set any global variables required. Returns
+ the parsing result and assigns LAST_STR to the last processed token from
+@@ -14738,6 +14811,9 @@ aarch64_override_options (void)
+ selected_arch = NULL;
+ selected_tune = NULL;
+
++ if (aarch64_harden_sls_string)
++ aarch64_validate_sls_mitigation (aarch64_harden_sls_string);
++
+ if (aarch64_branch_protection_string)
+ aarch64_validate_mbranch_protection (aarch64_branch_protection_string);
+
+diff --git a/gcc/config/aarch64/aarch64.opt b/gcc/config/aarch64/aarch64.opt
+index d99d14c..5170361 100644
+--- a/gcc/config/aarch64/aarch64.opt
++++ b/gcc/config/aarch64/aarch64.opt
+@@ -71,6 +71,10 @@ mgeneral-regs-only
+ Target Report RejectNegative Mask(GENERAL_REGS_ONLY) Save
+ Generate code which uses only the general registers.
+
++mharden-sls=
++Target RejectNegative Joined Var(aarch64_harden_sls_string)
++Generate code to mitigate against straight line speculation.
++
+ mfix-cortex-a53-835769
+ Target Report Var(aarch64_fix_a53_err835769) Init(2) Save
+ Workaround for ARM Cortex-A53 Erratum number 835769.
+diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
+index a2794a6..bd5b77a 100644
+--- a/gcc/doc/invoke.texi
++++ b/gcc/doc/invoke.texi
+@@ -696,6 +696,7 @@ Objective-C and Objective-C++ Dialects}.
+ -msign-return-address=@var{scope} @gol
+ -mbranch-protection=@var{none}|@var{standard}|@var{pac-ret}[+@var{leaf}
+ +@var{b-key}]|@var{bti} @gol
++-mharden-sls=@var{opts} @gol
+ -march=@var{name} -mcpu=@var{name} -mtune=@var{name} @gol
+ -moverride=@var{string} -mverbose-cost-dump @gol
+ -mstack-protector-guard=@var{guard} -mstack-protector-guard-reg=@var{sysreg} @gol
+@@ -17065,6 +17066,17 @@ functions. The optional argument @samp{b-key} can be used to sign the functions
+ with the B-key instead of the A-key.
+ @samp{bti} turns on branch target identification mechanism.
+
++@item -mharden-sls=@var{opts}
++@opindex mharden-sls
++Enable compiler hardening against straight line speculation (SLS).
++@var{opts} is a comma-separated list of the following options:
++@table @samp
++@item retbr
++@item blr
++@end table
++In addition, @samp{-mharden-sls=all} enables all SLS hardening while
++@samp{-mharden-sls=none} disables all SLS hardening.
++
+ @item -msve-vector-bits=@var{bits}
+ @opindex msve-vector-bits
+ Specify the number of bits in an SVE vector register. This option only has
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch b/poky/meta/recipes-devtools/gcc/gcc/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
index 82ae9f8d1..82ae9f8d1 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0002-aarch64-Introduce-SLS-mitigation-for-RET-and-BR-inst.patch b/poky/meta/recipes-devtools/gcc/gcc/0002-aarch64-Introduce-SLS-mitigation-for-RET-and-BR-inst.patch
new file mode 100644
index 000000000..823cc8b66
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc/0002-aarch64-Introduce-SLS-mitigation-for-RET-and-BR-inst.patch
@@ -0,0 +1,607 @@
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+From b1204d16e1ec96a4aa89e44de8990e2499ffdb22 Mon Sep 17 00:00:00 2001
+From: Matthew Malcomson <matthew.malcomson@arm.com>
+Date: Thu, 9 Jul 2020 09:11:59 +0100
+Subject: [PATCH 2/3] aarch64: Introduce SLS mitigation for RET and BR
+ instructions
+
+Instructions following RET or BR are not necessarily executed. In order
+to avoid speculation past RET and BR we can simply append a speculation
+barrier.
+
+Since these speculation barriers will not be architecturally executed,
+they are not expected to add a high performance penalty.
+
+The speculation barrier is to be SB when targeting architectures which
+have this enabled, and DSB SY + ISB otherwise.
+
+We add tests for each of the cases where such an instruction was seen.
+
+This is implemented by modifying each machine description pattern that
+emits either a RET or a BR instruction. We choose not to use something
+like `TARGET_ASM_FUNCTION_EPILOGUE` since it does not affect the
+`indirect_jump`, `jump`, `sibcall_insn` and `sibcall_value_insn`
+patterns and we find it preferable to implement the functionality in the
+same way for every pattern.
+
+There is one particular case which is slightly tricky. The
+implementation of TARGET_ASM_TRAMPOLINE_TEMPLATE uses a BR which needs
+to be mitigated against. The trampoline template is used *once* per
+compilation unit, and the TRAMPOLINE_SIZE is exposed to the user via the
+builtin macro __LIBGCC_TRAMPOLINE_SIZE__.
+In the future we may implement function specific attributes to turn on
+and off hardening on a per-function basis.
+The fixed nature of the trampoline described above implies it will be
+safer to ensure this speculation barrier is always used.
+
+Testing:
+ Bootstrap and regtest done on aarch64-none-linux
+ Used a temporary hack(1) to use these options on every test in the
+ testsuite and a script to check that the output never emitted an
+ unmitigated RET or BR.
+
+1) Temporary hack was a change to the testsuite to always use
+`-save-temps` and run a script on the assembly output of those
+compilations which produced one to ensure every RET or BR is immediately
+followed by a speculation barrier.
+
+gcc/ChangeLog:
+
+ * config/aarch64/aarch64-protos.h (aarch64_sls_barrier): New.
+ * config/aarch64/aarch64.c (aarch64_output_casesi): Emit
+ speculation barrier after BR instruction if needs be.
+ (aarch64_trampoline_init): Handle ptr_mode value & adjust size
+ of code copied.
+ (aarch64_sls_barrier): New.
+ (aarch64_asm_trampoline_template): Add needed barriers.
+ * config/aarch64/aarch64.h (AARCH64_ISA_SB): New.
+ (TARGET_SB): New.
+ (TRAMPOLINE_SIZE): Account for barrier.
+ * config/aarch64/aarch64.md (indirect_jump, *casesi_dispatch,
+ simple_return, *do_return, *sibcall_insn, *sibcall_value_insn):
+ Emit barrier if needs be, also account for possible barrier using
+ "sls_length" attribute.
+ (sls_length): New attribute.
+ (length): Determine default using any non-default sls_length
+ value.
+
+gcc/testsuite/ChangeLog:
+
+ * gcc.target/aarch64/sls-mitigation/sls-miti-retbr.c: New test.
+ * gcc.target/aarch64/sls-mitigation/sls-miti-retbr-pacret.c:
+ New test.
+ * gcc.target/aarch64/sls-mitigation/sls-mitigation.exp: New file.
+ * lib/target-supports.exp (check_effective_target_aarch64_asm_sb_ok):
+ New proc.
+---
+ gcc/config/aarch64/aarch64-protos.h | 1 +
+ gcc/config/aarch64/aarch64.c | 41 ++++++-
+ gcc/config/aarch64/aarch64.h | 10 +-
+ gcc/config/aarch64/aarch64.md | 76 +++++++++----
+ .../aarch64/sls-mitigation/sls-miti-retbr-pacret.c | 21 ++++
+ .../aarch64/sls-mitigation/sls-miti-retbr.c | 119 +++++++++++++++++++++
+ .../aarch64/sls-mitigation/sls-mitigation.exp | 73 +++++++++++++
+ gcc/testsuite/lib/target-supports.exp | 2 +-
+ 8 files changed, 318 insertions(+), 25 deletions(-)
+ create mode 100644 gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-miti-retbr-pacret.c
+ create mode 100644 gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-miti-retbr.c
+ create mode 100644 gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-mitigation.exp
+
+diff --git a/gcc/config/aarch64/aarch64-protos.h b/gcc/config/aarch64/aarch64-protos.h
+index eb5f4b4..ee0ffde 100644
+--- a/gcc/config/aarch64/aarch64-protos.h
++++ b/gcc/config/aarch64/aarch64-protos.h
+@@ -781,6 +781,7 @@ extern const atomic_ool_names aarch64_ool_ldeor_names;
+
+ tree aarch64_resolve_overloaded_builtin_general (location_t, tree, void *);
+
++const char *aarch64_sls_barrier (int);
+ extern bool aarch64_harden_sls_retbr_p (void);
+ extern bool aarch64_harden_sls_blr_p (void);
+
+diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
+index 437a9cf..44e3d1f 100644
+--- a/gcc/config/aarch64/aarch64.c
++++ b/gcc/config/aarch64/aarch64.c
+@@ -10852,8 +10852,8 @@ aarch64_return_addr (int count, rtx frame ATTRIBUTE_UNUSED)
+ static void
+ aarch64_asm_trampoline_template (FILE *f)
+ {
+- int offset1 = 16;
+- int offset2 = 20;
++ int offset1 = 24;
++ int offset2 = 28;
+
+ if (aarch64_bti_enabled ())
+ {
+@@ -10876,6 +10876,17 @@ aarch64_asm_trampoline_template (FILE *f)
+ }
+ asm_fprintf (f, "\tbr\t%s\n", reg_names [IP1_REGNUM]);
+
++ /* We always emit a speculation barrier.
++ This is because the same trampoline template is used for every nested
++ function. Since nested functions are not particularly common or
++ performant we don't worry too much about the extra instructions to copy
++ around.
++ This is not yet a problem, since we have not yet implemented function
++ specific attributes to choose between hardening against straight line
++ speculation or not, but such function specific attributes are likely to
++ happen in the future. */
++ asm_fprintf (f, "\tdsb\tsy\n\tisb\n");
++
+ /* The trampoline needs an extra padding instruction. In case if BTI is
+ enabled the padding instruction is replaced by the BTI instruction at
+ the beginning. */
+@@ -10890,10 +10901,14 @@ static void
+ aarch64_trampoline_init (rtx m_tramp, tree fndecl, rtx chain_value)
+ {
+ rtx fnaddr, mem, a_tramp;
+- const int tramp_code_sz = 16;
++ const int tramp_code_sz = 24;
+
+ /* Don't need to copy the trailing D-words, we fill those in below. */
+- emit_block_move (m_tramp, assemble_trampoline_template (),
++ /* We create our own memory address in Pmode so that `emit_block_move` can
++ use parts of the backend which expect Pmode addresses. */
++ rtx temp = convert_memory_address (Pmode, XEXP (m_tramp, 0));
++ emit_block_move (gen_rtx_MEM (BLKmode, temp),
++ assemble_trampoline_template (),
+ GEN_INT (tramp_code_sz), BLOCK_OP_NORMAL);
+ mem = adjust_address (m_tramp, ptr_mode, tramp_code_sz);
+ fnaddr = XEXP (DECL_RTL (fndecl), 0);
+@@ -11084,6 +11099,8 @@ aarch64_output_casesi (rtx *operands)
+ output_asm_insn (buf, operands);
+ output_asm_insn (patterns[index][1], operands);
+ output_asm_insn ("br\t%3", operands);
++ output_asm_insn (aarch64_sls_barrier (aarch64_harden_sls_retbr_p ()),
++ operands);
+ assemble_label (asm_out_file, label);
+ return "";
+ }
+@@ -22924,6 +22941,22 @@ aarch64_file_end_indicate_exec_stack ()
+ #undef GNU_PROPERTY_AARCH64_FEATURE_1_BTI
+ #undef GNU_PROPERTY_AARCH64_FEATURE_1_AND
+
++/* Helper function for straight line speculation.
++ Return what barrier should be emitted for straight line speculation
++ mitigation.
++ When not mitigating against straight line speculation this function returns
++ an empty string.
++ When mitigating against straight line speculation, use:
++ * SB when the v8.5-A SB extension is enabled.
++ * DSB+ISB otherwise. */
++const char *
++aarch64_sls_barrier (int mitigation_required)
++{
++ return mitigation_required
++ ? (TARGET_SB ? "sb" : "dsb\tsy\n\tisb")
++ : "";
++}
++
+ /* Target-specific selftests. */
+
+ #if CHECKING_P
+diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
+index 1ce23c6..c21015f 100644
+--- a/gcc/config/aarch64/aarch64.h
++++ b/gcc/config/aarch64/aarch64.h
+@@ -281,6 +281,7 @@ extern unsigned aarch64_architecture_version;
+ #define AARCH64_ISA_F32MM (aarch64_isa_flags & AARCH64_FL_F32MM)
+ #define AARCH64_ISA_F64MM (aarch64_isa_flags & AARCH64_FL_F64MM)
+ #define AARCH64_ISA_BF16 (aarch64_isa_flags & AARCH64_FL_BF16)
++#define AARCH64_ISA_SB (aarch64_isa_flags & AARCH64_FL_SB)
+
+ /* Crypto is an optional extension to AdvSIMD. */
+ #define TARGET_CRYPTO (TARGET_SIMD && AARCH64_ISA_CRYPTO)
+@@ -378,6 +379,9 @@ extern unsigned aarch64_architecture_version;
+ #define TARGET_FIX_ERR_A53_835769_DEFAULT 1
+ #endif
+
++/* SB instruction is enabled through +sb. */
++#define TARGET_SB (AARCH64_ISA_SB)
++
+ /* Apply the workaround for Cortex-A53 erratum 835769. */
+ #define TARGET_FIX_ERR_A53_835769 \
+ ((aarch64_fix_a53_err835769 == 2) \
+@@ -1058,8 +1062,10 @@ typedef struct
+
+ #define RETURN_ADDR_RTX aarch64_return_addr
+
+-/* BTI c + 3 insns + 2 pointer-sized entries. */
+-#define TRAMPOLINE_SIZE (TARGET_ILP32 ? 24 : 32)
++/* BTI c + 3 insns
++ + sls barrier of DSB + ISB.
++ + 2 pointer-sized entries. */
++#define TRAMPOLINE_SIZE (24 + (TARGET_ILP32 ? 8 : 16))
+
+ /* Trampolines contain dwords, so must be dword aligned. */
+ #define TRAMPOLINE_ALIGNMENT 64
+diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md
+index 8c8be3c..dda04ee 100644
+--- a/gcc/config/aarch64/aarch64.md
++++ b/gcc/config/aarch64/aarch64.md
+@@ -407,10 +407,25 @@
+ ;; Attribute that specifies whether the alternative uses MOVPRFX.
+ (define_attr "movprfx" "no,yes" (const_string "no"))
+
++;; Attribute to specify that an alternative has the length of a single
++;; instruction plus a speculation barrier.
++(define_attr "sls_length" "none,retbr,casesi" (const_string "none"))
++
+ (define_attr "length" ""
+ (cond [(eq_attr "movprfx" "yes")
+ (const_int 8)
+- ] (const_int 4)))
++
++ (eq_attr "sls_length" "retbr")
++ (cond [(match_test "!aarch64_harden_sls_retbr_p ()") (const_int 4)
++ (match_test "TARGET_SB") (const_int 8)]
++ (const_int 12))
++
++ (eq_attr "sls_length" "casesi")
++ (cond [(match_test "!aarch64_harden_sls_retbr_p ()") (const_int 16)
++ (match_test "TARGET_SB") (const_int 20)]
++ (const_int 24))
++ ]
++ (const_int 4)))
+
+ ;; Strictly for compatibility with AArch32 in pipeline models, since AArch64 has
+ ;; no predicated insns.
+@@ -447,8 +462,12 @@
+ (define_insn "indirect_jump"
+ [(set (pc) (match_operand:DI 0 "register_operand" "r"))]
+ ""
+- "br\\t%0"
+- [(set_attr "type" "branch")]
++ {
++ output_asm_insn ("br\\t%0", operands);
++ return aarch64_sls_barrier (aarch64_harden_sls_retbr_p ());
++ }
++ [(set_attr "type" "branch")
++ (set_attr "sls_length" "retbr")]
+ )
+
+ (define_insn "jump"
+@@ -765,7 +784,7 @@
+ "*
+ return aarch64_output_casesi (operands);
+ "
+- [(set_attr "length" "16")
++ [(set_attr "sls_length" "casesi")
+ (set_attr "type" "branch")]
+ )
+
+@@ -844,18 +863,23 @@
+ [(return)]
+ ""
+ {
++ const char *ret = NULL;
+ if (aarch64_return_address_signing_enabled ()
+ && TARGET_ARMV8_3
+ && !crtl->calls_eh_return)
+ {
+ if (aarch64_ra_sign_key == AARCH64_KEY_B)
+- return "retab";
++ ret = "retab";
+ else
+- return "retaa";
++ ret = "retaa";
+ }
+- return "ret";
++ else
++ ret = "ret";
++ output_asm_insn (ret, operands);
++ return aarch64_sls_barrier (aarch64_harden_sls_retbr_p ());
+ }
+- [(set_attr "type" "branch")]
++ [(set_attr "type" "branch")
++ (set_attr "sls_length" "retbr")]
+ )
+
+ (define_expand "return"
+@@ -867,8 +891,12 @@
+ (define_insn "simple_return"
+ [(simple_return)]
+ ""
+- "ret"
+- [(set_attr "type" "branch")]
++ {
++ output_asm_insn ("ret", operands);
++ return aarch64_sls_barrier (aarch64_harden_sls_retbr_p ());
++ }
++ [(set_attr "type" "branch")
++ (set_attr "sls_length" "retbr")]
+ )
+
+ (define_insn "*cb<optab><mode>1"
+@@ -1066,10 +1094,16 @@
+ (unspec:DI [(match_operand:DI 2 "const_int_operand")] UNSPEC_CALLEE_ABI)
+ (return)]
+ "SIBLING_CALL_P (insn)"
+- "@
+- br\\t%0
+- b\\t%c0"
+- [(set_attr "type" "branch, branch")]
++ {
++ if (which_alternative == 0)
++ {
++ output_asm_insn ("br\\t%0", operands);
++ return aarch64_sls_barrier (aarch64_harden_sls_retbr_p ());
++ }
++ return "b\\t%c0";
++ }
++ [(set_attr "type" "branch, branch")
++ (set_attr "sls_length" "retbr,none")]
+ )
+
+ (define_insn "*sibcall_value_insn"
+@@ -1080,10 +1114,16 @@
+ (unspec:DI [(match_operand:DI 3 "const_int_operand")] UNSPEC_CALLEE_ABI)
+ (return)]
+ "SIBLING_CALL_P (insn)"
+- "@
+- br\\t%1
+- b\\t%c1"
+- [(set_attr "type" "branch, branch")]
++ {
++ if (which_alternative == 0)
++ {
++ output_asm_insn ("br\\t%1", operands);
++ return aarch64_sls_barrier (aarch64_harden_sls_retbr_p ());
++ }
++ return "b\\t%c1";
++ }
++ [(set_attr "type" "branch, branch")
++ (set_attr "sls_length" "retbr,none")]
+ )
+
+ ;; Call subroutine returning any type.
+diff --git a/gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-miti-retbr-pacret.c b/gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-miti-retbr-pacret.c
+new file mode 100644
+index 0000000..fa1887a
+--- /dev/null
++++ b/gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-miti-retbr-pacret.c
+@@ -0,0 +1,21 @@
++/* Avoid ILP32 since pacret is only available for LP64 */
++/* { dg-do compile { target { ! ilp32 } } } */
++/* { dg-additional-options "-mharden-sls=retbr -mbranch-protection=pac-ret -march=armv8.3-a" } */
++
++/* Testing the do_return pattern for retaa and retab. */
++long retbr_subcall(void);
++long retbr_do_return_retaa(void)
++{
++ return retbr_subcall()+1;
++}
++
++__attribute__((target("branch-protection=pac-ret+b-key")))
++long retbr_do_return_retab(void)
++{
++ return retbr_subcall()+1;
++}
++
++/* Ensure there are no BR or RET instructions which are not directly followed
++ by a speculation barrier. */
++/* { dg-final { scan-assembler-not {\t(br|ret|retaa|retab)\tx[0-9][0-9]?\n\t(?!dsb\tsy\n\tisb)} } } */
++/* { dg-final { scan-assembler-not {ret\t} } } */
+diff --git a/gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-miti-retbr.c b/gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-miti-retbr.c
+new file mode 100644
+index 0000000..76b8d03
+--- /dev/null
++++ b/gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-miti-retbr.c
+@@ -0,0 +1,119 @@
++/* We ensure that -Wpedantic is off since it complains about the trampolines
++ we explicitly want to test. */
++/* { dg-additional-options "-mharden-sls=retbr -Wno-pedantic " } */
++/*
++ Ensure that the SLS hardening of RET and BR leaves no unprotected RET/BR
++ instructions.
++ */
++typedef int (foo) (int, int);
++typedef void (bar) (int, int);
++struct sls_testclass {
++ foo *x;
++ bar *y;
++ int left;
++ int right;
++};
++
++int
++retbr_sibcall_value_insn (struct sls_testclass x)
++{
++ return x.x(x.left, x.right);
++}
++
++void
++retbr_sibcall_insn (struct sls_testclass x)
++{
++ x.y(x.left, x.right);
++}
++
++/* Aim to test two different returns.
++ One that introduces a tail call in the middle of the function, and one that
++ has a normal return. */
++int
++retbr_multiple_returns (struct sls_testclass x)
++{
++ int temp;
++ if (x.left % 10)
++ return x.x(x.left, 100);
++ else if (x.right % 20)
++ {
++ return x.x(x.left * x.right, 100);
++ }
++ temp = x.left % x.right;
++ temp *= 100;
++ temp /= 2;
++ return temp % 3;
++}
++
++void
++retbr_multiple_returns_void (struct sls_testclass x)
++{
++ if (x.left % 10)
++ {
++ x.y(x.left, 100);
++ }
++ else if (x.right % 20)
++ {
++ x.y(x.left * x.right, 100);
++ }
++ return;
++}
++
++/* Testing the casesi jump via register. */
++__attribute__ ((optimize ("Os")))
++int
++retbr_casesi_dispatch (struct sls_testclass x)
++{
++ switch (x.left)
++ {
++ case -5:
++ return -2;
++ case -3:
++ return -1;
++ case 0:
++ return 0;
++ case 3:
++ return 1;
++ case 5:
++ break;
++ default:
++ __builtin_unreachable ();
++ }
++ return x.right;
++}
++
++/* Testing the BR in trampolines is mitigated against. */
++void f1 (void *);
++void f3 (void *, void (*)(void *));
++void f2 (void *);
++
++int
++retbr_trampolines (void *a, int b)
++{
++ if (!b)
++ {
++ f1 (a);
++ return 1;
++ }
++ if (b)
++ {
++ void retbr_tramp_internal (void *c)
++ {
++ if (c == a)
++ f2 (c);
++ }
++ f3 (a, retbr_tramp_internal);
++ }
++ return 0;
++}
++
++/* Testing the indirect_jump pattern. */
++void
++retbr_indirect_jump (int *buf)
++{
++ __builtin_longjmp(buf, 1);
++}
++
++/* Ensure there are no BR or RET instructions which are not directly followed
++ by a speculation barrier. */
++/* { dg-final { scan-assembler-not {\t(br|ret|retaa|retab)\tx[0-9][0-9]?\n\t(?!dsb\tsy\n\tisb|sb)} } } */
+diff --git a/gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-mitigation.exp b/gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-mitigation.exp
+new file mode 100644
+index 0000000..8122503
+--- /dev/null
++++ b/gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-mitigation.exp
+@@ -0,0 +1,73 @@
++# Regression driver for SLS mitigation on AArch64.
++# Copyright (C) 2020 Free Software Foundation, Inc.
++# Contributed by ARM Ltd.
++#
++# This file is part of GCC.
++#
++# GCC 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, or (at your option)
++# any later version.
++#
++# GCC 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
++# along with GCC; see the file COPYING3. If not see
++# <http://www.gnu.org/licenses/>. */
++
++# Exit immediately if this isn't an AArch64 target.
++if {![istarget aarch64*-*-*] } then {
++ return
++}
++
++# Load support procs.
++load_lib gcc-dg.exp
++load_lib torture-options.exp
++
++# If a testcase doesn't have special options, use these.
++global DEFAULT_CFLAGS
++if ![info exists DEFAULT_CFLAGS] then {
++ set DEFAULT_CFLAGS " "
++}
++
++# Initialize `dg'.
++dg-init
++torture-init
++
++# Use different architectures as well as the normal optimisation options.
++# (i.e. use both SB and DSB+ISB barriers).
++
++set save-dg-do-what-default ${dg-do-what-default}
++# Main loop.
++# Run with torture tests (i.e. a bunch of different optimisation levels) just
++# to increase test coverage.
++set dg-do-what-default assemble
++gcc-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.\[cCS\]]] \
++ "-save-temps" $DEFAULT_CFLAGS
++
++# Run the same tests but this time with SB extension.
++# Since not all supported assemblers will support that extension we decide
++# whether to assemble or just compile based on whether the extension is
++# supported for the available assembler.
++
++set templist {}
++foreach x $DG_TORTURE_OPTIONS {
++ lappend templist "$x -march=armv8.3-a+sb "
++ lappend templist "$x -march=armv8-a+sb "
++}
++set-torture-options $templist
++if { [check_effective_target_aarch64_asm_sb_ok] } {
++ set dg-do-what-default assemble
++} else {
++ set dg-do-what-default compile
++}
++gcc-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.\[cCS\]]] \
++ "-save-temps" $DEFAULT_CFLAGS
++set dg-do-what-default ${save-dg-do-what-default}
++
++# All done.
++torture-finish
++dg-finish
+diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
+index 8a186dd..9d2e093 100644
+--- a/gcc/testsuite/lib/target-supports.exp
++++ b/gcc/testsuite/lib/target-supports.exp
+@@ -9432,7 +9432,7 @@ proc check_effective_target_aarch64_tiny { } {
+ # various architecture extensions via the .arch_extension pseudo-op.
+
+ foreach { aarch64_ext } { "fp" "simd" "crypto" "crc" "lse" "dotprod" "sve"
+- "i8mm" "f32mm" "f64mm" "bf16" } {
++ "i8mm" "f32mm" "f64mm" "bf16" "sb" } {
+ eval [string map [list FUNC $aarch64_ext] {
+ proc check_effective_target_aarch64_asm_FUNC_ok { } {
+ if { [istarget aarch64*-*-*] } {
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0002-gcc-poison-system-directories.patch b/poky/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch
index 30a848601..30a848601 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0002-gcc-poison-system-directories.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0003-aarch64-Mitigate-SLS-for-BLR-instruction.patch b/poky/meta/recipes-devtools/gcc/gcc/0003-aarch64-Mitigate-SLS-for-BLR-instruction.patch
new file mode 100644
index 000000000..716a36717
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc/0003-aarch64-Mitigate-SLS-for-BLR-instruction.patch
@@ -0,0 +1,658 @@
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+From a5e7efc40ed841934c1d913f39476afa17d8e5f7 Mon Sep 17 00:00:00 2001
+From: Matthew Malcomson <matthew.malcomson@arm.com>
+Date: Thu, 9 Jul 2020 09:11:59 +0100
+Subject: [PATCH 3/3] aarch64: Mitigate SLS for BLR instruction
+
+This patch introduces the mitigation for Straight Line Speculation past
+the BLR instruction.
+
+This mitigation replaces BLR instructions with a BL to a stub which uses
+a BR to jump to the original value. These function stubs are then
+appended with a speculation barrier to ensure no straight line
+speculation happens after these jumps.
+
+When optimising for speed we use a set of stubs for each function since
+this should help the branch predictor make more accurate predictions
+about where a stub should branch.
+
+When optimising for size we use one set of stubs for all functions.
+This set of stubs can have human readable names, and we are using
+`__call_indirect_x<N>` for register x<N>.
+
+When BTI branch protection is enabled the BLR instruction can jump to a
+`BTI c` instruction using any register, while the BR instruction can
+only jump to a `BTI c` instruction using the x16 or x17 registers.
+Hence, in order to ensure this transformation is safe we mov the value
+of the original register into x16 and use x16 for the BR.
+
+As an example when optimising for size:
+a
+ BLR x0
+instruction would get transformed to something like
+ BL __call_indirect_x0
+where __call_indirect_x0 labels a thunk that contains
+__call_indirect_x0:
+ MOV X16, X0
+ BR X16
+ <speculation barrier>
+
+The first version of this patch used local symbols specific to a
+compilation unit to try and avoid relocations.
+This was mistaken since functions coming from the same compilation unit
+can still be in different sections, and the assembler will insert
+relocations at jumps between sections.
+
+On any relocation the linker is permitted to emit a veneer to handle
+jumps between symbols that are very far apart. The registers x16 and
+x17 may be clobbered by these veneers.
+Hence the function stubs cannot rely on the values of x16 and x17 being
+the same as just before the function stub is called.
+
+Similar can be said for the hot/cold partitioning of single functions,
+so function-local stubs have the same restriction.
+
+This updated version of the patch never emits function stubs for x16 and
+x17, and instead forces other registers to be used.
+
+Given the above, there is now no benefit to local symbols (since they
+are not enough to avoid dealing with linker intricacies). This patch
+now uses global symbols with hidden visibility each stored in their own
+COMDAT section. This means stubs can be shared between compilation
+units while still avoiding the PLT indirection.
+
+This patch also removes the `__call_indirect_x30` stub (and
+function-local equivalent) which would simply jump back to the original
+location.
+
+The function-local stubs are emitted to the assembly output file in one
+chunk, which means we need not add the speculation barrier directly
+after each one.
+This is because we know for certain that the instructions directly after
+the BR in all but the last function stub will be from another one of
+these stubs and hence will not contain a speculation gadget.
+Instead we add a speculation barrier at the end of the sequence of
+stubs.
+
+The global stubs are emitted in COMDAT/.linkonce sections by
+themselves so that the linker can remove duplicates from multiple object
+files. This means they are not emitted in one chunk, and each one must
+include the speculation barrier.
+
+Another difference is that since the global stubs are shared across
+compilation units we do not know that all functions will be targeting an
+architecture supporting the SB instruction.
+Rather than provide multiple stubs for each architecture, we provide a
+stub that will work for all architectures -- using the DSB+ISB barrier.
+
+This mitigation does not apply for BLR instructions in the following
+places:
+- Some accesses to thread-local variables use a code sequence with a BLR
+ instruction. This code sequence is part of the binary interface between
+ compiler and linker. If this BLR instruction needs to be mitigated, it'd
+ probably be best to do so in the linker. It seems that the code sequence
+ for thread-local variable access is unlikely to lead to a Spectre Revalation
+ Gadget.
+- PLT stubs are produced by the linker and each contain a BLR instruction.
+ It seems that at most only after the last PLT stub a Spectre Revalation
+ Gadget might appear.
+
+Testing:
+ Bootstrap and regtest on AArch64
+ (with BOOT_CFLAGS="-mharden-sls=retbr,blr")
+ Used a temporary hack(1) in gcc-dg.exp to use these options on every
+ test in the testsuite, a slight modification to emit the speculation
+ barrier after every function stub, and a script to check that the
+ output never emitted a BLR, or unmitigated BR or RET instruction.
+ Similar on an aarch64-none-elf cross-compiler.
+
+1) Temporary hack emitted a speculation barrier at the end of every stub
+function, and used a script to ensure that:
+ a) Every RET or BR is immediately followed by a speculation barrier.
+ b) No BLR instruction is emitted by compiler.
+
+gcc/ChangeLog:
+
+ * config/aarch64/aarch64-protos.h (aarch64_indirect_call_asm):
+ New declaration.
+ * config/aarch64/aarch64.c (aarch64_regno_regclass): Handle new
+ stub registers class.
+ (aarch64_class_max_nregs): Likewise.
+ (aarch64_register_move_cost): Likewise.
+ (aarch64_sls_shared_thunks): Global array to store stub labels.
+ (aarch64_sls_emit_function_stub): New.
+ (aarch64_create_blr_label): New.
+ (aarch64_sls_emit_blr_function_thunks): New.
+ (aarch64_sls_emit_shared_blr_thunks): New.
+ (aarch64_asm_file_end): New.
+ (aarch64_indirect_call_asm): New.
+ (TARGET_ASM_FILE_END): Use aarch64_asm_file_end.
+ (TARGET_ASM_FUNCTION_EPILOGUE): Use
+ aarch64_sls_emit_blr_function_thunks.
+ * config/aarch64/aarch64.h (STB_REGNUM_P): New.
+ (enum reg_class): Add STUB_REGS class.
+ (machine_function): Introduce `call_via` array for
+ function-local stub labels.
+ * config/aarch64/aarch64.md (*call_insn, *call_value_insn): Use
+ aarch64_indirect_call_asm to emit code when hardening BLR
+ instructions.
+ * config/aarch64/constraints.md (Ucr): New constraint
+ representing registers for indirect calls. Is GENERAL_REGS
+ usually, and STUB_REGS when hardening BLR instruction against
+ SLS.
+ * config/aarch64/predicates.md (aarch64_general_reg): STUB_REGS class
+ is also a general register.
+
+gcc/testsuite/ChangeLog:
+
+ * gcc.target/aarch64/sls-mitigation/sls-miti-blr-bti.c: New test.
+ * gcc.target/aarch64/sls-mitigation/sls-miti-blr.c: New test.
+---
+ gcc/config/aarch64/aarch64-protos.h | 1 +
+ gcc/config/aarch64/aarch64.c | 225 ++++++++++++++++++++-
+ gcc/config/aarch64/aarch64.h | 15 ++
+ gcc/config/aarch64/aarch64.md | 11 +-
+ gcc/config/aarch64/constraints.md | 9 +
+ gcc/config/aarch64/predicates.md | 3 +-
+ .../aarch64/sls-mitigation/sls-miti-blr-bti.c | 40 ++++
+ .../aarch64/sls-mitigation/sls-miti-blr.c | 33 +++
+ 8 files changed, 328 insertions(+), 9 deletions(-)
+ create mode 100644 gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-miti-blr-bti.c
+ create mode 100644 gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-miti-blr.c
+
+diff --git a/gcc/config/aarch64/aarch64-protos.h b/gcc/config/aarch64/aarch64-protos.h
+index ee0ffde..839f801 100644
+--- a/gcc/config/aarch64/aarch64-protos.h
++++ b/gcc/config/aarch64/aarch64-protos.h
+@@ -782,6 +782,7 @@ extern const atomic_ool_names aarch64_ool_ldeor_names;
+ tree aarch64_resolve_overloaded_builtin_general (location_t, tree, void *);
+
+ const char *aarch64_sls_barrier (int);
++const char *aarch64_indirect_call_asm (rtx);
+ extern bool aarch64_harden_sls_retbr_p (void);
+ extern bool aarch64_harden_sls_blr_p (void);
+
+diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
+index 2389d49..0f7bba3 100644
+--- a/gcc/config/aarch64/aarch64.c
++++ b/gcc/config/aarch64/aarch64.c
+@@ -10605,6 +10605,9 @@ aarch64_label_mentioned_p (rtx x)
+ enum reg_class
+ aarch64_regno_regclass (unsigned regno)
+ {
++ if (STUB_REGNUM_P (regno))
++ return STUB_REGS;
++
+ if (GP_REGNUM_P (regno))
+ return GENERAL_REGS;
+
+@@ -10939,6 +10942,7 @@ aarch64_class_max_nregs (reg_class_t regclass, machine_mode mode)
+ unsigned int nregs, vec_flags;
+ switch (regclass)
+ {
++ case STUB_REGS:
+ case TAILCALL_ADDR_REGS:
+ case POINTER_REGS:
+ case GENERAL_REGS:
+@@ -13155,10 +13159,12 @@ aarch64_register_move_cost (machine_mode mode,
+ = aarch64_tune_params.regmove_cost;
+
+ /* Caller save and pointer regs are equivalent to GENERAL_REGS. */
+- if (to == TAILCALL_ADDR_REGS || to == POINTER_REGS)
++ if (to == TAILCALL_ADDR_REGS || to == POINTER_REGS
++ || to == STUB_REGS)
+ to = GENERAL_REGS;
+
+- if (from == TAILCALL_ADDR_REGS || from == POINTER_REGS)
++ if (from == TAILCALL_ADDR_REGS || from == POINTER_REGS
++ || from == STUB_REGS)
+ from = GENERAL_REGS;
+
+ /* Make RDFFR very expensive. In particular, if we know that the FFR
+@@ -22957,6 +22963,215 @@ aarch64_sls_barrier (int mitigation_required)
+ : "";
+ }
+
++static GTY (()) tree aarch64_sls_shared_thunks[30];
++static GTY (()) bool aarch64_sls_shared_thunks_needed = false;
++const char *indirect_symbol_names[30] = {
++ "__call_indirect_x0",
++ "__call_indirect_x1",
++ "__call_indirect_x2",
++ "__call_indirect_x3",
++ "__call_indirect_x4",
++ "__call_indirect_x5",
++ "__call_indirect_x6",
++ "__call_indirect_x7",
++ "__call_indirect_x8",
++ "__call_indirect_x9",
++ "__call_indirect_x10",
++ "__call_indirect_x11",
++ "__call_indirect_x12",
++ "__call_indirect_x13",
++ "__call_indirect_x14",
++ "__call_indirect_x15",
++ "", /* "__call_indirect_x16", */
++ "", /* "__call_indirect_x17", */
++ "__call_indirect_x18",
++ "__call_indirect_x19",
++ "__call_indirect_x20",
++ "__call_indirect_x21",
++ "__call_indirect_x22",
++ "__call_indirect_x23",
++ "__call_indirect_x24",
++ "__call_indirect_x25",
++ "__call_indirect_x26",
++ "__call_indirect_x27",
++ "__call_indirect_x28",
++ "__call_indirect_x29",
++};
++
++/* Function to create a BLR thunk. This thunk is used to mitigate straight
++ line speculation. Instead of a simple BLR that can be speculated past,
++ we emit a BL to this thunk, and this thunk contains a BR to the relevant
++ register. These thunks have the relevant speculation barries put after
++ their indirect branch so that speculation is blocked.
++
++ We use such a thunk so the speculation barriers are kept off the
++ architecturally executed path in order to reduce the performance overhead.
++
++ When optimizing for size we use stubs shared by the linked object.
++ When optimizing for performance we emit stubs for each function in the hope
++ that the branch predictor can better train on jumps specific for a given
++ function. */
++rtx
++aarch64_sls_create_blr_label (int regnum)
++{
++ gcc_assert (STUB_REGNUM_P (regnum));
++ if (optimize_function_for_size_p (cfun))
++ {
++ /* For the thunks shared between different functions in this compilation
++ unit we use a named symbol -- this is just for users to more easily
++ understand the generated assembly. */
++ aarch64_sls_shared_thunks_needed = true;
++ const char *thunk_name = indirect_symbol_names[regnum];
++ if (aarch64_sls_shared_thunks[regnum] == NULL)
++ {
++ /* Build a decl representing this function stub and record it for
++ later. We build a decl here so we can use the GCC machinery for
++ handling sections automatically (through `get_named_section` and
++ `make_decl_one_only`). That saves us a lot of trouble handling
++ the specifics of different output file formats. */
++ tree decl = build_decl (BUILTINS_LOCATION, FUNCTION_DECL,
++ get_identifier (thunk_name),
++ build_function_type_list (void_type_node,
++ NULL_TREE));
++ DECL_RESULT (decl) = build_decl (BUILTINS_LOCATION, RESULT_DECL,
++ NULL_TREE, void_type_node);
++ TREE_PUBLIC (decl) = 1;
++ TREE_STATIC (decl) = 1;
++ DECL_IGNORED_P (decl) = 1;
++ DECL_ARTIFICIAL (decl) = 1;
++ make_decl_one_only (decl, DECL_ASSEMBLER_NAME (decl));
++ resolve_unique_section (decl, 0, false);
++ aarch64_sls_shared_thunks[regnum] = decl;
++ }
++
++ return gen_rtx_SYMBOL_REF (Pmode, thunk_name);
++ }
++
++ if (cfun->machine->call_via[regnum] == NULL)
++ cfun->machine->call_via[regnum]
++ = gen_rtx_LABEL_REF (Pmode, gen_label_rtx ());
++ return cfun->machine->call_via[regnum];
++}
++
++/* Helper function for aarch64_sls_emit_blr_function_thunks and
++ aarch64_sls_emit_shared_blr_thunks below. */
++static void
++aarch64_sls_emit_function_stub (FILE *out_file, int regnum)
++{
++ /* Save in x16 and branch to that function so this transformation does
++ not prevent jumping to `BTI c` instructions. */
++ asm_fprintf (out_file, "\tmov\tx16, x%d\n", regnum);
++ asm_fprintf (out_file, "\tbr\tx16\n");
++}
++
++/* Emit all BLR stubs for this particular function.
++ Here we emit all the BLR stubs needed for the current function. Since we
++ emit these stubs in a consecutive block we know there will be no speculation
++ gadgets between each stub, and hence we only emit a speculation barrier at
++ the end of the stub sequences.
++
++ This is called in the TARGET_ASM_FUNCTION_EPILOGUE hook. */
++void
++aarch64_sls_emit_blr_function_thunks (FILE *out_file)
++{
++ if (! aarch64_harden_sls_blr_p ())
++ return;
++
++ bool any_functions_emitted = false;
++ /* We must save and restore the current function section since this assembly
++ is emitted at the end of the function. This means it can be emitted *just
++ after* the cold section of a function. That cold part would be emitted in
++ a different section. That switch would trigger a `.cfi_endproc` directive
++ to be emitted in the original section and a `.cfi_startproc` directive to
++ be emitted in the new section. Switching to the original section without
++ restoring would mean that the `.cfi_endproc` emitted as a function ends
++ would happen in a different section -- leaving an unmatched
++ `.cfi_startproc` in the cold text section and an unmatched `.cfi_endproc`
++ in the standard text section. */
++ section *save_text_section = in_section;
++ switch_to_section (function_section (current_function_decl));
++ for (int regnum = 0; regnum < 30; ++regnum)
++ {
++ rtx specu_label = cfun->machine->call_via[regnum];
++ if (specu_label == NULL)
++ continue;
++
++ targetm.asm_out.print_operand (out_file, specu_label, 0);
++ asm_fprintf (out_file, ":\n");
++ aarch64_sls_emit_function_stub (out_file, regnum);
++ any_functions_emitted = true;
++ }
++ if (any_functions_emitted)
++ /* Can use the SB if needs be here, since this stub will only be used
++ by the current function, and hence for the current target. */
++ asm_fprintf (out_file, "\t%s\n", aarch64_sls_barrier (true));
++ switch_to_section (save_text_section);
++}
++
++/* Emit shared BLR stubs for the current compilation unit.
++ Over the course of compiling this unit we may have converted some BLR
++ instructions to a BL to a shared stub function. This is where we emit those
++ stub functions.
++ This function is for the stubs shared between different functions in this
++ compilation unit. We share when optimizing for size instead of speed.
++
++ This function is called through the TARGET_ASM_FILE_END hook. */
++void
++aarch64_sls_emit_shared_blr_thunks (FILE *out_file)
++{
++ if (! aarch64_sls_shared_thunks_needed)
++ return;
++
++ for (int regnum = 0; regnum < 30; ++regnum)
++ {
++ tree decl = aarch64_sls_shared_thunks[regnum];
++ if (!decl)
++ continue;
++
++ const char *name = indirect_symbol_names[regnum];
++ switch_to_section (get_named_section (decl, NULL, 0));
++ ASM_OUTPUT_ALIGN (out_file, 2);
++ targetm.asm_out.globalize_label (out_file, name);
++ /* Only emits if the compiler is configured for an assembler that can
++ handle visibility directives. */
++ targetm.asm_out.assemble_visibility (decl, VISIBILITY_HIDDEN);
++ ASM_OUTPUT_TYPE_DIRECTIVE (out_file, name, "function");
++ ASM_OUTPUT_LABEL (out_file, name);
++ aarch64_sls_emit_function_stub (out_file, regnum);
++ /* Use the most conservative target to ensure it can always be used by any
++ function in the translation unit. */
++ asm_fprintf (out_file, "\tdsb\tsy\n\tisb\n");
++ ASM_DECLARE_FUNCTION_SIZE (out_file, name, decl);
++ }
++}
++
++/* Implement TARGET_ASM_FILE_END. */
++void
++aarch64_asm_file_end ()
++{
++ aarch64_sls_emit_shared_blr_thunks (asm_out_file);
++ /* Since this function will be called for the ASM_FILE_END hook, we ensure
++ that what would be called otherwise (e.g. `file_end_indicate_exec_stack`
++ for FreeBSD) still gets called. */
++#ifdef TARGET_ASM_FILE_END
++ TARGET_ASM_FILE_END ();
++#endif
++}
++
++const char *
++aarch64_indirect_call_asm (rtx addr)
++{
++ gcc_assert (REG_P (addr));
++ if (aarch64_harden_sls_blr_p ())
++ {
++ rtx stub_label = aarch64_sls_create_blr_label (REGNO (addr));
++ output_asm_insn ("bl\t%0", &stub_label);
++ }
++ else
++ output_asm_insn ("blr\t%0", &addr);
++ return "";
++}
++
+ /* Target-specific selftests. */
+
+ #if CHECKING_P
+@@ -23507,6 +23722,12 @@ aarch64_libgcc_floating_mode_supported_p
+ #undef TARGET_MD_ASM_ADJUST
+ #define TARGET_MD_ASM_ADJUST arm_md_asm_adjust
+
++#undef TARGET_ASM_FILE_END
++#define TARGET_ASM_FILE_END aarch64_asm_file_end
++
++#undef TARGET_ASM_FUNCTION_EPILOGUE
++#define TARGET_ASM_FUNCTION_EPILOGUE aarch64_sls_emit_blr_function_thunks
++
+ struct gcc_target targetm = TARGET_INITIALIZER;
+
+ #include "gt-aarch64.h"
+diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
+index 8e0fc37..7331450 100644
+--- a/gcc/config/aarch64/aarch64.h
++++ b/gcc/config/aarch64/aarch64.h
+@@ -643,6 +643,16 @@ extern unsigned aarch64_architecture_version;
+ #define GP_REGNUM_P(REGNO) \
+ (((unsigned) (REGNO - R0_REGNUM)) <= (R30_REGNUM - R0_REGNUM))
+
++/* Registers known to be preserved over a BL instruction. This consists of the
++ GENERAL_REGS without x16, x17, and x30. The x30 register is changed by the
++ BL instruction itself, while the x16 and x17 registers may be used by
++ veneers which can be inserted by the linker. */
++#define STUB_REGNUM_P(REGNO) \
++ (GP_REGNUM_P (REGNO) \
++ && (REGNO) != R16_REGNUM \
++ && (REGNO) != R17_REGNUM \
++ && (REGNO) != R30_REGNUM) \
++
+ #define FP_REGNUM_P(REGNO) \
+ (((unsigned) (REGNO - V0_REGNUM)) <= (V31_REGNUM - V0_REGNUM))
+
+@@ -667,6 +677,7 @@ enum reg_class
+ {
+ NO_REGS,
+ TAILCALL_ADDR_REGS,
++ STUB_REGS,
+ GENERAL_REGS,
+ STACK_REG,
+ POINTER_REGS,
+@@ -689,6 +700,7 @@ enum reg_class
+ { \
+ "NO_REGS", \
+ "TAILCALL_ADDR_REGS", \
++ "STUB_REGS", \
+ "GENERAL_REGS", \
+ "STACK_REG", \
+ "POINTER_REGS", \
+@@ -708,6 +720,7 @@ enum reg_class
+ { \
+ { 0x00000000, 0x00000000, 0x00000000 }, /* NO_REGS */ \
+ { 0x00030000, 0x00000000, 0x00000000 }, /* TAILCALL_ADDR_REGS */\
++ { 0x3ffcffff, 0x00000000, 0x00000000 }, /* STUB_REGS */ \
+ { 0x7fffffff, 0x00000000, 0x00000003 }, /* GENERAL_REGS */ \
+ { 0x80000000, 0x00000000, 0x00000000 }, /* STACK_REG */ \
+ { 0xffffffff, 0x00000000, 0x00000003 }, /* POINTER_REGS */ \
+@@ -862,6 +875,8 @@ typedef struct GTY (()) machine_function
+ struct aarch64_frame frame;
+ /* One entry for each hard register. */
+ bool reg_is_wrapped_separately[LAST_SAVED_REGNUM];
++ /* One entry for each general purpose register. */
++ rtx call_via[SP_REGNUM];
+ bool label_is_assembled;
+ } machine_function;
+ #endif
+diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md
+index dda04ee..43da754 100644
+--- a/gcc/config/aarch64/aarch64.md
++++ b/gcc/config/aarch64/aarch64.md
+@@ -1022,16 +1022,15 @@
+ )
+
+ (define_insn "*call_insn"
+- [(call (mem:DI (match_operand:DI 0 "aarch64_call_insn_operand" "r, Usf"))
++ [(call (mem:DI (match_operand:DI 0 "aarch64_call_insn_operand" "Ucr, Usf"))
+ (match_operand 1 "" ""))
+ (unspec:DI [(match_operand:DI 2 "const_int_operand")] UNSPEC_CALLEE_ABI)
+ (clobber (reg:DI LR_REGNUM))]
+ ""
+ "@
+- blr\\t%0
++ * return aarch64_indirect_call_asm (operands[0]);
+ bl\\t%c0"
+- [(set_attr "type" "call, call")]
+-)
++ [(set_attr "type" "call, call")])
+
+ (define_expand "call_value"
+ [(parallel
+@@ -1050,13 +1049,13 @@
+
+ (define_insn "*call_value_insn"
+ [(set (match_operand 0 "" "")
+- (call (mem:DI (match_operand:DI 1 "aarch64_call_insn_operand" "r, Usf"))
++ (call (mem:DI (match_operand:DI 1 "aarch64_call_insn_operand" "Ucr, Usf"))
+ (match_operand 2 "" "")))
+ (unspec:DI [(match_operand:DI 3 "const_int_operand")] UNSPEC_CALLEE_ABI)
+ (clobber (reg:DI LR_REGNUM))]
+ ""
+ "@
+- blr\\t%1
++ * return aarch64_indirect_call_asm (operands[1]);
+ bl\\t%c1"
+ [(set_attr "type" "call, call")]
+ )
+diff --git a/gcc/config/aarch64/constraints.md b/gcc/config/aarch64/constraints.md
+index d993268..8cc6f50 100644
+--- a/gcc/config/aarch64/constraints.md
++++ b/gcc/config/aarch64/constraints.md
+@@ -24,6 +24,15 @@
+ (define_register_constraint "Ucs" "TAILCALL_ADDR_REGS"
+ "@internal Registers suitable for an indirect tail call")
+
++(define_register_constraint "Ucr"
++ "aarch64_harden_sls_blr_p () ? STUB_REGS : GENERAL_REGS"
++ "@internal Registers to be used for an indirect call.
++ This is usually the general registers, but when we are hardening against
++ Straight Line Speculation we disallow x16, x17, and x30 so we can use
++ indirection stubs. These indirection stubs cannot use the above registers
++ since they will be reached by a BL that may have to go through a linker
++ veneer.")
++
+ (define_register_constraint "w" "FP_REGS"
+ "Floating point and SIMD vector registers.")
+
+diff --git a/gcc/config/aarch64/predicates.md b/gcc/config/aarch64/predicates.md
+index 215fcec..1754b1e 100644
+--- a/gcc/config/aarch64/predicates.md
++++ b/gcc/config/aarch64/predicates.md
+@@ -32,7 +32,8 @@
+
+ (define_predicate "aarch64_general_reg"
+ (and (match_operand 0 "register_operand")
+- (match_test "REGNO_REG_CLASS (REGNO (op)) == GENERAL_REGS")))
++ (match_test "REGNO_REG_CLASS (REGNO (op)) == STUB_REGS
++ || REGNO_REG_CLASS (REGNO (op)) == GENERAL_REGS")))
+
+ ;; Return true if OP a (const_int 0) operand.
+ (define_predicate "const0_operand"
+diff --git a/gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-miti-blr-bti.c b/gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-miti-blr-bti.c
+new file mode 100644
+index 0000000..b1fb754
+--- /dev/null
++++ b/gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-miti-blr-bti.c
+@@ -0,0 +1,40 @@
++/* { dg-do compile } */
++/* { dg-additional-options "-mharden-sls=blr -mbranch-protection=bti" } */
++/*
++ Ensure that the SLS hardening of BLR leaves no BLR instructions.
++ Here we also check that there are no BR instructions with anything except an
++ x16 or x17 register. This is because a `BTI c` instruction can be branched
++ to using a BLR instruction using any register, but can only be branched to
++ with a BR using an x16 or x17 register.
++ */
++typedef int (foo) (int, int);
++typedef void (bar) (int, int);
++struct sls_testclass {
++ foo *x;
++ bar *y;
++ int left;
++ int right;
++};
++
++/* We test both RTL patterns for a call which returns a value and a call which
++ does not. */
++int blr_call_value (struct sls_testclass x)
++{
++ int retval = x.x(x.left, x.right);
++ if (retval % 10)
++ return 100;
++ return 9;
++}
++
++int blr_call (struct sls_testclass x)
++{
++ x.y(x.left, x.right);
++ if (x.left % 10)
++ return 100;
++ return 9;
++}
++
++/* { dg-final { scan-assembler-not {\tblr\t} } } */
++/* { dg-final { scan-assembler-not {\tbr\tx(?!16|17)} } } */
++/* { dg-final { scan-assembler {\tbr\tx(16|17)} } } */
++
+diff --git a/gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-miti-blr.c b/gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-miti-blr.c
+new file mode 100644
+index 0000000..88bafff
+--- /dev/null
++++ b/gcc/testsuite/gcc.target/aarch64/sls-mitigation/sls-miti-blr.c
+@@ -0,0 +1,33 @@
++/* { dg-additional-options "-mharden-sls=blr -save-temps" } */
++/* Ensure that the SLS hardening of BLR leaves no BLR instructions.
++ We only test that all BLR instructions have been removed, not that the
++ resulting code makes sense. */
++typedef int (foo) (int, int);
++typedef void (bar) (int, int);
++struct sls_testclass {
++ foo *x;
++ bar *y;
++ int left;
++ int right;
++};
++
++/* We test both RTL patterns for a call which returns a value and a call which
++ does not. */
++int blr_call_value (struct sls_testclass x)
++{
++ int retval = x.x(x.left, x.right);
++ if (retval % 10)
++ return 100;
++ return 9;
++}
++
++int blr_call (struct sls_testclass x)
++{
++ x.y(x.left, x.right);
++ if (x.left % 10)
++ return 100;
++ return 9;
++}
++
++/* { dg-final { scan-assembler-not {\tblr\t} } } */
++/* { dg-final { scan-assembler {\tbr\tx[0-9][0-9]?} } } */
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch b/poky/meta/recipes-devtools/gcc/gcc/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch
index 27237feb5..27237feb5 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0004-64-bit-multilib-hack.patch b/poky/meta/recipes-devtools/gcc/gcc/0004-64-bit-multilib-hack.patch
index 7c751bef6..7c751bef6 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0004-64-bit-multilib-hack.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0004-64-bit-multilib-hack.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0005-optional-libstdc.patch b/poky/meta/recipes-devtools/gcc/gcc/0005-optional-libstdc.patch
index 4020c9e3c..4020c9e3c 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0005-optional-libstdc.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0005-optional-libstdc.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0006-COLLECT_GCC_OPTIONS.patch b/poky/meta/recipes-devtools/gcc/gcc/0006-COLLECT_GCC_OPTIONS.patch
index 9fbbe8070..9fbbe8070 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0006-COLLECT_GCC_OPTIONS.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0006-COLLECT_GCC_OPTIONS.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0007-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch b/poky/meta/recipes-devtools/gcc/gcc/0007-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
index a764bdd0f..a764bdd0f 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0007-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0007-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0008-fortran-cross-compile-hack.patch b/poky/meta/recipes-devtools/gcc/gcc/0008-fortran-cross-compile-hack.patch
index 714db3bef..714db3bef 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0008-fortran-cross-compile-hack.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0008-fortran-cross-compile-hack.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0009-cpp-honor-sysroot.patch b/poky/meta/recipes-devtools/gcc/gcc/0009-cpp-honor-sysroot.patch
index 8ad6853d8..8ad6853d8 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0009-cpp-honor-sysroot.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0009-cpp-honor-sysroot.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0010-MIPS64-Default-to-N64-ABI.patch b/poky/meta/recipes-devtools/gcc/gcc/0010-MIPS64-Default-to-N64-ABI.patch
index 625e2d870..625e2d870 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0010-MIPS64-Default-to-N64-ABI.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0010-MIPS64-Default-to-N64-ABI.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0011-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch b/poky/meta/recipes-devtools/gcc/gcc/0011-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
index e35797633..e35797633 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0011-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0011-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0012-gcc-Fix-argument-list-too-long-error.patch b/poky/meta/recipes-devtools/gcc/gcc/0012-gcc-Fix-argument-list-too-long-error.patch
index acbd75f13..88e1715b5 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0012-gcc-Fix-argument-list-too-long-error.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0012-gcc-Fix-argument-list-too-long-error.patch
@@ -17,6 +17,10 @@ $(sort list) doesn't need this.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
+RP: gcc then added *.h and *.def additions to this list, breaking the original
+fix. Add the sort to the original gcc code, leaving the tr+sort to fix the original
+issue but include the new files too as reported by Zhuang <qiuguang.zqg@alibaba-inc.com>
+
Upstream-Status: Pending
---
gcc/Makefile.in | 2 +-
@@ -31,7 +35,7 @@ index a67d2cc18d6..480c9366418 100644
# files. All other files are flattened to a single directory.
$(mkinstalldirs) $(DESTDIR)$(plugin_includedir)
- headers=`echo $(PLUGIN_HEADERS) $$(cd $(srcdir); echo *.h *.def) | tr ' ' '\012' | sort -u`; \
-+ headers="$(sort $(PLUGIN_HEADERS) $$(cd $(srcdir); echo *.h *.def))"; \
++ headers=`echo $(sort $(PLUGIN_HEADERS)) $$(cd $(srcdir); echo *.h *.def) | tr ' ' '\012' | sort -u`; \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`; \
for file in $$headers; do \
if [ -f $$file ] ; then \
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0013-Disable-sdt.patch b/poky/meta/recipes-devtools/gcc/gcc/0013-Disable-sdt.patch
index 207cdb57a..207cdb57a 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0013-Disable-sdt.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0013-Disable-sdt.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0014-libtool.patch b/poky/meta/recipes-devtools/gcc/gcc/0014-libtool.patch
index f4e70c3b1..f4e70c3b1 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0014-libtool.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0014-libtool.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0015-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch b/poky/meta/recipes-devtools/gcc/gcc/0015-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch
index bc2674abc..bc2674abc 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0015-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0015-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0016-Use-the-multilib-config-files-from-B-instead-of-usin.patch b/poky/meta/recipes-devtools/gcc/gcc/0016-Use-the-multilib-config-files-from-B-instead-of-usin.patch
index 1dc4bb859..1dc4bb859 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0016-Use-the-multilib-config-files-from-B-instead-of-usin.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0016-Use-the-multilib-config-files-from-B-instead-of-usin.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0017-Avoid-using-libdir-from-.la-which-usually-points-to-.patch b/poky/meta/recipes-devtools/gcc/gcc/0017-Avoid-using-libdir-from-.la-which-usually-points-to-.patch
index 05f12847e..05f12847e 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0017-Avoid-using-libdir-from-.la-which-usually-points-to-.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0017-Avoid-using-libdir-from-.la-which-usually-points-to-.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0018-export-CPP.patch b/poky/meta/recipes-devtools/gcc/gcc/0018-export-CPP.patch
index 886a1221d..886a1221d 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0018-export-CPP.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0018-export-CPP.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0019-Ensure-target-gcc-headers-can-be-included.patch b/poky/meta/recipes-devtools/gcc/gcc/0019-Ensure-target-gcc-headers-can-be-included.patch
index 2797b2c22..2797b2c22 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0019-Ensure-target-gcc-headers-can-be-included.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0019-Ensure-target-gcc-headers-can-be-included.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0020-Don-t-search-host-directory-during-relink-if-inst_pr.patch b/poky/meta/recipes-devtools/gcc/gcc/0020-Don-t-search-host-directory-during-relink-if-inst_pr.patch
index c3baf8b45..c3baf8b45 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0020-Don-t-search-host-directory-during-relink-if-inst_pr.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0020-Don-t-search-host-directory-during-relink-if-inst_pr.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0021-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch b/poky/meta/recipes-devtools/gcc/gcc/0021-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch
index abee48669..abee48669 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0021-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0021-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0022-aarch64-Add-support-for-musl-ldso.patch b/poky/meta/recipes-devtools/gcc/gcc/0022-aarch64-Add-support-for-musl-ldso.patch
index c55b66d4b..c55b66d4b 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0022-aarch64-Add-support-for-musl-ldso.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0022-aarch64-Add-support-for-musl-ldso.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0023-libcc1-fix-libcc1-s-install-path-and-rpath.patch b/poky/meta/recipes-devtools/gcc/gcc/0023-libcc1-fix-libcc1-s-install-path-and-rpath.patch
index 80c4d2292..80c4d2292 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0023-libcc1-fix-libcc1-s-install-path-and-rpath.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0023-libcc1-fix-libcc1-s-install-path-and-rpath.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0024-handle-sysroot-support-for-nativesdk-gcc.patch b/poky/meta/recipes-devtools/gcc/gcc/0024-handle-sysroot-support-for-nativesdk-gcc.patch
index 1a65ece7b..1a65ece7b 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0024-handle-sysroot-support-for-nativesdk-gcc.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0024-handle-sysroot-support-for-nativesdk-gcc.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0025-Search-target-sysroot-gcc-version-specific-dirs-with.patch b/poky/meta/recipes-devtools/gcc/gcc/0025-Search-target-sysroot-gcc-version-specific-dirs-with.patch
index abf1f8491..abf1f8491 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0025-Search-target-sysroot-gcc-version-specific-dirs-with.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0025-Search-target-sysroot-gcc-version-specific-dirs-with.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0026-Fix-various-_FOR_BUILD-and-related-variables.patch b/poky/meta/recipes-devtools/gcc/gcc/0026-Fix-various-_FOR_BUILD-and-related-variables.patch
index 97bf2f3a7..97bf2f3a7 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0026-Fix-various-_FOR_BUILD-and-related-variables.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0026-Fix-various-_FOR_BUILD-and-related-variables.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0027-nios2-Define-MUSL_DYNAMIC_LINKER.patch b/poky/meta/recipes-devtools/gcc/gcc/0027-nios2-Define-MUSL_DYNAMIC_LINKER.patch
index 3cd75b718..3cd75b718 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0027-nios2-Define-MUSL_DYNAMIC_LINKER.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0027-nios2-Define-MUSL_DYNAMIC_LINKER.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0028-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch b/poky/meta/recipes-devtools/gcc/gcc/0028-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch
index 2a6769a82..2a6769a82 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0028-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0028-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0029-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch b/poky/meta/recipes-devtools/gcc/gcc/0029-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch
index 767cba038..767cba038 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0029-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0029-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0030-sync-gcc-stddef.h-with-musl.patch b/poky/meta/recipes-devtools/gcc/gcc/0030-sync-gcc-stddef.h-with-musl.patch
index 4f18907a1..4f18907a1 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0030-sync-gcc-stddef.h-with-musl.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0030-sync-gcc-stddef.h-with-musl.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0031-fix-segmentation-fault-in-precompiled-header-generat.patch b/poky/meta/recipes-devtools/gcc/gcc/0031-fix-segmentation-fault-in-precompiled-header-generat.patch
index 702279af0..702279af0 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0031-fix-segmentation-fault-in-precompiled-header-generat.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0031-fix-segmentation-fault-in-precompiled-header-generat.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0032-Fix-for-testsuite-failure.patch b/poky/meta/recipes-devtools/gcc/gcc/0032-Fix-for-testsuite-failure.patch
index 0a0767b44..0a0767b44 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0032-Fix-for-testsuite-failure.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0032-Fix-for-testsuite-failure.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0033-Re-introduce-spe-commandline-options.patch b/poky/meta/recipes-devtools/gcc/gcc/0033-Re-introduce-spe-commandline-options.patch
index ba7c2b8fd..ba7c2b8fd 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0033-Re-introduce-spe-commandline-options.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0033-Re-introduce-spe-commandline-options.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0034-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch b/poky/meta/recipes-devtools/gcc/gcc/0034-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch
index 4ce9dc6de..4ce9dc6de 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0034-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0034-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0035-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch b/poky/meta/recipes-devtools/gcc/gcc/0035-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch
index dd1bf6ded..dd1bf6ded 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0035-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0035-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0037-mingw32-Enable-operation_not_supported.patch b/poky/meta/recipes-devtools/gcc/gcc/0036-mingw32-Enable-operation_not_supported.patch
index de82a3a53..de82a3a53 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0037-mingw32-Enable-operation_not_supported.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0036-mingw32-Enable-operation_not_supported.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-libatomic-Do-not-enforce-march-on-aarch64.patch b/poky/meta/recipes-devtools/gcc/gcc/0037-libatomic-Do-not-enforce-march-on-aarch64.patch
index 3946acea1..3946acea1 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-libatomic-Do-not-enforce-march-on-aarch64.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0037-libatomic-Do-not-enforce-march-on-aarch64.patch
diff --git a/poky/meta/recipes-devtools/gcc/gcc_10.1.bb b/poky/meta/recipes-devtools/gcc/gcc_10.2.bb
index 7d9359058..7d9359058 100644
--- a/poky/meta/recipes-devtools/gcc/gcc_10.1.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc_10.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/libgcc-initial_10.1.bb b/poky/meta/recipes-devtools/gcc/libgcc-initial_10.2.bb
index 0c698c26e..0c698c26e 100644
--- a/poky/meta/recipes-devtools/gcc/libgcc-initial_10.1.bb
+++ b/poky/meta/recipes-devtools/gcc/libgcc-initial_10.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/libgcc_10.1.bb b/poky/meta/recipes-devtools/gcc/libgcc_10.2.bb
index ea210a113..ea210a113 100644
--- a/poky/meta/recipes-devtools/gcc/libgcc_10.1.bb
+++ b/poky/meta/recipes-devtools/gcc/libgcc_10.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/libgfortran_10.1.bb b/poky/meta/recipes-devtools/gcc/libgfortran_10.2.bb
index 71dd8b4bd..71dd8b4bd 100644
--- a/poky/meta/recipes-devtools/gcc/libgfortran_10.1.bb
+++ b/poky/meta/recipes-devtools/gcc/libgfortran_10.2.bb
diff --git a/poky/meta/recipes-devtools/gdb/gdb-9.1.inc b/poky/meta/recipes-devtools/gdb/gdb-9.2.inc
index d019e6b38..017b61ef6 100644
--- a/poky/meta/recipes-devtools/gdb/gdb-9.1.inc
+++ b/poky/meta/recipes-devtools/gdb/gdb-9.2.inc
@@ -17,5 +17,5 @@ SRC_URI = "${GNU_MIRROR}/gdb/gdb-${PV}.tar.xz \
file://0010-Fix-invalid-sigprocmask-call.patch \
file://0011-gdbserver-ctrl-c-handling.patch \
"
-SRC_URI[md5sum] = "f7e9f6236c425097d9e5f18a6ac40655"
-SRC_URI[sha256sum] = "699e0ec832fdd2f21c8266171ea5bf44024bd05164fdf064e4d10cc4cf0d1737"
+SRC_URI[md5sum] = "db95524e554870209ab7d9f8fd8dc557"
+SRC_URI[sha256sum] = "360cd7ae79b776988e89d8f9a01c985d0b1fa21c767a4295e5f88cb49175c555"
diff --git a/poky/meta/recipes-devtools/gdb/gdb-cross-canadian_9.1.bb b/poky/meta/recipes-devtools/gdb/gdb-cross-canadian_9.2.bb
index 301035940..301035940 100644
--- a/poky/meta/recipes-devtools/gdb/gdb-cross-canadian_9.1.bb
+++ b/poky/meta/recipes-devtools/gdb/gdb-cross-canadian_9.2.bb
diff --git a/poky/meta/recipes-devtools/gdb/gdb-cross_9.1.bb b/poky/meta/recipes-devtools/gdb/gdb-cross_9.2.bb
index 50cf159fd..50cf159fd 100644
--- a/poky/meta/recipes-devtools/gdb/gdb-cross_9.1.bb
+++ b/poky/meta/recipes-devtools/gdb/gdb-cross_9.2.bb
diff --git a/poky/meta/recipes-devtools/gdb/gdb_9.1.bb b/poky/meta/recipes-devtools/gdb/gdb_9.2.bb
index d70757a15..d70757a15 100644
--- a/poky/meta/recipes-devtools/gdb/gdb_9.1.bb
+++ b/poky/meta/recipes-devtools/gdb/gdb_9.2.bb
diff --git a/poky/meta/recipes-devtools/git/git_2.26.2.bb b/poky/meta/recipes-devtools/git/git_2.28.0.bb
index ae7aa267b..e90787d06 100644
--- a/poky/meta/recipes-devtools/git/git_2.26.2.bb
+++ b/poky/meta/recipes-devtools/git/git_2.28.0.bb
@@ -5,6 +5,5 @@ EXTRA_OECONF += "ac_cv_snprintf_returns_bogus=no \
"
EXTRA_OEMAKE += "NO_GETTEXT=1"
-SRC_URI[tarball.sha256sum] = "e1c17777528f55696815ef33587b1d20f5eec246669f3b839d15dbfffad9c121"
-SRC_URI[manpages.sha256sum] = "b3c6cfc980f3c593d0cd0c63e0c97d6f1cafe7b72321fc3a94948758b9529c5b"
-
+SRC_URI[tarball.sha256sum] = "f914c60a874d466c1e18467c864a910dd4ea22281ba6d4d58077cb0c3f115170"
+SRC_URI[manpages.sha256sum] = "3cfca28a88d5b8112ea42322b797a500a14d0acddea391aed0462aff1ab11bf7"
diff --git a/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb b/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb
index 48b7e6d4a..ae03a99a6 100644
--- a/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb
+++ b/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb
@@ -8,8 +8,8 @@ DEPENDS_class-native = "hostperl-runtime-native"
INHIBIT_DEFAULT_DEPS = "1"
-SRCREV = "5256817ace8493502ec88501a19e4051c2e220b0"
-PV = "20200117+git${SRCPV}"
+SRCREV = "0b5188819ba6091770064adf26360b204113317e"
+PV = "20200831+git${SRCPV}"
SRC_URI = "git://git.savannah.gnu.org/config.git \
file://gnu-configize.in"
diff --git a/poky/meta/recipes-devtools/go/go-1.14/0009-ld-replace-glibc-dynamic-linker-with-musl.patch b/poky/meta/recipes-devtools/go/go-1.14/0009-ld-replace-glibc-dynamic-linker-with-musl.patch
deleted file mode 100644
index 427cfb0dd..000000000
--- a/poky/meta/recipes-devtools/go/go-1.14/0009-ld-replace-glibc-dynamic-linker-with-musl.patch
+++ /dev/null
@@ -1,115 +0,0 @@
-From 973251ae0c69a35721f6115345d3f57b2847979f Mon Sep 17 00:00:00 2001
-From: Alex Kube <alexander.j.kube@gmail.com>
-Date: Wed, 23 Oct 2019 21:20:13 +0430
-Subject: [PATCH 9/9] ld: replace glibc dynamic linker with musl
-
-Rework of patch by Khem Raj <raj.khem@gmail.com>
-for go 1.10. Should be applied conditionally on
-musl being the system C library.
-
-Adapted to Go 1.13 from patches originally submitted to
-the meta/recipes-devtools/go tree by
-Matt Madison <matt@madison.systems>.
-
-Upstream-Status: Inappropriate [Real fix should be portable across libcs]
-
-Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
----
- src/cmd/link/internal/amd64/obj.go | 2 +-
- src/cmd/link/internal/arm/obj.go | 2 +-
- src/cmd/link/internal/arm64/obj.go | 2 +-
- src/cmd/link/internal/mips/obj.go | 2 +-
- src/cmd/link/internal/mips64/obj.go | 2 +-
- src/cmd/link/internal/ppc64/obj.go | 2 +-
- src/cmd/link/internal/s390x/obj.go | 2 +-
- src/cmd/link/internal/x86/obj.go | 2 +-
- 8 files changed, 8 insertions(+), 8 deletions(-)
-
---- a/src/cmd/link/internal/amd64/obj.go
-+++ b/src/cmd/link/internal/amd64/obj.go
-@@ -59,7 +59,7 @@ func Init() (*sys.Arch, ld.Arch) {
- PEreloc1: pereloc1,
- TLSIEtoLE: tlsIEtoLE,
-
-- Linuxdynld: "/lib64/ld-linux-x86-64.so.2",
-+ Linuxdynld: "/lib64/ld-musl-x86-64.so.1",
- Freebsddynld: "/libexec/ld-elf.so.1",
- Openbsddynld: "/usr/libexec/ld.so",
- Netbsddynld: "/libexec/ld.elf_so",
---- a/src/cmd/link/internal/arm/obj.go
-+++ b/src/cmd/link/internal/arm/obj.go
-@@ -59,7 +59,7 @@ func Init() (*sys.Arch, ld.Arch) {
- Machoreloc1: machoreloc1,
- PEreloc1: pereloc1,
-
-- Linuxdynld: "/lib/ld-linux.so.3", // 2 for OABI, 3 for EABI
-+ Linuxdynld: "/lib/ld-musl-armhf.so.1",
- Freebsddynld: "/usr/libexec/ld-elf.so.1",
- Openbsddynld: "/usr/libexec/ld.so",
- Netbsddynld: "/libexec/ld.elf_so",
---- a/src/cmd/link/internal/arm64/obj.go
-+++ b/src/cmd/link/internal/arm64/obj.go
-@@ -57,7 +57,7 @@ func Init() (*sys.Arch, ld.Arch) {
- Gentext: gentext,
- Machoreloc1: machoreloc1,
-
-- Linuxdynld: "/lib/ld-linux-aarch64.so.1",
-+ Linuxdynld: "/lib/ld-musl-aarch64.so.1",
-
- Freebsddynld: "/usr/libexec/ld-elf.so.1",
- Openbsddynld: "/usr/libexec/ld.so",
---- a/src/cmd/link/internal/mips/obj.go
-+++ b/src/cmd/link/internal/mips/obj.go
-@@ -60,7 +60,7 @@ func Init() (*sys.Arch, ld.Arch) {
- Gentext: gentext,
- Machoreloc1: machoreloc1,
-
-- Linuxdynld: "/lib/ld.so.1",
-+ Linuxdynld: "/lib/ld-musl-mipsle.so.1",
-
- Freebsddynld: "XXX",
- Openbsddynld: "XXX",
---- a/src/cmd/link/internal/mips64/obj.go
-+++ b/src/cmd/link/internal/mips64/obj.go
-@@ -59,7 +59,7 @@ func Init() (*sys.Arch, ld.Arch) {
- Gentext: gentext,
- Machoreloc1: machoreloc1,
-
-- Linuxdynld: "/lib64/ld64.so.1",
-+ Linuxdynld: "/lib64/ld-musl-mips64le.so.1",
- Freebsddynld: "XXX",
- Openbsddynld: "XXX",
- Netbsddynld: "XXX",
---- a/src/cmd/link/internal/ppc64/obj.go
-+++ b/src/cmd/link/internal/ppc64/obj.go
-@@ -63,7 +63,7 @@ func Init() (*sys.Arch, ld.Arch) {
- Xcoffreloc1: xcoffreloc1,
-
- // TODO(austin): ABI v1 uses /usr/lib/ld.so.1,
-- Linuxdynld: "/lib64/ld64.so.1",
-+ Linuxdynld: "/lib64/ld-musl-powerpc64le.so.1",
-
- Freebsddynld: "XXX",
- Openbsddynld: "XXX",
---- a/src/cmd/link/internal/s390x/obj.go
-+++ b/src/cmd/link/internal/s390x/obj.go
-@@ -57,7 +57,7 @@ func Init() (*sys.Arch, ld.Arch) {
- Gentext: gentext,
- Machoreloc1: machoreloc1,
-
-- Linuxdynld: "/lib64/ld64.so.1",
-+ Linuxdynld: "/lib64/ld-musl-s390x.so.1",
-
- // not relevant for s390x
- Freebsddynld: "XXX",
---- a/src/cmd/link/internal/x86/obj.go
-+++ b/src/cmd/link/internal/x86/obj.go
-@@ -58,7 +58,7 @@ func Init() (*sys.Arch, ld.Arch) {
- Machoreloc1: machoreloc1,
- PEreloc1: pereloc1,
-
-- Linuxdynld: "/lib/ld-linux.so.2",
-+ Linuxdynld: "/lib/ld-musl-i386.so.1",
- Freebsddynld: "/usr/libexec/ld-elf.so.1",
- Openbsddynld: "/usr/libexec/ld.so",
- Netbsddynld: "/usr/libexec/ld.elf_so",
diff --git a/poky/meta/recipes-devtools/go/go-1.14.inc b/poky/meta/recipes-devtools/go/go-1.15.inc
index c52593db6..97d748b92 100644
--- a/poky/meta/recipes-devtools/go/go-1.14.inc
+++ b/poky/meta/recipes-devtools/go/go-1.15.inc
@@ -1,7 +1,7 @@
require go-common.inc
-GO_BASEVERSION = "1.14"
-GO_MINOR = ".1"
+GO_BASEVERSION = "1.15"
+GO_MINOR = ".2"
PV .= "${GO_MINOR}"
FILESEXTRAPATHS_prepend := "${FILE_DIRNAME}/go-${GO_BASEVERSION}:"
@@ -17,6 +17,4 @@ SRC_URI += "\
file://0007-cmd-go-make-GOROOT-precious-by-default.patch \
file://0008-use-GOBUILDMODE-to-set-buildmode.patch \
"
-SRC_URI_append_libc-musl = " file://0009-ld-replace-glibc-dynamic-linker-with-musl.patch"
-
-SRC_URI[main.sha256sum] = "2ad2572115b0d1b4cb4c138e6b3a31cee6294cb48af75ee86bec3dca04507676"
+SRC_URI[main.sha256sum] = "28bf9d0bcde251011caae230a4a05d917b172ea203f2a62f2c2f9533589d4b4d"
diff --git a/poky/meta/recipes-devtools/go/go-1.14/0001-allow-CC-and-CXX-to-have-multiple-words.patch b/poky/meta/recipes-devtools/go/go-1.15/0001-allow-CC-and-CXX-to-have-multiple-words.patch
index d47664d8e..5f4823be2 100644
--- a/poky/meta/recipes-devtools/go/go-1.14/0001-allow-CC-and-CXX-to-have-multiple-words.patch
+++ b/poky/meta/recipes-devtools/go/go-1.15/0001-allow-CC-and-CXX-to-have-multiple-words.patch
@@ -17,7 +17,7 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
--- a/src/cmd/go/internal/envcmd/env.go
+++ b/src/cmd/go/internal/envcmd/env.go
-@@ -102,11 +102,11 @@ func MkEnv() []cfg.EnvVar {
+@@ -103,11 +103,11 @@ func MkEnv() []cfg.EnvVar {
cc := cfg.DefaultCC(cfg.Goos, cfg.Goarch)
if env := strings.Fields(cfg.Getenv("CC")); len(env) > 0 {
diff --git a/poky/meta/recipes-devtools/go/go-1.14/0002-cmd-go-make-content-based-hash-generation-less-pedan.patch b/poky/meta/recipes-devtools/go/go-1.15/0002-cmd-go-make-content-based-hash-generation-less-pedan.patch
index 9e88567eb..d0511c0c4 100644
--- a/poky/meta/recipes-devtools/go/go-1.14/0002-cmd-go-make-content-based-hash-generation-less-pedan.patch
+++ b/poky/meta/recipes-devtools/go/go-1.15/0002-cmd-go-make-content-based-hash-generation-less-pedan.patch
@@ -52,7 +52,7 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
--- a/src/cmd/go/internal/envcmd/env.go
+++ b/src/cmd/go/internal/envcmd/env.go
-@@ -156,7 +156,7 @@ func ExtraEnvVars() []cfg.EnvVar {
+@@ -157,7 +157,7 @@ func ExtraEnvVars() []cfg.EnvVar {
func ExtraEnvVarsCostly() []cfg.EnvVar {
var b work.Builder
b.Init()
@@ -63,8 +63,8 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
fmt.Fprintf(os.Stderr, "go: invalid cflags: %v\n", err)
--- a/src/cmd/go/internal/work/exec.go
+++ b/src/cmd/go/internal/work/exec.go
-@@ -32,6 +32,8 @@ import (
- "time"
+@@ -33,6 +33,8 @@ import (
+ "cmd/go/internal/str"
)
+var omitGopath = os.Getenv("GOPATH_OMIT_IN_ACTIONID") != ""
@@ -72,7 +72,7 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
// actionList returns the list of actions in the dag rooted at root
// as visited in a depth-first post-order traversal.
func actionList(root *Action) []*Action {
-@@ -208,7 +210,7 @@ func (b *Builder) buildActionID(a *Actio
+@@ -209,7 +211,7 @@ func (b *Builder) buildActionID(a *Actio
// Assume b.WorkDir is being trimmed properly.
// When -trimpath is used with a package built from the module cache,
// use the module path and version instead of the directory.
@@ -81,7 +81,7 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
fmt.Fprintf(h, "dir %s\n", p.Dir)
} else if cfg.BuildTrimpath && p.Module != nil {
fmt.Fprintf(h, "module %s@%s\n", p.Module.Path, p.Module.Version)
-@@ -224,13 +226,13 @@ func (b *Builder) buildActionID(a *Actio
+@@ -228,13 +230,13 @@ func (b *Builder) buildActionID(a *Actio
}
if len(p.CgoFiles)+len(p.SwigFiles) > 0 {
fmt.Fprintf(h, "cgo %q\n", b.toolID("cgo"))
@@ -99,7 +99,7 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
}
// TODO(rsc): Should we include the SWIG version or Fortran/GCC/G++/Objective-C compiler versions?
}
-@@ -2228,33 +2230,48 @@ var (
+@@ -2298,33 +2300,48 @@ var (
// gccCmd returns a gcc command line prefix
// defaultCC is defined in zdefaultcc.go, written by cmd/dist.
func (b *Builder) GccCmd(incdir, workdir string) []string {
@@ -157,7 +157,7 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
}
// compilerExe returns the compiler to use given an
-@@ -2263,11 +2280,16 @@ func (b *Builder) fcExe() []string {
+@@ -2333,11 +2350,16 @@ func (b *Builder) fcExe() []string {
// of the compiler but can have additional arguments if they
// were present in the environment value.
// For example if CC="gcc -DGOPHER" then the result is ["gcc", "-DGOPHER"].
@@ -175,7 +175,7 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
return compiler
}
-@@ -2428,7 +2450,7 @@ func envList(key, def string) []string {
+@@ -2510,7 +2532,7 @@ func envList(key, def string) []string {
}
// CFlags returns the flags to use when invoking the C, C++ or Fortran compilers, or cgo.
@@ -184,7 +184,7 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
defaults := "-g -O2"
if cppflags, err = buildFlags("CPPFLAGS", "", p.CgoCPPFLAGS, checkCompilerFlags); err != nil {
-@@ -2447,6 +2469,14 @@ func (b *Builder) CFlags(p *load.Package
+@@ -2529,6 +2551,14 @@ func (b *Builder) CFlags(p *load.Package
return
}
@@ -199,7 +199,7 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
return
}
-@@ -2461,7 +2491,7 @@ var cgoRe = lazyregexp.New(`[/\\:]`)
+@@ -2543,7 +2573,7 @@ var cgoRe = lazyregexp.New(`[/\\:]`)
func (b *Builder) cgo(a *Action, cgoExe, objdir string, pcCFLAGS, pcLDFLAGS, cgofiles, gccfiles, gxxfiles, mfiles, ffiles []string) (outGo, outObj []string, err error) {
p := a.Package
@@ -208,7 +208,7 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
if err != nil {
return nil, nil, err
}
-@@ -2820,7 +2850,7 @@ func (b *Builder) swigIntSize(objdir str
+@@ -2902,7 +2932,7 @@ func (b *Builder) swigIntSize(objdir str
// Run SWIG on one SWIG input file.
func (b *Builder) swigOne(a *Action, p *load.Package, file, objdir string, pcCFLAGS []string, cxx bool, intgosize string) (outGo, outC string, err error) {
diff --git a/poky/meta/recipes-devtools/go/go-1.14/0003-allow-GOTOOLDIR-to-be-overridden-in-the-environment.patch b/poky/meta/recipes-devtools/go/go-1.15/0003-allow-GOTOOLDIR-to-be-overridden-in-the-environment.patch
index 662c70547..662c70547 100644
--- a/poky/meta/recipes-devtools/go/go-1.14/0003-allow-GOTOOLDIR-to-be-overridden-in-the-environment.patch
+++ b/poky/meta/recipes-devtools/go/go-1.15/0003-allow-GOTOOLDIR-to-be-overridden-in-the-environment.patch
diff --git a/poky/meta/recipes-devtools/go/go-1.14/0004-ld-add-soname-to-shareable-objects.patch b/poky/meta/recipes-devtools/go/go-1.15/0004-ld-add-soname-to-shareable-objects.patch
index 75c9c7521..da2992392 100644
--- a/poky/meta/recipes-devtools/go/go-1.14/0004-ld-add-soname-to-shareable-objects.patch
+++ b/poky/meta/recipes-devtools/go/go-1.15/0004-ld-add-soname-to-shareable-objects.patch
@@ -19,7 +19,7 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
--- a/src/cmd/link/internal/ld/lib.go
+++ b/src/cmd/link/internal/ld/lib.go
-@@ -1280,6 +1280,7 @@ func (ctxt *Link) hostlink() {
+@@ -1446,6 +1446,7 @@ func (ctxt *Link) hostlink() {
argv = append(argv, "-Wl,-z,relro")
}
argv = append(argv, "-shared")
@@ -27,7 +27,7 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
if ctxt.HeadType != objabi.Hwindows {
// Pass -z nodelete to mark the shared library as
// non-closeable: a dlclose will do nothing.
-@@ -1291,6 +1292,7 @@ func (ctxt *Link) hostlink() {
+@@ -1457,6 +1458,7 @@ func (ctxt *Link) hostlink() {
argv = append(argv, "-Wl,-z,relro")
}
argv = append(argv, "-shared")
@@ -35,7 +35,7 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
case BuildModePlugin:
if ctxt.HeadType == objabi.Hdarwin {
argv = append(argv, "-dynamiclib")
-@@ -1299,6 +1301,7 @@ func (ctxt *Link) hostlink() {
+@@ -1465,6 +1467,7 @@ func (ctxt *Link) hostlink() {
argv = append(argv, "-Wl,-z,relro")
}
argv = append(argv, "-shared")
diff --git a/poky/meta/recipes-devtools/go/go-1.14/0005-make.bash-override-CC-when-building-dist-and-go_boot.patch b/poky/meta/recipes-devtools/go/go-1.15/0005-make.bash-override-CC-when-building-dist-and-go_boot.patch
index 59c12d954..59c12d954 100644
--- a/poky/meta/recipes-devtools/go/go-1.14/0005-make.bash-override-CC-when-building-dist-and-go_boot.patch
+++ b/poky/meta/recipes-devtools/go/go-1.15/0005-make.bash-override-CC-when-building-dist-and-go_boot.patch
diff --git a/poky/meta/recipes-devtools/go/go-1.14/0006-cmd-dist-separate-host-and-target-builds.patch b/poky/meta/recipes-devtools/go/go-1.15/0006-cmd-dist-separate-host-and-target-builds.patch
index 7aee0bac4..7aee0bac4 100644
--- a/poky/meta/recipes-devtools/go/go-1.14/0006-cmd-dist-separate-host-and-target-builds.patch
+++ b/poky/meta/recipes-devtools/go/go-1.15/0006-cmd-dist-separate-host-and-target-builds.patch
diff --git a/poky/meta/recipes-devtools/go/go-1.14/0007-cmd-go-make-GOROOT-precious-by-default.patch b/poky/meta/recipes-devtools/go/go-1.15/0007-cmd-go-make-GOROOT-precious-by-default.patch
index b93f83de6..4b4d0d4f3 100644
--- a/poky/meta/recipes-devtools/go/go-1.14/0007-cmd-go-make-GOROOT-precious-by-default.patch
+++ b/poky/meta/recipes-devtools/go/go-1.15/0007-cmd-go-make-GOROOT-precious-by-default.patch
@@ -63,7 +63,7 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
// Note that flags consulted by other parts of the code
--- a/src/cmd/go/internal/work/exec.go
+++ b/src/cmd/go/internal/work/exec.go
-@@ -464,6 +464,23 @@ func (b *Builder) build(a *Action) (err
+@@ -468,6 +468,23 @@ func (b *Builder) build(a *Action) (err
return errors.New("binary-only packages are no longer supported")
}
@@ -87,8 +87,8 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
if err := b.Mkdir(a.Objdir); err != nil {
return err
}
-@@ -1493,6 +1510,14 @@ func BuildInstallFunc(b *Builder, a *Act
- return nil
+@@ -1520,6 +1537,14 @@ func BuildInstallFunc(b *Builder, a *Act
+ return err
}
+ if goRootPrecious && a.Package != nil {
diff --git a/poky/meta/recipes-devtools/go/go-1.14/0008-use-GOBUILDMODE-to-set-buildmode.patch b/poky/meta/recipes-devtools/go/go-1.15/0008-use-GOBUILDMODE-to-set-buildmode.patch
index b15d9812a..4e5d5021d 100644
--- a/poky/meta/recipes-devtools/go/go-1.14/0008-use-GOBUILDMODE-to-set-buildmode.patch
+++ b/poky/meta/recipes-devtools/go/go-1.15/0008-use-GOBUILDMODE-to-set-buildmode.patch
@@ -25,7 +25,7 @@ Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
--- a/src/cmd/go/internal/work/build.go
+++ b/src/cmd/go/internal/work/build.go
-@@ -251,7 +251,13 @@ func AddBuildFlags(cmd *base.Command, ma
+@@ -254,7 +254,13 @@ func AddBuildFlags(cmd *base.Command, ma
cmd.Flag.Var(&load.BuildAsmflags, "asmflags", "")
cmd.Flag.Var(buildCompiler{}, "compiler", "")
diff --git a/poky/meta/recipes-devtools/go/go-binary-native_1.15.2.bb b/poky/meta/recipes-devtools/go/go-binary-native_1.15.2.bb
new file mode 100644
index 000000000..ccd2d5eba
--- /dev/null
+++ b/poky/meta/recipes-devtools/go/go-binary-native_1.15.2.bb
@@ -0,0 +1,46 @@
+# This recipe is for bootstrapping our go-cross from a prebuilt binary of Go from golang.org.
+
+SUMMARY = "Go programming language compiler (upstream binary for bootstrap)"
+HOMEPAGE = " http://golang.org/"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=5d4950ecb7b26d2c5e4e7b4e0dd74707"
+
+PROVIDES = "go-native"
+
+SRC_URI = "https://dl.google.com/go/go${PV}.${BUILD_GOOS}-${BUILD_GOARCH}.tar.gz;name=go_${BUILD_GOTUPLE}"
+SRC_URI[go_linux_amd64.sha256sum] = "b49fda1ca29a1946d6bb2a5a6982cf07ccd2aba849289508ee0f9918f6bb4552"
+SRC_URI[go_linux_arm64.sha256sum] = "c8ec460cc82d61604b048f9439c06bd591722efce5cd48f49e19b5f6226bd36d"
+
+UPSTREAM_CHECK_URI = "https://golang.org/dl/"
+UPSTREAM_CHECK_REGEX = "go(?P<pver>\d+(\.\d+)+)\.linux"
+
+S = "${WORKDIR}/go"
+
+inherit goarch native
+
+do_compile() {
+ :
+}
+
+make_wrapper() {
+ rm -f ${D}${bindir}/$1
+ cat <<END >${D}${bindir}/$1
+#!/bin/bash
+here=\`dirname \$0\`
+export GOROOT="${GOROOT:-\`readlink -f \$here/../lib/go\`}"
+\$here/../lib/go/bin/$1 "\$@"
+END
+ chmod +x ${D}${bindir}/$1
+}
+
+do_install() {
+ find ${S} -depth -type d -name testdata -exec rm -rf {} +
+
+ install -d ${D}${bindir} ${D}${libdir}/go
+ cp --preserve=mode,timestamps -R ${S}/ ${D}${libdir}/
+
+ for f in ${S}/bin/*
+ do
+ make_wrapper `basename $f`
+ done
+}
diff --git a/poky/meta/recipes-devtools/go/go-cross-canadian_1.14.bb b/poky/meta/recipes-devtools/go/go-cross-canadian_1.15.bb
index 7ac9449e4..7ac9449e4 100644
--- a/poky/meta/recipes-devtools/go/go-cross-canadian_1.14.bb
+++ b/poky/meta/recipes-devtools/go/go-cross-canadian_1.15.bb
diff --git a/poky/meta/recipes-devtools/go/go-cross_1.14.bb b/poky/meta/recipes-devtools/go/go-cross_1.15.bb
index 80b5a03f6..80b5a03f6 100644
--- a/poky/meta/recipes-devtools/go/go-cross_1.14.bb
+++ b/poky/meta/recipes-devtools/go/go-cross_1.15.bb
diff --git a/poky/meta/recipes-devtools/go/go-crosssdk_1.14.bb b/poky/meta/recipes-devtools/go/go-crosssdk_1.15.bb
index 1857c8a57..1857c8a57 100644
--- a/poky/meta/recipes-devtools/go/go-crosssdk_1.14.bb
+++ b/poky/meta/recipes-devtools/go/go-crosssdk_1.15.bb
diff --git a/poky/meta/recipes-devtools/go/go-dep/0001-Update-sys-module-to-latest.patch b/poky/meta/recipes-devtools/go/go-dep/0001-Update-sys-module-to-latest.patch
new file mode 100644
index 000000000..b13bb9e66
--- /dev/null
+++ b/poky/meta/recipes-devtools/go/go-dep/0001-Update-sys-module-to-latest.patch
@@ -0,0 +1,145574 @@
+From f7904cb91a1b18e893ffbd25b450926d145d0e0a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 22 Apr 2020 18:44:48 -0700
+Subject: [PATCH] Update sys module to latest
+
+Gets us riscv support
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Gopkg.lock | 4 +-
+ .../golang.org/x/sys/unix/affinity_linux.go | 86 +
+ vendor/golang.org/x/sys/unix/aliases.go | 14 +
+ vendor/golang.org/x/sys/unix/asm_aix_ppc64.s | 17 +
+ .../x/sys/unix/asm_dragonfly_amd64.s | 10 +-
+ ...sm_linux_mips64x.s => asm_freebsd_arm64.s} | 11 +-
+ vendor/golang.org/x/sys/unix/asm_linux_386.s | 36 +-
+ .../golang.org/x/sys/unix/asm_linux_amd64.s | 30 +-
+ vendor/golang.org/x/sys/unix/asm_linux_arm.s | 35 +-
+ .../golang.org/x/sys/unix/asm_linux_arm64.s | 30 +-
+ .../golang.org/x/sys/unix/asm_linux_mips64x.s | 36 +-
+ .../golang.org/x/sys/unix/asm_linux_mipsx.s | 33 +-
+ .../golang.org/x/sys/unix/asm_linux_ppc64x.s | 38 +-
+ .../golang.org/x/sys/unix/asm_linux_riscv64.s | 47 +
+ .../golang.org/x/sys/unix/asm_linux_s390x.s | 28 +
+ ...asm_linux_mips64x.s => asm_netbsd_arm64.s} | 17 +-
+ ...sm_linux_mips64x.s => asm_openbsd_arm64.s} | 9 +-
+ .../golang.org/x/sys/unix/bluetooth_linux.go | 1 +
+ vendor/golang.org/x/sys/unix/cap_freebsd.go | 30 +-
+ vendor/golang.org/x/sys/unix/constants.go | 2 +-
+ vendor/golang.org/x/sys/unix/dev_aix_ppc.go | 27 +
+ vendor/golang.org/x/sys/unix/dev_aix_ppc64.go | 29 +
+ vendor/golang.org/x/sys/unix/dev_darwin.go | 24 +
+ vendor/golang.org/x/sys/unix/dev_dragonfly.go | 30 +
+ vendor/golang.org/x/sys/unix/dev_freebsd.go | 30 +
+ vendor/golang.org/x/sys/unix/dev_linux.go | 8 +-
+ vendor/golang.org/x/sys/unix/dev_netbsd.go | 29 +
+ vendor/golang.org/x/sys/unix/dev_openbsd.go | 29 +
+ vendor/golang.org/x/sys/unix/dirent.go | 2 +-
+ vendor/golang.org/x/sys/unix/endian_little.go | 2 +-
+ vendor/golang.org/x/sys/unix/env_unix.go | 8 +-
+ vendor/golang.org/x/sys/unix/env_unset.go | 14 -
+ .../x/sys/unix/errors_freebsd_386.go | 6 +
+ .../x/sys/unix/errors_freebsd_amd64.go | 6 +
+ .../x/sys/unix/errors_freebsd_arm64.go | 17 +
+ .../x/sys/unix/{flock.go => fcntl.go} | 18 +-
+ vendor/golang.org/x/sys/unix/fcntl_darwin.go | 18 +
+ ...ck_linux_32bit.go => fcntl_linux_32bit.go} | 0
+ vendor/golang.org/x/sys/unix/fdset.go | 29 +
+ vendor/golang.org/x/sys/unix/file_unix.go | 27 -
+ vendor/golang.org/x/sys/unix/gccgo.go | 20 +-
+ vendor/golang.org/x/sys/unix/gccgo_c.c | 12 +-
+ .../x/sys/unix/gccgo_linux_amd64.go | 2 +-
+ .../x/sys/unix/gccgo_linux_sparc64.go | 20 -
+ vendor/golang.org/x/sys/unix/ioctl.go | 65 +
+ vendor/golang.org/x/sys/unix/mkasm_darwin.go | 78 +
+ vendor/golang.org/x/sys/unix/mkmerge.go | 521 +++
+ vendor/golang.org/x/sys/unix/mkpost.go | 63 +-
+ vendor/golang.org/x/sys/unix/mksyscall.go | 402 +++
+ .../x/sys/unix/mksyscall_aix_ppc.go | 415 +++
+ .../x/sys/unix/mksyscall_aix_ppc64.go | 614 ++++
+ .../x/sys/unix/mksyscall_solaris.go | 341 ++
+ .../golang.org/x/sys/unix/mksysctl_openbsd.go | 355 +++
+ vendor/golang.org/x/sys/unix/mksysnum.go | 190 ++
+ .../golang.org/x/sys/unix/openbsd_pledge.go | 38 -
+ vendor/golang.org/x/sys/unix/pagesize_unix.go | 15 +
+ .../golang.org/x/sys/unix/pledge_openbsd.go | 163 +
+ vendor/golang.org/x/sys/unix/race.go | 2 +-
+ vendor/golang.org/x/sys/unix/race0.go | 4 +-
+ .../x/sys/unix/readdirent_getdents.go | 12 +
+ .../x/sys/unix/readdirent_getdirentries.go | 19 +
+ .../x/sys/unix/sockcmsg_dragonfly.go | 16 +
+ .../golang.org/x/sys/unix/sockcmsg_linux.go | 4 +-
+ vendor/golang.org/x/sys/unix/sockcmsg_unix.go | 28 +-
+ .../x/sys/unix/sockcmsg_unix_other.go | 38 +
+ vendor/golang.org/x/sys/unix/str.go | 2 +-
+ vendor/golang.org/x/sys/unix/syscall.go | 38 +-
+ vendor/golang.org/x/sys/unix/syscall_aix.go | 536 ++++
+ .../golang.org/x/sys/unix/syscall_aix_ppc.go | 54 +
+ .../x/sys/unix/syscall_aix_ppc64.go | 85 +
+ vendor/golang.org/x/sys/unix/syscall_bsd.go | 112 +-
+ .../x/sys/unix/syscall_darwin.1_12.go | 29 +
+ .../x/sys/unix/syscall_darwin.1_13.go | 101 +
+ .../golang.org/x/sys/unix/syscall_darwin.go | 263 +-
+ .../x/sys/unix/syscall_darwin_386.1_11.go | 9 +
+ .../x/sys/unix/syscall_darwin_386.go | 45 +-
+ .../x/sys/unix/syscall_darwin_amd64.1_11.go | 9 +
+ .../x/sys/unix/syscall_darwin_amd64.go | 45 +-
+ .../x/sys/unix/syscall_darwin_arm.1_11.go | 11 +
+ .../x/sys/unix/syscall_darwin_arm.go | 51 +-
+ .../x/sys/unix/syscall_darwin_arm64.1_11.go | 11 +
+ .../x/sys/unix/syscall_darwin_arm64.go | 47 +-
+ .../x/sys/unix/syscall_darwin_libSystem.go | 33 +
+ .../x/sys/unix/syscall_dragonfly.go | 136 +-
+ .../x/sys/unix/syscall_dragonfly_amd64.go | 21 +-
+ .../golang.org/x/sys/unix/syscall_freebsd.go | 592 ++--
+ .../x/sys/unix/syscall_freebsd_386.go | 31 +-
+ .../x/sys/unix/syscall_freebsd_amd64.go | 31 +-
+ .../x/sys/unix/syscall_freebsd_arm.go | 27 +-
+ ...nfly_amd64.go => syscall_freebsd_arm64.go} | 31 +-
+ .../golang.org/x/sys/unix/syscall_illumos.go | 57 +
+ vendor/golang.org/x/sys/unix/syscall_linux.go | 1030 +++++-
+ .../x/sys/unix/syscall_linux_386.go | 47 +-
+ .../x/sys/unix/syscall_linux_amd64.go | 80 +-
+ .../x/sys/unix/syscall_linux_arm.go | 64 +-
+ .../x/sys/unix/syscall_linux_arm64.go | 111 +-
+ .../golang.org/x/sys/unix/syscall_linux_gc.go | 14 +
+ .../x/sys/unix/syscall_linux_gc_386.go | 16 +
+ .../x/sys/unix/syscall_linux_gccgo_386.go | 30 +
+ .../x/sys/unix/syscall_linux_gccgo_arm.go | 20 +
+ .../x/sys/unix/syscall_linux_mips64x.go | 53 +-
+ .../x/sys/unix/syscall_linux_mipsx.go | 47 +-
+ .../x/sys/unix/syscall_linux_ppc64x.go | 59 +-
+ ...inux_arm64.go => syscall_linux_riscv64.go} | 118 +-
+ .../x/sys/unix/syscall_linux_s390x.go | 44 +-
+ .../x/sys/unix/syscall_linux_sparc64.go | 48 +-
+ .../golang.org/x/sys/unix/syscall_netbsd.go | 156 +-
+ .../x/sys/unix/syscall_netbsd_386.go | 21 +-
+ .../x/sys/unix/syscall_netbsd_amd64.go | 21 +-
+ .../x/sys/unix/syscall_netbsd_arm.go | 21 +-
+ ...etbsd_amd64.go => syscall_netbsd_arm64.go} | 25 +-
+ .../golang.org/x/sys/unix/syscall_no_getwd.go | 11 -
+ .../golang.org/x/sys/unix/syscall_openbsd.go | 199 +-
+ .../x/sys/unix/syscall_openbsd_386.go | 25 +-
+ .../x/sys/unix/syscall_openbsd_amd64.go | 25 +-
+ .../x/sys/unix/syscall_openbsd_arm.go | 27 +-
+ .../x/sys/unix/syscall_openbsd_arm64.go | 41 +
+ .../golang.org/x/sys/unix/syscall_solaris.go | 128 +-
+ .../x/sys/unix/syscall_solaris_amd64.go | 24 +-
+ vendor/golang.org/x/sys/unix/syscall_unix.go | 176 +-
+ .../golang.org/x/sys/unix/syscall_unix_gc.go | 2 +-
+ ...l_unix_gc.go => syscall_unix_gc_ppc64x.go} | 21 +-
+ vendor/golang.org/x/sys/unix/timestruct.go | 82 +
+ .../unix/{types_netbsd.go => types_aix.go} | 196 +-
+ vendor/golang.org/x/sys/unix/types_darwin.go | 41 +-
+ .../golang.org/x/sys/unix/types_dragonfly.go | 66 +-
+ vendor/golang.org/x/sys/unix/types_freebsd.go | 178 +-
+ vendor/golang.org/x/sys/unix/types_netbsd.go | 73 +-
+ vendor/golang.org/x/sys/unix/types_openbsd.go | 78 +-
+ vendor/golang.org/x/sys/unix/types_solaris.go | 54 +-
+ .../golang.org/x/sys/unix/unveil_openbsd.go | 42 +
+ vendor/golang.org/x/sys/unix/xattr_bsd.go | 240 ++
+ .../golang.org/x/sys/unix/zerrors_aix_ppc.go | 1384 ++++++++
+ .../x/sys/unix/zerrors_aix_ppc64.go | 1385 ++++++++
+ .../x/sys/unix/zerrors_darwin_386.go | 391 ++-
+ .../x/sys/unix/zerrors_darwin_amd64.go | 391 ++-
+ .../x/sys/unix/zerrors_darwin_arm.go | 391 ++-
+ .../x/sys/unix/zerrors_darwin_arm64.go | 391 ++-
+ .../x/sys/unix/zerrors_dragonfly_amd64.go | 355 ++-
+ .../x/sys/unix/zerrors_freebsd_386.go | 508 ++-
+ .../x/sys/unix/zerrors_freebsd_amd64.go | 506 ++-
+ .../x/sys/unix/zerrors_freebsd_arm.go | 368 ++-
+ ...ebsd_amd64.go => zerrors_freebsd_arm64.go} | 509 ++-
+ vendor/golang.org/x/sys/unix/zerrors_linux.go | 2469 +++++++++++++++
+ .../x/sys/unix/zerrors_linux_386.go | 2690 ++++------------
+ .../x/sys/unix/zerrors_linux_amd64.go | 2691 ++++------------
+ .../x/sys/unix/zerrors_linux_arm.go | 2701 ++++------------
+ .../x/sys/unix/zerrors_linux_arm64.go | 2673 ++++------------
+ .../x/sys/unix/zerrors_linux_mips.go | 2702 ++++------------
+ .../x/sys/unix/zerrors_linux_mips64.go | 2702 ++++------------
+ .../x/sys/unix/zerrors_linux_mips64le.go | 2702 ++++------------
+ .../x/sys/unix/zerrors_linux_mipsle.go | 2702 ++++------------
+ .../x/sys/unix/zerrors_linux_ppc64.go | 2816 ++++-------------
+ .../x/sys/unix/zerrors_linux_ppc64le.go | 2816 ++++-------------
+ .../x/sys/unix/zerrors_linux_riscv64.go | 771 +++++
+ .../x/sys/unix/zerrors_linux_s390x.go | 2812 ++++------------
+ .../x/sys/unix/zerrors_linux_sparc64.go | 2013 +++---------
+ .../x/sys/unix/zerrors_netbsd_386.go | 325 +-
+ .../x/sys/unix/zerrors_netbsd_amd64.go | 325 +-
+ .../x/sys/unix/zerrors_netbsd_arm.go | 325 +-
+ ...etbsd_amd64.go => zerrors_netbsd_arm64.go} | 327 +-
+ .../x/sys/unix/zerrors_openbsd_386.go | 339 +-
+ .../x/sys/unix/zerrors_openbsd_amd64.go | 576 ++--
+ .../x/sys/unix/zerrors_openbsd_arm.go | 333 +-
+ ...nbsd_amd64.go => zerrors_openbsd_arm64.go} | 605 ++--
+ .../x/sys/unix/zerrors_solaris_amd64.go | 380 ++-
+ .../x/sys/unix/zptrace_armnn_linux.go | 41 +
+ .../x/sys/unix/zptrace_linux_arm64.go | 17 +
+ .../x/sys/unix/zptrace_mipsnn_linux.go | 50 +
+ .../x/sys/unix/zptrace_mipsnnle_linux.go | 50 +
+ .../x/sys/unix/zptrace_x86_linux.go | 80 +
+ .../golang.org/x/sys/unix/zsyscall_aix_ppc.go | 1484 +++++++++
+ ..._netbsd_amd64.go => zsyscall_aix_ppc64.go} | 936 +++---
+ .../x/sys/unix/zsyscall_aix_ppc64_gc.go | 1192 +++++++
+ .../x/sys/unix/zsyscall_aix_ppc64_gccgo.go | 1070 +++++++
+ ...win_arm.go => zsyscall_darwin_386.1_11.go} | 416 ++-
+ .../x/sys/unix/zsyscall_darwin_386.1_13.go | 41 +
+ .../x/sys/unix/zsyscall_darwin_386.1_13.s | 12 +
+ .../x/sys/unix/zsyscall_darwin_386.go | 1314 ++++++--
+ .../x/sys/unix/zsyscall_darwin_386.s | 284 ++
+ ...arm64.go => zsyscall_darwin_amd64.1_11.go} | 416 ++-
+ .../x/sys/unix/zsyscall_darwin_amd64.1_13.go | 41 +
+ .../x/sys/unix/zsyscall_darwin_amd64.1_13.s | 12 +
+ .../x/sys/unix/zsyscall_darwin_amd64.go | 1314 ++++++--
+ .../x/sys/unix/zsyscall_darwin_amd64.s | 284 ++
+ ...win_arm.go => zsyscall_darwin_arm.1_11.go} | 389 ++-
+ .../x/sys/unix/zsyscall_darwin_arm.1_13.go | 41 +
+ .../x/sys/unix/zsyscall_darwin_arm.1_13.s | 12 +
+ .../x/sys/unix/zsyscall_darwin_arm.go | 1301 ++++++--
+ .../x/sys/unix/zsyscall_darwin_arm.s | 282 ++
+ ...arm64.go => zsyscall_darwin_arm64.1_11.go} | 389 ++-
+ .../x/sys/unix/zsyscall_darwin_arm64.1_13.go | 41 +
+ .../x/sys/unix/zsyscall_darwin_arm64.1_13.s | 12 +
+ .../x/sys/unix/zsyscall_darwin_arm64.go | 1301 ++++++--
+ .../x/sys/unix/zsyscall_darwin_arm64.s | 282 ++
+ .../x/sys/unix/zsyscall_dragonfly_amd64.go | 238 +-
+ .../x/sys/unix/zsyscall_freebsd_386.go | 204 +-
+ .../x/sys/unix/zsyscall_freebsd_amd64.go | 204 +-
+ .../x/sys/unix/zsyscall_freebsd_arm.go | 204 +-
+ ...bsd_amd64.go => zsyscall_freebsd_arm64.go} | 206 +-
+ .../x/sys/unix/zsyscall_illumos_amd64.go | 87 +
+ ...scall_linux_s390x.go => zsyscall_linux.go} | 774 ++---
+ .../x/sys/unix/zsyscall_linux_386.go | 1573 +--------
+ .../x/sys/unix/zsyscall_linux_amd64.go | 1607 +---------
+ .../x/sys/unix/zsyscall_linux_arm.go | 1626 +---------
+ .../x/sys/unix/zsyscall_linux_arm64.go | 1513 +--------
+ .../x/sys/unix/zsyscall_linux_mips.go | 1567 +--------
+ .../x/sys/unix/zsyscall_linux_mips64.go | 1552 +--------
+ .../x/sys/unix/zsyscall_linux_mips64le.go | 1552 +--------
+ .../x/sys/unix/zsyscall_linux_mipsle.go | 1567 +--------
+ .../x/sys/unix/zsyscall_linux_ppc64.go | 1586 +---------
+ .../x/sys/unix/zsyscall_linux_ppc64le.go | 1586 +---------
+ .../x/sys/unix/zsyscall_linux_riscv64.go | 582 ++++
+ .../x/sys/unix/zsyscall_linux_s390x.go | 1570 +--------
+ .../x/sys/unix/zsyscall_linux_sparc64.go | 1247 +-------
+ .../x/sys/unix/zsyscall_netbsd_386.go | 551 +++-
+ .../x/sys/unix/zsyscall_netbsd_amd64.go | 551 +++-
+ .../x/sys/unix/zsyscall_netbsd_arm.go | 551 +++-
+ ...ebsd_amd64.go => zsyscall_netbsd_arm64.go} | 262 +-
+ .../x/sys/unix/zsyscall_openbsd_386.go | 338 +-
+ .../x/sys/unix/zsyscall_openbsd_amd64.go | 338 +-
+ .../x/sys/unix/zsyscall_openbsd_arm.go | 338 +-
+ ...arwin_386.go => zsyscall_openbsd_arm64.go} | 289 +-
+ .../x/sys/unix/zsyscall_solaris_amd64.go | 382 ++-
+ ...sctl_openbsd.go => zsysctl_openbsd_386.go} | 4 +-
+ ...tl_openbsd.go => zsysctl_openbsd_amd64.go} | 42 +-
+ ...sctl_openbsd.go => zsysctl_openbsd_arm.go} | 6 +-
+ ...tl_openbsd.go => zsysctl_openbsd_arm64.go} | 47 +-
+ .../x/sys/unix/zsysnum_darwin_386.go | 60 +-
+ .../x/sys/unix/zsysnum_darwin_amd64.go | 62 +-
+ .../x/sys/unix/zsysnum_darwin_arm.go | 14 +-
+ .../x/sys/unix/zsysnum_darwin_arm64.go | 14 +-
+ .../x/sys/unix/zsysnum_dragonfly_amd64.go | 176 +-
+ .../x/sys/unix/zsysnum_freebsd_386.go | 731 +++--
+ .../x/sys/unix/zsysnum_freebsd_amd64.go | 731 +++--
+ .../x/sys/unix/zsysnum_freebsd_arm.go | 731 +++--
+ .../x/sys/unix/zsysnum_freebsd_arm64.go | 396 +++
+ .../x/sys/unix/zsysnum_linux_386.go | 808 ++---
+ .../x/sys/unix/zsysnum_linux_amd64.go | 19 +-
+ .../x/sys/unix/zsysnum_linux_arm.go | 745 ++---
+ .../x/sys/unix/zsysnum_linux_arm64.go | 20 +-
+ .../x/sys/unix/zsysnum_linux_mips.go | 779 ++---
+ .../x/sys/unix/zsysnum_linux_mips64.go | 19 +-
+ .../x/sys/unix/zsysnum_linux_mips64le.go | 19 +-
+ .../x/sys/unix/zsysnum_linux_mipsle.go | 779 ++---
+ .../x/sys/unix/zsysnum_linux_ppc64.go | 33 +-
+ .../x/sys/unix/zsysnum_linux_ppc64le.go | 33 +-
+ ...inux_arm64.go => zsysnum_linux_riscv64.go} | 23 +-
+ .../x/sys/unix/zsysnum_linux_s390x.go | 80 +-
+ .../x/sys/unix/zsysnum_linux_sparc64.go | 35 +-
+ .../x/sys/unix/zsysnum_netbsd_386.go | 4 +-
+ .../x/sys/unix/zsysnum_netbsd_amd64.go | 4 +-
+ .../x/sys/unix/zsysnum_netbsd_arm.go | 4 +-
+ ..._netbsd_386.go => zsysnum_netbsd_arm64.go} | 6 +-
+ .../x/sys/unix/zsysnum_openbsd_386.go | 223 +-
+ .../x/sys/unix/zsysnum_openbsd_amd64.go | 223 +-
+ .../x/sys/unix/zsysnum_openbsd_arm.go | 217 +-
+ ...penbsd_arm.go => zsysnum_openbsd_arm64.go} | 218 +-
+ .../x/sys/unix/zsysnum_solaris_amd64.go | 13 -
+ .../golang.org/x/sys/unix/ztypes_aix_ppc.go | 352 +++
+ .../golang.org/x/sys/unix/ztypes_aix_ppc64.go | 356 +++
+ .../x/sys/unix/ztypes_darwin_386.go | 195 +-
+ .../x/sys/unix/ztypes_darwin_amd64.go | 241 +-
+ .../x/sys/unix/ztypes_darwin_arm.go | 195 +-
+ .../x/sys/unix/ztypes_darwin_arm64.go | 246 +-
+ .../x/sys/unix/ztypes_dragonfly_amd64.go | 213 +-
+ .../x/sys/unix/ztypes_freebsd_386.go | 426 ++-
+ .../x/sys/unix/ztypes_freebsd_amd64.go | 448 ++-
+ .../x/sys/unix/ztypes_freebsd_arm.go | 427 ++-
+ ...eebsd_amd64.go => ztypes_freebsd_arm64.go} | 430 ++-
+ vendor/golang.org/x/sys/unix/ztypes_linux.go | 2340 ++++++++++++++
+ .../golang.org/x/sys/unix/ztypes_linux_386.go | 878 ++---
+ .../x/sys/unix/ztypes_linux_amd64.go | 881 ++----
+ .../golang.org/x/sys/unix/ztypes_linux_arm.go | 899 +++---
+ .../x/sys/unix/ztypes_linux_arm64.go | 883 ++----
+ .../x/sys/unix/ztypes_linux_mips.go | 864 ++---
+ .../x/sys/unix/ztypes_linux_mips64.go | 880 ++----
+ .../x/sys/unix/ztypes_linux_mips64le.go | 880 ++----
+ .../x/sys/unix/ztypes_linux_mipsle.go | 864 ++---
+ .../x/sys/unix/ztypes_linux_ppc64.go | 889 ++----
+ .../x/sys/unix/ztypes_linux_ppc64le.go | 889 ++----
+ .../x/sys/unix/ztypes_linux_riscv64.go | 621 ++++
+ .../x/sys/unix/ztypes_linux_s390x.go | 842 ++---
+ .../x/sys/unix/ztypes_linux_sparc64.go | 910 +++---
+ .../x/sys/unix/ztypes_netbsd_386.go | 145 +-
+ .../x/sys/unix/ztypes_netbsd_amd64.go | 152 +-
+ .../x/sys/unix/ztypes_netbsd_arm.go | 151 +-
+ ...netbsd_amd64.go => ztypes_netbsd_arm64.go} | 154 +-
+ .../x/sys/unix/ztypes_openbsd_386.go | 173 +-
+ .../x/sys/unix/ztypes_openbsd_amd64.go | 264 +-
+ .../x/sys/unix/ztypes_openbsd_arm.go | 255 +-
+ ...enbsd_amd64.go => ztypes_openbsd_arm64.go} | 260 +-
+ .../x/sys/unix/ztypes_solaris_amd64.go | 239 +-
+ 293 files changed, 60017 insertions(+), 59731 deletions(-)
+ create mode 100644 vendor/golang.org/x/sys/unix/affinity_linux.go
+ create mode 100644 vendor/golang.org/x/sys/unix/aliases.go
+ create mode 100644 vendor/golang.org/x/sys/unix/asm_aix_ppc64.s
+ copy vendor/golang.org/x/sys/unix/{asm_linux_mips64x.s => asm_freebsd_arm64.s} (71%)
+ create mode 100644 vendor/golang.org/x/sys/unix/asm_linux_riscv64.s
+ copy vendor/golang.org/x/sys/unix/{asm_linux_mips64x.s => asm_netbsd_arm64.s} (60%)
+ copy vendor/golang.org/x/sys/unix/{asm_linux_mips64x.s => asm_openbsd_arm64.s} (76%)
+ create mode 100644 vendor/golang.org/x/sys/unix/dev_aix_ppc.go
+ create mode 100644 vendor/golang.org/x/sys/unix/dev_aix_ppc64.go
+ create mode 100644 vendor/golang.org/x/sys/unix/dev_darwin.go
+ create mode 100644 vendor/golang.org/x/sys/unix/dev_dragonfly.go
+ create mode 100644 vendor/golang.org/x/sys/unix/dev_freebsd.go
+ create mode 100644 vendor/golang.org/x/sys/unix/dev_netbsd.go
+ create mode 100644 vendor/golang.org/x/sys/unix/dev_openbsd.go
+ delete mode 100644 vendor/golang.org/x/sys/unix/env_unset.go
+ create mode 100644 vendor/golang.org/x/sys/unix/errors_freebsd_arm64.go
+ rename vendor/golang.org/x/sys/unix/{flock.go => fcntl.go} (54%)
+ create mode 100644 vendor/golang.org/x/sys/unix/fcntl_darwin.go
+ rename vendor/golang.org/x/sys/unix/{flock_linux_32bit.go => fcntl_linux_32bit.go} (100%)
+ create mode 100644 vendor/golang.org/x/sys/unix/fdset.go
+ delete mode 100644 vendor/golang.org/x/sys/unix/file_unix.go
+ delete mode 100644 vendor/golang.org/x/sys/unix/gccgo_linux_sparc64.go
+ create mode 100644 vendor/golang.org/x/sys/unix/ioctl.go
+ create mode 100644 vendor/golang.org/x/sys/unix/mkasm_darwin.go
+ create mode 100644 vendor/golang.org/x/sys/unix/mkmerge.go
+ create mode 100644 vendor/golang.org/x/sys/unix/mksyscall.go
+ create mode 100644 vendor/golang.org/x/sys/unix/mksyscall_aix_ppc.go
+ create mode 100644 vendor/golang.org/x/sys/unix/mksyscall_aix_ppc64.go
+ create mode 100644 vendor/golang.org/x/sys/unix/mksyscall_solaris.go
+ create mode 100644 vendor/golang.org/x/sys/unix/mksysctl_openbsd.go
+ create mode 100644 vendor/golang.org/x/sys/unix/mksysnum.go
+ delete mode 100644 vendor/golang.org/x/sys/unix/openbsd_pledge.go
+ create mode 100644 vendor/golang.org/x/sys/unix/pagesize_unix.go
+ create mode 100644 vendor/golang.org/x/sys/unix/pledge_openbsd.go
+ create mode 100644 vendor/golang.org/x/sys/unix/readdirent_getdents.go
+ create mode 100644 vendor/golang.org/x/sys/unix/readdirent_getdirentries.go
+ create mode 100644 vendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go
+ create mode 100644 vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go
+ create mode 100644 vendor/golang.org/x/sys/unix/syscall_aix.go
+ create mode 100644 vendor/golang.org/x/sys/unix/syscall_aix_ppc.go
+ create mode 100644 vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go
+ create mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin.1_12.go
+ create mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin.1_13.go
+ create mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go
+ create mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_amd64.1_11.go
+ create mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go
+ create mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_arm64.1_11.go
+ create mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go
+ copy vendor/golang.org/x/sys/unix/{syscall_dragonfly_amd64.go => syscall_freebsd_arm64.go} (59%)
+ create mode 100644 vendor/golang.org/x/sys/unix/syscall_illumos.go
+ create mode 100644 vendor/golang.org/x/sys/unix/syscall_linux_gc.go
+ create mode 100644 vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go
+ create mode 100644 vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go
+ create mode 100644 vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go
+ copy vendor/golang.org/x/sys/unix/{syscall_linux_arm64.go => syscall_linux_riscv64.go} (68%)
+ copy vendor/golang.org/x/sys/unix/{syscall_netbsd_amd64.go => syscall_netbsd_arm64.go} (50%)
+ delete mode 100644 vendor/golang.org/x/sys/unix/syscall_no_getwd.go
+ create mode 100644 vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go
+ copy vendor/golang.org/x/sys/unix/{syscall_unix_gc.go => syscall_unix_gc_ppc64x.go} (51%)
+ create mode 100644 vendor/golang.org/x/sys/unix/timestruct.go
+ copy vendor/golang.org/x/sys/unix/{types_netbsd.go => types_aix.go} (53%)
+ create mode 100644 vendor/golang.org/x/sys/unix/unveil_openbsd.go
+ create mode 100644 vendor/golang.org/x/sys/unix/xattr_bsd.go
+ create mode 100644 vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go
+ create mode 100644 vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go
+ copy vendor/golang.org/x/sys/unix/{zerrors_freebsd_amd64.go => zerrors_freebsd_arm64.go} (80%)
+ create mode 100644 vendor/golang.org/x/sys/unix/zerrors_linux.go
+ create mode 100644 vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go
+ copy vendor/golang.org/x/sys/unix/{zerrors_netbsd_amd64.go => zerrors_netbsd_arm64.go} (89%)
+ copy vendor/golang.org/x/sys/unix/{zerrors_openbsd_amd64.go => zerrors_openbsd_arm64.go} (76%)
+ create mode 100644 vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go
+ create mode 100644 vendor/golang.org/x/sys/unix/zptrace_linux_arm64.go
+ create mode 100644 vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go
+ create mode 100644 vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go
+ create mode 100644 vendor/golang.org/x/sys/unix/zptrace_x86_linux.go
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go
+ copy vendor/golang.org/x/sys/unix/{zsyscall_netbsd_amd64.go => zsyscall_aix_ppc64.go} (57%)
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go
+ copy vendor/golang.org/x/sys/unix/{zsyscall_darwin_arm.go => zsyscall_darwin_386.1_11.go} (85%)
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.go
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s
+ copy vendor/golang.org/x/sys/unix/{zsyscall_darwin_arm64.go => zsyscall_darwin_amd64.1_11.go} (85%)
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.go
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s
+ copy vendor/golang.org/x/sys/unix/{zsyscall_darwin_arm.go => zsyscall_darwin_arm.1_11.go} (85%)
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.go
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s
+ copy vendor/golang.org/x/sys/unix/{zsyscall_darwin_arm64.go => zsyscall_darwin_arm64.1_11.go} (84%)
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.go
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s
+ copy vendor/golang.org/x/sys/unix/{zsyscall_freebsd_amd64.go => zsyscall_freebsd_arm64.go} (90%)
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go
+ copy vendor/golang.org/x/sys/unix/{zsyscall_linux_s390x.go => zsyscall_linux.go} (79%)
+ create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go
+ copy vendor/golang.org/x/sys/unix/{zsyscall_freebsd_amd64.go => zsyscall_netbsd_arm64.go} (92%)
+ copy vendor/golang.org/x/sys/unix/{zsyscall_darwin_386.go => zsyscall_openbsd_arm64.go} (87%)
+ copy vendor/golang.org/x/sys/unix/{zsysctl_openbsd.go => zsysctl_openbsd_386.go} (99%)
+ copy vendor/golang.org/x/sys/unix/{zsysctl_openbsd.go => zsysctl_openbsd_amd64.go} (91%)
+ copy vendor/golang.org/x/sys/unix/{zsysctl_openbsd.go => zsysctl_openbsd_arm.go} (99%)
+ rename vendor/golang.org/x/sys/unix/{zsysctl_openbsd.go => zsysctl_openbsd_arm64.go} (91%)
+ create mode 100644 vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go
+ copy vendor/golang.org/x/sys/unix/{zsysnum_linux_arm64.go => zsysnum_linux_riscv64.go} (92%)
+ copy vendor/golang.org/x/sys/unix/{zsysnum_netbsd_386.go => zsysnum_netbsd_arm64.go} (99%)
+ copy vendor/golang.org/x/sys/unix/{zsysnum_openbsd_arm.go => zsysnum_openbsd_arm64.go} (67%)
+ delete mode 100644 vendor/golang.org/x/sys/unix/zsysnum_solaris_amd64.go
+ create mode 100644 vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go
+ create mode 100644 vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go
+ copy vendor/golang.org/x/sys/unix/{ztypes_freebsd_amd64.go => ztypes_freebsd_arm64.go} (54%)
+ create mode 100644 vendor/golang.org/x/sys/unix/ztypes_linux.go
+ create mode 100644 vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go
+ copy vendor/golang.org/x/sys/unix/{ztypes_netbsd_amd64.go => ztypes_netbsd_arm64.go} (73%)
+ copy vendor/golang.org/x/sys/unix/{ztypes_openbsd_amd64.go => ztypes_openbsd_arm64.go} (58%)
+
+diff --git a/Gopkg.lock b/Gopkg.lock
+index b4333103..01a867d5 100644
+--- a/Gopkg.lock
++++ b/Gopkg.lock
+@@ -112,11 +112,11 @@
+
+ [[projects]]
+ branch = "master"
+- digest = "1:51912e607c5e28a89fdc7e41d3377b92086ab7f76ded236765dbf98d0a704c5d"
++ digest = "1:f8181d8aa1e268255316ec12ab5402d4f671b1da6d7ad40abdf2f92c0404b67d"
+ name = "golang.org/x/sys"
+ packages = ["unix"]
+ pruneopts = "NUT"
+- revision = "bb24a47a89eac6c1227fbcb2ae37a8b9ed323366"
++ revision = "1957bb5e6d1f523308b49060df02171d06ddfc77"
+
+ [[projects]]
+ branch = "v2"
+diff --git a/vendor/golang.org/x/sys/unix/affinity_linux.go b/vendor/golang.org/x/sys/unix/affinity_linux.go
+new file mode 100644
+index 00000000..6e5c81ac
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/affinity_linux.go
+@@ -0,0 +1,86 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// CPU affinity functions
++
++package unix
++
++import (
++ "math/bits"
++ "unsafe"
++)
++
++const cpuSetSize = _CPU_SETSIZE / _NCPUBITS
++
++// CPUSet represents a CPU affinity mask.
++type CPUSet [cpuSetSize]cpuMask
++
++func schedAffinity(trap uintptr, pid int, set *CPUSet) error {
++ _, _, e := RawSyscall(trap, uintptr(pid), uintptr(unsafe.Sizeof(*set)), uintptr(unsafe.Pointer(set)))
++ if e != 0 {
++ return errnoErr(e)
++ }
++ return nil
++}
++
++// SchedGetaffinity gets the CPU affinity mask of the thread specified by pid.
++// If pid is 0 the calling thread is used.
++func SchedGetaffinity(pid int, set *CPUSet) error {
++ return schedAffinity(SYS_SCHED_GETAFFINITY, pid, set)
++}
++
++// SchedSetaffinity sets the CPU affinity mask of the thread specified by pid.
++// If pid is 0 the calling thread is used.
++func SchedSetaffinity(pid int, set *CPUSet) error {
++ return schedAffinity(SYS_SCHED_SETAFFINITY, pid, set)
++}
++
++// Zero clears the set s, so that it contains no CPUs.
++func (s *CPUSet) Zero() {
++ for i := range s {
++ s[i] = 0
++ }
++}
++
++func cpuBitsIndex(cpu int) int {
++ return cpu / _NCPUBITS
++}
++
++func cpuBitsMask(cpu int) cpuMask {
++ return cpuMask(1 << (uint(cpu) % _NCPUBITS))
++}
++
++// Set adds cpu to the set s.
++func (s *CPUSet) Set(cpu int) {
++ i := cpuBitsIndex(cpu)
++ if i < len(s) {
++ s[i] |= cpuBitsMask(cpu)
++ }
++}
++
++// Clear removes cpu from the set s.
++func (s *CPUSet) Clear(cpu int) {
++ i := cpuBitsIndex(cpu)
++ if i < len(s) {
++ s[i] &^= cpuBitsMask(cpu)
++ }
++}
++
++// IsSet reports whether cpu is in the set s.
++func (s *CPUSet) IsSet(cpu int) bool {
++ i := cpuBitsIndex(cpu)
++ if i < len(s) {
++ return s[i]&cpuBitsMask(cpu) != 0
++ }
++ return false
++}
++
++// Count returns the number of CPUs in the set s.
++func (s *CPUSet) Count() int {
++ c := 0
++ for _, b := range s {
++ c += bits.OnesCount64(uint64(b))
++ }
++ return c
++}
+diff --git a/vendor/golang.org/x/sys/unix/aliases.go b/vendor/golang.org/x/sys/unix/aliases.go
+new file mode 100644
+index 00000000..951fce4d
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/aliases.go
+@@ -0,0 +1,14 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
++// +build go1.9
++
++package unix
++
++import "syscall"
++
++type Signal = syscall.Signal
++type Errno = syscall.Errno
++type SysProcAttr = syscall.SysProcAttr
+diff --git a/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s b/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s
+new file mode 100644
+index 00000000..06f84b85
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s
+@@ -0,0 +1,17 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build !gccgo
++
++#include "textflag.h"
++
++//
++// System calls for ppc64, AIX are implemented in runtime/syscall_aix.go
++//
++
++TEXT ·syscall6(SB),NOSPLIT,$0-88
++ JMP syscall·syscall6(SB)
++
++TEXT ·rawSyscall6(SB),NOSPLIT,$0-88
++ JMP syscall·rawSyscall6(SB)
+diff --git a/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s b/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s
+index d5ed6726..603dd572 100644
+--- a/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s
++++ b/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s
+@@ -13,17 +13,17 @@
+ // Just jump to package syscall's implementation for all these functions.
+ // The runtime may know about them.
+
+-TEXT ·Syscall(SB),NOSPLIT,$0-64
++TEXT ·Syscall(SB),NOSPLIT,$0-56
+ JMP syscall·Syscall(SB)
+
+-TEXT ·Syscall6(SB),NOSPLIT,$0-88
++TEXT ·Syscall6(SB),NOSPLIT,$0-80
+ JMP syscall·Syscall6(SB)
+
+-TEXT ·Syscall9(SB),NOSPLIT,$0-112
++TEXT ·Syscall9(SB),NOSPLIT,$0-104
+ JMP syscall·Syscall9(SB)
+
+-TEXT ·RawSyscall(SB),NOSPLIT,$0-64
++TEXT ·RawSyscall(SB),NOSPLIT,$0-56
+ JMP syscall·RawSyscall(SB)
+
+-TEXT ·RawSyscall6(SB),NOSPLIT,$0-88
++TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
+ JMP syscall·RawSyscall6(SB)
+diff --git a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s b/vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s
+similarity index 71%
+copy from vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
+copy to vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s
+index 724e580c..d9318cbf 100644
+--- a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
++++ b/vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s
+@@ -1,15 +1,13 @@
+-// Copyright 2015 The Go Authors. All rights reserved.
++// Copyright 2018 The Go Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+-// +build linux
+-// +build mips64 mips64le
+ // +build !gccgo
+
+ #include "textflag.h"
+
+ //
+-// System calls for mips64, Linux
++// System call support for ARM64, FreeBSD
+ //
+
+ // Just jump to package syscall's implementation for all these functions.
+@@ -21,7 +19,10 @@ TEXT ·Syscall(SB),NOSPLIT,$0-56
+ TEXT ·Syscall6(SB),NOSPLIT,$0-80
+ JMP syscall·Syscall6(SB)
+
+-TEXT ·RawSyscall(SB),NOSPLIT,$0-56
++TEXT ·Syscall9(SB),NOSPLIT,$0-104
++ JMP syscall·Syscall9(SB)
++
++TEXT ·RawSyscall(SB),NOSPLIT,$0-56
+ JMP syscall·RawSyscall(SB)
+
+ TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
+diff --git a/vendor/golang.org/x/sys/unix/asm_linux_386.s b/vendor/golang.org/x/sys/unix/asm_linux_386.s
+index 4db29093..448bebbb 100644
+--- a/vendor/golang.org/x/sys/unix/asm_linux_386.s
++++ b/vendor/golang.org/x/sys/unix/asm_linux_386.s
+@@ -10,21 +10,51 @@
+ // System calls for 386, Linux
+ //
+
++// See ../runtime/sys_linux_386.s for the reason why we always use int 0x80
++// instead of the glibc-specific "CALL 0x10(GS)".
++#define INVOKE_SYSCALL INT $0x80
++
+ // Just jump to package syscall's implementation for all these functions.
+ // The runtime may know about them.
+
+-TEXT ·Syscall(SB),NOSPLIT,$0-28
++TEXT ·Syscall(SB),NOSPLIT,$0-28
+ JMP syscall·Syscall(SB)
+
+-TEXT ·Syscall6(SB),NOSPLIT,$0-40
++TEXT ·Syscall6(SB),NOSPLIT,$0-40
+ JMP syscall·Syscall6(SB)
+
++TEXT ·SyscallNoError(SB),NOSPLIT,$0-24
++ CALL runtime·entersyscall(SB)
++ MOVL trap+0(FP), AX // syscall entry
++ MOVL a1+4(FP), BX
++ MOVL a2+8(FP), CX
++ MOVL a3+12(FP), DX
++ MOVL $0, SI
++ MOVL $0, DI
++ INVOKE_SYSCALL
++ MOVL AX, r1+16(FP)
++ MOVL DX, r2+20(FP)
++ CALL runtime·exitsyscall(SB)
++ RET
++
+ TEXT ·RawSyscall(SB),NOSPLIT,$0-28
+ JMP syscall·RawSyscall(SB)
+
+-TEXT ·RawSyscall6(SB),NOSPLIT,$0-40
++TEXT ·RawSyscall6(SB),NOSPLIT,$0-40
+ JMP syscall·RawSyscall6(SB)
+
++TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-24
++ MOVL trap+0(FP), AX // syscall entry
++ MOVL a1+4(FP), BX
++ MOVL a2+8(FP), CX
++ MOVL a3+12(FP), DX
++ MOVL $0, SI
++ MOVL $0, DI
++ INVOKE_SYSCALL
++ MOVL AX, r1+16(FP)
++ MOVL DX, r2+20(FP)
++ RET
++
+ TEXT ·socketcall(SB),NOSPLIT,$0-36
+ JMP syscall·socketcall(SB)
+
+diff --git a/vendor/golang.org/x/sys/unix/asm_linux_amd64.s b/vendor/golang.org/x/sys/unix/asm_linux_amd64.s
+index 44e25c62..c6468a95 100644
+--- a/vendor/golang.org/x/sys/unix/asm_linux_amd64.s
++++ b/vendor/golang.org/x/sys/unix/asm_linux_amd64.s
+@@ -13,17 +13,45 @@
+ // Just jump to package syscall's implementation for all these functions.
+ // The runtime may know about them.
+
+-TEXT ·Syscall(SB),NOSPLIT,$0-56
++TEXT ·Syscall(SB),NOSPLIT,$0-56
+ JMP syscall·Syscall(SB)
+
+ TEXT ·Syscall6(SB),NOSPLIT,$0-80
+ JMP syscall·Syscall6(SB)
+
++TEXT ·SyscallNoError(SB),NOSPLIT,$0-48
++ CALL runtime·entersyscall(SB)
++ MOVQ a1+8(FP), DI
++ MOVQ a2+16(FP), SI
++ MOVQ a3+24(FP), DX
++ MOVQ $0, R10
++ MOVQ $0, R8
++ MOVQ $0, R9
++ MOVQ trap+0(FP), AX // syscall entry
++ SYSCALL
++ MOVQ AX, r1+32(FP)
++ MOVQ DX, r2+40(FP)
++ CALL runtime·exitsyscall(SB)
++ RET
++
+ TEXT ·RawSyscall(SB),NOSPLIT,$0-56
+ JMP syscall·RawSyscall(SB)
+
+ TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
+ JMP syscall·RawSyscall6(SB)
+
++TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48
++ MOVQ a1+8(FP), DI
++ MOVQ a2+16(FP), SI
++ MOVQ a3+24(FP), DX
++ MOVQ $0, R10
++ MOVQ $0, R8
++ MOVQ $0, R9
++ MOVQ trap+0(FP), AX // syscall entry
++ SYSCALL
++ MOVQ AX, r1+32(FP)
++ MOVQ DX, r2+40(FP)
++ RET
++
+ TEXT ·gettimeofday(SB),NOSPLIT,$0-16
+ JMP syscall·gettimeofday(SB)
+diff --git a/vendor/golang.org/x/sys/unix/asm_linux_arm.s b/vendor/golang.org/x/sys/unix/asm_linux_arm.s
+index cf0b5746..cf0f3575 100644
+--- a/vendor/golang.org/x/sys/unix/asm_linux_arm.s
++++ b/vendor/golang.org/x/sys/unix/asm_linux_arm.s
+@@ -13,17 +13,44 @@
+ // Just jump to package syscall's implementation for all these functions.
+ // The runtime may know about them.
+
+-TEXT ·Syscall(SB),NOSPLIT,$0-28
++TEXT ·Syscall(SB),NOSPLIT,$0-28
+ B syscall·Syscall(SB)
+
+-TEXT ·Syscall6(SB),NOSPLIT,$0-40
++TEXT ·Syscall6(SB),NOSPLIT,$0-40
+ B syscall·Syscall6(SB)
+
++TEXT ·SyscallNoError(SB),NOSPLIT,$0-24
++ BL runtime·entersyscall(SB)
++ MOVW trap+0(FP), R7
++ MOVW a1+4(FP), R0
++ MOVW a2+8(FP), R1
++ MOVW a3+12(FP), R2
++ MOVW $0, R3
++ MOVW $0, R4
++ MOVW $0, R5
++ SWI $0
++ MOVW R0, r1+16(FP)
++ MOVW $0, R0
++ MOVW R0, r2+20(FP)
++ BL runtime·exitsyscall(SB)
++ RET
++
+ TEXT ·RawSyscall(SB),NOSPLIT,$0-28
+ B syscall·RawSyscall(SB)
+
+-TEXT ·RawSyscall6(SB),NOSPLIT,$0-40
++TEXT ·RawSyscall6(SB),NOSPLIT,$0-40
+ B syscall·RawSyscall6(SB)
+
+-TEXT ·seek(SB),NOSPLIT,$0-32
++TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-24
++ MOVW trap+0(FP), R7 // syscall entry
++ MOVW a1+4(FP), R0
++ MOVW a2+8(FP), R1
++ MOVW a3+12(FP), R2
++ SWI $0
++ MOVW R0, r1+16(FP)
++ MOVW $0, R0
++ MOVW R0, r2+20(FP)
++ RET
++
++TEXT ·seek(SB),NOSPLIT,$0-28
+ B syscall·seek(SB)
+diff --git a/vendor/golang.org/x/sys/unix/asm_linux_arm64.s b/vendor/golang.org/x/sys/unix/asm_linux_arm64.s
+index 4be9bfed..afe6fdf6 100644
+--- a/vendor/golang.org/x/sys/unix/asm_linux_arm64.s
++++ b/vendor/golang.org/x/sys/unix/asm_linux_arm64.s
+@@ -11,14 +11,42 @@
+ // Just jump to package syscall's implementation for all these functions.
+ // The runtime may know about them.
+
+-TEXT ·Syscall(SB),NOSPLIT,$0-56
++TEXT ·Syscall(SB),NOSPLIT,$0-56
+ B syscall·Syscall(SB)
+
+ TEXT ·Syscall6(SB),NOSPLIT,$0-80
+ B syscall·Syscall6(SB)
+
++TEXT ·SyscallNoError(SB),NOSPLIT,$0-48
++ BL runtime·entersyscall(SB)
++ MOVD a1+8(FP), R0
++ MOVD a2+16(FP), R1
++ MOVD a3+24(FP), R2
++ MOVD $0, R3
++ MOVD $0, R4
++ MOVD $0, R5
++ MOVD trap+0(FP), R8 // syscall entry
++ SVC
++ MOVD R0, r1+32(FP) // r1
++ MOVD R1, r2+40(FP) // r2
++ BL runtime·exitsyscall(SB)
++ RET
++
+ TEXT ·RawSyscall(SB),NOSPLIT,$0-56
+ B syscall·RawSyscall(SB)
+
+ TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
+ B syscall·RawSyscall6(SB)
++
++TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48
++ MOVD a1+8(FP), R0
++ MOVD a2+16(FP), R1
++ MOVD a3+24(FP), R2
++ MOVD $0, R3
++ MOVD $0, R4
++ MOVD $0, R5
++ MOVD trap+0(FP), R8 // syscall entry
++ SVC
++ MOVD R0, r1+32(FP)
++ MOVD R1, r2+40(FP)
++ RET
+diff --git a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s b/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
+index 724e580c..ab9d6383 100644
+--- a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
++++ b/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
+@@ -15,14 +15,42 @@
+ // Just jump to package syscall's implementation for all these functions.
+ // The runtime may know about them.
+
+-TEXT ·Syscall(SB),NOSPLIT,$0-56
++TEXT ·Syscall(SB),NOSPLIT,$0-56
+ JMP syscall·Syscall(SB)
+
+-TEXT ·Syscall6(SB),NOSPLIT,$0-80
++TEXT ·Syscall6(SB),NOSPLIT,$0-80
+ JMP syscall·Syscall6(SB)
+
+-TEXT ·RawSyscall(SB),NOSPLIT,$0-56
++TEXT ·SyscallNoError(SB),NOSPLIT,$0-48
++ JAL runtime·entersyscall(SB)
++ MOVV a1+8(FP), R4
++ MOVV a2+16(FP), R5
++ MOVV a3+24(FP), R6
++ MOVV R0, R7
++ MOVV R0, R8
++ MOVV R0, R9
++ MOVV trap+0(FP), R2 // syscall entry
++ SYSCALL
++ MOVV R2, r1+32(FP)
++ MOVV R3, r2+40(FP)
++ JAL runtime·exitsyscall(SB)
++ RET
++
++TEXT ·RawSyscall(SB),NOSPLIT,$0-56
+ JMP syscall·RawSyscall(SB)
+
+-TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
++TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
+ JMP syscall·RawSyscall6(SB)
++
++TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48
++ MOVV a1+8(FP), R4
++ MOVV a2+16(FP), R5
++ MOVV a3+24(FP), R6
++ MOVV R0, R7
++ MOVV R0, R8
++ MOVV R0, R9
++ MOVV trap+0(FP), R2 // syscall entry
++ SYSCALL
++ MOVV R2, r1+32(FP)
++ MOVV R3, r2+40(FP)
++ RET
+diff --git a/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s b/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s
+index 2ea42575..99e53990 100644
+--- a/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s
++++ b/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s
+@@ -15,17 +15,40 @@
+ // Just jump to package syscall's implementation for all these functions.
+ // The runtime may know about them.
+
+-TEXT ·Syscall(SB),NOSPLIT,$0-28
++TEXT ·Syscall(SB),NOSPLIT,$0-28
+ JMP syscall·Syscall(SB)
+
+-TEXT ·Syscall6(SB),NOSPLIT,$0-40
++TEXT ·Syscall6(SB),NOSPLIT,$0-40
+ JMP syscall·Syscall6(SB)
+
+-TEXT ·Syscall9(SB),NOSPLIT,$0-52
++TEXT ·Syscall9(SB),NOSPLIT,$0-52
+ JMP syscall·Syscall9(SB)
+
+-TEXT ·RawSyscall(SB),NOSPLIT,$0-28
++TEXT ·SyscallNoError(SB),NOSPLIT,$0-24
++ JAL runtime·entersyscall(SB)
++ MOVW a1+4(FP), R4
++ MOVW a2+8(FP), R5
++ MOVW a3+12(FP), R6
++ MOVW R0, R7
++ MOVW trap+0(FP), R2 // syscall entry
++ SYSCALL
++ MOVW R2, r1+16(FP) // r1
++ MOVW R3, r2+20(FP) // r2
++ JAL runtime·exitsyscall(SB)
++ RET
++
++TEXT ·RawSyscall(SB),NOSPLIT,$0-28
+ JMP syscall·RawSyscall(SB)
+
+-TEXT ·RawSyscall6(SB),NOSPLIT,$0-40
++TEXT ·RawSyscall6(SB),NOSPLIT,$0-40
+ JMP syscall·RawSyscall6(SB)
++
++TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-24
++ MOVW a1+4(FP), R4
++ MOVW a2+8(FP), R5
++ MOVW a3+12(FP), R6
++ MOVW trap+0(FP), R2 // syscall entry
++ SYSCALL
++ MOVW R2, r1+16(FP)
++ MOVW R3, r2+20(FP)
++ RET
+diff --git a/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s b/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s
+index 8d231feb..88f71255 100644
+--- a/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s
++++ b/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s
+@@ -15,14 +15,30 @@
+ // Just jump to package syscall's implementation for all these functions.
+ // The runtime may know about them.
+
+-TEXT ·Syscall(SB),NOSPLIT,$0-56
+- BR syscall·Syscall(SB)
+-
+-TEXT ·Syscall6(SB),NOSPLIT,$0-80
+- BR syscall·Syscall6(SB)
+-
+-TEXT ·RawSyscall(SB),NOSPLIT,$0-56
+- BR syscall·RawSyscall(SB)
+-
+-TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
+- BR syscall·RawSyscall6(SB)
++TEXT ·SyscallNoError(SB),NOSPLIT,$0-48
++ BL runtime·entersyscall(SB)
++ MOVD a1+8(FP), R3
++ MOVD a2+16(FP), R4
++ MOVD a3+24(FP), R5
++ MOVD R0, R6
++ MOVD R0, R7
++ MOVD R0, R8
++ MOVD trap+0(FP), R9 // syscall entry
++ SYSCALL R9
++ MOVD R3, r1+32(FP)
++ MOVD R4, r2+40(FP)
++ BL runtime·exitsyscall(SB)
++ RET
++
++TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48
++ MOVD a1+8(FP), R3
++ MOVD a2+16(FP), R4
++ MOVD a3+24(FP), R5
++ MOVD R0, R6
++ MOVD R0, R7
++ MOVD R0, R8
++ MOVD trap+0(FP), R9 // syscall entry
++ SYSCALL R9
++ MOVD R3, r1+32(FP)
++ MOVD R4, r2+40(FP)
++ RET
+diff --git a/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s b/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s
+new file mode 100644
+index 00000000..3cfefed2
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s
+@@ -0,0 +1,47 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build riscv64,!gccgo
++
++#include "textflag.h"
++
++//
++// System calls for linux/riscv64.
++//
++// Where available, just jump to package syscall's implementation of
++// these functions.
++
++TEXT ·Syscall(SB),NOSPLIT,$0-56
++ JMP syscall·Syscall(SB)
++
++TEXT ·Syscall6(SB),NOSPLIT,$0-80
++ JMP syscall·Syscall6(SB)
++
++TEXT ·SyscallNoError(SB),NOSPLIT,$0-48
++ CALL runtime·entersyscall(SB)
++ MOV a1+8(FP), A0
++ MOV a2+16(FP), A1
++ MOV a3+24(FP), A2
++ MOV trap+0(FP), A7 // syscall entry
++ ECALL
++ MOV A0, r1+32(FP) // r1
++ MOV A1, r2+40(FP) // r2
++ CALL runtime·exitsyscall(SB)
++ RET
++
++TEXT ·RawSyscall(SB),NOSPLIT,$0-56
++ JMP syscall·RawSyscall(SB)
++
++TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
++ JMP syscall·RawSyscall6(SB)
++
++TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48
++ MOV a1+8(FP), A0
++ MOV a2+16(FP), A1
++ MOV a3+24(FP), A2
++ MOV trap+0(FP), A7 // syscall entry
++ ECALL
++ MOV A0, r1+32(FP)
++ MOV A1, r2+40(FP)
++ RET
+diff --git a/vendor/golang.org/x/sys/unix/asm_linux_s390x.s b/vendor/golang.org/x/sys/unix/asm_linux_s390x.s
+index 11889859..a5a863c6 100644
+--- a/vendor/golang.org/x/sys/unix/asm_linux_s390x.s
++++ b/vendor/golang.org/x/sys/unix/asm_linux_s390x.s
+@@ -21,8 +21,36 @@ TEXT ·Syscall(SB),NOSPLIT,$0-56
+ TEXT ·Syscall6(SB),NOSPLIT,$0-80
+ BR syscall·Syscall6(SB)
+
++TEXT ·SyscallNoError(SB),NOSPLIT,$0-48
++ BL runtime·entersyscall(SB)
++ MOVD a1+8(FP), R2
++ MOVD a2+16(FP), R3
++ MOVD a3+24(FP), R4
++ MOVD $0, R5
++ MOVD $0, R6
++ MOVD $0, R7
++ MOVD trap+0(FP), R1 // syscall entry
++ SYSCALL
++ MOVD R2, r1+32(FP)
++ MOVD R3, r2+40(FP)
++ BL runtime·exitsyscall(SB)
++ RET
++
+ TEXT ·RawSyscall(SB),NOSPLIT,$0-56
+ BR syscall·RawSyscall(SB)
+
+ TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
+ BR syscall·RawSyscall6(SB)
++
++TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48
++ MOVD a1+8(FP), R2
++ MOVD a2+16(FP), R3
++ MOVD a3+24(FP), R4
++ MOVD $0, R5
++ MOVD $0, R6
++ MOVD $0, R7
++ MOVD trap+0(FP), R1 // syscall entry
++ SYSCALL
++ MOVD R2, r1+32(FP)
++ MOVD R3, r2+40(FP)
++ RET
+diff --git a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s b/vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s
+similarity index 60%
+copy from vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
+copy to vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s
+index 724e580c..6f98ba5a 100644
+--- a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
++++ b/vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s
+@@ -1,28 +1,29 @@
+-// Copyright 2015 The Go Authors. All rights reserved.
++// Copyright 2019 The Go Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+-// +build linux
+-// +build mips64 mips64le
+ // +build !gccgo
+
+ #include "textflag.h"
+
+ //
+-// System calls for mips64, Linux
++// System call support for ARM64, NetBSD
+ //
+
+ // Just jump to package syscall's implementation for all these functions.
+ // The runtime may know about them.
+
+ TEXT ·Syscall(SB),NOSPLIT,$0-56
+- JMP syscall·Syscall(SB)
++ B syscall·Syscall(SB)
+
+ TEXT ·Syscall6(SB),NOSPLIT,$0-80
+- JMP syscall·Syscall6(SB)
++ B syscall·Syscall6(SB)
++
++TEXT ·Syscall9(SB),NOSPLIT,$0-104
++ B syscall·Syscall9(SB)
+
+ TEXT ·RawSyscall(SB),NOSPLIT,$0-56
+- JMP syscall·RawSyscall(SB)
++ B syscall·RawSyscall(SB)
+
+ TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
+- JMP syscall·RawSyscall6(SB)
++ B syscall·RawSyscall6(SB)
+diff --git a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s b/vendor/golang.org/x/sys/unix/asm_openbsd_arm64.s
+similarity index 76%
+copy from vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
+copy to vendor/golang.org/x/sys/unix/asm_openbsd_arm64.s
+index 724e580c..0cedea3d 100644
+--- a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
++++ b/vendor/golang.org/x/sys/unix/asm_openbsd_arm64.s
+@@ -1,15 +1,13 @@
+-// Copyright 2015 The Go Authors. All rights reserved.
++// Copyright 2019 The Go Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+-// +build linux
+-// +build mips64 mips64le
+ // +build !gccgo
+
+ #include "textflag.h"
+
+ //
+-// System calls for mips64, Linux
++// System call support for arm64, OpenBSD
+ //
+
+ // Just jump to package syscall's implementation for all these functions.
+@@ -21,6 +19,9 @@ TEXT ·Syscall(SB),NOSPLIT,$0-56
+ TEXT ·Syscall6(SB),NOSPLIT,$0-80
+ JMP syscall·Syscall6(SB)
+
++TEXT ·Syscall9(SB),NOSPLIT,$0-104
++ JMP syscall·Syscall9(SB)
++
+ TEXT ·RawSyscall(SB),NOSPLIT,$0-56
+ JMP syscall·RawSyscall(SB)
+
+diff --git a/vendor/golang.org/x/sys/unix/bluetooth_linux.go b/vendor/golang.org/x/sys/unix/bluetooth_linux.go
+index 6e322969..a178a614 100644
+--- a/vendor/golang.org/x/sys/unix/bluetooth_linux.go
++++ b/vendor/golang.org/x/sys/unix/bluetooth_linux.go
+@@ -23,6 +23,7 @@ const (
+ HCI_CHANNEL_USER = 1
+ HCI_CHANNEL_MONITOR = 2
+ HCI_CHANNEL_CONTROL = 3
++ HCI_CHANNEL_LOGGING = 4
+ )
+
+ // Socketoption Level
+diff --git a/vendor/golang.org/x/sys/unix/cap_freebsd.go b/vendor/golang.org/x/sys/unix/cap_freebsd.go
+index 83b6bcea..df520487 100644
+--- a/vendor/golang.org/x/sys/unix/cap_freebsd.go
++++ b/vendor/golang.org/x/sys/unix/cap_freebsd.go
+@@ -7,7 +7,7 @@
+ package unix
+
+ import (
+- errorspkg "errors"
++ "errors"
+ "fmt"
+ )
+
+@@ -60,26 +60,26 @@ func CapRightsSet(rights *CapRights, setrights []uint64) error {
+
+ n := caparsize(rights)
+ if n < capArSizeMin || n > capArSizeMax {
+- return errorspkg.New("bad rights size")
++ return errors.New("bad rights size")
+ }
+
+ for _, right := range setrights {
+ if caprver(right) != CAP_RIGHTS_VERSION_00 {
+- return errorspkg.New("bad right version")
++ return errors.New("bad right version")
+ }
+ i, err := rightToIndex(right)
+ if err != nil {
+ return err
+ }
+ if i >= n {
+- return errorspkg.New("index overflow")
++ return errors.New("index overflow")
+ }
+ if capidxbit(rights.Rights[i]) != capidxbit(right) {
+- return errorspkg.New("index mismatch")
++ return errors.New("index mismatch")
+ }
+ rights.Rights[i] |= right
+ if capidxbit(rights.Rights[i]) != capidxbit(right) {
+- return errorspkg.New("index mismatch (after assign)")
++ return errors.New("index mismatch (after assign)")
+ }
+ }
+
+@@ -95,26 +95,26 @@ func CapRightsClear(rights *CapRights, clearrights []uint64) error {
+
+ n := caparsize(rights)
+ if n < capArSizeMin || n > capArSizeMax {
+- return errorspkg.New("bad rights size")
++ return errors.New("bad rights size")
+ }
+
+ for _, right := range clearrights {
+ if caprver(right) != CAP_RIGHTS_VERSION_00 {
+- return errorspkg.New("bad right version")
++ return errors.New("bad right version")
+ }
+ i, err := rightToIndex(right)
+ if err != nil {
+ return err
+ }
+ if i >= n {
+- return errorspkg.New("index overflow")
++ return errors.New("index overflow")
+ }
+ if capidxbit(rights.Rights[i]) != capidxbit(right) {
+- return errorspkg.New("index mismatch")
++ return errors.New("index mismatch")
+ }
+ rights.Rights[i] &= ^(right & 0x01FFFFFFFFFFFFFF)
+ if capidxbit(rights.Rights[i]) != capidxbit(right) {
+- return errorspkg.New("index mismatch (after assign)")
++ return errors.New("index mismatch (after assign)")
+ }
+ }
+
+@@ -130,22 +130,22 @@ func CapRightsIsSet(rights *CapRights, setrights []uint64) (bool, error) {
+
+ n := caparsize(rights)
+ if n < capArSizeMin || n > capArSizeMax {
+- return false, errorspkg.New("bad rights size")
++ return false, errors.New("bad rights size")
+ }
+
+ for _, right := range setrights {
+ if caprver(right) != CAP_RIGHTS_VERSION_00 {
+- return false, errorspkg.New("bad right version")
++ return false, errors.New("bad right version")
+ }
+ i, err := rightToIndex(right)
+ if err != nil {
+ return false, err
+ }
+ if i >= n {
+- return false, errorspkg.New("index overflow")
++ return false, errors.New("index overflow")
+ }
+ if capidxbit(rights.Rights[i]) != capidxbit(right) {
+- return false, errorspkg.New("index mismatch")
++ return false, errors.New("index mismatch")
+ }
+ if (rights.Rights[i] & right) != right {
+ return false, nil
+diff --git a/vendor/golang.org/x/sys/unix/constants.go b/vendor/golang.org/x/sys/unix/constants.go
+index a96f0ebc..3a6ac648 100644
+--- a/vendor/golang.org/x/sys/unix/constants.go
++++ b/vendor/golang.org/x/sys/unix/constants.go
+@@ -2,7 +2,7 @@
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+-// +build darwin dragonfly freebsd linux netbsd openbsd solaris
++// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
+
+ package unix
+
+diff --git a/vendor/golang.org/x/sys/unix/dev_aix_ppc.go b/vendor/golang.org/x/sys/unix/dev_aix_ppc.go
+new file mode 100644
+index 00000000..5e5fb451
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/dev_aix_ppc.go
+@@ -0,0 +1,27 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build aix
++// +build ppc
++
++// Functions to access/create device major and minor numbers matching the
++// encoding used by AIX.
++
++package unix
++
++// Major returns the major component of a Linux device number.
++func Major(dev uint64) uint32 {
++ return uint32((dev >> 16) & 0xffff)
++}
++
++// Minor returns the minor component of a Linux device number.
++func Minor(dev uint64) uint32 {
++ return uint32(dev & 0xffff)
++}
++
++// Mkdev returns a Linux device number generated from the given major and minor
++// components.
++func Mkdev(major, minor uint32) uint64 {
++ return uint64(((major) << 16) | (minor))
++}
+diff --git a/vendor/golang.org/x/sys/unix/dev_aix_ppc64.go b/vendor/golang.org/x/sys/unix/dev_aix_ppc64.go
+new file mode 100644
+index 00000000..8b401244
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/dev_aix_ppc64.go
+@@ -0,0 +1,29 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build aix
++// +build ppc64
++
++// Functions to access/create device major and minor numbers matching the
++// encoding used AIX.
++
++package unix
++
++// Major returns the major component of a Linux device number.
++func Major(dev uint64) uint32 {
++ return uint32((dev & 0x3fffffff00000000) >> 32)
++}
++
++// Minor returns the minor component of a Linux device number.
++func Minor(dev uint64) uint32 {
++ return uint32((dev & 0x00000000ffffffff) >> 0)
++}
++
++// Mkdev returns a Linux device number generated from the given major and minor
++// components.
++func Mkdev(major, minor uint32) uint64 {
++ var DEVNO64 uint64
++ DEVNO64 = 0x8000000000000000
++ return ((uint64(major) << 32) | (uint64(minor) & 0x00000000FFFFFFFF) | DEVNO64)
++}
+diff --git a/vendor/golang.org/x/sys/unix/dev_darwin.go b/vendor/golang.org/x/sys/unix/dev_darwin.go
+new file mode 100644
+index 00000000..8d1dc0fa
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/dev_darwin.go
+@@ -0,0 +1,24 @@
++// Copyright 2017 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// Functions to access/create device major and minor numbers matching the
++// encoding used in Darwin's sys/types.h header.
++
++package unix
++
++// Major returns the major component of a Darwin device number.
++func Major(dev uint64) uint32 {
++ return uint32((dev >> 24) & 0xff)
++}
++
++// Minor returns the minor component of a Darwin device number.
++func Minor(dev uint64) uint32 {
++ return uint32(dev & 0xffffff)
++}
++
++// Mkdev returns a Darwin device number generated from the given major and minor
++// components.
++func Mkdev(major, minor uint32) uint64 {
++ return (uint64(major) << 24) | uint64(minor)
++}
+diff --git a/vendor/golang.org/x/sys/unix/dev_dragonfly.go b/vendor/golang.org/x/sys/unix/dev_dragonfly.go
+new file mode 100644
+index 00000000..8502f202
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/dev_dragonfly.go
+@@ -0,0 +1,30 @@
++// Copyright 2017 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// Functions to access/create device major and minor numbers matching the
++// encoding used in Dragonfly's sys/types.h header.
++//
++// The information below is extracted and adapted from sys/types.h:
++//
++// Minor gives a cookie instead of an index since in order to avoid changing the
++// meanings of bits 0-15 or wasting time and space shifting bits 16-31 for
++// devices that don't use them.
++
++package unix
++
++// Major returns the major component of a DragonFlyBSD device number.
++func Major(dev uint64) uint32 {
++ return uint32((dev >> 8) & 0xff)
++}
++
++// Minor returns the minor component of a DragonFlyBSD device number.
++func Minor(dev uint64) uint32 {
++ return uint32(dev & 0xffff00ff)
++}
++
++// Mkdev returns a DragonFlyBSD device number generated from the given major and
++// minor components.
++func Mkdev(major, minor uint32) uint64 {
++ return (uint64(major) << 8) | uint64(minor)
++}
+diff --git a/vendor/golang.org/x/sys/unix/dev_freebsd.go b/vendor/golang.org/x/sys/unix/dev_freebsd.go
+new file mode 100644
+index 00000000..eba3b4bd
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/dev_freebsd.go
+@@ -0,0 +1,30 @@
++// Copyright 2017 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// Functions to access/create device major and minor numbers matching the
++// encoding used in FreeBSD's sys/types.h header.
++//
++// The information below is extracted and adapted from sys/types.h:
++//
++// Minor gives a cookie instead of an index since in order to avoid changing the
++// meanings of bits 0-15 or wasting time and space shifting bits 16-31 for
++// devices that don't use them.
++
++package unix
++
++// Major returns the major component of a FreeBSD device number.
++func Major(dev uint64) uint32 {
++ return uint32((dev >> 8) & 0xff)
++}
++
++// Minor returns the minor component of a FreeBSD device number.
++func Minor(dev uint64) uint32 {
++ return uint32(dev & 0xffff00ff)
++}
++
++// Mkdev returns a FreeBSD device number generated from the given major and
++// minor components.
++func Mkdev(major, minor uint32) uint64 {
++ return (uint64(major) << 8) | uint64(minor)
++}
+diff --git a/vendor/golang.org/x/sys/unix/dev_linux.go b/vendor/golang.org/x/sys/unix/dev_linux.go
+index c902c39e..d165d6f3 100644
+--- a/vendor/golang.org/x/sys/unix/dev_linux.go
++++ b/vendor/golang.org/x/sys/unix/dev_linux.go
+@@ -34,9 +34,9 @@ func Minor(dev uint64) uint32 {
+ // Mkdev returns a Linux device number generated from the given major and minor
+ // components.
+ func Mkdev(major, minor uint32) uint64 {
+- dev := uint64((major & 0x00000fff) << 8)
+- dev |= uint64((major & 0xfffff000) << 32)
+- dev |= uint64((minor & 0x000000ff) << 0)
+- dev |= uint64((minor & 0xffffff00) << 12)
++ dev := (uint64(major) & 0x00000fff) << 8
++ dev |= (uint64(major) & 0xfffff000) << 32
++ dev |= (uint64(minor) & 0x000000ff) << 0
++ dev |= (uint64(minor) & 0xffffff00) << 12
+ return dev
+ }
+diff --git a/vendor/golang.org/x/sys/unix/dev_netbsd.go b/vendor/golang.org/x/sys/unix/dev_netbsd.go
+new file mode 100644
+index 00000000..b4a203d0
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/dev_netbsd.go
+@@ -0,0 +1,29 @@
++// Copyright 2017 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// Functions to access/create device major and minor numbers matching the
++// encoding used in NetBSD's sys/types.h header.
++
++package unix
++
++// Major returns the major component of a NetBSD device number.
++func Major(dev uint64) uint32 {
++ return uint32((dev & 0x000fff00) >> 8)
++}
++
++// Minor returns the minor component of a NetBSD device number.
++func Minor(dev uint64) uint32 {
++ minor := uint32((dev & 0x000000ff) >> 0)
++ minor |= uint32((dev & 0xfff00000) >> 12)
++ return minor
++}
++
++// Mkdev returns a NetBSD device number generated from the given major and minor
++// components.
++func Mkdev(major, minor uint32) uint64 {
++ dev := (uint64(major) << 8) & 0x000fff00
++ dev |= (uint64(minor) << 12) & 0xfff00000
++ dev |= (uint64(minor) << 0) & 0x000000ff
++ return dev
++}
+diff --git a/vendor/golang.org/x/sys/unix/dev_openbsd.go b/vendor/golang.org/x/sys/unix/dev_openbsd.go
+new file mode 100644
+index 00000000..f3430c42
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/dev_openbsd.go
+@@ -0,0 +1,29 @@
++// Copyright 2017 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// Functions to access/create device major and minor numbers matching the
++// encoding used in OpenBSD's sys/types.h header.
++
++package unix
++
++// Major returns the major component of an OpenBSD device number.
++func Major(dev uint64) uint32 {
++ return uint32((dev & 0x0000ff00) >> 8)
++}
++
++// Minor returns the minor component of an OpenBSD device number.
++func Minor(dev uint64) uint32 {
++ minor := uint32((dev & 0x000000ff) >> 0)
++ minor |= uint32((dev & 0xffff0000) >> 8)
++ return minor
++}
++
++// Mkdev returns an OpenBSD device number generated from the given major and minor
++// components.
++func Mkdev(major, minor uint32) uint64 {
++ dev := (uint64(major) << 8) & 0x0000ff00
++ dev |= (uint64(minor) << 8) & 0xffff0000
++ dev |= (uint64(minor) << 0) & 0x000000ff
++ return dev
++}
+diff --git a/vendor/golang.org/x/sys/unix/dirent.go b/vendor/golang.org/x/sys/unix/dirent.go
+index bd475812..304016b6 100644
+--- a/vendor/golang.org/x/sys/unix/dirent.go
++++ b/vendor/golang.org/x/sys/unix/dirent.go
+@@ -2,7 +2,7 @@
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+-// +build darwin dragonfly freebsd linux nacl netbsd openbsd solaris
++// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
+
+ package unix
+
+diff --git a/vendor/golang.org/x/sys/unix/endian_little.go b/vendor/golang.org/x/sys/unix/endian_little.go
+index 085df2d8..bcdb5d30 100644
+--- a/vendor/golang.org/x/sys/unix/endian_little.go
++++ b/vendor/golang.org/x/sys/unix/endian_little.go
+@@ -2,7 +2,7 @@
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+ //
+-// +build 386 amd64 amd64p32 arm arm64 ppc64le mipsle mips64le
++// +build 386 amd64 amd64p32 arm arm64 ppc64le mipsle mips64le riscv64
+
+ package unix
+
+diff --git a/vendor/golang.org/x/sys/unix/env_unix.go b/vendor/golang.org/x/sys/unix/env_unix.go
+index 45e281a0..84178b0a 100644
+--- a/vendor/golang.org/x/sys/unix/env_unix.go
++++ b/vendor/golang.org/x/sys/unix/env_unix.go
+@@ -1,8 +1,8 @@
+-// Copyright 2010 The Go Authors. All rights reserved.
++// Copyright 2010 The Go Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+-// +build darwin dragonfly freebsd linux netbsd openbsd solaris
++// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
+
+ // Unix environment variables.
+
+@@ -25,3 +25,7 @@ func Clearenv() {
+ func Environ() []string {
+ return syscall.Environ()
+ }
++
++func Unsetenv(key string) error {
++ return syscall.Unsetenv(key)
++}
+diff --git a/vendor/golang.org/x/sys/unix/env_unset.go b/vendor/golang.org/x/sys/unix/env_unset.go
+deleted file mode 100644
+index 92222625..00000000
+--- a/vendor/golang.org/x/sys/unix/env_unset.go
++++ /dev/null
+@@ -1,14 +0,0 @@
+-// Copyright 2014 The Go Authors. All rights reserved.
+-// Use of this source code is governed by a BSD-style
+-// license that can be found in the LICENSE file.
+-
+-// +build go1.4
+-
+-package unix
+-
+-import "syscall"
+-
+-func Unsetenv(key string) error {
+- // This was added in Go 1.4.
+- return syscall.Unsetenv(key)
+-}
+diff --git a/vendor/golang.org/x/sys/unix/errors_freebsd_386.go b/vendor/golang.org/x/sys/unix/errors_freebsd_386.go
+index c56bc8b0..761db66e 100644
+--- a/vendor/golang.org/x/sys/unix/errors_freebsd_386.go
++++ b/vendor/golang.org/x/sys/unix/errors_freebsd_386.go
+@@ -8,6 +8,7 @@
+ package unix
+
+ const (
++ DLT_HHDLC = 0x79
+ IFF_SMART = 0x20
+ IFT_1822 = 0x2
+ IFT_A12MPPSWITCH = 0x82
+@@ -210,13 +211,18 @@ const (
+ IFT_XETHER = 0x1a
+ IPPROTO_MAXID = 0x34
+ IPV6_FAITH = 0x1d
++ IPV6_MIN_MEMBERSHIPS = 0x1f
+ IP_FAITH = 0x16
++ IP_MAX_SOURCE_FILTER = 0x400
++ IP_MIN_MEMBERSHIPS = 0x1f
+ MAP_NORESERVE = 0x40
+ MAP_RENAME = 0x20
+ NET_RT_MAXID = 0x6
+ RTF_PRCLONING = 0x10000
+ RTM_OLDADD = 0x9
+ RTM_OLDDEL = 0xa
++ RT_CACHING_CONTEXT = 0x1
++ RT_NORTREF = 0x2
+ SIOCADDRT = 0x8030720a
+ SIOCALIFADDR = 0x8118691b
+ SIOCDELRT = 0x8030720b
+diff --git a/vendor/golang.org/x/sys/unix/errors_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/errors_freebsd_amd64.go
+index 3e977117..070f44b6 100644
+--- a/vendor/golang.org/x/sys/unix/errors_freebsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/errors_freebsd_amd64.go
+@@ -8,6 +8,7 @@
+ package unix
+
+ const (
++ DLT_HHDLC = 0x79
+ IFF_SMART = 0x20
+ IFT_1822 = 0x2
+ IFT_A12MPPSWITCH = 0x82
+@@ -210,13 +211,18 @@ const (
+ IFT_XETHER = 0x1a
+ IPPROTO_MAXID = 0x34
+ IPV6_FAITH = 0x1d
++ IPV6_MIN_MEMBERSHIPS = 0x1f
+ IP_FAITH = 0x16
++ IP_MAX_SOURCE_FILTER = 0x400
++ IP_MIN_MEMBERSHIPS = 0x1f
+ MAP_NORESERVE = 0x40
+ MAP_RENAME = 0x20
+ NET_RT_MAXID = 0x6
+ RTF_PRCLONING = 0x10000
+ RTM_OLDADD = 0x9
+ RTM_OLDDEL = 0xa
++ RT_CACHING_CONTEXT = 0x1
++ RT_NORTREF = 0x2
+ SIOCADDRT = 0x8040720a
+ SIOCALIFADDR = 0x8118691b
+ SIOCDELRT = 0x8040720b
+diff --git a/vendor/golang.org/x/sys/unix/errors_freebsd_arm64.go b/vendor/golang.org/x/sys/unix/errors_freebsd_arm64.go
+new file mode 100644
+index 00000000..946dcf3f
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/errors_freebsd_arm64.go
+@@ -0,0 +1,17 @@
++// Copyright 2020 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// Constants that were deprecated or moved to enums in the FreeBSD headers. Keep
++// them here for backwards compatibility.
++
++package unix
++
++const (
++ DLT_HHDLC = 0x79
++ IPV6_MIN_MEMBERSHIPS = 0x1f
++ IP_MAX_SOURCE_FILTER = 0x400
++ IP_MIN_MEMBERSHIPS = 0x1f
++ RT_CACHING_CONTEXT = 0x1
++ RT_NORTREF = 0x2
++)
+diff --git a/vendor/golang.org/x/sys/unix/flock.go b/vendor/golang.org/x/sys/unix/fcntl.go
+similarity index 54%
+rename from vendor/golang.org/x/sys/unix/flock.go
+rename to vendor/golang.org/x/sys/unix/fcntl.go
+index 2994ce75..4dc53486 100644
+--- a/vendor/golang.org/x/sys/unix/flock.go
++++ b/vendor/golang.org/x/sys/unix/fcntl.go
+@@ -2,16 +2,30 @@
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+-// +build darwin dragonfly freebsd linux netbsd openbsd
++// +build dragonfly freebsd linux netbsd openbsd
+
+ package unix
+
+ import "unsafe"
+
+ // fcntl64Syscall is usually SYS_FCNTL, but is overridden on 32-bit Linux
+-// systems by flock_linux_32bit.go to be SYS_FCNTL64.
++// systems by fcntl_linux_32bit.go to be SYS_FCNTL64.
+ var fcntl64Syscall uintptr = SYS_FCNTL
+
++func fcntl(fd int, cmd, arg int) (int, error) {
++ valptr, _, errno := Syscall(fcntl64Syscall, uintptr(fd), uintptr(cmd), uintptr(arg))
++ var err error
++ if errno != 0 {
++ err = errno
++ }
++ return int(valptr), err
++}
++
++// FcntlInt performs a fcntl syscall on fd with the provided command and argument.
++func FcntlInt(fd uintptr, cmd, arg int) (int, error) {
++ return fcntl(int(fd), cmd, arg)
++}
++
+ // FcntlFlock performs a fcntl syscall for the F_GETLK, F_SETLK or F_SETLKW command.
+ func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) error {
+ _, _, errno := Syscall(fcntl64Syscall, fd, uintptr(cmd), uintptr(unsafe.Pointer(lk)))
+diff --git a/vendor/golang.org/x/sys/unix/fcntl_darwin.go b/vendor/golang.org/x/sys/unix/fcntl_darwin.go
+new file mode 100644
+index 00000000..5868a4a4
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/fcntl_darwin.go
+@@ -0,0 +1,18 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++package unix
++
++import "unsafe"
++
++// FcntlInt performs a fcntl syscall on fd with the provided command and argument.
++func FcntlInt(fd uintptr, cmd, arg int) (int, error) {
++ return fcntl(int(fd), cmd, arg)
++}
++
++// FcntlFlock performs a fcntl syscall for the F_GETLK, F_SETLK or F_SETLKW command.
++func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) error {
++ _, err := fcntl(int(fd), cmd, int(uintptr(unsafe.Pointer(lk))))
++ return err
++}
+diff --git a/vendor/golang.org/x/sys/unix/flock_linux_32bit.go b/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go
+similarity index 100%
+rename from vendor/golang.org/x/sys/unix/flock_linux_32bit.go
+rename to vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go
+diff --git a/vendor/golang.org/x/sys/unix/fdset.go b/vendor/golang.org/x/sys/unix/fdset.go
+new file mode 100644
+index 00000000..b27be0a0
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/fdset.go
+@@ -0,0 +1,29 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
++
++package unix
++
++// Set adds fd to the set fds.
++func (fds *FdSet) Set(fd int) {
++ fds.Bits[fd/NFDBITS] |= (1 << (uintptr(fd) % NFDBITS))
++}
++
++// Clear removes fd from the set fds.
++func (fds *FdSet) Clear(fd int) {
++ fds.Bits[fd/NFDBITS] &^= (1 << (uintptr(fd) % NFDBITS))
++}
++
++// IsSet returns whether fd is in the set fds.
++func (fds *FdSet) IsSet(fd int) bool {
++ return fds.Bits[fd/NFDBITS]&(1<<(uintptr(fd)%NFDBITS)) != 0
++}
++
++// Zero clears the set fds.
++func (fds *FdSet) Zero() {
++ for i := range fds.Bits {
++ fds.Bits[i] = 0
++ }
++}
+diff --git a/vendor/golang.org/x/sys/unix/file_unix.go b/vendor/golang.org/x/sys/unix/file_unix.go
+deleted file mode 100644
+index 47f6a83f..00000000
+--- a/vendor/golang.org/x/sys/unix/file_unix.go
++++ /dev/null
+@@ -1,27 +0,0 @@
+-// Copyright 2017 The Go Authors. All rights reserved.
+-// Use of this source code is governed by a BSD-style
+-// license that can be found in the LICENSE file.
+-
+-package unix
+-
+-import (
+- "os"
+- "syscall"
+-)
+-
+-// FIXME: unexported function from os
+-// syscallMode returns the syscall-specific mode bits from Go's portable mode bits.
+-func syscallMode(i os.FileMode) (o uint32) {
+- o |= uint32(i.Perm())
+- if i&os.ModeSetuid != 0 {
+- o |= syscall.S_ISUID
+- }
+- if i&os.ModeSetgid != 0 {
+- o |= syscall.S_ISGID
+- }
+- if i&os.ModeSticky != 0 {
+- o |= syscall.S_ISVTX
+- }
+- // No mapping for Go's ModeTemporary (plan9 only).
+- return
+-}
+diff --git a/vendor/golang.org/x/sys/unix/gccgo.go b/vendor/golang.org/x/sys/unix/gccgo.go
+index 94c82321..cd6f5a61 100644
+--- a/vendor/golang.org/x/sys/unix/gccgo.go
++++ b/vendor/golang.org/x/sys/unix/gccgo.go
+@@ -1,19 +1,30 @@
+-// Copyright 2015 The Go Authors. All rights reserved.
++// Copyright 2015 The Go Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+ // +build gccgo
++// +build !aix
+
+ package unix
+
+ import "syscall"
+
+-// We can't use the gc-syntax .s files for gccgo. On the plus side
++// We can't use the gc-syntax .s files for gccgo. On the plus side
+ // much of the functionality can be written directly in Go.
+
++//extern gccgoRealSyscallNoError
++func realSyscallNoError(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r uintptr)
++
+ //extern gccgoRealSyscall
+ func realSyscall(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r, errno uintptr)
+
++func SyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr) {
++ syscall.Entersyscall()
++ r := realSyscallNoError(trap, a1, a2, a3, 0, 0, 0, 0, 0, 0)
++ syscall.Exitsyscall()
++ return r, 0
++}
++
+ func Syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) {
+ syscall.Entersyscall()
+ r, errno := realSyscall(trap, a1, a2, a3, 0, 0, 0, 0, 0, 0)
+@@ -35,6 +46,11 @@ func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr,
+ return r, 0, syscall.Errno(errno)
+ }
+
++func RawSyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr) {
++ r := realSyscallNoError(trap, a1, a2, a3, 0, 0, 0, 0, 0, 0)
++ return r, 0
++}
++
+ func RawSyscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) {
+ r, errno := realSyscall(trap, a1, a2, a3, 0, 0, 0, 0, 0, 0)
+ return r, 0, syscall.Errno(errno)
+diff --git a/vendor/golang.org/x/sys/unix/gccgo_c.c b/vendor/golang.org/x/sys/unix/gccgo_c.c
+index 07f6be03..c44730c5 100644
+--- a/vendor/golang.org/x/sys/unix/gccgo_c.c
++++ b/vendor/golang.org/x/sys/unix/gccgo_c.c
+@@ -1,8 +1,9 @@
+-// Copyright 2015 The Go Authors. All rights reserved.
++// Copyright 2015 The Go Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+ // +build gccgo
++// +build !aix
+
+ #include <errno.h>
+ #include <stdint.h>
+@@ -31,11 +32,8 @@ gccgoRealSyscall(uintptr_t trap, uintptr_t a1, uintptr_t a2, uintptr_t a3, uintp
+ return r;
+ }
+
+-// Define the use function in C so that it is not inlined.
+-
+-extern void use(void *) __asm__ (GOSYM_PREFIX GOPKGPATH ".use") __attribute__((noinline));
+-
+-void
+-use(void *p __attribute__ ((unused)))
++uintptr_t
++gccgoRealSyscallNoError(uintptr_t trap, uintptr_t a1, uintptr_t a2, uintptr_t a3, uintptr_t a4, uintptr_t a5, uintptr_t a6, uintptr_t a7, uintptr_t a8, uintptr_t a9)
+ {
++ return syscall(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9);
+ }
+diff --git a/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go b/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go
+index bffe1a77..251a977a 100644
+--- a/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go
++++ b/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go
+@@ -1,4 +1,4 @@
+-// Copyright 2015 The Go Authors. All rights reserved.
++// Copyright 2015 The Go Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+diff --git a/vendor/golang.org/x/sys/unix/gccgo_linux_sparc64.go b/vendor/golang.org/x/sys/unix/gccgo_linux_sparc64.go
+deleted file mode 100644
+index 56332692..00000000
+--- a/vendor/golang.org/x/sys/unix/gccgo_linux_sparc64.go
++++ /dev/null
+@@ -1,20 +0,0 @@
+-// Copyright 2016 The Go Authors. All rights reserved.
+-// Use of this source code is governed by a BSD-style
+-// license that can be found in the LICENSE file.
+-
+-// +build gccgo,linux,sparc64
+-
+-package unix
+-
+-import "syscall"
+-
+-//extern sysconf
+-func realSysconf(name int) int64
+-
+-func sysconf(name int) (n int64, err syscall.Errno) {
+- r := realSysconf(name)
+- if r < 0 {
+- return 0, syscall.GetErrno()
+- }
+- return r, 0
+-}
+diff --git a/vendor/golang.org/x/sys/unix/ioctl.go b/vendor/golang.org/x/sys/unix/ioctl.go
+new file mode 100644
+index 00000000..3559e5dc
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/ioctl.go
+@@ -0,0 +1,65 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
++
++package unix
++
++import (
++ "runtime"
++ "unsafe"
++)
++
++// ioctl itself should not be exposed directly, but additional get/set
++// functions for specific types are permissible.
++
++// IoctlSetInt performs an ioctl operation which sets an integer value
++// on fd, using the specified request number.
++func IoctlSetInt(fd int, req uint, value int) error {
++ return ioctl(fd, req, uintptr(value))
++}
++
++// IoctlSetWinsize performs an ioctl on fd with a *Winsize argument.
++//
++// To change fd's window size, the req argument should be TIOCSWINSZ.
++func IoctlSetWinsize(fd int, req uint, value *Winsize) error {
++ // TODO: if we get the chance, remove the req parameter and
++ // hardcode TIOCSWINSZ.
++ err := ioctl(fd, req, uintptr(unsafe.Pointer(value)))
++ runtime.KeepAlive(value)
++ return err
++}
++
++// IoctlSetTermios performs an ioctl on fd with a *Termios.
++//
++// The req value will usually be TCSETA or TIOCSETA.
++func IoctlSetTermios(fd int, req uint, value *Termios) error {
++ // TODO: if we get the chance, remove the req parameter.
++ err := ioctl(fd, req, uintptr(unsafe.Pointer(value)))
++ runtime.KeepAlive(value)
++ return err
++}
++
++// IoctlGetInt performs an ioctl operation which gets an integer value
++// from fd, using the specified request number.
++//
++// A few ioctl requests use the return value as an output parameter;
++// for those, IoctlRetInt should be used instead of this function.
++func IoctlGetInt(fd int, req uint) (int, error) {
++ var value int
++ err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
++ return value, err
++}
++
++func IoctlGetWinsize(fd int, req uint) (*Winsize, error) {
++ var value Winsize
++ err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
++ return &value, err
++}
++
++func IoctlGetTermios(fd int, req uint) (*Termios, error) {
++ var value Termios
++ err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
++ return &value, err
++}
+diff --git a/vendor/golang.org/x/sys/unix/mkasm_darwin.go b/vendor/golang.org/x/sys/unix/mkasm_darwin.go
+new file mode 100644
+index 00000000..6f7bb6ed
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/mkasm_darwin.go
+@@ -0,0 +1,78 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build ignore
++
++// mkasm_darwin.go generates assembly trampolines to call libSystem routines from Go.
++//This program must be run after mksyscall.go.
++package main
++
++import (
++ "bytes"
++ "fmt"
++ "io/ioutil"
++ "log"
++ "os"
++ "strings"
++)
++
++func writeASMFile(in string, fileName string, buildTags string) {
++ trampolines := map[string]bool{}
++
++ var out bytes.Buffer
++
++ fmt.Fprintf(&out, "// go run mkasm_darwin.go %s\n", strings.Join(os.Args[1:], " "))
++ fmt.Fprintf(&out, "// Code generated by the command above; DO NOT EDIT.\n")
++ fmt.Fprintf(&out, "\n")
++ fmt.Fprintf(&out, "// +build %s\n", buildTags)
++ fmt.Fprintf(&out, "\n")
++ fmt.Fprintf(&out, "#include \"textflag.h\"\n")
++ for _, line := range strings.Split(in, "\n") {
++ if !strings.HasPrefix(line, "func ") || !strings.HasSuffix(line, "_trampoline()") {
++ continue
++ }
++ fn := line[5 : len(line)-13]
++ if !trampolines[fn] {
++ trampolines[fn] = true
++ fmt.Fprintf(&out, "TEXT ·%s_trampoline(SB),NOSPLIT,$0-0\n", fn)
++ fmt.Fprintf(&out, "\tJMP\t%s(SB)\n", fn)
++ }
++ }
++ err := ioutil.WriteFile(fileName, out.Bytes(), 0644)
++ if err != nil {
++ log.Fatalf("can't write %s: %s", fileName, err)
++ }
++}
++
++func main() {
++ in1, err := ioutil.ReadFile("syscall_darwin.go")
++ if err != nil {
++ log.Fatalf("can't open syscall_darwin.go: %s", err)
++ }
++ arch := os.Args[1]
++ in2, err := ioutil.ReadFile(fmt.Sprintf("syscall_darwin_%s.go", arch))
++ if err != nil {
++ log.Fatalf("can't open syscall_darwin_%s.go: %s", arch, err)
++ }
++ in3, err := ioutil.ReadFile(fmt.Sprintf("zsyscall_darwin_%s.go", arch))
++ if err != nil {
++ log.Fatalf("can't open zsyscall_darwin_%s.go: %s", arch, err)
++ }
++ in := string(in1) + string(in2) + string(in3)
++
++ writeASMFile(in, fmt.Sprintf("zsyscall_darwin_%s.s", arch), "go1.12")
++
++ in1, err = ioutil.ReadFile("syscall_darwin.1_13.go")
++ if err != nil {
++ log.Fatalf("can't open syscall_darwin.1_13.go: %s", err)
++ }
++ in2, err = ioutil.ReadFile(fmt.Sprintf("zsyscall_darwin_%s.1_13.go", arch))
++ if err != nil {
++ log.Fatalf("can't open zsyscall_darwin_%s.1_13.go: %s", arch, err)
++ }
++
++ in = string(in1) + string(in2)
++
++ writeASMFile(in, fmt.Sprintf("zsyscall_darwin_%s.1_13.s", arch), "go1.13")
++}
+diff --git a/vendor/golang.org/x/sys/unix/mkmerge.go b/vendor/golang.org/x/sys/unix/mkmerge.go
+new file mode 100644
+index 00000000..8bde4501
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/mkmerge.go
+@@ -0,0 +1,521 @@
++// Copyright 2020 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build ignore
++
++// mkmerge.go parses generated source files and merges common
++// consts, funcs, and types into a common source file, per GOOS.
++//
++// Usage:
++// $ go run mkmerge.go -out MERGED FILE [FILE ...]
++//
++// Example:
++// # Remove all common consts, funcs, and types from zerrors_linux_*.go
++// # and write the common code into zerrors_linux.go
++// $ go run mkmerge.go -out zerrors_linux.go zerrors_linux_*.go
++//
++// mkmerge.go performs the merge in the following steps:
++// 1. Construct the set of common code that is idential in all
++// architecture-specific files.
++// 2. Write this common code to the merged file.
++// 3. Remove the common code from all architecture-specific files.
++package main
++
++import (
++ "bufio"
++ "bytes"
++ "flag"
++ "fmt"
++ "go/ast"
++ "go/format"
++ "go/parser"
++ "go/token"
++ "io"
++ "io/ioutil"
++ "log"
++ "os"
++ "path"
++ "path/filepath"
++ "regexp"
++ "strconv"
++ "strings"
++)
++
++const validGOOS = "aix|darwin|dragonfly|freebsd|linux|netbsd|openbsd|solaris"
++
++// getValidGOOS returns GOOS, true if filename ends with a valid "_GOOS.go"
++func getValidGOOS(filename string) (string, bool) {
++ matches := regexp.MustCompile(`_(` + validGOOS + `)\.go$`).FindStringSubmatch(filename)
++ if len(matches) != 2 {
++ return "", false
++ }
++ return matches[1], true
++}
++
++// codeElem represents an ast.Decl in a comparable way.
++type codeElem struct {
++ tok token.Token // e.g. token.CONST, token.TYPE, or token.FUNC
++ src string // the declaration formatted as source code
++}
++
++// newCodeElem returns a codeElem based on tok and node, or an error is returned.
++func newCodeElem(tok token.Token, node ast.Node) (codeElem, error) {
++ var b strings.Builder
++ err := format.Node(&b, token.NewFileSet(), node)
++ if err != nil {
++ return codeElem{}, err
++ }
++ return codeElem{tok, b.String()}, nil
++}
++
++// codeSet is a set of codeElems
++type codeSet struct {
++ set map[codeElem]bool // true for all codeElems in the set
++}
++
++// newCodeSet returns a new codeSet
++func newCodeSet() *codeSet { return &codeSet{make(map[codeElem]bool)} }
++
++// add adds elem to c
++func (c *codeSet) add(elem codeElem) { c.set[elem] = true }
++
++// has returns true if elem is in c
++func (c *codeSet) has(elem codeElem) bool { return c.set[elem] }
++
++// isEmpty returns true if the set is empty
++func (c *codeSet) isEmpty() bool { return len(c.set) == 0 }
++
++// intersection returns a new set which is the intersection of c and a
++func (c *codeSet) intersection(a *codeSet) *codeSet {
++ res := newCodeSet()
++
++ for elem := range c.set {
++ if a.has(elem) {
++ res.add(elem)
++ }
++ }
++ return res
++}
++
++// keepCommon is a filterFn for filtering the merged file with common declarations.
++func (c *codeSet) keepCommon(elem codeElem) bool {
++ switch elem.tok {
++ case token.VAR:
++ // Remove all vars from the merged file
++ return false
++ case token.CONST, token.TYPE, token.FUNC, token.COMMENT:
++ // Remove arch-specific consts, types, functions, and file-level comments from the merged file
++ return c.has(elem)
++ case token.IMPORT:
++ // Keep imports, they are handled by filterImports
++ return true
++ }
++
++ log.Fatalf("keepCommon: invalid elem %v", elem)
++ return true
++}
++
++// keepArchSpecific is a filterFn for filtering the GOARC-specific files.
++func (c *codeSet) keepArchSpecific(elem codeElem) bool {
++ switch elem.tok {
++ case token.CONST, token.TYPE, token.FUNC:
++ // Remove common consts, types, or functions from the arch-specific file
++ return !c.has(elem)
++ }
++ return true
++}
++
++// srcFile represents a source file
++type srcFile struct {
++ name string
++ src []byte
++}
++
++// filterFn is a helper for filter
++type filterFn func(codeElem) bool
++
++// filter parses and filters Go source code from src, removing top
++// level declarations using keep as predicate.
++// For src parameter, please see docs for parser.ParseFile.
++func filter(src interface{}, keep filterFn) ([]byte, error) {
++ // Parse the src into an ast
++ fset := token.NewFileSet()
++ f, err := parser.ParseFile(fset, "", src, parser.ParseComments)
++ if err != nil {
++ return nil, err
++ }
++ cmap := ast.NewCommentMap(fset, f, f.Comments)
++
++ // Group const/type specs on adjacent lines
++ var groups specGroups = make(map[string]int)
++ var groupID int
++
++ decls := f.Decls
++ f.Decls = f.Decls[:0]
++ for _, decl := range decls {
++ switch decl := decl.(type) {
++ case *ast.GenDecl:
++ // Filter imports, consts, types, vars
++ specs := decl.Specs
++ decl.Specs = decl.Specs[:0]
++ for i, spec := range specs {
++ elem, err := newCodeElem(decl.Tok, spec)
++ if err != nil {
++ return nil, err
++ }
++
++ // Create new group if there are empty lines between this and the previous spec
++ if i > 0 && fset.Position(specs[i-1].End()).Line < fset.Position(spec.Pos()).Line-1 {
++ groupID++
++ }
++
++ // Check if we should keep this spec
++ if keep(elem) {
++ decl.Specs = append(decl.Specs, spec)
++ groups.add(elem.src, groupID)
++ }
++ }
++ // Check if we should keep this decl
++ if len(decl.Specs) > 0 {
++ f.Decls = append(f.Decls, decl)
++ }
++ case *ast.FuncDecl:
++ // Filter funcs
++ elem, err := newCodeElem(token.FUNC, decl)
++ if err != nil {
++ return nil, err
++ }
++ if keep(elem) {
++ f.Decls = append(f.Decls, decl)
++ }
++ }
++ }
++
++ // Filter file level comments
++ if cmap[f] != nil {
++ commentGroups := cmap[f]
++ cmap[f] = cmap[f][:0]
++ for _, cGrp := range commentGroups {
++ if keep(codeElem{token.COMMENT, cGrp.Text()}) {
++ cmap[f] = append(cmap[f], cGrp)
++ }
++ }
++ }
++ f.Comments = cmap.Filter(f).Comments()
++
++ // Generate code for the filtered ast
++ var buf bytes.Buffer
++ if err = format.Node(&buf, fset, f); err != nil {
++ return nil, err
++ }
++
++ groupedSrc, err := groups.filterEmptyLines(&buf)
++ if err != nil {
++ return nil, err
++ }
++
++ return filterImports(groupedSrc)
++}
++
++// getCommonSet returns the set of consts, types, and funcs that are present in every file.
++func getCommonSet(files []srcFile) (*codeSet, error) {
++ if len(files) == 0 {
++ return nil, fmt.Errorf("no files provided")
++ }
++ // Use the first architecture file as the baseline
++ baseSet, err := getCodeSet(files[0].src)
++ if err != nil {
++ return nil, err
++ }
++
++ // Compare baseline set with other architecture files: discard any element,
++ // that doesn't exist in other architecture files.
++ for _, f := range files[1:] {
++ set, err := getCodeSet(f.src)
++ if err != nil {
++ return nil, err
++ }
++
++ baseSet = baseSet.intersection(set)
++ }
++ return baseSet, nil
++}
++
++// getCodeSet returns the set of all top-level consts, types, and funcs from src.
++// src must be string, []byte, or io.Reader (see go/parser.ParseFile docs)
++func getCodeSet(src interface{}) (*codeSet, error) {
++ set := newCodeSet()
++
++ fset := token.NewFileSet()
++ f, err := parser.ParseFile(fset, "", src, parser.ParseComments)
++ if err != nil {
++ return nil, err
++ }
++
++ for _, decl := range f.Decls {
++ switch decl := decl.(type) {
++ case *ast.GenDecl:
++ // Add const, and type declarations
++ if !(decl.Tok == token.CONST || decl.Tok == token.TYPE) {
++ break
++ }
++
++ for _, spec := range decl.Specs {
++ elem, err := newCodeElem(decl.Tok, spec)
++ if err != nil {
++ return nil, err
++ }
++
++ set.add(elem)
++ }
++ case *ast.FuncDecl:
++ // Add func declarations
++ elem, err := newCodeElem(token.FUNC, decl)
++ if err != nil {
++ return nil, err
++ }
++
++ set.add(elem)
++ }
++ }
++
++ // Add file level comments
++ cmap := ast.NewCommentMap(fset, f, f.Comments)
++ for _, cGrp := range cmap[f] {
++ set.add(codeElem{token.COMMENT, cGrp.Text()})
++ }
++
++ return set, nil
++}
++
++// importName returns the identifier (PackageName) for an imported package
++func importName(iSpec *ast.ImportSpec) (string, error) {
++ if iSpec.Name == nil {
++ name, err := strconv.Unquote(iSpec.Path.Value)
++ if err != nil {
++ return "", err
++ }
++ return path.Base(name), nil
++ }
++ return iSpec.Name.Name, nil
++}
++
++// specGroups tracks grouped const/type specs with a map of line: groupID pairs
++type specGroups map[string]int
++
++// add spec source to group
++func (s specGroups) add(src string, groupID int) error {
++ srcBytes, err := format.Source(bytes.TrimSpace([]byte(src)))
++ if err != nil {
++ return err
++ }
++ s[string(srcBytes)] = groupID
++ return nil
++}
++
++// filterEmptyLines removes empty lines within groups of const/type specs.
++// Returns the filtered source.
++func (s specGroups) filterEmptyLines(src io.Reader) ([]byte, error) {
++ scanner := bufio.NewScanner(src)
++ var out bytes.Buffer
++
++ var emptyLines bytes.Buffer
++ prevGroupID := -1 // Initialize to invalid group
++ for scanner.Scan() {
++ line := bytes.TrimSpace(scanner.Bytes())
++
++ if len(line) == 0 {
++ fmt.Fprintf(&emptyLines, "%s\n", scanner.Bytes())
++ continue
++ }
++
++ // Discard emptyLines if previous non-empty line belonged to the same
++ // group as this line
++ if src, err := format.Source(line); err == nil {
++ groupID, ok := s[string(src)]
++ if ok && groupID == prevGroupID {
++ emptyLines.Reset()
++ }
++ prevGroupID = groupID
++ }
++
++ emptyLines.WriteTo(&out)
++ fmt.Fprintf(&out, "%s\n", scanner.Bytes())
++ }
++ if err := scanner.Err(); err != nil {
++ return nil, err
++ }
++ return out.Bytes(), nil
++}
++
++// filterImports removes unused imports from fileSrc, and returns a formatted src.
++func filterImports(fileSrc []byte) ([]byte, error) {
++ fset := token.NewFileSet()
++ file, err := parser.ParseFile(fset, "", fileSrc, parser.ParseComments)
++ if err != nil {
++ return nil, err
++ }
++ cmap := ast.NewCommentMap(fset, file, file.Comments)
++
++ // create set of references to imported identifiers
++ keepImport := make(map[string]bool)
++ for _, u := range file.Unresolved {
++ keepImport[u.Name] = true
++ }
++
++ // filter import declarations
++ decls := file.Decls
++ file.Decls = file.Decls[:0]
++ for _, decl := range decls {
++ importDecl, ok := decl.(*ast.GenDecl)
++
++ // Keep non-import declarations
++ if !ok || importDecl.Tok != token.IMPORT {
++ file.Decls = append(file.Decls, decl)
++ continue
++ }
++
++ // Filter the import specs
++ specs := importDecl.Specs
++ importDecl.Specs = importDecl.Specs[:0]
++ for _, spec := range specs {
++ iSpec := spec.(*ast.ImportSpec)
++ name, err := importName(iSpec)
++ if err != nil {
++ return nil, err
++ }
++
++ if keepImport[name] {
++ importDecl.Specs = append(importDecl.Specs, iSpec)
++ }
++ }
++ if len(importDecl.Specs) > 0 {
++ file.Decls = append(file.Decls, importDecl)
++ }
++ }
++
++ // filter file.Imports
++ imports := file.Imports
++ file.Imports = file.Imports[:0]
++ for _, spec := range imports {
++ name, err := importName(spec)
++ if err != nil {
++ return nil, err
++ }
++
++ if keepImport[name] {
++ file.Imports = append(file.Imports, spec)
++ }
++ }
++ file.Comments = cmap.Filter(file).Comments()
++
++ var buf bytes.Buffer
++ err = format.Node(&buf, fset, file)
++ if err != nil {
++ return nil, err
++ }
++
++ return buf.Bytes(), nil
++}
++
++// merge extracts duplicate code from archFiles and merges it to mergeFile.
++// 1. Construct commonSet: the set of code that is idential in all archFiles.
++// 2. Write the code in commonSet to mergedFile.
++// 3. Remove the commonSet code from all archFiles.
++func merge(mergedFile string, archFiles ...string) error {
++ // extract and validate the GOOS part of the merged filename
++ goos, ok := getValidGOOS(mergedFile)
++ if !ok {
++ return fmt.Errorf("invalid GOOS in merged file name %s", mergedFile)
++ }
++
++ // Read architecture files
++ var inSrc []srcFile
++ for _, file := range archFiles {
++ src, err := ioutil.ReadFile(file)
++ if err != nil {
++ return fmt.Errorf("cannot read archfile %s: %w", file, err)
++ }
++
++ inSrc = append(inSrc, srcFile{file, src})
++ }
++
++ // 1. Construct the set of top-level declarations common for all files
++ commonSet, err := getCommonSet(inSrc)
++ if err != nil {
++ return err
++ }
++ if commonSet.isEmpty() {
++ // No common code => do not modify any files
++ return nil
++ }
++
++ // 2. Write the merged file
++ mergedSrc, err := filter(inSrc[0].src, commonSet.keepCommon)
++ if err != nil {
++ return err
++ }
++
++ f, err := os.Create(mergedFile)
++ if err != nil {
++ return err
++ }
++
++ buf := bufio.NewWriter(f)
++ fmt.Fprintln(buf, "// Code generated by mkmerge.go; DO NOT EDIT.")
++ fmt.Fprintln(buf)
++ fmt.Fprintf(buf, "// +build %s\n", goos)
++ fmt.Fprintln(buf)
++ buf.Write(mergedSrc)
++
++ err = buf.Flush()
++ if err != nil {
++ return err
++ }
++ err = f.Close()
++ if err != nil {
++ return err
++ }
++
++ // 3. Remove duplicate declarations from the architecture files
++ for _, inFile := range inSrc {
++ src, err := filter(inFile.src, commonSet.keepArchSpecific)
++ if err != nil {
++ return err
++ }
++ err = ioutil.WriteFile(inFile.name, src, 0644)
++ if err != nil {
++ return err
++ }
++ }
++ return nil
++}
++
++func main() {
++ var mergedFile string
++ flag.StringVar(&mergedFile, "out", "", "Write merged code to `FILE`")
++ flag.Parse()
++
++ // Expand wildcards
++ var filenames []string
++ for _, arg := range flag.Args() {
++ matches, err := filepath.Glob(arg)
++ if err != nil {
++ fmt.Fprintf(os.Stderr, "Invalid command line argument %q: %v\n", arg, err)
++ os.Exit(1)
++ }
++ filenames = append(filenames, matches...)
++ }
++
++ if len(filenames) < 2 {
++ // No need to merge
++ return
++ }
++
++ err := merge(mergedFile, filenames...)
++ if err != nil {
++ fmt.Fprintf(os.Stderr, "Merge failed with error: %v\n", err)
++ os.Exit(1)
++ }
++}
+diff --git a/vendor/golang.org/x/sys/unix/mkpost.go b/vendor/golang.org/x/sys/unix/mkpost.go
+index d3ff659b..5ee1a16b 100644
+--- a/vendor/golang.org/x/sys/unix/mkpost.go
++++ b/vendor/golang.org/x/sys/unix/mkpost.go
+@@ -28,10 +28,10 @@ func main() {
+ if goarch == "" {
+ goarch = os.Getenv("GOARCH")
+ }
+- // Check that we are using the new build system if we should be.
+- if goos == "linux" && goarch != "sparc64" {
++ // Check that we are using the Docker-based build system if we should be.
++ if goos == "linux" {
+ if os.Getenv("GOLANG_SYS_BUILD") != "docker" {
+- os.Stderr.WriteString("In the new build system, mkpost should not be called directly.\n")
++ os.Stderr.WriteString("In the Docker-based build system, mkpost should not be called directly.\n")
+ os.Stderr.WriteString("See README.md\n")
+ os.Exit(1)
+ }
+@@ -42,6 +42,21 @@ func main() {
+ log.Fatal(err)
+ }
+
++ if goos == "aix" {
++ // Replace type of Atim, Mtim and Ctim by Timespec in Stat_t
++ // to avoid having both StTimespec and Timespec.
++ sttimespec := regexp.MustCompile(`_Ctype_struct_st_timespec`)
++ b = sttimespec.ReplaceAll(b, []byte("Timespec"))
++ }
++
++ // Intentionally export __val fields in Fsid and Sigset_t
++ valRegex := regexp.MustCompile(`type (Fsid|Sigset_t) struct {(\s+)X__(bits|val)(\s+\S+\s+)}`)
++ b = valRegex.ReplaceAll(b, []byte("type $1 struct {${2}Val$4}"))
++
++ // Intentionally export __fds_bits field in FdSet
++ fdSetRegex := regexp.MustCompile(`type (FdSet) struct {(\s+)X__fds_bits(\s+\S+\s+)}`)
++ b = fdSetRegex.ReplaceAll(b, []byte("type $1 struct {${2}Bits$3}"))
++
+ // If we have empty Ptrace structs, we should delete them. Only s390x emits
+ // nonempty Ptrace structs.
+ ptraceRexexp := regexp.MustCompile(`type Ptrace((Psw|Fpregs|Per) struct {\s*})`)
+@@ -56,16 +71,31 @@ func main() {
+ removeFieldsRegex := regexp.MustCompile(`X__glibc\S*`)
+ b = removeFieldsRegex.ReplaceAll(b, []byte("_"))
+
+- // We refuse to export private fields on s390x
+- if goarch == "s390x" && goos == "linux" {
+- // Remove cgo padding fields
+- removeFieldsRegex := regexp.MustCompile(`Pad_cgo_\d+`)
+- b = removeFieldsRegex.ReplaceAll(b, []byte("_"))
++ // Convert [65]int8 to [65]byte in Utsname members to simplify
++ // conversion to string; see golang.org/issue/20753
++ convertUtsnameRegex := regexp.MustCompile(`((Sys|Node|Domain)name|Release|Version|Machine)(\s+)\[(\d+)\]u?int8`)
++ b = convertUtsnameRegex.ReplaceAll(b, []byte("$1$3[$4]byte"))
+
+- // Remove padding, hidden, or unused fields
+- removeFieldsRegex = regexp.MustCompile(`X_\S+`)
+- b = removeFieldsRegex.ReplaceAll(b, []byte("_"))
+- }
++ // Convert [n]int8 to [n]byte in Statvfs_t members to simplify
++ // conversion to string.
++ convertStatvfsRegex := regexp.MustCompile(`((Fstype|Mnton|Mntfrom)name)(\s+)\[(\d+)\]int8`)
++ b = convertStatvfsRegex.ReplaceAll(b, []byte("$1$3[$4]byte"))
++
++ // Convert [1024]int8 to [1024]byte in Ptmget members
++ convertPtmget := regexp.MustCompile(`([SC]n)(\s+)\[(\d+)\]u?int8`)
++ b = convertPtmget.ReplaceAll(b, []byte("$1[$3]byte"))
++
++ // Remove spare fields (e.g. in Statx_t)
++ spareFieldsRegex := regexp.MustCompile(`X__spare\S*`)
++ b = spareFieldsRegex.ReplaceAll(b, []byte("_"))
++
++ // Remove cgo padding fields
++ removePaddingFieldsRegex := regexp.MustCompile(`Pad_cgo_\d+`)
++ b = removePaddingFieldsRegex.ReplaceAll(b, []byte("_"))
++
++ // Remove padding, hidden, or unused fields
++ removeFieldsRegex = regexp.MustCompile(`\b(X_\S+|Padding)`)
++ b = removeFieldsRegex.ReplaceAll(b, []byte("_"))
+
+ // Remove the first line of warning from cgo
+ b = b[bytes.IndexByte(b, '\n')+1:]
+@@ -78,6 +108,15 @@ func main() {
+ cgoCommandRegex := regexp.MustCompile(`(cgo -godefs .*)`)
+ b = cgoCommandRegex.ReplaceAll(b, []byte(replacement))
+
++ // Rename Stat_t time fields
++ if goos == "freebsd" && goarch == "386" {
++ // Hide Stat_t.[AMCB]tim_ext fields
++ renameStatTimeExtFieldsRegex := regexp.MustCompile(`[AMCB]tim_ext`)
++ b = renameStatTimeExtFieldsRegex.ReplaceAll(b, []byte("_"))
++ }
++ renameStatTimeFieldsRegex := regexp.MustCompile(`([AMCB])(?:irth)?time?(?:spec)?\s+(Timespec|StTimespec)`)
++ b = renameStatTimeFieldsRegex.ReplaceAll(b, []byte("${1}tim ${2}"))
++
+ // gofmt
+ b, err = format.Source(b)
+ if err != nil {
+diff --git a/vendor/golang.org/x/sys/unix/mksyscall.go b/vendor/golang.org/x/sys/unix/mksyscall.go
+new file mode 100644
+index 00000000..9e540cc8
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/mksyscall.go
+@@ -0,0 +1,402 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build ignore
++
++/*
++This program reads a file containing function prototypes
++(like syscall_darwin.go) and generates system call bodies.
++The prototypes are marked by lines beginning with "//sys"
++and read like func declarations if //sys is replaced by func, but:
++ * The parameter lists must give a name for each argument.
++ This includes return parameters.
++ * The parameter lists must give a type for each argument:
++ the (x, y, z int) shorthand is not allowed.
++ * If the return parameter is an error number, it must be named errno.
++
++A line beginning with //sysnb is like //sys, except that the
++goroutine will not be suspended during the execution of the system
++call. This must only be used for system calls which can never
++block, as otherwise the system call could cause all goroutines to
++hang.
++*/
++package main
++
++import (
++ "bufio"
++ "flag"
++ "fmt"
++ "os"
++ "regexp"
++ "strings"
++)
++
++var (
++ b32 = flag.Bool("b32", false, "32bit big-endian")
++ l32 = flag.Bool("l32", false, "32bit little-endian")
++ plan9 = flag.Bool("plan9", false, "plan9")
++ openbsd = flag.Bool("openbsd", false, "openbsd")
++ netbsd = flag.Bool("netbsd", false, "netbsd")
++ dragonfly = flag.Bool("dragonfly", false, "dragonfly")
++ arm = flag.Bool("arm", false, "arm") // 64-bit value should use (even, odd)-pair
++ tags = flag.String("tags", "", "build tags")
++ filename = flag.String("output", "", "output file name (standard output if omitted)")
++)
++
++// cmdLine returns this programs's commandline arguments
++func cmdLine() string {
++ return "go run mksyscall.go " + strings.Join(os.Args[1:], " ")
++}
++
++// buildTags returns build tags
++func buildTags() string {
++ return *tags
++}
++
++// Param is function parameter
++type Param struct {
++ Name string
++ Type string
++}
++
++// usage prints the program usage
++func usage() {
++ fmt.Fprintf(os.Stderr, "usage: go run mksyscall.go [-b32 | -l32] [-tags x,y] [file ...]\n")
++ os.Exit(1)
++}
++
++// parseParamList parses parameter list and returns a slice of parameters
++func parseParamList(list string) []string {
++ list = strings.TrimSpace(list)
++ if list == "" {
++ return []string{}
++ }
++ return regexp.MustCompile(`\s*,\s*`).Split(list, -1)
++}
++
++// parseParam splits a parameter into name and type
++func parseParam(p string) Param {
++ ps := regexp.MustCompile(`^(\S*) (\S*)$`).FindStringSubmatch(p)
++ if ps == nil {
++ fmt.Fprintf(os.Stderr, "malformed parameter: %s\n", p)
++ os.Exit(1)
++ }
++ return Param{ps[1], ps[2]}
++}
++
++func main() {
++ // Get the OS and architecture (using GOARCH_TARGET if it exists)
++ goos := os.Getenv("GOOS")
++ if goos == "" {
++ fmt.Fprintln(os.Stderr, "GOOS not defined in environment")
++ os.Exit(1)
++ }
++ goarch := os.Getenv("GOARCH_TARGET")
++ if goarch == "" {
++ goarch = os.Getenv("GOARCH")
++ }
++
++ // Check that we are using the Docker-based build system if we should
++ if goos == "linux" {
++ if os.Getenv("GOLANG_SYS_BUILD") != "docker" {
++ fmt.Fprintf(os.Stderr, "In the Docker-based build system, mksyscall should not be called directly.\n")
++ fmt.Fprintf(os.Stderr, "See README.md\n")
++ os.Exit(1)
++ }
++ }
++
++ flag.Usage = usage
++ flag.Parse()
++ if len(flag.Args()) <= 0 {
++ fmt.Fprintf(os.Stderr, "no files to parse provided\n")
++ usage()
++ }
++
++ endianness := ""
++ if *b32 {
++ endianness = "big-endian"
++ } else if *l32 {
++ endianness = "little-endian"
++ }
++
++ libc := false
++ if goos == "darwin" && (strings.Contains(buildTags(), ",go1.12") || strings.Contains(buildTags(), ",go1.13")) {
++ libc = true
++ }
++ trampolines := map[string]bool{}
++
++ text := ""
++ for _, path := range flag.Args() {
++ file, err := os.Open(path)
++ if err != nil {
++ fmt.Fprintf(os.Stderr, err.Error())
++ os.Exit(1)
++ }
++ s := bufio.NewScanner(file)
++ for s.Scan() {
++ t := s.Text()
++ t = strings.TrimSpace(t)
++ t = regexp.MustCompile(`\s+`).ReplaceAllString(t, ` `)
++ nonblock := regexp.MustCompile(`^\/\/sysnb `).FindStringSubmatch(t)
++ if regexp.MustCompile(`^\/\/sys `).FindStringSubmatch(t) == nil && nonblock == nil {
++ continue
++ }
++
++ // Line must be of the form
++ // func Open(path string, mode int, perm int) (fd int, errno error)
++ // Split into name, in params, out params.
++ f := regexp.MustCompile(`^\/\/sys(nb)? (\w+)\(([^()]*)\)\s*(?:\(([^()]+)\))?\s*(?:=\s*((?i)SYS_[A-Z0-9_]+))?$`).FindStringSubmatch(t)
++ if f == nil {
++ fmt.Fprintf(os.Stderr, "%s:%s\nmalformed //sys declaration\n", path, t)
++ os.Exit(1)
++ }
++ funct, inps, outps, sysname := f[2], f[3], f[4], f[5]
++
++ // ClockGettime doesn't have a syscall number on Darwin, only generate libc wrappers.
++ if goos == "darwin" && !libc && funct == "ClockGettime" {
++ continue
++ }
++
++ // Split argument lists on comma.
++ in := parseParamList(inps)
++ out := parseParamList(outps)
++
++ // Try in vain to keep people from editing this file.
++ // The theory is that they jump into the middle of the file
++ // without reading the header.
++ text += "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n"
++
++ // Go function header.
++ outDecl := ""
++ if len(out) > 0 {
++ outDecl = fmt.Sprintf(" (%s)", strings.Join(out, ", "))
++ }
++ text += fmt.Sprintf("func %s(%s)%s {\n", funct, strings.Join(in, ", "), outDecl)
++
++ // Check if err return available
++ errvar := ""
++ for _, param := range out {
++ p := parseParam(param)
++ if p.Type == "error" {
++ errvar = p.Name
++ break
++ }
++ }
++
++ // Prepare arguments to Syscall.
++ var args []string
++ n := 0
++ for _, param := range in {
++ p := parseParam(param)
++ if regexp.MustCompile(`^\*`).FindStringSubmatch(p.Type) != nil {
++ args = append(args, "uintptr(unsafe.Pointer("+p.Name+"))")
++ } else if p.Type == "string" && errvar != "" {
++ text += fmt.Sprintf("\tvar _p%d *byte\n", n)
++ text += fmt.Sprintf("\t_p%d, %s = BytePtrFromString(%s)\n", n, errvar, p.Name)
++ text += fmt.Sprintf("\tif %s != nil {\n\t\treturn\n\t}\n", errvar)
++ args = append(args, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n))
++ n++
++ } else if p.Type == "string" {
++ fmt.Fprintf(os.Stderr, path+":"+funct+" uses string arguments, but has no error return\n")
++ text += fmt.Sprintf("\tvar _p%d *byte\n", n)
++ text += fmt.Sprintf("\t_p%d, _ = BytePtrFromString(%s)\n", n, p.Name)
++ args = append(args, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n))
++ n++
++ } else if regexp.MustCompile(`^\[\](.*)`).FindStringSubmatch(p.Type) != nil {
++ // Convert slice into pointer, length.
++ // Have to be careful not to take address of &a[0] if len == 0:
++ // pass dummy pointer in that case.
++ // Used to pass nil, but some OSes or simulators reject write(fd, nil, 0).
++ text += fmt.Sprintf("\tvar _p%d unsafe.Pointer\n", n)
++ text += fmt.Sprintf("\tif len(%s) > 0 {\n\t\t_p%d = unsafe.Pointer(&%s[0])\n\t}", p.Name, n, p.Name)
++ text += fmt.Sprintf(" else {\n\t\t_p%d = unsafe.Pointer(&_zero)\n\t}\n", n)
++ args = append(args, fmt.Sprintf("uintptr(_p%d)", n), fmt.Sprintf("uintptr(len(%s))", p.Name))
++ n++
++ } else if p.Type == "int64" && (*openbsd || *netbsd) {
++ args = append(args, "0")
++ if endianness == "big-endian" {
++ args = append(args, fmt.Sprintf("uintptr(%s>>32)", p.Name), fmt.Sprintf("uintptr(%s)", p.Name))
++ } else if endianness == "little-endian" {
++ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name), fmt.Sprintf("uintptr(%s>>32)", p.Name))
++ } else {
++ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name))
++ }
++ } else if p.Type == "int64" && *dragonfly {
++ if regexp.MustCompile(`^(?i)extp(read|write)`).FindStringSubmatch(funct) == nil {
++ args = append(args, "0")
++ }
++ if endianness == "big-endian" {
++ args = append(args, fmt.Sprintf("uintptr(%s>>32)", p.Name), fmt.Sprintf("uintptr(%s)", p.Name))
++ } else if endianness == "little-endian" {
++ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name), fmt.Sprintf("uintptr(%s>>32)", p.Name))
++ } else {
++ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name))
++ }
++ } else if (p.Type == "int64" || p.Type == "uint64") && endianness != "" {
++ if len(args)%2 == 1 && *arm {
++ // arm abi specifies 64-bit argument uses
++ // (even, odd) pair
++ args = append(args, "0")
++ }
++ if endianness == "big-endian" {
++ args = append(args, fmt.Sprintf("uintptr(%s>>32)", p.Name), fmt.Sprintf("uintptr(%s)", p.Name))
++ } else {
++ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name), fmt.Sprintf("uintptr(%s>>32)", p.Name))
++ }
++ } else {
++ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name))
++ }
++ }
++
++ // Determine which form to use; pad args with zeros.
++ asm := "Syscall"
++ if nonblock != nil {
++ if errvar == "" && goos == "linux" {
++ asm = "RawSyscallNoError"
++ } else {
++ asm = "RawSyscall"
++ }
++ } else {
++ if errvar == "" && goos == "linux" {
++ asm = "SyscallNoError"
++ }
++ }
++ if len(args) <= 3 {
++ for len(args) < 3 {
++ args = append(args, "0")
++ }
++ } else if len(args) <= 6 {
++ asm += "6"
++ for len(args) < 6 {
++ args = append(args, "0")
++ }
++ } else if len(args) <= 9 {
++ asm += "9"
++ for len(args) < 9 {
++ args = append(args, "0")
++ }
++ } else {
++ fmt.Fprintf(os.Stderr, "%s:%s too many arguments to system call\n", path, funct)
++ }
++
++ // System call number.
++ if sysname == "" {
++ sysname = "SYS_" + funct
++ sysname = regexp.MustCompile(`([a-z])([A-Z])`).ReplaceAllString(sysname, `${1}_$2`)
++ sysname = strings.ToUpper(sysname)
++ }
++
++ var libcFn string
++ if libc {
++ asm = "syscall_" + strings.ToLower(asm[:1]) + asm[1:] // internal syscall call
++ sysname = strings.TrimPrefix(sysname, "SYS_") // remove SYS_
++ sysname = strings.ToLower(sysname) // lowercase
++ libcFn = sysname
++ sysname = "funcPC(libc_" + sysname + "_trampoline)"
++ }
++
++ // Actual call.
++ arglist := strings.Join(args, ", ")
++ call := fmt.Sprintf("%s(%s, %s)", asm, sysname, arglist)
++
++ // Assign return values.
++ body := ""
++ ret := []string{"_", "_", "_"}
++ doErrno := false
++ for i := 0; i < len(out); i++ {
++ p := parseParam(out[i])
++ reg := ""
++ if p.Name == "err" && !*plan9 {
++ reg = "e1"
++ ret[2] = reg
++ doErrno = true
++ } else if p.Name == "err" && *plan9 {
++ ret[0] = "r0"
++ ret[2] = "e1"
++ break
++ } else {
++ reg = fmt.Sprintf("r%d", i)
++ ret[i] = reg
++ }
++ if p.Type == "bool" {
++ reg = fmt.Sprintf("%s != 0", reg)
++ }
++ if p.Type == "int64" && endianness != "" {
++ // 64-bit number in r1:r0 or r0:r1.
++ if i+2 > len(out) {
++ fmt.Fprintf(os.Stderr, "%s:%s not enough registers for int64 return\n", path, funct)
++ }
++ if endianness == "big-endian" {
++ reg = fmt.Sprintf("int64(r%d)<<32 | int64(r%d)", i, i+1)
++ } else {
++ reg = fmt.Sprintf("int64(r%d)<<32 | int64(r%d)", i+1, i)
++ }
++ ret[i] = fmt.Sprintf("r%d", i)
++ ret[i+1] = fmt.Sprintf("r%d", i+1)
++ }
++ if reg != "e1" || *plan9 {
++ body += fmt.Sprintf("\t%s = %s(%s)\n", p.Name, p.Type, reg)
++ }
++ }
++ if ret[0] == "_" && ret[1] == "_" && ret[2] == "_" {
++ text += fmt.Sprintf("\t%s\n", call)
++ } else {
++ if errvar == "" && goos == "linux" {
++ // raw syscall without error on Linux, see golang.org/issue/22924
++ text += fmt.Sprintf("\t%s, %s := %s\n", ret[0], ret[1], call)
++ } else {
++ text += fmt.Sprintf("\t%s, %s, %s := %s\n", ret[0], ret[1], ret[2], call)
++ }
++ }
++ text += body
++
++ if *plan9 && ret[2] == "e1" {
++ text += "\tif int32(r0) == -1 {\n"
++ text += "\t\terr = e1\n"
++ text += "\t}\n"
++ } else if doErrno {
++ text += "\tif e1 != 0 {\n"
++ text += "\t\terr = errnoErr(e1)\n"
++ text += "\t}\n"
++ }
++ text += "\treturn\n"
++ text += "}\n\n"
++
++ if libc && !trampolines[libcFn] {
++ // some system calls share a trampoline, like read and readlen.
++ trampolines[libcFn] = true
++ // Declare assembly trampoline.
++ text += fmt.Sprintf("func libc_%s_trampoline()\n", libcFn)
++ // Assembly trampoline calls the libc_* function, which this magic
++ // redirects to use the function from libSystem.
++ text += fmt.Sprintf("//go:linkname libc_%s libc_%s\n", libcFn, libcFn)
++ text += fmt.Sprintf("//go:cgo_import_dynamic libc_%s %s \"/usr/lib/libSystem.B.dylib\"\n", libcFn, libcFn)
++ text += "\n"
++ }
++ }
++ if err := s.Err(); err != nil {
++ fmt.Fprintf(os.Stderr, err.Error())
++ os.Exit(1)
++ }
++ file.Close()
++ }
++ fmt.Printf(srcTemplate, cmdLine(), buildTags(), text)
++}
++
++const srcTemplate = `// %s
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build %s
++
++package unix
++
++import (
++ "syscall"
++ "unsafe"
++)
++
++var _ syscall.Errno
++
++%s
++`
+diff --git a/vendor/golang.org/x/sys/unix/mksyscall_aix_ppc.go b/vendor/golang.org/x/sys/unix/mksyscall_aix_ppc.go
+new file mode 100644
+index 00000000..3be3cdfc
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/mksyscall_aix_ppc.go
+@@ -0,0 +1,415 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build ignore
++
++/*
++This program reads a file containing function prototypes
++(like syscall_aix.go) and generates system call bodies.
++The prototypes are marked by lines beginning with "//sys"
++and read like func declarations if //sys is replaced by func, but:
++ * The parameter lists must give a name for each argument.
++ This includes return parameters.
++ * The parameter lists must give a type for each argument:
++ the (x, y, z int) shorthand is not allowed.
++ * If the return parameter is an error number, it must be named err.
++ * If go func name needs to be different than its libc name,
++ * or the function is not in libc, name could be specified
++ * at the end, after "=" sign, like
++ //sys getsockopt(s int, level int, name int, val uintptr, vallen *_Socklen) (err error) = libsocket.getsockopt
++*/
++package main
++
++import (
++ "bufio"
++ "flag"
++ "fmt"
++ "os"
++ "regexp"
++ "strings"
++)
++
++var (
++ b32 = flag.Bool("b32", false, "32bit big-endian")
++ l32 = flag.Bool("l32", false, "32bit little-endian")
++ aix = flag.Bool("aix", false, "aix")
++ tags = flag.String("tags", "", "build tags")
++)
++
++// cmdLine returns this programs's commandline arguments
++func cmdLine() string {
++ return "go run mksyscall_aix_ppc.go " + strings.Join(os.Args[1:], " ")
++}
++
++// buildTags returns build tags
++func buildTags() string {
++ return *tags
++}
++
++// Param is function parameter
++type Param struct {
++ Name string
++ Type string
++}
++
++// usage prints the program usage
++func usage() {
++ fmt.Fprintf(os.Stderr, "usage: go run mksyscall_aix_ppc.go [-b32 | -l32] [-tags x,y] [file ...]\n")
++ os.Exit(1)
++}
++
++// parseParamList parses parameter list and returns a slice of parameters
++func parseParamList(list string) []string {
++ list = strings.TrimSpace(list)
++ if list == "" {
++ return []string{}
++ }
++ return regexp.MustCompile(`\s*,\s*`).Split(list, -1)
++}
++
++// parseParam splits a parameter into name and type
++func parseParam(p string) Param {
++ ps := regexp.MustCompile(`^(\S*) (\S*)$`).FindStringSubmatch(p)
++ if ps == nil {
++ fmt.Fprintf(os.Stderr, "malformed parameter: %s\n", p)
++ os.Exit(1)
++ }
++ return Param{ps[1], ps[2]}
++}
++
++func main() {
++ flag.Usage = usage
++ flag.Parse()
++ if len(flag.Args()) <= 0 {
++ fmt.Fprintf(os.Stderr, "no files to parse provided\n")
++ usage()
++ }
++
++ endianness := ""
++ if *b32 {
++ endianness = "big-endian"
++ } else if *l32 {
++ endianness = "little-endian"
++ }
++
++ pack := ""
++ text := ""
++ cExtern := "/*\n#include <stdint.h>\n#include <stddef.h>\n"
++ for _, path := range flag.Args() {
++ file, err := os.Open(path)
++ if err != nil {
++ fmt.Fprintf(os.Stderr, err.Error())
++ os.Exit(1)
++ }
++ s := bufio.NewScanner(file)
++ for s.Scan() {
++ t := s.Text()
++ t = strings.TrimSpace(t)
++ t = regexp.MustCompile(`\s+`).ReplaceAllString(t, ` `)
++ if p := regexp.MustCompile(`^package (\S+)$`).FindStringSubmatch(t); p != nil && pack == "" {
++ pack = p[1]
++ }
++ nonblock := regexp.MustCompile(`^\/\/sysnb `).FindStringSubmatch(t)
++ if regexp.MustCompile(`^\/\/sys `).FindStringSubmatch(t) == nil && nonblock == nil {
++ continue
++ }
++
++ // Line must be of the form
++ // func Open(path string, mode int, perm int) (fd int, err error)
++ // Split into name, in params, out params.
++ f := regexp.MustCompile(`^\/\/sys(nb)? (\w+)\(([^()]*)\)\s*(?:\(([^()]+)\))?\s*(?:=\s*(?:(\w*)\.)?(\w*))?$`).FindStringSubmatch(t)
++ if f == nil {
++ fmt.Fprintf(os.Stderr, "%s:%s\nmalformed //sys declaration\n", path, t)
++ os.Exit(1)
++ }
++ funct, inps, outps, modname, sysname := f[2], f[3], f[4], f[5], f[6]
++
++ // Split argument lists on comma.
++ in := parseParamList(inps)
++ out := parseParamList(outps)
++
++ inps = strings.Join(in, ", ")
++ outps = strings.Join(out, ", ")
++
++ // Try in vain to keep people from editing this file.
++ // The theory is that they jump into the middle of the file
++ // without reading the header.
++ text += "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n"
++
++ // Check if value return, err return available
++ errvar := ""
++ retvar := ""
++ rettype := ""
++ for _, param := range out {
++ p := parseParam(param)
++ if p.Type == "error" {
++ errvar = p.Name
++ } else {
++ retvar = p.Name
++ rettype = p.Type
++ }
++ }
++
++ // System call name.
++ if sysname == "" {
++ sysname = funct
++ }
++ sysname = regexp.MustCompile(`([a-z])([A-Z])`).ReplaceAllString(sysname, `${1}_$2`)
++ sysname = strings.ToLower(sysname) // All libc functions are lowercase.
++
++ cRettype := ""
++ if rettype == "unsafe.Pointer" {
++ cRettype = "uintptr_t"
++ } else if rettype == "uintptr" {
++ cRettype = "uintptr_t"
++ } else if regexp.MustCompile(`^_`).FindStringSubmatch(rettype) != nil {
++ cRettype = "uintptr_t"
++ } else if rettype == "int" {
++ cRettype = "int"
++ } else if rettype == "int32" {
++ cRettype = "int"
++ } else if rettype == "int64" {
++ cRettype = "long long"
++ } else if rettype == "uint32" {
++ cRettype = "unsigned int"
++ } else if rettype == "uint64" {
++ cRettype = "unsigned long long"
++ } else {
++ cRettype = "int"
++ }
++ if sysname == "exit" {
++ cRettype = "void"
++ }
++
++ // Change p.Types to c
++ var cIn []string
++ for _, param := range in {
++ p := parseParam(param)
++ if regexp.MustCompile(`^\*`).FindStringSubmatch(p.Type) != nil {
++ cIn = append(cIn, "uintptr_t")
++ } else if p.Type == "string" {
++ cIn = append(cIn, "uintptr_t")
++ } else if regexp.MustCompile(`^\[\](.*)`).FindStringSubmatch(p.Type) != nil {
++ cIn = append(cIn, "uintptr_t", "size_t")
++ } else if p.Type == "unsafe.Pointer" {
++ cIn = append(cIn, "uintptr_t")
++ } else if p.Type == "uintptr" {
++ cIn = append(cIn, "uintptr_t")
++ } else if regexp.MustCompile(`^_`).FindStringSubmatch(p.Type) != nil {
++ cIn = append(cIn, "uintptr_t")
++ } else if p.Type == "int" {
++ cIn = append(cIn, "int")
++ } else if p.Type == "int32" {
++ cIn = append(cIn, "int")
++ } else if p.Type == "int64" {
++ cIn = append(cIn, "long long")
++ } else if p.Type == "uint32" {
++ cIn = append(cIn, "unsigned int")
++ } else if p.Type == "uint64" {
++ cIn = append(cIn, "unsigned long long")
++ } else {
++ cIn = append(cIn, "int")
++ }
++ }
++
++ if funct != "fcntl" && funct != "FcntlInt" && funct != "readlen" && funct != "writelen" {
++ if sysname == "select" {
++ // select is a keyword of Go. Its name is
++ // changed to c_select.
++ cExtern += "#define c_select select\n"
++ }
++ // Imports of system calls from libc
++ cExtern += fmt.Sprintf("%s %s", cRettype, sysname)
++ cIn := strings.Join(cIn, ", ")
++ cExtern += fmt.Sprintf("(%s);\n", cIn)
++ }
++
++ // So file name.
++ if *aix {
++ if modname == "" {
++ modname = "libc.a/shr_64.o"
++ } else {
++ fmt.Fprintf(os.Stderr, "%s: only syscall using libc are available\n", funct)
++ os.Exit(1)
++ }
++ }
++
++ strconvfunc := "C.CString"
++
++ // Go function header.
++ if outps != "" {
++ outps = fmt.Sprintf(" (%s)", outps)
++ }
++ if text != "" {
++ text += "\n"
++ }
++
++ text += fmt.Sprintf("func %s(%s)%s {\n", funct, strings.Join(in, ", "), outps)
++
++ // Prepare arguments to Syscall.
++ var args []string
++ n := 0
++ argN := 0
++ for _, param := range in {
++ p := parseParam(param)
++ if regexp.MustCompile(`^\*`).FindStringSubmatch(p.Type) != nil {
++ args = append(args, "C.uintptr_t(uintptr(unsafe.Pointer("+p.Name+")))")
++ } else if p.Type == "string" && errvar != "" {
++ text += fmt.Sprintf("\t_p%d := uintptr(unsafe.Pointer(%s(%s)))\n", n, strconvfunc, p.Name)
++ args = append(args, fmt.Sprintf("C.uintptr_t(_p%d)", n))
++ n++
++ } else if p.Type == "string" {
++ fmt.Fprintf(os.Stderr, path+":"+funct+" uses string arguments, but has no error return\n")
++ text += fmt.Sprintf("\t_p%d := uintptr(unsafe.Pointer(%s(%s)))\n", n, strconvfunc, p.Name)
++ args = append(args, fmt.Sprintf("C.uintptr_t(_p%d)", n))
++ n++
++ } else if m := regexp.MustCompile(`^\[\](.*)`).FindStringSubmatch(p.Type); m != nil {
++ // Convert slice into pointer, length.
++ // Have to be careful not to take address of &a[0] if len == 0:
++ // pass nil in that case.
++ text += fmt.Sprintf("\tvar _p%d *%s\n", n, m[1])
++ text += fmt.Sprintf("\tif len(%s) > 0 {\n\t\t_p%d = &%s[0]\n\t}\n", p.Name, n, p.Name)
++ args = append(args, fmt.Sprintf("C.uintptr_t(uintptr(unsafe.Pointer(_p%d)))", n))
++ n++
++ text += fmt.Sprintf("\tvar _p%d int\n", n)
++ text += fmt.Sprintf("\t_p%d = len(%s)\n", n, p.Name)
++ args = append(args, fmt.Sprintf("C.size_t(_p%d)", n))
++ n++
++ } else if p.Type == "int64" && endianness != "" {
++ if endianness == "big-endian" {
++ args = append(args, fmt.Sprintf("uintptr(%s>>32)", p.Name), fmt.Sprintf("uintptr(%s)", p.Name))
++ } else {
++ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name), fmt.Sprintf("uintptr(%s>>32)", p.Name))
++ }
++ n++
++ } else if p.Type == "bool" {
++ text += fmt.Sprintf("\tvar _p%d uint32\n", n)
++ text += fmt.Sprintf("\tif %s {\n\t\t_p%d = 1\n\t} else {\n\t\t_p%d = 0\n\t}\n", p.Name, n, n)
++ args = append(args, fmt.Sprintf("_p%d", n))
++ } else if regexp.MustCompile(`^_`).FindStringSubmatch(p.Type) != nil {
++ args = append(args, fmt.Sprintf("C.uintptr_t(uintptr(%s))", p.Name))
++ } else if p.Type == "unsafe.Pointer" {
++ args = append(args, fmt.Sprintf("C.uintptr_t(uintptr(%s))", p.Name))
++ } else if p.Type == "int" {
++ if (argN == 2) && ((funct == "readlen") || (funct == "writelen")) {
++ args = append(args, fmt.Sprintf("C.size_t(%s)", p.Name))
++ } else if argN == 0 && funct == "fcntl" {
++ args = append(args, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
++ } else if (argN == 2) && ((funct == "fcntl") || (funct == "FcntlInt")) {
++ args = append(args, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
++ } else {
++ args = append(args, fmt.Sprintf("C.int(%s)", p.Name))
++ }
++ } else if p.Type == "int32" {
++ args = append(args, fmt.Sprintf("C.int(%s)", p.Name))
++ } else if p.Type == "int64" {
++ args = append(args, fmt.Sprintf("C.longlong(%s)", p.Name))
++ } else if p.Type == "uint32" {
++ args = append(args, fmt.Sprintf("C.uint(%s)", p.Name))
++ } else if p.Type == "uint64" {
++ args = append(args, fmt.Sprintf("C.ulonglong(%s)", p.Name))
++ } else if p.Type == "uintptr" {
++ args = append(args, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
++ } else {
++ args = append(args, fmt.Sprintf("C.int(%s)", p.Name))
++ }
++ argN++
++ }
++
++ // Actual call.
++ arglist := strings.Join(args, ", ")
++ call := ""
++ if sysname == "exit" {
++ if errvar != "" {
++ call += "er :="
++ } else {
++ call += ""
++ }
++ } else if errvar != "" {
++ call += "r0,er :="
++ } else if retvar != "" {
++ call += "r0,_ :="
++ } else {
++ call += ""
++ }
++ if sysname == "select" {
++ // select is a keyword of Go. Its name is
++ // changed to c_select.
++ call += fmt.Sprintf("C.c_%s(%s)", sysname, arglist)
++ } else {
++ call += fmt.Sprintf("C.%s(%s)", sysname, arglist)
++ }
++
++ // Assign return values.
++ body := ""
++ for i := 0; i < len(out); i++ {
++ p := parseParam(out[i])
++ reg := ""
++ if p.Name == "err" {
++ reg = "e1"
++ } else {
++ reg = "r0"
++ }
++ if reg != "e1" {
++ body += fmt.Sprintf("\t%s = %s(%s)\n", p.Name, p.Type, reg)
++ }
++ }
++
++ // verify return
++ if sysname != "exit" && errvar != "" {
++ if regexp.MustCompile(`^uintptr`).FindStringSubmatch(cRettype) != nil {
++ body += "\tif (uintptr(r0) ==^uintptr(0) && er != nil) {\n"
++ body += fmt.Sprintf("\t\t%s = er\n", errvar)
++ body += "\t}\n"
++ } else {
++ body += "\tif (r0 ==-1 && er != nil) {\n"
++ body += fmt.Sprintf("\t\t%s = er\n", errvar)
++ body += "\t}\n"
++ }
++ } else if errvar != "" {
++ body += "\tif (er != nil) {\n"
++ body += fmt.Sprintf("\t\t%s = er\n", errvar)
++ body += "\t}\n"
++ }
++
++ text += fmt.Sprintf("\t%s\n", call)
++ text += body
++
++ text += "\treturn\n"
++ text += "}\n"
++ }
++ if err := s.Err(); err != nil {
++ fmt.Fprintf(os.Stderr, err.Error())
++ os.Exit(1)
++ }
++ file.Close()
++ }
++ imp := ""
++ if pack != "unix" {
++ imp = "import \"golang.org/x/sys/unix\"\n"
++
++ }
++ fmt.Printf(srcTemplate, cmdLine(), buildTags(), pack, cExtern, imp, text)
++}
++
++const srcTemplate = `// %s
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build %s
++
++package %s
++
++
++%s
++*/
++import "C"
++import (
++ "unsafe"
++)
++
++
++%s
++
++%s
++`
+diff --git a/vendor/golang.org/x/sys/unix/mksyscall_aix_ppc64.go b/vendor/golang.org/x/sys/unix/mksyscall_aix_ppc64.go
+new file mode 100644
+index 00000000..c9600995
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/mksyscall_aix_ppc64.go
+@@ -0,0 +1,614 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build ignore
++
++/*
++This program reads a file containing function prototypes
++(like syscall_aix.go) and generates system call bodies.
++The prototypes are marked by lines beginning with "//sys"
++and read like func declarations if //sys is replaced by func, but:
++ * The parameter lists must give a name for each argument.
++ This includes return parameters.
++ * The parameter lists must give a type for each argument:
++ the (x, y, z int) shorthand is not allowed.
++ * If the return parameter is an error number, it must be named err.
++ * If go func name needs to be different than its libc name,
++ * or the function is not in libc, name could be specified
++ * at the end, after "=" sign, like
++ //sys getsockopt(s int, level int, name int, val uintptr, vallen *_Socklen) (err error) = libsocket.getsockopt
++
++
++This program will generate three files and handle both gc and gccgo implementation:
++ - zsyscall_aix_ppc64.go: the common part of each implementation (error handler, pointer creation)
++ - zsyscall_aix_ppc64_gc.go: gc part with //go_cgo_import_dynamic and a call to syscall6
++ - zsyscall_aix_ppc64_gccgo.go: gccgo part with C function and conversion to C type.
++
++ The generated code looks like this
++
++zsyscall_aix_ppc64.go
++func asyscall(...) (n int, err error) {
++ // Pointer Creation
++ r1, e1 := callasyscall(...)
++ // Type Conversion
++ // Error Handler
++ return
++}
++
++zsyscall_aix_ppc64_gc.go
++//go:cgo_import_dynamic libc_asyscall asyscall "libc.a/shr_64.o"
++//go:linkname libc_asyscall libc_asyscall
++var asyscall syscallFunc
++
++func callasyscall(...) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_asyscall)), "nb_args", ... )
++ return
++}
++
++zsyscall_aix_ppc64_ggcgo.go
++
++// int asyscall(...)
++
++import "C"
++
++func callasyscall(...) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.asyscall(...))
++ e1 = syscall.GetErrno()
++ return
++}
++*/
++
++package main
++
++import (
++ "bufio"
++ "flag"
++ "fmt"
++ "io/ioutil"
++ "os"
++ "regexp"
++ "strings"
++)
++
++var (
++ b32 = flag.Bool("b32", false, "32bit big-endian")
++ l32 = flag.Bool("l32", false, "32bit little-endian")
++ aix = flag.Bool("aix", false, "aix")
++ tags = flag.String("tags", "", "build tags")
++)
++
++// cmdLine returns this programs's commandline arguments
++func cmdLine() string {
++ return "go run mksyscall_aix_ppc64.go " + strings.Join(os.Args[1:], " ")
++}
++
++// buildTags returns build tags
++func buildTags() string {
++ return *tags
++}
++
++// Param is function parameter
++type Param struct {
++ Name string
++ Type string
++}
++
++// usage prints the program usage
++func usage() {
++ fmt.Fprintf(os.Stderr, "usage: go run mksyscall_aix_ppc64.go [-b32 | -l32] [-tags x,y] [file ...]\n")
++ os.Exit(1)
++}
++
++// parseParamList parses parameter list and returns a slice of parameters
++func parseParamList(list string) []string {
++ list = strings.TrimSpace(list)
++ if list == "" {
++ return []string{}
++ }
++ return regexp.MustCompile(`\s*,\s*`).Split(list, -1)
++}
++
++// parseParam splits a parameter into name and type
++func parseParam(p string) Param {
++ ps := regexp.MustCompile(`^(\S*) (\S*)$`).FindStringSubmatch(p)
++ if ps == nil {
++ fmt.Fprintf(os.Stderr, "malformed parameter: %s\n", p)
++ os.Exit(1)
++ }
++ return Param{ps[1], ps[2]}
++}
++
++func main() {
++ flag.Usage = usage
++ flag.Parse()
++ if len(flag.Args()) <= 0 {
++ fmt.Fprintf(os.Stderr, "no files to parse provided\n")
++ usage()
++ }
++
++ endianness := ""
++ if *b32 {
++ endianness = "big-endian"
++ } else if *l32 {
++ endianness = "little-endian"
++ }
++
++ pack := ""
++ // GCCGO
++ textgccgo := ""
++ cExtern := "/*\n#include <stdint.h>\n"
++ // GC
++ textgc := ""
++ dynimports := ""
++ linknames := ""
++ var vars []string
++ // COMMON
++ textcommon := ""
++ for _, path := range flag.Args() {
++ file, err := os.Open(path)
++ if err != nil {
++ fmt.Fprintf(os.Stderr, err.Error())
++ os.Exit(1)
++ }
++ s := bufio.NewScanner(file)
++ for s.Scan() {
++ t := s.Text()
++ t = strings.TrimSpace(t)
++ t = regexp.MustCompile(`\s+`).ReplaceAllString(t, ` `)
++ if p := regexp.MustCompile(`^package (\S+)$`).FindStringSubmatch(t); p != nil && pack == "" {
++ pack = p[1]
++ }
++ nonblock := regexp.MustCompile(`^\/\/sysnb `).FindStringSubmatch(t)
++ if regexp.MustCompile(`^\/\/sys `).FindStringSubmatch(t) == nil && nonblock == nil {
++ continue
++ }
++
++ // Line must be of the form
++ // func Open(path string, mode int, perm int) (fd int, err error)
++ // Split into name, in params, out params.
++ f := regexp.MustCompile(`^\/\/sys(nb)? (\w+)\(([^()]*)\)\s*(?:\(([^()]+)\))?\s*(?:=\s*(?:(\w*)\.)?(\w*))?$`).FindStringSubmatch(t)
++ if f == nil {
++ fmt.Fprintf(os.Stderr, "%s:%s\nmalformed //sys declaration\n", path, t)
++ os.Exit(1)
++ }
++ funct, inps, outps, modname, sysname := f[2], f[3], f[4], f[5], f[6]
++
++ // Split argument lists on comma.
++ in := parseParamList(inps)
++ out := parseParamList(outps)
++
++ inps = strings.Join(in, ", ")
++ outps = strings.Join(out, ", ")
++
++ if sysname == "" {
++ sysname = funct
++ }
++
++ onlyCommon := false
++ if funct == "readlen" || funct == "writelen" || funct == "FcntlInt" || funct == "FcntlFlock" {
++ // This function call another syscall which is already implemented.
++ // Therefore, the gc and gccgo part must not be generated.
++ onlyCommon = true
++ }
++
++ // Try in vain to keep people from editing this file.
++ // The theory is that they jump into the middle of the file
++ // without reading the header.
++
++ textcommon += "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n"
++ if !onlyCommon {
++ textgccgo += "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n"
++ textgc += "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n"
++ }
++
++ // Check if value return, err return available
++ errvar := ""
++ rettype := ""
++ for _, param := range out {
++ p := parseParam(param)
++ if p.Type == "error" {
++ errvar = p.Name
++ } else {
++ rettype = p.Type
++ }
++ }
++
++ sysname = regexp.MustCompile(`([a-z])([A-Z])`).ReplaceAllString(sysname, `${1}_$2`)
++ sysname = strings.ToLower(sysname) // All libc functions are lowercase.
++
++ // GCCGO Prototype return type
++ cRettype := ""
++ if rettype == "unsafe.Pointer" {
++ cRettype = "uintptr_t"
++ } else if rettype == "uintptr" {
++ cRettype = "uintptr_t"
++ } else if regexp.MustCompile(`^_`).FindStringSubmatch(rettype) != nil {
++ cRettype = "uintptr_t"
++ } else if rettype == "int" {
++ cRettype = "int"
++ } else if rettype == "int32" {
++ cRettype = "int"
++ } else if rettype == "int64" {
++ cRettype = "long long"
++ } else if rettype == "uint32" {
++ cRettype = "unsigned int"
++ } else if rettype == "uint64" {
++ cRettype = "unsigned long long"
++ } else {
++ cRettype = "int"
++ }
++ if sysname == "exit" {
++ cRettype = "void"
++ }
++
++ // GCCGO Prototype arguments type
++ var cIn []string
++ for i, param := range in {
++ p := parseParam(param)
++ if regexp.MustCompile(`^\*`).FindStringSubmatch(p.Type) != nil {
++ cIn = append(cIn, "uintptr_t")
++ } else if p.Type == "string" {
++ cIn = append(cIn, "uintptr_t")
++ } else if regexp.MustCompile(`^\[\](.*)`).FindStringSubmatch(p.Type) != nil {
++ cIn = append(cIn, "uintptr_t", "size_t")
++ } else if p.Type == "unsafe.Pointer" {
++ cIn = append(cIn, "uintptr_t")
++ } else if p.Type == "uintptr" {
++ cIn = append(cIn, "uintptr_t")
++ } else if regexp.MustCompile(`^_`).FindStringSubmatch(p.Type) != nil {
++ cIn = append(cIn, "uintptr_t")
++ } else if p.Type == "int" {
++ if (i == 0 || i == 2) && funct == "fcntl" {
++ // These fcntl arguments needs to be uintptr to be able to call FcntlInt and FcntlFlock
++ cIn = append(cIn, "uintptr_t")
++ } else {
++ cIn = append(cIn, "int")
++ }
++
++ } else if p.Type == "int32" {
++ cIn = append(cIn, "int")
++ } else if p.Type == "int64" {
++ cIn = append(cIn, "long long")
++ } else if p.Type == "uint32" {
++ cIn = append(cIn, "unsigned int")
++ } else if p.Type == "uint64" {
++ cIn = append(cIn, "unsigned long long")
++ } else {
++ cIn = append(cIn, "int")
++ }
++ }
++
++ if !onlyCommon {
++ // GCCGO Prototype Generation
++ // Imports of system calls from libc
++ if sysname == "select" {
++ // select is a keyword of Go. Its name is
++ // changed to c_select.
++ cExtern += "#define c_select select\n"
++ }
++ cExtern += fmt.Sprintf("%s %s", cRettype, sysname)
++ cIn := strings.Join(cIn, ", ")
++ cExtern += fmt.Sprintf("(%s);\n", cIn)
++ }
++ // GC Library name
++ if modname == "" {
++ modname = "libc.a/shr_64.o"
++ } else {
++ fmt.Fprintf(os.Stderr, "%s: only syscall using libc are available\n", funct)
++ os.Exit(1)
++ }
++ sysvarname := fmt.Sprintf("libc_%s", sysname)
++
++ if !onlyCommon {
++ // GC Runtime import of function to allow cross-platform builds.
++ dynimports += fmt.Sprintf("//go:cgo_import_dynamic %s %s \"%s\"\n", sysvarname, sysname, modname)
++ // GC Link symbol to proc address variable.
++ linknames += fmt.Sprintf("//go:linkname %s %s\n", sysvarname, sysvarname)
++ // GC Library proc address variable.
++ vars = append(vars, sysvarname)
++ }
++
++ strconvfunc := "BytePtrFromString"
++ strconvtype := "*byte"
++
++ // Go function header.
++ if outps != "" {
++ outps = fmt.Sprintf(" (%s)", outps)
++ }
++ if textcommon != "" {
++ textcommon += "\n"
++ }
++
++ textcommon += fmt.Sprintf("func %s(%s)%s {\n", funct, strings.Join(in, ", "), outps)
++
++ // Prepare arguments tocall.
++ var argscommon []string // Arguments in the common part
++ var argscall []string // Arguments for call prototype
++ var argsgc []string // Arguments for gc call (with syscall6)
++ var argsgccgo []string // Arguments for gccgo call (with C.name_of_syscall)
++ n := 0
++ argN := 0
++ for _, param := range in {
++ p := parseParam(param)
++ if regexp.MustCompile(`^\*`).FindStringSubmatch(p.Type) != nil {
++ argscommon = append(argscommon, fmt.Sprintf("uintptr(unsafe.Pointer(%s))", p.Name))
++ argscall = append(argscall, fmt.Sprintf("%s uintptr", p.Name))
++ argsgc = append(argsgc, p.Name)
++ argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
++ } else if p.Type == "string" && errvar != "" {
++ textcommon += fmt.Sprintf("\tvar _p%d %s\n", n, strconvtype)
++ textcommon += fmt.Sprintf("\t_p%d, %s = %s(%s)\n", n, errvar, strconvfunc, p.Name)
++ textcommon += fmt.Sprintf("\tif %s != nil {\n\t\treturn\n\t}\n", errvar)
++
++ argscommon = append(argscommon, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n))
++ argscall = append(argscall, fmt.Sprintf("_p%d uintptr ", n))
++ argsgc = append(argsgc, fmt.Sprintf("_p%d", n))
++ argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(_p%d)", n))
++ n++
++ } else if p.Type == "string" {
++ fmt.Fprintf(os.Stderr, path+":"+funct+" uses string arguments, but has no error return\n")
++ textcommon += fmt.Sprintf("\tvar _p%d %s\n", n, strconvtype)
++ textcommon += fmt.Sprintf("\t_p%d, %s = %s(%s)\n", n, errvar, strconvfunc, p.Name)
++ textcommon += fmt.Sprintf("\tif %s != nil {\n\t\treturn\n\t}\n", errvar)
++
++ argscommon = append(argscommon, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n))
++ argscall = append(argscall, fmt.Sprintf("_p%d uintptr", n))
++ argsgc = append(argsgc, fmt.Sprintf("_p%d", n))
++ argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(_p%d)", n))
++ n++
++ } else if m := regexp.MustCompile(`^\[\](.*)`).FindStringSubmatch(p.Type); m != nil {
++ // Convert slice into pointer, length.
++ // Have to be careful not to take address of &a[0] if len == 0:
++ // pass nil in that case.
++ textcommon += fmt.Sprintf("\tvar _p%d *%s\n", n, m[1])
++ textcommon += fmt.Sprintf("\tif len(%s) > 0 {\n\t\t_p%d = &%s[0]\n\t}\n", p.Name, n, p.Name)
++ argscommon = append(argscommon, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n), fmt.Sprintf("len(%s)", p.Name))
++ argscall = append(argscall, fmt.Sprintf("_p%d uintptr", n), fmt.Sprintf("_lenp%d int", n))
++ argsgc = append(argsgc, fmt.Sprintf("_p%d", n), fmt.Sprintf("uintptr(_lenp%d)", n))
++ argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(_p%d)", n), fmt.Sprintf("C.size_t(_lenp%d)", n))
++ n++
++ } else if p.Type == "int64" && endianness != "" {
++ fmt.Fprintf(os.Stderr, path+":"+funct+" uses int64 with 32 bits mode. Case not yet implemented\n")
++ } else if p.Type == "bool" {
++ fmt.Fprintf(os.Stderr, path+":"+funct+" uses bool. Case not yet implemented\n")
++ } else if regexp.MustCompile(`^_`).FindStringSubmatch(p.Type) != nil || p.Type == "unsafe.Pointer" {
++ argscommon = append(argscommon, fmt.Sprintf("uintptr(%s)", p.Name))
++ argscall = append(argscall, fmt.Sprintf("%s uintptr", p.Name))
++ argsgc = append(argsgc, p.Name)
++ argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
++ } else if p.Type == "int" {
++ if (argN == 0 || argN == 2) && ((funct == "fcntl") || (funct == "FcntlInt") || (funct == "FcntlFlock")) {
++ // These fcntl arguments need to be uintptr to be able to call FcntlInt and FcntlFlock
++ argscommon = append(argscommon, fmt.Sprintf("uintptr(%s)", p.Name))
++ argscall = append(argscall, fmt.Sprintf("%s uintptr", p.Name))
++ argsgc = append(argsgc, p.Name)
++ argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
++
++ } else {
++ argscommon = append(argscommon, p.Name)
++ argscall = append(argscall, fmt.Sprintf("%s int", p.Name))
++ argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
++ argsgccgo = append(argsgccgo, fmt.Sprintf("C.int(%s)", p.Name))
++ }
++ } else if p.Type == "int32" {
++ argscommon = append(argscommon, p.Name)
++ argscall = append(argscall, fmt.Sprintf("%s int32", p.Name))
++ argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
++ argsgccgo = append(argsgccgo, fmt.Sprintf("C.int(%s)", p.Name))
++ } else if p.Type == "int64" {
++ argscommon = append(argscommon, p.Name)
++ argscall = append(argscall, fmt.Sprintf("%s int64", p.Name))
++ argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
++ argsgccgo = append(argsgccgo, fmt.Sprintf("C.longlong(%s)", p.Name))
++ } else if p.Type == "uint32" {
++ argscommon = append(argscommon, p.Name)
++ argscall = append(argscall, fmt.Sprintf("%s uint32", p.Name))
++ argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
++ argsgccgo = append(argsgccgo, fmt.Sprintf("C.uint(%s)", p.Name))
++ } else if p.Type == "uint64" {
++ argscommon = append(argscommon, p.Name)
++ argscall = append(argscall, fmt.Sprintf("%s uint64", p.Name))
++ argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
++ argsgccgo = append(argsgccgo, fmt.Sprintf("C.ulonglong(%s)", p.Name))
++ } else if p.Type == "uintptr" {
++ argscommon = append(argscommon, p.Name)
++ argscall = append(argscall, fmt.Sprintf("%s uintptr", p.Name))
++ argsgc = append(argsgc, p.Name)
++ argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
++ } else {
++ argscommon = append(argscommon, fmt.Sprintf("int(%s)", p.Name))
++ argscall = append(argscall, fmt.Sprintf("%s int", p.Name))
++ argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
++ argsgccgo = append(argsgccgo, fmt.Sprintf("C.int(%s)", p.Name))
++ }
++ argN++
++ }
++ nargs := len(argsgc)
++
++ // COMMON function generation
++ argscommonlist := strings.Join(argscommon, ", ")
++ callcommon := fmt.Sprintf("call%s(%s)", sysname, argscommonlist)
++ ret := []string{"_", "_"}
++ body := ""
++ doErrno := false
++ for i := 0; i < len(out); i++ {
++ p := parseParam(out[i])
++ reg := ""
++ if p.Name == "err" {
++ reg = "e1"
++ ret[1] = reg
++ doErrno = true
++ } else {
++ reg = "r0"
++ ret[0] = reg
++ }
++ if p.Type == "bool" {
++ reg = fmt.Sprintf("%s != 0", reg)
++ }
++ if reg != "e1" {
++ body += fmt.Sprintf("\t%s = %s(%s)\n", p.Name, p.Type, reg)
++ }
++ }
++ if ret[0] == "_" && ret[1] == "_" {
++ textcommon += fmt.Sprintf("\t%s\n", callcommon)
++ } else {
++ textcommon += fmt.Sprintf("\t%s, %s := %s\n", ret[0], ret[1], callcommon)
++ }
++ textcommon += body
++
++ if doErrno {
++ textcommon += "\tif e1 != 0 {\n"
++ textcommon += "\t\terr = errnoErr(e1)\n"
++ textcommon += "\t}\n"
++ }
++ textcommon += "\treturn\n"
++ textcommon += "}\n"
++
++ if onlyCommon {
++ continue
++ }
++
++ // CALL Prototype
++ callProto := fmt.Sprintf("func call%s(%s) (r1 uintptr, e1 Errno) {\n", sysname, strings.Join(argscall, ", "))
++
++ // GC function generation
++ asm := "syscall6"
++ if nonblock != nil {
++ asm = "rawSyscall6"
++ }
++
++ if len(argsgc) <= 6 {
++ for len(argsgc) < 6 {
++ argsgc = append(argsgc, "0")
++ }
++ } else {
++ fmt.Fprintf(os.Stderr, "%s: too many arguments to system call", funct)
++ os.Exit(1)
++ }
++ argsgclist := strings.Join(argsgc, ", ")
++ callgc := fmt.Sprintf("%s(uintptr(unsafe.Pointer(&%s)), %d, %s)", asm, sysvarname, nargs, argsgclist)
++
++ textgc += callProto
++ textgc += fmt.Sprintf("\tr1, _, e1 = %s\n", callgc)
++ textgc += "\treturn\n}\n"
++
++ // GCCGO function generation
++ argsgccgolist := strings.Join(argsgccgo, ", ")
++ var callgccgo string
++ if sysname == "select" {
++ // select is a keyword of Go. Its name is
++ // changed to c_select.
++ callgccgo = fmt.Sprintf("C.c_%s(%s)", sysname, argsgccgolist)
++ } else {
++ callgccgo = fmt.Sprintf("C.%s(%s)", sysname, argsgccgolist)
++ }
++ textgccgo += callProto
++ textgccgo += fmt.Sprintf("\tr1 = uintptr(%s)\n", callgccgo)
++ textgccgo += "\te1 = syscall.GetErrno()\n"
++ textgccgo += "\treturn\n}\n"
++ }
++ if err := s.Err(); err != nil {
++ fmt.Fprintf(os.Stderr, err.Error())
++ os.Exit(1)
++ }
++ file.Close()
++ }
++ imp := ""
++ if pack != "unix" {
++ imp = "import \"golang.org/x/sys/unix\"\n"
++
++ }
++
++ // Print zsyscall_aix_ppc64.go
++ err := ioutil.WriteFile("zsyscall_aix_ppc64.go",
++ []byte(fmt.Sprintf(srcTemplate1, cmdLine(), buildTags(), pack, imp, textcommon)),
++ 0644)
++ if err != nil {
++ fmt.Fprintf(os.Stderr, err.Error())
++ os.Exit(1)
++ }
++
++ // Print zsyscall_aix_ppc64_gc.go
++ vardecls := "\t" + strings.Join(vars, ",\n\t")
++ vardecls += " syscallFunc"
++ err = ioutil.WriteFile("zsyscall_aix_ppc64_gc.go",
++ []byte(fmt.Sprintf(srcTemplate2, cmdLine(), buildTags(), pack, imp, dynimports, linknames, vardecls, textgc)),
++ 0644)
++ if err != nil {
++ fmt.Fprintf(os.Stderr, err.Error())
++ os.Exit(1)
++ }
++
++ // Print zsyscall_aix_ppc64_gccgo.go
++ err = ioutil.WriteFile("zsyscall_aix_ppc64_gccgo.go",
++ []byte(fmt.Sprintf(srcTemplate3, cmdLine(), buildTags(), pack, cExtern, imp, textgccgo)),
++ 0644)
++ if err != nil {
++ fmt.Fprintf(os.Stderr, err.Error())
++ os.Exit(1)
++ }
++}
++
++const srcTemplate1 = `// %s
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build %s
++
++package %s
++
++import (
++ "unsafe"
++)
++
++
++%s
++
++%s
++`
++const srcTemplate2 = `// %s
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build %s
++// +build !gccgo
++
++package %s
++
++import (
++ "unsafe"
++)
++%s
++%s
++%s
++type syscallFunc uintptr
++
++var (
++%s
++)
++
++// Implemented in runtime/syscall_aix.go.
++func rawSyscall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
++func syscall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
++
++%s
++`
++const srcTemplate3 = `// %s
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build %s
++// +build gccgo
++
++package %s
++
++%s
++*/
++import "C"
++import (
++ "syscall"
++)
++
++
++%s
++
++%s
++`
+diff --git a/vendor/golang.org/x/sys/unix/mksyscall_solaris.go b/vendor/golang.org/x/sys/unix/mksyscall_solaris.go
+new file mode 100644
+index 00000000..675597e4
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/mksyscall_solaris.go
+@@ -0,0 +1,341 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build ignore
++
++/*
++ This program reads a file containing function prototypes
++ (like syscall_solaris.go) and generates system call bodies.
++ The prototypes are marked by lines beginning with "//sys"
++ and read like func declarations if //sys is replaced by func, but:
++ * The parameter lists must give a name for each argument.
++ This includes return parameters.
++ * The parameter lists must give a type for each argument:
++ the (x, y, z int) shorthand is not allowed.
++ * If the return parameter is an error number, it must be named err.
++ * If go func name needs to be different than its libc name,
++ * or the function is not in libc, name could be specified
++ * at the end, after "=" sign, like
++ //sys getsockopt(s int, level int, name int, val uintptr, vallen *_Socklen) (err error) = libsocket.getsockopt
++*/
++
++package main
++
++import (
++ "bufio"
++ "flag"
++ "fmt"
++ "os"
++ "regexp"
++ "strings"
++)
++
++var (
++ b32 = flag.Bool("b32", false, "32bit big-endian")
++ l32 = flag.Bool("l32", false, "32bit little-endian")
++ tags = flag.String("tags", "", "build tags")
++ illumos = flag.Bool("illumos", false, "illumos specific code generation")
++)
++
++// cmdLine returns this programs's commandline arguments
++func cmdLine() string {
++ return "go run mksyscall_solaris.go " + strings.Join(os.Args[1:], " ")
++}
++
++// buildTags returns build tags
++func buildTags() string {
++ return *tags
++}
++
++// Param is function parameter
++type Param struct {
++ Name string
++ Type string
++}
++
++// usage prints the program usage
++func usage() {
++ fmt.Fprintf(os.Stderr, "usage: go run mksyscall_solaris.go [-b32 | -l32] [-tags x,y] [file ...]\n")
++ os.Exit(1)
++}
++
++// parseParamList parses parameter list and returns a slice of parameters
++func parseParamList(list string) []string {
++ list = strings.TrimSpace(list)
++ if list == "" {
++ return []string{}
++ }
++ return regexp.MustCompile(`\s*,\s*`).Split(list, -1)
++}
++
++// parseParam splits a parameter into name and type
++func parseParam(p string) Param {
++ ps := regexp.MustCompile(`^(\S*) (\S*)$`).FindStringSubmatch(p)
++ if ps == nil {
++ fmt.Fprintf(os.Stderr, "malformed parameter: %s\n", p)
++ os.Exit(1)
++ }
++ return Param{ps[1], ps[2]}
++}
++
++func main() {
++ flag.Usage = usage
++ flag.Parse()
++ if len(flag.Args()) <= 0 {
++ fmt.Fprintf(os.Stderr, "no files to parse provided\n")
++ usage()
++ }
++
++ endianness := ""
++ if *b32 {
++ endianness = "big-endian"
++ } else if *l32 {
++ endianness = "little-endian"
++ }
++
++ pack := ""
++ text := ""
++ dynimports := ""
++ linknames := ""
++ var vars []string
++ for _, path := range flag.Args() {
++ file, err := os.Open(path)
++ if err != nil {
++ fmt.Fprintf(os.Stderr, err.Error())
++ os.Exit(1)
++ }
++ s := bufio.NewScanner(file)
++ for s.Scan() {
++ t := s.Text()
++ t = strings.TrimSpace(t)
++ t = regexp.MustCompile(`\s+`).ReplaceAllString(t, ` `)
++ if p := regexp.MustCompile(`^package (\S+)$`).FindStringSubmatch(t); p != nil && pack == "" {
++ pack = p[1]
++ }
++ nonblock := regexp.MustCompile(`^\/\/sysnb `).FindStringSubmatch(t)
++ if regexp.MustCompile(`^\/\/sys `).FindStringSubmatch(t) == nil && nonblock == nil {
++ continue
++ }
++
++ // Line must be of the form
++ // func Open(path string, mode int, perm int) (fd int, err error)
++ // Split into name, in params, out params.
++ f := regexp.MustCompile(`^\/\/sys(nb)? (\w+)\(([^()]*)\)\s*(?:\(([^()]+)\))?\s*(?:=\s*(?:(\w*)\.)?(\w*))?$`).FindStringSubmatch(t)
++ if f == nil {
++ fmt.Fprintf(os.Stderr, "%s:%s\nmalformed //sys declaration\n", path, t)
++ os.Exit(1)
++ }
++ funct, inps, outps, modname, sysname := f[2], f[3], f[4], f[5], f[6]
++
++ // Split argument lists on comma.
++ in := parseParamList(inps)
++ out := parseParamList(outps)
++
++ inps = strings.Join(in, ", ")
++ outps = strings.Join(out, ", ")
++
++ // Try in vain to keep people from editing this file.
++ // The theory is that they jump into the middle of the file
++ // without reading the header.
++ text += "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n"
++
++ // So file name.
++ if modname == "" {
++ modname = "libc"
++ }
++
++ // System call name.
++ if sysname == "" {
++ sysname = funct
++ }
++
++ // System call pointer variable name.
++ sysvarname := fmt.Sprintf("proc%s", sysname)
++
++ strconvfunc := "BytePtrFromString"
++ strconvtype := "*byte"
++
++ sysname = strings.ToLower(sysname) // All libc functions are lowercase.
++
++ // Runtime import of function to allow cross-platform builds.
++ dynimports += fmt.Sprintf("//go:cgo_import_dynamic libc_%s %s \"%s.so\"\n", sysname, sysname, modname)
++ // Link symbol to proc address variable.
++ linknames += fmt.Sprintf("//go:linkname %s libc_%s\n", sysvarname, sysname)
++ // Library proc address variable.
++ vars = append(vars, sysvarname)
++
++ // Go function header.
++ outlist := strings.Join(out, ", ")
++ if outlist != "" {
++ outlist = fmt.Sprintf(" (%s)", outlist)
++ }
++ if text != "" {
++ text += "\n"
++ }
++ text += fmt.Sprintf("func %s(%s)%s {\n", funct, strings.Join(in, ", "), outlist)
++
++ // Check if err return available
++ errvar := ""
++ for _, param := range out {
++ p := parseParam(param)
++ if p.Type == "error" {
++ errvar = p.Name
++ continue
++ }
++ }
++
++ // Prepare arguments to Syscall.
++ var args []string
++ n := 0
++ for _, param := range in {
++ p := parseParam(param)
++ if regexp.MustCompile(`^\*`).FindStringSubmatch(p.Type) != nil {
++ args = append(args, "uintptr(unsafe.Pointer("+p.Name+"))")
++ } else if p.Type == "string" && errvar != "" {
++ text += fmt.Sprintf("\tvar _p%d %s\n", n, strconvtype)
++ text += fmt.Sprintf("\t_p%d, %s = %s(%s)\n", n, errvar, strconvfunc, p.Name)
++ text += fmt.Sprintf("\tif %s != nil {\n\t\treturn\n\t}\n", errvar)
++ args = append(args, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n))
++ n++
++ } else if p.Type == "string" {
++ fmt.Fprintf(os.Stderr, path+":"+funct+" uses string arguments, but has no error return\n")
++ text += fmt.Sprintf("\tvar _p%d %s\n", n, strconvtype)
++ text += fmt.Sprintf("\t_p%d, _ = %s(%s)\n", n, strconvfunc, p.Name)
++ args = append(args, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n))
++ n++
++ } else if s := regexp.MustCompile(`^\[\](.*)`).FindStringSubmatch(p.Type); s != nil {
++ // Convert slice into pointer, length.
++ // Have to be careful not to take address of &a[0] if len == 0:
++ // pass nil in that case.
++ text += fmt.Sprintf("\tvar _p%d *%s\n", n, s[1])
++ text += fmt.Sprintf("\tif len(%s) > 0 {\n\t\t_p%d = &%s[0]\n\t}\n", p.Name, n, p.Name)
++ args = append(args, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n), fmt.Sprintf("uintptr(len(%s))", p.Name))
++ n++
++ } else if p.Type == "int64" && endianness != "" {
++ if endianness == "big-endian" {
++ args = append(args, fmt.Sprintf("uintptr(%s>>32)", p.Name), fmt.Sprintf("uintptr(%s)", p.Name))
++ } else {
++ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name), fmt.Sprintf("uintptr(%s>>32)", p.Name))
++ }
++ } else if p.Type == "bool" {
++ text += fmt.Sprintf("\tvar _p%d uint32\n", n)
++ text += fmt.Sprintf("\tif %s {\n\t\t_p%d = 1\n\t} else {\n\t\t_p%d = 0\n\t}\n", p.Name, n, n)
++ args = append(args, fmt.Sprintf("uintptr(_p%d)", n))
++ n++
++ } else {
++ args = append(args, fmt.Sprintf("uintptr(%s)", p.Name))
++ }
++ }
++ nargs := len(args)
++
++ // Determine which form to use; pad args with zeros.
++ asm := "sysvicall6"
++ if nonblock != nil {
++ asm = "rawSysvicall6"
++ }
++ if len(args) <= 6 {
++ for len(args) < 6 {
++ args = append(args, "0")
++ }
++ } else {
++ fmt.Fprintf(os.Stderr, "%s: too many arguments to system call\n", path)
++ os.Exit(1)
++ }
++
++ // Actual call.
++ arglist := strings.Join(args, ", ")
++ call := fmt.Sprintf("%s(uintptr(unsafe.Pointer(&%s)), %d, %s)", asm, sysvarname, nargs, arglist)
++
++ // Assign return values.
++ body := ""
++ ret := []string{"_", "_", "_"}
++ doErrno := false
++ for i := 0; i < len(out); i++ {
++ p := parseParam(out[i])
++ reg := ""
++ if p.Name == "err" {
++ reg = "e1"
++ ret[2] = reg
++ doErrno = true
++ } else {
++ reg = fmt.Sprintf("r%d", i)
++ ret[i] = reg
++ }
++ if p.Type == "bool" {
++ reg = fmt.Sprintf("%d != 0", reg)
++ }
++ if p.Type == "int64" && endianness != "" {
++ // 64-bit number in r1:r0 or r0:r1.
++ if i+2 > len(out) {
++ fmt.Fprintf(os.Stderr, "%s: not enough registers for int64 return\n", path)
++ os.Exit(1)
++ }
++ if endianness == "big-endian" {
++ reg = fmt.Sprintf("int64(r%d)<<32 | int64(r%d)", i, i+1)
++ } else {
++ reg = fmt.Sprintf("int64(r%d)<<32 | int64(r%d)", i+1, i)
++ }
++ ret[i] = fmt.Sprintf("r%d", i)
++ ret[i+1] = fmt.Sprintf("r%d", i+1)
++ }
++ if reg != "e1" {
++ body += fmt.Sprintf("\t%s = %s(%s)\n", p.Name, p.Type, reg)
++ }
++ }
++ if ret[0] == "_" && ret[1] == "_" && ret[2] == "_" {
++ text += fmt.Sprintf("\t%s\n", call)
++ } else {
++ text += fmt.Sprintf("\t%s, %s, %s := %s\n", ret[0], ret[1], ret[2], call)
++ }
++ text += body
++
++ if doErrno {
++ text += "\tif e1 != 0 {\n"
++ text += "\t\terr = e1\n"
++ text += "\t}\n"
++ }
++ text += "\treturn\n"
++ text += "}\n"
++ }
++ if err := s.Err(); err != nil {
++ fmt.Fprintf(os.Stderr, err.Error())
++ os.Exit(1)
++ }
++ file.Close()
++ }
++ imp := ""
++ if pack != "unix" {
++ imp = "import \"golang.org/x/sys/unix\"\n"
++ }
++
++ syscallimp := ""
++ if !*illumos {
++ syscallimp = "\"syscall\""
++ }
++
++ vardecls := "\t" + strings.Join(vars, ",\n\t")
++ vardecls += " syscallFunc"
++ fmt.Printf(srcTemplate, cmdLine(), buildTags(), pack, syscallimp, imp, dynimports, linknames, vardecls, text)
++}
++
++const srcTemplate = `// %s
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build %s
++
++package %s
++
++import (
++ "unsafe"
++ %s
++)
++%s
++%s
++%s
++var (
++%s
++)
++
++%s
++`
+diff --git a/vendor/golang.org/x/sys/unix/mksysctl_openbsd.go b/vendor/golang.org/x/sys/unix/mksysctl_openbsd.go
+new file mode 100644
+index 00000000..b6b40990
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/mksysctl_openbsd.go
+@@ -0,0 +1,355 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build ignore
++
++// Parse the header files for OpenBSD and generate a Go usable sysctl MIB.
++//
++// Build a MIB with each entry being an array containing the level, type and
++// a hash that will contain additional entries if the current entry is a node.
++// We then walk this MIB and create a flattened sysctl name to OID hash.
++
++package main
++
++import (
++ "bufio"
++ "fmt"
++ "os"
++ "path/filepath"
++ "regexp"
++ "sort"
++ "strings"
++)
++
++var (
++ goos, goarch string
++)
++
++// cmdLine returns this programs's commandline arguments.
++func cmdLine() string {
++ return "go run mksysctl_openbsd.go " + strings.Join(os.Args[1:], " ")
++}
++
++// buildTags returns build tags.
++func buildTags() string {
++ return fmt.Sprintf("%s,%s", goarch, goos)
++}
++
++// reMatch performs regular expression match and stores the substring slice to value pointed by m.
++func reMatch(re *regexp.Regexp, str string, m *[]string) bool {
++ *m = re.FindStringSubmatch(str)
++ if *m != nil {
++ return true
++ }
++ return false
++}
++
++type nodeElement struct {
++ n int
++ t string
++ pE *map[string]nodeElement
++}
++
++var (
++ debugEnabled bool
++ mib map[string]nodeElement
++ node *map[string]nodeElement
++ nodeMap map[string]string
++ sysCtl []string
++)
++
++var (
++ ctlNames1RE = regexp.MustCompile(`^#define\s+(CTL_NAMES)\s+{`)
++ ctlNames2RE = regexp.MustCompile(`^#define\s+(CTL_(.*)_NAMES)\s+{`)
++ ctlNames3RE = regexp.MustCompile(`^#define\s+((.*)CTL_NAMES)\s+{`)
++ netInetRE = regexp.MustCompile(`^netinet/`)
++ netInet6RE = regexp.MustCompile(`^netinet6/`)
++ netRE = regexp.MustCompile(`^net/`)
++ bracesRE = regexp.MustCompile(`{.*}`)
++ ctlTypeRE = regexp.MustCompile(`{\s+"(\w+)",\s+(CTLTYPE_[A-Z]+)\s+}`)
++ fsNetKernRE = regexp.MustCompile(`^(fs|net|kern)_`)
++)
++
++func debug(s string) {
++ if debugEnabled {
++ fmt.Fprintln(os.Stderr, s)
++ }
++}
++
++// Walk the MIB and build a sysctl name to OID mapping.
++func buildSysctl(pNode *map[string]nodeElement, name string, oid []int) {
++ lNode := pNode // local copy of pointer to node
++ var keys []string
++ for k := range *lNode {
++ keys = append(keys, k)
++ }
++ sort.Strings(keys)
++
++ for _, key := range keys {
++ nodename := name
++ if name != "" {
++ nodename += "."
++ }
++ nodename += key
++
++ nodeoid := append(oid, (*pNode)[key].n)
++
++ if (*pNode)[key].t == `CTLTYPE_NODE` {
++ if _, ok := nodeMap[nodename]; ok {
++ lNode = &mib
++ ctlName := nodeMap[nodename]
++ for _, part := range strings.Split(ctlName, ".") {
++ lNode = ((*lNode)[part]).pE
++ }
++ } else {
++ lNode = (*pNode)[key].pE
++ }
++ buildSysctl(lNode, nodename, nodeoid)
++ } else if (*pNode)[key].t != "" {
++ oidStr := []string{}
++ for j := range nodeoid {
++ oidStr = append(oidStr, fmt.Sprintf("%d", nodeoid[j]))
++ }
++ text := "\t{ \"" + nodename + "\", []_C_int{ " + strings.Join(oidStr, ", ") + " } }, \n"
++ sysCtl = append(sysCtl, text)
++ }
++ }
++}
++
++func main() {
++ // Get the OS (using GOOS_TARGET if it exist)
++ goos = os.Getenv("GOOS_TARGET")
++ if goos == "" {
++ goos = os.Getenv("GOOS")
++ }
++ // Get the architecture (using GOARCH_TARGET if it exists)
++ goarch = os.Getenv("GOARCH_TARGET")
++ if goarch == "" {
++ goarch = os.Getenv("GOARCH")
++ }
++ // Check if GOOS and GOARCH environment variables are defined
++ if goarch == "" || goos == "" {
++ fmt.Fprintf(os.Stderr, "GOARCH or GOOS not defined in environment\n")
++ os.Exit(1)
++ }
++
++ mib = make(map[string]nodeElement)
++ headers := [...]string{
++ `sys/sysctl.h`,
++ `sys/socket.h`,
++ `sys/tty.h`,
++ `sys/malloc.h`,
++ `sys/mount.h`,
++ `sys/namei.h`,
++ `sys/sem.h`,
++ `sys/shm.h`,
++ `sys/vmmeter.h`,
++ `uvm/uvmexp.h`,
++ `uvm/uvm_param.h`,
++ `uvm/uvm_swap_encrypt.h`,
++ `ddb/db_var.h`,
++ `net/if.h`,
++ `net/if_pfsync.h`,
++ `net/pipex.h`,
++ `netinet/in.h`,
++ `netinet/icmp_var.h`,
++ `netinet/igmp_var.h`,
++ `netinet/ip_ah.h`,
++ `netinet/ip_carp.h`,
++ `netinet/ip_divert.h`,
++ `netinet/ip_esp.h`,
++ `netinet/ip_ether.h`,
++ `netinet/ip_gre.h`,
++ `netinet/ip_ipcomp.h`,
++ `netinet/ip_ipip.h`,
++ `netinet/pim_var.h`,
++ `netinet/tcp_var.h`,
++ `netinet/udp_var.h`,
++ `netinet6/in6.h`,
++ `netinet6/ip6_divert.h`,
++ `netinet6/pim6_var.h`,
++ `netinet/icmp6.h`,
++ `netmpls/mpls.h`,
++ }
++
++ ctls := [...]string{
++ `kern`,
++ `vm`,
++ `fs`,
++ `net`,
++ //debug /* Special handling required */
++ `hw`,
++ //machdep /* Arch specific */
++ `user`,
++ `ddb`,
++ //vfs /* Special handling required */
++ `fs.posix`,
++ `kern.forkstat`,
++ `kern.intrcnt`,
++ `kern.malloc`,
++ `kern.nchstats`,
++ `kern.seminfo`,
++ `kern.shminfo`,
++ `kern.timecounter`,
++ `kern.tty`,
++ `kern.watchdog`,
++ `net.bpf`,
++ `net.ifq`,
++ `net.inet`,
++ `net.inet.ah`,
++ `net.inet.carp`,
++ `net.inet.divert`,
++ `net.inet.esp`,
++ `net.inet.etherip`,
++ `net.inet.gre`,
++ `net.inet.icmp`,
++ `net.inet.igmp`,
++ `net.inet.ip`,
++ `net.inet.ip.ifq`,
++ `net.inet.ipcomp`,
++ `net.inet.ipip`,
++ `net.inet.mobileip`,
++ `net.inet.pfsync`,
++ `net.inet.pim`,
++ `net.inet.tcp`,
++ `net.inet.udp`,
++ `net.inet6`,
++ `net.inet6.divert`,
++ `net.inet6.ip6`,
++ `net.inet6.icmp6`,
++ `net.inet6.pim6`,
++ `net.inet6.tcp6`,
++ `net.inet6.udp6`,
++ `net.mpls`,
++ `net.mpls.ifq`,
++ `net.key`,
++ `net.pflow`,
++ `net.pfsync`,
++ `net.pipex`,
++ `net.rt`,
++ `vm.swapencrypt`,
++ //vfsgenctl /* Special handling required */
++ }
++
++ // Node name "fixups"
++ ctlMap := map[string]string{
++ "ipproto": "net.inet",
++ "net.inet.ipproto": "net.inet",
++ "net.inet6.ipv6proto": "net.inet6",
++ "net.inet6.ipv6": "net.inet6.ip6",
++ "net.inet.icmpv6": "net.inet6.icmp6",
++ "net.inet6.divert6": "net.inet6.divert",
++ "net.inet6.tcp6": "net.inet.tcp",
++ "net.inet6.udp6": "net.inet.udp",
++ "mpls": "net.mpls",
++ "swpenc": "vm.swapencrypt",
++ }
++
++ // Node mappings
++ nodeMap = map[string]string{
++ "net.inet.ip.ifq": "net.ifq",
++ "net.inet.pfsync": "net.pfsync",
++ "net.mpls.ifq": "net.ifq",
++ }
++
++ mCtls := make(map[string]bool)
++ for _, ctl := range ctls {
++ mCtls[ctl] = true
++ }
++
++ for _, header := range headers {
++ debug("Processing " + header)
++ file, err := os.Open(filepath.Join("/usr/include", header))
++ if err != nil {
++ fmt.Fprintf(os.Stderr, "%v\n", err)
++ os.Exit(1)
++ }
++ s := bufio.NewScanner(file)
++ for s.Scan() {
++ var sub []string
++ if reMatch(ctlNames1RE, s.Text(), &sub) ||
++ reMatch(ctlNames2RE, s.Text(), &sub) ||
++ reMatch(ctlNames3RE, s.Text(), &sub) {
++ if sub[1] == `CTL_NAMES` {
++ // Top level.
++ node = &mib
++ } else {
++ // Node.
++ nodename := strings.ToLower(sub[2])
++ ctlName := ""
++ if reMatch(netInetRE, header, &sub) {
++ ctlName = "net.inet." + nodename
++ } else if reMatch(netInet6RE, header, &sub) {
++ ctlName = "net.inet6." + nodename
++ } else if reMatch(netRE, header, &sub) {
++ ctlName = "net." + nodename
++ } else {
++ ctlName = nodename
++ ctlName = fsNetKernRE.ReplaceAllString(ctlName, `$1.`)
++ }
++
++ if val, ok := ctlMap[ctlName]; ok {
++ ctlName = val
++ }
++ if _, ok := mCtls[ctlName]; !ok {
++ debug("Ignoring " + ctlName + "...")
++ continue
++ }
++
++ // Walk down from the top of the MIB.
++ node = &mib
++ for _, part := range strings.Split(ctlName, ".") {
++ if _, ok := (*node)[part]; !ok {
++ debug("Missing node " + part)
++ (*node)[part] = nodeElement{n: 0, t: "", pE: &map[string]nodeElement{}}
++ }
++ node = (*node)[part].pE
++ }
++ }
++
++ // Populate current node with entries.
++ i := -1
++ for !strings.HasPrefix(s.Text(), "}") {
++ s.Scan()
++ if reMatch(bracesRE, s.Text(), &sub) {
++ i++
++ }
++ if !reMatch(ctlTypeRE, s.Text(), &sub) {
++ continue
++ }
++ (*node)[sub[1]] = nodeElement{n: i, t: sub[2], pE: &map[string]nodeElement{}}
++ }
++ }
++ }
++ err = s.Err()
++ if err != nil {
++ fmt.Fprintf(os.Stderr, "%v\n", err)
++ os.Exit(1)
++ }
++ file.Close()
++ }
++ buildSysctl(&mib, "", []int{})
++
++ sort.Strings(sysCtl)
++ text := strings.Join(sysCtl, "")
++
++ fmt.Printf(srcTemplate, cmdLine(), buildTags(), text)
++}
++
++const srcTemplate = `// %s
++// Code generated by the command above; DO NOT EDIT.
++
++// +build %s
++
++package unix
++
++type mibentry struct {
++ ctlname string
++ ctloid []_C_int
++}
++
++var sysctlMib = []mibentry {
++%s
++}
++`
+diff --git a/vendor/golang.org/x/sys/unix/mksysnum.go b/vendor/golang.org/x/sys/unix/mksysnum.go
+new file mode 100644
+index 00000000..baa6ecd8
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/mksysnum.go
+@@ -0,0 +1,190 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build ignore
++
++// Generate system call table for DragonFly, NetBSD,
++// FreeBSD, OpenBSD or Darwin from master list
++// (for example, /usr/src/sys/kern/syscalls.master or
++// sys/syscall.h).
++package main
++
++import (
++ "bufio"
++ "fmt"
++ "io"
++ "io/ioutil"
++ "net/http"
++ "os"
++ "regexp"
++ "strings"
++)
++
++var (
++ goos, goarch string
++)
++
++// cmdLine returns this programs's commandline arguments
++func cmdLine() string {
++ return "go run mksysnum.go " + strings.Join(os.Args[1:], " ")
++}
++
++// buildTags returns build tags
++func buildTags() string {
++ return fmt.Sprintf("%s,%s", goarch, goos)
++}
++
++func checkErr(err error) {
++ if err != nil {
++ fmt.Fprintf(os.Stderr, "%v\n", err)
++ os.Exit(1)
++ }
++}
++
++// source string and substring slice for regexp
++type re struct {
++ str string // source string
++ sub []string // matched sub-string
++}
++
++// Match performs regular expression match
++func (r *re) Match(exp string) bool {
++ r.sub = regexp.MustCompile(exp).FindStringSubmatch(r.str)
++ if r.sub != nil {
++ return true
++ }
++ return false
++}
++
++// fetchFile fetches a text file from URL
++func fetchFile(URL string) io.Reader {
++ resp, err := http.Get(URL)
++ checkErr(err)
++ defer resp.Body.Close()
++ body, err := ioutil.ReadAll(resp.Body)
++ checkErr(err)
++ return strings.NewReader(string(body))
++}
++
++// readFile reads a text file from path
++func readFile(path string) io.Reader {
++ file, err := os.Open(os.Args[1])
++ checkErr(err)
++ return file
++}
++
++func format(name, num, proto string) string {
++ name = strings.ToUpper(name)
++ // There are multiple entries for enosys and nosys, so comment them out.
++ nm := re{str: name}
++ if nm.Match(`^SYS_E?NOSYS$`) {
++ name = fmt.Sprintf("// %s", name)
++ }
++ if name == `SYS_SYS_EXIT` {
++ name = `SYS_EXIT`
++ }
++ return fmt.Sprintf(" %s = %s; // %s\n", name, num, proto)
++}
++
++func main() {
++ // Get the OS (using GOOS_TARGET if it exist)
++ goos = os.Getenv("GOOS_TARGET")
++ if goos == "" {
++ goos = os.Getenv("GOOS")
++ }
++ // Get the architecture (using GOARCH_TARGET if it exists)
++ goarch = os.Getenv("GOARCH_TARGET")
++ if goarch == "" {
++ goarch = os.Getenv("GOARCH")
++ }
++ // Check if GOOS and GOARCH environment variables are defined
++ if goarch == "" || goos == "" {
++ fmt.Fprintf(os.Stderr, "GOARCH or GOOS not defined in environment\n")
++ os.Exit(1)
++ }
++
++ file := strings.TrimSpace(os.Args[1])
++ var syscalls io.Reader
++ if strings.HasPrefix(file, "https://") || strings.HasPrefix(file, "http://") {
++ // Download syscalls.master file
++ syscalls = fetchFile(file)
++ } else {
++ syscalls = readFile(file)
++ }
++
++ var text, line string
++ s := bufio.NewScanner(syscalls)
++ for s.Scan() {
++ t := re{str: line}
++ if t.Match(`^(.*)\\$`) {
++ // Handle continuation
++ line = t.sub[1]
++ line += strings.TrimLeft(s.Text(), " \t")
++ } else {
++ // New line
++ line = s.Text()
++ }
++ t = re{str: line}
++ if t.Match(`\\$`) {
++ continue
++ }
++ t = re{str: line}
++
++ switch goos {
++ case "dragonfly":
++ if t.Match(`^([0-9]+)\s+STD\s+({ \S+\s+(\w+).*)$`) {
++ num, proto := t.sub[1], t.sub[2]
++ name := fmt.Sprintf("SYS_%s", t.sub[3])
++ text += format(name, num, proto)
++ }
++ case "freebsd":
++ if t.Match(`^([0-9]+)\s+\S+\s+(?:(?:NO)?STD|COMPAT10)\s+({ \S+\s+(\w+).*)$`) {
++ num, proto := t.sub[1], t.sub[2]
++ name := fmt.Sprintf("SYS_%s", t.sub[3])
++ text += format(name, num, proto)
++ }
++ case "openbsd":
++ if t.Match(`^([0-9]+)\s+STD\s+(NOLOCK\s+)?({ \S+\s+\*?(\w+).*)$`) {
++ num, proto, name := t.sub[1], t.sub[3], t.sub[4]
++ text += format(name, num, proto)
++ }
++ case "netbsd":
++ if t.Match(`^([0-9]+)\s+((STD)|(NOERR))\s+(RUMP\s+)?({\s+\S+\s*\*?\s*\|(\S+)\|(\S*)\|(\w+).*\s+})(\s+(\S+))?$`) {
++ num, proto, compat := t.sub[1], t.sub[6], t.sub[8]
++ name := t.sub[7] + "_" + t.sub[9]
++ if t.sub[11] != "" {
++ name = t.sub[7] + "_" + t.sub[11]
++ }
++ name = strings.ToUpper(name)
++ if compat == "" || compat == "13" || compat == "30" || compat == "50" {
++ text += fmt.Sprintf(" %s = %s; // %s\n", name, num, proto)
++ }
++ }
++ case "darwin":
++ if t.Match(`^#define\s+SYS_(\w+)\s+([0-9]+)`) {
++ name, num := t.sub[1], t.sub[2]
++ name = strings.ToUpper(name)
++ text += fmt.Sprintf(" SYS_%s = %s;\n", name, num)
++ }
++ default:
++ fmt.Fprintf(os.Stderr, "unrecognized GOOS=%s\n", goos)
++ os.Exit(1)
++
++ }
++ }
++ err := s.Err()
++ checkErr(err)
++
++ fmt.Printf(template, cmdLine(), buildTags(), text)
++}
++
++const template = `// %s
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build %s
++
++package unix
++
++const(
++%s)`
+diff --git a/vendor/golang.org/x/sys/unix/openbsd_pledge.go b/vendor/golang.org/x/sys/unix/openbsd_pledge.go
+deleted file mode 100644
+index db4f72ea..00000000
+--- a/vendor/golang.org/x/sys/unix/openbsd_pledge.go
++++ /dev/null
+@@ -1,38 +0,0 @@
+-// Copyright 2016 The Go Authors. All rights reserved.
+-// Use of this source code is governed by a BSD-style
+-// license that can be found in the LICENSE file.
+-
+-// +build openbsd
+-// +build 386 amd64 arm
+-
+-package unix
+-
+-import (
+- "syscall"
+- "unsafe"
+-)
+-
+-const (
+- SYS_PLEDGE = 108
+-)
+-
+-// Pledge implements the pledge syscall. For more information see pledge(2).
+-func Pledge(promises string, paths []string) error {
+- promisesPtr, err := syscall.BytePtrFromString(promises)
+- if err != nil {
+- return err
+- }
+- promisesUnsafe, pathsUnsafe := unsafe.Pointer(promisesPtr), unsafe.Pointer(nil)
+- if paths != nil {
+- var pathsPtr []*byte
+- if pathsPtr, err = syscall.SlicePtrFromStrings(paths); err != nil {
+- return err
+- }
+- pathsUnsafe = unsafe.Pointer(&pathsPtr[0])
+- }
+- _, _, e := syscall.Syscall(SYS_PLEDGE, uintptr(promisesUnsafe), uintptr(pathsUnsafe), 0)
+- if e != 0 {
+- return e
+- }
+- return nil
+-}
+diff --git a/vendor/golang.org/x/sys/unix/pagesize_unix.go b/vendor/golang.org/x/sys/unix/pagesize_unix.go
+new file mode 100644
+index 00000000..bc2f3629
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/pagesize_unix.go
+@@ -0,0 +1,15 @@
++// Copyright 2017 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
++
++// For Unix, get the pagesize from the runtime.
++
++package unix
++
++import "syscall"
++
++func Getpagesize() int {
++ return syscall.Getpagesize()
++}
+diff --git a/vendor/golang.org/x/sys/unix/pledge_openbsd.go b/vendor/golang.org/x/sys/unix/pledge_openbsd.go
+new file mode 100644
+index 00000000..eb48294b
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/pledge_openbsd.go
+@@ -0,0 +1,163 @@
++// Copyright 2016 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++package unix
++
++import (
++ "errors"
++ "fmt"
++ "strconv"
++ "syscall"
++ "unsafe"
++)
++
++// Pledge implements the pledge syscall.
++//
++// The pledge syscall does not accept execpromises on OpenBSD releases
++// before 6.3.
++//
++// execpromises must be empty when Pledge is called on OpenBSD
++// releases predating 6.3, otherwise an error will be returned.
++//
++// For more information see pledge(2).
++func Pledge(promises, execpromises string) error {
++ maj, min, err := majmin()
++ if err != nil {
++ return err
++ }
++
++ err = pledgeAvailable(maj, min, execpromises)
++ if err != nil {
++ return err
++ }
++
++ pptr, err := syscall.BytePtrFromString(promises)
++ if err != nil {
++ return err
++ }
++
++ // This variable will hold either a nil unsafe.Pointer or
++ // an unsafe.Pointer to a string (execpromises).
++ var expr unsafe.Pointer
++
++ // If we're running on OpenBSD > 6.2, pass execpromises to the syscall.
++ if maj > 6 || (maj == 6 && min > 2) {
++ exptr, err := syscall.BytePtrFromString(execpromises)
++ if err != nil {
++ return err
++ }
++ expr = unsafe.Pointer(exptr)
++ }
++
++ _, _, e := syscall.Syscall(SYS_PLEDGE, uintptr(unsafe.Pointer(pptr)), uintptr(expr), 0)
++ if e != 0 {
++ return e
++ }
++
++ return nil
++}
++
++// PledgePromises implements the pledge syscall.
++//
++// This changes the promises and leaves the execpromises untouched.
++//
++// For more information see pledge(2).
++func PledgePromises(promises string) error {
++ maj, min, err := majmin()
++ if err != nil {
++ return err
++ }
++
++ err = pledgeAvailable(maj, min, "")
++ if err != nil {
++ return err
++ }
++
++ // This variable holds the execpromises and is always nil.
++ var expr unsafe.Pointer
++
++ pptr, err := syscall.BytePtrFromString(promises)
++ if err != nil {
++ return err
++ }
++
++ _, _, e := syscall.Syscall(SYS_PLEDGE, uintptr(unsafe.Pointer(pptr)), uintptr(expr), 0)
++ if e != 0 {
++ return e
++ }
++
++ return nil
++}
++
++// PledgeExecpromises implements the pledge syscall.
++//
++// This changes the execpromises and leaves the promises untouched.
++//
++// For more information see pledge(2).
++func PledgeExecpromises(execpromises string) error {
++ maj, min, err := majmin()
++ if err != nil {
++ return err
++ }
++
++ err = pledgeAvailable(maj, min, execpromises)
++ if err != nil {
++ return err
++ }
++
++ // This variable holds the promises and is always nil.
++ var pptr unsafe.Pointer
++
++ exptr, err := syscall.BytePtrFromString(execpromises)
++ if err != nil {
++ return err
++ }
++
++ _, _, e := syscall.Syscall(SYS_PLEDGE, uintptr(pptr), uintptr(unsafe.Pointer(exptr)), 0)
++ if e != 0 {
++ return e
++ }
++
++ return nil
++}
++
++// majmin returns major and minor version number for an OpenBSD system.
++func majmin() (major int, minor int, err error) {
++ var v Utsname
++ err = Uname(&v)
++ if err != nil {
++ return
++ }
++
++ major, err = strconv.Atoi(string(v.Release[0]))
++ if err != nil {
++ err = errors.New("cannot parse major version number returned by uname")
++ return
++ }
++
++ minor, err = strconv.Atoi(string(v.Release[2]))
++ if err != nil {
++ err = errors.New("cannot parse minor version number returned by uname")
++ return
++ }
++
++ return
++}
++
++// pledgeAvailable checks for availability of the pledge(2) syscall
++// based on the running OpenBSD version.
++func pledgeAvailable(maj, min int, execpromises string) error {
++ // If OpenBSD <= 5.9, pledge is not available.
++ if (maj == 5 && min != 9) || maj < 5 {
++ return fmt.Errorf("pledge syscall is not available on OpenBSD %d.%d", maj, min)
++ }
++
++ // If OpenBSD <= 6.2 and execpromises is not empty,
++ // return an error - execpromises is not available before 6.3
++ if (maj < 6 || (maj == 6 && min <= 2)) && execpromises != "" {
++ return fmt.Errorf("cannot use execpromises on OpenBSD %d.%d", maj, min)
++ }
++
++ return nil
++}
+diff --git a/vendor/golang.org/x/sys/unix/race.go b/vendor/golang.org/x/sys/unix/race.go
+index 3c7627eb..61712b51 100644
+--- a/vendor/golang.org/x/sys/unix/race.go
++++ b/vendor/golang.org/x/sys/unix/race.go
+@@ -1,4 +1,4 @@
+-// Copyright 2012 The Go Authors. All rights reserved.
++// Copyright 2012 The Go Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+diff --git a/vendor/golang.org/x/sys/unix/race0.go b/vendor/golang.org/x/sys/unix/race0.go
+index f8678e0d..ad026678 100644
+--- a/vendor/golang.org/x/sys/unix/race0.go
++++ b/vendor/golang.org/x/sys/unix/race0.go
+@@ -1,8 +1,8 @@
+-// Copyright 2012 The Go Authors. All rights reserved.
++// Copyright 2012 The Go Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+-// +build darwin,!race linux,!race freebsd,!race netbsd openbsd solaris dragonfly
++// +build aix darwin,!race linux,!race freebsd,!race netbsd openbsd solaris dragonfly
+
+ package unix
+
+diff --git a/vendor/golang.org/x/sys/unix/readdirent_getdents.go b/vendor/golang.org/x/sys/unix/readdirent_getdents.go
+new file mode 100644
+index 00000000..3a90aa6d
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/readdirent_getdents.go
+@@ -0,0 +1,12 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build aix dragonfly freebsd linux netbsd openbsd
++
++package unix
++
++// ReadDirent reads directory entries from fd and writes them into buf.
++func ReadDirent(fd int, buf []byte) (n int, err error) {
++ return Getdents(fd, buf)
++}
+diff --git a/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go b/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go
+new file mode 100644
+index 00000000..5fdae40b
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go
+@@ -0,0 +1,19 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build darwin
++
++package unix
++
++import "unsafe"
++
++// ReadDirent reads directory entries from fd and writes them into buf.
++func ReadDirent(fd int, buf []byte) (n int, err error) {
++ // Final argument is (basep *uintptr) and the syscall doesn't take nil.
++ // 64 bits should be enough. (32 bits isn't even on 386). Since the
++ // actual system call is getdirentries64, 64 is a good guess.
++ // TODO(rsc): Can we use a single global basep for all calls?
++ var base = (*uintptr)(unsafe.Pointer(new(uint64)))
++ return Getdirentries(fd, buf, base)
++}
+diff --git a/vendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go b/vendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go
+new file mode 100644
+index 00000000..5144deec
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go
+@@ -0,0 +1,16 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++package unix
++
++// Round the length of a raw sockaddr up to align it properly.
++func cmsgAlignOf(salen int) int {
++ salign := SizeofPtr
++ if SizeofPtr == 8 && !supportsABI(_dragonflyABIChangeVersion) {
++ // 64-bit Dragonfly before the September 2019 ABI changes still requires
++ // 32-bit aligned access to network subsystem.
++ salign = 4
++ }
++ return (salen + salign - 1) & ^(salign - 1)
++}
+diff --git a/vendor/golang.org/x/sys/unix/sockcmsg_linux.go b/vendor/golang.org/x/sys/unix/sockcmsg_linux.go
+index d9ff4731..8bf45705 100644
+--- a/vendor/golang.org/x/sys/unix/sockcmsg_linux.go
++++ b/vendor/golang.org/x/sys/unix/sockcmsg_linux.go
+@@ -1,4 +1,4 @@
+-// Copyright 2011 The Go Authors. All rights reserved.
++// Copyright 2011 The Go Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+@@ -17,7 +17,7 @@ func UnixCredentials(ucred *Ucred) []byte {
+ h.Level = SOL_SOCKET
+ h.Type = SCM_CREDENTIALS
+ h.SetLen(CmsgLen(SizeofUcred))
+- *((*Ucred)(cmsgData(h))) = *ucred
++ *(*Ucred)(h.data(0)) = *ucred
+ return b
+ }
+
+diff --git a/vendor/golang.org/x/sys/unix/sockcmsg_unix.go b/vendor/golang.org/x/sys/unix/sockcmsg_unix.go
+index bb756ece..003916ed 100644
+--- a/vendor/golang.org/x/sys/unix/sockcmsg_unix.go
++++ b/vendor/golang.org/x/sys/unix/sockcmsg_unix.go
+@@ -2,25 +2,15 @@
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+-// +build darwin dragonfly freebsd linux netbsd openbsd solaris
++// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
+
+ // Socket control messages
+
+ package unix
+
+-import "unsafe"
+-
+-// Round the length of a raw sockaddr up to align it properly.
+-func cmsgAlignOf(salen int) int {
+- salign := sizeofPtr
+- // NOTE: It seems like 64-bit Darwin, DragonFly BSD and
+- // Solaris kernels still require 32-bit aligned access to
+- // network subsystem.
+- if darwin64Bit || dragonfly64Bit || solaris64Bit {
+- salign = 4
+- }
+- return (salen + salign - 1) & ^(salign - 1)
+-}
++import (
++ "unsafe"
++)
+
+ // CmsgLen returns the value to store in the Len field of the Cmsghdr
+ // structure, taking into account any necessary alignment.
+@@ -34,8 +24,8 @@ func CmsgSpace(datalen int) int {
+ return cmsgAlignOf(SizeofCmsghdr) + cmsgAlignOf(datalen)
+ }
+
+-func cmsgData(h *Cmsghdr) unsafe.Pointer {
+- return unsafe.Pointer(uintptr(unsafe.Pointer(h)) + uintptr(cmsgAlignOf(SizeofCmsghdr)))
++func (h *Cmsghdr) data(offset uintptr) unsafe.Pointer {
++ return unsafe.Pointer(uintptr(unsafe.Pointer(h)) + uintptr(cmsgAlignOf(SizeofCmsghdr)) + offset)
+ }
+
+ // SocketControlMessage represents a socket control message.
+@@ -78,10 +68,8 @@ func UnixRights(fds ...int) []byte {
+ h.Level = SOL_SOCKET
+ h.Type = SCM_RIGHTS
+ h.SetLen(CmsgLen(datalen))
+- data := cmsgData(h)
+- for _, fd := range fds {
+- *(*int32)(data) = int32(fd)
+- data = unsafe.Pointer(uintptr(data) + 4)
++ for i, fd := range fds {
++ *(*int32)(h.data(4 * uintptr(i))) = int32(fd)
+ }
+ return b
+ }
+diff --git a/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go b/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go
+new file mode 100644
+index 00000000..7d08dae5
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go
+@@ -0,0 +1,38 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build aix darwin freebsd linux netbsd openbsd solaris
++
++package unix
++
++import (
++ "runtime"
++)
++
++// Round the length of a raw sockaddr up to align it properly.
++func cmsgAlignOf(salen int) int {
++ salign := SizeofPtr
++
++ // dragonfly needs to check ABI version at runtime, see cmsgAlignOf in
++ // sockcmsg_dragonfly.go
++ switch runtime.GOOS {
++ case "aix":
++ // There is no alignment on AIX.
++ salign = 1
++ case "darwin", "illumos", "solaris":
++ // NOTE: It seems like 64-bit Darwin, Illumos and Solaris
++ // kernels still require 32-bit aligned access to network
++ // subsystem.
++ if SizeofPtr == 8 {
++ salign = 4
++ }
++ case "netbsd", "openbsd":
++ // NetBSD and OpenBSD armv7 require 64-bit alignment.
++ if runtime.GOARCH == "arm" {
++ salign = 8
++ }
++ }
++
++ return (salen + salign - 1) & ^(salign - 1)
++}
+diff --git a/vendor/golang.org/x/sys/unix/str.go b/vendor/golang.org/x/sys/unix/str.go
+index 35ed6643..17fb6986 100644
+--- a/vendor/golang.org/x/sys/unix/str.go
++++ b/vendor/golang.org/x/sys/unix/str.go
+@@ -2,7 +2,7 @@
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+-// +build darwin dragonfly freebsd linux netbsd openbsd solaris
++// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
+
+ package unix
+
+diff --git a/vendor/golang.org/x/sys/unix/syscall.go b/vendor/golang.org/x/sys/unix/syscall.go
+index 85e35020..fd4ee8eb 100644
+--- a/vendor/golang.org/x/sys/unix/syscall.go
++++ b/vendor/golang.org/x/sys/unix/syscall.go
+@@ -2,33 +2,36 @@
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+-// +build darwin dragonfly freebsd linux netbsd openbsd solaris
++// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
+
+ // Package unix contains an interface to the low-level operating system
+-// primitives. OS details vary depending on the underlying system, and
++// primitives. OS details vary depending on the underlying system, and
+ // by default, godoc will display OS-specific documentation for the current
+-// system. If you want godoc to display OS documentation for another
+-// system, set $GOOS and $GOARCH to the desired system. For example, if
++// system. If you want godoc to display OS documentation for another
++// system, set $GOOS and $GOARCH to the desired system. For example, if
+ // you want to view documentation for freebsd/arm on linux/amd64, set $GOOS
+ // to freebsd and $GOARCH to arm.
++//
+ // The primary use of this package is inside other packages that provide a more
+ // portable interface to the system, such as "os", "time" and "net". Use
+ // those packages rather than this one if you can.
++//
+ // For details of the functions and data types in this package consult
+ // the manuals for the appropriate operating system.
++//
+ // These calls return err == nil to indicate success; otherwise
+ // err represents an operating system error describing the failure and
+ // holds a value of type syscall.Errno.
+ package unix // import "golang.org/x/sys/unix"
+
++import "strings"
++
+ // ByteSliceFromString returns a NUL-terminated slice of bytes
+ // containing the text of s. If s contains a NUL byte at any
+ // location, it returns (nil, EINVAL).
+ func ByteSliceFromString(s string) ([]byte, error) {
+- for i := 0; i < len(s); i++ {
+- if s[i] == 0 {
+- return nil, EINVAL
+- }
++ if strings.IndexByte(s, 0) != -1 {
++ return nil, EINVAL
+ }
+ a := make([]byte, len(s)+1)
+ copy(a, s)
+@@ -47,23 +50,4 @@ func BytePtrFromString(s string) (*byte, error) {
+ }
+
+ // Single-word zero for use when we need a valid pointer to 0 bytes.
+-// See mkunix.pl.
+ var _zero uintptr
+-
+-func (ts *Timespec) Unix() (sec int64, nsec int64) {
+- return int64(ts.Sec), int64(ts.Nsec)
+-}
+-
+-func (tv *Timeval) Unix() (sec int64, nsec int64) {
+- return int64(tv.Sec), int64(tv.Usec) * 1000
+-}
+-
+-func (ts *Timespec) Nano() int64 {
+- return int64(ts.Sec)*1e9 + int64(ts.Nsec)
+-}
+-
+-func (tv *Timeval) Nano() int64 {
+- return int64(tv.Sec)*1e9 + int64(tv.Usec)*1000
+-}
+-
+-func TimevalToNsec(tv Timeval) int64 { return int64(tv.Sec)*1e9 + int64(tv.Usec)*1e3 }
+diff --git a/vendor/golang.org/x/sys/unix/syscall_aix.go b/vendor/golang.org/x/sys/unix/syscall_aix.go
+new file mode 100644
+index 00000000..9ad8a0d4
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/syscall_aix.go
+@@ -0,0 +1,536 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build aix
++
++// Aix system calls.
++// This file is compiled as ordinary Go code,
++// but it is also input to mksyscall,
++// which parses the //sys lines and generates system call stubs.
++// Note that sometimes we use a lowercase //sys name and
++// wrap it in our own nicer implementation.
++
++package unix
++
++import "unsafe"
++
++/*
++ * Wrapped
++ */
++
++//sys utimes(path string, times *[2]Timeval) (err error)
++func Utimes(path string, tv []Timeval) error {
++ if len(tv) != 2 {
++ return EINVAL
++ }
++ return utimes(path, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
++}
++
++//sys utimensat(dirfd int, path string, times *[2]Timespec, flag int) (err error)
++func UtimesNano(path string, ts []Timespec) error {
++ if len(ts) != 2 {
++ return EINVAL
++ }
++ return utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
++}
++
++func UtimesNanoAt(dirfd int, path string, ts []Timespec, flags int) error {
++ if ts == nil {
++ return utimensat(dirfd, path, nil, flags)
++ }
++ if len(ts) != 2 {
++ return EINVAL
++ }
++ return utimensat(dirfd, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), flags)
++}
++
++func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
++ if sa.Port < 0 || sa.Port > 0xFFFF {
++ return nil, 0, EINVAL
++ }
++ sa.raw.Family = AF_INET
++ p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port))
++ p[0] = byte(sa.Port >> 8)
++ p[1] = byte(sa.Port)
++ for i := 0; i < len(sa.Addr); i++ {
++ sa.raw.Addr[i] = sa.Addr[i]
++ }
++ return unsafe.Pointer(&sa.raw), SizeofSockaddrInet4, nil
++}
++
++func (sa *SockaddrInet6) sockaddr() (unsafe.Pointer, _Socklen, error) {
++ if sa.Port < 0 || sa.Port > 0xFFFF {
++ return nil, 0, EINVAL
++ }
++ sa.raw.Family = AF_INET6
++ p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port))
++ p[0] = byte(sa.Port >> 8)
++ p[1] = byte(sa.Port)
++ sa.raw.Scope_id = sa.ZoneId
++ for i := 0; i < len(sa.Addr); i++ {
++ sa.raw.Addr[i] = sa.Addr[i]
++ }
++ return unsafe.Pointer(&sa.raw), SizeofSockaddrInet6, nil
++}
++
++func (sa *SockaddrUnix) sockaddr() (unsafe.Pointer, _Socklen, error) {
++ name := sa.Name
++ n := len(name)
++ if n > len(sa.raw.Path) {
++ return nil, 0, EINVAL
++ }
++ if n == len(sa.raw.Path) && name[0] != '@' {
++ return nil, 0, EINVAL
++ }
++ sa.raw.Family = AF_UNIX
++ for i := 0; i < n; i++ {
++ sa.raw.Path[i] = uint8(name[i])
++ }
++ // length is family (uint16), name, NUL.
++ sl := _Socklen(2)
++ if n > 0 {
++ sl += _Socklen(n) + 1
++ }
++ if sa.raw.Path[0] == '@' {
++ sa.raw.Path[0] = 0
++ // Don't count trailing NUL for abstract address.
++ sl--
++ }
++
++ return unsafe.Pointer(&sa.raw), sl, nil
++}
++
++func Getsockname(fd int) (sa Sockaddr, err error) {
++ var rsa RawSockaddrAny
++ var len _Socklen = SizeofSockaddrAny
++ if err = getsockname(fd, &rsa, &len); err != nil {
++ return
++ }
++ return anyToSockaddr(fd, &rsa)
++}
++
++//sys getcwd(buf []byte) (err error)
++
++const ImplementsGetwd = true
++
++func Getwd() (ret string, err error) {
++ for len := uint64(4096); ; len *= 2 {
++ b := make([]byte, len)
++ err := getcwd(b)
++ if err == nil {
++ i := 0
++ for b[i] != 0 {
++ i++
++ }
++ return string(b[0:i]), nil
++ }
++ if err != ERANGE {
++ return "", err
++ }
++ }
++}
++
++func Getcwd(buf []byte) (n int, err error) {
++ err = getcwd(buf)
++ if err == nil {
++ i := 0
++ for buf[i] != 0 {
++ i++
++ }
++ n = i + 1
++ }
++ return
++}
++
++func Getgroups() (gids []int, err error) {
++ n, err := getgroups(0, nil)
++ if err != nil {
++ return nil, err
++ }
++ if n == 0 {
++ return nil, nil
++ }
++
++ // Sanity check group count. Max is 16 on BSD.
++ if n < 0 || n > 1000 {
++ return nil, EINVAL
++ }
++
++ a := make([]_Gid_t, n)
++ n, err = getgroups(n, &a[0])
++ if err != nil {
++ return nil, err
++ }
++ gids = make([]int, n)
++ for i, v := range a[0:n] {
++ gids[i] = int(v)
++ }
++ return
++}
++
++func Setgroups(gids []int) (err error) {
++ if len(gids) == 0 {
++ return setgroups(0, nil)
++ }
++
++ a := make([]_Gid_t, len(gids))
++ for i, v := range gids {
++ a[i] = _Gid_t(v)
++ }
++ return setgroups(len(a), &a[0])
++}
++
++/*
++ * Socket
++ */
++
++//sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error)
++
++func Accept(fd int) (nfd int, sa Sockaddr, err error) {
++ var rsa RawSockaddrAny
++ var len _Socklen = SizeofSockaddrAny
++ nfd, err = accept(fd, &rsa, &len)
++ if nfd == -1 {
++ return
++ }
++ sa, err = anyToSockaddr(fd, &rsa)
++ if err != nil {
++ Close(nfd)
++ nfd = 0
++ }
++ return
++}
++
++func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from Sockaddr, err error) {
++ // Recvmsg not implemented on AIX
++ sa := new(SockaddrUnix)
++ return -1, -1, -1, sa, ENOSYS
++}
++
++func Sendmsg(fd int, p, oob []byte, to Sockaddr, flags int) (err error) {
++ _, err = SendmsgN(fd, p, oob, to, flags)
++ return
++}
++
++func SendmsgN(fd int, p, oob []byte, to Sockaddr, flags int) (n int, err error) {
++ // SendmsgN not implemented on AIX
++ return -1, ENOSYS
++}
++
++func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
++ switch rsa.Addr.Family {
++
++ case AF_UNIX:
++ pp := (*RawSockaddrUnix)(unsafe.Pointer(rsa))
++ sa := new(SockaddrUnix)
++
++ // Some versions of AIX have a bug in getsockname (see IV78655).
++ // We can't rely on sa.Len being set correctly.
++ n := SizeofSockaddrUnix - 3 // subtract leading Family, Len, terminating NUL.
++ for i := 0; i < n; i++ {
++ if pp.Path[i] == 0 {
++ n = i
++ break
++ }
++ }
++
++ bytes := (*[10000]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
++ sa.Name = string(bytes)
++ return sa, nil
++
++ case AF_INET:
++ pp := (*RawSockaddrInet4)(unsafe.Pointer(rsa))
++ sa := new(SockaddrInet4)
++ p := (*[2]byte)(unsafe.Pointer(&pp.Port))
++ sa.Port = int(p[0])<<8 + int(p[1])
++ for i := 0; i < len(sa.Addr); i++ {
++ sa.Addr[i] = pp.Addr[i]
++ }
++ return sa, nil
++
++ case AF_INET6:
++ pp := (*RawSockaddrInet6)(unsafe.Pointer(rsa))
++ sa := new(SockaddrInet6)
++ p := (*[2]byte)(unsafe.Pointer(&pp.Port))
++ sa.Port = int(p[0])<<8 + int(p[1])
++ sa.ZoneId = pp.Scope_id
++ for i := 0; i < len(sa.Addr); i++ {
++ sa.Addr[i] = pp.Addr[i]
++ }
++ return sa, nil
++ }
++ return nil, EAFNOSUPPORT
++}
++
++func Gettimeofday(tv *Timeval) (err error) {
++ err = gettimeofday(tv, nil)
++ return
++}
++
++func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
++ if raceenabled {
++ raceReleaseMerge(unsafe.Pointer(&ioSync))
++ }
++ return sendfile(outfd, infd, offset, count)
++}
++
++// TODO
++func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
++ return -1, ENOSYS
++}
++
++func direntIno(buf []byte) (uint64, bool) {
++ return readInt(buf, unsafe.Offsetof(Dirent{}.Ino), unsafe.Sizeof(Dirent{}.Ino))
++}
++
++func direntReclen(buf []byte) (uint64, bool) {
++ return readInt(buf, unsafe.Offsetof(Dirent{}.Reclen), unsafe.Sizeof(Dirent{}.Reclen))
++}
++
++func direntNamlen(buf []byte) (uint64, bool) {
++ reclen, ok := direntReclen(buf)
++ if !ok {
++ return 0, false
++ }
++ return reclen - uint64(unsafe.Offsetof(Dirent{}.Name)), true
++}
++
++//sys getdirent(fd int, buf []byte) (n int, err error)
++func Getdents(fd int, buf []byte) (n int, err error) {
++ return getdirent(fd, buf)
++}
++
++//sys wait4(pid Pid_t, status *_C_int, options int, rusage *Rusage) (wpid Pid_t, err error)
++func Wait4(pid int, wstatus *WaitStatus, options int, rusage *Rusage) (wpid int, err error) {
++ var status _C_int
++ var r Pid_t
++ err = ERESTART
++ // AIX wait4 may return with ERESTART errno, while the processus is still
++ // active.
++ for err == ERESTART {
++ r, err = wait4(Pid_t(pid), &status, options, rusage)
++ }
++ wpid = int(r)
++ if wstatus != nil {
++ *wstatus = WaitStatus(status)
++ }
++ return
++}
++
++/*
++ * Wait
++ */
++
++type WaitStatus uint32
++
++func (w WaitStatus) Stopped() bool { return w&0x40 != 0 }
++func (w WaitStatus) StopSignal() Signal {
++ if !w.Stopped() {
++ return -1
++ }
++ return Signal(w>>8) & 0xFF
++}
++
++func (w WaitStatus) Exited() bool { return w&0xFF == 0 }
++func (w WaitStatus) ExitStatus() int {
++ if !w.Exited() {
++ return -1
++ }
++ return int((w >> 8) & 0xFF)
++}
++
++func (w WaitStatus) Signaled() bool { return w&0x40 == 0 && w&0xFF != 0 }
++func (w WaitStatus) Signal() Signal {
++ if !w.Signaled() {
++ return -1
++ }
++ return Signal(w>>16) & 0xFF
++}
++
++func (w WaitStatus) Continued() bool { return w&0x01000000 != 0 }
++
++func (w WaitStatus) CoreDump() bool { return w&0x80 == 0x80 }
++
++func (w WaitStatus) TrapCause() int { return -1 }
++
++//sys ioctl(fd int, req uint, arg uintptr) (err error)
++
++// fcntl must never be called with cmd=F_DUP2FD because it doesn't work on AIX
++// There is no way to create a custom fcntl and to keep //sys fcntl easily,
++// Therefore, the programmer must call dup2 instead of fcntl in this case.
++
++// FcntlInt performs a fcntl syscall on fd with the provided command and argument.
++//sys FcntlInt(fd uintptr, cmd int, arg int) (r int,err error) = fcntl
++
++// FcntlFlock performs a fcntl syscall for the F_GETLK, F_SETLK or F_SETLKW command.
++//sys FcntlFlock(fd uintptr, cmd int, lk *Flock_t) (err error) = fcntl
++
++//sys fcntl(fd int, cmd int, arg int) (val int, err error)
++
++/*
++ * Direct access
++ */
++
++//sys Acct(path string) (err error)
++//sys Chdir(path string) (err error)
++//sys Chroot(path string) (err error)
++//sys Close(fd int) (err error)
++//sys Dup(oldfd int) (fd int, err error)
++//sys Exit(code int)
++//sys Faccessat(dirfd int, path string, mode uint32, flags int) (err error)
++//sys Fchdir(fd int) (err error)
++//sys Fchmod(fd int, mode uint32) (err error)
++//sys Fchmodat(dirfd int, path string, mode uint32, flags int) (err error)
++//sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
++//sys Fdatasync(fd int) (err error)
++//sys Fsync(fd int) (err error)
++// readdir_r
++//sysnb Getpgid(pid int) (pgid int, err error)
++
++//sys Getpgrp() (pid int)
++
++//sysnb Getpid() (pid int)
++//sysnb Getppid() (ppid int)
++//sys Getpriority(which int, who int) (prio int, err error)
++//sysnb Getrusage(who int, rusage *Rusage) (err error)
++//sysnb Getsid(pid int) (sid int, err error)
++//sysnb Kill(pid int, sig Signal) (err error)
++//sys Klogctl(typ int, buf []byte) (n int, err error) = syslog
++//sys Mkdir(dirfd int, path string, mode uint32) (err error)
++//sys Mkdirat(dirfd int, path string, mode uint32) (err error)
++//sys Mkfifo(path string, mode uint32) (err error)
++//sys Mknod(path string, mode uint32, dev int) (err error)
++//sys Mknodat(dirfd int, path string, mode uint32, dev int) (err error)
++//sys Nanosleep(time *Timespec, leftover *Timespec) (err error)
++//sys Open(path string, mode int, perm uint32) (fd int, err error) = open64
++//sys Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error)
++//sys read(fd int, p []byte) (n int, err error)
++//sys Readlink(path string, buf []byte) (n int, err error)
++//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
++//sys Setdomainname(p []byte) (err error)
++//sys Sethostname(p []byte) (err error)
++//sysnb Setpgid(pid int, pgid int) (err error)
++//sysnb Setsid() (pid int, err error)
++//sysnb Settimeofday(tv *Timeval) (err error)
++
++//sys Setuid(uid int) (err error)
++//sys Setgid(uid int) (err error)
++
++//sys Setpriority(which int, who int, prio int) (err error)
++//sys Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error)
++//sys Sync()
++//sysnb Times(tms *Tms) (ticks uintptr, err error)
++//sysnb Umask(mask int) (oldmask int)
++//sysnb Uname(buf *Utsname) (err error)
++//sys Unlink(path string) (err error)
++//sys Unlinkat(dirfd int, path string, flags int) (err error)
++//sys Ustat(dev int, ubuf *Ustat_t) (err error)
++//sys write(fd int, p []byte) (n int, err error)
++//sys readlen(fd int, p *byte, np int) (n int, err error) = read
++//sys writelen(fd int, p *byte, np int) (n int, err error) = write
++
++//sys Dup2(oldfd int, newfd int) (err error)
++//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = posix_fadvise64
++//sys Fchown(fd int, uid int, gid int) (err error)
++//sys fstat(fd int, stat *Stat_t) (err error)
++//sys fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = fstatat
++//sys Fstatfs(fd int, buf *Statfs_t) (err error)
++//sys Ftruncate(fd int, length int64) (err error)
++//sysnb Getegid() (egid int)
++//sysnb Geteuid() (euid int)
++//sysnb Getgid() (gid int)
++//sysnb Getuid() (uid int)
++//sys Lchown(path string, uid int, gid int) (err error)
++//sys Listen(s int, n int) (err error)
++//sys lstat(path string, stat *Stat_t) (err error)
++//sys Pause() (err error)
++//sys Pread(fd int, p []byte, offset int64) (n int, err error) = pread64
++//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = pwrite64
++//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
++//sys Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error)
++//sysnb Setregid(rgid int, egid int) (err error)
++//sysnb Setreuid(ruid int, euid int) (err error)
++//sys Shutdown(fd int, how int) (err error)
++//sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error)
++//sys stat(path string, statptr *Stat_t) (err error)
++//sys Statfs(path string, buf *Statfs_t) (err error)
++//sys Truncate(path string, length int64) (err error)
++
++//sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error)
++//sys connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error)
++//sysnb getgroups(n int, list *_Gid_t) (nn int, err error)
++//sysnb setgroups(n int, list *_Gid_t) (err error)
++//sys getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error)
++//sys setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error)
++//sysnb socket(domain int, typ int, proto int) (fd int, err error)
++//sysnb socketpair(domain int, typ int, proto int, fd *[2]int32) (err error)
++//sysnb getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error)
++//sysnb getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error)
++//sys recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error)
++//sys sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error)
++
++// In order to use msghdr structure with Control, Controllen, nrecvmsg and nsendmsg must be used.
++//sys recvmsg(s int, msg *Msghdr, flags int) (n int, err error) = nrecvmsg
++//sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error) = nsendmsg
++
++//sys munmap(addr uintptr, length uintptr) (err error)
++
++var mapper = &mmapper{
++ active: make(map[*byte][]byte),
++ mmap: mmap,
++ munmap: munmap,
++}
++
++func Mmap(fd int, offset int64, length int, prot int, flags int) (data []byte, err error) {
++ return mapper.Mmap(fd, offset, length, prot, flags)
++}
++
++func Munmap(b []byte) (err error) {
++ return mapper.Munmap(b)
++}
++
++//sys Madvise(b []byte, advice int) (err error)
++//sys Mprotect(b []byte, prot int) (err error)
++//sys Mlock(b []byte) (err error)
++//sys Mlockall(flags int) (err error)
++//sys Msync(b []byte, flags int) (err error)
++//sys Munlock(b []byte) (err error)
++//sys Munlockall() (err error)
++
++//sysnb pipe(p *[2]_C_int) (err error)
++
++func Pipe(p []int) (err error) {
++ if len(p) != 2 {
++ return EINVAL
++ }
++ var pp [2]_C_int
++ err = pipe(&pp)
++ p[0] = int(pp[0])
++ p[1] = int(pp[1])
++ return
++}
++
++//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error)
++
++func Poll(fds []PollFd, timeout int) (n int, err error) {
++ if len(fds) == 0 {
++ return poll(nil, 0, timeout)
++ }
++ return poll(&fds[0], len(fds), timeout)
++}
++
++//sys gettimeofday(tv *Timeval, tzp *Timezone) (err error)
++//sysnb Time(t *Time_t) (tt Time_t, err error)
++//sys Utime(path string, buf *Utimbuf) (err error)
++
++//sys Getsystemcfg(label int) (n uint64)
++
++//sys umount(target string) (err error)
++func Unmount(target string, flags int) (err error) {
++ if flags != 0 {
++ // AIX doesn't have any flags for umount.
++ return ENOSYS
++ }
++ return umount(target)
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_aix_ppc.go b/vendor/golang.org/x/sys/unix/syscall_aix_ppc.go
+new file mode 100644
+index 00000000..b3c8e330
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/syscall_aix_ppc.go
+@@ -0,0 +1,54 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build aix
++// +build ppc
++
++package unix
++
++//sysnb Getrlimit(resource int, rlim *Rlimit) (err error) = getrlimit64
++//sysnb Setrlimit(resource int, rlim *Rlimit) (err error) = setrlimit64
++//sys Seek(fd int, offset int64, whence int) (off int64, err error) = lseek64
++
++//sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error)
++
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: int32(sec), Nsec: int32(nsec)}
++}
++
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: int32(sec), Usec: int32(usec)}
++}
++
++func (iov *Iovec) SetLen(length int) {
++ iov.Len = uint32(length)
++}
++
++func (msghdr *Msghdr) SetControllen(length int) {
++ msghdr.Controllen = uint32(length)
++}
++
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = int32(length)
++}
++
++func (cmsg *Cmsghdr) SetLen(length int) {
++ cmsg.Len = uint32(length)
++}
++
++func Fstat(fd int, stat *Stat_t) error {
++ return fstat(fd, stat)
++}
++
++func Fstatat(dirfd int, path string, stat *Stat_t, flags int) error {
++ return fstatat(dirfd, path, stat, flags)
++}
++
++func Lstat(path string, stat *Stat_t) error {
++ return lstat(path, stat)
++}
++
++func Stat(path string, statptr *Stat_t) error {
++ return stat(path, statptr)
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go b/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go
+new file mode 100644
+index 00000000..9a6e0241
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go
+@@ -0,0 +1,85 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build aix
++// +build ppc64
++
++package unix
++
++//sysnb Getrlimit(resource int, rlim *Rlimit) (err error)
++//sysnb Setrlimit(resource int, rlim *Rlimit) (err error)
++//sys Seek(fd int, offset int64, whence int) (off int64, err error) = lseek
++
++//sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) = mmap64
++
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
++}
++
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: int64(sec), Usec: int32(usec)}
++}
++
++func (iov *Iovec) SetLen(length int) {
++ iov.Len = uint64(length)
++}
++
++func (msghdr *Msghdr) SetControllen(length int) {
++ msghdr.Controllen = uint32(length)
++}
++
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = int32(length)
++}
++
++func (cmsg *Cmsghdr) SetLen(length int) {
++ cmsg.Len = uint32(length)
++}
++
++// In order to only have Timespec structure, type of Stat_t's fields
++// Atim, Mtim and Ctim is changed from StTimespec to Timespec during
++// ztypes generation.
++// On ppc64, Timespec.Nsec is an int64 while StTimespec.Nsec is an
++// int32, so the fields' value must be modified.
++func fixStatTimFields(stat *Stat_t) {
++ stat.Atim.Nsec >>= 32
++ stat.Mtim.Nsec >>= 32
++ stat.Ctim.Nsec >>= 32
++}
++
++func Fstat(fd int, stat *Stat_t) error {
++ err := fstat(fd, stat)
++ if err != nil {
++ return err
++ }
++ fixStatTimFields(stat)
++ return nil
++}
++
++func Fstatat(dirfd int, path string, stat *Stat_t, flags int) error {
++ err := fstatat(dirfd, path, stat, flags)
++ if err != nil {
++ return err
++ }
++ fixStatTimFields(stat)
++ return nil
++}
++
++func Lstat(path string, stat *Stat_t) error {
++ err := lstat(path, stat)
++ if err != nil {
++ return err
++ }
++ fixStatTimFields(stat)
++ return nil
++}
++
++func Stat(path string, statptr *Stat_t) error {
++ err := stat(path, statptr)
++ if err != nil {
++ return err
++ }
++ fixStatTimFields(statptr)
++ return nil
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_bsd.go b/vendor/golang.org/x/sys/unix/syscall_bsd.go
+index c2846b32..68605db6 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_bsd.go
++++ b/vendor/golang.org/x/sys/unix/syscall_bsd.go
+@@ -34,7 +34,7 @@ func Getgroups() (gids []int, err error) {
+ return nil, nil
+ }
+
+- // Sanity check group count. Max is 16 on BSD.
++ // Sanity check group count. Max is 16 on BSD.
+ if n < 0 || n > 1000 {
+ return nil, EINVAL
+ }
+@@ -63,15 +63,6 @@ func Setgroups(gids []int) (err error) {
+ return setgroups(len(a), &a[0])
+ }
+
+-func ReadDirent(fd int, buf []byte) (n int, err error) {
+- // Final argument is (basep *uintptr) and the syscall doesn't take nil.
+- // 64 bits should be enough. (32 bits isn't even on 386). Since the
+- // actual system call is getdirentries64, 64 is a good guess.
+- // TODO(rsc): Can we use a single global basep for all calls?
+- var base = (*uintptr)(unsafe.Pointer(new(uint64)))
+- return Getdirentries(fd, buf, base)
+-}
+-
+ // Wait status is 7 bits at bottom, either 0 (exited),
+ // 0x7F (stopped), or a signal number that caused an exit.
+ // The 0x80 bit is whether there was a core dump.
+@@ -86,6 +77,7 @@ const (
+ shift = 8
+
+ exited = 0
++ killed = 9
+ stopped = 0x7F
+ )
+
+@@ -112,6 +104,8 @@ func (w WaitStatus) CoreDump() bool { return w.Signaled() && w&core != 0 }
+
+ func (w WaitStatus) Stopped() bool { return w&mask == stopped && syscall.Signal(w>>shift) != SIGSTOP }
+
++func (w WaitStatus) Killed() bool { return w&mask == killed && syscall.Signal(w>>shift) != SIGKILL }
++
+ func (w WaitStatus) Continued() bool { return w&mask == stopped && syscall.Signal(w>>shift) == SIGSTOP }
+
+ func (w WaitStatus) StopSignal() syscall.Signal {
+@@ -206,7 +200,7 @@ func (sa *SockaddrDatalink) sockaddr() (unsafe.Pointer, _Socklen, error) {
+ return unsafe.Pointer(&sa.raw), SizeofSockaddrDatalink, nil
+ }
+
+-func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
++func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
+ switch rsa.Addr.Family {
+ case AF_LINK:
+ pp := (*RawSockaddrDatalink)(unsafe.Pointer(rsa))
+@@ -243,7 +237,7 @@ func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
+ break
+ }
+ }
+- bytes := (*[10000]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
++ bytes := (*[len(pp.Path)]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
+ sa.Name = string(bytes)
+ return sa, nil
+
+@@ -286,7 +280,7 @@ func Accept(fd int) (nfd int, sa Sockaddr, err error) {
+ Close(nfd)
+ return 0, nil, ECONNABORTED
+ }
+- sa, err = anyToSockaddr(&rsa)
++ sa, err = anyToSockaddr(fd, &rsa)
+ if err != nil {
+ Close(nfd)
+ nfd = 0
+@@ -306,50 +300,21 @@ func Getsockname(fd int) (sa Sockaddr, err error) {
+ rsa.Addr.Family = AF_UNIX
+ rsa.Addr.Len = SizeofSockaddrUnix
+ }
+- return anyToSockaddr(&rsa)
++ return anyToSockaddr(fd, &rsa)
+ }
+
+ //sysnb socketpair(domain int, typ int, proto int, fd *[2]int32) (err error)
+
+-func GetsockoptByte(fd, level, opt int) (value byte, err error) {
+- var n byte
+- vallen := _Socklen(1)
+- err = getsockopt(fd, level, opt, unsafe.Pointer(&n), &vallen)
+- return n, err
+-}
+-
+-func GetsockoptInet4Addr(fd, level, opt int) (value [4]byte, err error) {
+- vallen := _Socklen(4)
+- err = getsockopt(fd, level, opt, unsafe.Pointer(&value[0]), &vallen)
+- return value, err
+-}
+-
+-func GetsockoptIPMreq(fd, level, opt int) (*IPMreq, error) {
+- var value IPMreq
+- vallen := _Socklen(SizeofIPMreq)
+- err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
+- return &value, err
+-}
+-
+-func GetsockoptIPv6Mreq(fd, level, opt int) (*IPv6Mreq, error) {
+- var value IPv6Mreq
+- vallen := _Socklen(SizeofIPv6Mreq)
+- err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
+- return &value, err
+-}
+-
+-func GetsockoptIPv6MTUInfo(fd, level, opt int) (*IPv6MTUInfo, error) {
+- var value IPv6MTUInfo
+- vallen := _Socklen(SizeofIPv6MTUInfo)
+- err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
+- return &value, err
+-}
+-
+-func GetsockoptICMPv6Filter(fd, level, opt int) (*ICMPv6Filter, error) {
+- var value ICMPv6Filter
+- vallen := _Socklen(SizeofICMPv6Filter)
+- err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
+- return &value, err
++// GetsockoptString returns the string value of the socket option opt for the
++// socket associated with fd at the given socket level.
++func GetsockoptString(fd, level, opt int) (string, error) {
++ buf := make([]byte, 256)
++ vallen := _Socklen(len(buf))
++ err := getsockopt(fd, level, opt, unsafe.Pointer(&buf[0]), &vallen)
++ if err != nil {
++ return "", err
++ }
++ return string(buf[:vallen-1]), nil
+ }
+
+ //sys recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error)
+@@ -385,7 +350,7 @@ func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from
+ recvflags = int(msg.Flags)
+ // source address is only specified if the socket is unconnected
+ if rsa.Addr.Family != AF_UNSPEC {
+- from, err = anyToSockaddr(&rsa)
++ from, err = anyToSockaddr(fd, &rsa)
+ }
+ return
+ }
+@@ -448,8 +413,6 @@ func Kevent(kq int, changes, events []Kevent_t, timeout *Timespec) (n int, err e
+ return kevent(kq, change, len(changes), event, len(events), timeout)
+ }
+
+-//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL
+-
+ // sysctlmib translates name to mib number and appends any additional args.
+ func sysctlmib(name string, args ...int) ([]_C_int, error) {
+ // Translate name to mib number.
+@@ -547,6 +510,23 @@ func SysctlRaw(name string, args ...int) ([]byte, error) {
+ return buf[:n], nil
+ }
+
++func SysctlClockinfo(name string) (*Clockinfo, error) {
++ mib, err := sysctlmib(name)
++ if err != nil {
++ return nil, err
++ }
++
++ n := uintptr(SizeofClockinfo)
++ var ci Clockinfo
++ if err := sysctl(mib, (*byte)(unsafe.Pointer(&ci)), &n, nil, 0); err != nil {
++ return nil, err
++ }
++ if n != SizeofClockinfo {
++ return nil, EIO
++ }
++ return &ci, nil
++}
++
+ //sys utimes(path string, timeval *[2]Timeval) (err error)
+
+ func Utimes(path string, tv []Timeval) error {
+@@ -570,7 +550,12 @@ func UtimesNano(path string, ts []Timespec) error {
+ if len(ts) != 2 {
+ return EINVAL
+ }
+- err := utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
++ // Darwin setattrlist can set nanosecond timestamps
++ err := setattrlistTimes(path, ts, 0)
++ if err != ENOSYS {
++ return err
++ }
++ err = utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
+ if err != ENOSYS {
+ return err
+ }
+@@ -590,6 +575,10 @@ func UtimesNanoAt(dirfd int, path string, ts []Timespec, flags int) error {
+ if len(ts) != 2 {
+ return EINVAL
+ }
++ err := setattrlistTimes(path, ts, flags)
++ if err != ENOSYS {
++ return err
++ }
+ return utimensat(dirfd, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), flags)
+ }
+
+@@ -605,7 +594,14 @@ func Futimes(fd int, tv []Timeval) error {
+ return futimes(fd, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
+ }
+
+-//sys fcntl(fd int, cmd int, arg int) (val int, err error)
++//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error)
++
++func Poll(fds []PollFd, timeout int) (n int, err error) {
++ if len(fds) == 0 {
++ return poll(nil, 0, timeout)
++ }
++ return poll(&fds[0], len(fds), timeout)
++}
+
+ // TODO: wrap
+ // Acct(name nil-string) (err error)
+diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin.1_12.go b/vendor/golang.org/x/sys/unix/syscall_darwin.1_12.go
+new file mode 100644
+index 00000000..6a15cba6
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/syscall_darwin.1_12.go
+@@ -0,0 +1,29 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build darwin,go1.12,!go1.13
++
++package unix
++
++import (
++ "unsafe"
++)
++
++func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
++ // To implement this using libSystem we'd need syscall_syscallPtr for
++ // fdopendir. However, syscallPtr was only added in Go 1.13, so we fall
++ // back to raw syscalls for this func on Go 1.12.
++ var p unsafe.Pointer
++ if len(buf) > 0 {
++ p = unsafe.Pointer(&buf[0])
++ } else {
++ p = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(p), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ return n, errnoErr(e1)
++ }
++ return n, nil
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin.1_13.go b/vendor/golang.org/x/sys/unix/syscall_darwin.1_13.go
+new file mode 100644
+index 00000000..f911617b
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/syscall_darwin.1_13.go
+@@ -0,0 +1,101 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build darwin,go1.13
++
++package unix
++
++import "unsafe"
++
++//sys closedir(dir uintptr) (err error)
++//sys readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno)
++
++func fdopendir(fd int) (dir uintptr, err error) {
++ r0, _, e1 := syscall_syscallPtr(funcPC(libc_fdopendir_trampoline), uintptr(fd), 0, 0)
++ dir = uintptr(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fdopendir_trampoline()
++
++//go:linkname libc_fdopendir libc_fdopendir
++//go:cgo_import_dynamic libc_fdopendir fdopendir "/usr/lib/libSystem.B.dylib"
++
++func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
++ // Simulate Getdirentries using fdopendir/readdir_r/closedir.
++ // We store the number of entries to skip in the seek
++ // offset of fd. See issue #31368.
++ // It's not the full required semantics, but should handle the case
++ // of calling Getdirentries or ReadDirent repeatedly.
++ // It won't handle assigning the results of lseek to *basep, or handle
++ // the directory being edited underfoot.
++ skip, err := Seek(fd, 0, 1 /* SEEK_CUR */)
++ if err != nil {
++ return 0, err
++ }
++
++ // We need to duplicate the incoming file descriptor
++ // because the caller expects to retain control of it, but
++ // fdopendir expects to take control of its argument.
++ // Just Dup'ing the file descriptor is not enough, as the
++ // result shares underlying state. Use Openat to make a really
++ // new file descriptor referring to the same directory.
++ fd2, err := Openat(fd, ".", O_RDONLY, 0)
++ if err != nil {
++ return 0, err
++ }
++ d, err := fdopendir(fd2)
++ if err != nil {
++ Close(fd2)
++ return 0, err
++ }
++ defer closedir(d)
++
++ var cnt int64
++ for {
++ var entry Dirent
++ var entryp *Dirent
++ e := readdir_r(d, &entry, &entryp)
++ if e != 0 {
++ return n, errnoErr(e)
++ }
++ if entryp == nil {
++ break
++ }
++ if skip > 0 {
++ skip--
++ cnt++
++ continue
++ }
++ reclen := int(entry.Reclen)
++ if reclen > len(buf) {
++ // Not enough room. Return for now.
++ // The counter will let us know where we should start up again.
++ // Note: this strategy for suspending in the middle and
++ // restarting is O(n^2) in the length of the directory. Oh well.
++ break
++ }
++ // Copy entry into return buffer.
++ s := struct {
++ ptr unsafe.Pointer
++ siz int
++ cap int
++ }{ptr: unsafe.Pointer(&entry), siz: reclen, cap: reclen}
++ copy(buf, *(*[]byte)(unsafe.Pointer(&s)))
++ buf = buf[reclen:]
++ n += reclen
++ cnt++
++ }
++ // Set the seek offset of the input fd to record
++ // how many files we've already returned.
++ _, err = Seek(fd, cnt, 0 /* SEEK_SET */)
++ if err != nil {
++ return n, err
++ }
++
++ return n, nil
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin.go b/vendor/golang.org/x/sys/unix/syscall_darwin.go
+index ad74a11f..9a5a6ee5 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_darwin.go
++++ b/vendor/golang.org/x/sys/unix/syscall_darwin.go
+@@ -13,7 +13,7 @@
+ package unix
+
+ import (
+- errorspkg "errors"
++ "errors"
+ "syscall"
+ "unsafe"
+ )
+@@ -36,6 +36,7 @@ func Getwd() (string, error) {
+ return "", ENOTSUP
+ }
+
++// SockaddrDatalink implements the Sockaddr interface for AF_LINK type sockets.
+ type SockaddrDatalink struct {
+ Len uint8
+ Family uint8
+@@ -54,7 +55,7 @@ func nametomib(name string) (mib []_C_int, err error) {
+
+ // NOTE(rsc): It seems strange to set the buffer to have
+ // size CTL_MAXNAME+2 but use only CTL_MAXNAME
+- // as the size. I don't know why the +2 is here, but the
++ // as the size. I don't know why the +2 is here, but the
+ // kernel uses +2 for its own implementation of this function.
+ // I am scared that if we don't include the +2 here, the kernel
+ // will silently write 2 words farther than we specify
+@@ -88,7 +89,6 @@ func direntNamlen(buf []byte) (uint64, bool) {
+ return readInt(buf, unsafe.Offsetof(Dirent{}.Namlen), unsafe.Sizeof(Dirent{}.Namlen))
+ }
+
+-//sys ptrace(request int, pid int, addr uintptr, data uintptr) (err error)
+ func PtraceAttach(pid int) (err error) { return ptrace(PT_ATTACH, pid, 0, 0) }
+ func PtraceDetach(pid int) (err error) { return ptrace(PT_DETACH, pid, 0, 0) }
+
+@@ -109,7 +109,7 @@ type attrList struct {
+
+ func getAttrList(path string, attrList attrList, attrBuf []byte, options uint) (attrs [][]byte, err error) {
+ if len(attrBuf) < 4 {
+- return nil, errorspkg.New("attrBuf too small")
++ return nil, errors.New("attrBuf too small")
+ }
+ attrList.bitmapCount = attrBitMapCount
+
+@@ -119,17 +119,8 @@ func getAttrList(path string, attrList attrList, attrBuf []byte, options uint) (
+ return nil, err
+ }
+
+- _, _, e1 := Syscall6(
+- SYS_GETATTRLIST,
+- uintptr(unsafe.Pointer(_p0)),
+- uintptr(unsafe.Pointer(&attrList)),
+- uintptr(unsafe.Pointer(&attrBuf[0])),
+- uintptr(len(attrBuf)),
+- uintptr(options),
+- 0,
+- )
+- if e1 != 0 {
+- return nil, e1
++ if err := getattrlist(_p0, unsafe.Pointer(&attrList), unsafe.Pointer(&attrBuf[0]), uintptr(len(attrBuf)), int(options)); err != nil {
++ return nil, err
+ }
+ size := *(*uint32)(unsafe.Pointer(&attrBuf[0]))
+
+@@ -145,12 +136,12 @@ func getAttrList(path string, attrList attrList, attrBuf []byte, options uint) (
+ for i := uint32(0); int(i) < len(dat); {
+ header := dat[i:]
+ if len(header) < 8 {
+- return attrs, errorspkg.New("truncated attribute header")
++ return attrs, errors.New("truncated attribute header")
+ }
+ datOff := *(*int32)(unsafe.Pointer(&header[0]))
+ attrLen := *(*uint32)(unsafe.Pointer(&header[4]))
+ if datOff < 0 || uint32(datOff)+attrLen > uint32(len(dat)) {
+- return attrs, errorspkg.New("truncated results; attrBuf too small")
++ return attrs, errors.New("truncated results; attrBuf too small")
+ }
+ end := uint32(datOff) + attrLen
+ attrs = append(attrs, dat[datOff:end])
+@@ -162,6 +153,8 @@ func getAttrList(path string, attrList attrList, attrBuf []byte, options uint) (
+ return
+ }
+
++//sys getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error)
++
+ //sysnb pipe() (r int, w int, err error)
+
+ func Pipe(p []int) (err error) {
+@@ -179,14 +172,141 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ _p0 = unsafe.Pointer(&buf[0])
+ bufsize = unsafe.Sizeof(Statfs_t{}) * uintptr(len(buf))
+ }
+- r0, _, e1 := Syscall(SYS_GETFSSTAT64, uintptr(_p0), bufsize, uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = e1
++ return getfsstat(_p0, bufsize, flags)
++}
++
++func xattrPointer(dest []byte) *byte {
++ // It's only when dest is set to NULL that the OS X implementations of
++ // getxattr() and listxattr() return the current sizes of the named attributes.
++ // An empty byte array is not sufficient. To maintain the same behaviour as the
++ // linux implementation, we wrap around the system calls and pass in NULL when
++ // dest is empty.
++ var destp *byte
++ if len(dest) > 0 {
++ destp = &dest[0]
+ }
+- return
++ return destp
++}
++
++//sys getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error)
++
++func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
++ return getxattr(path, attr, xattrPointer(dest), len(dest), 0, 0)
++}
++
++func Lgetxattr(link string, attr string, dest []byte) (sz int, err error) {
++ return getxattr(link, attr, xattrPointer(dest), len(dest), 0, XATTR_NOFOLLOW)
++}
++
++//sys fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error)
++
++func Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
++ return fgetxattr(fd, attr, xattrPointer(dest), len(dest), 0, 0)
++}
++
++//sys setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error)
++
++func Setxattr(path string, attr string, data []byte, flags int) (err error) {
++ // The parameters for the OS X implementation vary slightly compared to the
++ // linux system call, specifically the position parameter:
++ //
++ // linux:
++ // int setxattr(
++ // const char *path,
++ // const char *name,
++ // const void *value,
++ // size_t size,
++ // int flags
++ // );
++ //
++ // darwin:
++ // int setxattr(
++ // const char *path,
++ // const char *name,
++ // void *value,
++ // size_t size,
++ // u_int32_t position,
++ // int options
++ // );
++ //
++ // position specifies the offset within the extended attribute. In the
++ // current implementation, only the resource fork extended attribute makes
++ // use of this argument. For all others, position is reserved. We simply
++ // default to setting it to zero.
++ return setxattr(path, attr, xattrPointer(data), len(data), 0, flags)
++}
++
++func Lsetxattr(link string, attr string, data []byte, flags int) (err error) {
++ return setxattr(link, attr, xattrPointer(data), len(data), 0, flags|XATTR_NOFOLLOW)
++}
++
++//sys fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error)
++
++func Fsetxattr(fd int, attr string, data []byte, flags int) (err error) {
++ return fsetxattr(fd, attr, xattrPointer(data), len(data), 0, 0)
++}
++
++//sys removexattr(path string, attr string, options int) (err error)
++
++func Removexattr(path string, attr string) (err error) {
++ // We wrap around and explicitly zero out the options provided to the OS X
++ // implementation of removexattr, we do so for interoperability with the
++ // linux variant.
++ return removexattr(path, attr, 0)
++}
++
++func Lremovexattr(link string, attr string) (err error) {
++ return removexattr(link, attr, XATTR_NOFOLLOW)
++}
++
++//sys fremovexattr(fd int, attr string, options int) (err error)
++
++func Fremovexattr(fd int, attr string) (err error) {
++ return fremovexattr(fd, attr, 0)
++}
++
++//sys listxattr(path string, dest *byte, size int, options int) (sz int, err error)
++
++func Listxattr(path string, dest []byte) (sz int, err error) {
++ return listxattr(path, xattrPointer(dest), len(dest), 0)
+ }
+
++func Llistxattr(link string, dest []byte) (sz int, err error) {
++ return listxattr(link, xattrPointer(dest), len(dest), XATTR_NOFOLLOW)
++}
++
++//sys flistxattr(fd int, dest *byte, size int, options int) (sz int, err error)
++
++func Flistxattr(fd int, dest []byte) (sz int, err error) {
++ return flistxattr(fd, xattrPointer(dest), len(dest), 0)
++}
++
++func setattrlistTimes(path string, times []Timespec, flags int) error {
++ _p0, err := BytePtrFromString(path)
++ if err != nil {
++ return err
++ }
++
++ var attrList attrList
++ attrList.bitmapCount = ATTR_BIT_MAP_COUNT
++ attrList.CommonAttr = ATTR_CMN_MODTIME | ATTR_CMN_ACCTIME
++
++ // order is mtime, atime: the opposite of Chtimes
++ attributes := [2]Timespec{times[1], times[0]}
++ options := 0
++ if flags&AT_SYMLINK_NOFOLLOW != 0 {
++ options |= FSOPT_NOFOLLOW
++ }
++ return setattrlist(
++ _p0,
++ unsafe.Pointer(&attrList),
++ unsafe.Pointer(&attributes),
++ unsafe.Sizeof(attributes),
++ options)
++}
++
++//sys setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error)
++
+ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) error {
+ // Darwin doesn't support SYS_UTIMENSAT
+ return ENOSYS
+@@ -196,49 +316,74 @@ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) error {
+ * Wrapped
+ */
+
++//sys fcntl(fd int, cmd int, arg int) (val int, err error)
++
+ //sys kill(pid int, signum int, posix int) (err error)
+
+ func Kill(pid int, signum syscall.Signal) (err error) { return kill(pid, int(signum), 1) }
+
+ //sys ioctl(fd int, req uint, arg uintptr) (err error)
+
+-// ioctl itself should not be exposed directly, but additional get/set
+-// functions for specific types are permissible.
++//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS_SYSCTL
+
+-// IoctlSetInt performs an ioctl operation which sets an integer value
+-// on fd, using the specified request number.
+-func IoctlSetInt(fd int, req uint, value int) error {
+- return ioctl(fd, req, uintptr(value))
+-}
++func Uname(uname *Utsname) error {
++ mib := []_C_int{CTL_KERN, KERN_OSTYPE}
++ n := unsafe.Sizeof(uname.Sysname)
++ if err := sysctl(mib, &uname.Sysname[0], &n, nil, 0); err != nil {
++ return err
++ }
+
+-func IoctlSetWinsize(fd int, req uint, value *Winsize) error {
+- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
+-}
++ mib = []_C_int{CTL_KERN, KERN_HOSTNAME}
++ n = unsafe.Sizeof(uname.Nodename)
++ if err := sysctl(mib, &uname.Nodename[0], &n, nil, 0); err != nil {
++ return err
++ }
+
+-func IoctlSetTermios(fd int, req uint, value *Termios) error {
+- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
+-}
++ mib = []_C_int{CTL_KERN, KERN_OSRELEASE}
++ n = unsafe.Sizeof(uname.Release)
++ if err := sysctl(mib, &uname.Release[0], &n, nil, 0); err != nil {
++ return err
++ }
+
+-// IoctlGetInt performs an ioctl operation which gets an integer value
+-// from fd, using the specified request number.
+-func IoctlGetInt(fd int, req uint) (int, error) {
+- var value int
+- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
+- return value, err
+-}
++ mib = []_C_int{CTL_KERN, KERN_VERSION}
++ n = unsafe.Sizeof(uname.Version)
++ if err := sysctl(mib, &uname.Version[0], &n, nil, 0); err != nil {
++ return err
++ }
+
+-func IoctlGetWinsize(fd int, req uint) (*Winsize, error) {
+- var value Winsize
+- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
+- return &value, err
++ // The version might have newlines or tabs in it, convert them to
++ // spaces.
++ for i, b := range uname.Version {
++ if b == '\n' || b == '\t' {
++ if i == len(uname.Version)-1 {
++ uname.Version[i] = 0
++ } else {
++ uname.Version[i] = ' '
++ }
++ }
++ }
++
++ mib = []_C_int{CTL_HW, HW_MACHINE}
++ n = unsafe.Sizeof(uname.Machine)
++ if err := sysctl(mib, &uname.Machine[0], &n, nil, 0); err != nil {
++ return err
++ }
++
++ return nil
+ }
+
+-func IoctlGetTermios(fd int, req uint) (*Termios, error) {
+- var value Termios
+- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
+- return &value, err
++func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
++ if raceenabled {
++ raceReleaseMerge(unsafe.Pointer(&ioSync))
++ }
++ var length = int64(count)
++ err = sendfile(infd, outfd, *offset, &length, nil, 0)
++ written = int(length)
++ return
+ }
+
++//sys sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error)
++
+ /*
+ * Exposed directly
+ */
+@@ -249,6 +394,7 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
+ //sys Chmod(path string, mode uint32) (err error)
+ //sys Chown(path string, uid int, gid int) (err error)
+ //sys Chroot(path string) (err error)
++//sys ClockGettime(clockid int32, time *Timespec) (err error)
+ //sys Close(fd int) (err error)
+ //sys Dup(fd int) (nfd int, err error)
+ //sys Dup2(from int, to int) (err error)
+@@ -263,11 +409,8 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
+ //sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
+ //sys Flock(fd int, how int) (err error)
+ //sys Fpathconf(fd int, name int) (val int, err error)
+-//sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64
+-//sys Fstatfs(fd int, stat *Statfs_t) (err error) = SYS_FSTATFS64
+ //sys Fsync(fd int) (err error)
+ //sys Ftruncate(fd int, length int64) (err error)
+-//sys Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) = SYS_GETDIRENTRIES64
+ //sys Getdtablesize() (size int)
+ //sysnb Getegid() (egid int)
+ //sysnb Geteuid() (uid int)
+@@ -287,7 +430,6 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
+ //sys Link(path string, link string) (err error)
+ //sys Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error)
+ //sys Listen(s int, backlog int) (err error)
+-//sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
+ //sys Mkdir(path string, mode uint32) (err error)
+ //sys Mkdirat(dirfd int, path string, mode uint32) (err error)
+ //sys Mkfifo(path string, mode uint32) (err error)
+@@ -305,7 +447,7 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
+ //sys Revoke(path string) (err error)
+ //sys Rmdir(path string) (err error)
+ //sys Seek(fd int, offset int64, whence int) (newoffset int64, err error) = SYS_LSEEK
+-//sys Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error)
++//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
+ //sys Setegid(egid int) (err error)
+ //sysnb Seteuid(euid int) (err error)
+ //sysnb Setgid(gid int) (err error)
+@@ -319,8 +461,6 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
+ //sysnb Setsid() (pid int, err error)
+ //sysnb Settimeofday(tp *Timeval) (err error)
+ //sysnb Setuid(uid int) (err error)
+-//sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64
+-//sys Statfs(path string, stat *Statfs_t) (err error) = SYS_STATFS64
+ //sys Symlink(path string, link string) (err error)
+ //sys Symlinkat(oldpath string, newdirfd int, newpath string) (err error)
+ //sys Sync() (err error)
+@@ -377,18 +517,9 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
+ // Searchfs
+ // Delete
+ // Copyfile
+-// Poll
+ // Watchevent
+ // Waitevent
+ // Modwatch
+-// Getxattr
+-// Fgetxattr
+-// Setxattr
+-// Fsetxattr
+-// Removexattr
+-// Fremovexattr
+-// Listxattr
+-// Flistxattr
+ // Fsctl
+ // Initgroups
+ // Posix_spawn
+diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go b/vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go
+new file mode 100644
+index 00000000..6b223f91
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go
+@@ -0,0 +1,9 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build darwin,386,!go1.12
++
++package unix
++
++//sys Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) = SYS_GETDIRENTRIES64
+diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_386.go b/vendor/golang.org/x/sys/unix/syscall_darwin_386.go
+index c172a3da..707ba4f5 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_darwin_386.go
++++ b/vendor/golang.org/x/sys/unix/syscall_darwin_386.go
+@@ -8,30 +8,22 @@ package unix
+
+ import (
+ "syscall"
+- "unsafe"
+ )
+
+-func Getpagesize() int { return 4096 }
++//sys ptrace(request int, pid int, addr uintptr, data uintptr) (err error)
+
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = int32(nsec / 1e9)
+- ts.Nsec = int32(nsec % 1e9)
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: int32(sec), Nsec: int32(nsec)}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = int32(nsec % 1e9 / 1e3)
+- tv.Sec = int32(nsec / 1e9)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: int32(sec), Usec: int32(usec)}
+ }
+
+ //sysnb gettimeofday(tp *Timeval) (sec int32, usec int32, err error)
+ func Gettimeofday(tv *Timeval) (err error) {
+ // The tv passed to gettimeofday must be non-nil
+- // but is otherwise unused. The answers come back
++ // but is otherwise unused. The answers come back
+ // in the two registers.
+ sec, usec, err := gettimeofday(tv)
+ tv.Sec = int32(sec)
+@@ -53,21 +45,12 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
+-func (cmsg *Cmsghdr) SetLen(length int) {
+- cmsg.Len = uint32(length)
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = int32(length)
+ }
+
+-func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
+- var length = uint64(count)
+-
+- _, _, e1 := Syscall9(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(*offset), uintptr(*offset>>32), uintptr(unsafe.Pointer(&length)), 0, 0, 0, 0)
+-
+- written = int(length)
+-
+- if e1 != 0 {
+- err = e1
+- }
+- return
++func (cmsg *Cmsghdr) SetLen(length int) {
++ cmsg.Len = uint32(length)
+ }
+
+ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
+@@ -75,3 +58,11 @@ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr,
+ // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
+ // of darwin/386 the syscall is called sysctl instead of __sysctl.
+ const SYS___SYSCTL = SYS_SYSCTL
++
++//sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64
++//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64
++//sys Fstatfs(fd int, stat *Statfs_t) (err error) = SYS_FSTATFS64
++//sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT64
++//sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
++//sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64
++//sys Statfs(path string, stat *Statfs_t) (err error) = SYS_STATFS64
+diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.1_11.go b/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.1_11.go
+new file mode 100644
+index 00000000..68ebd6fa
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.1_11.go
+@@ -0,0 +1,9 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build darwin,amd64,!go1.12
++
++package unix
++
++//sys Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) = SYS_GETDIRENTRIES64
+diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go b/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go
+index c6c99c13..fdbfb591 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go
++++ b/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go
+@@ -8,30 +8,22 @@ package unix
+
+ import (
+ "syscall"
+- "unsafe"
+ )
+
+-func Getpagesize() int { return 4096 }
++//sys ptrace(request int, pid int, addr uintptr, data uintptr) (err error)
+
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = nsec / 1e9
+- ts.Nsec = nsec % 1e9
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = int32(nsec % 1e9 / 1e3)
+- tv.Sec = int64(nsec / 1e9)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: int32(usec)}
+ }
+
+ //sysnb gettimeofday(tp *Timeval) (sec int64, usec int32, err error)
+ func Gettimeofday(tv *Timeval) (err error) {
+ // The tv passed to gettimeofday must be non-nil
+- // but is otherwise unused. The answers come back
++ // but is otherwise unused. The answers come back
+ // in the two registers.
+ sec, usec, err := gettimeofday(tv)
+ tv.Sec = sec
+@@ -53,21 +45,12 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
+-func (cmsg *Cmsghdr) SetLen(length int) {
+- cmsg.Len = uint32(length)
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = int32(length)
+ }
+
+-func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
+- var length = uint64(count)
+-
+- _, _, e1 := Syscall6(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(*offset), uintptr(unsafe.Pointer(&length)), 0, 0)
+-
+- written = int(length)
+-
+- if e1 != 0 {
+- err = e1
+- }
+- return
++func (cmsg *Cmsghdr) SetLen(length int) {
++ cmsg.Len = uint32(length)
+ }
+
+ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
+@@ -75,3 +58,11 @@ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr,
+ // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
+ // of darwin/amd64 the syscall is called sysctl instead of __sysctl.
+ const SYS___SYSCTL = SYS_SYSCTL
++
++//sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64
++//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64
++//sys Fstatfs(fd int, stat *Statfs_t) (err error) = SYS_FSTATFS64
++//sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT64
++//sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
++//sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64
++//sys Statfs(path string, stat *Statfs_t) (err error) = SYS_STATFS64
+diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go
+new file mode 100644
+index 00000000..0e3f25ac
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go
+@@ -0,0 +1,11 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build darwin,arm,!go1.12
++
++package unix
++
++func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
++ return 0, ENOSYS
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go
+index d286cf40..f8bc4cfb 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go
++++ b/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go
+@@ -6,30 +6,24 @@ package unix
+
+ import (
+ "syscall"
+- "unsafe"
+ )
+
+-func Getpagesize() int { return 4096 }
+-
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
++func ptrace(request int, pid int, addr uintptr, data uintptr) error {
++ return ENOTSUP
++}
+
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = int32(nsec / 1e9)
+- ts.Nsec = int32(nsec % 1e9)
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: int32(sec), Nsec: int32(nsec)}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = int32(nsec % 1e9 / 1e3)
+- tv.Sec = int32(nsec / 1e9)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: int32(sec), Usec: int32(usec)}
+ }
+
+ //sysnb gettimeofday(tp *Timeval) (sec int32, usec int32, err error)
+ func Gettimeofday(tv *Timeval) (err error) {
+ // The tv passed to gettimeofday must be non-nil
+- // but is otherwise unused. The answers come back
++ // but is otherwise unused. The answers come back
+ // in the two registers.
+ sec, usec, err := gettimeofday(tv)
+ tv.Sec = int32(sec)
+@@ -51,21 +45,24 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
+-func (cmsg *Cmsghdr) SetLen(length int) {
+- cmsg.Len = uint32(length)
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = int32(length)
+ }
+
+-func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
+- var length = uint64(count)
+-
+- _, _, e1 := Syscall9(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(*offset), uintptr(*offset>>32), uintptr(unsafe.Pointer(&length)), 0, 0, 0, 0)
+-
+- written = int(length)
+-
+- if e1 != 0 {
+- err = e1
+- }
+- return
++func (cmsg *Cmsghdr) SetLen(length int) {
++ cmsg.Len = uint32(length)
+ }
+
+ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) // sic
++
++// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
++// of darwin/arm the syscall is called sysctl instead of __sysctl.
++const SYS___SYSCTL = SYS_SYSCTL
++
++//sys Fstat(fd int, stat *Stat_t) (err error)
++//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
++//sys Fstatfs(fd int, stat *Statfs_t) (err error)
++//sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT
++//sys Lstat(path string, stat *Stat_t) (err error)
++//sys Stat(path string, stat *Stat_t) (err error)
++//sys Statfs(path string, stat *Statfs_t) (err error)
+diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.1_11.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.1_11.go
+new file mode 100644
+index 00000000..01d45040
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.1_11.go
+@@ -0,0 +1,11 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build darwin,arm64,!go1.12
++
++package unix
++
++func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
++ return 0, ENOSYS
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go
+index c33905cd..5ede3ac3 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go
++++ b/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go
+@@ -8,30 +8,24 @@ package unix
+
+ import (
+ "syscall"
+- "unsafe"
+ )
+
+-func Getpagesize() int { return 16384 }
+-
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
++func ptrace(request int, pid int, addr uintptr, data uintptr) error {
++ return ENOTSUP
++}
+
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = nsec / 1e9
+- ts.Nsec = nsec % 1e9
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = int32(nsec % 1e9 / 1e3)
+- tv.Sec = int64(nsec / 1e9)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: int32(usec)}
+ }
+
+ //sysnb gettimeofday(tp *Timeval) (sec int64, usec int32, err error)
+ func Gettimeofday(tv *Timeval) (err error) {
+ // The tv passed to gettimeofday must be non-nil
+- // but is otherwise unused. The answers come back
++ // but is otherwise unused. The answers come back
+ // in the two registers.
+ sec, usec, err := gettimeofday(tv)
+ tv.Sec = sec
+@@ -53,21 +47,12 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
+-func (cmsg *Cmsghdr) SetLen(length int) {
+- cmsg.Len = uint32(length)
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = int32(length)
+ }
+
+-func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
+- var length = uint64(count)
+-
+- _, _, e1 := Syscall6(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(*offset), uintptr(unsafe.Pointer(&length)), 0, 0)
+-
+- written = int(length)
+-
+- if e1 != 0 {
+- err = e1
+- }
+- return
++func (cmsg *Cmsghdr) SetLen(length int) {
++ cmsg.Len = uint32(length)
+ }
+
+ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) // sic
+@@ -75,3 +60,11 @@ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr,
+ // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
+ // of darwin/arm64 the syscall is called sysctl instead of __sysctl.
+ const SYS___SYSCTL = SYS_SYSCTL
++
++//sys Fstat(fd int, stat *Stat_t) (err error)
++//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
++//sys Fstatfs(fd int, stat *Statfs_t) (err error)
++//sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT
++//sys Lstat(path string, stat *Stat_t) (err error)
++//sys Stat(path string, stat *Stat_t) (err error)
++//sys Statfs(path string, stat *Statfs_t) (err error)
+diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go b/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go
+new file mode 100644
+index 00000000..f34c86c8
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go
+@@ -0,0 +1,33 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build darwin,go1.12
++
++package unix
++
++import "unsafe"
++
++// Implemented in the runtime package (runtime/sys_darwin.go)
++func syscall_syscall(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno)
++func syscall_syscall6(fn, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
++func syscall_syscall6X(fn, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
++func syscall_syscall9(fn, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err Errno) // 32-bit only
++func syscall_rawSyscall(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno)
++func syscall_rawSyscall6(fn, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
++func syscall_syscallPtr(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno)
++
++//go:linkname syscall_syscall syscall.syscall
++//go:linkname syscall_syscall6 syscall.syscall6
++//go:linkname syscall_syscall6X syscall.syscall6X
++//go:linkname syscall_syscall9 syscall.syscall9
++//go:linkname syscall_rawSyscall syscall.rawSyscall
++//go:linkname syscall_rawSyscall6 syscall.rawSyscall6
++//go:linkname syscall_syscallPtr syscall.syscallPtr
++
++// Find the entry point for f. See comments in runtime/proc.go for the
++// function of the same name.
++//go:nosplit
++func funcPC(f func()) uintptr {
++ return **(**uintptr)(unsafe.Pointer(&f))
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_dragonfly.go b/vendor/golang.org/x/sys/unix/syscall_dragonfly.go
+index 3a483373..8a195ae5 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_dragonfly.go
++++ b/vendor/golang.org/x/sys/unix/syscall_dragonfly.go
+@@ -12,8 +12,27 @@
+
+ package unix
+
+-import "unsafe"
++import (
++ "sync"
++ "unsafe"
++)
+
++// See version list in https://github.com/DragonFlyBSD/DragonFlyBSD/blob/master/sys/sys/param.h
++var (
++ osreldateOnce sync.Once
++ osreldate uint32
++)
++
++// First __DragonFly_version after September 2019 ABI changes
++// http://lists.dragonflybsd.org/pipermail/users/2019-September/358280.html
++const _dragonflyABIChangeVersion = 500705
++
++func supportsABI(ver uint32) bool {
++ osreldateOnce.Do(func() { osreldate, _ = SysctlUint32("kern.osreldate") })
++ return osreldate >= ver
++}
++
++// SockaddrDatalink implements the Sockaddr interface for AF_LINK type sockets.
+ type SockaddrDatalink struct {
+ Len uint8
+ Family uint8
+@@ -102,7 +121,7 @@ func Accept4(fd, flags int) (nfd int, sa Sockaddr, err error) {
+ if len > SizeofSockaddrAny {
+ panic("RawSockaddrAny too small")
+ }
+- sa, err = anyToSockaddr(&rsa)
++ sa, err = anyToSockaddr(fd, &rsa)
+ if err != nil {
+ Close(nfd)
+ nfd = 0
+@@ -110,6 +129,23 @@ func Accept4(fd, flags int) (nfd int, sa Sockaddr, err error) {
+ return
+ }
+
++const ImplementsGetwd = true
++
++//sys Getcwd(buf []byte) (n int, err error) = SYS___GETCWD
++
++func Getwd() (string, error) {
++ var buf [PathMax]byte
++ _, err := Getcwd(buf[0:])
++ if err != nil {
++ return "", err
++ }
++ n := clen(buf[:])
++ if n < 1 {
++ return "", EINVAL
++ }
++ return string(buf[:n]), nil
++}
++
+ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ var _p0 unsafe.Pointer
+ var bufsize uintptr
+@@ -125,6 +161,85 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ return
+ }
+
++func setattrlistTimes(path string, times []Timespec, flags int) error {
++ // used on Darwin for UtimesNano
++ return ENOSYS
++}
++
++//sys ioctl(fd int, req uint, arg uintptr) (err error)
++
++//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL
++
++func sysctlUname(mib []_C_int, old *byte, oldlen *uintptr) error {
++ err := sysctl(mib, old, oldlen, nil, 0)
++ if err != nil {
++ // Utsname members on Dragonfly are only 32 bytes and
++ // the syscall returns ENOMEM in case the actual value
++ // is longer.
++ if err == ENOMEM {
++ err = nil
++ }
++ }
++ return err
++}
++
++func Uname(uname *Utsname) error {
++ mib := []_C_int{CTL_KERN, KERN_OSTYPE}
++ n := unsafe.Sizeof(uname.Sysname)
++ if err := sysctlUname(mib, &uname.Sysname[0], &n); err != nil {
++ return err
++ }
++ uname.Sysname[unsafe.Sizeof(uname.Sysname)-1] = 0
++
++ mib = []_C_int{CTL_KERN, KERN_HOSTNAME}
++ n = unsafe.Sizeof(uname.Nodename)
++ if err := sysctlUname(mib, &uname.Nodename[0], &n); err != nil {
++ return err
++ }
++ uname.Nodename[unsafe.Sizeof(uname.Nodename)-1] = 0
++
++ mib = []_C_int{CTL_KERN, KERN_OSRELEASE}
++ n = unsafe.Sizeof(uname.Release)
++ if err := sysctlUname(mib, &uname.Release[0], &n); err != nil {
++ return err
++ }
++ uname.Release[unsafe.Sizeof(uname.Release)-1] = 0
++
++ mib = []_C_int{CTL_KERN, KERN_VERSION}
++ n = unsafe.Sizeof(uname.Version)
++ if err := sysctlUname(mib, &uname.Version[0], &n); err != nil {
++ return err
++ }
++
++ // The version might have newlines or tabs in it, convert them to
++ // spaces.
++ for i, b := range uname.Version {
++ if b == '\n' || b == '\t' {
++ if i == len(uname.Version)-1 {
++ uname.Version[i] = 0
++ } else {
++ uname.Version[i] = ' '
++ }
++ }
++ }
++
++ mib = []_C_int{CTL_HW, HW_MACHINE}
++ n = unsafe.Sizeof(uname.Machine)
++ if err := sysctlUname(mib, &uname.Machine[0], &n); err != nil {
++ return err
++ }
++ uname.Machine[unsafe.Sizeof(uname.Machine)-1] = 0
++
++ return nil
++}
++
++func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
++ if raceenabled {
++ raceReleaseMerge(unsafe.Pointer(&ioSync))
++ }
++ return sendfile(outfd, infd, offset, count)
++}
++
+ /*
+ * Exposed directly
+ */
+@@ -139,16 +254,21 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ //sys Dup(fd int) (nfd int, err error)
+ //sys Dup2(from int, to int) (err error)
+ //sys Exit(code int)
++//sys Faccessat(dirfd int, path string, mode uint32, flags int) (err error)
+ //sys Fchdir(fd int) (err error)
+ //sys Fchflags(fd int, flags int) (err error)
+ //sys Fchmod(fd int, mode uint32) (err error)
++//sys Fchmodat(dirfd int, path string, mode uint32, flags int) (err error)
+ //sys Fchown(fd int, uid int, gid int) (err error)
++//sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
+ //sys Flock(fd int, how int) (err error)
+ //sys Fpathconf(fd int, name int) (val int, err error)
+ //sys Fstat(fd int, stat *Stat_t) (err error)
++//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
+ //sys Fstatfs(fd int, stat *Statfs_t) (err error)
+ //sys Fsync(fd int) (err error)
+ //sys Ftruncate(fd int, length int64) (err error)
++//sys Getdents(fd int, buf []byte) (n int, err error)
+ //sys Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error)
+ //sys Getdtablesize() (size int)
+ //sysnb Getegid() (egid int)
+@@ -169,21 +289,26 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ //sys Kqueue() (fd int, err error)
+ //sys Lchown(path string, uid int, gid int) (err error)
+ //sys Link(path string, link string) (err error)
++//sys Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error)
+ //sys Listen(s int, backlog int) (err error)
+ //sys Lstat(path string, stat *Stat_t) (err error)
+ //sys Mkdir(path string, mode uint32) (err error)
++//sys Mkdirat(dirfd int, path string, mode uint32) (err error)
+ //sys Mkfifo(path string, mode uint32) (err error)
+ //sys Mknod(path string, mode uint32, dev int) (err error)
++//sys Mknodat(fd int, path string, mode uint32, dev int) (err error)
+ //sys Nanosleep(time *Timespec, leftover *Timespec) (err error)
+ //sys Open(path string, mode int, perm uint32) (fd int, err error)
++//sys Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error)
+ //sys Pathconf(path string, name int) (val int, err error)
+ //sys read(fd int, p []byte) (n int, err error)
+ //sys Readlink(path string, buf []byte) (n int, err error)
+ //sys Rename(from string, to string) (err error)
++//sys Renameat(fromfd int, from string, tofd int, to string) (err error)
+ //sys Revoke(path string) (err error)
+ //sys Rmdir(path string) (err error)
+ //sys Seek(fd int, offset int64, whence int) (newoffset int64, err error) = SYS_LSEEK
+-//sys Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error)
++//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
+ //sysnb Setegid(egid int) (err error)
+ //sysnb Seteuid(euid int) (err error)
+ //sysnb Setgid(gid int) (err error)
+@@ -201,11 +326,13 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ //sys Stat(path string, stat *Stat_t) (err error)
+ //sys Statfs(path string, stat *Statfs_t) (err error)
+ //sys Symlink(path string, link string) (err error)
++//sys Symlinkat(oldpath string, newdirfd int, newpath string) (err error)
+ //sys Sync() (err error)
+ //sys Truncate(path string, length int64) (err error)
+ //sys Umask(newmask int) (oldmask int)
+ //sys Undelete(path string) (err error)
+ //sys Unlink(path string) (err error)
++//sys Unlinkat(dirfd int, path string, flags int) (err error)
+ //sys Unmount(path string, flags int) (err error)
+ //sys write(fd int, p []byte) (n int, err error)
+ //sys mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error)
+@@ -225,7 +352,6 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ // Getlogin
+ // Sigpending
+ // Sigaltstack
+-// Ioctl
+ // Reboot
+ // Execve
+ // Vfork
+@@ -257,7 +383,6 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ // Searchfs
+ // Delete
+ // Copyfile
+-// Poll
+ // Watchevent
+ // Waitevent
+ // Modwatch
+@@ -403,7 +528,6 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ // Pread_nocancel
+ // Pwrite_nocancel
+ // Waitid_nocancel
+-// Poll_nocancel
+ // Msgsnd_nocancel
+ // Msgrcv_nocancel
+ // Sem_wait_nocancel
+diff --git a/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go
+index da7cb798..a6b4830a 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go
++++ b/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go
+@@ -11,21 +11,12 @@ import (
+ "unsafe"
+ )
+
+-func Getpagesize() int { return 4096 }
+-
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = nsec / 1e9
+- ts.Nsec = nsec % 1e9
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = nsec % 1e9 / 1e3
+- tv.Sec = int64(nsec / 1e9)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: usec}
+ }
+
+ func SetKevent(k *Kevent_t, fd, mode, flags int) {
+@@ -42,6 +33,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = int32(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint32(length)
+ }
+diff --git a/vendor/golang.org/x/sys/unix/syscall_freebsd.go b/vendor/golang.org/x/sys/unix/syscall_freebsd.go
+index d26e52ea..6932e7c2 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_freebsd.go
++++ b/vendor/golang.org/x/sys/unix/syscall_freebsd.go
+@@ -12,8 +12,36 @@
+
+ package unix
+
+-import "unsafe"
++import (
++ "sync"
++ "unsafe"
++)
++
++const (
++ SYS_FSTAT_FREEBSD12 = 551 // { int fstat(int fd, _Out_ struct stat *sb); }
++ SYS_FSTATAT_FREEBSD12 = 552 // { int fstatat(int fd, _In_z_ char *path, \
++ SYS_GETDIRENTRIES_FREEBSD12 = 554 // { ssize_t getdirentries(int fd, \
++ SYS_STATFS_FREEBSD12 = 555 // { int statfs(_In_z_ char *path, \
++ SYS_FSTATFS_FREEBSD12 = 556 // { int fstatfs(int fd, \
++ SYS_GETFSSTAT_FREEBSD12 = 557 // { int getfsstat( \
++ SYS_MKNODAT_FREEBSD12 = 559 // { int mknodat(int fd, _In_z_ char *path, \
++)
++
++// See https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/versions.html.
++var (
++ osreldateOnce sync.Once
++ osreldate uint32
++)
++
++// INO64_FIRST from /usr/src/lib/libc/sys/compat-ino64.h
++const _ino64First = 1200031
++
++func supportsABI(ver uint32) bool {
++ osreldateOnce.Do(func() { osreldate, _ = SysctlUint32("kern.osreldate") })
++ return osreldate >= ver
++}
+
++// SockaddrDatalink implements the Sockaddr interface for AF_LINK type sockets.
+ type SockaddrDatalink struct {
+ Len uint8
+ Family uint8
+@@ -32,7 +60,7 @@ func nametomib(name string) (mib []_C_int, err error) {
+
+ // NOTE(rsc): It seems strange to set the buffer to have
+ // size CTL_MAXNAME+2 but use only CTL_MAXNAME
+- // as the size. I don't know why the +2 is here, but the
++ // as the size. I don't know why the +2 is here, but the
+ // kernel uses +2 for its own implementation of this function.
+ // I am scared that if we don't include the +2 here, the kernel
+ // will silently write 2 words farther than we specify
+@@ -66,14 +94,21 @@ func direntNamlen(buf []byte) (uint64, bool) {
+ return readInt(buf, unsafe.Offsetof(Dirent{}.Namlen), unsafe.Sizeof(Dirent{}.Namlen))
+ }
+
+-//sysnb pipe() (r int, w int, err error)
+-
+ func Pipe(p []int) (err error) {
++ return Pipe2(p, 0)
++}
++
++//sysnb pipe2(p *[2]_C_int, flags int) (err error)
++
++func Pipe2(p []int, flags int) error {
+ if len(p) != 2 {
+ return EINVAL
+ }
+- p[0], p[1], err = pipe()
+- return
++ var pp [2]_C_int
++ err := pipe2(&pp, flags)
++ p[0] = int(pp[0])
++ p[1] = int(pp[1])
++ return err
+ }
+
+ func GetsockoptIPMreqn(fd, level, opt int) (*IPMreqn, error) {
+@@ -97,7 +132,7 @@ func Accept4(fd, flags int) (nfd int, sa Sockaddr, err error) {
+ if len > SizeofSockaddrAny {
+ panic("RawSockaddrAny too small")
+ }
+- sa, err = anyToSockaddr(&rsa)
++ sa, err = anyToSockaddr(fd, &rsa)
+ if err != nil {
+ Close(nfd)
+ nfd = 0
+@@ -105,290 +140,421 @@ func Accept4(fd, flags int) (nfd int, sa Sockaddr, err error) {
+ return
+ }
+
++const ImplementsGetwd = true
++
++//sys Getcwd(buf []byte) (n int, err error) = SYS___GETCWD
++
++func Getwd() (string, error) {
++ var buf [PathMax]byte
++ _, err := Getcwd(buf[0:])
++ if err != nil {
++ return "", err
++ }
++ n := clen(buf[:])
++ if n < 1 {
++ return "", EINVAL
++ }
++ return string(buf[:n]), nil
++}
++
+ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- var bufsize uintptr
++ var (
++ _p0 unsafe.Pointer
++ bufsize uintptr
++ oldBuf []statfs_freebsd11_t
++ needsConvert bool
++ )
++
+ if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- bufsize = unsafe.Sizeof(Statfs_t{}) * uintptr(len(buf))
++ if supportsABI(_ino64First) {
++ _p0 = unsafe.Pointer(&buf[0])
++ bufsize = unsafe.Sizeof(Statfs_t{}) * uintptr(len(buf))
++ } else {
++ n := len(buf)
++ oldBuf = make([]statfs_freebsd11_t, n)
++ _p0 = unsafe.Pointer(&oldBuf[0])
++ bufsize = unsafe.Sizeof(statfs_freebsd11_t{}) * uintptr(n)
++ needsConvert = true
++ }
++ }
++ var sysno uintptr = SYS_GETFSSTAT
++ if supportsABI(_ino64First) {
++ sysno = SYS_GETFSSTAT_FREEBSD12
+ }
+- r0, _, e1 := Syscall(SYS_GETFSSTAT, uintptr(_p0), bufsize, uintptr(flags))
++ r0, _, e1 := Syscall(sysno, uintptr(_p0), bufsize, uintptr(flags))
+ n = int(r0)
+ if e1 != 0 {
+ err = e1
+ }
++ if e1 == 0 && needsConvert {
++ for i := range oldBuf {
++ buf[i].convertFrom(&oldBuf[i])
++ }
++ }
+ return
+ }
+
+-// Derive extattr namespace and attribute name
++func setattrlistTimes(path string, times []Timespec, flags int) error {
++ // used on Darwin for UtimesNano
++ return ENOSYS
++}
+
+-func xattrnamespace(fullattr string) (ns int, attr string, err error) {
+- s := -1
+- for idx, val := range fullattr {
+- if val == '.' {
+- s = idx
+- break
+- }
++//sys ioctl(fd int, req uint, arg uintptr) (err error)
++
++//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL
++
++func Uname(uname *Utsname) error {
++ mib := []_C_int{CTL_KERN, KERN_OSTYPE}
++ n := unsafe.Sizeof(uname.Sysname)
++ if err := sysctl(mib, &uname.Sysname[0], &n, nil, 0); err != nil {
++ return err
+ }
+
+- if s == -1 {
+- return -1, "", ENOATTR
++ mib = []_C_int{CTL_KERN, KERN_HOSTNAME}
++ n = unsafe.Sizeof(uname.Nodename)
++ if err := sysctl(mib, &uname.Nodename[0], &n, nil, 0); err != nil {
++ return err
+ }
+
+- namespace := fullattr[0:s]
+- attr = fullattr[s+1:]
++ mib = []_C_int{CTL_KERN, KERN_OSRELEASE}
++ n = unsafe.Sizeof(uname.Release)
++ if err := sysctl(mib, &uname.Release[0], &n, nil, 0); err != nil {
++ return err
++ }
+
+- switch namespace {
+- case "user":
+- return EXTATTR_NAMESPACE_USER, attr, nil
+- case "system":
+- return EXTATTR_NAMESPACE_SYSTEM, attr, nil
+- default:
+- return -1, "", ENOATTR
++ mib = []_C_int{CTL_KERN, KERN_VERSION}
++ n = unsafe.Sizeof(uname.Version)
++ if err := sysctl(mib, &uname.Version[0], &n, nil, 0); err != nil {
++ return err
+ }
+-}
+
+-func initxattrdest(dest []byte, idx int) (d unsafe.Pointer) {
+- if len(dest) > idx {
+- return unsafe.Pointer(&dest[idx])
+- } else {
+- return unsafe.Pointer(_zero)
++ // The version might have newlines or tabs in it, convert them to
++ // spaces.
++ for i, b := range uname.Version {
++ if b == '\n' || b == '\t' {
++ if i == len(uname.Version)-1 {
++ uname.Version[i] = 0
++ } else {
++ uname.Version[i] = ' '
++ }
++ }
+ }
+-}
+
+-// FreeBSD implements its own syscalls to handle extended attributes
++ mib = []_C_int{CTL_HW, HW_MACHINE}
++ n = unsafe.Sizeof(uname.Machine)
++ if err := sysctl(mib, &uname.Machine[0], &n, nil, 0); err != nil {
++ return err
++ }
+
+-func Getxattr(file string, attr string, dest []byte) (sz int, err error) {
+- d := initxattrdest(dest, 0)
+- destsize := len(dest)
++ return nil
++}
+
+- nsid, a, err := xattrnamespace(attr)
++func Stat(path string, st *Stat_t) (err error) {
++ var oldStat stat_freebsd11_t
++ if supportsABI(_ino64First) {
++ return fstatat_freebsd12(AT_FDCWD, path, st, 0)
++ }
++ err = stat(path, &oldStat)
+ if err != nil {
+- return -1, err
++ return err
+ }
+
+- return ExtattrGetFile(file, nsid, a, uintptr(d), destsize)
++ st.convertFrom(&oldStat)
++ return nil
+ }
+
+-func Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
+- d := initxattrdest(dest, 0)
+- destsize := len(dest)
+-
+- nsid, a, err := xattrnamespace(attr)
++func Lstat(path string, st *Stat_t) (err error) {
++ var oldStat stat_freebsd11_t
++ if supportsABI(_ino64First) {
++ return fstatat_freebsd12(AT_FDCWD, path, st, AT_SYMLINK_NOFOLLOW)
++ }
++ err = lstat(path, &oldStat)
+ if err != nil {
+- return -1, err
++ return err
+ }
+
+- return ExtattrGetFd(fd, nsid, a, uintptr(d), destsize)
++ st.convertFrom(&oldStat)
++ return nil
+ }
+
+-func Lgetxattr(link string, attr string, dest []byte) (sz int, err error) {
+- d := initxattrdest(dest, 0)
+- destsize := len(dest)
+-
+- nsid, a, err := xattrnamespace(attr)
++func Fstat(fd int, st *Stat_t) (err error) {
++ var oldStat stat_freebsd11_t
++ if supportsABI(_ino64First) {
++ return fstat_freebsd12(fd, st)
++ }
++ err = fstat(fd, &oldStat)
+ if err != nil {
+- return -1, err
++ return err
+ }
+
+- return ExtattrGetLink(link, nsid, a, uintptr(d), destsize)
++ st.convertFrom(&oldStat)
++ return nil
+ }
+
+-// flags are unused on FreeBSD
+-
+-func Fsetxattr(fd int, attr string, data []byte, flags int) (err error) {
+- d := unsafe.Pointer(&data[0])
+- datasiz := len(data)
+-
+- nsid, a, err := xattrnamespace(attr)
++func Fstatat(fd int, path string, st *Stat_t, flags int) (err error) {
++ var oldStat stat_freebsd11_t
++ if supportsABI(_ino64First) {
++ return fstatat_freebsd12(fd, path, st, flags)
++ }
++ err = fstatat(fd, path, &oldStat, flags)
+ if err != nil {
+- return
++ return err
+ }
+
+- _, err = ExtattrSetFd(fd, nsid, a, uintptr(d), datasiz)
+- return
++ st.convertFrom(&oldStat)
++ return nil
+ }
+
+-func Setxattr(file string, attr string, data []byte, flags int) (err error) {
+- d := unsafe.Pointer(&data[0])
+- datasiz := len(data)
+-
+- nsid, a, err := xattrnamespace(attr)
++func Statfs(path string, st *Statfs_t) (err error) {
++ var oldStatfs statfs_freebsd11_t
++ if supportsABI(_ino64First) {
++ return statfs_freebsd12(path, st)
++ }
++ err = statfs(path, &oldStatfs)
+ if err != nil {
+- return
++ return err
+ }
+
+- _, err = ExtattrSetFile(file, nsid, a, uintptr(d), datasiz)
+- return
++ st.convertFrom(&oldStatfs)
++ return nil
+ }
+
+-func Lsetxattr(link string, attr string, data []byte, flags int) (err error) {
+- d := unsafe.Pointer(&data[0])
+- datasiz := len(data)
+-
+- nsid, a, err := xattrnamespace(attr)
++func Fstatfs(fd int, st *Statfs_t) (err error) {
++ var oldStatfs statfs_freebsd11_t
++ if supportsABI(_ino64First) {
++ return fstatfs_freebsd12(fd, st)
++ }
++ err = fstatfs(fd, &oldStatfs)
+ if err != nil {
+- return
++ return err
+ }
+
+- _, err = ExtattrSetLink(link, nsid, a, uintptr(d), datasiz)
+- return
++ st.convertFrom(&oldStatfs)
++ return nil
+ }
+
+-func Removexattr(file string, attr string) (err error) {
+- nsid, a, err := xattrnamespace(attr)
+- if err != nil {
++func Getdents(fd int, buf []byte) (n int, err error) {
++ return Getdirentries(fd, buf, nil)
++}
++
++func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
++ if supportsABI(_ino64First) {
++ if basep == nil || unsafe.Sizeof(*basep) == 8 {
++ return getdirentries_freebsd12(fd, buf, (*uint64)(unsafe.Pointer(basep)))
++ }
++ // The freebsd12 syscall needs a 64-bit base. On 32-bit machines
++ // we can't just use the basep passed in. See #32498.
++ var base uint64 = uint64(*basep)
++ n, err = getdirentries_freebsd12(fd, buf, &base)
++ *basep = uintptr(base)
++ if base>>32 != 0 {
++ // We can't stuff the base back into a uintptr, so any
++ // future calls would be suspect. Generate an error.
++ // EIO is allowed by getdirentries.
++ err = EIO
++ }
+ return
+ }
+
+- err = ExtattrDeleteFile(file, nsid, a)
++ // The old syscall entries are smaller than the new. Use 1/4 of the original
++ // buffer size rounded up to DIRBLKSIZ (see /usr/src/lib/libc/sys/getdirentries.c).
++ oldBufLen := roundup(len(buf)/4, _dirblksiz)
++ oldBuf := make([]byte, oldBufLen)
++ n, err = getdirentries(fd, oldBuf, basep)
++ if err == nil && n > 0 {
++ n = convertFromDirents11(buf, oldBuf[:n])
++ }
+ return
+ }
+
+-func Fremovexattr(fd int, attr string) (err error) {
+- nsid, a, err := xattrnamespace(attr)
+- if err != nil {
+- return
++func Mknod(path string, mode uint32, dev uint64) (err error) {
++ var oldDev int
++ if supportsABI(_ino64First) {
++ return mknodat_freebsd12(AT_FDCWD, path, mode, dev)
+ }
+-
+- err = ExtattrDeleteFd(fd, nsid, a)
+- return
++ oldDev = int(dev)
++ return mknod(path, mode, oldDev)
+ }
+
+-func Lremovexattr(link string, attr string) (err error) {
+- nsid, a, err := xattrnamespace(attr)
+- if err != nil {
+- return
++func Mknodat(fd int, path string, mode uint32, dev uint64) (err error) {
++ var oldDev int
++ if supportsABI(_ino64First) {
++ return mknodat_freebsd12(fd, path, mode, dev)
+ }
++ oldDev = int(dev)
++ return mknodat(fd, path, mode, oldDev)
++}
+
+- err = ExtattrDeleteLink(link, nsid, a)
+- return
++// round x to the nearest multiple of y, larger or equal to x.
++//
++// from /usr/include/sys/param.h Macros for counting and rounding.
++// #define roundup(x, y) ((((x)+((y)-1))/(y))*(y))
++func roundup(x, y int) int {
++ return ((x + y - 1) / y) * y
+ }
+
+-func Listxattr(file string, dest []byte) (sz int, err error) {
+- d := initxattrdest(dest, 0)
+- destsiz := len(dest)
+-
+- // FreeBSD won't allow you to list xattrs from multiple namespaces
+- s := 0
+- var e error
+- for _, nsid := range [...]int{EXTATTR_NAMESPACE_USER, EXTATTR_NAMESPACE_SYSTEM} {
+- stmp, e := ExtattrListFile(file, nsid, uintptr(d), destsiz)
+-
+- /* Errors accessing system attrs are ignored so that
+- * we can implement the Linux-like behavior of omitting errors that
+- * we don't have read permissions on
+- *
+- * Linux will still error if we ask for user attributes on a file that
+- * we don't have read permissions on, so don't ignore those errors
+- */
+- if e != nil && e == EPERM && nsid != EXTATTR_NAMESPACE_USER {
+- e = nil
+- continue
+- } else if e != nil {
+- return s, e
+- }
++func (s *Stat_t) convertFrom(old *stat_freebsd11_t) {
++ *s = Stat_t{
++ Dev: uint64(old.Dev),
++ Ino: uint64(old.Ino),
++ Nlink: uint64(old.Nlink),
++ Mode: old.Mode,
++ Uid: old.Uid,
++ Gid: old.Gid,
++ Rdev: uint64(old.Rdev),
++ Atim: old.Atim,
++ Mtim: old.Mtim,
++ Ctim: old.Ctim,
++ Btim: old.Btim,
++ Size: old.Size,
++ Blocks: old.Blocks,
++ Blksize: old.Blksize,
++ Flags: old.Flags,
++ Gen: uint64(old.Gen),
++ }
++}
+
+- s += stmp
+- destsiz -= s
+- if destsiz < 0 {
+- destsiz = 0
+- }
+- d = initxattrdest(dest, s)
++func (s *Statfs_t) convertFrom(old *statfs_freebsd11_t) {
++ *s = Statfs_t{
++ Version: _statfsVersion,
++ Type: old.Type,
++ Flags: old.Flags,
++ Bsize: old.Bsize,
++ Iosize: old.Iosize,
++ Blocks: old.Blocks,
++ Bfree: old.Bfree,
++ Bavail: old.Bavail,
++ Files: old.Files,
++ Ffree: old.Ffree,
++ Syncwrites: old.Syncwrites,
++ Asyncwrites: old.Asyncwrites,
++ Syncreads: old.Syncreads,
++ Asyncreads: old.Asyncreads,
++ // Spare
++ Namemax: old.Namemax,
++ Owner: old.Owner,
++ Fsid: old.Fsid,
++ // Charspare
++ // Fstypename
++ // Mntfromname
++ // Mntonname
+ }
+
+- return s, e
++ sl := old.Fstypename[:]
++ n := clen(*(*[]byte)(unsafe.Pointer(&sl)))
++ copy(s.Fstypename[:], old.Fstypename[:n])
++
++ sl = old.Mntfromname[:]
++ n = clen(*(*[]byte)(unsafe.Pointer(&sl)))
++ copy(s.Mntfromname[:], old.Mntfromname[:n])
++
++ sl = old.Mntonname[:]
++ n = clen(*(*[]byte)(unsafe.Pointer(&sl)))
++ copy(s.Mntonname[:], old.Mntonname[:n])
+ }
+
+-func Flistxattr(fd int, dest []byte) (sz int, err error) {
+- d := initxattrdest(dest, 0)
+- destsiz := len(dest)
++func convertFromDirents11(buf []byte, old []byte) int {
++ const (
++ fixedSize = int(unsafe.Offsetof(Dirent{}.Name))
++ oldFixedSize = int(unsafe.Offsetof(dirent_freebsd11{}.Name))
++ )
++
++ dstPos := 0
++ srcPos := 0
++ for dstPos+fixedSize < len(buf) && srcPos+oldFixedSize < len(old) {
++ var dstDirent Dirent
++ var srcDirent dirent_freebsd11
+
+- s := 0
+- var e error
+- for _, nsid := range [...]int{EXTATTR_NAMESPACE_USER, EXTATTR_NAMESPACE_SYSTEM} {
+- stmp, e := ExtattrListFd(fd, nsid, uintptr(d), destsiz)
+- if e != nil && e == EPERM && nsid != EXTATTR_NAMESPACE_USER {
+- e = nil
+- continue
+- } else if e != nil {
+- return s, e
++ // If multiple direntries are written, sometimes when we reach the final one,
++ // we may have cap of old less than size of dirent_freebsd11.
++ copy((*[unsafe.Sizeof(srcDirent)]byte)(unsafe.Pointer(&srcDirent))[:], old[srcPos:])
++
++ reclen := roundup(fixedSize+int(srcDirent.Namlen)+1, 8)
++ if dstPos+reclen > len(buf) {
++ break
+ }
+
+- s += stmp
+- destsiz -= s
+- if destsiz < 0 {
+- destsiz = 0
++ dstDirent.Fileno = uint64(srcDirent.Fileno)
++ dstDirent.Off = 0
++ dstDirent.Reclen = uint16(reclen)
++ dstDirent.Type = srcDirent.Type
++ dstDirent.Pad0 = 0
++ dstDirent.Namlen = uint16(srcDirent.Namlen)
++ dstDirent.Pad1 = 0
++
++ copy(dstDirent.Name[:], srcDirent.Name[:srcDirent.Namlen])
++ copy(buf[dstPos:], (*[unsafe.Sizeof(dstDirent)]byte)(unsafe.Pointer(&dstDirent))[:])
++ padding := buf[dstPos+fixedSize+int(dstDirent.Namlen) : dstPos+reclen]
++ for i := range padding {
++ padding[i] = 0
+ }
+- d = initxattrdest(dest, s)
++
++ dstPos += int(dstDirent.Reclen)
++ srcPos += int(srcDirent.Reclen)
+ }
+
+- return s, e
++ return dstPos
+ }
+
+-func Llistxattr(link string, dest []byte) (sz int, err error) {
+- d := initxattrdest(dest, 0)
+- destsiz := len(dest)
++func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
++ if raceenabled {
++ raceReleaseMerge(unsafe.Pointer(&ioSync))
++ }
++ return sendfile(outfd, infd, offset, count)
++}
+
+- s := 0
+- var e error
+- for _, nsid := range [...]int{EXTATTR_NAMESPACE_USER, EXTATTR_NAMESPACE_SYSTEM} {
+- stmp, e := ExtattrListLink(link, nsid, uintptr(d), destsiz)
+- if e != nil && e == EPERM && nsid != EXTATTR_NAMESPACE_USER {
+- e = nil
+- continue
+- } else if e != nil {
+- return s, e
+- }
++//sys ptrace(request int, pid int, addr uintptr, data int) (err error)
+
+- s += stmp
+- destsiz -= s
+- if destsiz < 0 {
+- destsiz = 0
+- }
+- d = initxattrdest(dest, s)
+- }
++func PtraceAttach(pid int) (err error) {
++ return ptrace(PTRACE_ATTACH, pid, 0, 0)
++}
+
+- return s, e
++func PtraceCont(pid int, signal int) (err error) {
++ return ptrace(PTRACE_CONT, pid, 1, signal)
+ }
+
+-//sys ioctl(fd int, req uint, arg uintptr) (err error)
++func PtraceDetach(pid int) (err error) {
++ return ptrace(PTRACE_DETACH, pid, 1, 0)
++}
++
++func PtraceGetFpRegs(pid int, fpregsout *FpReg) (err error) {
++ return ptrace(PTRACE_GETFPREGS, pid, uintptr(unsafe.Pointer(fpregsout)), 0)
++}
+
+-// ioctl itself should not be exposed directly, but additional get/set
+-// functions for specific types are permissible.
++func PtraceGetRegs(pid int, regsout *Reg) (err error) {
++ return ptrace(PTRACE_GETREGS, pid, uintptr(unsafe.Pointer(regsout)), 0)
++}
++
++func PtraceLwpEvents(pid int, enable int) (err error) {
++ return ptrace(PTRACE_LWPEVENTS, pid, 0, enable)
++}
++
++func PtraceLwpInfo(pid int, info uintptr) (err error) {
++ return ptrace(PTRACE_LWPINFO, pid, info, int(unsafe.Sizeof(PtraceLwpInfoStruct{})))
++}
+
+-// IoctlSetInt performs an ioctl operation which sets an integer value
+-// on fd, using the specified request number.
+-func IoctlSetInt(fd int, req uint, value int) error {
+- return ioctl(fd, req, uintptr(value))
++func PtracePeekData(pid int, addr uintptr, out []byte) (count int, err error) {
++ return PtraceIO(PIOD_READ_D, pid, addr, out, SizeofLong)
+ }
+
+-func IoctlSetWinsize(fd int, req uint, value *Winsize) error {
+- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
++func PtracePeekText(pid int, addr uintptr, out []byte) (count int, err error) {
++ return PtraceIO(PIOD_READ_I, pid, addr, out, SizeofLong)
+ }
+
+-func IoctlSetTermios(fd int, req uint, value *Termios) error {
+- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
++func PtracePokeData(pid int, addr uintptr, data []byte) (count int, err error) {
++ return PtraceIO(PIOD_WRITE_D, pid, addr, data, SizeofLong)
+ }
+
+-// IoctlGetInt performs an ioctl operation which gets an integer value
+-// from fd, using the specified request number.
+-func IoctlGetInt(fd int, req uint) (int, error) {
+- var value int
+- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
+- return value, err
++func PtracePokeText(pid int, addr uintptr, data []byte) (count int, err error) {
++ return PtraceIO(PIOD_WRITE_I, pid, addr, data, SizeofLong)
+ }
+
+-func IoctlGetWinsize(fd int, req uint) (*Winsize, error) {
+- var value Winsize
+- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
+- return &value, err
++func PtraceSetRegs(pid int, regs *Reg) (err error) {
++ return ptrace(PTRACE_SETREGS, pid, uintptr(unsafe.Pointer(regs)), 0)
+ }
+
+-func IoctlGetTermios(fd int, req uint) (*Termios, error) {
+- var value Termios
+- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
+- return &value, err
++func PtraceSingleStep(pid int) (err error) {
++ return ptrace(PTRACE_SINGLESTEP, pid, 1, 0)
+ }
+
+ /*
+@@ -430,11 +596,16 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
+ //sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
+ //sys Flock(fd int, how int) (err error)
+ //sys Fpathconf(fd int, name int) (val int, err error)
+-//sys Fstat(fd int, stat *Stat_t) (err error)
+-//sys Fstatfs(fd int, stat *Statfs_t) (err error)
++//sys fstat(fd int, stat *stat_freebsd11_t) (err error)
++//sys fstat_freebsd12(fd int, stat *Stat_t) (err error)
++//sys fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error)
++//sys fstatat_freebsd12(fd int, path string, stat *Stat_t, flags int) (err error)
++//sys fstatfs(fd int, stat *statfs_freebsd11_t) (err error)
++//sys fstatfs_freebsd12(fd int, stat *Statfs_t) (err error)
+ //sys Fsync(fd int) (err error)
+ //sys Ftruncate(fd int, length int64) (err error)
+-//sys Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error)
++//sys getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error)
++//sys getdirentries_freebsd12(fd int, buf []byte, basep *uint64) (n int, err error)
+ //sys Getdtablesize() (size int)
+ //sysnb Getegid() (egid int)
+ //sysnb Geteuid() (uid int)
+@@ -456,11 +627,13 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
+ //sys Link(path string, link string) (err error)
+ //sys Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error)
+ //sys Listen(s int, backlog int) (err error)
+-//sys Lstat(path string, stat *Stat_t) (err error)
++//sys lstat(path string, stat *stat_freebsd11_t) (err error)
+ //sys Mkdir(path string, mode uint32) (err error)
+ //sys Mkdirat(dirfd int, path string, mode uint32) (err error)
+ //sys Mkfifo(path string, mode uint32) (err error)
+-//sys Mknod(path string, mode uint32, dev int) (err error)
++//sys mknod(path string, mode uint32, dev int) (err error)
++//sys mknodat(fd int, path string, mode uint32, dev int) (err error)
++//sys mknodat_freebsd12(fd int, path string, mode uint32, dev uint64) (err error)
+ //sys Nanosleep(time *Timespec, leftover *Timespec) (err error)
+ //sys Open(path string, mode int, perm uint32) (fd int, err error)
+ //sys Openat(fdat int, path string, mode int, perm uint32) (fd int, err error)
+@@ -475,7 +648,7 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
+ //sys Revoke(path string) (err error)
+ //sys Rmdir(path string) (err error)
+ //sys Seek(fd int, offset int64, whence int) (newoffset int64, err error) = SYS_LSEEK
+-//sys Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error)
++//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
+ //sysnb Setegid(egid int) (err error)
+ //sysnb Seteuid(euid int) (err error)
+ //sysnb Setgid(gid int) (err error)
+@@ -490,8 +663,9 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
+ //sysnb Setsid() (pid int, err error)
+ //sysnb Settimeofday(tp *Timeval) (err error)
+ //sysnb Setuid(uid int) (err error)
+-//sys Stat(path string, stat *Stat_t) (err error)
+-//sys Statfs(path string, stat *Statfs_t) (err error)
++//sys stat(path string, stat *stat_freebsd11_t) (err error)
++//sys statfs(path string, stat *statfs_freebsd11_t) (err error)
++//sys statfs_freebsd12(path string, stat *Statfs_t) (err error)
+ //sys Symlink(path string, link string) (err error)
+ //sys Symlinkat(oldpath string, newdirfd int, newpath string) (err error)
+ //sys Sync() (err error)
+@@ -546,22 +720,14 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
+ // Kqueue_portset
+ // Getattrlist
+ // Setattrlist
++// Getdents
+ // Getdirentriesattr
+ // Searchfs
+ // Delete
+ // Copyfile
+-// Poll
+ // Watchevent
+ // Waitevent
+ // Modwatch
+-// Getxattr
+-// Fgetxattr
+-// Setxattr
+-// Fsetxattr
+-// Removexattr
+-// Fremovexattr
+-// Listxattr
+-// Flistxattr
+ // Fsctl
+ // Initgroups
+ // Posix_spawn
+diff --git a/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go b/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go
+index 6a0cd804..72a506dd 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go
++++ b/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go
+@@ -11,21 +11,12 @@ import (
+ "unsafe"
+ )
+
+-func Getpagesize() int { return 4096 }
+-
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = int32(nsec / 1e9)
+- ts.Nsec = int32(nsec % 1e9)
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: int32(sec), Nsec: int32(nsec)}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = int32(nsec % 1e9 / 1e3)
+- tv.Sec = int32(nsec / 1e9)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: int32(sec), Usec: int32(usec)}
+ }
+
+ func SetKevent(k *Kevent_t, fd, mode, flags int) {
+@@ -42,6 +33,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = int32(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint32(length)
+ }
+@@ -59,3 +54,13 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+ }
+
+ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
++
++func PtraceGetFsBase(pid int, fsbase *int64) (err error) {
++ return ptrace(PTRACE_GETFSBASE, pid, uintptr(unsafe.Pointer(fsbase)), 0)
++}
++
++func PtraceIO(req int, pid int, addr uintptr, out []byte, countin int) (count int, err error) {
++ ioDesc := PtraceIoDesc{Op: int32(req), Offs: (*byte)(unsafe.Pointer(addr)), Addr: (*byte)(unsafe.Pointer(&out[0])), Len: uint32(countin)}
++ err = ptrace(PTRACE_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0)
++ return int(ioDesc.Len), err
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go
+index e142540e..d5e376ac 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go
+@@ -11,21 +11,12 @@ import (
+ "unsafe"
+ )
+
+-func Getpagesize() int { return 4096 }
+-
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = nsec / 1e9
+- ts.Nsec = nsec % 1e9
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = nsec % 1e9 / 1e3
+- tv.Sec = int64(nsec / 1e9)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: usec}
+ }
+
+ func SetKevent(k *Kevent_t, fd, mode, flags int) {
+@@ -42,6 +33,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = int32(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint32(length)
+ }
+@@ -59,3 +54,13 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+ }
+
+ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
++
++func PtraceGetFsBase(pid int, fsbase *int64) (err error) {
++ return ptrace(PTRACE_GETFSBASE, pid, uintptr(unsafe.Pointer(fsbase)), 0)
++}
++
++func PtraceIO(req int, pid int, addr uintptr, out []byte, countin int) (count int, err error) {
++ ioDesc := PtraceIoDesc{Op: int32(req), Offs: (*byte)(unsafe.Pointer(addr)), Addr: (*byte)(unsafe.Pointer(&out[0])), Len: uint64(countin)}
++ err = ptrace(PTRACE_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0)
++ return int(ioDesc.Len), err
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go b/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go
+index 5504cb12..4ea45bce 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go
++++ b/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go
+@@ -11,21 +11,12 @@ import (
+ "unsafe"
+ )
+
+-func Getpagesize() int { return 4096 }
+-
+-func TimespecToNsec(ts Timespec) int64 { return ts.Sec*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = nsec / 1e9
+- ts.Nsec = int32(nsec % 1e9)
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: int32(nsec)}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = int32(nsec % 1e9 / 1e3)
+- tv.Sec = nsec / 1e9
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: int32(usec)}
+ }
+
+ func SetKevent(k *Kevent_t, fd, mode, flags int) {
+@@ -42,6 +33,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = int32(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint32(length)
+ }
+@@ -59,3 +54,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+ }
+
+ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
++
++func PtraceIO(req int, pid int, addr uintptr, out []byte, countin int) (count int, err error) {
++ ioDesc := PtraceIoDesc{Op: int32(req), Offs: (*byte)(unsafe.Pointer(addr)), Addr: (*byte)(unsafe.Pointer(&out[0])), Len: uint32(countin)}
++ err = ptrace(PTRACE_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0)
++ return int(ioDesc.Len), err
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go
+similarity index 59%
+copy from vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go
+copy to vendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go
+index da7cb798..aa5326db 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go
++++ b/vendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go
+@@ -1,8 +1,8 @@
+-// Copyright 2009 The Go Authors. All rights reserved.
++// Copyright 2018 The Go Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+-// +build amd64,dragonfly
++// +build arm64,freebsd
+
+ package unix
+
+@@ -11,21 +11,12 @@ import (
+ "unsafe"
+ )
+
+-func Getpagesize() int { return 4096 }
+-
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = nsec / 1e9
+- ts.Nsec = nsec % 1e9
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = nsec % 1e9 / 1e3
+- tv.Sec = int64(nsec / 1e9)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: usec}
+ }
+
+ func SetKevent(k *Kevent_t, fd, mode, flags int) {
+@@ -42,6 +33,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = int32(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint32(length)
+ }
+@@ -59,3 +54,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+ }
+
+ func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
++
++func PtraceIO(req int, pid int, addr uintptr, out []byte, countin int) (count int, err error) {
++ ioDesc := PtraceIoDesc{Op: int32(req), Offs: (*byte)(unsafe.Pointer(addr)), Addr: (*byte)(unsafe.Pointer(&out[0])), Len: uint64(countin)}
++ err = ptrace(PTRACE_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0)
++ return int(ioDesc.Len), err
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_illumos.go b/vendor/golang.org/x/sys/unix/syscall_illumos.go
+new file mode 100644
+index 00000000..99e62dcd
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/syscall_illumos.go
+@@ -0,0 +1,57 @@
++// Copyright 2009 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// illumos system calls not present on Solaris.
++
++// +build amd64,illumos
++
++package unix
++
++import "unsafe"
++
++func bytes2iovec(bs [][]byte) []Iovec {
++ iovecs := make([]Iovec, len(bs))
++ for i, b := range bs {
++ iovecs[i].SetLen(len(b))
++ if len(b) > 0 {
++ // somehow Iovec.Base on illumos is (*int8), not (*byte)
++ iovecs[i].Base = (*int8)(unsafe.Pointer(&b[0]))
++ } else {
++ iovecs[i].Base = (*int8)(unsafe.Pointer(&_zero))
++ }
++ }
++ return iovecs
++}
++
++//sys readv(fd int, iovs []Iovec) (n int, err error)
++
++func Readv(fd int, iovs [][]byte) (n int, err error) {
++ iovecs := bytes2iovec(iovs)
++ n, err = readv(fd, iovecs)
++ return n, err
++}
++
++//sys preadv(fd int, iovs []Iovec, off int64) (n int, err error)
++
++func Preadv(fd int, iovs [][]byte, off int64) (n int, err error) {
++ iovecs := bytes2iovec(iovs)
++ n, err = preadv(fd, iovecs, off)
++ return n, err
++}
++
++//sys writev(fd int, iovs []Iovec) (n int, err error)
++
++func Writev(fd int, iovs [][]byte) (n int, err error) {
++ iovecs := bytes2iovec(iovs)
++ n, err = writev(fd, iovecs)
++ return n, err
++}
++
++//sys pwritev(fd int, iovs []Iovec, off int64) (n int, err error)
++
++func Pwritev(fd int, iovs [][]byte, off int64) (n int, err error) {
++ iovecs := bytes2iovec(iovs)
++ n, err = pwritev(fd, iovecs, off)
++ return n, err
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_linux.go b/vendor/golang.org/x/sys/unix/syscall_linux.go
+index 1b7d59d8..bbe1abbc 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_linux.go
++++ b/vendor/golang.org/x/sys/unix/syscall_linux.go
+@@ -12,6 +12,8 @@
+ package unix
+
+ import (
++ "encoding/binary"
++ "runtime"
+ "syscall"
+ "unsafe"
+ )
+@@ -36,6 +38,20 @@ func Creat(path string, mode uint32) (fd int, err error) {
+ return Open(path, O_CREAT|O_WRONLY|O_TRUNC, mode)
+ }
+
++//sys FanotifyInit(flags uint, event_f_flags uint) (fd int, err error)
++//sys fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error)
++
++func FanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname string) (err error) {
++ if pathname == "" {
++ return fanotifyMark(fd, flags, mask, dirFd, nil)
++ }
++ p, err := BytePtrFromString(pathname)
++ if err != nil {
++ return err
++ }
++ return fanotifyMark(fd, flags, mask, dirFd, p)
++}
++
+ //sys fchmodat(dirfd int, path string, mode uint32) (err error)
+
+ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
+@@ -55,37 +71,41 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
+ // ioctl itself should not be exposed directly, but additional get/set
+ // functions for specific types are permissible.
+
+-// IoctlSetInt performs an ioctl operation which sets an integer value
+-// on fd, using the specified request number.
+-func IoctlSetInt(fd int, req uint, value int) error {
+- return ioctl(fd, req, uintptr(value))
++// IoctlRetInt performs an ioctl operation specified by req on a device
++// associated with opened file descriptor fd, and returns a non-negative
++// integer that is returned by the ioctl syscall.
++func IoctlRetInt(fd int, req uint) (int, error) {
++ ret, _, err := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), 0)
++ if err != 0 {
++ return 0, err
++ }
++ return int(ret), nil
+ }
+
+-func IoctlSetWinsize(fd int, req uint, value *Winsize) error {
+- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
++// IoctlSetPointerInt performs an ioctl operation which sets an
++// integer value on fd, using the specified request number. The ioctl
++// argument is called with a pointer to the integer value, rather than
++// passing the integer value directly.
++func IoctlSetPointerInt(fd int, req uint, value int) error {
++ v := int32(value)
++ return ioctl(fd, req, uintptr(unsafe.Pointer(&v)))
+ }
+
+-func IoctlSetTermios(fd int, req uint, value *Termios) error {
+- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
++func IoctlSetRTCTime(fd int, value *RTCTime) error {
++ err := ioctl(fd, RTC_SET_TIME, uintptr(unsafe.Pointer(value)))
++ runtime.KeepAlive(value)
++ return err
+ }
+
+-// IoctlGetInt performs an ioctl operation which gets an integer value
+-// from fd, using the specified request number.
+-func IoctlGetInt(fd int, req uint) (int, error) {
+- var value int
++func IoctlGetUint32(fd int, req uint) (uint32, error) {
++ var value uint32
+ err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
+ return value, err
+ }
+
+-func IoctlGetWinsize(fd int, req uint) (*Winsize, error) {
+- var value Winsize
+- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
+- return &value, err
+-}
+-
+-func IoctlGetTermios(fd int, req uint) (*Termios, error) {
+- var value Termios
+- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
++func IoctlGetRTCTime(fd int) (*RTCTime, error) {
++ var value RTCTime
++ err := ioctl(fd, RTC_RD_TIME, uintptr(unsafe.Pointer(&value)))
+ return &value, err
+ }
+
+@@ -148,8 +168,6 @@ func Unlink(path string) error {
+
+ //sys Unlinkat(dirfd int, path string, flags int) (err error)
+
+-//sys utimes(path string, times *[2]Timeval) (err error)
+-
+ func Utimes(path string, tv []Timeval) error {
+ if tv == nil {
+ err := utimensat(AT_FDCWD, path, nil, 0)
+@@ -207,20 +225,14 @@ func UtimesNanoAt(dirfd int, path string, ts []Timespec, flags int) error {
+ return utimensat(dirfd, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), flags)
+ }
+
+-//sys futimesat(dirfd int, path *byte, times *[2]Timeval) (err error)
+-
+ func Futimesat(dirfd int, path string, tv []Timeval) error {
+- pathp, err := BytePtrFromString(path)
+- if err != nil {
+- return err
+- }
+ if tv == nil {
+- return futimesat(dirfd, pathp, nil)
++ return futimesat(dirfd, path, nil)
+ }
+ if len(tv) != 2 {
+ return EINVAL
+ }
+- return futimesat(dirfd, pathp, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
++ return futimesat(dirfd, path, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
+ }
+
+ func Futimes(fd int, tv []Timeval) (err error) {
+@@ -255,7 +267,7 @@ func Getgroups() (gids []int, err error) {
+ return nil, nil
+ }
+
+- // Sanity check group count. Max is 1<<16 on Linux.
++ // Sanity check group count. Max is 1<<16 on Linux.
+ if n < 0 || n > 1<<20 {
+ return nil, EINVAL
+ }
+@@ -290,8 +302,8 @@ type WaitStatus uint32
+ // 0x7F (stopped), or a signal number that caused an exit.
+ // The 0x80 bit is whether there was a core dump.
+ // An extra number (exit code, signal causing a stop)
+-// is in the high bits. At least that's the idea.
+-// There are various irregularities. For example, the
++// is in the high bits. At least that's the idea.
++// There are various irregularities. For example, the
+ // "continued" status is 0xFFFF, distinguishing itself
+ // from stopped via the core dump bit.
+
+@@ -413,6 +425,7 @@ func (sa *SockaddrUnix) sockaddr() (unsafe.Pointer, _Socklen, error) {
+ return unsafe.Pointer(&sa.raw), sl, nil
+ }
+
++// SockaddrLinklayer implements the Sockaddr interface for AF_PACKET type sockets.
+ type SockaddrLinklayer struct {
+ Protocol uint16
+ Ifindex int
+@@ -439,6 +452,7 @@ func (sa *SockaddrLinklayer) sockaddr() (unsafe.Pointer, _Socklen, error) {
+ return unsafe.Pointer(&sa.raw), SizeofSockaddrLinklayer, nil
+ }
+
++// SockaddrNetlink implements the Sockaddr interface for AF_NETLINK type sockets.
+ type SockaddrNetlink struct {
+ Family uint16
+ Pad uint16
+@@ -455,6 +469,8 @@ func (sa *SockaddrNetlink) sockaddr() (unsafe.Pointer, _Socklen, error) {
+ return unsafe.Pointer(&sa.raw), SizeofSockaddrNetlink, nil
+ }
+
++// SockaddrHCI implements the Sockaddr interface for AF_BLUETOOTH type sockets
++// using the HCI protocol.
+ type SockaddrHCI struct {
+ Dev uint16
+ Channel uint16
+@@ -468,6 +484,72 @@ func (sa *SockaddrHCI) sockaddr() (unsafe.Pointer, _Socklen, error) {
+ return unsafe.Pointer(&sa.raw), SizeofSockaddrHCI, nil
+ }
+
++// SockaddrL2 implements the Sockaddr interface for AF_BLUETOOTH type sockets
++// using the L2CAP protocol.
++type SockaddrL2 struct {
++ PSM uint16
++ CID uint16
++ Addr [6]uint8
++ AddrType uint8
++ raw RawSockaddrL2
++}
++
++func (sa *SockaddrL2) sockaddr() (unsafe.Pointer, _Socklen, error) {
++ sa.raw.Family = AF_BLUETOOTH
++ psm := (*[2]byte)(unsafe.Pointer(&sa.raw.Psm))
++ psm[0] = byte(sa.PSM)
++ psm[1] = byte(sa.PSM >> 8)
++ for i := 0; i < len(sa.Addr); i++ {
++ sa.raw.Bdaddr[i] = sa.Addr[len(sa.Addr)-1-i]
++ }
++ cid := (*[2]byte)(unsafe.Pointer(&sa.raw.Cid))
++ cid[0] = byte(sa.CID)
++ cid[1] = byte(sa.CID >> 8)
++ sa.raw.Bdaddr_type = sa.AddrType
++ return unsafe.Pointer(&sa.raw), SizeofSockaddrL2, nil
++}
++
++// SockaddrRFCOMM implements the Sockaddr interface for AF_BLUETOOTH type sockets
++// using the RFCOMM protocol.
++//
++// Server example:
++//
++// fd, _ := Socket(AF_BLUETOOTH, SOCK_STREAM, BTPROTO_RFCOMM)
++// _ = unix.Bind(fd, &unix.SockaddrRFCOMM{
++// Channel: 1,
++// Addr: [6]uint8{0, 0, 0, 0, 0, 0}, // BDADDR_ANY or 00:00:00:00:00:00
++// })
++// _ = Listen(fd, 1)
++// nfd, sa, _ := Accept(fd)
++// fmt.Printf("conn addr=%v fd=%d", sa.(*unix.SockaddrRFCOMM).Addr, nfd)
++// Read(nfd, buf)
++//
++// Client example:
++//
++// fd, _ := Socket(AF_BLUETOOTH, SOCK_STREAM, BTPROTO_RFCOMM)
++// _ = Connect(fd, &SockaddrRFCOMM{
++// Channel: 1,
++// Addr: [6]byte{0x11, 0x22, 0x33, 0xaa, 0xbb, 0xcc}, // CC:BB:AA:33:22:11
++// })
++// Write(fd, []byte(`hello`))
++type SockaddrRFCOMM struct {
++ // Addr represents a bluetooth address, byte ordering is little-endian.
++ Addr [6]uint8
++
++ // Channel is a designated bluetooth channel, only 1-30 are available for use.
++ // Since Linux 2.6.7 and further zero value is the first available channel.
++ Channel uint8
++
++ raw RawSockaddrRFCOMM
++}
++
++func (sa *SockaddrRFCOMM) sockaddr() (unsafe.Pointer, _Socklen, error) {
++ sa.raw.Family = AF_BLUETOOTH
++ sa.raw.Channel = sa.Channel
++ sa.raw.Bdaddr = sa.Addr
++ return unsafe.Pointer(&sa.raw), SizeofSockaddrRFCOMM, nil
++}
++
+ // SockaddrCAN implements the Sockaddr interface for AF_CAN type sockets.
+ // The RxID and TxID fields are used for transport protocol addressing in
+ // (CAN_TP16, CAN_TP20, CAN_MCNET, and CAN_ISOTP), they can be left with
+@@ -630,7 +712,168 @@ func (sa *SockaddrVM) sockaddr() (unsafe.Pointer, _Socklen, error) {
+ return unsafe.Pointer(&sa.raw), SizeofSockaddrVM, nil
+ }
+
+-func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
++type SockaddrXDP struct {
++ Flags uint16
++ Ifindex uint32
++ QueueID uint32
++ SharedUmemFD uint32
++ raw RawSockaddrXDP
++}
++
++func (sa *SockaddrXDP) sockaddr() (unsafe.Pointer, _Socklen, error) {
++ sa.raw.Family = AF_XDP
++ sa.raw.Flags = sa.Flags
++ sa.raw.Ifindex = sa.Ifindex
++ sa.raw.Queue_id = sa.QueueID
++ sa.raw.Shared_umem_fd = sa.SharedUmemFD
++
++ return unsafe.Pointer(&sa.raw), SizeofSockaddrXDP, nil
++}
++
++// This constant mirrors the #define of PX_PROTO_OE in
++// linux/if_pppox.h. We're defining this by hand here instead of
++// autogenerating through mkerrors.sh because including
++// linux/if_pppox.h causes some declaration conflicts with other
++// includes (linux/if_pppox.h includes linux/in.h, which conflicts
++// with netinet/in.h). Given that we only need a single zero constant
++// out of that file, it's cleaner to just define it by hand here.
++const px_proto_oe = 0
++
++type SockaddrPPPoE struct {
++ SID uint16
++ Remote []byte
++ Dev string
++ raw RawSockaddrPPPoX
++}
++
++func (sa *SockaddrPPPoE) sockaddr() (unsafe.Pointer, _Socklen, error) {
++ if len(sa.Remote) != 6 {
++ return nil, 0, EINVAL
++ }
++ if len(sa.Dev) > IFNAMSIZ-1 {
++ return nil, 0, EINVAL
++ }
++
++ *(*uint16)(unsafe.Pointer(&sa.raw[0])) = AF_PPPOX
++ // This next field is in host-endian byte order. We can't use the
++ // same unsafe pointer cast as above, because this value is not
++ // 32-bit aligned and some architectures don't allow unaligned
++ // access.
++ //
++ // However, the value of px_proto_oe is 0, so we can use
++ // encoding/binary helpers to write the bytes without worrying
++ // about the ordering.
++ binary.BigEndian.PutUint32(sa.raw[2:6], px_proto_oe)
++ // This field is deliberately big-endian, unlike the previous
++ // one. The kernel expects SID to be in network byte order.
++ binary.BigEndian.PutUint16(sa.raw[6:8], sa.SID)
++ copy(sa.raw[8:14], sa.Remote)
++ for i := 14; i < 14+IFNAMSIZ; i++ {
++ sa.raw[i] = 0
++ }
++ copy(sa.raw[14:], sa.Dev)
++ return unsafe.Pointer(&sa.raw), SizeofSockaddrPPPoX, nil
++}
++
++// SockaddrTIPC implements the Sockaddr interface for AF_TIPC type sockets.
++// For more information on TIPC, see: http://tipc.sourceforge.net/.
++type SockaddrTIPC struct {
++ // Scope is the publication scopes when binding service/service range.
++ // Should be set to TIPC_CLUSTER_SCOPE or TIPC_NODE_SCOPE.
++ Scope int
++
++ // Addr is the type of address used to manipulate a socket. Addr must be
++ // one of:
++ // - *TIPCSocketAddr: "id" variant in the C addr union
++ // - *TIPCServiceRange: "nameseq" variant in the C addr union
++ // - *TIPCServiceName: "name" variant in the C addr union
++ //
++ // If nil, EINVAL will be returned when the structure is used.
++ Addr TIPCAddr
++
++ raw RawSockaddrTIPC
++}
++
++// TIPCAddr is implemented by types that can be used as an address for
++// SockaddrTIPC. It is only implemented by *TIPCSocketAddr, *TIPCServiceRange,
++// and *TIPCServiceName.
++type TIPCAddr interface {
++ tipcAddrtype() uint8
++ tipcAddr() [12]byte
++}
++
++func (sa *TIPCSocketAddr) tipcAddr() [12]byte {
++ var out [12]byte
++ copy(out[:], (*(*[unsafe.Sizeof(TIPCSocketAddr{})]byte)(unsafe.Pointer(sa)))[:])
++ return out
++}
++
++func (sa *TIPCSocketAddr) tipcAddrtype() uint8 { return TIPC_SOCKET_ADDR }
++
++func (sa *TIPCServiceRange) tipcAddr() [12]byte {
++ var out [12]byte
++ copy(out[:], (*(*[unsafe.Sizeof(TIPCServiceRange{})]byte)(unsafe.Pointer(sa)))[:])
++ return out
++}
++
++func (sa *TIPCServiceRange) tipcAddrtype() uint8 { return TIPC_SERVICE_RANGE }
++
++func (sa *TIPCServiceName) tipcAddr() [12]byte {
++ var out [12]byte
++ copy(out[:], (*(*[unsafe.Sizeof(TIPCServiceName{})]byte)(unsafe.Pointer(sa)))[:])
++ return out
++}
++
++func (sa *TIPCServiceName) tipcAddrtype() uint8 { return TIPC_SERVICE_ADDR }
++
++func (sa *SockaddrTIPC) sockaddr() (unsafe.Pointer, _Socklen, error) {
++ if sa.Addr == nil {
++ return nil, 0, EINVAL
++ }
++
++ sa.raw.Family = AF_TIPC
++ sa.raw.Scope = int8(sa.Scope)
++ sa.raw.Addrtype = sa.Addr.tipcAddrtype()
++ sa.raw.Addr = sa.Addr.tipcAddr()
++
++ return unsafe.Pointer(&sa.raw), SizeofSockaddrTIPC, nil
++}
++
++// SockaddrL2TPIP implements the Sockaddr interface for IPPROTO_L2TP/AF_INET sockets.
++type SockaddrL2TPIP struct {
++ Addr [4]byte
++ ConnId uint32
++ raw RawSockaddrL2TPIP
++}
++
++func (sa *SockaddrL2TPIP) sockaddr() (unsafe.Pointer, _Socklen, error) {
++ sa.raw.Family = AF_INET
++ sa.raw.Conn_id = sa.ConnId
++ for i := 0; i < len(sa.Addr); i++ {
++ sa.raw.Addr[i] = sa.Addr[i]
++ }
++ return unsafe.Pointer(&sa.raw), SizeofSockaddrL2TPIP, nil
++}
++
++// SockaddrL2TPIP6 implements the Sockaddr interface for IPPROTO_L2TP/AF_INET6 sockets.
++type SockaddrL2TPIP6 struct {
++ Addr [16]byte
++ ZoneId uint32
++ ConnId uint32
++ raw RawSockaddrL2TPIP6
++}
++
++func (sa *SockaddrL2TPIP6) sockaddr() (unsafe.Pointer, _Socklen, error) {
++ sa.raw.Family = AF_INET6
++ sa.raw.Conn_id = sa.ConnId
++ sa.raw.Scope_id = sa.ZoneId
++ for i := 0; i < len(sa.Addr); i++ {
++ sa.raw.Addr[i] = sa.Addr[i]
++ }
++ return unsafe.Pointer(&sa.raw), SizeofSockaddrL2TPIP6, nil
++}
++
++func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
+ switch rsa.Addr.Family {
+ case AF_NETLINK:
+ pp := (*RawSockaddrNetlink)(unsafe.Pointer(rsa))
+@@ -675,30 +918,63 @@ func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
+ for n < len(pp.Path) && pp.Path[n] != 0 {
+ n++
+ }
+- bytes := (*[10000]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
++ bytes := (*[len(pp.Path)]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
+ sa.Name = string(bytes)
+ return sa, nil
+
+ case AF_INET:
+- pp := (*RawSockaddrInet4)(unsafe.Pointer(rsa))
+- sa := new(SockaddrInet4)
+- p := (*[2]byte)(unsafe.Pointer(&pp.Port))
+- sa.Port = int(p[0])<<8 + int(p[1])
+- for i := 0; i < len(sa.Addr); i++ {
+- sa.Addr[i] = pp.Addr[i]
++ proto, err := GetsockoptInt(fd, SOL_SOCKET, SO_PROTOCOL)
++ if err != nil {
++ return nil, err
++ }
++
++ switch proto {
++ case IPPROTO_L2TP:
++ pp := (*RawSockaddrL2TPIP)(unsafe.Pointer(rsa))
++ sa := new(SockaddrL2TPIP)
++ sa.ConnId = pp.Conn_id
++ for i := 0; i < len(sa.Addr); i++ {
++ sa.Addr[i] = pp.Addr[i]
++ }
++ return sa, nil
++ default:
++ pp := (*RawSockaddrInet4)(unsafe.Pointer(rsa))
++ sa := new(SockaddrInet4)
++ p := (*[2]byte)(unsafe.Pointer(&pp.Port))
++ sa.Port = int(p[0])<<8 + int(p[1])
++ for i := 0; i < len(sa.Addr); i++ {
++ sa.Addr[i] = pp.Addr[i]
++ }
++ return sa, nil
+ }
+- return sa, nil
+
+ case AF_INET6:
+- pp := (*RawSockaddrInet6)(unsafe.Pointer(rsa))
+- sa := new(SockaddrInet6)
+- p := (*[2]byte)(unsafe.Pointer(&pp.Port))
+- sa.Port = int(p[0])<<8 + int(p[1])
+- sa.ZoneId = pp.Scope_id
+- for i := 0; i < len(sa.Addr); i++ {
+- sa.Addr[i] = pp.Addr[i]
++ proto, err := GetsockoptInt(fd, SOL_SOCKET, SO_PROTOCOL)
++ if err != nil {
++ return nil, err
++ }
++
++ switch proto {
++ case IPPROTO_L2TP:
++ pp := (*RawSockaddrL2TPIP6)(unsafe.Pointer(rsa))
++ sa := new(SockaddrL2TPIP6)
++ sa.ConnId = pp.Conn_id
++ sa.ZoneId = pp.Scope_id
++ for i := 0; i < len(sa.Addr); i++ {
++ sa.Addr[i] = pp.Addr[i]
++ }
++ return sa, nil
++ default:
++ pp := (*RawSockaddrInet6)(unsafe.Pointer(rsa))
++ sa := new(SockaddrInet6)
++ p := (*[2]byte)(unsafe.Pointer(&pp.Port))
++ sa.Port = int(p[0])<<8 + int(p[1])
++ sa.ZoneId = pp.Scope_id
++ for i := 0; i < len(sa.Addr); i++ {
++ sa.Addr[i] = pp.Addr[i]
++ }
++ return sa, nil
+ }
+- return sa, nil
+
+ case AF_VSOCK:
+ pp := (*RawSockaddrVM)(unsafe.Pointer(rsa))
+@@ -706,6 +982,76 @@ func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
+ CID: pp.Cid,
+ Port: pp.Port,
+ }
++ return sa, nil
++ case AF_BLUETOOTH:
++ proto, err := GetsockoptInt(fd, SOL_SOCKET, SO_PROTOCOL)
++ if err != nil {
++ return nil, err
++ }
++ // only BTPROTO_L2CAP and BTPROTO_RFCOMM can accept connections
++ switch proto {
++ case BTPROTO_L2CAP:
++ pp := (*RawSockaddrL2)(unsafe.Pointer(rsa))
++ sa := &SockaddrL2{
++ PSM: pp.Psm,
++ CID: pp.Cid,
++ Addr: pp.Bdaddr,
++ AddrType: pp.Bdaddr_type,
++ }
++ return sa, nil
++ case BTPROTO_RFCOMM:
++ pp := (*RawSockaddrRFCOMM)(unsafe.Pointer(rsa))
++ sa := &SockaddrRFCOMM{
++ Channel: pp.Channel,
++ Addr: pp.Bdaddr,
++ }
++ return sa, nil
++ }
++ case AF_XDP:
++ pp := (*RawSockaddrXDP)(unsafe.Pointer(rsa))
++ sa := &SockaddrXDP{
++ Flags: pp.Flags,
++ Ifindex: pp.Ifindex,
++ QueueID: pp.Queue_id,
++ SharedUmemFD: pp.Shared_umem_fd,
++ }
++ return sa, nil
++ case AF_PPPOX:
++ pp := (*RawSockaddrPPPoX)(unsafe.Pointer(rsa))
++ if binary.BigEndian.Uint32(pp[2:6]) != px_proto_oe {
++ return nil, EINVAL
++ }
++ sa := &SockaddrPPPoE{
++ SID: binary.BigEndian.Uint16(pp[6:8]),
++ Remote: pp[8:14],
++ }
++ for i := 14; i < 14+IFNAMSIZ; i++ {
++ if pp[i] == 0 {
++ sa.Dev = string(pp[14:i])
++ break
++ }
++ }
++ return sa, nil
++ case AF_TIPC:
++ pp := (*RawSockaddrTIPC)(unsafe.Pointer(rsa))
++
++ sa := &SockaddrTIPC{
++ Scope: int(pp.Scope),
++ }
++
++ // Determine which union variant is present in pp.Addr by checking
++ // pp.Addrtype.
++ switch pp.Addrtype {
++ case TIPC_SERVICE_RANGE:
++ sa.Addr = (*TIPCServiceRange)(unsafe.Pointer(&pp.Addr))
++ case TIPC_SERVICE_ADDR:
++ sa.Addr = (*TIPCServiceName)(unsafe.Pointer(&pp.Addr))
++ case TIPC_SOCKET_ADDR:
++ sa.Addr = (*TIPCSocketAddr)(unsafe.Pointer(&pp.Addr))
++ default:
++ return nil, EINVAL
++ }
++
+ return sa, nil
+ }
+ return nil, EAFNOSUPPORT
+@@ -718,7 +1064,7 @@ func Accept(fd int) (nfd int, sa Sockaddr, err error) {
+ if err != nil {
+ return
+ }
+- sa, err = anyToSockaddr(&rsa)
++ sa, err = anyToSockaddr(fd, &rsa)
+ if err != nil {
+ Close(nfd)
+ nfd = 0
+@@ -736,7 +1082,7 @@ func Accept4(fd int, flags int) (nfd int, sa Sockaddr, err error) {
+ if len > SizeofSockaddrAny {
+ panic("RawSockaddrAny too small")
+ }
+- sa, err = anyToSockaddr(&rsa)
++ sa, err = anyToSockaddr(fd, &rsa)
+ if err != nil {
+ Close(nfd)
+ nfd = 0
+@@ -750,20 +1096,7 @@ func Getsockname(fd int) (sa Sockaddr, err error) {
+ if err = getsockname(fd, &rsa, &len); err != nil {
+ return
+ }
+- return anyToSockaddr(&rsa)
+-}
+-
+-func GetsockoptInet4Addr(fd, level, opt int) (value [4]byte, err error) {
+- vallen := _Socklen(4)
+- err = getsockopt(fd, level, opt, unsafe.Pointer(&value[0]), &vallen)
+- return value, err
+-}
+-
+-func GetsockoptIPMreq(fd, level, opt int) (*IPMreq, error) {
+- var value IPMreq
+- vallen := _Socklen(SizeofIPMreq)
+- err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
+- return &value, err
++ return anyToSockaddr(fd, &rsa)
+ }
+
+ func GetsockoptIPMreqn(fd, level, opt int) (*IPMreqn, error) {
+@@ -773,37 +1106,48 @@ func GetsockoptIPMreqn(fd, level, opt int) (*IPMreqn, error) {
+ return &value, err
+ }
+
+-func GetsockoptIPv6Mreq(fd, level, opt int) (*IPv6Mreq, error) {
+- var value IPv6Mreq
+- vallen := _Socklen(SizeofIPv6Mreq)
++func GetsockoptUcred(fd, level, opt int) (*Ucred, error) {
++ var value Ucred
++ vallen := _Socklen(SizeofUcred)
+ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
+ return &value, err
+ }
+
+-func GetsockoptIPv6MTUInfo(fd, level, opt int) (*IPv6MTUInfo, error) {
+- var value IPv6MTUInfo
+- vallen := _Socklen(SizeofIPv6MTUInfo)
++func GetsockoptTCPInfo(fd, level, opt int) (*TCPInfo, error) {
++ var value TCPInfo
++ vallen := _Socklen(SizeofTCPInfo)
+ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
+ return &value, err
+ }
+
+-func GetsockoptICMPv6Filter(fd, level, opt int) (*ICMPv6Filter, error) {
+- var value ICMPv6Filter
+- vallen := _Socklen(SizeofICMPv6Filter)
+- err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
+- return &value, err
++// GetsockoptString returns the string value of the socket option opt for the
++// socket associated with fd at the given socket level.
++func GetsockoptString(fd, level, opt int) (string, error) {
++ buf := make([]byte, 256)
++ vallen := _Socklen(len(buf))
++ err := getsockopt(fd, level, opt, unsafe.Pointer(&buf[0]), &vallen)
++ if err != nil {
++ if err == ERANGE {
++ buf = make([]byte, vallen)
++ err = getsockopt(fd, level, opt, unsafe.Pointer(&buf[0]), &vallen)
++ }
++ if err != nil {
++ return "", err
++ }
++ }
++ return string(buf[:vallen-1]), nil
+ }
+
+-func GetsockoptUcred(fd, level, opt int) (*Ucred, error) {
+- var value Ucred
+- vallen := _Socklen(SizeofUcred)
++func GetsockoptTpacketStats(fd, level, opt int) (*TpacketStats, error) {
++ var value TpacketStats
++ vallen := _Socklen(SizeofTpacketStats)
+ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
+ return &value, err
+ }
+
+-func GetsockoptTCPInfo(fd, level, opt int) (*TCPInfo, error) {
+- var value TCPInfo
+- vallen := _Socklen(SizeofTCPInfo)
++func GetsockoptTpacketStatsV3(fd, level, opt int) (*TpacketStatsV3, error) {
++ var value TpacketStatsV3
++ vallen := _Socklen(SizeofTpacketStatsV3)
+ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
+ return &value, err
+ }
+@@ -812,6 +1156,32 @@ func SetsockoptIPMreqn(fd, level, opt int, mreq *IPMreqn) (err error) {
+ return setsockopt(fd, level, opt, unsafe.Pointer(mreq), unsafe.Sizeof(*mreq))
+ }
+
++func SetsockoptPacketMreq(fd, level, opt int, mreq *PacketMreq) error {
++ return setsockopt(fd, level, opt, unsafe.Pointer(mreq), unsafe.Sizeof(*mreq))
++}
++
++// SetsockoptSockFprog attaches a classic BPF or an extended BPF program to a
++// socket to filter incoming packets. See 'man 7 socket' for usage information.
++func SetsockoptSockFprog(fd, level, opt int, fprog *SockFprog) error {
++ return setsockopt(fd, level, opt, unsafe.Pointer(fprog), unsafe.Sizeof(*fprog))
++}
++
++func SetsockoptCanRawFilter(fd, level, opt int, filter []CanFilter) error {
++ var p unsafe.Pointer
++ if len(filter) > 0 {
++ p = unsafe.Pointer(&filter[0])
++ }
++ return setsockopt(fd, level, opt, p, uintptr(len(filter)*SizeofCanFilter))
++}
++
++func SetsockoptTpacketReq(fd, level, opt int, tp *TpacketReq) error {
++ return setsockopt(fd, level, opt, unsafe.Pointer(tp), unsafe.Sizeof(*tp))
++}
++
++func SetsockoptTpacketReq3(fd, level, opt int, tp *TpacketReq3) error {
++ return setsockopt(fd, level, opt, unsafe.Pointer(tp), unsafe.Sizeof(*tp))
++}
++
+ // Keyctl Commands (http://man7.org/linux/man-pages/man2/keyctl.2.html)
+
+ // KeyctlInt calls keyctl commands in which each argument is an int.
+@@ -919,6 +1289,34 @@ func KeyctlDHCompute(params *KeyctlDHParams, buffer []byte) (size int, err error
+ return keyctlDH(KEYCTL_DH_COMPUTE, params, buffer)
+ }
+
++// KeyctlRestrictKeyring implements the KEYCTL_RESTRICT_KEYRING command. This
++// command limits the set of keys that can be linked to the keyring, regardless
++// of keyring permissions. The command requires the "setattr" permission.
++//
++// When called with an empty keyType the command locks the keyring, preventing
++// any further keys from being linked to the keyring.
++//
++// The "asymmetric" keyType defines restrictions requiring key payloads to be
++// DER encoded X.509 certificates signed by keys in another keyring. Restrictions
++// for "asymmetric" include "builtin_trusted", "builtin_and_secondary_trusted",
++// "key_or_keyring:<key>", and "key_or_keyring:<key>:chain".
++//
++// As of Linux 4.12, only the "asymmetric" keyType defines type-specific
++// restrictions.
++//
++// See the full documentation at:
++// http://man7.org/linux/man-pages/man3/keyctl_restrict_keyring.3.html
++// http://man7.org/linux/man-pages/man2/keyctl.2.html
++func KeyctlRestrictKeyring(ringid int, keyType string, restriction string) error {
++ if keyType == "" {
++ return keyctlRestrictKeyring(KEYCTL_RESTRICT_KEYRING, ringid)
++ }
++ return keyctlRestrictKeyringByType(KEYCTL_RESTRICT_KEYRING, ringid, keyType, restriction)
++}
++
++//sys keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) = SYS_KEYCTL
++//sys keyctlRestrictKeyring(cmd int, arg2 int) (err error) = SYS_KEYCTL
++
+ func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from Sockaddr, err error) {
+ var msg Msghdr
+ var rsa RawSockaddrAny
+@@ -926,22 +1324,24 @@ func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from
+ msg.Namelen = uint32(SizeofSockaddrAny)
+ var iov Iovec
+ if len(p) > 0 {
+- iov.Base = (*byte)(unsafe.Pointer(&p[0]))
++ iov.Base = &p[0]
+ iov.SetLen(len(p))
+ }
+ var dummy byte
+ if len(oob) > 0 {
+- var sockType int
+- sockType, err = GetsockoptInt(fd, SOL_SOCKET, SO_TYPE)
+- if err != nil {
+- return
++ if len(p) == 0 {
++ var sockType int
++ sockType, err = GetsockoptInt(fd, SOL_SOCKET, SO_TYPE)
++ if err != nil {
++ return
++ }
++ // receive at least one normal byte
++ if sockType != SOCK_DGRAM {
++ iov.Base = &dummy
++ iov.SetLen(1)
++ }
+ }
+- // receive at least one normal byte
+- if sockType != SOCK_DGRAM && len(p) == 0 {
+- iov.Base = &dummy
+- iov.SetLen(1)
+- }
+- msg.Control = (*byte)(unsafe.Pointer(&oob[0]))
++ msg.Control = &oob[0]
+ msg.SetControllen(len(oob))
+ }
+ msg.Iov = &iov
+@@ -953,7 +1353,7 @@ func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from
+ recvflags = int(msg.Flags)
+ // source address is only specified if the socket is unconnected
+ if rsa.Addr.Family != AF_UNSPEC {
+- from, err = anyToSockaddr(&rsa)
++ from, err = anyToSockaddr(fd, &rsa)
+ }
+ return
+ }
+@@ -974,26 +1374,28 @@ func SendmsgN(fd int, p, oob []byte, to Sockaddr, flags int) (n int, err error)
+ }
+ }
+ var msg Msghdr
+- msg.Name = (*byte)(unsafe.Pointer(ptr))
++ msg.Name = (*byte)(ptr)
+ msg.Namelen = uint32(salen)
+ var iov Iovec
+ if len(p) > 0 {
+- iov.Base = (*byte)(unsafe.Pointer(&p[0]))
++ iov.Base = &p[0]
+ iov.SetLen(len(p))
+ }
+ var dummy byte
+ if len(oob) > 0 {
+- var sockType int
+- sockType, err = GetsockoptInt(fd, SOL_SOCKET, SO_TYPE)
+- if err != nil {
+- return 0, err
++ if len(p) == 0 {
++ var sockType int
++ sockType, err = GetsockoptInt(fd, SOL_SOCKET, SO_TYPE)
++ if err != nil {
++ return 0, err
++ }
++ // send at least one normal byte
++ if sockType != SOCK_DGRAM {
++ iov.Base = &dummy
++ iov.SetLen(1)
++ }
+ }
+- // send at least one normal byte
+- if sockType != SOCK_DGRAM && len(p) == 0 {
+- iov.Base = &dummy
+- iov.SetLen(1)
+- }
+- msg.Control = (*byte)(unsafe.Pointer(&oob[0]))
++ msg.Control = &oob[0]
+ msg.SetControllen(len(oob))
+ }
+ msg.Iov = &iov
+@@ -1021,20 +1423,20 @@ func ptracePeek(req int, pid int, addr uintptr, out []byte) (count int, err erro
+ // The ptrace syscall differs from glibc's ptrace.
+ // Peeks returns the word in *data, not as the return value.
+
+- var buf [sizeofPtr]byte
++ var buf [SizeofPtr]byte
+
+- // Leading edge. PEEKTEXT/PEEKDATA don't require aligned
++ // Leading edge. PEEKTEXT/PEEKDATA don't require aligned
+ // access (PEEKUSER warns that it might), but if we don't
+ // align our reads, we might straddle an unmapped page
+ // boundary and not get the bytes leading up to the page
+ // boundary.
+ n := 0
+- if addr%sizeofPtr != 0 {
+- err = ptrace(req, pid, addr-addr%sizeofPtr, uintptr(unsafe.Pointer(&buf[0])))
++ if addr%SizeofPtr != 0 {
++ err = ptrace(req, pid, addr-addr%SizeofPtr, uintptr(unsafe.Pointer(&buf[0])))
+ if err != nil {
+ return 0, err
+ }
+- n += copy(out, buf[addr%sizeofPtr:])
++ n += copy(out, buf[addr%SizeofPtr:])
+ out = out[n:]
+ }
+
+@@ -1072,15 +1474,15 @@ func ptracePoke(pokeReq int, peekReq int, pid int, addr uintptr, data []byte) (c
+
+ // Leading edge.
+ n := 0
+- if addr%sizeofPtr != 0 {
+- var buf [sizeofPtr]byte
+- err = ptrace(peekReq, pid, addr-addr%sizeofPtr, uintptr(unsafe.Pointer(&buf[0])))
++ if addr%SizeofPtr != 0 {
++ var buf [SizeofPtr]byte
++ err = ptrace(peekReq, pid, addr-addr%SizeofPtr, uintptr(unsafe.Pointer(&buf[0])))
+ if err != nil {
+ return 0, err
+ }
+- n += copy(buf[addr%sizeofPtr:], data)
++ n += copy(buf[addr%SizeofPtr:], data)
+ word := *((*uintptr)(unsafe.Pointer(&buf[0])))
+- err = ptrace(pokeReq, pid, addr-addr%sizeofPtr, word)
++ err = ptrace(pokeReq, pid, addr-addr%SizeofPtr, word)
+ if err != nil {
+ return 0, err
+ }
+@@ -1088,19 +1490,19 @@ func ptracePoke(pokeReq int, peekReq int, pid int, addr uintptr, data []byte) (c
+ }
+
+ // Interior.
+- for len(data) > sizeofPtr {
++ for len(data) > SizeofPtr {
+ word := *((*uintptr)(unsafe.Pointer(&data[0])))
+ err = ptrace(pokeReq, pid, addr+uintptr(n), word)
+ if err != nil {
+ return n, err
+ }
+- n += sizeofPtr
+- data = data[sizeofPtr:]
++ n += SizeofPtr
++ data = data[SizeofPtr:]
+ }
+
+ // Trailing edge.
+ if len(data) > 0 {
+- var buf [sizeofPtr]byte
++ var buf [SizeofPtr]byte
+ err = ptrace(peekReq, pid, addr+uintptr(n), uintptr(unsafe.Pointer(&buf[0])))
+ if err != nil {
+ return n, err
+@@ -1125,6 +1527,10 @@ func PtracePokeData(pid int, addr uintptr, data []byte) (count int, err error) {
+ return ptracePoke(PTRACE_POKEDATA, PTRACE_PEEKDATA, pid, addr, data)
+ }
+
++func PtracePokeUser(pid int, addr uintptr, data []byte) (count int, err error) {
++ return ptracePoke(PTRACE_POKEUSR, PTRACE_PEEKUSR, pid, addr, data)
++}
++
+ func PtraceGetRegs(pid int, regsout *PtraceRegs) (err error) {
+ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
+ }
+@@ -1154,8 +1560,12 @@ func PtraceSyscall(pid int, signal int) (err error) {
+
+ func PtraceSingleStep(pid int) (err error) { return ptrace(PTRACE_SINGLESTEP, pid, 0, 0) }
+
++func PtraceInterrupt(pid int) (err error) { return ptrace(PTRACE_INTERRUPT, pid, 0, 0) }
++
+ func PtraceAttach(pid int) (err error) { return ptrace(PTRACE_ATTACH, pid, 0, 0) }
+
++func PtraceSeize(pid int) (err error) { return ptrace(PTRACE_SEIZE, pid, 0, 0) }
++
+ func PtraceDetach(pid int) (err error) { return ptrace(PTRACE_DETACH, pid, 0, 0) }
+
+ //sys reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error)
+@@ -1164,10 +1574,6 @@ func Reboot(cmd int) (err error) {
+ return reboot(LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, cmd, "")
+ }
+
+-func ReadDirent(fd int, buf []byte) (n int, err error) {
+- return Getdents(fd, buf)
+-}
+-
+ func direntIno(buf []byte) (uint64, bool) {
+ return readInt(buf, unsafe.Offsetof(Dirent{}.Ino), unsafe.Sizeof(Dirent{}.Ino))
+ }
+@@ -1199,6 +1605,13 @@ func Mount(source string, target string, fstype string, flags uintptr, data stri
+ return mount(source, target, fstype, flags, datap)
+ }
+
++func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
++ if raceenabled {
++ raceReleaseMerge(unsafe.Pointer(&ioSync))
++ }
++ return sendfile(outfd, infd, offset, count)
++}
++
+ // Sendto
+ // Recvfrom
+ // Socketpair
+@@ -1209,26 +1622,33 @@ func Mount(source string, target string, fstype string, flags uintptr, data stri
+ //sys Acct(path string) (err error)
+ //sys AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error)
+ //sys Adjtimex(buf *Timex) (state int, err error)
++//sysnb Capget(hdr *CapUserHeader, data *CapUserData) (err error)
++//sysnb Capset(hdr *CapUserHeader, data *CapUserData) (err error)
+ //sys Chdir(path string) (err error)
+ //sys Chroot(path string) (err error)
++//sys ClockGetres(clockid int32, res *Timespec) (err error)
+ //sys ClockGettime(clockid int32, time *Timespec) (err error)
++//sys ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error)
+ //sys Close(fd int) (err error)
+ //sys CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error)
++//sys DeleteModule(name string, flags int) (err error)
+ //sys Dup(oldfd int) (fd int, err error)
+ //sys Dup3(oldfd int, newfd int, flags int) (err error)
+-//sysnb EpollCreate(size int) (fd int, err error)
+ //sysnb EpollCreate1(flag int) (fd int, err error)
+ //sysnb EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error)
+ //sys Eventfd(initval uint, flags int) (fd int, err error) = SYS_EVENTFD2
+ //sys Exit(code int) = SYS_EXIT_GROUP
+-//sys Faccessat(dirfd int, path string, mode uint32, flags int) (err error)
+ //sys Fallocate(fd int, mode uint32, off int64, len int64) (err error)
+ //sys Fchdir(fd int) (err error)
+ //sys Fchmod(fd int, mode uint32) (err error)
+ //sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
+-//sys fcntl(fd int, cmd int, arg int) (val int, err error)
+ //sys Fdatasync(fd int) (err error)
++//sys Fgetxattr(fd int, attr string, dest []byte) (sz int, err error)
++//sys FinitModule(fd int, params string, flags int) (err error)
++//sys Flistxattr(fd int, dest []byte) (sz int, err error)
+ //sys Flock(fd int, how int) (err error)
++//sys Fremovexattr(fd int, attr string) (err error)
++//sys Fsetxattr(fd int, attr string, dest []byte, flags int) (err error)
+ //sys Fsync(fd int) (err error)
+ //sys Getdents(fd int, buf []byte) (n int, err error) = SYS_GETDENTS64
+ //sysnb Getpgid(pid int) (pgid int, err error)
+@@ -1246,6 +1666,7 @@ func Getpgrp() (pid int) {
+ //sysnb Getsid(pid int) (sid int, err error)
+ //sysnb Gettid() (tid int)
+ //sys Getxattr(path string, attr string, dest []byte) (sz int, err error)
++//sys InitModule(moduleImage []byte, params string) (err error)
+ //sys InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error)
+ //sysnb InotifyInit1(flags int) (fd int, err error)
+ //sysnb InotifyRmWatch(fd int, watchdesc uint32) (success int, err error)
+@@ -1256,15 +1677,18 @@ func Getpgrp() (pid int) {
+ //sys Llistxattr(path string, dest []byte) (sz int, err error)
+ //sys Lremovexattr(path string, attr string) (err error)
+ //sys Lsetxattr(path string, attr string, data []byte, flags int) (err error)
++//sys MemfdCreate(name string, flags int) (fd int, err error)
+ //sys Mkdirat(dirfd int, path string, mode uint32) (err error)
+ //sys Mknodat(dirfd int, path string, mode uint32, dev int) (err error)
+ //sys Nanosleep(time *Timespec, leftover *Timespec) (err error)
++//sys PerfEventOpen(attr *PerfEventAttr, pid int, cpu int, groupFd int, flags int) (fd int, err error)
+ //sys PivotRoot(newroot string, putold string) (err error) = SYS_PIVOT_ROOT
+ //sysnb prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) = SYS_PRLIMIT64
+ //sys Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error)
++//sys Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) = SYS_PSELECT6
+ //sys read(fd int, p []byte) (n int, err error)
+ //sys Removexattr(path string, attr string) (err error)
+-//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
++//sys Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error)
+ //sys RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error)
+ //sys Setdomainname(p []byte) (err error)
+ //sys Sethostname(p []byte) (err error)
+@@ -1273,6 +1697,17 @@ func Getpgrp() (pid int) {
+ //sysnb Settimeofday(tv *Timeval) (err error)
+ //sys Setns(fd int, nstype int) (err error)
+
++// PrctlRetInt performs a prctl operation specified by option and further
++// optional arguments arg2 through arg5 depending on option. It returns a
++// non-negative integer that is returned by the prctl syscall.
++func PrctlRetInt(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (int, error) {
++ ret, _, err := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
++ if err != 0 {
++ return 0, err
++ }
++ return int(ret), nil
++}
++
+ // issue 1435.
+ // On linux Setuid and Setgid only affects the current thread, not the process.
+ // This does not match what most callers expect so we must return an error
+@@ -1286,8 +1721,38 @@ func Setgid(uid int) (err error) {
+ return EOPNOTSUPP
+ }
+
++// SetfsgidRetGid sets fsgid for current thread and returns previous fsgid set.
++// setfsgid(2) will return a non-nil error only if its caller lacks CAP_SETUID capability.
++// If the call fails due to other reasons, current fsgid will be returned.
++func SetfsgidRetGid(gid int) (int, error) {
++ return setfsgid(gid)
++}
++
++// SetfsuidRetUid sets fsuid for current thread and returns previous fsuid set.
++// setfsgid(2) will return a non-nil error only if its caller lacks CAP_SETUID capability
++// If the call fails due to other reasons, current fsuid will be returned.
++func SetfsuidRetUid(uid int) (int, error) {
++ return setfsuid(uid)
++}
++
++func Setfsgid(gid int) error {
++ _, err := setfsgid(gid)
++ return err
++}
++
++func Setfsuid(uid int) error {
++ _, err := setfsuid(uid)
++ return err
++}
++
++func Signalfd(fd int, sigmask *Sigset_t, flags int) (newfd int, err error) {
++ return signalfd(fd, sigmask, _C__NSIG/8, flags)
++}
++
+ //sys Setpriority(which int, who int, prio int) (err error)
+ //sys Setxattr(path string, attr string, data []byte, flags int) (err error)
++//sys signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) = SYS_SIGNALFD4
++//sys Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error)
+ //sys Sync()
+ //sys Syncfs(fd int) (err error)
+ //sysnb Sysinfo(info *Sysinfo_t) (err error)
+@@ -1298,11 +1763,127 @@ func Setgid(uid int) (err error) {
+ //sysnb Uname(buf *Utsname) (err error)
+ //sys Unmount(target string, flags int) (err error) = SYS_UMOUNT2
+ //sys Unshare(flags int) (err error)
+-//sys Ustat(dev int, ubuf *Ustat_t) (err error)
+ //sys write(fd int, p []byte) (n int, err error)
+ //sys exitThread(code int) (err error) = SYS_EXIT
+ //sys readlen(fd int, p *byte, np int) (n int, err error) = SYS_READ
+ //sys writelen(fd int, p *byte, np int) (n int, err error) = SYS_WRITE
++//sys readv(fd int, iovs []Iovec) (n int, err error) = SYS_READV
++//sys writev(fd int, iovs []Iovec) (n int, err error) = SYS_WRITEV
++//sys preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) = SYS_PREADV
++//sys pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) = SYS_PWRITEV
++//sys preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) = SYS_PREADV2
++//sys pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) = SYS_PWRITEV2
++
++func bytes2iovec(bs [][]byte) []Iovec {
++ iovecs := make([]Iovec, len(bs))
++ for i, b := range bs {
++ iovecs[i].SetLen(len(b))
++ if len(b) > 0 {
++ iovecs[i].Base = &b[0]
++ } else {
++ iovecs[i].Base = (*byte)(unsafe.Pointer(&_zero))
++ }
++ }
++ return iovecs
++}
++
++// offs2lohi splits offs into its lower and upper unsigned long. On 64-bit
++// systems, hi will always be 0. On 32-bit systems, offs will be split in half.
++// preadv/pwritev chose this calling convention so they don't need to add a
++// padding-register for alignment on ARM.
++func offs2lohi(offs int64) (lo, hi uintptr) {
++ return uintptr(offs), uintptr(uint64(offs) >> SizeofLong)
++}
++
++func Readv(fd int, iovs [][]byte) (n int, err error) {
++ iovecs := bytes2iovec(iovs)
++ n, err = readv(fd, iovecs)
++ readvRacedetect(iovecs, n, err)
++ return n, err
++}
++
++func Preadv(fd int, iovs [][]byte, offset int64) (n int, err error) {
++ iovecs := bytes2iovec(iovs)
++ lo, hi := offs2lohi(offset)
++ n, err = preadv(fd, iovecs, lo, hi)
++ readvRacedetect(iovecs, n, err)
++ return n, err
++}
++
++func Preadv2(fd int, iovs [][]byte, offset int64, flags int) (n int, err error) {
++ iovecs := bytes2iovec(iovs)
++ lo, hi := offs2lohi(offset)
++ n, err = preadv2(fd, iovecs, lo, hi, flags)
++ readvRacedetect(iovecs, n, err)
++ return n, err
++}
++
++func readvRacedetect(iovecs []Iovec, n int, err error) {
++ if !raceenabled {
++ return
++ }
++ for i := 0; n > 0 && i < len(iovecs); i++ {
++ m := int(iovecs[i].Len)
++ if m > n {
++ m = n
++ }
++ n -= m
++ if m > 0 {
++ raceWriteRange(unsafe.Pointer(iovecs[i].Base), m)
++ }
++ }
++ if err == nil {
++ raceAcquire(unsafe.Pointer(&ioSync))
++ }
++}
++
++func Writev(fd int, iovs [][]byte) (n int, err error) {
++ iovecs := bytes2iovec(iovs)
++ if raceenabled {
++ raceReleaseMerge(unsafe.Pointer(&ioSync))
++ }
++ n, err = writev(fd, iovecs)
++ writevRacedetect(iovecs, n)
++ return n, err
++}
++
++func Pwritev(fd int, iovs [][]byte, offset int64) (n int, err error) {
++ iovecs := bytes2iovec(iovs)
++ if raceenabled {
++ raceReleaseMerge(unsafe.Pointer(&ioSync))
++ }
++ lo, hi := offs2lohi(offset)
++ n, err = pwritev(fd, iovecs, lo, hi)
++ writevRacedetect(iovecs, n)
++ return n, err
++}
++
++func Pwritev2(fd int, iovs [][]byte, offset int64, flags int) (n int, err error) {
++ iovecs := bytes2iovec(iovs)
++ if raceenabled {
++ raceReleaseMerge(unsafe.Pointer(&ioSync))
++ }
++ lo, hi := offs2lohi(offset)
++ n, err = pwritev2(fd, iovecs, lo, hi, flags)
++ writevRacedetect(iovecs, n)
++ return n, err
++}
++
++func writevRacedetect(iovecs []Iovec, n int) {
++ if !raceenabled {
++ return
++ }
++ for i := 0; n > 0 && i < len(iovecs); i++ {
++ m := int(iovecs[i].Len)
++ if m > n {
++ m = n
++ }
++ n -= m
++ if m > 0 {
++ raceReadRange(unsafe.Pointer(iovecs[i].Base), m)
++ }
++ }
++}
+
+ // mmap varies by architecture; see syscall_linux_*.go.
+ //sys munmap(addr uintptr, length uintptr) (err error)
+@@ -1332,15 +1913,12 @@ func Munmap(b []byte) (err error) {
+ // Vmsplice splices user pages from a slice of Iovecs into a pipe specified by fd,
+ // using the specified flags.
+ func Vmsplice(fd int, iovs []Iovec, flags int) (int, error) {
+- n, _, errno := Syscall6(
+- SYS_VMSPLICE,
+- uintptr(fd),
+- uintptr(unsafe.Pointer(&iovs[0])),
+- uintptr(len(iovs)),
+- uintptr(flags),
+- 0,
+- 0,
+- )
++ var p unsafe.Pointer
++ if len(iovs) > 0 {
++ p = unsafe.Pointer(&iovs[0])
++ }
++
++ n, _, errno := Syscall6(SYS_VMSPLICE, uintptr(fd), uintptr(p), uintptr(len(iovs)), uintptr(flags), 0, 0)
+ if errno != 0 {
+ return 0, syscall.Errno(errno)
+ }
+@@ -1348,6 +1926,164 @@ func Vmsplice(fd int, iovs []Iovec, flags int) (int, error) {
+ return int(n), nil
+ }
+
++//sys faccessat(dirfd int, path string, mode uint32) (err error)
++
++func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
++ if flags & ^(AT_SYMLINK_NOFOLLOW|AT_EACCESS) != 0 {
++ return EINVAL
++ }
++
++ // The Linux kernel faccessat system call does not take any flags.
++ // The glibc faccessat implements the flags itself; see
++ // https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/faccessat.c;hb=HEAD
++ // Because people naturally expect syscall.Faccessat to act
++ // like C faccessat, we do the same.
++
++ if flags == 0 {
++ return faccessat(dirfd, path, mode)
++ }
++
++ var st Stat_t
++ if err := Fstatat(dirfd, path, &st, flags&AT_SYMLINK_NOFOLLOW); err != nil {
++ return err
++ }
++
++ mode &= 7
++ if mode == 0 {
++ return nil
++ }
++
++ var uid int
++ if flags&AT_EACCESS != 0 {
++ uid = Geteuid()
++ } else {
++ uid = Getuid()
++ }
++
++ if uid == 0 {
++ if mode&1 == 0 {
++ // Root can read and write any file.
++ return nil
++ }
++ if st.Mode&0111 != 0 {
++ // Root can execute any file that anybody can execute.
++ return nil
++ }
++ return EACCES
++ }
++
++ var fmode uint32
++ if uint32(uid) == st.Uid {
++ fmode = (st.Mode >> 6) & 7
++ } else {
++ var gid int
++ if flags&AT_EACCESS != 0 {
++ gid = Getegid()
++ } else {
++ gid = Getgid()
++ }
++
++ if uint32(gid) == st.Gid {
++ fmode = (st.Mode >> 3) & 7
++ } else {
++ fmode = st.Mode & 7
++ }
++ }
++
++ if fmode&mode == mode {
++ return nil
++ }
++
++ return EACCES
++}
++
++//sys nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int, flags int) (err error) = SYS_NAME_TO_HANDLE_AT
++//sys openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) = SYS_OPEN_BY_HANDLE_AT
++
++// fileHandle is the argument to nameToHandleAt and openByHandleAt. We
++// originally tried to generate it via unix/linux/types.go with "type
++// fileHandle C.struct_file_handle" but that generated empty structs
++// for mips64 and mips64le. Instead, hard code it for now (it's the
++// same everywhere else) until the mips64 generator issue is fixed.
++type fileHandle struct {
++ Bytes uint32
++ Type int32
++}
++
++// FileHandle represents the C struct file_handle used by
++// name_to_handle_at (see NameToHandleAt) and open_by_handle_at (see
++// OpenByHandleAt).
++type FileHandle struct {
++ *fileHandle
++}
++
++// NewFileHandle constructs a FileHandle.
++func NewFileHandle(handleType int32, handle []byte) FileHandle {
++ const hdrSize = unsafe.Sizeof(fileHandle{})
++ buf := make([]byte, hdrSize+uintptr(len(handle)))
++ copy(buf[hdrSize:], handle)
++ fh := (*fileHandle)(unsafe.Pointer(&buf[0]))
++ fh.Type = handleType
++ fh.Bytes = uint32(len(handle))
++ return FileHandle{fh}
++}
++
++func (fh *FileHandle) Size() int { return int(fh.fileHandle.Bytes) }
++func (fh *FileHandle) Type() int32 { return fh.fileHandle.Type }
++func (fh *FileHandle) Bytes() []byte {
++ n := fh.Size()
++ if n == 0 {
++ return nil
++ }
++ return (*[1 << 30]byte)(unsafe.Pointer(uintptr(unsafe.Pointer(&fh.fileHandle.Type)) + 4))[:n:n]
++}
++
++// NameToHandleAt wraps the name_to_handle_at system call; it obtains
++// a handle for a path name.
++func NameToHandleAt(dirfd int, path string, flags int) (handle FileHandle, mountID int, err error) {
++ var mid _C_int
++ // Try first with a small buffer, assuming the handle will
++ // only be 32 bytes.
++ size := uint32(32 + unsafe.Sizeof(fileHandle{}))
++ didResize := false
++ for {
++ buf := make([]byte, size)
++ fh := (*fileHandle)(unsafe.Pointer(&buf[0]))
++ fh.Bytes = size - uint32(unsafe.Sizeof(fileHandle{}))
++ err = nameToHandleAt(dirfd, path, fh, &mid, flags)
++ if err == EOVERFLOW {
++ if didResize {
++ // We shouldn't need to resize more than once
++ return
++ }
++ didResize = true
++ size = fh.Bytes + uint32(unsafe.Sizeof(fileHandle{}))
++ continue
++ }
++ if err != nil {
++ return
++ }
++ return FileHandle{fh}, int(mid), nil
++ }
++}
++
++// OpenByHandleAt wraps the open_by_handle_at system call; it opens a
++// file via a handle as previously returned by NameToHandleAt.
++func OpenByHandleAt(mountFD int, handle FileHandle, flags int) (fd int, err error) {
++ return openByHandleAt(mountFD, handle.fileHandle, flags)
++}
++
++// Klogset wraps the sys_syslog system call; it sets console_loglevel to
++// the value specified by arg and passes a dummy pointer to bufp.
++func Klogset(typ int, arg int) (err error) {
++ var p unsafe.Pointer
++ _, _, errno := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(p), uintptr(arg))
++ if errno != 0 {
++ return errnoErr(errno)
++ }
++ return nil
++}
++
+ /*
+ * Unimplemented
+ */
+@@ -1355,23 +2091,14 @@ func Vmsplice(fd int, iovs []Iovec, flags int) (int, error) {
+ // Alarm
+ // ArchPrctl
+ // Brk
+-// Capget
+-// Capset
+-// ClockGetres
+ // ClockNanosleep
+ // ClockSettime
+ // Clone
+-// CreateModule
+-// DeleteModule
+ // EpollCtlOld
+ // EpollPwait
+ // EpollWaitOld
+ // Execve
+-// Fgetxattr
+-// Flistxattr
+ // Fork
+-// Fremovexattr
+-// Fsetxattr
+ // Futex
+ // GetKernelSyms
+ // GetMempolicy
+@@ -1405,13 +2132,11 @@ func Vmsplice(fd int, iovs []Iovec, flags int) (int, error) {
+ // Msgget
+ // Msgrcv
+ // Msgsnd
+-// Newfstatat
+ // Nfsservctl
+ // Personality
+ // Pselect6
+ // Ptrace
+ // Putpmsg
+-// QueryModule
+ // Quotactl
+ // Readahead
+ // Readv
+@@ -1426,11 +2151,9 @@ func Vmsplice(fd int, iovs []Iovec, flags int) (int, error) {
+ // RtSigtimedwait
+ // SchedGetPriorityMax
+ // SchedGetPriorityMin
+-// SchedGetaffinity
+ // SchedGetparam
+ // SchedGetscheduler
+ // SchedRrGetInterval
+-// SchedSetaffinity
+ // SchedSetparam
+ // SchedYield
+ // Security
+@@ -1447,7 +2170,6 @@ func Vmsplice(fd int, iovs []Iovec, flags int) (int, error) {
+ // Shmdt
+ // Shmget
+ // Sigaltstack
+-// Signalfd
+ // Swapoff
+ // Swapon
+ // Sysfs
+diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_386.go b/vendor/golang.org/x/sys/unix/syscall_linux_386.go
+index 2b881b97..a8374b67 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_linux_386.go
++++ b/vendor/golang.org/x/sys/unix/syscall_linux_386.go
+@@ -10,25 +10,15 @@
+ package unix
+
+ import (
+- "syscall"
+ "unsafe"
+ )
+
+-func Getpagesize() int { return 4096 }
+-
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = int32(nsec / 1e9)
+- ts.Nsec = int32(nsec % 1e9)
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: int32(sec), Nsec: int32(nsec)}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Sec = int32(nsec / 1e9)
+- tv.Usec = int32(nsec % 1e9 / 1e3)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: int32(sec), Usec: int32(usec)}
+ }
+
+ //sysnb pipe(p *[2]_C_int) (err error)
+@@ -60,9 +50,12 @@ func Pipe2(p []int, flags int) (err error) {
+ // 64-bit file system and 32-bit uid calls
+ // (386 default is 32-bit file system and 16-bit uid).
+ //sys Dup2(oldfd int, newfd int) (err error)
++//sysnb EpollCreate(size int) (fd int, err error)
++//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
+ //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64_64
+ //sys Fchown(fd int, uid int, gid int) (err error) = SYS_FCHOWN32
+ //sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64
++//sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64
+ //sys Ftruncate(fd int, length int64) (err error) = SYS_FTRUNCATE64
+ //sysnb Getegid() (egid int) = SYS_GETEGID32
+ //sysnb Geteuid() (euid int) = SYS_GETEUID32
+@@ -75,9 +68,10 @@ func Pipe2(p []int, flags int) (err error) {
+ //sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
+ //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
+ //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
++//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
+ //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64
+-//sys Setfsgid(gid int) (err error) = SYS_SETFSGID32
+-//sys Setfsuid(uid int) (err error) = SYS_SETFSUID32
++//sys setfsgid(gid int) (prev int, err error) = SYS_SETFSGID32
++//sys setfsuid(uid int) (prev int, err error) = SYS_SETFSUID32
+ //sysnb Setregid(rgid int, egid int) (err error) = SYS_SETREGID32
+ //sysnb Setresgid(rgid int, egid int, sgid int) (err error) = SYS_SETRESGID32
+ //sysnb Setresuid(ruid int, euid int, suid int) (err error) = SYS_SETRESUID32
+@@ -86,12 +80,12 @@ func Pipe2(p []int, flags int) (err error) {
+ //sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64
+ //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error)
+ //sys Truncate(path string, length int64) (err error) = SYS_TRUNCATE64
++//sys Ustat(dev int, ubuf *Ustat_t) (err error)
+ //sysnb getgroups(n int, list *_Gid_t) (nn int, err error) = SYS_GETGROUPS32
+ //sysnb setgroups(n int, list *_Gid_t) (err error) = SYS_SETGROUPS32
+ //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT
+
+ //sys mmap2(addr uintptr, length uintptr, prot int, flags int, fd int, pageOffset uintptr) (xaddr uintptr, err error)
+-//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
+ //sys Pause() (err error)
+
+ func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) {
+@@ -165,10 +159,6 @@ func Setrlimit(resource int, rlim *Rlimit) (err error) {
+ return setrlimit(resource, &rl)
+ }
+
+-// Underlying system call writes to newoffset via pointer.
+-// Implemented in assembly to avoid allocation.
+-func seek(fd int, offset int64, whence int) (newoffset int64, err syscall.Errno)
+-
+ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+ newoffset, errno := seek(fd, offset, whence)
+ if errno != 0 {
+@@ -177,17 +167,17 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+ return newoffset, nil
+ }
+
+-// Vsyscalls on amd64.
++//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error)
+ //sysnb Gettimeofday(tv *Timeval) (err error)
+ //sysnb Time(t *Time_t) (tt Time_t, err error)
+-
+ //sys Utime(path string, buf *Utimbuf) (err error)
++//sys utimes(path string, times *[2]Timeval) (err error)
+
+ // On x86 Linux, all the socket calls go through an extra indirection,
+ // I think because the 5-register system call interface can't handle
+-// the 6-argument calls like sendto and recvfrom. Instead the
++// the 6-argument calls like sendto and recvfrom. Instead the
+ // arguments to the underlying system call are the number below
+-// and a pointer to an array of uintptr. We hide the pointer in the
++// and a pointer to an array of uintptr. We hide the pointer in the
+ // socketcall assembly to avoid allocation on every system call.
+
+ const (
+@@ -214,9 +204,6 @@ const (
+ _SENDMMSG = 20
+ )
+
+-func socketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (n int, err syscall.Errno)
+-func rawsocketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (n int, err syscall.Errno)
+-
+ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+ fd, e := socketcall(_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), 0, 0, 0)
+ if e != 0 {
+@@ -385,6 +372,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = uint32(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint32(length)
+ }
+diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go b/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go
+index 9516a3fd..8ed1d546 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go
++++ b/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go
+@@ -7,10 +7,12 @@
+ package unix
+
+ //sys Dup2(oldfd int, newfd int) (err error)
++//sysnb EpollCreate(size int) (fd int, err error)
+ //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
+ //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
+ //sys Fchown(fd int, uid int, gid int) (err error)
+ //sys Fstat(fd int, stat *Stat_t) (err error)
++//sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_NEWFSTATAT
+ //sys Fstatfs(fd int, buf *Statfs_t) (err error)
+ //sys Ftruncate(fd int, length int64) (err error)
+ //sysnb Getegid() (egid int)
+@@ -18,20 +20,43 @@ package unix
+ //sysnb Getgid() (gid int)
+ //sysnb Getrlimit(resource int, rlim *Rlimit) (err error)
+ //sysnb Getuid() (uid int)
+-//sysnb InotifyInit() (fd int, err error)
++//sysnb inotifyInit() (fd int, err error)
++
++func InotifyInit() (fd int, err error) {
++ // First try inotify_init1, because Android's seccomp policy blocks the latter.
++ fd, err = InotifyInit1(0)
++ if err == ENOSYS {
++ fd, err = inotifyInit()
++ }
++ return
++}
++
+ //sys Ioperm(from int, num int, on int) (err error)
+ //sys Iopl(level int) (err error)
+ //sys Lchown(path string, uid int, gid int) (err error)
+ //sys Listen(s int, n int) (err error)
+-//sys Lstat(path string, stat *Stat_t) (err error)
++
++func Lstat(path string, stat *Stat_t) (err error) {
++ return Fstatat(AT_FDCWD, path, stat, AT_SYMLINK_NOFOLLOW)
++}
++
+ //sys Pause() (err error)
+ //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
+ //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
++//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
+ //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
+-//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
++
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ var ts *Timespec
++ if timeout != nil {
++ ts = &Timespec{Sec: timeout.Sec, Nsec: timeout.Usec * 1000}
++ }
++ return Pselect(nfd, r, w, e, ts, nil)
++}
++
+ //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
+-//sys Setfsgid(gid int) (err error)
+-//sys Setfsuid(uid int) (err error)
++//sys setfsgid(gid int) (prev int, err error)
++//sys setfsuid(uid int) (prev int, err error)
+ //sysnb Setregid(rgid int, egid int) (err error)
+ //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
+ //sysnb Setresuid(ruid int, euid int, suid int) (err error)
+@@ -39,10 +64,16 @@ package unix
+ //sysnb Setreuid(ruid int, euid int) (err error)
+ //sys Shutdown(fd int, how int) (err error)
+ //sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error)
+-//sys Stat(path string, stat *Stat_t) (err error)
++
++func Stat(path string, stat *Stat_t) (err error) {
++ // Use fstatat, because Android's seccomp policy blocks stat.
++ return Fstatat(AT_FDCWD, path, stat, 0)
++}
++
+ //sys Statfs(path string, buf *Statfs_t) (err error)
+ //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error)
+ //sys Truncate(path string, length int64) (err error)
++//sys Ustat(dev int, ubuf *Ustat_t) (err error)
+ //sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error)
+ //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error)
+ //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error)
+@@ -61,6 +92,8 @@ package unix
+ //sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error)
+ //sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error)
+
++//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error)
++
+ func Gettimeofday(tv *Timeval) (err error) {
+ errno := gettimeofday(tv)
+ if errno != 0 {
+@@ -69,8 +102,6 @@ func Gettimeofday(tv *Timeval) (err error) {
+ return nil
+ }
+
+-func Getpagesize() int { return 4096 }
+-
+ func Time(t *Time_t) (tt Time_t, err error) {
+ var tv Timeval
+ errno := gettimeofday(&tv)
+@@ -84,20 +115,14 @@ func Time(t *Time_t) (tt Time_t, err error) {
+ }
+
+ //sys Utime(path string, buf *Utimbuf) (err error)
++//sys utimes(path string, times *[2]Timeval) (err error)
+
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = nsec / 1e9
+- ts.Nsec = nsec % 1e9
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Sec = nsec / 1e9
+- tv.Usec = nsec % 1e9 / 1e3
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: usec}
+ }
+
+ //sysnb pipe(p *[2]_C_int) (err error)
+@@ -138,6 +163,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint64(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = uint64(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint64(length)
+ }
+@@ -150,3 +179,16 @@ func Poll(fds []PollFd, timeout int) (n int, err error) {
+ }
+ return poll(&fds[0], len(fds), timeout)
+ }
++
++//sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error)
++
++func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error {
++ cmdlineLen := len(cmdline)
++ if cmdlineLen > 0 {
++ // Account for the additional NULL byte added by
++ // BytePtrFromString in kexecFileLoad. The kexec_file_load
++ // syscall expects a NULL-terminated string.
++ cmdlineLen++
++ }
++ return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags)
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_arm.go b/vendor/golang.org/x/sys/unix/syscall_linux_arm.go
+index 71d87022..99ae6137 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_linux_arm.go
++++ b/vendor/golang.org/x/sys/unix/syscall_linux_arm.go
+@@ -11,29 +11,26 @@ import (
+ "unsafe"
+ )
+
+-func Getpagesize() int { return 4096 }
+-
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = int32(nsec / 1e9)
+- ts.Nsec = int32(nsec % 1e9)
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: int32(sec), Nsec: int32(nsec)}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Sec = int32(nsec / 1e9)
+- tv.Usec = int32(nsec % 1e9 / 1e3)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: int32(sec), Usec: int32(usec)}
+ }
+
++//sysnb pipe(p *[2]_C_int) (err error)
++
+ func Pipe(p []int) (err error) {
+ if len(p) != 2 {
+ return EINVAL
+ }
+ var pp [2]_C_int
++ // Try pipe2 first for Android O, then try pipe for kernel 2.6.23.
+ err = pipe2(&pp, 0)
++ if err == ENOSYS {
++ err = pipe(&pp)
++ }
+ p[0] = int(pp[0])
+ p[1] = int(pp[1])
+ return
+@@ -84,8 +81,11 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+ // 64-bit file system and 32-bit uid calls
+ // (16-bit uid calls are not always supported in newer kernels)
+ //sys Dup2(oldfd int, newfd int) (err error)
++//sysnb EpollCreate(size int) (fd int, err error)
++//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
+ //sys Fchown(fd int, uid int, gid int) (err error) = SYS_FCHOWN32
+ //sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64
++//sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64
+ //sysnb Getegid() (egid int) = SYS_GETEGID32
+ //sysnb Geteuid() (euid int) = SYS_GETEUID32
+ //sysnb Getgid() (gid int) = SYS_GETGID32
+@@ -94,10 +94,12 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+ //sys Lchown(path string, uid int, gid int) (err error) = SYS_LCHOWN32
+ //sys Listen(s int, n int) (err error)
+ //sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
++//sys Pause() (err error)
++//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
+ //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64
+ //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT
+-//sys Setfsgid(gid int) (err error) = SYS_SETFSGID32
+-//sys Setfsuid(uid int) (err error) = SYS_SETFSUID32
++//sys setfsgid(gid int) (prev int, err error) = SYS_SETFSGID32
++//sys setfsuid(uid int) (prev int, err error) = SYS_SETFSUID32
+ //sysnb Setregid(rgid int, egid int) (err error) = SYS_SETREGID32
+ //sysnb Setresgid(rgid int, egid int, sgid int) (err error) = SYS_SETRESGID32
+ //sysnb Setresuid(ruid int, euid int, suid int) (err error) = SYS_SETRESUID32
+@@ -105,11 +107,10 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+ //sys Shutdown(fd int, how int) (err error)
+ //sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error)
+ //sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64
++//sys Ustat(dev int, ubuf *Ustat_t) (err error)
+
+-// Vsyscalls on amd64.
++//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error)
+ //sysnb Gettimeofday(tv *Timeval) (err error)
+-//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
+-//sys Pause() (err error)
+
+ func Time(t *Time_t) (Time_t, error) {
+ var tv Timeval
+@@ -131,6 +132,8 @@ func Utime(path string, buf *Utimbuf) error {
+ return Utimes(path, tv)
+ }
+
++//sys utimes(path string, times *[2]Timeval) (err error)
++
+ //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
+ //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
+ //sys Truncate(path string, length int64) (err error) = SYS_TRUNCATE64
+@@ -249,6 +252,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = uint32(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint32(length)
+ }
+@@ -261,3 +268,24 @@ func Poll(fds []PollFd, timeout int) (n int, err error) {
+ }
+ return poll(&fds[0], len(fds), timeout)
+ }
++
++//sys armSyncFileRange(fd int, flags int, off int64, n int64) (err error) = SYS_ARM_SYNC_FILE_RANGE
++
++func SyncFileRange(fd int, off int64, n int64, flags int) error {
++ // The sync_file_range and arm_sync_file_range syscalls differ only in the
++ // order of their arguments.
++ return armSyncFileRange(fd, flags, off, n)
++}
++
++//sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error)
++
++func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error {
++ cmdlineLen := len(cmdline)
++ if cmdlineLen > 0 {
++ // Account for the additional NULL byte added by
++ // BytePtrFromString in kexecFileLoad. The kexec_file_load
++ // syscall expects a NULL-terminated string.
++ cmdlineLen++
++ }
++ return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags)
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go b/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
+index 4a136396..807a0b20 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
++++ b/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
+@@ -6,7 +6,17 @@
+
+ package unix
+
++import "unsafe"
++
++func EpollCreate(size int) (fd int, err error) {
++ if size <= 0 {
++ return -1, EINVAL
++ }
++ return EpollCreate1(0)
++}
++
+ //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) = SYS_EPOLL_PWAIT
++//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
+ //sys Fchown(fd int, uid int, gid int) (err error)
+ //sys Fstat(fd int, stat *Stat_t) (err error)
+ //sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
+@@ -20,11 +30,20 @@ package unix
+ //sys Listen(s int, n int) (err error)
+ //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
+ //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
++//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
+ //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
+-//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS_PSELECT6
++
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ var ts *Timespec
++ if timeout != nil {
++ ts = &Timespec{Sec: timeout.Sec, Nsec: timeout.Usec * 1000}
++ }
++ return Pselect(nfd, r, w, e, ts, nil)
++}
++
+ //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
+-//sys Setfsgid(gid int) (err error)
+-//sys Setfsuid(uid int) (err error)
++//sys setfsgid(gid int) (prev int, err error)
++//sys setfsuid(uid int) (prev int, err error)
+ //sysnb Setregid(rgid int, egid int) (err error)
+ //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
+ //sysnb Setresuid(ruid int, euid int, suid int) (err error)
+@@ -48,6 +67,11 @@ func Lstat(path string, stat *Stat_t) (err error) {
+ //sys Statfs(path string, buf *Statfs_t) (err error)
+ //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error)
+ //sys Truncate(path string, length int64) (err error)
++
++func Ustat(dev int, ubuf *Ustat_t) (err error) {
++ return ENOSYS
++}
++
+ //sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error)
+ //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error)
+ //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error)
+@@ -66,23 +90,26 @@ func Lstat(path string, stat *Stat_t) (err error) {
+ //sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error)
+ //sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error)
+
+-func Getpagesize() int { return 65536 }
+-
+ //sysnb Gettimeofday(tv *Timeval) (err error)
+
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
++}
+
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = nsec / 1e9
+- ts.Nsec = nsec % 1e9
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: usec}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Sec = nsec / 1e9
+- tv.Usec = nsec % 1e9 / 1e3
+- return
++func futimesat(dirfd int, path string, tv *[2]Timeval) (err error) {
++ if tv == nil {
++ return utimensat(dirfd, path, nil, 0)
++ }
++
++ ts := []Timespec{
++ NsecToTimespec(TimevalToNsec(tv[0])),
++ NsecToTimespec(TimevalToNsec(tv[1])),
++ }
++ return utimensat(dirfd, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
+ }
+
+ func Time(t *Time_t) (Time_t, error) {
+@@ -105,6 +132,18 @@ func Utime(path string, buf *Utimbuf) error {
+ return Utimes(path, tv)
+ }
+
++func utimes(path string, tv *[2]Timeval) (err error) {
++ if tv == nil {
++ return utimensat(AT_FDCWD, path, nil, 0)
++ }
++
++ ts := []Timespec{
++ NsecToTimespec(TimevalToNsec(tv[0])),
++ NsecToTimespec(TimevalToNsec(tv[1])),
++ }
++ return utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
++}
++
+ func Pipe(p []int) (err error) {
+ if len(p) != 2 {
+ return EINVAL
+@@ -141,6 +180,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint64(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = uint64(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint64(length)
+ }
+@@ -153,30 +196,11 @@ func Dup2(oldfd int, newfd int) (err error) {
+ return Dup3(oldfd, newfd, 0)
+ }
+
+-func Pause() (err error) {
+- _, _, e1 := Syscall6(SYS_PPOLL, 0, 0, 0, 0, 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
++func Pause() error {
++ _, err := ppoll(nil, 0, nil, nil)
++ return err
+ }
+
+-// TODO(dfc): constants that should be in zsysnum_linux_arm64.go, remove
+-// these when the deprecated syscalls that the syscall package relies on
+-// are removed.
+-const (
+- SYS_GETPGRP = 1060
+- SYS_UTIMES = 1037
+- SYS_FUTIMESAT = 1066
+- SYS_PAUSE = 1061
+- SYS_USTAT = 1070
+- SYS_UTIME = 1063
+- SYS_LCHOWN = 1032
+- SYS_TIME = 1062
+- SYS_EPOLL_CREATE = 1042
+- SYS_EPOLL_WAIT = 1069
+-)
+-
+ func Poll(fds []PollFd, timeout int) (n int, err error) {
+ var ts *Timespec
+ if timeout >= 0 {
+@@ -188,3 +212,16 @@ func Poll(fds []PollFd, timeout int) (n int, err error) {
+ }
+ return ppoll(&fds[0], len(fds), ts, nil)
+ }
++
++//sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error)
++
++func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error {
++ cmdlineLen := len(cmdline)
++ if cmdlineLen > 0 {
++ // Account for the additional NULL byte added by
++ // BytePtrFromString in kexecFileLoad. The kexec_file_load
++ // syscall expects a NULL-terminated string.
++ cmdlineLen++
++ }
++ return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags)
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_gc.go b/vendor/golang.org/x/sys/unix/syscall_linux_gc.go
+new file mode 100644
+index 00000000..c26e6ec2
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/syscall_linux_gc.go
+@@ -0,0 +1,14 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build linux,!gccgo
++
++package unix
++
++// SyscallNoError may be used instead of Syscall for syscalls that don't fail.
++func SyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr)
++
++// RawSyscallNoError may be used instead of RawSyscall for syscalls that don't
++// fail.
++func RawSyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr)
+diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go b/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go
+new file mode 100644
+index 00000000..070bd389
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go
+@@ -0,0 +1,16 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build linux,!gccgo,386
++
++package unix
++
++import "syscall"
++
++// Underlying system call writes to newoffset via pointer.
++// Implemented in assembly to avoid allocation.
++func seek(fd int, offset int64, whence int) (newoffset int64, err syscall.Errno)
++
++func socketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (n int, err syscall.Errno)
++func rawsocketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (n int, err syscall.Errno)
+diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go b/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go
+new file mode 100644
+index 00000000..308eb7ae
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go
+@@ -0,0 +1,30 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build linux,gccgo,386
++
++package unix
++
++import (
++ "syscall"
++ "unsafe"
++)
++
++func seek(fd int, offset int64, whence int) (int64, syscall.Errno) {
++ var newoffset int64
++ offsetLow := uint32(offset & 0xffffffff)
++ offsetHigh := uint32((offset >> 32) & 0xffffffff)
++ _, _, err := Syscall6(SYS__LLSEEK, uintptr(fd), uintptr(offsetHigh), uintptr(offsetLow), uintptr(unsafe.Pointer(&newoffset)), uintptr(whence), 0)
++ return newoffset, err
++}
++
++func socketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (int, syscall.Errno) {
++ fd, _, err := Syscall(SYS_SOCKETCALL, uintptr(call), uintptr(unsafe.Pointer(&a0)), 0)
++ return int(fd), err
++}
++
++func rawsocketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (int, syscall.Errno) {
++ fd, _, err := RawSyscall(SYS_SOCKETCALL, uintptr(call), uintptr(unsafe.Pointer(&a0)), 0)
++ return int(fd), err
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go b/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go
+new file mode 100644
+index 00000000..aa7fc9e1
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go
+@@ -0,0 +1,20 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build linux,gccgo,arm
++
++package unix
++
++import (
++ "syscall"
++ "unsafe"
++)
++
++func seek(fd int, offset int64, whence int) (int64, syscall.Errno) {
++ var newoffset int64
++ offsetLow := uint32(offset & 0xffffffff)
++ offsetHigh := uint32((offset >> 32) & 0xffffffff)
++ _, _, err := Syscall6(SYS__LLSEEK, uintptr(fd), uintptr(offsetHigh), uintptr(offsetLow), uintptr(unsafe.Pointer(&newoffset)), uintptr(whence), 0)
++ return newoffset, err
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go b/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go
+index 73318e5c..af77e6e2 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go
++++ b/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go
+@@ -8,7 +8,9 @@
+ package unix
+
+ //sys Dup2(oldfd int, newfd int) (err error)
++//sysnb EpollCreate(size int) (fd int, err error)
+ //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
++//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
+ //sys Fchown(fd int, uid int, gid int) (err error)
+ //sys Fstatfs(fd int, buf *Statfs_t) (err error)
+ //sys Ftruncate(fd int, length int64) (err error)
+@@ -22,11 +24,20 @@ package unix
+ //sys Pause() (err error)
+ //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
+ //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
++//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
+ //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
+-//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS_PSELECT6
++
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ var ts *Timespec
++ if timeout != nil {
++ ts = &Timespec{Sec: timeout.Sec, Nsec: timeout.Usec * 1000}
++ }
++ return Pselect(nfd, r, w, e, ts, nil)
++}
++
+ //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
+-//sys Setfsgid(gid int) (err error)
+-//sys Setfsuid(uid int) (err error)
++//sys setfsgid(gid int) (prev int, err error)
++//sys setfsuid(uid int) (prev int, err error)
+ //sysnb Setregid(rgid int, egid int) (err error)
+ //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
+ //sysnb Setresuid(ruid int, euid int, suid int) (err error)
+@@ -37,6 +48,7 @@ package unix
+ //sys Statfs(path string, buf *Statfs_t) (err error)
+ //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error)
+ //sys Truncate(path string, length int64) (err error)
++//sys Ustat(dev int, ubuf *Ustat_t) (err error)
+ //sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error)
+ //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error)
+ //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error)
+@@ -55,8 +67,7 @@ package unix
+ //sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error)
+ //sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error)
+
+-func Getpagesize() int { return 65536 }
+-
++//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error)
+ //sysnb Gettimeofday(tv *Timeval) (err error)
+
+ func Time(t *Time_t) (tt Time_t, err error) {
+@@ -72,20 +83,14 @@ func Time(t *Time_t) (tt Time_t, err error) {
+ }
+
+ //sys Utime(path string, buf *Utimbuf) (err error)
++//sys utimes(path string, times *[2]Timeval) (err error)
+
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = nsec / 1e9
+- ts.Nsec = nsec % 1e9
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Sec = nsec / 1e9
+- tv.Usec = nsec % 1e9 / 1e3
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: usec}
+ }
+
+ func Pipe(p []int) (err error) {
+@@ -143,6 +148,7 @@ type stat_t struct {
+ }
+
+ //sys fstat(fd int, st *stat_t) (err error)
++//sys fstatat(dirfd int, path string, st *stat_t, flags int) (err error) = SYS_NEWFSTATAT
+ //sys lstat(path string, st *stat_t) (err error)
+ //sys stat(path string, st *stat_t) (err error)
+
+@@ -153,6 +159,13 @@ func Fstat(fd int, s *Stat_t) (err error) {
+ return
+ }
+
++func Fstatat(dirfd int, path string, s *Stat_t, flags int) (err error) {
++ st := &stat_t{}
++ err = fstatat(dirfd, path, st, flags)
++ fillStat_t(s, st)
++ return
++}
++
+ func Lstat(path string, s *Stat_t) (err error) {
+ st := &stat_t{}
+ err = lstat(path, st)
+@@ -195,10 +208,18 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint64(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = uint64(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint64(length)
+ }
+
++func InotifyInit() (fd int, err error) {
++ return InotifyInit1(0)
++}
++
+ //sys poll(fds *PollFd, nfds int, timeout int) (n int, err error)
+
+ func Poll(fds []PollFd, timeout int) (n int, err error) {
+diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go b/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go
+index b83d93fd..e286c6ba 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go
++++ b/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go
+@@ -15,6 +15,9 @@ import (
+ func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
+
+ //sys Dup2(oldfd int, newfd int) (err error)
++//sysnb EpollCreate(size int) (fd int, err error)
++//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
++//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
+ //sys Fchown(fd int, uid int, gid int) (err error)
+ //sys Ftruncate(fd int, length int64) (err error) = SYS_FTRUNCATE64
+ //sysnb Getegid() (egid int)
+@@ -25,20 +28,20 @@ func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr,
+ //sys Listen(s int, n int) (err error)
+ //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
+ //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
++//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
+ //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT
+ //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64
+-//sys Setfsgid(gid int) (err error)
+-//sys Setfsuid(uid int) (err error)
++//sys setfsgid(gid int) (prev int, err error)
++//sys setfsuid(uid int) (prev int, err error)
+ //sysnb Setregid(rgid int, egid int) (err error)
+ //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
+ //sysnb Setresuid(ruid int, euid int, suid int) (err error)
+-
+ //sysnb Setreuid(ruid int, euid int) (err error)
+ //sys Shutdown(fd int, how int) (err error)
+-//sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error)
+-
++//sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error)
+ //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error)
+ //sys Truncate(path string, length int64) (err error) = SYS_TRUNCATE64
++//sys Ustat(dev int, ubuf *Ustat_t) (err error)
+ //sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error)
+ //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error)
+ //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error)
+@@ -60,15 +63,17 @@ func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr,
+ //sys Ioperm(from int, num int, on int) (err error)
+ //sys Iopl(level int) (err error)
+
++//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error)
+ //sysnb Gettimeofday(tv *Timeval) (err error)
+ //sysnb Time(t *Time_t) (tt Time_t, err error)
++//sys Utime(path string, buf *Utimbuf) (err error)
++//sys utimes(path string, times *[2]Timeval) (err error)
+
+ //sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
+ //sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64
++//sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64
+ //sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64
+
+-//sys Utime(path string, buf *Utimbuf) (err error)
+-//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
+ //sys Pause() (err error)
+
+ func Fstatfs(fd int, buf *Statfs_t) (err error) {
+@@ -99,19 +104,12 @@ func Seek(fd int, offset int64, whence int) (off int64, err error) {
+ return
+ }
+
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = int32(nsec / 1e9)
+- ts.Nsec = int32(nsec % 1e9)
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: int32(sec), Nsec: int32(nsec)}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Sec = int32(nsec / 1e9)
+- tv.Usec = int32(nsec % 1e9 / 1e3)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: int32(sec), Usec: int32(usec)}
+ }
+
+ //sysnb pipe2(p *[2]_C_int, flags int) (err error)
+@@ -127,14 +125,13 @@ func Pipe2(p []int, flags int) (err error) {
+ return
+ }
+
++//sysnb pipe() (p1 int, p2 int, err error)
++
+ func Pipe(p []int) (err error) {
+ if len(p) != 2 {
+ return EINVAL
+ }
+- var pp [2]_C_int
+- err = pipe2(&pp, 0)
+- p[0] = int(pp[0])
+- p[1] = int(pp[1])
++ p[0], p[1], err = pipe()
+ return
+ }
+
+@@ -223,6 +220,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = uint32(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint32(length)
+ }
+@@ -235,5 +236,3 @@ func Poll(fds []PollFd, timeout int) (n int, err error) {
+ }
+ return poll(&fds[0], len(fds), timeout)
+ }
+-
+-func Getpagesize() int { return 4096 }
+diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go b/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go
+index 60770f62..ca0345aa 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go
++++ b/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go
+@@ -7,10 +7,13 @@
+
+ package unix
+
+-//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
+ //sys Dup2(oldfd int, newfd int) (err error)
++//sysnb EpollCreate(size int) (fd int, err error)
++//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
++//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
+ //sys Fchown(fd int, uid int, gid int) (err error)
+ //sys Fstat(fd int, stat *Stat_t) (err error)
++//sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_NEWFSTATAT
+ //sys Fstatfs(fd int, buf *Statfs_t) (err error)
+ //sys Ftruncate(fd int, length int64) (err error)
+ //sysnb Getegid() (egid int)
+@@ -27,11 +30,12 @@ package unix
+ //sys Pause() (err error)
+ //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
+ //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
++//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
+ //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
+-//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
++//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT
+ //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
+-//sys Setfsgid(gid int) (err error)
+-//sys Setfsuid(uid int) (err error)
++//sys setfsgid(gid int) (prev int, err error)
++//sys setfsuid(uid int) (prev int, err error)
+ //sysnb Setregid(rgid int, egid int) (err error)
+ //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
+ //sysnb Setresuid(ruid int, euid int, suid int) (err error)
+@@ -41,8 +45,8 @@ package unix
+ //sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error)
+ //sys Stat(path string, stat *Stat_t) (err error)
+ //sys Statfs(path string, buf *Statfs_t) (err error)
+-//sys SyncFileRange(fd int, off int64, n int64, flags int) (err error) = SYS_SYNC_FILE_RANGE2
+ //sys Truncate(path string, length int64) (err error)
++//sys Ustat(dev int, ubuf *Ustat_t) (err error)
+ //sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error)
+ //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error)
+ //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error)
+@@ -61,26 +65,18 @@ package unix
+ //sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error)
+ //sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error)
+
+-func Getpagesize() int { return 65536 }
+-
++//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error)
+ //sysnb Gettimeofday(tv *Timeval) (err error)
+ //sysnb Time(t *Time_t) (tt Time_t, err error)
+-
+ //sys Utime(path string, buf *Utimbuf) (err error)
++//sys utimes(path string, times *[2]Timeval) (err error)
+
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = nsec / 1e9
+- ts.Nsec = nsec % 1e9
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Sec = nsec / 1e9
+- tv.Usec = nsec % 1e9 / 1e3
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: usec}
+ }
+
+ func (r *PtraceRegs) PC() uint64 { return r.Nip }
+@@ -95,6 +91,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint64(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = uint64(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint64(length)
+ }
+@@ -133,3 +133,24 @@ func Poll(fds []PollFd, timeout int) (n int, err error) {
+ }
+ return poll(&fds[0], len(fds), timeout)
+ }
++
++//sys syncFileRange2(fd int, flags int, off int64, n int64) (err error) = SYS_SYNC_FILE_RANGE2
++
++func SyncFileRange(fd int, off int64, n int64, flags int) error {
++ // The sync_file_range and sync_file_range2 syscalls differ only in the
++ // order of their arguments.
++ return syncFileRange2(fd, flags, off, n)
++}
++
++//sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error)
++
++func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error {
++ cmdlineLen := len(cmdline)
++ if cmdlineLen > 0 {
++ // Account for the additional NULL byte added by
++ // BytePtrFromString in kexecFileLoad. The kexec_file_load
++ // syscall expects a NULL-terminated string.
++ cmdlineLen++
++ }
++ return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags)
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go b/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go
+similarity index 68%
+copy from vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
+copy to vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go
+index 4a136396..abdabbac 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
++++ b/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go
+@@ -1,12 +1,22 @@
+-// Copyright 2015 The Go Authors. All rights reserved.
++// Copyright 2018 The Go Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+-// +build arm64,linux
++// +build riscv64,linux
+
+ package unix
+
++import "unsafe"
++
++func EpollCreate(size int) (fd int, err error) {
++ if size <= 0 {
++ return -1, EINVAL
++ }
++ return EpollCreate1(0)
++}
++
+ //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) = SYS_EPOLL_PWAIT
++//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
+ //sys Fchown(fd int, uid int, gid int) (err error)
+ //sys Fstat(fd int, stat *Stat_t) (err error)
+ //sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
+@@ -21,10 +31,18 @@ package unix
+ //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
+ //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
+ //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
+-//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS_PSELECT6
++
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ var ts *Timespec
++ if timeout != nil {
++ ts = &Timespec{Sec: timeout.Sec, Nsec: timeout.Usec * 1000}
++ }
++ return Pselect(nfd, r, w, e, ts, nil)
++}
++
+ //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
+-//sys Setfsgid(gid int) (err error)
+-//sys Setfsuid(uid int) (err error)
++//sys setfsgid(gid int) (prev int, err error)
++//sys setfsuid(uid int) (prev int, err error)
+ //sysnb Setregid(rgid int, egid int) (err error)
+ //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
+ //sysnb Setresuid(ruid int, euid int, suid int) (err error)
+@@ -48,6 +66,11 @@ func Lstat(path string, stat *Stat_t) (err error) {
+ //sys Statfs(path string, buf *Statfs_t) (err error)
+ //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error)
+ //sys Truncate(path string, length int64) (err error)
++
++func Ustat(dev int, ubuf *Ustat_t) (err error) {
++ return ENOSYS
++}
++
+ //sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error)
+ //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error)
+ //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error)
+@@ -66,23 +89,26 @@ func Lstat(path string, stat *Stat_t) (err error) {
+ //sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error)
+ //sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error)
+
+-func Getpagesize() int { return 65536 }
+-
+ //sysnb Gettimeofday(tv *Timeval) (err error)
+
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
++}
+
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = nsec / 1e9
+- ts.Nsec = nsec % 1e9
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: usec}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Sec = nsec / 1e9
+- tv.Usec = nsec % 1e9 / 1e3
+- return
++func futimesat(dirfd int, path string, tv *[2]Timeval) (err error) {
++ if tv == nil {
++ return utimensat(dirfd, path, nil, 0)
++ }
++
++ ts := []Timespec{
++ NsecToTimespec(TimevalToNsec(tv[0])),
++ NsecToTimespec(TimevalToNsec(tv[1])),
++ }
++ return utimensat(dirfd, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
+ }
+
+ func Time(t *Time_t) (Time_t, error) {
+@@ -105,6 +131,18 @@ func Utime(path string, buf *Utimbuf) error {
+ return Utimes(path, tv)
+ }
+
++func utimes(path string, tv *[2]Timeval) (err error) {
++ if tv == nil {
++ return utimensat(AT_FDCWD, path, nil, 0)
++ }
++
++ ts := []Timespec{
++ NsecToTimespec(TimevalToNsec(tv[0])),
++ NsecToTimespec(TimevalToNsec(tv[1])),
++ }
++ return utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
++}
++
+ func Pipe(p []int) (err error) {
+ if len(p) != 2 {
+ return EINVAL
+@@ -141,6 +179,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint64(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = uint64(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint64(length)
+ }
+@@ -153,30 +195,11 @@ func Dup2(oldfd int, newfd int) (err error) {
+ return Dup3(oldfd, newfd, 0)
+ }
+
+-func Pause() (err error) {
+- _, _, e1 := Syscall6(SYS_PPOLL, 0, 0, 0, 0, 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
++func Pause() error {
++ _, err := ppoll(nil, 0, nil, nil)
++ return err
+ }
+
+-// TODO(dfc): constants that should be in zsysnum_linux_arm64.go, remove
+-// these when the deprecated syscalls that the syscall package relies on
+-// are removed.
+-const (
+- SYS_GETPGRP = 1060
+- SYS_UTIMES = 1037
+- SYS_FUTIMESAT = 1066
+- SYS_PAUSE = 1061
+- SYS_USTAT = 1070
+- SYS_UTIME = 1063
+- SYS_LCHOWN = 1032
+- SYS_TIME = 1062
+- SYS_EPOLL_CREATE = 1042
+- SYS_EPOLL_WAIT = 1069
+-)
+-
+ func Poll(fds []PollFd, timeout int) (n int, err error) {
+ var ts *Timespec
+ if timeout >= 0 {
+@@ -188,3 +211,20 @@ func Poll(fds []PollFd, timeout int) (n int, err error) {
+ }
+ return ppoll(&fds[0], len(fds), ts, nil)
+ }
++
++func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
++ return Renameat2(olddirfd, oldpath, newdirfd, newpath, 0)
++}
++
++//sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error)
++
++func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error {
++ cmdlineLen := len(cmdline)
++ if cmdlineLen > 0 {
++ // Account for the additional NULL byte added by
++ // BytePtrFromString in kexecFileLoad. The kexec_file_load
++ // syscall expects a NULL-terminated string.
++ cmdlineLen++
++ }
++ return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags)
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go b/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go
+index 1708a4bb..533e9305 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go
++++ b/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go
+@@ -11,10 +11,12 @@ import (
+ )
+
+ //sys Dup2(oldfd int, newfd int) (err error)
++//sysnb EpollCreate(size int) (fd int, err error)
+ //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
+ //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
+ //sys Fchown(fd int, uid int, gid int) (err error)
+ //sys Fstat(fd int, stat *Stat_t) (err error)
++//sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_NEWFSTATAT
+ //sys Fstatfs(fd int, buf *Statfs_t) (err error)
+ //sys Ftruncate(fd int, length int64) (err error)
+ //sysnb Getegid() (egid int)
+@@ -28,11 +30,12 @@ import (
+ //sys Pause() (err error)
+ //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
+ //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
++//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
+ //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
+ //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
+ //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
+-//sys Setfsgid(gid int) (err error)
+-//sys Setfsuid(uid int) (err error)
++//sys setfsgid(gid int) (prev int, err error)
++//sys setfsuid(uid int) (prev int, err error)
+ //sysnb Setregid(rgid int, egid int) (err error)
+ //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
+ //sysnb Setresuid(ruid int, euid int, suid int) (err error)
+@@ -43,11 +46,11 @@ import (
+ //sys Statfs(path string, buf *Statfs_t) (err error)
+ //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error)
+ //sys Truncate(path string, length int64) (err error)
++//sys Ustat(dev int, ubuf *Ustat_t) (err error)
+ //sysnb getgroups(n int, list *_Gid_t) (nn int, err error)
+ //sysnb setgroups(n int, list *_Gid_t) (err error)
+
+-func Getpagesize() int { return 4096 }
+-
++//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error)
+ //sysnb Gettimeofday(tv *Timeval) (err error)
+
+ func Time(t *Time_t) (tt Time_t, err error) {
+@@ -63,20 +66,14 @@ func Time(t *Time_t) (tt Time_t, err error) {
+ }
+
+ //sys Utime(path string, buf *Utimbuf) (err error)
++//sys utimes(path string, times *[2]Timeval) (err error)
+
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = nsec / 1e9
+- ts.Nsec = nsec % 1e9
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Sec = nsec / 1e9
+- tv.Usec = nsec % 1e9 / 1e3
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: usec}
+ }
+
+ //sysnb pipe2(p *[2]_C_int, flags int) (err error)
+@@ -123,6 +120,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint64(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = uint64(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint64(length)
+ }
+@@ -326,3 +327,16 @@ func Poll(fds []PollFd, timeout int) (n int, err error) {
+ }
+ return poll(&fds[0], len(fds), timeout)
+ }
++
++//sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error)
++
++func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error {
++ cmdlineLen := len(cmdline)
++ if cmdlineLen > 0 {
++ // Account for the additional NULL byte added by
++ // BytePtrFromString in kexecFileLoad. The kexec_file_load
++ // syscall expects a NULL-terminated string.
++ cmdlineLen++
++ }
++ return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags)
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go b/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go
+index 20b7454d..d890a227 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go
++++ b/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go
+@@ -6,15 +6,12 @@
+
+ package unix
+
+-import (
+- "sync/atomic"
+- "syscall"
+-)
+-
+ //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
++//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
+ //sys Dup2(oldfd int, newfd int) (err error)
+ //sys Fchown(fd int, uid int, gid int) (err error)
+ //sys Fstat(fd int, stat *Stat_t) (err error)
++//sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64
+ //sys Fstatfs(fd int, buf *Statfs_t) (err error)
+ //sys Ftruncate(fd int, length int64) (err error)
+ //sysnb Getegid() (egid int)
+@@ -29,11 +26,12 @@ import (
+ //sys Pause() (err error)
+ //sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
+ //sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
++//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
+ //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
+ //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
+ //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
+-//sys Setfsgid(gid int) (err error)
+-//sys Setfsuid(uid int) (err error)
++//sys setfsgid(gid int) (prev int, err error)
++//sys setfsuid(uid int) (prev int, err error)
+ //sysnb Setregid(rgid int, egid int) (err error)
+ //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
+ //sysnb Setresuid(ruid int, euid int, suid int) (err error)
+@@ -63,21 +61,6 @@ import (
+ //sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error)
+ //sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error)
+
+-func sysconf(name int) (n int64, err syscall.Errno)
+-
+-// pageSize caches the value of Getpagesize, since it can't change
+-// once the system is booted.
+-var pageSize int64 // accessed atomically
+-
+-func Getpagesize() int {
+- n := atomic.LoadInt64(&pageSize)
+- if n == 0 {
+- n, _ = sysconf(_SC_PAGESIZE)
+- atomic.StoreInt64(&pageSize, n)
+- }
+- return int(n)
+-}
+-
+ func Ioperm(from int, num int, on int) (err error) {
+ return ENOSYS
+ }
+@@ -86,6 +69,7 @@ func Iopl(level int) (err error) {
+ return ENOSYS
+ }
+
++//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error)
+ //sysnb Gettimeofday(tv *Timeval) (err error)
+
+ func Time(t *Time_t) (tt Time_t, err error) {
+@@ -101,20 +85,14 @@ func Time(t *Time_t) (tt Time_t, err error) {
+ }
+
+ //sys Utime(path string, buf *Utimbuf) (err error)
++//sys utimes(path string, times *[2]Timeval) (err error)
+
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = nsec / 1e9
+- ts.Nsec = nsec % 1e9
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Sec = nsec / 1e9
+- tv.Usec = int32(nsec % 1e9 / 1e3)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: int32(usec)}
+ }
+
+ func (r *PtraceRegs) PC() uint64 { return r.Tpc }
+@@ -129,6 +107,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint64(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = uint64(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint64(length)
+ }
+diff --git a/vendor/golang.org/x/sys/unix/syscall_netbsd.go b/vendor/golang.org/x/sys/unix/syscall_netbsd.go
+index e1296684..45b50a61 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_netbsd.go
++++ b/vendor/golang.org/x/sys/unix/syscall_netbsd.go
+@@ -13,10 +13,12 @@
+ package unix
+
+ import (
++ "runtime"
+ "syscall"
+ "unsafe"
+ )
+
++// SockaddrDatalink implements the Sockaddr interface for AF_LINK type sockets.
+ type SockaddrDatalink struct {
+ Len uint8
+ Family uint8
+@@ -55,7 +57,6 @@ func sysctlNodes(mib []_C_int) (nodes []Sysctlnode, err error) {
+ }
+
+ func nametomib(name string) (mib []_C_int, err error) {
+-
+ // Split name into components.
+ var parts []string
+ last := 0
+@@ -114,9 +115,47 @@ func Pipe(p []int) (err error) {
+ return
+ }
+
+-//sys getdents(fd int, buf []byte) (n int, err error)
++//sys Getdents(fd int, buf []byte) (n int, err error)
+ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+- return getdents(fd, buf)
++ n, err = Getdents(fd, buf)
++ if err != nil || basep == nil {
++ return
++ }
++
++ var off int64
++ off, err = Seek(fd, 0, 1 /* SEEK_CUR */)
++ if err != nil {
++ *basep = ^uintptr(0)
++ return
++ }
++ *basep = uintptr(off)
++ if unsafe.Sizeof(*basep) == 8 {
++ return
++ }
++ if off>>32 != 0 {
++ // We can't stuff the offset back into a uintptr, so any
++ // future calls would be suspect. Generate an error.
++ // EIO is allowed by getdirentries.
++ err = EIO
++ }
++ return
++}
++
++const ImplementsGetwd = true
++
++//sys Getcwd(buf []byte) (n int, err error) = SYS___GETCWD
++
++func Getwd() (string, error) {
++ var buf [PathMax]byte
++ _, err := Getcwd(buf[0:])
++ if err != nil {
++ return "", err
++ }
++ n := clen(buf[:])
++ if n < 1 {
++ return "", EINVAL
++ }
++ return string(buf[:n]), nil
+ }
+
+ // TODO
+@@ -124,6 +163,83 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+ return -1, ENOSYS
+ }
+
++func setattrlistTimes(path string, times []Timespec, flags int) error {
++ // used on Darwin for UtimesNano
++ return ENOSYS
++}
++
++//sys ioctl(fd int, req uint, arg uintptr) (err error)
++
++//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL
++
++func IoctlGetPtmget(fd int, req uint) (*Ptmget, error) {
++ var value Ptmget
++ err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
++ runtime.KeepAlive(value)
++ return &value, err
++}
++
++func Uname(uname *Utsname) error {
++ mib := []_C_int{CTL_KERN, KERN_OSTYPE}
++ n := unsafe.Sizeof(uname.Sysname)
++ if err := sysctl(mib, &uname.Sysname[0], &n, nil, 0); err != nil {
++ return err
++ }
++
++ mib = []_C_int{CTL_KERN, KERN_HOSTNAME}
++ n = unsafe.Sizeof(uname.Nodename)
++ if err := sysctl(mib, &uname.Nodename[0], &n, nil, 0); err != nil {
++ return err
++ }
++
++ mib = []_C_int{CTL_KERN, KERN_OSRELEASE}
++ n = unsafe.Sizeof(uname.Release)
++ if err := sysctl(mib, &uname.Release[0], &n, nil, 0); err != nil {
++ return err
++ }
++
++ mib = []_C_int{CTL_KERN, KERN_VERSION}
++ n = unsafe.Sizeof(uname.Version)
++ if err := sysctl(mib, &uname.Version[0], &n, nil, 0); err != nil {
++ return err
++ }
++
++ // The version might have newlines or tabs in it, convert them to
++ // spaces.
++ for i, b := range uname.Version {
++ if b == '\n' || b == '\t' {
++ if i == len(uname.Version)-1 {
++ uname.Version[i] = 0
++ } else {
++ uname.Version[i] = ' '
++ }
++ }
++ }
++
++ mib = []_C_int{CTL_HW, HW_MACHINE}
++ n = unsafe.Sizeof(uname.Machine)
++ if err := sysctl(mib, &uname.Machine[0], &n, nil, 0); err != nil {
++ return err
++ }
++
++ return nil
++}
++
++func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
++ if raceenabled {
++ raceReleaseMerge(unsafe.Pointer(&ioSync))
++ }
++ return sendfile(outfd, infd, offset, count)
++}
++
++func Fstatvfs(fd int, buf *Statvfs_t) (err error) {
++ return Fstatvfs1(fd, buf, ST_WAIT)
++}
++
++func Statvfs(path string, buf *Statvfs_t) (err error) {
++ return Statvfs1(path, buf, ST_WAIT)
++}
++
+ /*
+ * Exposed directly
+ */
+@@ -137,14 +253,33 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+ //sys Close(fd int) (err error)
+ //sys Dup(fd int) (nfd int, err error)
+ //sys Dup2(from int, to int) (err error)
++//sys Dup3(from int, to int, flags int) (err error)
+ //sys Exit(code int)
++//sys ExtattrGetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error)
++//sys ExtattrSetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error)
++//sys ExtattrDeleteFd(fd int, attrnamespace int, attrname string) (err error)
++//sys ExtattrListFd(fd int, attrnamespace int, data uintptr, nbytes int) (ret int, err error)
++//sys ExtattrGetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error)
++//sys ExtattrSetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error)
++//sys ExtattrDeleteFile(file string, attrnamespace int, attrname string) (err error)
++//sys ExtattrListFile(file string, attrnamespace int, data uintptr, nbytes int) (ret int, err error)
++//sys ExtattrGetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error)
++//sys ExtattrSetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error)
++//sys ExtattrDeleteLink(link string, attrnamespace int, attrname string) (err error)
++//sys ExtattrListLink(link string, attrnamespace int, data uintptr, nbytes int) (ret int, err error)
++//sys Faccessat(dirfd int, path string, mode uint32, flags int) (err error)
++//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_POSIX_FADVISE
+ //sys Fchdir(fd int) (err error)
+ //sys Fchflags(fd int, flags int) (err error)
+ //sys Fchmod(fd int, mode uint32) (err error)
++//sys Fchmodat(dirfd int, path string, mode uint32, flags int) (err error)
+ //sys Fchown(fd int, uid int, gid int) (err error)
++//sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
+ //sys Flock(fd int, how int) (err error)
+ //sys Fpathconf(fd int, name int) (val int, err error)
+ //sys Fstat(fd int, stat *Stat_t) (err error)
++//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
++//sys Fstatvfs1(fd int, buf *Statvfs_t, flags int) (err error) = SYS_FSTATVFS1
+ //sys Fsync(fd int) (err error)
+ //sys Ftruncate(fd int, length int64) (err error)
+ //sysnb Getegid() (egid int)
+@@ -165,23 +300,30 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+ //sys Kqueue() (fd int, err error)
+ //sys Lchown(path string, uid int, gid int) (err error)
+ //sys Link(path string, link string) (err error)
++//sys Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error)
+ //sys Listen(s int, backlog int) (err error)
+ //sys Lstat(path string, stat *Stat_t) (err error)
+ //sys Mkdir(path string, mode uint32) (err error)
++//sys Mkdirat(dirfd int, path string, mode uint32) (err error)
+ //sys Mkfifo(path string, mode uint32) (err error)
++//sys Mkfifoat(dirfd int, path string, mode uint32) (err error)
+ //sys Mknod(path string, mode uint32, dev int) (err error)
++//sys Mknodat(dirfd int, path string, mode uint32, dev int) (err error)
+ //sys Nanosleep(time *Timespec, leftover *Timespec) (err error)
+ //sys Open(path string, mode int, perm uint32) (fd int, err error)
++//sys Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error)
+ //sys Pathconf(path string, name int) (val int, err error)
+ //sys Pread(fd int, p []byte, offset int64) (n int, err error)
+ //sys Pwrite(fd int, p []byte, offset int64) (n int, err error)
+ //sys read(fd int, p []byte) (n int, err error)
+ //sys Readlink(path string, buf []byte) (n int, err error)
++//sys Readlinkat(dirfd int, path string, buf []byte) (n int, err error)
+ //sys Rename(from string, to string) (err error)
++//sys Renameat(fromfd int, from string, tofd int, to string) (err error)
+ //sys Revoke(path string) (err error)
+ //sys Rmdir(path string) (err error)
+ //sys Seek(fd int, offset int64, whence int) (newoffset int64, err error) = SYS_LSEEK
+-//sys Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error)
++//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
+ //sysnb Setegid(egid int) (err error)
+ //sysnb Seteuid(euid int) (err error)
+ //sysnb Setgid(gid int) (err error)
+@@ -194,11 +336,14 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+ //sysnb Settimeofday(tp *Timeval) (err error)
+ //sysnb Setuid(uid int) (err error)
+ //sys Stat(path string, stat *Stat_t) (err error)
++//sys Statvfs1(path string, buf *Statvfs_t, flags int) (err error) = SYS_STATVFS1
+ //sys Symlink(path string, link string) (err error)
++//sys Symlinkat(oldpath string, newdirfd int, newpath string) (err error)
+ //sys Sync() (err error)
+ //sys Truncate(path string, length int64) (err error)
+ //sys Umask(newmask int) (oldmask int)
+ //sys Unlink(path string) (err error)
++//sys Unlinkat(dirfd int, path string, flags int) (err error)
+ //sys Unmount(path string, flags int) (err error)
+ //sys write(fd int, p []byte) (n int, err error)
+ //sys mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error)
+@@ -225,7 +370,6 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+ // __msync13
+ // __ntp_gettime30
+ // __posix_chown
+-// __posix_fadvise50
+ // __posix_fchown
+ // __posix_lchown
+ // __posix_rename
+@@ -384,7 +528,6 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+ // getitimer
+ // getvfsstat
+ // getxattr
+-// ioctl
+ // ktrace
+ // lchflags
+ // lchmod
+@@ -422,7 +565,6 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+ // ntp_adjtime
+ // pmc_control
+ // pmc_get_info
+-// poll
+ // pollts
+ // preadv
+ // profil
+diff --git a/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go b/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go
+index afaca098..24da8b52 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go
++++ b/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go
+@@ -6,21 +6,12 @@
+
+ package unix
+
+-func Getpagesize() int { return 4096 }
+-
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = int64(nsec / 1e9)
+- ts.Nsec = int32(nsec % 1e9)
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: int32(nsec)}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = int32(nsec % 1e9 / 1e3)
+- tv.Sec = int64(nsec / 1e9)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: int32(usec)}
+ }
+
+ func SetKevent(k *Kevent_t, fd, mode, flags int) {
+@@ -37,6 +28,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = int32(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint32(length)
+ }
+diff --git a/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go
+index a6ff04ce..25a0ac82 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go
+@@ -6,21 +6,12 @@
+
+ package unix
+
+-func Getpagesize() int { return 4096 }
+-
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = int64(nsec / 1e9)
+- ts.Nsec = int64(nsec % 1e9)
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = int32(nsec % 1e9 / 1e3)
+- tv.Sec = int64(nsec / 1e9)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: int32(usec)}
+ }
+
+ func SetKevent(k *Kevent_t, fd, mode, flags int) {
+@@ -37,6 +28,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = int32(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint32(length)
+ }
+diff --git a/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go b/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go
+index 68a6969b..21591ecd 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go
++++ b/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go
+@@ -6,21 +6,12 @@
+
+ package unix
+
+-func Getpagesize() int { return 4096 }
+-
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = int64(nsec / 1e9)
+- ts.Nsec = int32(nsec % 1e9)
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: int32(nsec)}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = int32(nsec % 1e9 / 1e3)
+- tv.Sec = int64(nsec / 1e9)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: int32(usec)}
+ }
+
+ func SetKevent(k *Kevent_t, fd, mode, flags int) {
+@@ -37,6 +28,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = int32(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint32(length)
+ }
+diff --git a/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go
+similarity index 50%
+copy from vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go
+copy to vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go
+index a6ff04ce..80474963 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go
+@@ -1,26 +1,17 @@
+-// Copyright 2009 The Go Authors. All rights reserved.
++// Copyright 2019 The Go Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+-// +build amd64,netbsd
++// +build arm64,netbsd
+
+ package unix
+
+-func Getpagesize() int { return 4096 }
+-
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = int64(nsec / 1e9)
+- ts.Nsec = int64(nsec % 1e9)
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = int32(nsec % 1e9 / 1e3)
+- tv.Sec = int64(nsec / 1e9)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: int32(usec)}
+ }
+
+ func SetKevent(k *Kevent_t, fd, mode, flags int) {
+@@ -37,6 +28,10 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = int32(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint32(length)
+ }
+diff --git a/vendor/golang.org/x/sys/unix/syscall_no_getwd.go b/vendor/golang.org/x/sys/unix/syscall_no_getwd.go
+deleted file mode 100644
+index 530792ea..00000000
+--- a/vendor/golang.org/x/sys/unix/syscall_no_getwd.go
++++ /dev/null
+@@ -1,11 +0,0 @@
+-// Copyright 2013 The Go Authors. All rights reserved.
+-// Use of this source code is governed by a BSD-style
+-// license that can be found in the LICENSE file.
+-
+-// +build dragonfly freebsd netbsd openbsd
+-
+-package unix
+-
+-const ImplementsGetwd = false
+-
+-func Getwd() (string, error) { return "", ENOTSUP }
+diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd.go b/vendor/golang.org/x/sys/unix/syscall_openbsd.go
+index 408e6308..a266e92a 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_openbsd.go
++++ b/vendor/golang.org/x/sys/unix/syscall_openbsd.go
+@@ -13,10 +13,12 @@
+ package unix
+
+ import (
++ "sort"
+ "syscall"
+ "unsafe"
+ )
+
++// SockaddrDatalink implements the Sockaddr interface for AF_LINK type sockets.
+ type SockaddrDatalink struct {
+ Len uint8
+ Family uint8
+@@ -32,23 +34,11 @@ type SockaddrDatalink struct {
+ func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno)
+
+ func nametomib(name string) (mib []_C_int, err error) {
+-
+- // Perform lookup via a binary search
+- left := 0
+- right := len(sysctlMib) - 1
+- for {
+- idx := left + (right-left)/2
+- switch {
+- case name == sysctlMib[idx].ctlname:
+- return sysctlMib[idx].ctloid, nil
+- case name > sysctlMib[idx].ctlname:
+- left = idx + 1
+- default:
+- right = idx - 1
+- }
+- if left > right {
+- break
+- }
++ i := sort.Search(len(sysctlMib), func(i int) bool {
++ return sysctlMib[i].ctlname >= name
++ })
++ if i < len(sysctlMib) && sysctlMib[i].ctlname == name {
++ return sysctlMib[i].ctloid, nil
+ }
+ return nil, EINVAL
+ }
+@@ -65,21 +55,87 @@ func direntNamlen(buf []byte) (uint64, bool) {
+ return readInt(buf, unsafe.Offsetof(Dirent{}.Namlen), unsafe.Sizeof(Dirent{}.Namlen))
+ }
+
+-//sysnb pipe(p *[2]_C_int) (err error)
++func SysctlUvmexp(name string) (*Uvmexp, error) {
++ mib, err := sysctlmib(name)
++ if err != nil {
++ return nil, err
++ }
++
++ n := uintptr(SizeofUvmexp)
++ var u Uvmexp
++ if err := sysctl(mib, (*byte)(unsafe.Pointer(&u)), &n, nil, 0); err != nil {
++ return nil, err
++ }
++ if n != SizeofUvmexp {
++ return nil, EIO
++ }
++ return &u, nil
++}
++
+ func Pipe(p []int) (err error) {
++ return Pipe2(p, 0)
++}
++
++//sysnb pipe2(p *[2]_C_int, flags int) (err error)
++func Pipe2(p []int, flags int) error {
+ if len(p) != 2 {
+ return EINVAL
+ }
+ var pp [2]_C_int
+- err = pipe(&pp)
++ err := pipe2(&pp, flags)
+ p[0] = int(pp[0])
+ p[1] = int(pp[1])
+- return
++ return err
+ }
+
+-//sys getdents(fd int, buf []byte) (n int, err error)
++//sys Getdents(fd int, buf []byte) (n int, err error)
+ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+- return getdents(fd, buf)
++ n, err = Getdents(fd, buf)
++ if err != nil || basep == nil {
++ return
++ }
++
++ var off int64
++ off, err = Seek(fd, 0, 1 /* SEEK_CUR */)
++ if err != nil {
++ *basep = ^uintptr(0)
++ return
++ }
++ *basep = uintptr(off)
++ if unsafe.Sizeof(*basep) == 8 {
++ return
++ }
++ if off>>32 != 0 {
++ // We can't stuff the offset back into a uintptr, so any
++ // future calls would be suspect. Generate an error.
++ // EIO was allowed by getdirentries.
++ err = EIO
++ }
++ return
++}
++
++const ImplementsGetwd = true
++
++//sys Getcwd(buf []byte) (n int, err error) = SYS___GETCWD
++
++func Getwd() (string, error) {
++ var buf [PathMax]byte
++ _, err := Getcwd(buf[0:])
++ if err != nil {
++ return "", err
++ }
++ n := clen(buf[:])
++ if n < 1 {
++ return "", EINVAL
++ }
++ return string(buf[:n]), nil
++}
++
++func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
++ if raceenabled {
++ raceReleaseMerge(unsafe.Pointer(&ioSync))
++ }
++ return sendfile(outfd, infd, offset, count)
+ }
+
+ // TODO
+@@ -102,6 +158,70 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ return
+ }
+
++func setattrlistTimes(path string, times []Timespec, flags int) error {
++ // used on Darwin for UtimesNano
++ return ENOSYS
++}
++
++//sys ioctl(fd int, req uint, arg uintptr) (err error)
++
++//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL
++
++//sys ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error)
++
++func Ppoll(fds []PollFd, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
++ if len(fds) == 0 {
++ return ppoll(nil, 0, timeout, sigmask)
++ }
++ return ppoll(&fds[0], len(fds), timeout, sigmask)
++}
++
++func Uname(uname *Utsname) error {
++ mib := []_C_int{CTL_KERN, KERN_OSTYPE}
++ n := unsafe.Sizeof(uname.Sysname)
++ if err := sysctl(mib, &uname.Sysname[0], &n, nil, 0); err != nil {
++ return err
++ }
++
++ mib = []_C_int{CTL_KERN, KERN_HOSTNAME}
++ n = unsafe.Sizeof(uname.Nodename)
++ if err := sysctl(mib, &uname.Nodename[0], &n, nil, 0); err != nil {
++ return err
++ }
++
++ mib = []_C_int{CTL_KERN, KERN_OSRELEASE}
++ n = unsafe.Sizeof(uname.Release)
++ if err := sysctl(mib, &uname.Release[0], &n, nil, 0); err != nil {
++ return err
++ }
++
++ mib = []_C_int{CTL_KERN, KERN_VERSION}
++ n = unsafe.Sizeof(uname.Version)
++ if err := sysctl(mib, &uname.Version[0], &n, nil, 0); err != nil {
++ return err
++ }
++
++ // The version might have newlines or tabs in it, convert them to
++ // spaces.
++ for i, b := range uname.Version {
++ if b == '\n' || b == '\t' {
++ if i == len(uname.Version)-1 {
++ uname.Version[i] = 0
++ } else {
++ uname.Version[i] = ' '
++ }
++ }
++ }
++
++ mib = []_C_int{CTL_HW, HW_MACHINE}
++ n = unsafe.Sizeof(uname.Machine)
++ if err := sysctl(mib, &uname.Machine[0], &n, nil, 0); err != nil {
++ return err
++ }
++
++ return nil
++}
++
+ /*
+ * Exposed directly
+ */
+@@ -115,14 +235,19 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ //sys Close(fd int) (err error)
+ //sys Dup(fd int) (nfd int, err error)
+ //sys Dup2(from int, to int) (err error)
++//sys Dup3(from int, to int, flags int) (err error)
+ //sys Exit(code int)
++//sys Faccessat(dirfd int, path string, mode uint32, flags int) (err error)
+ //sys Fchdir(fd int) (err error)
+ //sys Fchflags(fd int, flags int) (err error)
+ //sys Fchmod(fd int, mode uint32) (err error)
++//sys Fchmodat(dirfd int, path string, mode uint32, flags int) (err error)
+ //sys Fchown(fd int, uid int, gid int) (err error)
++//sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
+ //sys Flock(fd int, how int) (err error)
+ //sys Fpathconf(fd int, name int) (val int, err error)
+ //sys Fstat(fd int, stat *Stat_t) (err error)
++//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
+ //sys Fstatfs(fd int, stat *Statfs_t) (err error)
+ //sys Fsync(fd int) (err error)
+ //sys Ftruncate(fd int, length int64) (err error)
+@@ -135,6 +260,7 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ //sysnb Getppid() (ppid int)
+ //sys Getpriority(which int, who int) (prio int, err error)
+ //sysnb Getrlimit(which int, lim *Rlimit) (err error)
++//sysnb Getrtable() (rtable int, err error)
+ //sysnb Getrusage(who int, rusage *Rusage) (err error)
+ //sysnb Getsid(pid int) (sid int, err error)
+ //sysnb Gettimeofday(tv *Timeval) (err error)
+@@ -144,23 +270,30 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ //sys Kqueue() (fd int, err error)
+ //sys Lchown(path string, uid int, gid int) (err error)
+ //sys Link(path string, link string) (err error)
++//sys Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error)
+ //sys Listen(s int, backlog int) (err error)
+ //sys Lstat(path string, stat *Stat_t) (err error)
+ //sys Mkdir(path string, mode uint32) (err error)
++//sys Mkdirat(dirfd int, path string, mode uint32) (err error)
+ //sys Mkfifo(path string, mode uint32) (err error)
++//sys Mkfifoat(dirfd int, path string, mode uint32) (err error)
+ //sys Mknod(path string, mode uint32, dev int) (err error)
++//sys Mknodat(dirfd int, path string, mode uint32, dev int) (err error)
+ //sys Nanosleep(time *Timespec, leftover *Timespec) (err error)
+ //sys Open(path string, mode int, perm uint32) (fd int, err error)
++//sys Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error)
+ //sys Pathconf(path string, name int) (val int, err error)
+ //sys Pread(fd int, p []byte, offset int64) (n int, err error)
+ //sys Pwrite(fd int, p []byte, offset int64) (n int, err error)
+ //sys read(fd int, p []byte) (n int, err error)
+ //sys Readlink(path string, buf []byte) (n int, err error)
++//sys Readlinkat(dirfd int, path string, buf []byte) (n int, err error)
+ //sys Rename(from string, to string) (err error)
++//sys Renameat(fromfd int, from string, tofd int, to string) (err error)
+ //sys Revoke(path string) (err error)
+ //sys Rmdir(path string) (err error)
+ //sys Seek(fd int, offset int64, whence int) (newoffset int64, err error) = SYS_LSEEK
+-//sys Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error)
++//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
+ //sysnb Setegid(egid int) (err error)
+ //sysnb Seteuid(euid int) (err error)
+ //sysnb Setgid(gid int) (err error)
+@@ -172,16 +305,19 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ //sysnb Setresgid(rgid int, egid int, sgid int) (err error)
+ //sysnb Setresuid(ruid int, euid int, suid int) (err error)
+ //sysnb Setrlimit(which int, lim *Rlimit) (err error)
++//sysnb Setrtable(rtable int) (err error)
+ //sysnb Setsid() (pid int, err error)
+ //sysnb Settimeofday(tp *Timeval) (err error)
+ //sysnb Setuid(uid int) (err error)
+ //sys Stat(path string, stat *Stat_t) (err error)
+ //sys Statfs(path string, stat *Statfs_t) (err error)
+ //sys Symlink(path string, link string) (err error)
++//sys Symlinkat(oldpath string, newdirfd int, newpath string) (err error)
+ //sys Sync() (err error)
+ //sys Truncate(path string, length int64) (err error)
+ //sys Umask(newmask int) (oldmask int)
+ //sys Unlink(path string) (err error)
++//sys Unlinkat(dirfd int, path string, flags int) (err error)
+ //sys Unmount(path string, flags int) (err error)
+ //sys write(fd int, p []byte) (n int, err error)
+ //sys mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error)
+@@ -204,15 +340,10 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ // clock_settime
+ // closefrom
+ // execve
+-// faccessat
+-// fchmodat
+-// fchownat
+-// fcntl
+ // fhopen
+ // fhstat
+ // fhstatfs
+ // fork
+-// fstatat
+ // futimens
+ // getfh
+ // getgid
+@@ -220,20 +351,14 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ // getlogin
+ // getresgid
+ // getresuid
+-// getrtable
+ // getthrid
+-// ioctl
+ // ktrace
+ // lfs_bmapv
+ // lfs_markv
+ // lfs_segclean
+ // lfs_segwait
+-// linkat
+ // mincore
+ // minherit
+-// mkdirat
+-// mkfifoat
+-// mknodat
+ // mount
+ // mquery
+ // msgctl
+@@ -242,13 +367,10 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ // msgsnd
+ // nfssvc
+ // nnpfspioctl
+-// openat
+-// poll
+ // preadv
+ // profil
+ // pwritev
+ // quotactl
+-// readlinkat
+ // readv
+ // reboot
+ // renameat
+@@ -258,7 +380,6 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ // semop
+ // setgroups
+ // setitimer
+-// setrtable
+ // setsockopt
+ // shmat
+ // shmctl
+@@ -270,13 +391,11 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+ // sigprocmask
+ // sigreturn
+ // sigsuspend
+-// symlinkat
+ // sysarch
+ // syscall
+ // threxit
+ // thrsigdivert
+ // thrsleep
+ // thrwakeup
+-// unlinkat
+ // vfork
+ // writev
+diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go b/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go
+index a66ddc59..42b5a0e5 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go
++++ b/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go
+@@ -6,21 +6,12 @@
+
+ package unix
+
+-func Getpagesize() int { return 4096 }
+-
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = int64(nsec / 1e9)
+- ts.Nsec = int32(nsec % 1e9)
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: int32(nsec)}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = int32(nsec % 1e9 / 1e3)
+- tv.Sec = int64(nsec / 1e9)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: int32(usec)}
+ }
+
+ func SetKevent(k *Kevent_t, fd, mode, flags int) {
+@@ -37,6 +28,14 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = uint32(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint32(length)
+ }
++
++// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
++// of openbsd/386 the syscall is called sysctl instead of __sysctl.
++const SYS___SYSCTL = SYS_SYSCTL
+diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go
+index 0776c1fa..6ea4b488 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go
+@@ -6,21 +6,12 @@
+
+ package unix
+
+-func Getpagesize() int { return 4096 }
+-
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = nsec / 1e9
+- ts.Nsec = nsec % 1e9
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = nsec % 1e9 / 1e3
+- tv.Sec = nsec / 1e9
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: usec}
+ }
+
+ func SetKevent(k *Kevent_t, fd, mode, flags int) {
+@@ -37,6 +28,14 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = uint32(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint32(length)
+ }
++
++// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
++// of openbsd/amd64 the syscall is called sysctl instead of __sysctl.
++const SYS___SYSCTL = SYS_SYSCTL
+diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go b/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go
+index 14ddaf3f..1c3d26fa 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go
++++ b/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go
+@@ -6,23 +6,12 @@
+
+ package unix
+
+-import "syscall"
+-
+-func Getpagesize() int { return syscall.Getpagesize() }
+-
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = int64(nsec / 1e9)
+- ts.Nsec = int32(nsec % 1e9)
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: int32(nsec)}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = int32(nsec % 1e9 / 1e3)
+- tv.Sec = int64(nsec / 1e9)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: int32(usec)}
+ }
+
+ func SetKevent(k *Kevent_t, fd, mode, flags int) {
+@@ -39,6 +28,14 @@ func (msghdr *Msghdr) SetControllen(length int) {
+ msghdr.Controllen = uint32(length)
+ }
+
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = uint32(length)
++}
++
+ func (cmsg *Cmsghdr) SetLen(length int) {
+ cmsg.Len = uint32(length)
+ }
++
++// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
++// of openbsd/arm the syscall is called sysctl instead of __sysctl.
++const SYS___SYSCTL = SYS_SYSCTL
+diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go b/vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go
+new file mode 100644
+index 00000000..a8c458cb
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go
+@@ -0,0 +1,41 @@
++// Copyright 2019 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build arm64,openbsd
++
++package unix
++
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
++}
++
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: usec}
++}
++
++func SetKevent(k *Kevent_t, fd, mode, flags int) {
++ k.Ident = uint64(fd)
++ k.Filter = int16(mode)
++ k.Flags = uint16(flags)
++}
++
++func (iov *Iovec) SetLen(length int) {
++ iov.Len = uint64(length)
++}
++
++func (msghdr *Msghdr) SetControllen(length int) {
++ msghdr.Controllen = uint32(length)
++}
++
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = uint32(length)
++}
++
++func (cmsg *Cmsghdr) SetLen(length int) {
++ cmsg.Len = uint32(length)
++}
++
++// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions
++// of openbsd/amd64 the syscall is called sysctl instead of __sysctl.
++const SYS___SYSCTL = SYS_SYSCTL
+diff --git a/vendor/golang.org/x/sys/unix/syscall_solaris.go b/vendor/golang.org/x/sys/unix/syscall_solaris.go
+index 0d4e5c4e..0e2a696a 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_solaris.go
++++ b/vendor/golang.org/x/sys/unix/syscall_solaris.go
+@@ -13,7 +13,6 @@
+ package unix
+
+ import (
+- "sync/atomic"
+ "syscall"
+ "unsafe"
+ )
+@@ -24,6 +23,7 @@ type syscallFunc uintptr
+ func rawSysvicall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno)
+ func sysvicall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno)
+
++// SockaddrDatalink implements the Sockaddr interface for AF_LINK type sockets.
+ type SockaddrDatalink struct {
+ Family uint16
+ Index uint16
+@@ -35,15 +35,6 @@ type SockaddrDatalink struct {
+ raw RawSockaddrDatalink
+ }
+
+-func clen(n []byte) int {
+- for i := 0; i < len(n); i++ {
+- if n[i] == 0 {
+- return i
+- }
+- }
+- return len(n)
+-}
+-
+ func direntIno(buf []byte) (uint64, bool) {
+ return readInt(buf, unsafe.Offsetof(Dirent{}.Ino), unsafe.Sizeof(Dirent{}.Ino))
+ }
+@@ -137,7 +128,19 @@ func Getsockname(fd int) (sa Sockaddr, err error) {
+ if err = getsockname(fd, &rsa, &len); err != nil {
+ return
+ }
+- return anyToSockaddr(&rsa)
++ return anyToSockaddr(fd, &rsa)
++}
++
++// GetsockoptString returns the string value of the socket option opt for the
++// socket associated with fd at the given socket level.
++func GetsockoptString(fd, level, opt int) (string, error) {
++ buf := make([]byte, 256)
++ vallen := _Socklen(len(buf))
++ err := getsockopt(fd, level, opt, unsafe.Pointer(&buf[0]), &vallen)
++ if err != nil {
++ return "", err
++ }
++ return string(buf[:vallen-1]), nil
+ }
+
+ const ImplementsGetwd = true
+@@ -167,7 +170,7 @@ func Getwd() (wd string, err error) {
+
+ func Getgroups() (gids []int, err error) {
+ n, err := getgroups(0, nil)
+- // Check for error and sanity check group count. Newer versions of
++ // Check for error and sanity check group count. Newer versions of
+ // Solaris allow up to 1024 (NGROUPS_MAX).
+ if n < 0 || n > 1024 {
+ if err != nil {
+@@ -202,6 +205,7 @@ func Setgroups(gids []int) (err error) {
+ return setgroups(len(a), &a[0])
+ }
+
++// ReadDirent reads directory entries from fd and writes them into buf.
+ func ReadDirent(fd int, buf []byte) (n int, err error) {
+ // Final argument is (basep *uintptr) and the syscall doesn't take nil.
+ // TODO(rsc): Can we use a single global basep for all calls?
+@@ -325,6 +329,16 @@ func UtimesNanoAt(dirfd int, path string, ts []Timespec, flags int) error {
+
+ //sys fcntl(fd int, cmd int, arg int) (val int, err error)
+
++// FcntlInt performs a fcntl syscall on fd with the provided command and argument.
++func FcntlInt(fd uintptr, cmd, arg int) (int, error) {
++ valptr, _, errno := sysvicall6(uintptr(unsafe.Pointer(&procfcntl)), 3, uintptr(fd), uintptr(cmd), uintptr(arg), 0, 0, 0)
++ var err error
++ if errno != 0 {
++ err = errno
++ }
++ return int(valptr), err
++}
++
+ // FcntlFlock performs a fcntl syscall for the F_GETLK, F_SETLK or F_SETLKW command.
+ func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) error {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procfcntl)), 3, uintptr(fd), uintptr(cmd), uintptr(unsafe.Pointer(lk)), 0, 0, 0)
+@@ -351,7 +365,7 @@ func Futimesat(dirfd int, path string, tv []Timeval) error {
+ }
+
+ // Solaris doesn't have an futimes function because it allows NULL to be
+-// specified as the path for futimesat. However, Go doesn't like
++// specified as the path for futimesat. However, Go doesn't like
+ // NULL-style string interfaces, so this simple wrapper is provided.
+ func Futimes(fd int, tv []Timeval) error {
+ if tv == nil {
+@@ -363,7 +377,7 @@ func Futimes(fd int, tv []Timeval) error {
+ return futimesat(fd, nil, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
+ }
+
+-func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
++func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
+ switch rsa.Addr.Family {
+ case AF_UNIX:
+ pp := (*RawSockaddrUnix)(unsafe.Pointer(rsa))
+@@ -377,7 +391,7 @@ func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
+ for n < len(pp.Path) && pp.Path[n] != 0 {
+ n++
+ }
+- bytes := (*[10000]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
++ bytes := (*[len(pp.Path)]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
+ sa.Name = string(bytes)
+ return sa, nil
+
+@@ -414,7 +428,7 @@ func Accept(fd int) (nfd int, sa Sockaddr, err error) {
+ if nfd == -1 {
+ return
+ }
+- sa, err = anyToSockaddr(&rsa)
++ sa, err = anyToSockaddr(fd, &rsa)
+ if err != nil {
+ Close(nfd)
+ nfd = 0
+@@ -451,7 +465,7 @@ func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from
+ oobn = int(msg.Accrightslen)
+ // source address is only specified if the socket is unconnected
+ if rsa.Addr.Family != AF_UNSPEC {
+- from, err = anyToSockaddr(&rsa)
++ from, err = anyToSockaddr(fd, &rsa)
+ }
+ return
+ }
+@@ -515,50 +529,54 @@ func Acct(path string) (err error) {
+ return acct(pathp)
+ }
+
+-/*
+- * Expose the ioctl function
+- */
++//sys __makedev(version int, major uint, minor uint) (val uint64)
+
+-//sys ioctl(fd int, req uint, arg uintptr) (err error)
+-
+-func IoctlSetInt(fd int, req uint, value int) (err error) {
+- return ioctl(fd, req, uintptr(value))
++func Mkdev(major, minor uint32) uint64 {
++ return __makedev(NEWDEV, uint(major), uint(minor))
+ }
+
+-func IoctlSetWinsize(fd int, req uint, value *Winsize) (err error) {
+- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
++//sys __major(version int, dev uint64) (val uint)
++
++func Major(dev uint64) uint32 {
++ return uint32(__major(NEWDEV, dev))
+ }
+
+-func IoctlSetTermios(fd int, req uint, value *Termios) (err error) {
+- return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
++//sys __minor(version int, dev uint64) (val uint)
++
++func Minor(dev uint64) uint32 {
++ return uint32(__minor(NEWDEV, dev))
+ }
+
++/*
++ * Expose the ioctl function
++ */
++
++//sys ioctl(fd int, req uint, arg uintptr) (err error)
++
+ func IoctlSetTermio(fd int, req uint, value *Termio) (err error) {
+ return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
+ }
+
+-func IoctlGetInt(fd int, req uint) (int, error) {
+- var value int
+- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
+- return value, err
+-}
+-
+-func IoctlGetWinsize(fd int, req uint) (*Winsize, error) {
+- var value Winsize
++func IoctlGetTermio(fd int, req uint) (*Termio, error) {
++ var value Termio
+ err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
+ return &value, err
+ }
+
+-func IoctlGetTermios(fd int, req uint) (*Termios, error) {
+- var value Termios
+- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
+- return &value, err
++//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error)
++
++func Poll(fds []PollFd, timeout int) (n int, err error) {
++ if len(fds) == 0 {
++ return poll(nil, 0, timeout)
++ }
++ return poll(&fds[0], len(fds), timeout)
+ }
+
+-func IoctlGetTermio(fd int, req uint) (*Termio, error) {
+- var value Termio
+- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value)))
+- return &value, err
++func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
++ if raceenabled {
++ raceReleaseMerge(unsafe.Pointer(&ioSync))
++ }
++ return sendfile(outfd, infd, offset, count)
+ }
+
+ /*
+@@ -575,15 +593,17 @@ func IoctlGetTermio(fd int, req uint) (*Termio, error) {
+ //sys Dup(fd int) (nfd int, err error)
+ //sys Dup2(oldfd int, newfd int) (err error)
+ //sys Exit(code int)
++//sys Faccessat(dirfd int, path string, mode uint32, flags int) (err error)
+ //sys Fchdir(fd int) (err error)
+ //sys Fchmod(fd int, mode uint32) (err error)
+ //sys Fchmodat(dirfd int, path string, mode uint32, flags int) (err error)
+ //sys Fchown(fd int, uid int, gid int) (err error)
+ //sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
+ //sys Fdatasync(fd int) (err error)
+-//sys Flock(fd int, how int) (err error)
++//sys Flock(fd int, how int) (err error)
+ //sys Fpathconf(fd int, name int) (val int, err error)
+ //sys Fstat(fd int, stat *Stat_t) (err error)
++//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error)
+ //sys Fstatvfs(fd int, vfsstat *Statvfs_t) (err error)
+ //sys Getdents(fd int, buf []byte, basep *uintptr) (n int, err error)
+ //sysnb Getgid() (gid int)
+@@ -613,6 +633,7 @@ func IoctlGetTermio(fd int, req uint) (*Termio, error) {
+ //sys Mlock(b []byte) (err error)
+ //sys Mlockall(flags int) (err error)
+ //sys Mprotect(b []byte, prot int) (err error)
++//sys Msync(b []byte, flags int) (err error)
+ //sys Munlock(b []byte) (err error)
+ //sys Munlockall() (err error)
+ //sys Nanosleep(time *Timespec, leftover *Timespec) (err error)
+@@ -628,6 +649,7 @@ func IoctlGetTermio(fd int, req uint) (*Termio, error) {
+ //sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
+ //sys Rmdir(path string) (err error)
+ //sys Seek(fd int, offset int64, whence int) (newoffset int64, err error) = lseek
++//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
+ //sysnb Setegid(egid int) (err error)
+ //sysnb Seteuid(euid int) (err error)
+ //sysnb Setgid(gid int) (err error)
+@@ -659,6 +681,7 @@ func IoctlGetTermio(fd int, req uint) (*Termio, error) {
+ //sys connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) = libsocket.__xnet_connect
+ //sys mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error)
+ //sys munmap(addr uintptr, length uintptr) (err error)
++//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = libsendfile.sendfile
+ //sys sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) = libsocket.__xnet_sendto
+ //sys socket(domain int, typ int, proto int) (fd int, err error) = libsocket.__xnet_socket
+ //sysnb socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) = libsocket.__xnet_socketpair
+@@ -699,18 +722,3 @@ func Mmap(fd int, offset int64, length int, prot int, flags int) (data []byte, e
+ func Munmap(b []byte) (err error) {
+ return mapper.Munmap(b)
+ }
+-
+-//sys sysconf(name int) (n int64, err error)
+-
+-// pageSize caches the value of Getpagesize, since it can't change
+-// once the system is booted.
+-var pageSize int64 // accessed atomically
+-
+-func Getpagesize() int {
+- n := atomic.LoadInt64(&pageSize)
+- if n == 0 {
+- n, _ = sysconf(_SC_PAGESIZE)
+- atomic.StoreInt64(&pageSize, n)
+- }
+- return int(n)
+-}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go b/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go
+index 5aff62c3..b22a34d7 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go
++++ b/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go
+@@ -6,30 +6,22 @@
+
+ package unix
+
+-func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
+-
+-func NsecToTimespec(nsec int64) (ts Timespec) {
+- ts.Sec = nsec / 1e9
+- ts.Nsec = nsec % 1e9
+- return
++func setTimespec(sec, nsec int64) Timespec {
++ return Timespec{Sec: sec, Nsec: nsec}
+ }
+
+-func NsecToTimeval(nsec int64) (tv Timeval) {
+- nsec += 999 // round up to microsecond
+- tv.Usec = nsec % 1e9 / 1e3
+- tv.Sec = int64(nsec / 1e9)
+- return
++func setTimeval(sec, usec int64) Timeval {
++ return Timeval{Sec: sec, Usec: usec}
+ }
+
+ func (iov *Iovec) SetLen(length int) {
+ iov.Len = uint64(length)
+ }
+
+-func (cmsg *Cmsghdr) SetLen(length int) {
+- cmsg.Len = uint32(length)
++func (msghdr *Msghdr) SetIovlen(length int) {
++ msghdr.Iovlen = int32(length)
+ }
+
+-func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
+- // TODO(aram): implement this, see issue 5847.
+- panic("unimplemented")
++func (cmsg *Cmsghdr) SetLen(length int) {
++ cmsg.Len = uint32(length)
+ }
+diff --git a/vendor/golang.org/x/sys/unix/syscall_unix.go b/vendor/golang.org/x/sys/unix/syscall_unix.go
+index 3ed8a91f..8f710d01 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_unix.go
++++ b/vendor/golang.org/x/sys/unix/syscall_unix.go
+@@ -2,12 +2,13 @@
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+-// +build darwin dragonfly freebsd linux netbsd openbsd solaris
++// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
+
+ package unix
+
+ import (
+- "runtime"
++ "bytes"
++ "sort"
+ "sync"
+ "syscall"
+ "unsafe"
+@@ -19,13 +20,6 @@ var (
+ Stderr = 2
+ )
+
+-const (
+- darwin64Bit = runtime.GOOS == "darwin" && sizeofPtr == 8
+- dragonfly64Bit = runtime.GOOS == "dragonfly" && sizeofPtr == 8
+- netbsd32Bit = runtime.GOOS == "netbsd" && sizeofPtr == 4
+- solaris64Bit = runtime.GOOS == "solaris" && sizeofPtr == 8
+-)
+-
+ // Do the interface allocations only once for common
+ // Errno values.
+ var (
+@@ -34,6 +28,11 @@ var (
+ errENOENT error = syscall.ENOENT
+ )
+
++var (
++ signalNameMapOnce sync.Once
++ signalNameMap map[string]syscall.Signal
++)
++
+ // errnoErr returns common boxed Errno values, to prevent
+ // allocations at runtime.
+ func errnoErr(e syscall.Errno) error {
+@@ -50,6 +49,50 @@ func errnoErr(e syscall.Errno) error {
+ return e
+ }
+
++// ErrnoName returns the error name for error number e.
++func ErrnoName(e syscall.Errno) string {
++ i := sort.Search(len(errorList), func(i int) bool {
++ return errorList[i].num >= e
++ })
++ if i < len(errorList) && errorList[i].num == e {
++ return errorList[i].name
++ }
++ return ""
++}
++
++// SignalName returns the signal name for signal number s.
++func SignalName(s syscall.Signal) string {
++ i := sort.Search(len(signalList), func(i int) bool {
++ return signalList[i].num >= s
++ })
++ if i < len(signalList) && signalList[i].num == s {
++ return signalList[i].name
++ }
++ return ""
++}
++
++// SignalNum returns the syscall.Signal for signal named s,
++// or 0 if a signal with such name is not found.
++// The signal name should start with "SIG".
++func SignalNum(s string) syscall.Signal {
++ signalNameMapOnce.Do(func() {
++ signalNameMap = make(map[string]syscall.Signal, len(signalList))
++ for _, signal := range signalList {
++ signalNameMap[signal.name] = signal.num
++ }
++ })
++ return signalNameMap[s]
++}
++
++// clen returns the index of the first NULL byte in n or len(n) if n contains no NULL byte.
++func clen(n []byte) int {
++ i := bytes.IndexByte(n, 0)
++ if i == -1 {
++ i = len(n)
++ }
++ return i
++}
++
+ // Mmap manager, for use by operating system-specific implementations.
+
+ type mmapper struct {
+@@ -138,16 +181,19 @@ func Write(fd int, p []byte) (n int, err error) {
+ // creation of IPv6 sockets to return EAFNOSUPPORT.
+ var SocketDisableIPv6 bool
+
++// Sockaddr represents a socket address.
+ type Sockaddr interface {
+ sockaddr() (ptr unsafe.Pointer, len _Socklen, err error) // lowercase; only we can define Sockaddrs
+ }
+
++// SockaddrInet4 implements the Sockaddr interface for AF_INET type sockets.
+ type SockaddrInet4 struct {
+ Port int
+ Addr [4]byte
+ raw RawSockaddrInet4
+ }
+
++// SockaddrInet6 implements the Sockaddr interface for AF_INET6 type sockets.
+ type SockaddrInet6 struct {
+ Port int
+ ZoneId uint32
+@@ -155,6 +201,7 @@ type SockaddrInet6 struct {
+ raw RawSockaddrInet6
+ }
+
++// SockaddrUnix implements the Sockaddr interface for AF_UNIX type sockets.
+ type SockaddrUnix struct {
+ Name string
+ raw RawSockaddrUnix
+@@ -182,7 +229,14 @@ func Getpeername(fd int) (sa Sockaddr, err error) {
+ if err = getpeername(fd, &rsa, &len); err != nil {
+ return
+ }
+- return anyToSockaddr(&rsa)
++ return anyToSockaddr(fd, &rsa)
++}
++
++func GetsockoptByte(fd, level, opt int) (value byte, err error) {
++ var n byte
++ vallen := _Socklen(1)
++ err = getsockopt(fd, level, opt, unsafe.Pointer(&n), &vallen)
++ return n, err
+ }
+
+ func GetsockoptInt(fd, level, opt int) (value int, err error) {
+@@ -192,6 +246,61 @@ func GetsockoptInt(fd, level, opt int) (value int, err error) {
+ return int(n), err
+ }
+
++func GetsockoptInet4Addr(fd, level, opt int) (value [4]byte, err error) {
++ vallen := _Socklen(4)
++ err = getsockopt(fd, level, opt, unsafe.Pointer(&value[0]), &vallen)
++ return value, err
++}
++
++func GetsockoptIPMreq(fd, level, opt int) (*IPMreq, error) {
++ var value IPMreq
++ vallen := _Socklen(SizeofIPMreq)
++ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
++ return &value, err
++}
++
++func GetsockoptIPv6Mreq(fd, level, opt int) (*IPv6Mreq, error) {
++ var value IPv6Mreq
++ vallen := _Socklen(SizeofIPv6Mreq)
++ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
++ return &value, err
++}
++
++func GetsockoptIPv6MTUInfo(fd, level, opt int) (*IPv6MTUInfo, error) {
++ var value IPv6MTUInfo
++ vallen := _Socklen(SizeofIPv6MTUInfo)
++ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
++ return &value, err
++}
++
++func GetsockoptICMPv6Filter(fd, level, opt int) (*ICMPv6Filter, error) {
++ var value ICMPv6Filter
++ vallen := _Socklen(SizeofICMPv6Filter)
++ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
++ return &value, err
++}
++
++func GetsockoptLinger(fd, level, opt int) (*Linger, error) {
++ var linger Linger
++ vallen := _Socklen(SizeofLinger)
++ err := getsockopt(fd, level, opt, unsafe.Pointer(&linger), &vallen)
++ return &linger, err
++}
++
++func GetsockoptTimeval(fd, level, opt int) (*Timeval, error) {
++ var tv Timeval
++ vallen := _Socklen(unsafe.Sizeof(tv))
++ err := getsockopt(fd, level, opt, unsafe.Pointer(&tv), &vallen)
++ return &tv, err
++}
++
++func GetsockoptUint64(fd, level, opt int) (value uint64, err error) {
++ var n uint64
++ vallen := _Socklen(8)
++ err = getsockopt(fd, level, opt, unsafe.Pointer(&n), &vallen)
++ return n, err
++}
++
+ func Recvfrom(fd int, p []byte, flags int) (n int, from Sockaddr, err error) {
+ var rsa RawSockaddrAny
+ var len _Socklen = SizeofSockaddrAny
+@@ -199,7 +308,7 @@ func Recvfrom(fd int, p []byte, flags int) (n int, from Sockaddr, err error) {
+ return
+ }
+ if rsa.Addr.Family != AF_UNSPEC {
+- from, err = anyToSockaddr(&rsa)
++ from, err = anyToSockaddr(fd, &rsa)
+ }
+ return
+ }
+@@ -242,13 +351,21 @@ func SetsockoptLinger(fd, level, opt int, l *Linger) (err error) {
+ }
+
+ func SetsockoptString(fd, level, opt int, s string) (err error) {
+- return setsockopt(fd, level, opt, unsafe.Pointer(&[]byte(s)[0]), uintptr(len(s)))
++ var p unsafe.Pointer
++ if len(s) > 0 {
++ p = unsafe.Pointer(&[]byte(s)[0])
++ }
++ return setsockopt(fd, level, opt, p, uintptr(len(s)))
+ }
+
+ func SetsockoptTimeval(fd, level, opt int, tv *Timeval) (err error) {
+ return setsockopt(fd, level, opt, unsafe.Pointer(tv), unsafe.Sizeof(*tv))
+ }
+
++func SetsockoptUint64(fd, level, opt int, value uint64) (err error) {
++ return setsockopt(fd, level, opt, unsafe.Pointer(&value), 8)
++}
++
+ func Socket(domain, typ, proto int) (fd int, err error) {
+ if domain == AF_INET6 && SocketDisableIPv6 {
+ return -1, EAFNOSUPPORT
+@@ -267,13 +384,6 @@ func Socketpair(domain, typ, proto int) (fd [2]int, err error) {
+ return
+ }
+
+-func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
+- if raceenabled {
+- raceReleaseMerge(unsafe.Pointer(&ioSync))
+- }
+- return sendfile(outfd, infd, offset, count)
+-}
+-
+ var ioSync int64
+
+ func CloseOnExec(fd int) { fcntl(fd, F_SETFD, FD_CLOEXEC) }
+@@ -291,3 +401,31 @@ func SetNonblock(fd int, nonblocking bool) (err error) {
+ _, err = fcntl(fd, F_SETFL, flag)
+ return err
+ }
++
++// Exec calls execve(2), which replaces the calling executable in the process
++// tree. argv0 should be the full path to an executable ("/bin/ls") and the
++// executable name should also be the first argument in argv (["ls", "-l"]).
++// envv are the environment variables that should be passed to the new
++// process (["USER=go", "PWD=/tmp"]).
++func Exec(argv0 string, argv []string, envv []string) error {
++ return syscall.Exec(argv0, argv, envv)
++}
++
++// Lutimes sets the access and modification times tv on path. If path refers to
++// a symlink, it is not dereferenced and the timestamps are set on the symlink.
++// If tv is nil, the access and modification times are set to the current time.
++// Otherwise tv must contain exactly 2 elements, with access time as the first
++// element and modification time as the second element.
++func Lutimes(path string, tv []Timeval) error {
++ if tv == nil {
++ return UtimesNanoAt(AT_FDCWD, path, nil, AT_SYMLINK_NOFOLLOW)
++ }
++ if len(tv) != 2 {
++ return EINVAL
++ }
++ ts := []Timespec{
++ NsecToTimespec(TimevalToNsec(tv[0])),
++ NsecToTimespec(TimevalToNsec(tv[1])),
++ }
++ return UtimesNanoAt(AT_FDCWD, path, ts, AT_SYMLINK_NOFOLLOW)
++}
+diff --git a/vendor/golang.org/x/sys/unix/syscall_unix_gc.go b/vendor/golang.org/x/sys/unix/syscall_unix_gc.go
+index 4cb8e8ed..1c70d1b6 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_unix_gc.go
++++ b/vendor/golang.org/x/sys/unix/syscall_unix_gc.go
+@@ -3,7 +3,7 @@
+ // license that can be found in the LICENSE file.
+
+ // +build darwin dragonfly freebsd linux netbsd openbsd solaris
+-// +build !gccgo
++// +build !gccgo,!ppc64le,!ppc64
+
+ package unix
+
+diff --git a/vendor/golang.org/x/sys/unix/syscall_unix_gc.go b/vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go
+similarity index 51%
+copy from vendor/golang.org/x/sys/unix/syscall_unix_gc.go
+copy to vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go
+index 4cb8e8ed..86dc765a 100644
+--- a/vendor/golang.org/x/sys/unix/syscall_unix_gc.go
++++ b/vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go
+@@ -1,15 +1,24 @@
+-// Copyright 2016 The Go Authors. All rights reserved.
++// Copyright 2018 The Go Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+-// +build darwin dragonfly freebsd linux netbsd openbsd solaris
++// +build linux
++// +build ppc64le ppc64
+ // +build !gccgo
+
+ package unix
+
+ import "syscall"
+
+-func Syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno)
+-func Syscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno)
+-func RawSyscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno)
+-func RawSyscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno)
++func Syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) {
++ return syscall.Syscall(trap, a1, a2, a3)
++}
++func Syscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) {
++ return syscall.Syscall6(trap, a1, a2, a3, a4, a5, a6)
++}
++func RawSyscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) {
++ return syscall.RawSyscall(trap, a1, a2, a3)
++}
++func RawSyscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) {
++ return syscall.RawSyscall6(trap, a1, a2, a3, a4, a5, a6)
++}
+diff --git a/vendor/golang.org/x/sys/unix/timestruct.go b/vendor/golang.org/x/sys/unix/timestruct.go
+new file mode 100644
+index 00000000..4a672f56
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/timestruct.go
+@@ -0,0 +1,82 @@
++// Copyright 2017 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
++
++package unix
++
++import "time"
++
++// TimespecToNsec converts a Timespec value into a number of
++// nanoseconds since the Unix epoch.
++func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) }
++
++// NsecToTimespec takes a number of nanoseconds since the Unix epoch
++// and returns the corresponding Timespec value.
++func NsecToTimespec(nsec int64) Timespec {
++ sec := nsec / 1e9
++ nsec = nsec % 1e9
++ if nsec < 0 {
++ nsec += 1e9
++ sec--
++ }
++ return setTimespec(sec, nsec)
++}
++
++// TimeToTimespec converts t into a Timespec.
++// On some 32-bit systems the range of valid Timespec values are smaller
++// than that of time.Time values. So if t is out of the valid range of
++// Timespec, it returns a zero Timespec and ERANGE.
++func TimeToTimespec(t time.Time) (Timespec, error) {
++ sec := t.Unix()
++ nsec := int64(t.Nanosecond())
++ ts := setTimespec(sec, nsec)
++
++ // Currently all targets have either int32 or int64 for Timespec.Sec.
++ // If there were a new target with floating point type for it, we have
++ // to consider the rounding error.
++ if int64(ts.Sec) != sec {
++ return Timespec{}, ERANGE
++ }
++ return ts, nil
++}
++
++// TimevalToNsec converts a Timeval value into a number of nanoseconds
++// since the Unix epoch.
++func TimevalToNsec(tv Timeval) int64 { return int64(tv.Sec)*1e9 + int64(tv.Usec)*1e3 }
++
++// NsecToTimeval takes a number of nanoseconds since the Unix epoch
++// and returns the corresponding Timeval value.
++func NsecToTimeval(nsec int64) Timeval {
++ nsec += 999 // round up to microsecond
++ usec := nsec % 1e9 / 1e3
++ sec := nsec / 1e9
++ if usec < 0 {
++ usec += 1e6
++ sec--
++ }
++ return setTimeval(sec, usec)
++}
++
++// Unix returns ts as the number of seconds and nanoseconds elapsed since the
++// Unix epoch.
++func (ts *Timespec) Unix() (sec int64, nsec int64) {
++ return int64(ts.Sec), int64(ts.Nsec)
++}
++
++// Unix returns tv as the number of seconds and nanoseconds elapsed since the
++// Unix epoch.
++func (tv *Timeval) Unix() (sec int64, nsec int64) {
++ return int64(tv.Sec), int64(tv.Usec) * 1000
++}
++
++// Nano returns ts as the number of nanoseconds elapsed since the Unix epoch.
++func (ts *Timespec) Nano() int64 {
++ return int64(ts.Sec)*1e9 + int64(ts.Nsec)
++}
++
++// Nano returns tv as the number of nanoseconds elapsed since the Unix epoch.
++func (tv *Timeval) Nano() int64 {
++ return int64(tv.Sec)*1e9 + int64(tv.Usec)*1000
++}
+diff --git a/vendor/golang.org/x/sys/unix/types_netbsd.go b/vendor/golang.org/x/sys/unix/types_aix.go
+similarity index 53%
+copy from vendor/golang.org/x/sys/unix/types_netbsd.go
+copy to vendor/golang.org/x/sys/unix/types_aix.go
+index cb95c80a..40d2beed 100644
+--- a/vendor/golang.org/x/sys/unix/types_netbsd.go
++++ b/vendor/golang.org/x/sys/unix/types_aix.go
+@@ -1,11 +1,12 @@
+-// Copyright 2009 The Go Authors. All rights reserved.
++// Copyright 2018 The Go Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+
+ // +build ignore
++// +build aix
+
+ /*
+-Input to cgo -godefs. See README.md
++Input to cgo -godefs. See also mkerrors.sh and mkall.sh
+ */
+
+ // +godefs map struct_in_addr [4]byte /* in_addr */
+@@ -14,44 +15,37 @@ Input to cgo -godefs. See README.md
+ package unix
+
+ /*
+-#define KERNEL
+-#include <dirent.h>
+-#include <fcntl.h>
+-#include <signal.h>
+-#include <termios.h>
+-#include <stdio.h>
+-#include <unistd.h>
+-#include <sys/param.h>
+ #include <sys/types.h>
+-#include <sys/event.h>
+-#include <sys/mman.h>
+-#include <sys/mount.h>
+-#include <sys/ptrace.h>
+-#include <sys/resource.h>
+-#include <sys/select.h>
+-#include <sys/signal.h>
+-#include <sys/socket.h>
+-#include <sys/stat.h>
+-#include <sys/sysctl.h>
+ #include <sys/time.h>
+-#include <sys/uio.h>
++#include <sys/limits.h>
+ #include <sys/un.h>
+-#include <sys/wait.h>
+-#include <net/bpf.h>
++#include <utime.h>
++#include <sys/utsname.h>
++#include <sys/poll.h>
++#include <sys/resource.h>
++#include <sys/stat.h>
++#include <sys/statfs.h>
++#include <sys/termio.h>
++#include <sys/ioctl.h>
++
++#include <termios.h>
++
+ #include <net/if.h>
+ #include <net/if_dl.h>
+-#include <net/route.h>
+ #include <netinet/in.h>
+ #include <netinet/icmp6.h>
+-#include <netinet/tcp.h>
++
++
++#include <dirent.h>
++#include <fcntl.h>
+
+ enum {
+ sizeofPtr = sizeof(void*),
+ };
+
+ union sockaddr_all {
+- struct sockaddr s1; // this one gets used for fields
+- struct sockaddr_in s2; // these pad it out
++ struct sockaddr s1; // this one gets used for fields
++ struct sockaddr_in s2; // these pad it out
+ struct sockaddr_in6 s3;
+ struct sockaddr_un s4;
+ struct sockaddr_dl s5;
+@@ -65,14 +59,15 @@ struct sockaddr_any {
+ */
+ import "C"
+
+-// Machine characteristics; for internal use.
++// Machine characteristics
+
+ const (
+- sizeofPtr = C.sizeofPtr
+- sizeofShort = C.sizeof_short
+- sizeofInt = C.sizeof_int
+- sizeofLong = C.sizeof_long
+- sizeofLongLong = C.sizeof_longlong
++ SizeofPtr = C.sizeofPtr
++ SizeofShort = C.sizeof_short
++ SizeofInt = C.sizeof_int
++ SizeofLong = C.sizeof_long
++ SizeofLongLong = C.sizeof_longlong
++ PathMax = C.PATH_MAX
+ )
+
+ // Basic types
+@@ -84,32 +79,50 @@ type (
+ _C_long_long C.longlong
+ )
+
++type off64 C.off64_t
++type off C.off_t
++type Mode_t C.mode_t
++
+ // Time
+
+ type Timespec C.struct_timespec
+
+ type Timeval C.struct_timeval
+
++type Timeval32 C.struct_timeval32
++
++type Timex C.struct_timex
++
++type Time_t C.time_t
++
++type Tms C.struct_tms
++
++type Utimbuf C.struct_utimbuf
++
++type Timezone C.struct_timezone
++
+ // Processes
+
+ type Rusage C.struct_rusage
+
+-type Rlimit C.struct_rlimit
++type Rlimit C.struct_rlimit64
++
++type Pid_t C.pid_t
+
+ type _Gid_t C.gid_t
+
++type dev_t C.dev_t
++
+ // Files
+
+ type Stat_t C.struct_stat
+
+-type Statfs_t C.struct_statfs
++type StatxTimestamp C.struct_statx_timestamp
+
+-type Flock_t C.struct_flock
++type Statx_t C.struct_statx
+
+ type Dirent C.struct_dirent
+
+-type Fsid C.fsid_t
+-
+ // Sockets
+
+ type RawSockaddrInet4 C.struct_sockaddr_in
+@@ -126,7 +139,9 @@ type RawSockaddrAny C.struct_sockaddr_any
+
+ type _Socklen C.socklen_t
+
+-type Linger C.struct_linger
++type Cmsghdr C.struct_cmsghdr
++
++type ICMPv6Filter C.struct_icmp6_filter
+
+ type Iovec C.struct_iovec
+
+@@ -134,15 +149,11 @@ type IPMreq C.struct_ip_mreq
+
+ type IPv6Mreq C.struct_ipv6_mreq
+
+-type Msghdr C.struct_msghdr
+-
+-type Cmsghdr C.struct_cmsghdr
+-
+-type Inet6Pktinfo C.struct_in6_pktinfo
+-
+ type IPv6MTUInfo C.struct_ip6_mtuinfo
+
+-type ICMPv6Filter C.struct_icmp6_filter
++type Linger C.struct_linger
++
++type Msghdr C.struct_msghdr
+
+ const (
+ SizeofSockaddrInet4 = C.sizeof_struct_sockaddr_in
+@@ -153,87 +164,74 @@ const (
+ SizeofLinger = C.sizeof_struct_linger
+ SizeofIPMreq = C.sizeof_struct_ip_mreq
+ SizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq
++ SizeofIPv6MTUInfo = C.sizeof_struct_ip6_mtuinfo
+ SizeofMsghdr = C.sizeof_struct_msghdr
+ SizeofCmsghdr = C.sizeof_struct_cmsghdr
+- SizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo
+- SizeofIPv6MTUInfo = C.sizeof_struct_ip6_mtuinfo
+ SizeofICMPv6Filter = C.sizeof_struct_icmp6_filter
+ )
+
+-// Ptrace requests
++// Routing and interface messages
+
+ const (
+- PTRACE_TRACEME = C.PT_TRACE_ME
+- PTRACE_CONT = C.PT_CONTINUE
+- PTRACE_KILL = C.PT_KILL
++ SizeofIfMsghdr = C.sizeof_struct_if_msghdr
+ )
+
+-// Events (kqueue, kevent)
+-
+-type Kevent_t C.struct_kevent
++type IfMsgHdr C.struct_if_msghdr
+
+-// Select
++// Misc
+
+ type FdSet C.fd_set
+
+-// Routing and interface messages
++type Utsname C.struct_utsname
+
+-const (
+- SizeofIfMsghdr = C.sizeof_struct_if_msghdr
+- SizeofIfData = C.sizeof_struct_if_data
+- SizeofIfaMsghdr = C.sizeof_struct_ifa_msghdr
+- SizeofIfAnnounceMsghdr = C.sizeof_struct_if_announcemsghdr
+- SizeofRtMsghdr = C.sizeof_struct_rt_msghdr
+- SizeofRtMetrics = C.sizeof_struct_rt_metrics
+-)
++type Ustat_t C.struct_ustat
+
+-type IfMsghdr C.struct_if_msghdr
++type Sigset_t C.sigset_t
+
+-type IfData C.struct_if_data
++const (
++ AT_FDCWD = C.AT_FDCWD
++ AT_REMOVEDIR = C.AT_REMOVEDIR
++ AT_SYMLINK_NOFOLLOW = C.AT_SYMLINK_NOFOLLOW
++)
+
+-type IfaMsghdr C.struct_ifa_msghdr
++// Terminal handling
+
+-type IfAnnounceMsghdr C.struct_if_announcemsghdr
++type Termios C.struct_termios
+
+-type RtMsghdr C.struct_rt_msghdr
++type Termio C.struct_termio
+
+-type RtMetrics C.struct_rt_metrics
++type Winsize C.struct_winsize
+
+-type Mclpool C.struct_mclpool
++//poll
+
+-// Berkeley packet filter
++type PollFd struct {
++ Fd int32
++ Events uint16
++ Revents uint16
++}
+
+ const (
+- SizeofBpfVersion = C.sizeof_struct_bpf_version
+- SizeofBpfStat = C.sizeof_struct_bpf_stat
+- SizeofBpfProgram = C.sizeof_struct_bpf_program
+- SizeofBpfInsn = C.sizeof_struct_bpf_insn
+- SizeofBpfHdr = C.sizeof_struct_bpf_hdr
++ POLLERR = C.POLLERR
++ POLLHUP = C.POLLHUP
++ POLLIN = C.POLLIN
++ POLLNVAL = C.POLLNVAL
++ POLLOUT = C.POLLOUT
++ POLLPRI = C.POLLPRI
++ POLLRDBAND = C.POLLRDBAND
++ POLLRDNORM = C.POLLRDNORM
++ POLLWRBAND = C.POLLWRBAND
++ POLLWRNORM = C.POLLWRNORM
+ )
+
+-type BpfVersion C.struct_bpf_version
+-
+-type BpfStat C.struct_bpf_stat
+-
+-type BpfProgram C.struct_bpf_program
+-
+-type BpfInsn C.struct_bpf_insn
+-
+-type BpfHdr C.struct_bpf_hdr
+-
+-type BpfTimeval C.struct_bpf_timeval
++//flock_t
+
+-// Terminal handling
+-
+-type Termios C.struct_termios
++type Flock_t C.struct_flock64
+
+-// fchmodat-like syscalls.
++// Statfs
+
+-const (
+- AT_FDCWD = C.AT_FDCWD
+- AT_SYMLINK_NOFOLLOW = C.AT_SYMLINK_NOFOLLOW
+-)
++type Fsid_t C.struct_fsid_t
++type Fsid64_t C.struct_fsid64_t
+
+-// Sysctl
++type Statfs_t C.struct_statfs
+
+-type Sysctlnode C.struct_sysctlnode
++const RNDGETENTCNT = 0x80045200
+diff --git a/vendor/golang.org/x/sys/unix/types_darwin.go b/vendor/golang.org/x/sys/unix/types_darwin.go
+index 415124d4..155c2e69 100644
+--- a/vendor/golang.org/x/sys/unix/types_darwin.go
++++ b/vendor/golang.org/x/sys/unix/types_darwin.go
+@@ -19,6 +19,7 @@ package unix
+ #define _DARWIN_USE_64_BIT_INODE
+ #include <dirent.h>
+ #include <fcntl.h>
++#include <poll.h>
+ #include <signal.h>
+ #include <termios.h>
+ #include <unistd.h>
+@@ -38,6 +39,7 @@ package unix
+ #include <sys/types.h>
+ #include <sys/uio.h>
+ #include <sys/un.h>
++#include <sys/utsname.h>
+ #include <sys/wait.h>
+ #include <net/bpf.h>
+ #include <net/if.h>
+@@ -68,14 +70,14 @@ struct sockaddr_any {
+ */
+ import "C"
+
+-// Machine characteristics; for internal use.
++// Machine characteristics
+
+ const (
+- sizeofPtr = C.sizeofPtr
+- sizeofShort = C.sizeof_short
+- sizeofInt = C.sizeof_int
+- sizeofLong = C.sizeof_long
+- sizeofLongLong = C.sizeof_longlong
++ SizeofPtr = C.sizeofPtr
++ SizeofShort = C.sizeof_short
++ SizeofInt = C.sizeof_int
++ SizeofLong = C.sizeof_long
++ SizeofLongLong = C.sizeof_longlong
+ )
+
+ // Basic types
+@@ -252,3 +254,30 @@ const (
+ AT_SYMLINK_FOLLOW = C.AT_SYMLINK_FOLLOW
+ AT_SYMLINK_NOFOLLOW = C.AT_SYMLINK_NOFOLLOW
+ )
++
++// poll
++
++type PollFd C.struct_pollfd
++
++const (
++ POLLERR = C.POLLERR
++ POLLHUP = C.POLLHUP
++ POLLIN = C.POLLIN
++ POLLNVAL = C.POLLNVAL
++ POLLOUT = C.POLLOUT
++ POLLPRI = C.POLLPRI
++ POLLRDBAND = C.POLLRDBAND
++ POLLRDNORM = C.POLLRDNORM
++ POLLWRBAND = C.POLLWRBAND
++ POLLWRNORM = C.POLLWRNORM
++)
++
++// uname
++
++type Utsname C.struct_utsname
++
++// Clockinfo
++
++const SizeofClockinfo = C.sizeof_struct_clockinfo
++
++type Clockinfo C.struct_clockinfo
+diff --git a/vendor/golang.org/x/sys/unix/types_dragonfly.go b/vendor/golang.org/x/sys/unix/types_dragonfly.go
+index 80b27781..6574f6b6 100644
+--- a/vendor/golang.org/x/sys/unix/types_dragonfly.go
++++ b/vendor/golang.org/x/sys/unix/types_dragonfly.go
+@@ -17,6 +17,7 @@ package unix
+ #define KERNEL
+ #include <dirent.h>
+ #include <fcntl.h>
++#include <poll.h>
+ #include <signal.h>
+ #include <termios.h>
+ #include <stdio.h>
+@@ -34,6 +35,7 @@ package unix
+ #include <sys/time.h>
+ #include <sys/types.h>
+ #include <sys/un.h>
++#include <sys/utsname.h>
+ #include <sys/wait.h>
+ #include <net/bpf.h>
+ #include <net/if.h>
+@@ -63,14 +65,14 @@ struct sockaddr_any {
+ */
+ import "C"
+
+-// Machine characteristics; for internal use.
++// Machine characteristics
+
+ const (
+- sizeofPtr = C.sizeofPtr
+- sizeofShort = C.sizeof_short
+- sizeofInt = C.sizeof_int
+- sizeofLong = C.sizeof_long
+- sizeofLongLong = C.sizeof_longlong
++ SizeofPtr = C.sizeofPtr
++ SizeofShort = C.sizeof_short
++ SizeofInt = C.sizeof_int
++ SizeofLong = C.sizeof_long
++ SizeofLongLong = C.sizeof_longlong
+ )
+
+ // Basic types
+@@ -98,23 +100,6 @@ type _Gid_t C.gid_t
+
+ // Files
+
+-const ( // Directory mode bits
+- S_IFMT = C.S_IFMT
+- S_IFIFO = C.S_IFIFO
+- S_IFCHR = C.S_IFCHR
+- S_IFDIR = C.S_IFDIR
+- S_IFBLK = C.S_IFBLK
+- S_IFREG = C.S_IFREG
+- S_IFLNK = C.S_IFLNK
+- S_IFSOCK = C.S_IFSOCK
+- S_ISUID = C.S_ISUID
+- S_ISGID = C.S_ISGID
+- S_ISVTX = C.S_ISVTX
+- S_IRUSR = C.S_IRUSR
+- S_IWUSR = C.S_IWUSR
+- S_IXUSR = C.S_IXUSR
+-)
+-
+ type Stat_t C.struct_stat
+
+ type Statfs_t C.struct_statfs
+@@ -125,6 +110,12 @@ type Dirent C.struct_dirent
+
+ type Fsid C.struct_fsid
+
++// File system limits
++
++const (
++ PathMax = C.PATH_MAX
++)
++
+ // Sockets
+
+ type RawSockaddrInet4 C.struct_sockaddr_in
+@@ -241,9 +232,38 @@ type BpfHdr C.struct_bpf_hdr
+
+ type Termios C.struct_termios
+
++type Winsize C.struct_winsize
++
+ // fchmodat-like syscalls.
+
+ const (
+ AT_FDCWD = C.AT_FDCWD
+ AT_SYMLINK_NOFOLLOW = C.AT_SYMLINK_NOFOLLOW
+ )
++
++// poll
++
++type PollFd C.struct_pollfd
++
++const (
++ POLLERR = C.POLLERR
++ POLLHUP = C.POLLHUP
++ POLLIN = C.POLLIN
++ POLLNVAL = C.POLLNVAL
++ POLLOUT = C.POLLOUT
++ POLLPRI = C.POLLPRI
++ POLLRDBAND = C.POLLRDBAND
++ POLLRDNORM = C.POLLRDNORM
++ POLLWRBAND = C.POLLWRBAND
++ POLLWRNORM = C.POLLWRNORM
++)
++
++// Uname
++
++type Utsname C.struct_utsname
++
++// Clockinfo
++
++const SizeofClockinfo = C.sizeof_struct_clockinfo
++
++type Clockinfo C.struct_clockinfo
+diff --git a/vendor/golang.org/x/sys/unix/types_freebsd.go b/vendor/golang.org/x/sys/unix/types_freebsd.go
+index 934fd7ac..c6fde424 100644
+--- a/vendor/golang.org/x/sys/unix/types_freebsd.go
++++ b/vendor/golang.org/x/sys/unix/types_freebsd.go
+@@ -14,14 +14,19 @@ Input to cgo -godefs. See README.md
+ package unix
+
+ /*
+-#define KERNEL
++#define _WANT_FREEBSD11_STAT 1
++#define _WANT_FREEBSD11_STATFS 1
++#define _WANT_FREEBSD11_DIRENT 1
++#define _WANT_FREEBSD11_KEVENT 1
++
+ #include <dirent.h>
+ #include <fcntl.h>
++#include <poll.h>
+ #include <signal.h>
+ #include <termios.h>
+ #include <stdio.h>
+ #include <unistd.h>
+-#include <sys/capability.h>
++#include <sys/capsicum.h>
+ #include <sys/event.h>
+ #include <sys/mman.h>
+ #include <sys/mount.h>
+@@ -35,6 +40,7 @@ package unix
+ #include <sys/time.h>
+ #include <sys/types.h>
+ #include <sys/un.h>
++#include <sys/utsname.h>
+ #include <sys/wait.h>
+ #include <net/bpf.h>
+ #include <net/if.h>
+@@ -61,50 +67,6 @@ struct sockaddr_any {
+ char pad[sizeof(union sockaddr_all) - sizeof(struct sockaddr)];
+ };
+
+-// This structure is a duplicate of stat on FreeBSD 8-STABLE.
+-// See /usr/include/sys/stat.h.
+-struct stat8 {
+-#undef st_atimespec st_atim
+-#undef st_mtimespec st_mtim
+-#undef st_ctimespec st_ctim
+-#undef st_birthtimespec st_birthtim
+- __dev_t st_dev;
+- ino_t st_ino;
+- mode_t st_mode;
+- nlink_t st_nlink;
+- uid_t st_uid;
+- gid_t st_gid;
+- __dev_t st_rdev;
+-#if __BSD_VISIBLE
+- struct timespec st_atimespec;
+- struct timespec st_mtimespec;
+- struct timespec st_ctimespec;
+-#else
+- time_t st_atime;
+- long __st_atimensec;
+- time_t st_mtime;
+- long __st_mtimensec;
+- time_t st_ctime;
+- long __st_ctimensec;
+-#endif
+- off_t st_size;
+- blkcnt_t st_blocks;
+- blksize_t st_blksize;
+- fflags_t st_flags;
+- __uint32_t st_gen;
+- __int32_t st_lspare;
+-#if __BSD_VISIBLE
+- struct timespec st_birthtimespec;
+- unsigned int :(8 / 2) * (16 - (int)sizeof(struct timespec));
+- unsigned int :(8 / 2) * (16 - (int)sizeof(struct timespec));
+-#else
+- time_t st_birthtime;
+- long st_birthtimensec;
+- unsigned int :(8 / 2) * (16 - (int)sizeof(struct __timespec));
+- unsigned int :(8 / 2) * (16 - (int)sizeof(struct __timespec));
+-#endif
+-};
+-
+ // This structure is a duplicate of if_data on FreeBSD 8-STABLE.
+ // See /usr/include/net/if.h.
+ struct if_data8 {
+@@ -152,14 +114,14 @@ struct if_msghdr8 {
+ */
+ import "C"
+
+-// Machine characteristics; for internal use.
++// Machine characteristics
+
+ const (
+- sizeofPtr = C.sizeofPtr
+- sizeofShort = C.sizeof_short
+- sizeofInt = C.sizeof_int
+- sizeofLong = C.sizeof_long
+- sizeofLongLong = C.sizeof_longlong
++ SizeofPtr = C.sizeofPtr
++ SizeofShort = C.sizeof_short
++ SizeofInt = C.sizeof_int
++ SizeofLong = C.sizeof_long
++ SizeofLongLong = C.sizeof_longlong
+ )
+
+ // Basic types
+@@ -187,33 +149,33 @@ type _Gid_t C.gid_t
+
+ // Files
+
+-const ( // Directory mode bits
+- S_IFMT = C.S_IFMT
+- S_IFIFO = C.S_IFIFO
+- S_IFCHR = C.S_IFCHR
+- S_IFDIR = C.S_IFDIR
+- S_IFBLK = C.S_IFBLK
+- S_IFREG = C.S_IFREG
+- S_IFLNK = C.S_IFLNK
+- S_IFSOCK = C.S_IFSOCK
+- S_ISUID = C.S_ISUID
+- S_ISGID = C.S_ISGID
+- S_ISVTX = C.S_ISVTX
+- S_IRUSR = C.S_IRUSR
+- S_IWUSR = C.S_IWUSR
+- S_IXUSR = C.S_IXUSR
++const (
++ _statfsVersion = C.STATFS_VERSION
++ _dirblksiz = C.DIRBLKSIZ
+ )
+
+-type Stat_t C.struct_stat8
++type Stat_t C.struct_stat
++
++type stat_freebsd11_t C.struct_freebsd11_stat
+
+ type Statfs_t C.struct_statfs
+
++type statfs_freebsd11_t C.struct_freebsd11_statfs
++
+ type Flock_t C.struct_flock
+
+ type Dirent C.struct_dirent
+
++type dirent_freebsd11 C.struct_freebsd11_dirent
++
+ type Fsid C.struct_fsid
+
++// File system limits
++
++const (
++ PathMax = C.PATH_MAX
++)
++
+ // Advice to Fadvise
+
+ const (
+@@ -281,14 +243,58 @@ const (
+ // Ptrace requests
+
+ const (
+- PTRACE_TRACEME = C.PT_TRACE_ME
+- PTRACE_CONT = C.PT_CONTINUE
+- PTRACE_KILL = C.PT_KILL
++ PTRACE_ATTACH = C.PT_ATTACH
++ PTRACE_CONT = C.PT_CONTINUE
++ PTRACE_DETACH = C.PT_DETACH
++ PTRACE_GETFPREGS = C.PT_GETFPREGS
++ PTRACE_GETFSBASE = C.PT_GETFSBASE
++ PTRACE_GETLWPLIST = C.PT_GETLWPLIST
++ PTRACE_GETNUMLWPS = C.PT_GETNUMLWPS
++ PTRACE_GETREGS = C.PT_GETREGS
++ PTRACE_GETXSTATE = C.PT_GETXSTATE
++ PTRACE_IO = C.PT_IO
++ PTRACE_KILL = C.PT_KILL
++ PTRACE_LWPEVENTS = C.PT_LWP_EVENTS
++ PTRACE_LWPINFO = C.PT_LWPINFO
++ PTRACE_SETFPREGS = C.PT_SETFPREGS
++ PTRACE_SETREGS = C.PT_SETREGS
++ PTRACE_SINGLESTEP = C.PT_STEP
++ PTRACE_TRACEME = C.PT_TRACE_ME
++)
++
++const (
++ PIOD_READ_D = C.PIOD_READ_D
++ PIOD_WRITE_D = C.PIOD_WRITE_D
++ PIOD_READ_I = C.PIOD_READ_I
++ PIOD_WRITE_I = C.PIOD_WRITE_I
++)
++
++const (
++ PL_FLAG_BORN = C.PL_FLAG_BORN
++ PL_FLAG_EXITED = C.PL_FLAG_EXITED
++ PL_FLAG_SI = C.PL_FLAG_SI
++)
++
++const (
++ TRAP_BRKPT = C.TRAP_BRKPT
++ TRAP_TRACE = C.TRAP_TRACE
+ )
+
++type PtraceLwpInfoStruct C.struct_ptrace_lwpinfo
++
++type __Siginfo C.struct___siginfo
++
++type Sigset_t C.sigset_t
++
++type Reg C.struct_reg
++
++type FpReg C.struct_fpreg
++
++type PtraceIoDesc C.struct_ptrace_io_desc
++
+ // Events (kqueue, kevent)
+
+-type Kevent_t C.struct_kevent
++type Kevent_t C.struct_kevent_freebsd11
+
+ // Select
+
+@@ -367,6 +373,34 @@ const (
+ AT_SYMLINK_NOFOLLOW = C.AT_SYMLINK_NOFOLLOW
+ )
+
++// poll
++
++type PollFd C.struct_pollfd
++
++const (
++ POLLERR = C.POLLERR
++ POLLHUP = C.POLLHUP
++ POLLIN = C.POLLIN
++ POLLINIGNEOF = C.POLLINIGNEOF
++ POLLNVAL = C.POLLNVAL
++ POLLOUT = C.POLLOUT
++ POLLPRI = C.POLLPRI
++ POLLRDBAND = C.POLLRDBAND
++ POLLRDNORM = C.POLLRDNORM
++ POLLWRBAND = C.POLLWRBAND
++ POLLWRNORM = C.POLLWRNORM
++)
++
+ // Capabilities
+
+ type CapRights C.struct_cap_rights
++
++// Uname
++
++type Utsname C.struct_utsname
++
++// Clockinfo
++
++const SizeofClockinfo = C.sizeof_struct_clockinfo
++
++type Clockinfo C.struct_clockinfo
+diff --git a/vendor/golang.org/x/sys/unix/types_netbsd.go b/vendor/golang.org/x/sys/unix/types_netbsd.go
+index cb95c80a..0a81aadb 100644
+--- a/vendor/golang.org/x/sys/unix/types_netbsd.go
++++ b/vendor/golang.org/x/sys/unix/types_netbsd.go
+@@ -17,6 +17,7 @@ package unix
+ #define KERNEL
+ #include <dirent.h>
+ #include <fcntl.h>
++#include <poll.h>
+ #include <signal.h>
+ #include <termios.h>
+ #include <stdio.h>
+@@ -32,10 +33,12 @@ package unix
+ #include <sys/signal.h>
+ #include <sys/socket.h>
+ #include <sys/stat.h>
++#include <sys/statvfs.h>
+ #include <sys/sysctl.h>
+ #include <sys/time.h>
+ #include <sys/uio.h>
+ #include <sys/un.h>
++#include <sys/utsname.h>
+ #include <sys/wait.h>
+ #include <net/bpf.h>
+ #include <net/if.h>
+@@ -65,14 +68,14 @@ struct sockaddr_any {
+ */
+ import "C"
+
+-// Machine characteristics; for internal use.
++// Machine characteristics
+
+ const (
+- sizeofPtr = C.sizeofPtr
+- sizeofShort = C.sizeof_short
+- sizeofInt = C.sizeof_int
+- sizeofLong = C.sizeof_long
+- sizeofLongLong = C.sizeof_longlong
++ SizeofPtr = C.sizeofPtr
++ SizeofShort = C.sizeof_short
++ SizeofInt = C.sizeof_int
++ SizeofLong = C.sizeof_long
++ SizeofLongLong = C.sizeof_longlong
+ )
+
+ // Basic types
+@@ -104,12 +107,38 @@ type Stat_t C.struct_stat
+
+ type Statfs_t C.struct_statfs
+
++type Statvfs_t C.struct_statvfs
++
+ type Flock_t C.struct_flock
+
+ type Dirent C.struct_dirent
+
+ type Fsid C.fsid_t
+
++// File system limits
++
++const (
++ PathMax = C.PATH_MAX
++)
++
++// Fstatvfs/Statvfs flags
++
++const (
++ ST_WAIT = C.ST_WAIT
++ ST_NOWAIT = C.ST_NOWAIT
++)
++
++// Advice to Fadvise
++
++const (
++ FADV_NORMAL = C.POSIX_FADV_NORMAL
++ FADV_RANDOM = C.POSIX_FADV_RANDOM
++ FADV_SEQUENTIAL = C.POSIX_FADV_SEQUENTIAL
++ FADV_WILLNEED = C.POSIX_FADV_WILLNEED
++ FADV_DONTNEED = C.POSIX_FADV_DONTNEED
++ FADV_NOREUSE = C.POSIX_FADV_NOREUSE
++)
++
+ // Sockets
+
+ type RawSockaddrInet4 C.struct_sockaddr_in
+@@ -227,13 +256,45 @@ type BpfTimeval C.struct_bpf_timeval
+
+ type Termios C.struct_termios
+
++type Winsize C.struct_winsize
++
++type Ptmget C.struct_ptmget
++
+ // fchmodat-like syscalls.
+
+ const (
+ AT_FDCWD = C.AT_FDCWD
++ AT_SYMLINK_FOLLOW = C.AT_SYMLINK_FOLLOW
+ AT_SYMLINK_NOFOLLOW = C.AT_SYMLINK_NOFOLLOW
+ )
+
++// poll
++
++type PollFd C.struct_pollfd
++
++const (
++ POLLERR = C.POLLERR
++ POLLHUP = C.POLLHUP
++ POLLIN = C.POLLIN
++ POLLNVAL = C.POLLNVAL
++ POLLOUT = C.POLLOUT
++ POLLPRI = C.POLLPRI
++ POLLRDBAND = C.POLLRDBAND
++ POLLRDNORM = C.POLLRDNORM
++ POLLWRBAND = C.POLLWRBAND
++ POLLWRNORM = C.POLLWRNORM
++)
++
+ // Sysctl
+
+ type Sysctlnode C.struct_sysctlnode
++
++// Uname
++
++type Utsname C.struct_utsname
++
++// Clockinfo
++
++const SizeofClockinfo = C.sizeof_struct_clockinfo
++
++type Clockinfo C.struct_clockinfo
+diff --git a/vendor/golang.org/x/sys/unix/types_openbsd.go b/vendor/golang.org/x/sys/unix/types_openbsd.go
+index 392da69b..775cb57d 100644
+--- a/vendor/golang.org/x/sys/unix/types_openbsd.go
++++ b/vendor/golang.org/x/sys/unix/types_openbsd.go
+@@ -17,6 +17,7 @@ package unix
+ #define KERNEL
+ #include <dirent.h>
+ #include <fcntl.h>
++#include <poll.h>
+ #include <signal.h>
+ #include <termios.h>
+ #include <stdio.h>
+@@ -35,7 +36,9 @@ package unix
+ #include <sys/time.h>
+ #include <sys/uio.h>
+ #include <sys/un.h>
++#include <sys/utsname.h>
+ #include <sys/wait.h>
++#include <uvm/uvmexp.h>
+ #include <net/bpf.h>
+ #include <net/if.h>
+ #include <net/if_dl.h>
+@@ -64,14 +67,14 @@ struct sockaddr_any {
+ */
+ import "C"
+
+-// Machine characteristics; for internal use.
++// Machine characteristics
+
+ const (
+- sizeofPtr = C.sizeofPtr
+- sizeofShort = C.sizeof_short
+- sizeofInt = C.sizeof_int
+- sizeofLong = C.sizeof_long
+- sizeofLongLong = C.sizeof_longlong
++ SizeofPtr = C.sizeofPtr
++ SizeofShort = C.sizeof_short
++ SizeofInt = C.sizeof_int
++ SizeofLong = C.sizeof_long
++ SizeofLongLong = C.sizeof_longlong
+ )
+
+ // Basic types
+@@ -99,23 +102,6 @@ type _Gid_t C.gid_t
+
+ // Files
+
+-const ( // Directory mode bits
+- S_IFMT = C.S_IFMT
+- S_IFIFO = C.S_IFIFO
+- S_IFCHR = C.S_IFCHR
+- S_IFDIR = C.S_IFDIR
+- S_IFBLK = C.S_IFBLK
+- S_IFREG = C.S_IFREG
+- S_IFLNK = C.S_IFLNK
+- S_IFSOCK = C.S_IFSOCK
+- S_ISUID = C.S_ISUID
+- S_ISGID = C.S_ISGID
+- S_ISVTX = C.S_ISVTX
+- S_IRUSR = C.S_IRUSR
+- S_IWUSR = C.S_IWUSR
+- S_IXUSR = C.S_IXUSR
+-)
+-
+ type Stat_t C.struct_stat
+
+ type Statfs_t C.struct_statfs
+@@ -126,6 +112,12 @@ type Dirent C.struct_dirent
+
+ type Fsid C.fsid_t
+
++// File system limits
++
++const (
++ PathMax = C.PATH_MAX
++)
++
+ // Sockets
+
+ type RawSockaddrInet4 C.struct_sockaddr_in
+@@ -243,9 +235,49 @@ type BpfTimeval C.struct_bpf_timeval
+
+ type Termios C.struct_termios
+
++type Winsize C.struct_winsize
++
+ // fchmodat-like syscalls.
+
+ const (
+ AT_FDCWD = C.AT_FDCWD
++ AT_SYMLINK_FOLLOW = C.AT_SYMLINK_FOLLOW
+ AT_SYMLINK_NOFOLLOW = C.AT_SYMLINK_NOFOLLOW
+ )
++
++// poll
++
++type PollFd C.struct_pollfd
++
++const (
++ POLLERR = C.POLLERR
++ POLLHUP = C.POLLHUP
++ POLLIN = C.POLLIN
++ POLLNVAL = C.POLLNVAL
++ POLLOUT = C.POLLOUT
++ POLLPRI = C.POLLPRI
++ POLLRDBAND = C.POLLRDBAND
++ POLLRDNORM = C.POLLRDNORM
++ POLLWRBAND = C.POLLWRBAND
++ POLLWRNORM = C.POLLWRNORM
++)
++
++// Signal Sets
++
++type Sigset_t C.sigset_t
++
++// Uname
++
++type Utsname C.struct_utsname
++
++// Uvmexp
++
++const SizeofUvmexp = C.sizeof_struct_uvmexp
++
++type Uvmexp C.struct_uvmexp
++
++// Clockinfo
++
++const SizeofClockinfo = C.sizeof_struct_clockinfo
++
++type Clockinfo C.struct_clockinfo
+diff --git a/vendor/golang.org/x/sys/unix/types_solaris.go b/vendor/golang.org/x/sys/unix/types_solaris.go
+index 393c7f04..d713f09e 100644
+--- a/vendor/golang.org/x/sys/unix/types_solaris.go
++++ b/vendor/golang.org/x/sys/unix/types_solaris.go
+@@ -24,6 +24,7 @@ package unix
+ #include <fcntl.h>
+ #include <netdb.h>
+ #include <limits.h>
++#include <poll.h>
+ #include <signal.h>
+ #include <termios.h>
+ #include <termio.h>
+@@ -74,14 +75,14 @@ struct sockaddr_any {
+ */
+ import "C"
+
+-// Machine characteristics; for internal use.
++// Machine characteristics
+
+ const (
+- sizeofPtr = C.sizeofPtr
+- sizeofShort = C.sizeof_short
+- sizeofInt = C.sizeof_int
+- sizeofLong = C.sizeof_long
+- sizeofLongLong = C.sizeof_longlong
++ SizeofPtr = C.sizeofPtr
++ SizeofShort = C.sizeof_short
++ SizeofInt = C.sizeof_int
++ SizeofLong = C.sizeof_long
++ SizeofLongLong = C.sizeof_longlong
+ PathMax = C.PATH_MAX
+ MaxHostNameLen = C.MAXHOSTNAMELEN
+ )
+@@ -117,23 +118,6 @@ type _Gid_t C.gid_t
+
+ // Files
+
+-const ( // Directory mode bits
+- S_IFMT = C.S_IFMT
+- S_IFIFO = C.S_IFIFO
+- S_IFCHR = C.S_IFCHR
+- S_IFDIR = C.S_IFDIR
+- S_IFBLK = C.S_IFBLK
+- S_IFREG = C.S_IFREG
+- S_IFLNK = C.S_IFLNK
+- S_IFSOCK = C.S_IFSOCK
+- S_ISUID = C.S_ISUID
+- S_ISGID = C.S_ISGID
+- S_ISVTX = C.S_ISVTX
+- S_IRUSR = C.S_IRUSR
+- S_IWUSR = C.S_IWUSR
+- S_IXUSR = C.S_IXUSR
+-)
+-
+ type Stat_t C.struct_stat
+
+ type Flock_t C.struct_flock
+@@ -174,6 +158,8 @@ type Msghdr C.struct_msghdr
+
+ type Cmsghdr C.struct_cmsghdr
+
++type Inet4Pktinfo C.struct_in_pktinfo
++
+ type Inet6Pktinfo C.struct_in6_pktinfo
+
+ type IPv6MTUInfo C.struct_ip6_mtuinfo
+@@ -191,6 +177,7 @@ const (
+ SizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq
+ SizeofMsghdr = C.sizeof_struct_msghdr
+ SizeofCmsghdr = C.sizeof_struct_cmsghdr
++ SizeofInet4Pktinfo = C.sizeof_struct_in_pktinfo
+ SizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo
+ SizeofIPv6MTUInfo = C.sizeof_struct_ip6_mtuinfo
+ SizeofICMPv6Filter = C.sizeof_struct_icmp6_filter
+@@ -256,10 +243,6 @@ type BpfTimeval C.struct_bpf_timeval
+
+ type BpfHdr C.struct_bpf_hdr
+
+-// sysconf information
+-
+-const _SC_PAGESIZE = C._SC_PAGESIZE
+-
+ // Terminal handling
+
+ type Termios C.struct_termios
+@@ -267,3 +250,20 @@ type Termios C.struct_termios
+ type Termio C.struct_termio
+
+ type Winsize C.struct_winsize
++
++// poll
++
++type PollFd C.struct_pollfd
++
++const (
++ POLLERR = C.POLLERR
++ POLLHUP = C.POLLHUP
++ POLLIN = C.POLLIN
++ POLLNVAL = C.POLLNVAL
++ POLLOUT = C.POLLOUT
++ POLLPRI = C.POLLPRI
++ POLLRDBAND = C.POLLRDBAND
++ POLLRDNORM = C.POLLRDNORM
++ POLLWRBAND = C.POLLWRBAND
++ POLLWRNORM = C.POLLWRNORM
++)
+diff --git a/vendor/golang.org/x/sys/unix/unveil_openbsd.go b/vendor/golang.org/x/sys/unix/unveil_openbsd.go
+new file mode 100644
+index 00000000..168d5ae7
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/unveil_openbsd.go
+@@ -0,0 +1,42 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++package unix
++
++import (
++ "syscall"
++ "unsafe"
++)
++
++// Unveil implements the unveil syscall.
++// For more information see unveil(2).
++// Note that the special case of blocking further
++// unveil calls is handled by UnveilBlock.
++func Unveil(path string, flags string) error {
++ pathPtr, err := syscall.BytePtrFromString(path)
++ if err != nil {
++ return err
++ }
++ flagsPtr, err := syscall.BytePtrFromString(flags)
++ if err != nil {
++ return err
++ }
++ _, _, e := syscall.Syscall(SYS_UNVEIL, uintptr(unsafe.Pointer(pathPtr)), uintptr(unsafe.Pointer(flagsPtr)), 0)
++ if e != 0 {
++ return e
++ }
++ return nil
++}
++
++// UnveilBlock blocks future unveil calls.
++// For more information see unveil(2).
++func UnveilBlock() error {
++ // Both pointers must be nil.
++ var pathUnsafe, flagsUnsafe unsafe.Pointer
++ _, _, e := syscall.Syscall(SYS_UNVEIL, uintptr(pathUnsafe), uintptr(flagsUnsafe), 0)
++ if e != 0 {
++ return e
++ }
++ return nil
++}
+diff --git a/vendor/golang.org/x/sys/unix/xattr_bsd.go b/vendor/golang.org/x/sys/unix/xattr_bsd.go
+new file mode 100644
+index 00000000..30c1d71f
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/xattr_bsd.go
+@@ -0,0 +1,240 @@
++// Copyright 2018 The Go Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style
++// license that can be found in the LICENSE file.
++
++// +build freebsd netbsd
++
++package unix
++
++import (
++ "strings"
++ "unsafe"
++)
++
++// Derive extattr namespace and attribute name
++
++func xattrnamespace(fullattr string) (ns int, attr string, err error) {
++ s := strings.IndexByte(fullattr, '.')
++ if s == -1 {
++ return -1, "", ENOATTR
++ }
++
++ namespace := fullattr[0:s]
++ attr = fullattr[s+1:]
++
++ switch namespace {
++ case "user":
++ return EXTATTR_NAMESPACE_USER, attr, nil
++ case "system":
++ return EXTATTR_NAMESPACE_SYSTEM, attr, nil
++ default:
++ return -1, "", ENOATTR
++ }
++}
++
++func initxattrdest(dest []byte, idx int) (d unsafe.Pointer) {
++ if len(dest) > idx {
++ return unsafe.Pointer(&dest[idx])
++ } else {
++ return unsafe.Pointer(_zero)
++ }
++}
++
++// FreeBSD and NetBSD implement their own syscalls to handle extended attributes
++
++func Getxattr(file string, attr string, dest []byte) (sz int, err error) {
++ d := initxattrdest(dest, 0)
++ destsize := len(dest)
++
++ nsid, a, err := xattrnamespace(attr)
++ if err != nil {
++ return -1, err
++ }
++
++ return ExtattrGetFile(file, nsid, a, uintptr(d), destsize)
++}
++
++func Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
++ d := initxattrdest(dest, 0)
++ destsize := len(dest)
++
++ nsid, a, err := xattrnamespace(attr)
++ if err != nil {
++ return -1, err
++ }
++
++ return ExtattrGetFd(fd, nsid, a, uintptr(d), destsize)
++}
++
++func Lgetxattr(link string, attr string, dest []byte) (sz int, err error) {
++ d := initxattrdest(dest, 0)
++ destsize := len(dest)
++
++ nsid, a, err := xattrnamespace(attr)
++ if err != nil {
++ return -1, err
++ }
++
++ return ExtattrGetLink(link, nsid, a, uintptr(d), destsize)
++}
++
++// flags are unused on FreeBSD
++
++func Fsetxattr(fd int, attr string, data []byte, flags int) (err error) {
++ var d unsafe.Pointer
++ if len(data) > 0 {
++ d = unsafe.Pointer(&data[0])
++ }
++ datasiz := len(data)
++
++ nsid, a, err := xattrnamespace(attr)
++ if err != nil {
++ return
++ }
++
++ _, err = ExtattrSetFd(fd, nsid, a, uintptr(d), datasiz)
++ return
++}
++
++func Setxattr(file string, attr string, data []byte, flags int) (err error) {
++ var d unsafe.Pointer
++ if len(data) > 0 {
++ d = unsafe.Pointer(&data[0])
++ }
++ datasiz := len(data)
++
++ nsid, a, err := xattrnamespace(attr)
++ if err != nil {
++ return
++ }
++
++ _, err = ExtattrSetFile(file, nsid, a, uintptr(d), datasiz)
++ return
++}
++
++func Lsetxattr(link string, attr string, data []byte, flags int) (err error) {
++ var d unsafe.Pointer
++ if len(data) > 0 {
++ d = unsafe.Pointer(&data[0])
++ }
++ datasiz := len(data)
++
++ nsid, a, err := xattrnamespace(attr)
++ if err != nil {
++ return
++ }
++
++ _, err = ExtattrSetLink(link, nsid, a, uintptr(d), datasiz)
++ return
++}
++
++func Removexattr(file string, attr string) (err error) {
++ nsid, a, err := xattrnamespace(attr)
++ if err != nil {
++ return
++ }
++
++ err = ExtattrDeleteFile(file, nsid, a)
++ return
++}
++
++func Fremovexattr(fd int, attr string) (err error) {
++ nsid, a, err := xattrnamespace(attr)
++ if err != nil {
++ return
++ }
++
++ err = ExtattrDeleteFd(fd, nsid, a)
++ return
++}
++
++func Lremovexattr(link string, attr string) (err error) {
++ nsid, a, err := xattrnamespace(attr)
++ if err != nil {
++ return
++ }
++
++ err = ExtattrDeleteLink(link, nsid, a)
++ return
++}
++
++func Listxattr(file string, dest []byte) (sz int, err error) {
++ d := initxattrdest(dest, 0)
++ destsiz := len(dest)
++
++ // FreeBSD won't allow you to list xattrs from multiple namespaces
++ s := 0
++ for _, nsid := range [...]int{EXTATTR_NAMESPACE_USER, EXTATTR_NAMESPACE_SYSTEM} {
++ stmp, e := ExtattrListFile(file, nsid, uintptr(d), destsiz)
++
++ /* Errors accessing system attrs are ignored so that
++ * we can implement the Linux-like behavior of omitting errors that
++ * we don't have read permissions on
++ *
++ * Linux will still error if we ask for user attributes on a file that
++ * we don't have read permissions on, so don't ignore those errors
++ */
++ if e != nil && e == EPERM && nsid != EXTATTR_NAMESPACE_USER {
++ continue
++ } else if e != nil {
++ return s, e
++ }
++
++ s += stmp
++ destsiz -= s
++ if destsiz < 0 {
++ destsiz = 0
++ }
++ d = initxattrdest(dest, s)
++ }
++
++ return s, nil
++}
++
++func Flistxattr(fd int, dest []byte) (sz int, err error) {
++ d := initxattrdest(dest, 0)
++ destsiz := len(dest)
++
++ s := 0
++ for _, nsid := range [...]int{EXTATTR_NAMESPACE_USER, EXTATTR_NAMESPACE_SYSTEM} {
++ stmp, e := ExtattrListFd(fd, nsid, uintptr(d), destsiz)
++ if e != nil && e == EPERM && nsid != EXTATTR_NAMESPACE_USER {
++ continue
++ } else if e != nil {
++ return s, e
++ }
++
++ s += stmp
++ destsiz -= s
++ if destsiz < 0 {
++ destsiz = 0
++ }
++ d = initxattrdest(dest, s)
++ }
++
++ return s, nil
++}
++
++func Llistxattr(link string, dest []byte) (sz int, err error) {
++ d := initxattrdest(dest, 0)
++ destsiz := len(dest)
++
++ s := 0
++ for _, nsid := range [...]int{EXTATTR_NAMESPACE_USER, EXTATTR_NAMESPACE_SYSTEM} {
++ stmp, e := ExtattrListLink(link, nsid, uintptr(d), destsiz)
++ if e != nil && e == EPERM && nsid != EXTATTR_NAMESPACE_USER {
++ continue
++ } else if e != nil {
++ return s, e
++ }
++
++ s += stmp
++ destsiz -= s
++ if destsiz < 0 {
++ destsiz = 0
++ }
++ d = initxattrdest(dest, s)
++ }
++
++ return s, nil
++}
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go b/vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go
+new file mode 100644
+index 00000000..104994bc
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go
+@@ -0,0 +1,1384 @@
++// mkerrors.sh -maix32
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build ppc,aix
++
++// Created by cgo -godefs - DO NOT EDIT
++// cgo -godefs -- -maix32 _const.go
++
++package unix
++
++import "syscall"
++
++const (
++ AF_APPLETALK = 0x10
++ AF_BYPASS = 0x19
++ AF_CCITT = 0xa
++ AF_CHAOS = 0x5
++ AF_DATAKIT = 0x9
++ AF_DECnet = 0xc
++ AF_DLI = 0xd
++ AF_ECMA = 0x8
++ AF_HYLINK = 0xf
++ AF_IMPLINK = 0x3
++ AF_INET = 0x2
++ AF_INET6 = 0x18
++ AF_INTF = 0x14
++ AF_ISO = 0x7
++ AF_LAT = 0xe
++ AF_LINK = 0x12
++ AF_LOCAL = 0x1
++ AF_MAX = 0x1e
++ AF_NDD = 0x17
++ AF_NETWARE = 0x16
++ AF_NS = 0x6
++ AF_OSI = 0x7
++ AF_PUP = 0x4
++ AF_RIF = 0x15
++ AF_ROUTE = 0x11
++ AF_SNA = 0xb
++ AF_UNIX = 0x1
++ AF_UNSPEC = 0x0
++ ALTWERASE = 0x400000
++ ARPHRD_802_3 = 0x6
++ ARPHRD_802_5 = 0x6
++ ARPHRD_ETHER = 0x1
++ ARPHRD_FDDI = 0x1
++ B0 = 0x0
++ B110 = 0x3
++ B1200 = 0x9
++ B134 = 0x4
++ B150 = 0x5
++ B1800 = 0xa
++ B19200 = 0xe
++ B200 = 0x6
++ B2400 = 0xb
++ B300 = 0x7
++ B38400 = 0xf
++ B4800 = 0xc
++ B50 = 0x1
++ B600 = 0x8
++ B75 = 0x2
++ B9600 = 0xd
++ BRKINT = 0x2
++ BS0 = 0x0
++ BS1 = 0x1000
++ BSDLY = 0x1000
++ CAP_AACCT = 0x6
++ CAP_ARM_APPLICATION = 0x5
++ CAP_BYPASS_RAC_VMM = 0x3
++ CAP_CLEAR = 0x0
++ CAP_CREDENTIALS = 0x7
++ CAP_EFFECTIVE = 0x1
++ CAP_EWLM_AGENT = 0x4
++ CAP_INHERITABLE = 0x2
++ CAP_MAXIMUM = 0x7
++ CAP_NUMA_ATTACH = 0x2
++ CAP_PERMITTED = 0x3
++ CAP_PROPAGATE = 0x1
++ CAP_PROPOGATE = 0x1
++ CAP_SET = 0x1
++ CBAUD = 0xf
++ CFLUSH = 0xf
++ CIBAUD = 0xf0000
++ CLOCAL = 0x800
++ CLOCK_MONOTONIC = 0xa
++ CLOCK_PROCESS_CPUTIME_ID = 0xb
++ CLOCK_REALTIME = 0x9
++ CLOCK_THREAD_CPUTIME_ID = 0xc
++ CR0 = 0x0
++ CR1 = 0x100
++ CR2 = 0x200
++ CR3 = 0x300
++ CRDLY = 0x300
++ CREAD = 0x80
++ CS5 = 0x0
++ CS6 = 0x10
++ CS7 = 0x20
++ CS8 = 0x30
++ CSIOCGIFCONF = -0x3ff796dc
++ CSIZE = 0x30
++ CSMAP_DIR = "/usr/lib/nls/csmap/"
++ CSTART = '\021'
++ CSTOP = '\023'
++ CSTOPB = 0x40
++ CSUSP = 0x1a
++ ECHO = 0x8
++ ECHOCTL = 0x20000
++ ECHOE = 0x10
++ ECHOK = 0x20
++ ECHOKE = 0x80000
++ ECHONL = 0x40
++ ECHOPRT = 0x40000
++ ECH_ICMPID = 0x2
++ ETHERNET_CSMACD = 0x6
++ EVENP = 0x80
++ EXCONTINUE = 0x0
++ EXDLOK = 0x3
++ EXIO = 0x2
++ EXPGIO = 0x0
++ EXRESUME = 0x2
++ EXRETURN = 0x1
++ EXSIG = 0x4
++ EXTA = 0xe
++ EXTB = 0xf
++ EXTRAP = 0x1
++ EYEC_RTENTRYA = 0x257274656e747241
++ EYEC_RTENTRYF = 0x257274656e747246
++ E_ACC = 0x0
++ FD_CLOEXEC = 0x1
++ FD_SETSIZE = 0xfffe
++ FF0 = 0x0
++ FF1 = 0x2000
++ FFDLY = 0x2000
++ FLUSHBAND = 0x40
++ FLUSHLOW = 0x8
++ FLUSHO = 0x100000
++ FLUSHR = 0x1
++ FLUSHRW = 0x3
++ FLUSHW = 0x2
++ F_CLOSEM = 0xa
++ F_DUP2FD = 0xe
++ F_DUPFD = 0x0
++ F_GETFD = 0x1
++ F_GETFL = 0x3
++ F_GETLK = 0x5
++ F_GETLK64 = 0xb
++ F_GETOWN = 0x8
++ F_LOCK = 0x1
++ F_OK = 0x0
++ F_RDLCK = 0x1
++ F_SETFD = 0x2
++ F_SETFL = 0x4
++ F_SETLK = 0x6
++ F_SETLK64 = 0xc
++ F_SETLKW = 0x7
++ F_SETLKW64 = 0xd
++ F_SETOWN = 0x9
++ F_TEST = 0x3
++ F_TLOCK = 0x2
++ F_TSTLK = 0xf
++ F_ULOCK = 0x0
++ F_UNLCK = 0x3
++ F_WRLCK = 0x2
++ HUPCL = 0x400
++ IBSHIFT = 0x10
++ ICANON = 0x2
++ ICMP6_FILTER = 0x26
++ ICMP6_SEC_SEND_DEL = 0x46
++ ICMP6_SEC_SEND_GET = 0x47
++ ICMP6_SEC_SEND_SET = 0x44
++ ICMP6_SEC_SEND_SET_CGA_ADDR = 0x45
++ ICRNL = 0x100
++ IEXTEN = 0x200000
++ IFA_FIRSTALIAS = 0x2000
++ IFA_ROUTE = 0x1
++ IFF_64BIT = 0x4000000
++ IFF_ALLCAST = 0x20000
++ IFF_ALLMULTI = 0x200
++ IFF_BPF = 0x8000000
++ IFF_BRIDGE = 0x40000
++ IFF_BROADCAST = 0x2
++ IFF_CANTCHANGE = 0x80c52
++ IFF_CHECKSUM_OFFLOAD = 0x10000000
++ IFF_D1 = 0x8000
++ IFF_D2 = 0x4000
++ IFF_D3 = 0x2000
++ IFF_D4 = 0x1000
++ IFF_DEBUG = 0x4
++ IFF_DEVHEALTH = 0x4000
++ IFF_DO_HW_LOOPBACK = 0x10000
++ IFF_GROUP_ROUTING = 0x2000000
++ IFF_IFBUFMGT = 0x800000
++ IFF_LINK0 = 0x100000
++ IFF_LINK1 = 0x200000
++ IFF_LINK2 = 0x400000
++ IFF_LOOPBACK = 0x8
++ IFF_MULTICAST = 0x80000
++ IFF_NOARP = 0x80
++ IFF_NOECHO = 0x800
++ IFF_NOTRAILERS = 0x20
++ IFF_OACTIVE = 0x400
++ IFF_POINTOPOINT = 0x10
++ IFF_PROMISC = 0x100
++ IFF_PSEG = 0x40000000
++ IFF_RUNNING = 0x40
++ IFF_SIMPLEX = 0x800
++ IFF_SNAP = 0x8000
++ IFF_TCP_DISABLE_CKSUM = 0x20000000
++ IFF_TCP_NOCKSUM = 0x1000000
++ IFF_UP = 0x1
++ IFF_VIPA = 0x80000000
++ IFNAMSIZ = 0x10
++ IFO_FLUSH = 0x1
++ IFT_1822 = 0x2
++ IFT_AAL5 = 0x31
++ IFT_ARCNET = 0x23
++ IFT_ARCNETPLUS = 0x24
++ IFT_ATM = 0x25
++ IFT_CEPT = 0x13
++ IFT_CLUSTER = 0x3e
++ IFT_DS3 = 0x1e
++ IFT_EON = 0x19
++ IFT_ETHER = 0x6
++ IFT_FCS = 0x3a
++ IFT_FDDI = 0xf
++ IFT_FRELAY = 0x20
++ IFT_FRELAYDCE = 0x2c
++ IFT_GIFTUNNEL = 0x3c
++ IFT_HDH1822 = 0x3
++ IFT_HF = 0x3d
++ IFT_HIPPI = 0x2f
++ IFT_HSSI = 0x2e
++ IFT_HY = 0xe
++ IFT_IB = 0xc7
++ IFT_ISDNBASIC = 0x14
++ IFT_ISDNPRIMARY = 0x15
++ IFT_ISO88022LLC = 0x29
++ IFT_ISO88023 = 0x7
++ IFT_ISO88024 = 0x8
++ IFT_ISO88025 = 0x9
++ IFT_ISO88026 = 0xa
++ IFT_LAPB = 0x10
++ IFT_LOCALTALK = 0x2a
++ IFT_LOOP = 0x18
++ IFT_MIOX25 = 0x26
++ IFT_MODEM = 0x30
++ IFT_NSIP = 0x1b
++ IFT_OTHER = 0x1
++ IFT_P10 = 0xc
++ IFT_P80 = 0xd
++ IFT_PARA = 0x22
++ IFT_PPP = 0x17
++ IFT_PROPMUX = 0x36
++ IFT_PROPVIRTUAL = 0x35
++ IFT_PTPSERIAL = 0x16
++ IFT_RS232 = 0x21
++ IFT_SDLC = 0x11
++ IFT_SIP = 0x1f
++ IFT_SLIP = 0x1c
++ IFT_SMDSDXI = 0x2b
++ IFT_SMDSICIP = 0x34
++ IFT_SN = 0x38
++ IFT_SONET = 0x27
++ IFT_SONETPATH = 0x32
++ IFT_SONETVT = 0x33
++ IFT_SP = 0x39
++ IFT_STARLAN = 0xb
++ IFT_T1 = 0x12
++ IFT_TUNNEL = 0x3b
++ IFT_ULTRA = 0x1d
++ IFT_V35 = 0x2d
++ IFT_VIPA = 0x37
++ IFT_X25 = 0x5
++ IFT_X25DDN = 0x4
++ IFT_X25PLE = 0x28
++ IFT_XETHER = 0x1a
++ IGNBRK = 0x1
++ IGNCR = 0x80
++ IGNPAR = 0x4
++ IMAXBEL = 0x10000
++ INLCR = 0x40
++ INPCK = 0x10
++ IN_CLASSA_HOST = 0xffffff
++ IN_CLASSA_MAX = 0x80
++ IN_CLASSA_NET = 0xff000000
++ IN_CLASSA_NSHIFT = 0x18
++ IN_CLASSB_HOST = 0xffff
++ IN_CLASSB_MAX = 0x10000
++ IN_CLASSB_NET = 0xffff0000
++ IN_CLASSB_NSHIFT = 0x10
++ IN_CLASSC_HOST = 0xff
++ IN_CLASSC_NET = 0xffffff00
++ IN_CLASSC_NSHIFT = 0x8
++ IN_CLASSD_HOST = 0xfffffff
++ IN_CLASSD_NET = 0xf0000000
++ IN_CLASSD_NSHIFT = 0x1c
++ IN_LOOPBACKNET = 0x7f
++ IN_USE = 0x1
++ IPPROTO_AH = 0x33
++ IPPROTO_BIP = 0x53
++ IPPROTO_DSTOPTS = 0x3c
++ IPPROTO_EGP = 0x8
++ IPPROTO_EON = 0x50
++ IPPROTO_ESP = 0x32
++ IPPROTO_FRAGMENT = 0x2c
++ IPPROTO_GGP = 0x3
++ IPPROTO_GIF = 0x8c
++ IPPROTO_GRE = 0x2f
++ IPPROTO_HOPOPTS = 0x0
++ IPPROTO_ICMP = 0x1
++ IPPROTO_ICMPV6 = 0x3a
++ IPPROTO_IDP = 0x16
++ IPPROTO_IGMP = 0x2
++ IPPROTO_IP = 0x0
++ IPPROTO_IPIP = 0x4
++ IPPROTO_IPV6 = 0x29
++ IPPROTO_LOCAL = 0x3f
++ IPPROTO_MAX = 0x100
++ IPPROTO_MH = 0x87
++ IPPROTO_NONE = 0x3b
++ IPPROTO_PUP = 0xc
++ IPPROTO_QOS = 0x2d
++ IPPROTO_RAW = 0xff
++ IPPROTO_ROUTING = 0x2b
++ IPPROTO_RSVP = 0x2e
++ IPPROTO_SCTP = 0x84
++ IPPROTO_TCP = 0x6
++ IPPROTO_TP = 0x1d
++ IPPROTO_UDP = 0x11
++ IPV6_ADDRFORM = 0x16
++ IPV6_ADDR_PREFERENCES = 0x4a
++ IPV6_ADD_MEMBERSHIP = 0xc
++ IPV6_AIXRAWSOCKET = 0x39
++ IPV6_CHECKSUM = 0x27
++ IPV6_DONTFRAG = 0x2d
++ IPV6_DROP_MEMBERSHIP = 0xd
++ IPV6_DSTOPTS = 0x36
++ IPV6_FLOWINFO_FLOWLABEL = 0xffffff
++ IPV6_FLOWINFO_PRIFLOW = 0xfffffff
++ IPV6_FLOWINFO_PRIORITY = 0xf000000
++ IPV6_FLOWINFO_SRFLAG = 0x10000000
++ IPV6_FLOWINFO_VERSION = 0xf0000000
++ IPV6_HOPLIMIT = 0x28
++ IPV6_HOPOPTS = 0x34
++ IPV6_JOIN_GROUP = 0xc
++ IPV6_LEAVE_GROUP = 0xd
++ IPV6_MIPDSTOPTS = 0x36
++ IPV6_MULTICAST_HOPS = 0xa
++ IPV6_MULTICAST_IF = 0x9
++ IPV6_MULTICAST_LOOP = 0xb
++ IPV6_NEXTHOP = 0x30
++ IPV6_NOPROBE = 0x1c
++ IPV6_PATHMTU = 0x2e
++ IPV6_PKTINFO = 0x21
++ IPV6_PKTOPTIONS = 0x24
++ IPV6_PRIORITY_10 = 0xa000000
++ IPV6_PRIORITY_11 = 0xb000000
++ IPV6_PRIORITY_12 = 0xc000000
++ IPV6_PRIORITY_13 = 0xd000000
++ IPV6_PRIORITY_14 = 0xe000000
++ IPV6_PRIORITY_15 = 0xf000000
++ IPV6_PRIORITY_8 = 0x8000000
++ IPV6_PRIORITY_9 = 0x9000000
++ IPV6_PRIORITY_BULK = 0x4000000
++ IPV6_PRIORITY_CONTROL = 0x7000000
++ IPV6_PRIORITY_FILLER = 0x1000000
++ IPV6_PRIORITY_INTERACTIVE = 0x6000000
++ IPV6_PRIORITY_RESERVED1 = 0x3000000
++ IPV6_PRIORITY_RESERVED2 = 0x5000000
++ IPV6_PRIORITY_UNATTENDED = 0x2000000
++ IPV6_PRIORITY_UNCHARACTERIZED = 0x0
++ IPV6_RECVDSTOPTS = 0x38
++ IPV6_RECVHOPLIMIT = 0x29
++ IPV6_RECVHOPOPTS = 0x35
++ IPV6_RECVHOPS = 0x22
++ IPV6_RECVIF = 0x1e
++ IPV6_RECVPATHMTU = 0x2f
++ IPV6_RECVPKTINFO = 0x23
++ IPV6_RECVRTHDR = 0x33
++ IPV6_RECVSRCRT = 0x1d
++ IPV6_RECVTCLASS = 0x2a
++ IPV6_RTHDR = 0x32
++ IPV6_RTHDRDSTOPTS = 0x37
++ IPV6_RTHDR_TYPE_0 = 0x0
++ IPV6_RTHDR_TYPE_2 = 0x2
++ IPV6_SENDIF = 0x1f
++ IPV6_SRFLAG_LOOSE = 0x0
++ IPV6_SRFLAG_STRICT = 0x10000000
++ IPV6_TCLASS = 0x2b
++ IPV6_TOKEN_LENGTH = 0x40
++ IPV6_UNICAST_HOPS = 0x4
++ IPV6_USE_MIN_MTU = 0x2c
++ IPV6_V6ONLY = 0x25
++ IPV6_VERSION = 0x60000000
++ IP_ADDRFORM = 0x16
++ IP_ADD_MEMBERSHIP = 0xc
++ IP_ADD_SOURCE_MEMBERSHIP = 0x3c
++ IP_BLOCK_SOURCE = 0x3a
++ IP_BROADCAST_IF = 0x10
++ IP_CACHE_LINE_SIZE = 0x80
++ IP_DEFAULT_MULTICAST_LOOP = 0x1
++ IP_DEFAULT_MULTICAST_TTL = 0x1
++ IP_DF = 0x4000
++ IP_DHCPMODE = 0x11
++ IP_DONTFRAG = 0x19
++ IP_DROP_MEMBERSHIP = 0xd
++ IP_DROP_SOURCE_MEMBERSHIP = 0x3d
++ IP_FINDPMTU = 0x1a
++ IP_HDRINCL = 0x2
++ IP_INC_MEMBERSHIPS = 0x14
++ IP_INIT_MEMBERSHIP = 0x14
++ IP_MAXPACKET = 0xffff
++ IP_MF = 0x2000
++ IP_MSS = 0x240
++ IP_MULTICAST_HOPS = 0xa
++ IP_MULTICAST_IF = 0x9
++ IP_MULTICAST_LOOP = 0xb
++ IP_MULTICAST_TTL = 0xa
++ IP_OPT = 0x1b
++ IP_OPTIONS = 0x1
++ IP_PMTUAGE = 0x1b
++ IP_RECVDSTADDR = 0x7
++ IP_RECVIF = 0x14
++ IP_RECVIFINFO = 0xf
++ IP_RECVINTERFACE = 0x20
++ IP_RECVMACHDR = 0xe
++ IP_RECVOPTS = 0x5
++ IP_RECVRETOPTS = 0x6
++ IP_RECVTTL = 0x22
++ IP_RETOPTS = 0x8
++ IP_SOURCE_FILTER = 0x48
++ IP_TOS = 0x3
++ IP_TTL = 0x4
++ IP_UNBLOCK_SOURCE = 0x3b
++ IP_UNICAST_HOPS = 0x4
++ ISIG = 0x1
++ ISTRIP = 0x20
++ IUCLC = 0x800
++ IXANY = 0x1000
++ IXOFF = 0x400
++ IXON = 0x200
++ I_FLUSH = 0x20005305
++ LNOFLSH = 0x8000
++ LOCK_EX = 0x2
++ LOCK_NB = 0x4
++ LOCK_SH = 0x1
++ LOCK_UN = 0x8
++ MADV_DONTNEED = 0x4
++ MADV_NORMAL = 0x0
++ MADV_RANDOM = 0x1
++ MADV_SEQUENTIAL = 0x2
++ MADV_SPACEAVAIL = 0x5
++ MADV_WILLNEED = 0x3
++ MAP_ANON = 0x10
++ MAP_ANONYMOUS = 0x10
++ MAP_FILE = 0x0
++ MAP_FIXED = 0x100
++ MAP_PRIVATE = 0x2
++ MAP_SHARED = 0x1
++ MAP_TYPE = 0xf0
++ MAP_VARIABLE = 0x0
++ MCAST_BLOCK_SOURCE = 0x40
++ MCAST_EXCLUDE = 0x2
++ MCAST_INCLUDE = 0x1
++ MCAST_JOIN_GROUP = 0x3e
++ MCAST_JOIN_SOURCE_GROUP = 0x42
++ MCAST_LEAVE_GROUP = 0x3f
++ MCAST_LEAVE_SOURCE_GROUP = 0x43
++ MCAST_SOURCE_FILTER = 0x49
++ MCAST_UNBLOCK_SOURCE = 0x41
++ MCL_CURRENT = 0x100
++ MCL_FUTURE = 0x200
++ MSG_ANY = 0x4
++ MSG_ARGEXT = 0x400
++ MSG_BAND = 0x2
++ MSG_COMPAT = 0x8000
++ MSG_CTRUNC = 0x20
++ MSG_DONTROUTE = 0x4
++ MSG_EOR = 0x8
++ MSG_HIPRI = 0x1
++ MSG_MAXIOVLEN = 0x10
++ MSG_MPEG2 = 0x80
++ MSG_NONBLOCK = 0x4000
++ MSG_NOSIGNAL = 0x100
++ MSG_OOB = 0x1
++ MSG_PEEK = 0x2
++ MSG_TRUNC = 0x10
++ MSG_WAITALL = 0x40
++ MSG_WAITFORONE = 0x200
++ MS_ASYNC = 0x10
++ MS_EINTR = 0x80
++ MS_INVALIDATE = 0x40
++ MS_PER_SEC = 0x3e8
++ MS_SYNC = 0x20
++ NFDBITS = 0x20
++ NL0 = 0x0
++ NL1 = 0x4000
++ NL2 = 0x8000
++ NL3 = 0xc000
++ NLDLY = 0x4000
++ NOFLSH = 0x80
++ NOFLUSH = 0x80000000
++ OCRNL = 0x8
++ OFDEL = 0x80
++ OFILL = 0x40
++ OLCUC = 0x2
++ ONLCR = 0x4
++ ONLRET = 0x20
++ ONOCR = 0x10
++ ONOEOT = 0x80000
++ OPOST = 0x1
++ OXTABS = 0x40000
++ O_ACCMODE = 0x23
++ O_APPEND = 0x8
++ O_CIO = 0x80
++ O_CIOR = 0x800000000
++ O_CLOEXEC = 0x800000
++ O_CREAT = 0x100
++ O_DEFER = 0x2000
++ O_DELAY = 0x4000
++ O_DIRECT = 0x8000000
++ O_DIRECTORY = 0x80000
++ O_DSYNC = 0x400000
++ O_EFSOFF = 0x400000000
++ O_EFSON = 0x200000000
++ O_EXCL = 0x400
++ O_EXEC = 0x20
++ O_LARGEFILE = 0x4000000
++ O_NDELAY = 0x8000
++ O_NOCACHE = 0x100000
++ O_NOCTTY = 0x800
++ O_NOFOLLOW = 0x1000000
++ O_NONBLOCK = 0x4
++ O_NONE = 0x3
++ O_NSHARE = 0x10000
++ O_RAW = 0x100000000
++ O_RDONLY = 0x0
++ O_RDWR = 0x2
++ O_RSHARE = 0x1000
++ O_RSYNC = 0x200000
++ O_SEARCH = 0x20
++ O_SNAPSHOT = 0x40
++ O_SYNC = 0x10
++ O_TRUNC = 0x200
++ O_TTY_INIT = 0x0
++ O_WRONLY = 0x1
++ PARENB = 0x100
++ PAREXT = 0x100000
++ PARMRK = 0x8
++ PARODD = 0x200
++ PENDIN = 0x20000000
++ PRIO_PGRP = 0x1
++ PRIO_PROCESS = 0x0
++ PRIO_USER = 0x2
++ PROT_EXEC = 0x4
++ PROT_NONE = 0x0
++ PROT_READ = 0x1
++ PROT_WRITE = 0x2
++ PR_64BIT = 0x20
++ PR_ADDR = 0x2
++ PR_ARGEXT = 0x400
++ PR_ATOMIC = 0x1
++ PR_CONNREQUIRED = 0x4
++ PR_FASTHZ = 0x5
++ PR_INP = 0x40
++ PR_INTRLEVEL = 0x8000
++ PR_MLS = 0x100
++ PR_MLS_1_LABEL = 0x200
++ PR_NOEOR = 0x4000
++ PR_RIGHTS = 0x10
++ PR_SLOWHZ = 0x2
++ PR_WANTRCVD = 0x8
++ RLIMIT_AS = 0x6
++ RLIMIT_CORE = 0x4
++ RLIMIT_CPU = 0x0
++ RLIMIT_DATA = 0x2
++ RLIMIT_FSIZE = 0x1
++ RLIMIT_NOFILE = 0x7
++ RLIMIT_NPROC = 0x9
++ RLIMIT_RSS = 0x5
++ RLIMIT_STACK = 0x3
++ RLIM_INFINITY = 0x7fffffff
++ RTAX_AUTHOR = 0x6
++ RTAX_BRD = 0x7
++ RTAX_DST = 0x0
++ RTAX_GATEWAY = 0x1
++ RTAX_GENMASK = 0x3
++ RTAX_IFA = 0x5
++ RTAX_IFP = 0x4
++ RTAX_MAX = 0x8
++ RTAX_NETMASK = 0x2
++ RTA_AUTHOR = 0x40
++ RTA_BRD = 0x80
++ RTA_DOWNSTREAM = 0x100
++ RTA_DST = 0x1
++ RTA_GATEWAY = 0x2
++ RTA_GENMASK = 0x8
++ RTA_IFA = 0x20
++ RTA_IFP = 0x10
++ RTA_NETMASK = 0x4
++ RTC_IA64 = 0x3
++ RTC_POWER = 0x1
++ RTC_POWER_PC = 0x2
++ RTF_ACTIVE_DGD = 0x1000000
++ RTF_BCE = 0x80000
++ RTF_BLACKHOLE = 0x1000
++ RTF_BROADCAST = 0x400000
++ RTF_BUL = 0x2000
++ RTF_CLONE = 0x10000
++ RTF_CLONED = 0x20000
++ RTF_CLONING = 0x100
++ RTF_DONE = 0x40
++ RTF_DYNAMIC = 0x10
++ RTF_FREE_IN_PROG = 0x4000000
++ RTF_GATEWAY = 0x2
++ RTF_HOST = 0x4
++ RTF_LLINFO = 0x400
++ RTF_LOCAL = 0x200000
++ RTF_MASK = 0x80
++ RTF_MODIFIED = 0x20
++ RTF_MULTICAST = 0x800000
++ RTF_PERMANENT6 = 0x8000000
++ RTF_PINNED = 0x100000
++ RTF_PROTO1 = 0x8000
++ RTF_PROTO2 = 0x4000
++ RTF_PROTO3 = 0x40000
++ RTF_REJECT = 0x8
++ RTF_SMALLMTU = 0x40000
++ RTF_STATIC = 0x800
++ RTF_STOPSRCH = 0x2000000
++ RTF_UNREACHABLE = 0x10000000
++ RTF_UP = 0x1
++ RTF_XRESOLVE = 0x200
++ RTM_ADD = 0x1
++ RTM_CHANGE = 0x3
++ RTM_DELADDR = 0xd
++ RTM_DELETE = 0x2
++ RTM_EXPIRE = 0xf
++ RTM_GET = 0x4
++ RTM_GETNEXT = 0x11
++ RTM_IFINFO = 0xe
++ RTM_LOCK = 0x8
++ RTM_LOSING = 0x5
++ RTM_MISS = 0x7
++ RTM_NEWADDR = 0xc
++ RTM_OLDADD = 0x9
++ RTM_OLDDEL = 0xa
++ RTM_REDIRECT = 0x6
++ RTM_RESOLVE = 0xb
++ RTM_RTLOST = 0x10
++ RTM_RTTUNIT = 0xf4240
++ RTM_SAMEADDR = 0x12
++ RTM_SET = 0x13
++ RTM_VERSION = 0x2
++ RTM_VERSION_GR = 0x4
++ RTM_VERSION_GR_COMPAT = 0x3
++ RTM_VERSION_POLICY = 0x5
++ RTM_VERSION_POLICY_EXT = 0x6
++ RTM_VERSION_POLICY_PRFN = 0x7
++ RTV_EXPIRE = 0x4
++ RTV_HOPCOUNT = 0x2
++ RTV_MTU = 0x1
++ RTV_RPIPE = 0x8
++ RTV_RTT = 0x40
++ RTV_RTTVAR = 0x80
++ RTV_SPIPE = 0x10
++ RTV_SSTHRESH = 0x20
++ RUSAGE_CHILDREN = -0x1
++ RUSAGE_SELF = 0x0
++ RUSAGE_THREAD = 0x1
++ SCM_RIGHTS = 0x1
++ SHUT_RD = 0x0
++ SHUT_RDWR = 0x2
++ SHUT_WR = 0x1
++ SIGMAX64 = 0xff
++ SIGQUEUE_MAX = 0x20
++ SIOCADDIFVIPA = 0x20006942
++ SIOCADDMTU = -0x7ffb9690
++ SIOCADDMULTI = -0x7fdf96cf
++ SIOCADDNETID = -0x7fd796a9
++ SIOCADDRT = -0x7fcf8df6
++ SIOCAIFADDR = -0x7fbf96e6
++ SIOCATMARK = 0x40047307
++ SIOCDARP = -0x7fb396e0
++ SIOCDELIFVIPA = 0x20006943
++ SIOCDELMTU = -0x7ffb968f
++ SIOCDELMULTI = -0x7fdf96ce
++ SIOCDELPMTU = -0x7fd78ff6
++ SIOCDELRT = -0x7fcf8df5
++ SIOCDIFADDR = -0x7fd796e7
++ SIOCDNETOPT = -0x3ffe9680
++ SIOCDX25XLATE = -0x7fd7969b
++ SIOCFIFADDR = -0x7fdf966d
++ SIOCGARP = -0x3fb396da
++ SIOCGETMTUS = 0x2000696f
++ SIOCGETSGCNT = -0x3feb8acc
++ SIOCGETVIFCNT = -0x3feb8acd
++ SIOCGHIWAT = 0x40047301
++ SIOCGIFADDR = -0x3fd796df
++ SIOCGIFADDRS = 0x2000698c
++ SIOCGIFBAUDRATE = -0x3fdf9669
++ SIOCGIFBRDADDR = -0x3fd796dd
++ SIOCGIFCONF = -0x3ff796bb
++ SIOCGIFCONFGLOB = -0x3ff79670
++ SIOCGIFDSTADDR = -0x3fd796de
++ SIOCGIFFLAGS = -0x3fd796ef
++ SIOCGIFGIDLIST = 0x20006968
++ SIOCGIFHWADDR = -0x3fab966b
++ SIOCGIFMETRIC = -0x3fd796e9
++ SIOCGIFMTU = -0x3fd796aa
++ SIOCGIFNETMASK = -0x3fd796db
++ SIOCGIFOPTIONS = -0x3fd796d6
++ SIOCGISNO = -0x3fd79695
++ SIOCGLOADF = -0x3ffb967e
++ SIOCGLOWAT = 0x40047303
++ SIOCGNETOPT = -0x3ffe96a5
++ SIOCGNETOPT1 = -0x3fdf967f
++ SIOCGNMTUS = 0x2000696e
++ SIOCGPGRP = 0x40047309
++ SIOCGSIZIFCONF = 0x4004696a
++ SIOCGSRCFILTER = -0x3fe796cb
++ SIOCGTUNEPHASE = -0x3ffb9676
++ SIOCGX25XLATE = -0x3fd7969c
++ SIOCIFATTACH = -0x7fdf9699
++ SIOCIFDETACH = -0x7fdf969a
++ SIOCIFGETPKEY = -0x7fdf969b
++ SIOCIF_ATM_DARP = -0x7fdf9683
++ SIOCIF_ATM_DUMPARP = -0x7fdf9685
++ SIOCIF_ATM_GARP = -0x7fdf9682
++ SIOCIF_ATM_IDLE = -0x7fdf9686
++ SIOCIF_ATM_SARP = -0x7fdf9681
++ SIOCIF_ATM_SNMPARP = -0x7fdf9687
++ SIOCIF_ATM_SVC = -0x7fdf9684
++ SIOCIF_ATM_UBR = -0x7fdf9688
++ SIOCIF_DEVHEALTH = -0x7ffb966c
++ SIOCIF_IB_ARP_INCOMP = -0x7fdf9677
++ SIOCIF_IB_ARP_TIMER = -0x7fdf9678
++ SIOCIF_IB_CLEAR_PINFO = -0x3fdf966f
++ SIOCIF_IB_DEL_ARP = -0x7fdf967f
++ SIOCIF_IB_DEL_PINFO = -0x3fdf9670
++ SIOCIF_IB_DUMP_ARP = -0x7fdf9680
++ SIOCIF_IB_GET_ARP = -0x7fdf967e
++ SIOCIF_IB_GET_INFO = -0x3f879675
++ SIOCIF_IB_GET_STATS = -0x3f879672
++ SIOCIF_IB_NOTIFY_ADDR_REM = -0x3f87966a
++ SIOCIF_IB_RESET_STATS = -0x3f879671
++ SIOCIF_IB_RESIZE_CQ = -0x7fdf9679
++ SIOCIF_IB_SET_ARP = -0x7fdf967d
++ SIOCIF_IB_SET_PKEY = -0x7fdf967c
++ SIOCIF_IB_SET_PORT = -0x7fdf967b
++ SIOCIF_IB_SET_QKEY = -0x7fdf9676
++ SIOCIF_IB_SET_QSIZE = -0x7fdf967a
++ SIOCLISTIFVIPA = 0x20006944
++ SIOCSARP = -0x7fb396e2
++ SIOCSHIWAT = 0x80047300
++ SIOCSIFADDR = -0x7fd796f4
++ SIOCSIFADDRORI = -0x7fdb9673
++ SIOCSIFBRDADDR = -0x7fd796ed
++ SIOCSIFDSTADDR = -0x7fd796f2
++ SIOCSIFFLAGS = -0x7fd796f0
++ SIOCSIFGIDLIST = 0x20006969
++ SIOCSIFMETRIC = -0x7fd796e8
++ SIOCSIFMTU = -0x7fd796a8
++ SIOCSIFNETDUMP = -0x7fd796e4
++ SIOCSIFNETMASK = -0x7fd796ea
++ SIOCSIFOPTIONS = -0x7fd796d7
++ SIOCSIFSUBCHAN = -0x7fd796e5
++ SIOCSISNO = -0x7fd79694
++ SIOCSLOADF = -0x3ffb967d
++ SIOCSLOWAT = 0x80047302
++ SIOCSNETOPT = -0x7ffe96a6
++ SIOCSPGRP = 0x80047308
++ SIOCSX25XLATE = -0x7fd7969d
++ SOCK_CONN_DGRAM = 0x6
++ SOCK_DGRAM = 0x2
++ SOCK_RAW = 0x3
++ SOCK_RDM = 0x4
++ SOCK_SEQPACKET = 0x5
++ SOCK_STREAM = 0x1
++ SOL_SOCKET = 0xffff
++ SOMAXCONN = 0x400
++ SO_ACCEPTCONN = 0x2
++ SO_AUDIT = 0x8000
++ SO_BROADCAST = 0x20
++ SO_CKSUMRECV = 0x800
++ SO_DEBUG = 0x1
++ SO_DONTROUTE = 0x10
++ SO_ERROR = 0x1007
++ SO_KEEPALIVE = 0x8
++ SO_KERNACCEPT = 0x2000
++ SO_LINGER = 0x80
++ SO_NOMULTIPATH = 0x4000
++ SO_NOREUSEADDR = 0x1000
++ SO_OOBINLINE = 0x100
++ SO_PEERID = 0x1009
++ SO_RCVBUF = 0x1002
++ SO_RCVLOWAT = 0x1004
++ SO_RCVTIMEO = 0x1006
++ SO_REUSEADDR = 0x4
++ SO_REUSEPORT = 0x200
++ SO_SNDBUF = 0x1001
++ SO_SNDLOWAT = 0x1003
++ SO_SNDTIMEO = 0x1005
++ SO_TIMESTAMPNS = 0x100a
++ SO_TYPE = 0x1008
++ SO_USELOOPBACK = 0x40
++ SO_USE_IFBUFS = 0x400
++ S_BANDURG = 0x400
++ S_EMODFMT = 0x3c000000
++ S_ENFMT = 0x400
++ S_ERROR = 0x100
++ S_HANGUP = 0x200
++ S_HIPRI = 0x2
++ S_ICRYPTO = 0x80000
++ S_IEXEC = 0x40
++ S_IFBLK = 0x6000
++ S_IFCHR = 0x2000
++ S_IFDIR = 0x4000
++ S_IFIFO = 0x1000
++ S_IFJOURNAL = 0x10000
++ S_IFLNK = 0xa000
++ S_IFMPX = 0x2200
++ S_IFMT = 0xf000
++ S_IFPDIR = 0x4000000
++ S_IFPSDIR = 0x8000000
++ S_IFPSSDIR = 0xc000000
++ S_IFREG = 0x8000
++ S_IFSOCK = 0xc000
++ S_IFSYSEA = 0x30000000
++ S_INPUT = 0x1
++ S_IREAD = 0x100
++ S_IRGRP = 0x20
++ S_IROTH = 0x4
++ S_IRUSR = 0x100
++ S_IRWXG = 0x38
++ S_IRWXO = 0x7
++ S_IRWXU = 0x1c0
++ S_ISGID = 0x400
++ S_ISUID = 0x800
++ S_ISVTX = 0x200
++ S_ITCB = 0x1000000
++ S_ITP = 0x800000
++ S_IWGRP = 0x10
++ S_IWOTH = 0x2
++ S_IWRITE = 0x80
++ S_IWUSR = 0x80
++ S_IXACL = 0x2000000
++ S_IXATTR = 0x40000
++ S_IXGRP = 0x8
++ S_IXINTERFACE = 0x100000
++ S_IXMOD = 0x40000000
++ S_IXOTH = 0x1
++ S_IXUSR = 0x40
++ S_MSG = 0x8
++ S_OUTPUT = 0x4
++ S_RDBAND = 0x20
++ S_RDNORM = 0x10
++ S_RESERVED1 = 0x20000
++ S_RESERVED2 = 0x200000
++ S_RESERVED3 = 0x400000
++ S_RESERVED4 = 0x80000000
++ S_RESFMT1 = 0x10000000
++ S_RESFMT10 = 0x34000000
++ S_RESFMT11 = 0x38000000
++ S_RESFMT12 = 0x3c000000
++ S_RESFMT2 = 0x14000000
++ S_RESFMT3 = 0x18000000
++ S_RESFMT4 = 0x1c000000
++ S_RESFMT5 = 0x20000000
++ S_RESFMT6 = 0x24000000
++ S_RESFMT7 = 0x28000000
++ S_RESFMT8 = 0x2c000000
++ S_WRBAND = 0x80
++ S_WRNORM = 0x40
++ TAB0 = 0x0
++ TAB1 = 0x400
++ TAB2 = 0x800
++ TAB3 = 0xc00
++ TABDLY = 0xc00
++ TCFLSH = 0x540c
++ TCGETA = 0x5405
++ TCGETS = 0x5401
++ TCIFLUSH = 0x0
++ TCIOFF = 0x2
++ TCIOFLUSH = 0x2
++ TCION = 0x3
++ TCOFLUSH = 0x1
++ TCOOFF = 0x0
++ TCOON = 0x1
++ TCP_24DAYS_WORTH_OF_SLOWTICKS = 0x3f4800
++ TCP_ACLADD = 0x23
++ TCP_ACLBIND = 0x26
++ TCP_ACLCLEAR = 0x22
++ TCP_ACLDEL = 0x24
++ TCP_ACLDENY = 0x8
++ TCP_ACLFLUSH = 0x21
++ TCP_ACLGID = 0x1
++ TCP_ACLLS = 0x25
++ TCP_ACLSUBNET = 0x4
++ TCP_ACLUID = 0x2
++ TCP_CWND_DF = 0x16
++ TCP_CWND_IF = 0x15
++ TCP_DELAY_ACK_FIN = 0x2
++ TCP_DELAY_ACK_SYN = 0x1
++ TCP_FASTNAME = 0x101080a
++ TCP_KEEPCNT = 0x13
++ TCP_KEEPIDLE = 0x11
++ TCP_KEEPINTVL = 0x12
++ TCP_LSPRIV = 0x29
++ TCP_LUID = 0x20
++ TCP_MAXBURST = 0x8
++ TCP_MAXDF = 0x64
++ TCP_MAXIF = 0x64
++ TCP_MAXSEG = 0x2
++ TCP_MAXWIN = 0xffff
++ TCP_MAXWINDOWSCALE = 0xe
++ TCP_MAX_SACK = 0x4
++ TCP_MSS = 0x5b4
++ TCP_NODELAY = 0x1
++ TCP_NODELAYACK = 0x14
++ TCP_NOREDUCE_CWND_EXIT_FRXMT = 0x19
++ TCP_NOREDUCE_CWND_IN_FRXMT = 0x18
++ TCP_NOTENTER_SSTART = 0x17
++ TCP_OPT = 0x19
++ TCP_RFC1323 = 0x4
++ TCP_SETPRIV = 0x27
++ TCP_STDURG = 0x10
++ TCP_TIMESTAMP_OPTLEN = 0xc
++ TCP_UNSETPRIV = 0x28
++ TCSAFLUSH = 0x2
++ TCSBRK = 0x5409
++ TCSETA = 0x5406
++ TCSETAF = 0x5408
++ TCSETAW = 0x5407
++ TCSETS = 0x5402
++ TCSETSF = 0x5404
++ TCSETSW = 0x5403
++ TCXONC = 0x540b
++ TIMER_ABSTIME = 0x3e7
++ TIMER_MAX = 0x20
++ TIOC = 0x5400
++ TIOCCBRK = 0x2000747a
++ TIOCCDTR = 0x20007478
++ TIOCCONS = 0x80047462
++ TIOCEXCL = 0x2000740d
++ TIOCFLUSH = 0x80047410
++ TIOCGETC = 0x40067412
++ TIOCGETD = 0x40047400
++ TIOCGETP = 0x40067408
++ TIOCGLTC = 0x40067474
++ TIOCGPGRP = 0x40047477
++ TIOCGSID = 0x40047448
++ TIOCGSIZE = 0x40087468
++ TIOCGWINSZ = 0x40087468
++ TIOCHPCL = 0x20007402
++ TIOCLBIC = 0x8004747e
++ TIOCLBIS = 0x8004747f
++ TIOCLGET = 0x4004747c
++ TIOCLSET = 0x8004747d
++ TIOCMBIC = 0x8004746b
++ TIOCMBIS = 0x8004746c
++ TIOCMGET = 0x4004746a
++ TIOCMIWAIT = 0x80047464
++ TIOCMODG = 0x40047403
++ TIOCMODS = 0x80047404
++ TIOCMSET = 0x8004746d
++ TIOCM_CAR = 0x40
++ TIOCM_CD = 0x40
++ TIOCM_CTS = 0x20
++ TIOCM_DSR = 0x100
++ TIOCM_DTR = 0x2
++ TIOCM_LE = 0x1
++ TIOCM_RI = 0x80
++ TIOCM_RNG = 0x80
++ TIOCM_RTS = 0x4
++ TIOCM_SR = 0x10
++ TIOCM_ST = 0x8
++ TIOCNOTTY = 0x20007471
++ TIOCNXCL = 0x2000740e
++ TIOCOUTQ = 0x40047473
++ TIOCPKT = 0x80047470
++ TIOCPKT_DATA = 0x0
++ TIOCPKT_DOSTOP = 0x20
++ TIOCPKT_FLUSHREAD = 0x1
++ TIOCPKT_FLUSHWRITE = 0x2
++ TIOCPKT_NOSTOP = 0x10
++ TIOCPKT_START = 0x8
++ TIOCPKT_STOP = 0x4
++ TIOCREMOTE = 0x80047469
++ TIOCSBRK = 0x2000747b
++ TIOCSDTR = 0x20007479
++ TIOCSETC = 0x80067411
++ TIOCSETD = 0x80047401
++ TIOCSETN = 0x8006740a
++ TIOCSETP = 0x80067409
++ TIOCSLTC = 0x80067475
++ TIOCSPGRP = 0x80047476
++ TIOCSSIZE = 0x80087467
++ TIOCSTART = 0x2000746e
++ TIOCSTI = 0x80017472
++ TIOCSTOP = 0x2000746f
++ TIOCSWINSZ = 0x80087467
++ TIOCUCNTL = 0x80047466
++ TOSTOP = 0x10000
++ UTIME_NOW = -0x2
++ UTIME_OMIT = -0x3
++ VDISCRD = 0xc
++ VDSUSP = 0xa
++ VEOF = 0x4
++ VEOL = 0x5
++ VEOL2 = 0x6
++ VERASE = 0x2
++ VINTR = 0x0
++ VKILL = 0x3
++ VLNEXT = 0xe
++ VMIN = 0x4
++ VQUIT = 0x1
++ VREPRINT = 0xb
++ VSTART = 0x7
++ VSTOP = 0x8
++ VSTRT = 0x7
++ VSUSP = 0x9
++ VT0 = 0x0
++ VT1 = 0x8000
++ VTDELAY = 0x2000
++ VTDLY = 0x8000
++ VTIME = 0x5
++ VWERSE = 0xd
++ WPARSTART = 0x1
++ WPARSTOP = 0x2
++ WPARTTYNAME = "Global"
++ XCASE = 0x4
++ XTABS = 0xc00
++ _FDATAFLUSH = 0x2000000000
++)
++
++// Errors
++const (
++ E2BIG = syscall.Errno(0x7)
++ EACCES = syscall.Errno(0xd)
++ EADDRINUSE = syscall.Errno(0x43)
++ EADDRNOTAVAIL = syscall.Errno(0x44)
++ EAFNOSUPPORT = syscall.Errno(0x42)
++ EAGAIN = syscall.Errno(0xb)
++ EALREADY = syscall.Errno(0x38)
++ EBADF = syscall.Errno(0x9)
++ EBADMSG = syscall.Errno(0x78)
++ EBUSY = syscall.Errno(0x10)
++ ECANCELED = syscall.Errno(0x75)
++ ECHILD = syscall.Errno(0xa)
++ ECHRNG = syscall.Errno(0x25)
++ ECLONEME = syscall.Errno(0x52)
++ ECONNABORTED = syscall.Errno(0x48)
++ ECONNREFUSED = syscall.Errno(0x4f)
++ ECONNRESET = syscall.Errno(0x49)
++ ECORRUPT = syscall.Errno(0x59)
++ EDEADLK = syscall.Errno(0x2d)
++ EDESTADDREQ = syscall.Errno(0x3a)
++ EDESTADDRREQ = syscall.Errno(0x3a)
++ EDIST = syscall.Errno(0x35)
++ EDOM = syscall.Errno(0x21)
++ EDQUOT = syscall.Errno(0x58)
++ EEXIST = syscall.Errno(0x11)
++ EFAULT = syscall.Errno(0xe)
++ EFBIG = syscall.Errno(0x1b)
++ EFORMAT = syscall.Errno(0x30)
++ EHOSTDOWN = syscall.Errno(0x50)
++ EHOSTUNREACH = syscall.Errno(0x51)
++ EIDRM = syscall.Errno(0x24)
++ EILSEQ = syscall.Errno(0x74)
++ EINPROGRESS = syscall.Errno(0x37)
++ EINTR = syscall.Errno(0x4)
++ EINVAL = syscall.Errno(0x16)
++ EIO = syscall.Errno(0x5)
++ EISCONN = syscall.Errno(0x4b)
++ EISDIR = syscall.Errno(0x15)
++ EL2HLT = syscall.Errno(0x2c)
++ EL2NSYNC = syscall.Errno(0x26)
++ EL3HLT = syscall.Errno(0x27)
++ EL3RST = syscall.Errno(0x28)
++ ELNRNG = syscall.Errno(0x29)
++ ELOOP = syscall.Errno(0x55)
++ EMEDIA = syscall.Errno(0x6e)
++ EMFILE = syscall.Errno(0x18)
++ EMLINK = syscall.Errno(0x1f)
++ EMSGSIZE = syscall.Errno(0x3b)
++ EMULTIHOP = syscall.Errno(0x7d)
++ ENAMETOOLONG = syscall.Errno(0x56)
++ ENETDOWN = syscall.Errno(0x45)
++ ENETRESET = syscall.Errno(0x47)
++ ENETUNREACH = syscall.Errno(0x46)
++ ENFILE = syscall.Errno(0x17)
++ ENOATTR = syscall.Errno(0x70)
++ ENOBUFS = syscall.Errno(0x4a)
++ ENOCONNECT = syscall.Errno(0x32)
++ ENOCSI = syscall.Errno(0x2b)
++ ENODATA = syscall.Errno(0x7a)
++ ENODEV = syscall.Errno(0x13)
++ ENOENT = syscall.Errno(0x2)
++ ENOEXEC = syscall.Errno(0x8)
++ ENOLCK = syscall.Errno(0x31)
++ ENOLINK = syscall.Errno(0x7e)
++ ENOMEM = syscall.Errno(0xc)
++ ENOMSG = syscall.Errno(0x23)
++ ENOPROTOOPT = syscall.Errno(0x3d)
++ ENOSPC = syscall.Errno(0x1c)
++ ENOSR = syscall.Errno(0x76)
++ ENOSTR = syscall.Errno(0x7b)
++ ENOSYS = syscall.Errno(0x6d)
++ ENOTBLK = syscall.Errno(0xf)
++ ENOTCONN = syscall.Errno(0x4c)
++ ENOTDIR = syscall.Errno(0x14)
++ ENOTEMPTY = syscall.Errno(0x11)
++ ENOTREADY = syscall.Errno(0x2e)
++ ENOTRECOVERABLE = syscall.Errno(0x5e)
++ ENOTRUST = syscall.Errno(0x72)
++ ENOTSOCK = syscall.Errno(0x39)
++ ENOTSUP = syscall.Errno(0x7c)
++ ENOTTY = syscall.Errno(0x19)
++ ENXIO = syscall.Errno(0x6)
++ EOPNOTSUPP = syscall.Errno(0x40)
++ EOVERFLOW = syscall.Errno(0x7f)
++ EOWNERDEAD = syscall.Errno(0x5f)
++ EPERM = syscall.Errno(0x1)
++ EPFNOSUPPORT = syscall.Errno(0x41)
++ EPIPE = syscall.Errno(0x20)
++ EPROCLIM = syscall.Errno(0x53)
++ EPROTO = syscall.Errno(0x79)
++ EPROTONOSUPPORT = syscall.Errno(0x3e)
++ EPROTOTYPE = syscall.Errno(0x3c)
++ ERANGE = syscall.Errno(0x22)
++ EREMOTE = syscall.Errno(0x5d)
++ ERESTART = syscall.Errno(0x52)
++ EROFS = syscall.Errno(0x1e)
++ ESAD = syscall.Errno(0x71)
++ ESHUTDOWN = syscall.Errno(0x4d)
++ ESOCKTNOSUPPORT = syscall.Errno(0x3f)
++ ESOFT = syscall.Errno(0x6f)
++ ESPIPE = syscall.Errno(0x1d)
++ ESRCH = syscall.Errno(0x3)
++ ESTALE = syscall.Errno(0x34)
++ ESYSERROR = syscall.Errno(0x5a)
++ ETIME = syscall.Errno(0x77)
++ ETIMEDOUT = syscall.Errno(0x4e)
++ ETOOMANYREFS = syscall.Errno(0x73)
++ ETXTBSY = syscall.Errno(0x1a)
++ EUNATCH = syscall.Errno(0x2a)
++ EUSERS = syscall.Errno(0x54)
++ EWOULDBLOCK = syscall.Errno(0xb)
++ EWRPROTECT = syscall.Errno(0x2f)
++ EXDEV = syscall.Errno(0x12)
++)
++
++// Signals
++const (
++ SIGABRT = syscall.Signal(0x6)
++ SIGAIO = syscall.Signal(0x17)
++ SIGALRM = syscall.Signal(0xe)
++ SIGALRM1 = syscall.Signal(0x26)
++ SIGBUS = syscall.Signal(0xa)
++ SIGCAPI = syscall.Signal(0x31)
++ SIGCHLD = syscall.Signal(0x14)
++ SIGCLD = syscall.Signal(0x14)
++ SIGCONT = syscall.Signal(0x13)
++ SIGCPUFAIL = syscall.Signal(0x3b)
++ SIGDANGER = syscall.Signal(0x21)
++ SIGEMT = syscall.Signal(0x7)
++ SIGFPE = syscall.Signal(0x8)
++ SIGGRANT = syscall.Signal(0x3c)
++ SIGHUP = syscall.Signal(0x1)
++ SIGILL = syscall.Signal(0x4)
++ SIGINT = syscall.Signal(0x2)
++ SIGIO = syscall.Signal(0x17)
++ SIGIOINT = syscall.Signal(0x10)
++ SIGIOT = syscall.Signal(0x6)
++ SIGKAP = syscall.Signal(0x3c)
++ SIGKILL = syscall.Signal(0x9)
++ SIGLOST = syscall.Signal(0x6)
++ SIGMAX = syscall.Signal(0x3f)
++ SIGMAX32 = syscall.Signal(0x3f)
++ SIGMIGRATE = syscall.Signal(0x23)
++ SIGMSG = syscall.Signal(0x1b)
++ SIGPIPE = syscall.Signal(0xd)
++ SIGPOLL = syscall.Signal(0x17)
++ SIGPRE = syscall.Signal(0x24)
++ SIGPROF = syscall.Signal(0x20)
++ SIGPTY = syscall.Signal(0x17)
++ SIGPWR = syscall.Signal(0x1d)
++ SIGQUIT = syscall.Signal(0x3)
++ SIGRECONFIG = syscall.Signal(0x3a)
++ SIGRETRACT = syscall.Signal(0x3d)
++ SIGSAK = syscall.Signal(0x3f)
++ SIGSEGV = syscall.Signal(0xb)
++ SIGSOUND = syscall.Signal(0x3e)
++ SIGSTOP = syscall.Signal(0x11)
++ SIGSYS = syscall.Signal(0xc)
++ SIGSYSERROR = syscall.Signal(0x30)
++ SIGTALRM = syscall.Signal(0x26)
++ SIGTERM = syscall.Signal(0xf)
++ SIGTRAP = syscall.Signal(0x5)
++ SIGTSTP = syscall.Signal(0x12)
++ SIGTTIN = syscall.Signal(0x15)
++ SIGTTOU = syscall.Signal(0x16)
++ SIGURG = syscall.Signal(0x10)
++ SIGUSR1 = syscall.Signal(0x1e)
++ SIGUSR2 = syscall.Signal(0x1f)
++ SIGVIRT = syscall.Signal(0x25)
++ SIGVTALRM = syscall.Signal(0x22)
++ SIGWAITING = syscall.Signal(0x27)
++ SIGWINCH = syscall.Signal(0x1c)
++ SIGXCPU = syscall.Signal(0x18)
++ SIGXFSZ = syscall.Signal(0x19)
++)
++
++// Error table
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "not owner"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "I/O error"},
++ {6, "ENXIO", "no such device or address"},
++ {7, "E2BIG", "arg list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file number"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EWOULDBLOCK", "resource temporarily unavailable"},
++ {12, "ENOMEM", "not enough space"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device busy"},
++ {17, "ENOTEMPTY", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "no such device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "file table overflow"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "not a typewriter"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "argument out of domain"},
++ {34, "ERANGE", "result too large"},
++ {35, "ENOMSG", "no message of desired type"},
++ {36, "EIDRM", "identifier removed"},
++ {37, "ECHRNG", "channel number out of range"},
++ {38, "EL2NSYNC", "level 2 not synchronized"},
++ {39, "EL3HLT", "level 3 halted"},
++ {40, "EL3RST", "level 3 reset"},
++ {41, "ELNRNG", "link number out of range"},
++ {42, "EUNATCH", "protocol driver not attached"},
++ {43, "ENOCSI", "no CSI structure available"},
++ {44, "EL2HLT", "level 2 halted"},
++ {45, "EDEADLK", "deadlock condition if locked"},
++ {46, "ENOTREADY", "device not ready"},
++ {47, "EWRPROTECT", "write-protected media"},
++ {48, "EFORMAT", "unformatted or incompatible media"},
++ {49, "ENOLCK", "no locks available"},
++ {50, "ENOCONNECT", "cannot Establish Connection"},
++ {52, "ESTALE", "missing file or filesystem"},
++ {53, "EDIST", "requests blocked by Administrator"},
++ {55, "EINPROGRESS", "operation now in progress"},
++ {56, "EALREADY", "operation already in progress"},
++ {57, "ENOTSOCK", "socket operation on non-socket"},
++ {58, "EDESTADDREQ", "destination address required"},
++ {59, "EMSGSIZE", "message too long"},
++ {60, "EPROTOTYPE", "protocol wrong type for socket"},
++ {61, "ENOPROTOOPT", "protocol not available"},
++ {62, "EPROTONOSUPPORT", "protocol not supported"},
++ {63, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {64, "EOPNOTSUPP", "operation not supported on socket"},
++ {65, "EPFNOSUPPORT", "protocol family not supported"},
++ {66, "EAFNOSUPPORT", "addr family not supported by protocol"},
++ {67, "EADDRINUSE", "address already in use"},
++ {68, "EADDRNOTAVAIL", "can't assign requested address"},
++ {69, "ENETDOWN", "network is down"},
++ {70, "ENETUNREACH", "network is unreachable"},
++ {71, "ENETRESET", "network dropped connection on reset"},
++ {72, "ECONNABORTED", "software caused connection abort"},
++ {73, "ECONNRESET", "connection reset by peer"},
++ {74, "ENOBUFS", "no buffer space available"},
++ {75, "EISCONN", "socket is already connected"},
++ {76, "ENOTCONN", "socket is not connected"},
++ {77, "ESHUTDOWN", "can't send after socket shutdown"},
++ {78, "ETIMEDOUT", "connection timed out"},
++ {79, "ECONNREFUSED", "connection refused"},
++ {80, "EHOSTDOWN", "host is down"},
++ {81, "EHOSTUNREACH", "no route to host"},
++ {82, "ERESTART", "restart the system call"},
++ {83, "EPROCLIM", "too many processes"},
++ {84, "EUSERS", "too many users"},
++ {85, "ELOOP", "too many levels of symbolic links"},
++ {86, "ENAMETOOLONG", "file name too long"},
++ {88, "EDQUOT", "disk quota exceeded"},
++ {89, "ECORRUPT", "invalid file system control data detected"},
++ {90, "ESYSERROR", "for future use "},
++ {93, "EREMOTE", "item is not local to host"},
++ {94, "ENOTRECOVERABLE", "state not recoverable "},
++ {95, "EOWNERDEAD", "previous owner died "},
++ {109, "ENOSYS", "function not implemented"},
++ {110, "EMEDIA", "media surface error"},
++ {111, "ESOFT", "I/O completed, but needs relocation"},
++ {112, "ENOATTR", "no attribute found"},
++ {113, "ESAD", "security Authentication Denied"},
++ {114, "ENOTRUST", "not a Trusted Program"},
++ {115, "ETOOMANYREFS", "too many references: can't splice"},
++ {116, "EILSEQ", "invalid wide character"},
++ {117, "ECANCELED", "asynchronous I/O cancelled"},
++ {118, "ENOSR", "out of STREAMS resources"},
++ {119, "ETIME", "system call timed out"},
++ {120, "EBADMSG", "next message has wrong type"},
++ {121, "EPROTO", "error in protocol"},
++ {122, "ENODATA", "no message on stream head read q"},
++ {123, "ENOSTR", "fd not associated with a stream"},
++ {124, "ENOTSUP", "unsupported attribute value"},
++ {125, "EMULTIHOP", "multihop is not allowed"},
++ {126, "ENOLINK", "the server link has been severed"},
++ {127, "EOVERFLOW", "value too large to be stored in data type"},
++}
++
++// Signal table
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGIOT", "IOT/Abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "stopped (signal)"},
++ {18, "SIGTSTP", "stopped"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible/complete"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {27, "SIGMSG", "input device data"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGPWR", "power-failure"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
++ {32, "SIGPROF", "profiling timer expired"},
++ {33, "SIGDANGER", "paging space low"},
++ {34, "SIGVTALRM", "virtual timer expired"},
++ {35, "SIGMIGRATE", "signal 35"},
++ {36, "SIGPRE", "signal 36"},
++ {37, "SIGVIRT", "signal 37"},
++ {38, "SIGTALRM", "signal 38"},
++ {39, "SIGWAITING", "signal 39"},
++ {48, "SIGSYSERROR", "signal 48"},
++ {49, "SIGCAPI", "signal 49"},
++ {58, "SIGRECONFIG", "signal 58"},
++ {59, "SIGCPUFAIL", "CPU Failure Predicted"},
++ {60, "SIGKAP", "monitor mode granted"},
++ {61, "SIGRETRACT", "monitor mode retracted"},
++ {62, "SIGSOUND", "sound completed"},
++ {63, "SIGSAK", "secure attention"},
++}
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go b/vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go
+new file mode 100644
+index 00000000..4fc8d306
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go
+@@ -0,0 +1,1385 @@
++// mkerrors.sh -maix64
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build ppc64,aix
++
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
++// cgo -godefs -- -maix64 _const.go
++
++package unix
++
++import "syscall"
++
++const (
++ AF_APPLETALK = 0x10
++ AF_BYPASS = 0x19
++ AF_CCITT = 0xa
++ AF_CHAOS = 0x5
++ AF_DATAKIT = 0x9
++ AF_DECnet = 0xc
++ AF_DLI = 0xd
++ AF_ECMA = 0x8
++ AF_HYLINK = 0xf
++ AF_IMPLINK = 0x3
++ AF_INET = 0x2
++ AF_INET6 = 0x18
++ AF_INTF = 0x14
++ AF_ISO = 0x7
++ AF_LAT = 0xe
++ AF_LINK = 0x12
++ AF_LOCAL = 0x1
++ AF_MAX = 0x1e
++ AF_NDD = 0x17
++ AF_NETWARE = 0x16
++ AF_NS = 0x6
++ AF_OSI = 0x7
++ AF_PUP = 0x4
++ AF_RIF = 0x15
++ AF_ROUTE = 0x11
++ AF_SNA = 0xb
++ AF_UNIX = 0x1
++ AF_UNSPEC = 0x0
++ ALTWERASE = 0x400000
++ ARPHRD_802_3 = 0x6
++ ARPHRD_802_5 = 0x6
++ ARPHRD_ETHER = 0x1
++ ARPHRD_FDDI = 0x1
++ B0 = 0x0
++ B110 = 0x3
++ B1200 = 0x9
++ B134 = 0x4
++ B150 = 0x5
++ B1800 = 0xa
++ B19200 = 0xe
++ B200 = 0x6
++ B2400 = 0xb
++ B300 = 0x7
++ B38400 = 0xf
++ B4800 = 0xc
++ B50 = 0x1
++ B600 = 0x8
++ B75 = 0x2
++ B9600 = 0xd
++ BRKINT = 0x2
++ BS0 = 0x0
++ BS1 = 0x1000
++ BSDLY = 0x1000
++ CAP_AACCT = 0x6
++ CAP_ARM_APPLICATION = 0x5
++ CAP_BYPASS_RAC_VMM = 0x3
++ CAP_CLEAR = 0x0
++ CAP_CREDENTIALS = 0x7
++ CAP_EFFECTIVE = 0x1
++ CAP_EWLM_AGENT = 0x4
++ CAP_INHERITABLE = 0x2
++ CAP_MAXIMUM = 0x7
++ CAP_NUMA_ATTACH = 0x2
++ CAP_PERMITTED = 0x3
++ CAP_PROPAGATE = 0x1
++ CAP_PROPOGATE = 0x1
++ CAP_SET = 0x1
++ CBAUD = 0xf
++ CFLUSH = 0xf
++ CIBAUD = 0xf0000
++ CLOCAL = 0x800
++ CLOCK_MONOTONIC = 0xa
++ CLOCK_PROCESS_CPUTIME_ID = 0xb
++ CLOCK_REALTIME = 0x9
++ CLOCK_THREAD_CPUTIME_ID = 0xc
++ CR0 = 0x0
++ CR1 = 0x100
++ CR2 = 0x200
++ CR3 = 0x300
++ CRDLY = 0x300
++ CREAD = 0x80
++ CS5 = 0x0
++ CS6 = 0x10
++ CS7 = 0x20
++ CS8 = 0x30
++ CSIOCGIFCONF = -0x3fef96dc
++ CSIZE = 0x30
++ CSMAP_DIR = "/usr/lib/nls/csmap/"
++ CSTART = '\021'
++ CSTOP = '\023'
++ CSTOPB = 0x40
++ CSUSP = 0x1a
++ ECHO = 0x8
++ ECHOCTL = 0x20000
++ ECHOE = 0x10
++ ECHOK = 0x20
++ ECHOKE = 0x80000
++ ECHONL = 0x40
++ ECHOPRT = 0x40000
++ ECH_ICMPID = 0x2
++ ETHERNET_CSMACD = 0x6
++ EVENP = 0x80
++ EXCONTINUE = 0x0
++ EXDLOK = 0x3
++ EXIO = 0x2
++ EXPGIO = 0x0
++ EXRESUME = 0x2
++ EXRETURN = 0x1
++ EXSIG = 0x4
++ EXTA = 0xe
++ EXTB = 0xf
++ EXTRAP = 0x1
++ EYEC_RTENTRYA = 0x257274656e747241
++ EYEC_RTENTRYF = 0x257274656e747246
++ E_ACC = 0x0
++ FD_CLOEXEC = 0x1
++ FD_SETSIZE = 0xfffe
++ FF0 = 0x0
++ FF1 = 0x2000
++ FFDLY = 0x2000
++ FLUSHBAND = 0x40
++ FLUSHLOW = 0x8
++ FLUSHO = 0x100000
++ FLUSHR = 0x1
++ FLUSHRW = 0x3
++ FLUSHW = 0x2
++ F_CLOSEM = 0xa
++ F_DUP2FD = 0xe
++ F_DUPFD = 0x0
++ F_GETFD = 0x1
++ F_GETFL = 0x3
++ F_GETLK = 0xb
++ F_GETLK64 = 0xb
++ F_GETOWN = 0x8
++ F_LOCK = 0x1
++ F_OK = 0x0
++ F_RDLCK = 0x1
++ F_SETFD = 0x2
++ F_SETFL = 0x4
++ F_SETLK = 0xc
++ F_SETLK64 = 0xc
++ F_SETLKW = 0xd
++ F_SETLKW64 = 0xd
++ F_SETOWN = 0x9
++ F_TEST = 0x3
++ F_TLOCK = 0x2
++ F_TSTLK = 0xf
++ F_ULOCK = 0x0
++ F_UNLCK = 0x3
++ F_WRLCK = 0x2
++ HUPCL = 0x400
++ IBSHIFT = 0x10
++ ICANON = 0x2
++ ICMP6_FILTER = 0x26
++ ICMP6_SEC_SEND_DEL = 0x46
++ ICMP6_SEC_SEND_GET = 0x47
++ ICMP6_SEC_SEND_SET = 0x44
++ ICMP6_SEC_SEND_SET_CGA_ADDR = 0x45
++ ICRNL = 0x100
++ IEXTEN = 0x200000
++ IFA_FIRSTALIAS = 0x2000
++ IFA_ROUTE = 0x1
++ IFF_64BIT = 0x4000000
++ IFF_ALLCAST = 0x20000
++ IFF_ALLMULTI = 0x200
++ IFF_BPF = 0x8000000
++ IFF_BRIDGE = 0x40000
++ IFF_BROADCAST = 0x2
++ IFF_CANTCHANGE = 0x80c52
++ IFF_CHECKSUM_OFFLOAD = 0x10000000
++ IFF_D1 = 0x8000
++ IFF_D2 = 0x4000
++ IFF_D3 = 0x2000
++ IFF_D4 = 0x1000
++ IFF_DEBUG = 0x4
++ IFF_DEVHEALTH = 0x4000
++ IFF_DO_HW_LOOPBACK = 0x10000
++ IFF_GROUP_ROUTING = 0x2000000
++ IFF_IFBUFMGT = 0x800000
++ IFF_LINK0 = 0x100000
++ IFF_LINK1 = 0x200000
++ IFF_LINK2 = 0x400000
++ IFF_LOOPBACK = 0x8
++ IFF_MULTICAST = 0x80000
++ IFF_NOARP = 0x80
++ IFF_NOECHO = 0x800
++ IFF_NOTRAILERS = 0x20
++ IFF_OACTIVE = 0x400
++ IFF_POINTOPOINT = 0x10
++ IFF_PROMISC = 0x100
++ IFF_PSEG = 0x40000000
++ IFF_RUNNING = 0x40
++ IFF_SIMPLEX = 0x800
++ IFF_SNAP = 0x8000
++ IFF_TCP_DISABLE_CKSUM = 0x20000000
++ IFF_TCP_NOCKSUM = 0x1000000
++ IFF_UP = 0x1
++ IFF_VIPA = 0x80000000
++ IFNAMSIZ = 0x10
++ IFO_FLUSH = 0x1
++ IFT_1822 = 0x2
++ IFT_AAL5 = 0x31
++ IFT_ARCNET = 0x23
++ IFT_ARCNETPLUS = 0x24
++ IFT_ATM = 0x25
++ IFT_CEPT = 0x13
++ IFT_CLUSTER = 0x3e
++ IFT_DS3 = 0x1e
++ IFT_EON = 0x19
++ IFT_ETHER = 0x6
++ IFT_FCS = 0x3a
++ IFT_FDDI = 0xf
++ IFT_FRELAY = 0x20
++ IFT_FRELAYDCE = 0x2c
++ IFT_GIFTUNNEL = 0x3c
++ IFT_HDH1822 = 0x3
++ IFT_HF = 0x3d
++ IFT_HIPPI = 0x2f
++ IFT_HSSI = 0x2e
++ IFT_HY = 0xe
++ IFT_IB = 0xc7
++ IFT_ISDNBASIC = 0x14
++ IFT_ISDNPRIMARY = 0x15
++ IFT_ISO88022LLC = 0x29
++ IFT_ISO88023 = 0x7
++ IFT_ISO88024 = 0x8
++ IFT_ISO88025 = 0x9
++ IFT_ISO88026 = 0xa
++ IFT_LAPB = 0x10
++ IFT_LOCALTALK = 0x2a
++ IFT_LOOP = 0x18
++ IFT_MIOX25 = 0x26
++ IFT_MODEM = 0x30
++ IFT_NSIP = 0x1b
++ IFT_OTHER = 0x1
++ IFT_P10 = 0xc
++ IFT_P80 = 0xd
++ IFT_PARA = 0x22
++ IFT_PPP = 0x17
++ IFT_PROPMUX = 0x36
++ IFT_PROPVIRTUAL = 0x35
++ IFT_PTPSERIAL = 0x16
++ IFT_RS232 = 0x21
++ IFT_SDLC = 0x11
++ IFT_SIP = 0x1f
++ IFT_SLIP = 0x1c
++ IFT_SMDSDXI = 0x2b
++ IFT_SMDSICIP = 0x34
++ IFT_SN = 0x38
++ IFT_SONET = 0x27
++ IFT_SONETPATH = 0x32
++ IFT_SONETVT = 0x33
++ IFT_SP = 0x39
++ IFT_STARLAN = 0xb
++ IFT_T1 = 0x12
++ IFT_TUNNEL = 0x3b
++ IFT_ULTRA = 0x1d
++ IFT_V35 = 0x2d
++ IFT_VIPA = 0x37
++ IFT_X25 = 0x5
++ IFT_X25DDN = 0x4
++ IFT_X25PLE = 0x28
++ IFT_XETHER = 0x1a
++ IGNBRK = 0x1
++ IGNCR = 0x80
++ IGNPAR = 0x4
++ IMAXBEL = 0x10000
++ INLCR = 0x40
++ INPCK = 0x10
++ IN_CLASSA_HOST = 0xffffff
++ IN_CLASSA_MAX = 0x80
++ IN_CLASSA_NET = 0xff000000
++ IN_CLASSA_NSHIFT = 0x18
++ IN_CLASSB_HOST = 0xffff
++ IN_CLASSB_MAX = 0x10000
++ IN_CLASSB_NET = 0xffff0000
++ IN_CLASSB_NSHIFT = 0x10
++ IN_CLASSC_HOST = 0xff
++ IN_CLASSC_NET = 0xffffff00
++ IN_CLASSC_NSHIFT = 0x8
++ IN_CLASSD_HOST = 0xfffffff
++ IN_CLASSD_NET = 0xf0000000
++ IN_CLASSD_NSHIFT = 0x1c
++ IN_LOOPBACKNET = 0x7f
++ IN_USE = 0x1
++ IPPROTO_AH = 0x33
++ IPPROTO_BIP = 0x53
++ IPPROTO_DSTOPTS = 0x3c
++ IPPROTO_EGP = 0x8
++ IPPROTO_EON = 0x50
++ IPPROTO_ESP = 0x32
++ IPPROTO_FRAGMENT = 0x2c
++ IPPROTO_GGP = 0x3
++ IPPROTO_GIF = 0x8c
++ IPPROTO_GRE = 0x2f
++ IPPROTO_HOPOPTS = 0x0
++ IPPROTO_ICMP = 0x1
++ IPPROTO_ICMPV6 = 0x3a
++ IPPROTO_IDP = 0x16
++ IPPROTO_IGMP = 0x2
++ IPPROTO_IP = 0x0
++ IPPROTO_IPIP = 0x4
++ IPPROTO_IPV6 = 0x29
++ IPPROTO_LOCAL = 0x3f
++ IPPROTO_MAX = 0x100
++ IPPROTO_MH = 0x87
++ IPPROTO_NONE = 0x3b
++ IPPROTO_PUP = 0xc
++ IPPROTO_QOS = 0x2d
++ IPPROTO_RAW = 0xff
++ IPPROTO_ROUTING = 0x2b
++ IPPROTO_RSVP = 0x2e
++ IPPROTO_SCTP = 0x84
++ IPPROTO_TCP = 0x6
++ IPPROTO_TP = 0x1d
++ IPPROTO_UDP = 0x11
++ IPV6_ADDRFORM = 0x16
++ IPV6_ADDR_PREFERENCES = 0x4a
++ IPV6_ADD_MEMBERSHIP = 0xc
++ IPV6_AIXRAWSOCKET = 0x39
++ IPV6_CHECKSUM = 0x27
++ IPV6_DONTFRAG = 0x2d
++ IPV6_DROP_MEMBERSHIP = 0xd
++ IPV6_DSTOPTS = 0x36
++ IPV6_FLOWINFO_FLOWLABEL = 0xffffff
++ IPV6_FLOWINFO_PRIFLOW = 0xfffffff
++ IPV6_FLOWINFO_PRIORITY = 0xf000000
++ IPV6_FLOWINFO_SRFLAG = 0x10000000
++ IPV6_FLOWINFO_VERSION = 0xf0000000
++ IPV6_HOPLIMIT = 0x28
++ IPV6_HOPOPTS = 0x34
++ IPV6_JOIN_GROUP = 0xc
++ IPV6_LEAVE_GROUP = 0xd
++ IPV6_MIPDSTOPTS = 0x36
++ IPV6_MULTICAST_HOPS = 0xa
++ IPV6_MULTICAST_IF = 0x9
++ IPV6_MULTICAST_LOOP = 0xb
++ IPV6_NEXTHOP = 0x30
++ IPV6_NOPROBE = 0x1c
++ IPV6_PATHMTU = 0x2e
++ IPV6_PKTINFO = 0x21
++ IPV6_PKTOPTIONS = 0x24
++ IPV6_PRIORITY_10 = 0xa000000
++ IPV6_PRIORITY_11 = 0xb000000
++ IPV6_PRIORITY_12 = 0xc000000
++ IPV6_PRIORITY_13 = 0xd000000
++ IPV6_PRIORITY_14 = 0xe000000
++ IPV6_PRIORITY_15 = 0xf000000
++ IPV6_PRIORITY_8 = 0x8000000
++ IPV6_PRIORITY_9 = 0x9000000
++ IPV6_PRIORITY_BULK = 0x4000000
++ IPV6_PRIORITY_CONTROL = 0x7000000
++ IPV6_PRIORITY_FILLER = 0x1000000
++ IPV6_PRIORITY_INTERACTIVE = 0x6000000
++ IPV6_PRIORITY_RESERVED1 = 0x3000000
++ IPV6_PRIORITY_RESERVED2 = 0x5000000
++ IPV6_PRIORITY_UNATTENDED = 0x2000000
++ IPV6_PRIORITY_UNCHARACTERIZED = 0x0
++ IPV6_RECVDSTOPTS = 0x38
++ IPV6_RECVHOPLIMIT = 0x29
++ IPV6_RECVHOPOPTS = 0x35
++ IPV6_RECVHOPS = 0x22
++ IPV6_RECVIF = 0x1e
++ IPV6_RECVPATHMTU = 0x2f
++ IPV6_RECVPKTINFO = 0x23
++ IPV6_RECVRTHDR = 0x33
++ IPV6_RECVSRCRT = 0x1d
++ IPV6_RECVTCLASS = 0x2a
++ IPV6_RTHDR = 0x32
++ IPV6_RTHDRDSTOPTS = 0x37
++ IPV6_RTHDR_TYPE_0 = 0x0
++ IPV6_RTHDR_TYPE_2 = 0x2
++ IPV6_SENDIF = 0x1f
++ IPV6_SRFLAG_LOOSE = 0x0
++ IPV6_SRFLAG_STRICT = 0x10000000
++ IPV6_TCLASS = 0x2b
++ IPV6_TOKEN_LENGTH = 0x40
++ IPV6_UNICAST_HOPS = 0x4
++ IPV6_USE_MIN_MTU = 0x2c
++ IPV6_V6ONLY = 0x25
++ IPV6_VERSION = 0x60000000
++ IP_ADDRFORM = 0x16
++ IP_ADD_MEMBERSHIP = 0xc
++ IP_ADD_SOURCE_MEMBERSHIP = 0x3c
++ IP_BLOCK_SOURCE = 0x3a
++ IP_BROADCAST_IF = 0x10
++ IP_CACHE_LINE_SIZE = 0x80
++ IP_DEFAULT_MULTICAST_LOOP = 0x1
++ IP_DEFAULT_MULTICAST_TTL = 0x1
++ IP_DF = 0x4000
++ IP_DHCPMODE = 0x11
++ IP_DONTFRAG = 0x19
++ IP_DROP_MEMBERSHIP = 0xd
++ IP_DROP_SOURCE_MEMBERSHIP = 0x3d
++ IP_FINDPMTU = 0x1a
++ IP_HDRINCL = 0x2
++ IP_INC_MEMBERSHIPS = 0x14
++ IP_INIT_MEMBERSHIP = 0x14
++ IP_MAXPACKET = 0xffff
++ IP_MF = 0x2000
++ IP_MSS = 0x240
++ IP_MULTICAST_HOPS = 0xa
++ IP_MULTICAST_IF = 0x9
++ IP_MULTICAST_LOOP = 0xb
++ IP_MULTICAST_TTL = 0xa
++ IP_OPT = 0x1b
++ IP_OPTIONS = 0x1
++ IP_PMTUAGE = 0x1b
++ IP_RECVDSTADDR = 0x7
++ IP_RECVIF = 0x14
++ IP_RECVIFINFO = 0xf
++ IP_RECVINTERFACE = 0x20
++ IP_RECVMACHDR = 0xe
++ IP_RECVOPTS = 0x5
++ IP_RECVRETOPTS = 0x6
++ IP_RECVTTL = 0x22
++ IP_RETOPTS = 0x8
++ IP_SOURCE_FILTER = 0x48
++ IP_TOS = 0x3
++ IP_TTL = 0x4
++ IP_UNBLOCK_SOURCE = 0x3b
++ IP_UNICAST_HOPS = 0x4
++ ISIG = 0x1
++ ISTRIP = 0x20
++ IUCLC = 0x800
++ IXANY = 0x1000
++ IXOFF = 0x400
++ IXON = 0x200
++ I_FLUSH = 0x20005305
++ LNOFLSH = 0x8000
++ LOCK_EX = 0x2
++ LOCK_NB = 0x4
++ LOCK_SH = 0x1
++ LOCK_UN = 0x8
++ MADV_DONTNEED = 0x4
++ MADV_NORMAL = 0x0
++ MADV_RANDOM = 0x1
++ MADV_SEQUENTIAL = 0x2
++ MADV_SPACEAVAIL = 0x5
++ MADV_WILLNEED = 0x3
++ MAP_ANON = 0x10
++ MAP_ANONYMOUS = 0x10
++ MAP_FILE = 0x0
++ MAP_FIXED = 0x100
++ MAP_PRIVATE = 0x2
++ MAP_SHARED = 0x1
++ MAP_TYPE = 0xf0
++ MAP_VARIABLE = 0x0
++ MCAST_BLOCK_SOURCE = 0x40
++ MCAST_EXCLUDE = 0x2
++ MCAST_INCLUDE = 0x1
++ MCAST_JOIN_GROUP = 0x3e
++ MCAST_JOIN_SOURCE_GROUP = 0x42
++ MCAST_LEAVE_GROUP = 0x3f
++ MCAST_LEAVE_SOURCE_GROUP = 0x43
++ MCAST_SOURCE_FILTER = 0x49
++ MCAST_UNBLOCK_SOURCE = 0x41
++ MCL_CURRENT = 0x100
++ MCL_FUTURE = 0x200
++ MSG_ANY = 0x4
++ MSG_ARGEXT = 0x400
++ MSG_BAND = 0x2
++ MSG_COMPAT = 0x8000
++ MSG_CTRUNC = 0x20
++ MSG_DONTROUTE = 0x4
++ MSG_EOR = 0x8
++ MSG_HIPRI = 0x1
++ MSG_MAXIOVLEN = 0x10
++ MSG_MPEG2 = 0x80
++ MSG_NONBLOCK = 0x4000
++ MSG_NOSIGNAL = 0x100
++ MSG_OOB = 0x1
++ MSG_PEEK = 0x2
++ MSG_TRUNC = 0x10
++ MSG_WAITALL = 0x40
++ MSG_WAITFORONE = 0x200
++ MS_ASYNC = 0x10
++ MS_EINTR = 0x80
++ MS_INVALIDATE = 0x40
++ MS_PER_SEC = 0x3e8
++ MS_SYNC = 0x20
++ NFDBITS = 0x40
++ NL0 = 0x0
++ NL1 = 0x4000
++ NL2 = 0x8000
++ NL3 = 0xc000
++ NLDLY = 0x4000
++ NOFLSH = 0x80
++ NOFLUSH = 0x80000000
++ OCRNL = 0x8
++ OFDEL = 0x80
++ OFILL = 0x40
++ OLCUC = 0x2
++ ONLCR = 0x4
++ ONLRET = 0x20
++ ONOCR = 0x10
++ ONOEOT = 0x80000
++ OPOST = 0x1
++ OXTABS = 0x40000
++ O_ACCMODE = 0x23
++ O_APPEND = 0x8
++ O_CIO = 0x80
++ O_CIOR = 0x800000000
++ O_CLOEXEC = 0x800000
++ O_CREAT = 0x100
++ O_DEFER = 0x2000
++ O_DELAY = 0x4000
++ O_DIRECT = 0x8000000
++ O_DIRECTORY = 0x80000
++ O_DSYNC = 0x400000
++ O_EFSOFF = 0x400000000
++ O_EFSON = 0x200000000
++ O_EXCL = 0x400
++ O_EXEC = 0x20
++ O_LARGEFILE = 0x4000000
++ O_NDELAY = 0x8000
++ O_NOCACHE = 0x100000
++ O_NOCTTY = 0x800
++ O_NOFOLLOW = 0x1000000
++ O_NONBLOCK = 0x4
++ O_NONE = 0x3
++ O_NSHARE = 0x10000
++ O_RAW = 0x100000000
++ O_RDONLY = 0x0
++ O_RDWR = 0x2
++ O_RSHARE = 0x1000
++ O_RSYNC = 0x200000
++ O_SEARCH = 0x20
++ O_SNAPSHOT = 0x40
++ O_SYNC = 0x10
++ O_TRUNC = 0x200
++ O_TTY_INIT = 0x0
++ O_WRONLY = 0x1
++ PARENB = 0x100
++ PAREXT = 0x100000
++ PARMRK = 0x8
++ PARODD = 0x200
++ PENDIN = 0x20000000
++ PRIO_PGRP = 0x1
++ PRIO_PROCESS = 0x0
++ PRIO_USER = 0x2
++ PROT_EXEC = 0x4
++ PROT_NONE = 0x0
++ PROT_READ = 0x1
++ PROT_WRITE = 0x2
++ PR_64BIT = 0x20
++ PR_ADDR = 0x2
++ PR_ARGEXT = 0x400
++ PR_ATOMIC = 0x1
++ PR_CONNREQUIRED = 0x4
++ PR_FASTHZ = 0x5
++ PR_INP = 0x40
++ PR_INTRLEVEL = 0x8000
++ PR_MLS = 0x100
++ PR_MLS_1_LABEL = 0x200
++ PR_NOEOR = 0x4000
++ PR_RIGHTS = 0x10
++ PR_SLOWHZ = 0x2
++ PR_WANTRCVD = 0x8
++ RLIMIT_AS = 0x6
++ RLIMIT_CORE = 0x4
++ RLIMIT_CPU = 0x0
++ RLIMIT_DATA = 0x2
++ RLIMIT_FSIZE = 0x1
++ RLIMIT_NOFILE = 0x7
++ RLIMIT_NPROC = 0x9
++ RLIMIT_RSS = 0x5
++ RLIMIT_STACK = 0x3
++ RLIM_INFINITY = 0x7fffffffffffffff
++ RTAX_AUTHOR = 0x6
++ RTAX_BRD = 0x7
++ RTAX_DST = 0x0
++ RTAX_GATEWAY = 0x1
++ RTAX_GENMASK = 0x3
++ RTAX_IFA = 0x5
++ RTAX_IFP = 0x4
++ RTAX_MAX = 0x8
++ RTAX_NETMASK = 0x2
++ RTA_AUTHOR = 0x40
++ RTA_BRD = 0x80
++ RTA_DOWNSTREAM = 0x100
++ RTA_DST = 0x1
++ RTA_GATEWAY = 0x2
++ RTA_GENMASK = 0x8
++ RTA_IFA = 0x20
++ RTA_IFP = 0x10
++ RTA_NETMASK = 0x4
++ RTC_IA64 = 0x3
++ RTC_POWER = 0x1
++ RTC_POWER_PC = 0x2
++ RTF_ACTIVE_DGD = 0x1000000
++ RTF_BCE = 0x80000
++ RTF_BLACKHOLE = 0x1000
++ RTF_BROADCAST = 0x400000
++ RTF_BUL = 0x2000
++ RTF_CLONE = 0x10000
++ RTF_CLONED = 0x20000
++ RTF_CLONING = 0x100
++ RTF_DONE = 0x40
++ RTF_DYNAMIC = 0x10
++ RTF_FREE_IN_PROG = 0x4000000
++ RTF_GATEWAY = 0x2
++ RTF_HOST = 0x4
++ RTF_LLINFO = 0x400
++ RTF_LOCAL = 0x200000
++ RTF_MASK = 0x80
++ RTF_MODIFIED = 0x20
++ RTF_MULTICAST = 0x800000
++ RTF_PERMANENT6 = 0x8000000
++ RTF_PINNED = 0x100000
++ RTF_PROTO1 = 0x8000
++ RTF_PROTO2 = 0x4000
++ RTF_PROTO3 = 0x40000
++ RTF_REJECT = 0x8
++ RTF_SMALLMTU = 0x40000
++ RTF_STATIC = 0x800
++ RTF_STOPSRCH = 0x2000000
++ RTF_UNREACHABLE = 0x10000000
++ RTF_UP = 0x1
++ RTF_XRESOLVE = 0x200
++ RTM_ADD = 0x1
++ RTM_CHANGE = 0x3
++ RTM_DELADDR = 0xd
++ RTM_DELETE = 0x2
++ RTM_EXPIRE = 0xf
++ RTM_GET = 0x4
++ RTM_GETNEXT = 0x11
++ RTM_IFINFO = 0xe
++ RTM_LOCK = 0x8
++ RTM_LOSING = 0x5
++ RTM_MISS = 0x7
++ RTM_NEWADDR = 0xc
++ RTM_OLDADD = 0x9
++ RTM_OLDDEL = 0xa
++ RTM_REDIRECT = 0x6
++ RTM_RESOLVE = 0xb
++ RTM_RTLOST = 0x10
++ RTM_RTTUNIT = 0xf4240
++ RTM_SAMEADDR = 0x12
++ RTM_SET = 0x13
++ RTM_VERSION = 0x2
++ RTM_VERSION_GR = 0x4
++ RTM_VERSION_GR_COMPAT = 0x3
++ RTM_VERSION_POLICY = 0x5
++ RTM_VERSION_POLICY_EXT = 0x6
++ RTM_VERSION_POLICY_PRFN = 0x7
++ RTV_EXPIRE = 0x4
++ RTV_HOPCOUNT = 0x2
++ RTV_MTU = 0x1
++ RTV_RPIPE = 0x8
++ RTV_RTT = 0x40
++ RTV_RTTVAR = 0x80
++ RTV_SPIPE = 0x10
++ RTV_SSTHRESH = 0x20
++ RUSAGE_CHILDREN = -0x1
++ RUSAGE_SELF = 0x0
++ RUSAGE_THREAD = 0x1
++ SCM_RIGHTS = 0x1
++ SHUT_RD = 0x0
++ SHUT_RDWR = 0x2
++ SHUT_WR = 0x1
++ SIGMAX64 = 0xff
++ SIGQUEUE_MAX = 0x20
++ SIOCADDIFVIPA = 0x20006942
++ SIOCADDMTU = -0x7ffb9690
++ SIOCADDMULTI = -0x7fdf96cf
++ SIOCADDNETID = -0x7fd796a9
++ SIOCADDRT = -0x7fc78df6
++ SIOCAIFADDR = -0x7fbf96e6
++ SIOCATMARK = 0x40047307
++ SIOCDARP = -0x7fb396e0
++ SIOCDELIFVIPA = 0x20006943
++ SIOCDELMTU = -0x7ffb968f
++ SIOCDELMULTI = -0x7fdf96ce
++ SIOCDELPMTU = -0x7fd78ff6
++ SIOCDELRT = -0x7fc78df5
++ SIOCDIFADDR = -0x7fd796e7
++ SIOCDNETOPT = -0x3ffe9680
++ SIOCDX25XLATE = -0x7fd7969b
++ SIOCFIFADDR = -0x7fdf966d
++ SIOCGARP = -0x3fb396da
++ SIOCGETMTUS = 0x2000696f
++ SIOCGETSGCNT = -0x3feb8acc
++ SIOCGETVIFCNT = -0x3feb8acd
++ SIOCGHIWAT = 0x40047301
++ SIOCGIFADDR = -0x3fd796df
++ SIOCGIFADDRS = 0x2000698c
++ SIOCGIFBAUDRATE = -0x3fdf9669
++ SIOCGIFBRDADDR = -0x3fd796dd
++ SIOCGIFCONF = -0x3fef96bb
++ SIOCGIFCONFGLOB = -0x3fef9670
++ SIOCGIFDSTADDR = -0x3fd796de
++ SIOCGIFFLAGS = -0x3fd796ef
++ SIOCGIFGIDLIST = 0x20006968
++ SIOCGIFHWADDR = -0x3fab966b
++ SIOCGIFMETRIC = -0x3fd796e9
++ SIOCGIFMTU = -0x3fd796aa
++ SIOCGIFNETMASK = -0x3fd796db
++ SIOCGIFOPTIONS = -0x3fd796d6
++ SIOCGISNO = -0x3fd79695
++ SIOCGLOADF = -0x3ffb967e
++ SIOCGLOWAT = 0x40047303
++ SIOCGNETOPT = -0x3ffe96a5
++ SIOCGNETOPT1 = -0x3fdf967f
++ SIOCGNMTUS = 0x2000696e
++ SIOCGPGRP = 0x40047309
++ SIOCGSIZIFCONF = 0x4004696a
++ SIOCGSRCFILTER = -0x3fe796cb
++ SIOCGTUNEPHASE = -0x3ffb9676
++ SIOCGX25XLATE = -0x3fd7969c
++ SIOCIFATTACH = -0x7fdf9699
++ SIOCIFDETACH = -0x7fdf969a
++ SIOCIFGETPKEY = -0x7fdf969b
++ SIOCIF_ATM_DARP = -0x7fdf9683
++ SIOCIF_ATM_DUMPARP = -0x7fdf9685
++ SIOCIF_ATM_GARP = -0x7fdf9682
++ SIOCIF_ATM_IDLE = -0x7fdf9686
++ SIOCIF_ATM_SARP = -0x7fdf9681
++ SIOCIF_ATM_SNMPARP = -0x7fdf9687
++ SIOCIF_ATM_SVC = -0x7fdf9684
++ SIOCIF_ATM_UBR = -0x7fdf9688
++ SIOCIF_DEVHEALTH = -0x7ffb966c
++ SIOCIF_IB_ARP_INCOMP = -0x7fdf9677
++ SIOCIF_IB_ARP_TIMER = -0x7fdf9678
++ SIOCIF_IB_CLEAR_PINFO = -0x3fdf966f
++ SIOCIF_IB_DEL_ARP = -0x7fdf967f
++ SIOCIF_IB_DEL_PINFO = -0x3fdf9670
++ SIOCIF_IB_DUMP_ARP = -0x7fdf9680
++ SIOCIF_IB_GET_ARP = -0x7fdf967e
++ SIOCIF_IB_GET_INFO = -0x3f879675
++ SIOCIF_IB_GET_STATS = -0x3f879672
++ SIOCIF_IB_NOTIFY_ADDR_REM = -0x3f87966a
++ SIOCIF_IB_RESET_STATS = -0x3f879671
++ SIOCIF_IB_RESIZE_CQ = -0x7fdf9679
++ SIOCIF_IB_SET_ARP = -0x7fdf967d
++ SIOCIF_IB_SET_PKEY = -0x7fdf967c
++ SIOCIF_IB_SET_PORT = -0x7fdf967b
++ SIOCIF_IB_SET_QKEY = -0x7fdf9676
++ SIOCIF_IB_SET_QSIZE = -0x7fdf967a
++ SIOCLISTIFVIPA = 0x20006944
++ SIOCSARP = -0x7fb396e2
++ SIOCSHIWAT = 0xffffffff80047300
++ SIOCSIFADDR = -0x7fd796f4
++ SIOCSIFADDRORI = -0x7fdb9673
++ SIOCSIFBRDADDR = -0x7fd796ed
++ SIOCSIFDSTADDR = -0x7fd796f2
++ SIOCSIFFLAGS = -0x7fd796f0
++ SIOCSIFGIDLIST = 0x20006969
++ SIOCSIFMETRIC = -0x7fd796e8
++ SIOCSIFMTU = -0x7fd796a8
++ SIOCSIFNETDUMP = -0x7fd796e4
++ SIOCSIFNETMASK = -0x7fd796ea
++ SIOCSIFOPTIONS = -0x7fd796d7
++ SIOCSIFSUBCHAN = -0x7fd796e5
++ SIOCSISNO = -0x7fd79694
++ SIOCSLOADF = -0x3ffb967d
++ SIOCSLOWAT = 0xffffffff80047302
++ SIOCSNETOPT = -0x7ffe96a6
++ SIOCSPGRP = 0xffffffff80047308
++ SIOCSX25XLATE = -0x7fd7969d
++ SOCK_CONN_DGRAM = 0x6
++ SOCK_DGRAM = 0x2
++ SOCK_RAW = 0x3
++ SOCK_RDM = 0x4
++ SOCK_SEQPACKET = 0x5
++ SOCK_STREAM = 0x1
++ SOL_SOCKET = 0xffff
++ SOMAXCONN = 0x400
++ SO_ACCEPTCONN = 0x2
++ SO_AUDIT = 0x8000
++ SO_BROADCAST = 0x20
++ SO_CKSUMRECV = 0x800
++ SO_DEBUG = 0x1
++ SO_DONTROUTE = 0x10
++ SO_ERROR = 0x1007
++ SO_KEEPALIVE = 0x8
++ SO_KERNACCEPT = 0x2000
++ SO_LINGER = 0x80
++ SO_NOMULTIPATH = 0x4000
++ SO_NOREUSEADDR = 0x1000
++ SO_OOBINLINE = 0x100
++ SO_PEERID = 0x1009
++ SO_RCVBUF = 0x1002
++ SO_RCVLOWAT = 0x1004
++ SO_RCVTIMEO = 0x1006
++ SO_REUSEADDR = 0x4
++ SO_REUSEPORT = 0x200
++ SO_SNDBUF = 0x1001
++ SO_SNDLOWAT = 0x1003
++ SO_SNDTIMEO = 0x1005
++ SO_TIMESTAMPNS = 0x100a
++ SO_TYPE = 0x1008
++ SO_USELOOPBACK = 0x40
++ SO_USE_IFBUFS = 0x400
++ S_BANDURG = 0x400
++ S_EMODFMT = 0x3c000000
++ S_ENFMT = 0x400
++ S_ERROR = 0x100
++ S_HANGUP = 0x200
++ S_HIPRI = 0x2
++ S_ICRYPTO = 0x80000
++ S_IEXEC = 0x40
++ S_IFBLK = 0x6000
++ S_IFCHR = 0x2000
++ S_IFDIR = 0x4000
++ S_IFIFO = 0x1000
++ S_IFJOURNAL = 0x10000
++ S_IFLNK = 0xa000
++ S_IFMPX = 0x2200
++ S_IFMT = 0xf000
++ S_IFPDIR = 0x4000000
++ S_IFPSDIR = 0x8000000
++ S_IFPSSDIR = 0xc000000
++ S_IFREG = 0x8000
++ S_IFSOCK = 0xc000
++ S_IFSYSEA = 0x30000000
++ S_INPUT = 0x1
++ S_IREAD = 0x100
++ S_IRGRP = 0x20
++ S_IROTH = 0x4
++ S_IRUSR = 0x100
++ S_IRWXG = 0x38
++ S_IRWXO = 0x7
++ S_IRWXU = 0x1c0
++ S_ISGID = 0x400
++ S_ISUID = 0x800
++ S_ISVTX = 0x200
++ S_ITCB = 0x1000000
++ S_ITP = 0x800000
++ S_IWGRP = 0x10
++ S_IWOTH = 0x2
++ S_IWRITE = 0x80
++ S_IWUSR = 0x80
++ S_IXACL = 0x2000000
++ S_IXATTR = 0x40000
++ S_IXGRP = 0x8
++ S_IXINTERFACE = 0x100000
++ S_IXMOD = 0x40000000
++ S_IXOTH = 0x1
++ S_IXUSR = 0x40
++ S_MSG = 0x8
++ S_OUTPUT = 0x4
++ S_RDBAND = 0x20
++ S_RDNORM = 0x10
++ S_RESERVED1 = 0x20000
++ S_RESERVED2 = 0x200000
++ S_RESERVED3 = 0x400000
++ S_RESERVED4 = 0x80000000
++ S_RESFMT1 = 0x10000000
++ S_RESFMT10 = 0x34000000
++ S_RESFMT11 = 0x38000000
++ S_RESFMT12 = 0x3c000000
++ S_RESFMT2 = 0x14000000
++ S_RESFMT3 = 0x18000000
++ S_RESFMT4 = 0x1c000000
++ S_RESFMT5 = 0x20000000
++ S_RESFMT6 = 0x24000000
++ S_RESFMT7 = 0x28000000
++ S_RESFMT8 = 0x2c000000
++ S_WRBAND = 0x80
++ S_WRNORM = 0x40
++ TAB0 = 0x0
++ TAB1 = 0x400
++ TAB2 = 0x800
++ TAB3 = 0xc00
++ TABDLY = 0xc00
++ TCFLSH = 0x540c
++ TCGETA = 0x5405
++ TCGETS = 0x5401
++ TCIFLUSH = 0x0
++ TCIOFF = 0x2
++ TCIOFLUSH = 0x2
++ TCION = 0x3
++ TCOFLUSH = 0x1
++ TCOOFF = 0x0
++ TCOON = 0x1
++ TCP_24DAYS_WORTH_OF_SLOWTICKS = 0x3f4800
++ TCP_ACLADD = 0x23
++ TCP_ACLBIND = 0x26
++ TCP_ACLCLEAR = 0x22
++ TCP_ACLDEL = 0x24
++ TCP_ACLDENY = 0x8
++ TCP_ACLFLUSH = 0x21
++ TCP_ACLGID = 0x1
++ TCP_ACLLS = 0x25
++ TCP_ACLSUBNET = 0x4
++ TCP_ACLUID = 0x2
++ TCP_CWND_DF = 0x16
++ TCP_CWND_IF = 0x15
++ TCP_DELAY_ACK_FIN = 0x2
++ TCP_DELAY_ACK_SYN = 0x1
++ TCP_FASTNAME = 0x101080a
++ TCP_KEEPCNT = 0x13
++ TCP_KEEPIDLE = 0x11
++ TCP_KEEPINTVL = 0x12
++ TCP_LSPRIV = 0x29
++ TCP_LUID = 0x20
++ TCP_MAXBURST = 0x8
++ TCP_MAXDF = 0x64
++ TCP_MAXIF = 0x64
++ TCP_MAXSEG = 0x2
++ TCP_MAXWIN = 0xffff
++ TCP_MAXWINDOWSCALE = 0xe
++ TCP_MAX_SACK = 0x4
++ TCP_MSS = 0x5b4
++ TCP_NODELAY = 0x1
++ TCP_NODELAYACK = 0x14
++ TCP_NOREDUCE_CWND_EXIT_FRXMT = 0x19
++ TCP_NOREDUCE_CWND_IN_FRXMT = 0x18
++ TCP_NOTENTER_SSTART = 0x17
++ TCP_OPT = 0x19
++ TCP_RFC1323 = 0x4
++ TCP_SETPRIV = 0x27
++ TCP_STDURG = 0x10
++ TCP_TIMESTAMP_OPTLEN = 0xc
++ TCP_UNSETPRIV = 0x28
++ TCSAFLUSH = 0x2
++ TCSBRK = 0x5409
++ TCSETA = 0x5406
++ TCSETAF = 0x5408
++ TCSETAW = 0x5407
++ TCSETS = 0x5402
++ TCSETSF = 0x5404
++ TCSETSW = 0x5403
++ TCXONC = 0x540b
++ TIMER_ABSTIME = 0x3e7
++ TIMER_MAX = 0x20
++ TIOC = 0x5400
++ TIOCCBRK = 0x2000747a
++ TIOCCDTR = 0x20007478
++ TIOCCONS = 0xffffffff80047462
++ TIOCEXCL = 0x2000740d
++ TIOCFLUSH = 0xffffffff80047410
++ TIOCGETC = 0x40067412
++ TIOCGETD = 0x40047400
++ TIOCGETP = 0x40067408
++ TIOCGLTC = 0x40067474
++ TIOCGPGRP = 0x40047477
++ TIOCGSID = 0x40047448
++ TIOCGSIZE = 0x40087468
++ TIOCGWINSZ = 0x40087468
++ TIOCHPCL = 0x20007402
++ TIOCLBIC = 0xffffffff8004747e
++ TIOCLBIS = 0xffffffff8004747f
++ TIOCLGET = 0x4004747c
++ TIOCLSET = 0xffffffff8004747d
++ TIOCMBIC = 0xffffffff8004746b
++ TIOCMBIS = 0xffffffff8004746c
++ TIOCMGET = 0x4004746a
++ TIOCMIWAIT = 0xffffffff80047464
++ TIOCMODG = 0x40047403
++ TIOCMODS = 0xffffffff80047404
++ TIOCMSET = 0xffffffff8004746d
++ TIOCM_CAR = 0x40
++ TIOCM_CD = 0x40
++ TIOCM_CTS = 0x20
++ TIOCM_DSR = 0x100
++ TIOCM_DTR = 0x2
++ TIOCM_LE = 0x1
++ TIOCM_RI = 0x80
++ TIOCM_RNG = 0x80
++ TIOCM_RTS = 0x4
++ TIOCM_SR = 0x10
++ TIOCM_ST = 0x8
++ TIOCNOTTY = 0x20007471
++ TIOCNXCL = 0x2000740e
++ TIOCOUTQ = 0x40047473
++ TIOCPKT = 0xffffffff80047470
++ TIOCPKT_DATA = 0x0
++ TIOCPKT_DOSTOP = 0x20
++ TIOCPKT_FLUSHREAD = 0x1
++ TIOCPKT_FLUSHWRITE = 0x2
++ TIOCPKT_NOSTOP = 0x10
++ TIOCPKT_START = 0x8
++ TIOCPKT_STOP = 0x4
++ TIOCREMOTE = 0xffffffff80047469
++ TIOCSBRK = 0x2000747b
++ TIOCSDTR = 0x20007479
++ TIOCSETC = 0xffffffff80067411
++ TIOCSETD = 0xffffffff80047401
++ TIOCSETN = 0xffffffff8006740a
++ TIOCSETP = 0xffffffff80067409
++ TIOCSLTC = 0xffffffff80067475
++ TIOCSPGRP = 0xffffffff80047476
++ TIOCSSIZE = 0xffffffff80087467
++ TIOCSTART = 0x2000746e
++ TIOCSTI = 0xffffffff80017472
++ TIOCSTOP = 0x2000746f
++ TIOCSWINSZ = 0xffffffff80087467
++ TIOCUCNTL = 0xffffffff80047466
++ TOSTOP = 0x10000
++ UTIME_NOW = -0x2
++ UTIME_OMIT = -0x3
++ VDISCRD = 0xc
++ VDSUSP = 0xa
++ VEOF = 0x4
++ VEOL = 0x5
++ VEOL2 = 0x6
++ VERASE = 0x2
++ VINTR = 0x0
++ VKILL = 0x3
++ VLNEXT = 0xe
++ VMIN = 0x4
++ VQUIT = 0x1
++ VREPRINT = 0xb
++ VSTART = 0x7
++ VSTOP = 0x8
++ VSTRT = 0x7
++ VSUSP = 0x9
++ VT0 = 0x0
++ VT1 = 0x8000
++ VTDELAY = 0x2000
++ VTDLY = 0x8000
++ VTIME = 0x5
++ VWERSE = 0xd
++ WPARSTART = 0x1
++ WPARSTOP = 0x2
++ WPARTTYNAME = "Global"
++ XCASE = 0x4
++ XTABS = 0xc00
++ _FDATAFLUSH = 0x2000000000
++)
++
++// Errors
++const (
++ E2BIG = syscall.Errno(0x7)
++ EACCES = syscall.Errno(0xd)
++ EADDRINUSE = syscall.Errno(0x43)
++ EADDRNOTAVAIL = syscall.Errno(0x44)
++ EAFNOSUPPORT = syscall.Errno(0x42)
++ EAGAIN = syscall.Errno(0xb)
++ EALREADY = syscall.Errno(0x38)
++ EBADF = syscall.Errno(0x9)
++ EBADMSG = syscall.Errno(0x78)
++ EBUSY = syscall.Errno(0x10)
++ ECANCELED = syscall.Errno(0x75)
++ ECHILD = syscall.Errno(0xa)
++ ECHRNG = syscall.Errno(0x25)
++ ECLONEME = syscall.Errno(0x52)
++ ECONNABORTED = syscall.Errno(0x48)
++ ECONNREFUSED = syscall.Errno(0x4f)
++ ECONNRESET = syscall.Errno(0x49)
++ ECORRUPT = syscall.Errno(0x59)
++ EDEADLK = syscall.Errno(0x2d)
++ EDESTADDREQ = syscall.Errno(0x3a)
++ EDESTADDRREQ = syscall.Errno(0x3a)
++ EDIST = syscall.Errno(0x35)
++ EDOM = syscall.Errno(0x21)
++ EDQUOT = syscall.Errno(0x58)
++ EEXIST = syscall.Errno(0x11)
++ EFAULT = syscall.Errno(0xe)
++ EFBIG = syscall.Errno(0x1b)
++ EFORMAT = syscall.Errno(0x30)
++ EHOSTDOWN = syscall.Errno(0x50)
++ EHOSTUNREACH = syscall.Errno(0x51)
++ EIDRM = syscall.Errno(0x24)
++ EILSEQ = syscall.Errno(0x74)
++ EINPROGRESS = syscall.Errno(0x37)
++ EINTR = syscall.Errno(0x4)
++ EINVAL = syscall.Errno(0x16)
++ EIO = syscall.Errno(0x5)
++ EISCONN = syscall.Errno(0x4b)
++ EISDIR = syscall.Errno(0x15)
++ EL2HLT = syscall.Errno(0x2c)
++ EL2NSYNC = syscall.Errno(0x26)
++ EL3HLT = syscall.Errno(0x27)
++ EL3RST = syscall.Errno(0x28)
++ ELNRNG = syscall.Errno(0x29)
++ ELOOP = syscall.Errno(0x55)
++ EMEDIA = syscall.Errno(0x6e)
++ EMFILE = syscall.Errno(0x18)
++ EMLINK = syscall.Errno(0x1f)
++ EMSGSIZE = syscall.Errno(0x3b)
++ EMULTIHOP = syscall.Errno(0x7d)
++ ENAMETOOLONG = syscall.Errno(0x56)
++ ENETDOWN = syscall.Errno(0x45)
++ ENETRESET = syscall.Errno(0x47)
++ ENETUNREACH = syscall.Errno(0x46)
++ ENFILE = syscall.Errno(0x17)
++ ENOATTR = syscall.Errno(0x70)
++ ENOBUFS = syscall.Errno(0x4a)
++ ENOCONNECT = syscall.Errno(0x32)
++ ENOCSI = syscall.Errno(0x2b)
++ ENODATA = syscall.Errno(0x7a)
++ ENODEV = syscall.Errno(0x13)
++ ENOENT = syscall.Errno(0x2)
++ ENOEXEC = syscall.Errno(0x8)
++ ENOLCK = syscall.Errno(0x31)
++ ENOLINK = syscall.Errno(0x7e)
++ ENOMEM = syscall.Errno(0xc)
++ ENOMSG = syscall.Errno(0x23)
++ ENOPROTOOPT = syscall.Errno(0x3d)
++ ENOSPC = syscall.Errno(0x1c)
++ ENOSR = syscall.Errno(0x76)
++ ENOSTR = syscall.Errno(0x7b)
++ ENOSYS = syscall.Errno(0x6d)
++ ENOTBLK = syscall.Errno(0xf)
++ ENOTCONN = syscall.Errno(0x4c)
++ ENOTDIR = syscall.Errno(0x14)
++ ENOTEMPTY = syscall.Errno(0x11)
++ ENOTREADY = syscall.Errno(0x2e)
++ ENOTRECOVERABLE = syscall.Errno(0x5e)
++ ENOTRUST = syscall.Errno(0x72)
++ ENOTSOCK = syscall.Errno(0x39)
++ ENOTSUP = syscall.Errno(0x7c)
++ ENOTTY = syscall.Errno(0x19)
++ ENXIO = syscall.Errno(0x6)
++ EOPNOTSUPP = syscall.Errno(0x40)
++ EOVERFLOW = syscall.Errno(0x7f)
++ EOWNERDEAD = syscall.Errno(0x5f)
++ EPERM = syscall.Errno(0x1)
++ EPFNOSUPPORT = syscall.Errno(0x41)
++ EPIPE = syscall.Errno(0x20)
++ EPROCLIM = syscall.Errno(0x53)
++ EPROTO = syscall.Errno(0x79)
++ EPROTONOSUPPORT = syscall.Errno(0x3e)
++ EPROTOTYPE = syscall.Errno(0x3c)
++ ERANGE = syscall.Errno(0x22)
++ EREMOTE = syscall.Errno(0x5d)
++ ERESTART = syscall.Errno(0x52)
++ EROFS = syscall.Errno(0x1e)
++ ESAD = syscall.Errno(0x71)
++ ESHUTDOWN = syscall.Errno(0x4d)
++ ESOCKTNOSUPPORT = syscall.Errno(0x3f)
++ ESOFT = syscall.Errno(0x6f)
++ ESPIPE = syscall.Errno(0x1d)
++ ESRCH = syscall.Errno(0x3)
++ ESTALE = syscall.Errno(0x34)
++ ESYSERROR = syscall.Errno(0x5a)
++ ETIME = syscall.Errno(0x77)
++ ETIMEDOUT = syscall.Errno(0x4e)
++ ETOOMANYREFS = syscall.Errno(0x73)
++ ETXTBSY = syscall.Errno(0x1a)
++ EUNATCH = syscall.Errno(0x2a)
++ EUSERS = syscall.Errno(0x54)
++ EWOULDBLOCK = syscall.Errno(0xb)
++ EWRPROTECT = syscall.Errno(0x2f)
++ EXDEV = syscall.Errno(0x12)
++)
++
++// Signals
++const (
++ SIGABRT = syscall.Signal(0x6)
++ SIGAIO = syscall.Signal(0x17)
++ SIGALRM = syscall.Signal(0xe)
++ SIGALRM1 = syscall.Signal(0x26)
++ SIGBUS = syscall.Signal(0xa)
++ SIGCAPI = syscall.Signal(0x31)
++ SIGCHLD = syscall.Signal(0x14)
++ SIGCLD = syscall.Signal(0x14)
++ SIGCONT = syscall.Signal(0x13)
++ SIGCPUFAIL = syscall.Signal(0x3b)
++ SIGDANGER = syscall.Signal(0x21)
++ SIGEMT = syscall.Signal(0x7)
++ SIGFPE = syscall.Signal(0x8)
++ SIGGRANT = syscall.Signal(0x3c)
++ SIGHUP = syscall.Signal(0x1)
++ SIGILL = syscall.Signal(0x4)
++ SIGINT = syscall.Signal(0x2)
++ SIGIO = syscall.Signal(0x17)
++ SIGIOINT = syscall.Signal(0x10)
++ SIGIOT = syscall.Signal(0x6)
++ SIGKAP = syscall.Signal(0x3c)
++ SIGKILL = syscall.Signal(0x9)
++ SIGLOST = syscall.Signal(0x6)
++ SIGMAX = syscall.Signal(0xff)
++ SIGMAX32 = syscall.Signal(0x3f)
++ SIGMIGRATE = syscall.Signal(0x23)
++ SIGMSG = syscall.Signal(0x1b)
++ SIGPIPE = syscall.Signal(0xd)
++ SIGPOLL = syscall.Signal(0x17)
++ SIGPRE = syscall.Signal(0x24)
++ SIGPROF = syscall.Signal(0x20)
++ SIGPTY = syscall.Signal(0x17)
++ SIGPWR = syscall.Signal(0x1d)
++ SIGQUIT = syscall.Signal(0x3)
++ SIGRECONFIG = syscall.Signal(0x3a)
++ SIGRETRACT = syscall.Signal(0x3d)
++ SIGSAK = syscall.Signal(0x3f)
++ SIGSEGV = syscall.Signal(0xb)
++ SIGSOUND = syscall.Signal(0x3e)
++ SIGSTOP = syscall.Signal(0x11)
++ SIGSYS = syscall.Signal(0xc)
++ SIGSYSERROR = syscall.Signal(0x30)
++ SIGTALRM = syscall.Signal(0x26)
++ SIGTERM = syscall.Signal(0xf)
++ SIGTRAP = syscall.Signal(0x5)
++ SIGTSTP = syscall.Signal(0x12)
++ SIGTTIN = syscall.Signal(0x15)
++ SIGTTOU = syscall.Signal(0x16)
++ SIGURG = syscall.Signal(0x10)
++ SIGUSR1 = syscall.Signal(0x1e)
++ SIGUSR2 = syscall.Signal(0x1f)
++ SIGVIRT = syscall.Signal(0x25)
++ SIGVTALRM = syscall.Signal(0x22)
++ SIGWAITING = syscall.Signal(0x27)
++ SIGWINCH = syscall.Signal(0x1c)
++ SIGXCPU = syscall.Signal(0x18)
++ SIGXFSZ = syscall.Signal(0x19)
++)
++
++// Error table
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "not owner"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "I/O error"},
++ {6, "ENXIO", "no such device or address"},
++ {7, "E2BIG", "arg list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file number"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EWOULDBLOCK", "resource temporarily unavailable"},
++ {12, "ENOMEM", "not enough space"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device busy"},
++ {17, "ENOTEMPTY", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "no such device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "file table overflow"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "not a typewriter"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "argument out of domain"},
++ {34, "ERANGE", "result too large"},
++ {35, "ENOMSG", "no message of desired type"},
++ {36, "EIDRM", "identifier removed"},
++ {37, "ECHRNG", "channel number out of range"},
++ {38, "EL2NSYNC", "level 2 not synchronized"},
++ {39, "EL3HLT", "level 3 halted"},
++ {40, "EL3RST", "level 3 reset"},
++ {41, "ELNRNG", "link number out of range"},
++ {42, "EUNATCH", "protocol driver not attached"},
++ {43, "ENOCSI", "no CSI structure available"},
++ {44, "EL2HLT", "level 2 halted"},
++ {45, "EDEADLK", "deadlock condition if locked"},
++ {46, "ENOTREADY", "device not ready"},
++ {47, "EWRPROTECT", "write-protected media"},
++ {48, "EFORMAT", "unformatted or incompatible media"},
++ {49, "ENOLCK", "no locks available"},
++ {50, "ENOCONNECT", "cannot Establish Connection"},
++ {52, "ESTALE", "missing file or filesystem"},
++ {53, "EDIST", "requests blocked by Administrator"},
++ {55, "EINPROGRESS", "operation now in progress"},
++ {56, "EALREADY", "operation already in progress"},
++ {57, "ENOTSOCK", "socket operation on non-socket"},
++ {58, "EDESTADDREQ", "destination address required"},
++ {59, "EMSGSIZE", "message too long"},
++ {60, "EPROTOTYPE", "protocol wrong type for socket"},
++ {61, "ENOPROTOOPT", "protocol not available"},
++ {62, "EPROTONOSUPPORT", "protocol not supported"},
++ {63, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {64, "EOPNOTSUPP", "operation not supported on socket"},
++ {65, "EPFNOSUPPORT", "protocol family not supported"},
++ {66, "EAFNOSUPPORT", "addr family not supported by protocol"},
++ {67, "EADDRINUSE", "address already in use"},
++ {68, "EADDRNOTAVAIL", "can't assign requested address"},
++ {69, "ENETDOWN", "network is down"},
++ {70, "ENETUNREACH", "network is unreachable"},
++ {71, "ENETRESET", "network dropped connection on reset"},
++ {72, "ECONNABORTED", "software caused connection abort"},
++ {73, "ECONNRESET", "connection reset by peer"},
++ {74, "ENOBUFS", "no buffer space available"},
++ {75, "EISCONN", "socket is already connected"},
++ {76, "ENOTCONN", "socket is not connected"},
++ {77, "ESHUTDOWN", "can't send after socket shutdown"},
++ {78, "ETIMEDOUT", "connection timed out"},
++ {79, "ECONNREFUSED", "connection refused"},
++ {80, "EHOSTDOWN", "host is down"},
++ {81, "EHOSTUNREACH", "no route to host"},
++ {82, "ERESTART", "restart the system call"},
++ {83, "EPROCLIM", "too many processes"},
++ {84, "EUSERS", "too many users"},
++ {85, "ELOOP", "too many levels of symbolic links"},
++ {86, "ENAMETOOLONG", "file name too long"},
++ {88, "EDQUOT", "disk quota exceeded"},
++ {89, "ECORRUPT", "invalid file system control data detected"},
++ {90, "ESYSERROR", "for future use "},
++ {93, "EREMOTE", "item is not local to host"},
++ {94, "ENOTRECOVERABLE", "state not recoverable "},
++ {95, "EOWNERDEAD", "previous owner died "},
++ {109, "ENOSYS", "function not implemented"},
++ {110, "EMEDIA", "media surface error"},
++ {111, "ESOFT", "I/O completed, but needs relocation"},
++ {112, "ENOATTR", "no attribute found"},
++ {113, "ESAD", "security Authentication Denied"},
++ {114, "ENOTRUST", "not a Trusted Program"},
++ {115, "ETOOMANYREFS", "too many references: can't splice"},
++ {116, "EILSEQ", "invalid wide character"},
++ {117, "ECANCELED", "asynchronous I/O cancelled"},
++ {118, "ENOSR", "out of STREAMS resources"},
++ {119, "ETIME", "system call timed out"},
++ {120, "EBADMSG", "next message has wrong type"},
++ {121, "EPROTO", "error in protocol"},
++ {122, "ENODATA", "no message on stream head read q"},
++ {123, "ENOSTR", "fd not associated with a stream"},
++ {124, "ENOTSUP", "unsupported attribute value"},
++ {125, "EMULTIHOP", "multihop is not allowed"},
++ {126, "ENOLINK", "the server link has been severed"},
++ {127, "EOVERFLOW", "value too large to be stored in data type"},
++}
++
++// Signal table
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGIOT", "IOT/Abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "stopped (signal)"},
++ {18, "SIGTSTP", "stopped"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible/complete"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {27, "SIGMSG", "input device data"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGPWR", "power-failure"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
++ {32, "SIGPROF", "profiling timer expired"},
++ {33, "SIGDANGER", "paging space low"},
++ {34, "SIGVTALRM", "virtual timer expired"},
++ {35, "SIGMIGRATE", "signal 35"},
++ {36, "SIGPRE", "signal 36"},
++ {37, "SIGVIRT", "signal 37"},
++ {38, "SIGTALRM", "signal 38"},
++ {39, "SIGWAITING", "signal 39"},
++ {48, "SIGSYSERROR", "signal 48"},
++ {49, "SIGCAPI", "signal 49"},
++ {58, "SIGRECONFIG", "signal 58"},
++ {59, "SIGCPUFAIL", "CPU Failure Predicted"},
++ {60, "SIGGRANT", "monitor mode granted"},
++ {61, "SIGRETRACT", "monitor mode retracted"},
++ {62, "SIGSOUND", "sound completed"},
++ {63, "SIGMAX32", "secure attention"},
++ {255, "SIGMAX", "signal 255"},
++}
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go
+index 1c68758b..6217cdba 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go
+@@ -3,7 +3,7 @@
+
+ // +build 386,darwin
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m32 _const.go
+
+ package unix
+@@ -49,6 +49,86 @@ const (
+ AF_UNSPEC = 0x0
+ AF_UTUN = 0x26
+ ALTWERASE = 0x200
++ ATTR_BIT_MAP_COUNT = 0x5
++ ATTR_CMN_ACCESSMASK = 0x20000
++ ATTR_CMN_ACCTIME = 0x1000
++ ATTR_CMN_ADDEDTIME = 0x10000000
++ ATTR_CMN_BKUPTIME = 0x2000
++ ATTR_CMN_CHGTIME = 0x800
++ ATTR_CMN_CRTIME = 0x200
++ ATTR_CMN_DATA_PROTECT_FLAGS = 0x40000000
++ ATTR_CMN_DEVID = 0x2
++ ATTR_CMN_DOCUMENT_ID = 0x100000
++ ATTR_CMN_ERROR = 0x20000000
++ ATTR_CMN_EXTENDED_SECURITY = 0x400000
++ ATTR_CMN_FILEID = 0x2000000
++ ATTR_CMN_FLAGS = 0x40000
++ ATTR_CMN_FNDRINFO = 0x4000
++ ATTR_CMN_FSID = 0x4
++ ATTR_CMN_FULLPATH = 0x8000000
++ ATTR_CMN_GEN_COUNT = 0x80000
++ ATTR_CMN_GRPID = 0x10000
++ ATTR_CMN_GRPUUID = 0x1000000
++ ATTR_CMN_MODTIME = 0x400
++ ATTR_CMN_NAME = 0x1
++ ATTR_CMN_NAMEDATTRCOUNT = 0x80000
++ ATTR_CMN_NAMEDATTRLIST = 0x100000
++ ATTR_CMN_OBJID = 0x20
++ ATTR_CMN_OBJPERMANENTID = 0x40
++ ATTR_CMN_OBJTAG = 0x10
++ ATTR_CMN_OBJTYPE = 0x8
++ ATTR_CMN_OWNERID = 0x8000
++ ATTR_CMN_PARENTID = 0x4000000
++ ATTR_CMN_PAROBJID = 0x80
++ ATTR_CMN_RETURNED_ATTRS = 0x80000000
++ ATTR_CMN_SCRIPT = 0x100
++ ATTR_CMN_SETMASK = 0x41c7ff00
++ ATTR_CMN_USERACCESS = 0x200000
++ ATTR_CMN_UUID = 0x800000
++ ATTR_CMN_VALIDMASK = 0xffffffff
++ ATTR_CMN_VOLSETMASK = 0x6700
++ ATTR_FILE_ALLOCSIZE = 0x4
++ ATTR_FILE_CLUMPSIZE = 0x10
++ ATTR_FILE_DATAALLOCSIZE = 0x400
++ ATTR_FILE_DATAEXTENTS = 0x800
++ ATTR_FILE_DATALENGTH = 0x200
++ ATTR_FILE_DEVTYPE = 0x20
++ ATTR_FILE_FILETYPE = 0x40
++ ATTR_FILE_FORKCOUNT = 0x80
++ ATTR_FILE_FORKLIST = 0x100
++ ATTR_FILE_IOBLOCKSIZE = 0x8
++ ATTR_FILE_LINKCOUNT = 0x1
++ ATTR_FILE_RSRCALLOCSIZE = 0x2000
++ ATTR_FILE_RSRCEXTENTS = 0x4000
++ ATTR_FILE_RSRCLENGTH = 0x1000
++ ATTR_FILE_SETMASK = 0x20
++ ATTR_FILE_TOTALSIZE = 0x2
++ ATTR_FILE_VALIDMASK = 0x37ff
++ ATTR_VOL_ALLOCATIONCLUMP = 0x40
++ ATTR_VOL_ATTRIBUTES = 0x40000000
++ ATTR_VOL_CAPABILITIES = 0x20000
++ ATTR_VOL_DIRCOUNT = 0x400
++ ATTR_VOL_ENCODINGSUSED = 0x10000
++ ATTR_VOL_FILECOUNT = 0x200
++ ATTR_VOL_FSTYPE = 0x1
++ ATTR_VOL_INFO = 0x80000000
++ ATTR_VOL_IOBLOCKSIZE = 0x80
++ ATTR_VOL_MAXOBJCOUNT = 0x800
++ ATTR_VOL_MINALLOCATION = 0x20
++ ATTR_VOL_MOUNTEDDEVICE = 0x8000
++ ATTR_VOL_MOUNTFLAGS = 0x4000
++ ATTR_VOL_MOUNTPOINT = 0x1000
++ ATTR_VOL_NAME = 0x2000
++ ATTR_VOL_OBJCOUNT = 0x100
++ ATTR_VOL_QUOTA_SIZE = 0x10000000
++ ATTR_VOL_RESERVED_SIZE = 0x20000000
++ ATTR_VOL_SETMASK = 0x80002000
++ ATTR_VOL_SIGNATURE = 0x2
++ ATTR_VOL_SIZE = 0x4
++ ATTR_VOL_SPACEAVAIL = 0x10
++ ATTR_VOL_SPACEFREE = 0x8
++ ATTR_VOL_UUID = 0x40000
++ ATTR_VOL_VALIDMASK = 0xf007ffff
+ B0 = 0x0
+ B110 = 0x6e
+ B115200 = 0x1c200
+@@ -169,6 +249,8 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0xc
+ CTL_NET = 0x4
+ DLT_A429 = 0xb8
+@@ -390,6 +472,11 @@ const (
+ FF1 = 0x4000
+ FFDLY = 0x4000
+ FLUSHO = 0x800000
++ FSOPT_ATTR_CMN_EXTENDED = 0x20
++ FSOPT_NOFOLLOW = 0x1
++ FSOPT_NOINMEMUPDATE = 0x2
++ FSOPT_PACK_INVAL_ATTRS = 0x8
++ FSOPT_REPORT_FULLSIZE = 0x4
+ F_ADDFILESIGS = 0x3d
+ F_ADDFILESIGS_FOR_DYLD_SIM = 0x53
+ F_ADDFILESIGS_RETURN = 0x61
+@@ -425,6 +512,7 @@ const (
+ F_PATHPKG_CHECK = 0x34
+ F_PEOFPOSMODE = 0x3
+ F_PREALLOCATE = 0x2a
++ F_PUNCHHOLE = 0x63
+ F_RDADVISE = 0x2c
+ F_RDAHEAD = 0x2d
+ F_RDLCK = 0x1
+@@ -441,10 +529,12 @@ const (
+ F_SINGLE_WRITER = 0x4c
+ F_THAW_FS = 0x36
+ F_TRANSCODEKEY = 0x4b
++ F_TRIM_ACTIVE_FILE = 0x64
+ F_UNLCK = 0x2
+ F_VOLPOSMODE = 0x4
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+@@ -681,6 +771,7 @@ const (
+ IPV6_FAITH = 0x1d
+ IPV6_FLOWINFO_MASK = 0xffffff0f
+ IPV6_FLOWLABEL_MASK = 0xffff0f00
++ IPV6_FLOW_ECN_MASK = 0x300
+ IPV6_FRAGTTL = 0x3c
+ IPV6_FW_ADD = 0x1e
+ IPV6_FW_DEL = 0x1f
+@@ -771,6 +862,7 @@ const (
+ IP_RECVOPTS = 0x5
+ IP_RECVPKTINFO = 0x1a
+ IP_RECVRETOPTS = 0x6
++ IP_RECVTOS = 0x1b
+ IP_RECVTTL = 0x18
+ IP_RETOPTS = 0x8
+ IP_RF = 0x8000
+@@ -789,6 +881,10 @@ const (
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+ LOCK_SH = 0x1
+@@ -884,6 +980,7 @@ const (
+ NET_RT_MAXID = 0xa
+ NET_RT_STAT = 0x4
+ NET_RT_TRASH = 0x5
++ NFDBITS = 0x20
+ NL0 = 0x0
+ NL1 = 0x100
+ NL2 = 0x200
+@@ -1377,6 +1474,12 @@ const (
+ WORDSIZE = 0x20
+ WSTOPPED = 0x8
+ WUNTRACED = 0x2
++ XATTR_CREATE = 0x2
++ XATTR_NODEFAULT = 0x10
++ XATTR_NOFOLLOW = 0x1
++ XATTR_NOSECURITY = 0x8
++ XATTR_REPLACE = 0x4
++ XATTR_SHOWCOMPRESSION = 0x20
+ )
+
+ // Errors
+@@ -1528,146 +1631,154 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "resource busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "operation timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "device power is off",
+- 83: "device error",
+- 84: "value too large to be stored in data type",
+- 85: "bad executable (or shared library)",
+- 86: "bad CPU type in executable",
+- 87: "shared library version mismatch",
+- 88: "malformed Mach-o file",
+- 89: "operation canceled",
+- 90: "identifier removed",
+- 91: "no message of desired type",
+- 92: "illegal byte sequence",
+- 93: "attribute not found",
+- 94: "bad message",
+- 95: "EMULTIHOP (Reserved)",
+- 96: "no message available on STREAM",
+- 97: "ENOLINK (Reserved)",
+- 98: "no STREAM resources",
+- 99: "not a STREAM",
+- 100: "protocol error",
+- 101: "STREAM ioctl timeout",
+- 102: "operation not supported on socket",
+- 103: "policy not found",
+- 104: "state not recoverable",
+- 105: "previous owner died",
+- 106: "interface output queue is full",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large"},
++ {35, "EAGAIN", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "ENOTSUP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "operation timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disc quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EPWROFF", "device power is off"},
++ {83, "EDEVERR", "device error"},
++ {84, "EOVERFLOW", "value too large to be stored in data type"},
++ {85, "EBADEXEC", "bad executable (or shared library)"},
++ {86, "EBADARCH", "bad CPU type in executable"},
++ {87, "ESHLIBVERS", "shared library version mismatch"},
++ {88, "EBADMACHO", "malformed Mach-o file"},
++ {89, "ECANCELED", "operation canceled"},
++ {90, "EIDRM", "identifier removed"},
++ {91, "ENOMSG", "no message of desired type"},
++ {92, "EILSEQ", "illegal byte sequence"},
++ {93, "ENOATTR", "attribute not found"},
++ {94, "EBADMSG", "bad message"},
++ {95, "EMULTIHOP", "EMULTIHOP (Reserved)"},
++ {96, "ENODATA", "no message available on STREAM"},
++ {97, "ENOLINK", "ENOLINK (Reserved)"},
++ {98, "ENOSR", "no STREAM resources"},
++ {99, "ENOSTR", "not a STREAM"},
++ {100, "EPROTO", "protocol error"},
++ {101, "ETIME", "STREAM ioctl timeout"},
++ {102, "EOPNOTSUPP", "operation not supported on socket"},
++ {103, "ENOPOLICY", "policy not found"},
++ {104, "ENOTRECOVERABLE", "state not recoverable"},
++ {105, "EOWNERDEAD", "previous owner died"},
++ {106, "EQFULL", "interface output queue is full"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "suspended (signal)",
+- 18: "suspended",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGABRT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "suspended (signal)"},
++ {18, "SIGTSTP", "suspended"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go
+index 48f63d4f..e3ff2ee3 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go
+@@ -3,7 +3,7 @@
+
+ // +build amd64,darwin
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+
+ package unix
+@@ -49,6 +49,86 @@ const (
+ AF_UNSPEC = 0x0
+ AF_UTUN = 0x26
+ ALTWERASE = 0x200
++ ATTR_BIT_MAP_COUNT = 0x5
++ ATTR_CMN_ACCESSMASK = 0x20000
++ ATTR_CMN_ACCTIME = 0x1000
++ ATTR_CMN_ADDEDTIME = 0x10000000
++ ATTR_CMN_BKUPTIME = 0x2000
++ ATTR_CMN_CHGTIME = 0x800
++ ATTR_CMN_CRTIME = 0x200
++ ATTR_CMN_DATA_PROTECT_FLAGS = 0x40000000
++ ATTR_CMN_DEVID = 0x2
++ ATTR_CMN_DOCUMENT_ID = 0x100000
++ ATTR_CMN_ERROR = 0x20000000
++ ATTR_CMN_EXTENDED_SECURITY = 0x400000
++ ATTR_CMN_FILEID = 0x2000000
++ ATTR_CMN_FLAGS = 0x40000
++ ATTR_CMN_FNDRINFO = 0x4000
++ ATTR_CMN_FSID = 0x4
++ ATTR_CMN_FULLPATH = 0x8000000
++ ATTR_CMN_GEN_COUNT = 0x80000
++ ATTR_CMN_GRPID = 0x10000
++ ATTR_CMN_GRPUUID = 0x1000000
++ ATTR_CMN_MODTIME = 0x400
++ ATTR_CMN_NAME = 0x1
++ ATTR_CMN_NAMEDATTRCOUNT = 0x80000
++ ATTR_CMN_NAMEDATTRLIST = 0x100000
++ ATTR_CMN_OBJID = 0x20
++ ATTR_CMN_OBJPERMANENTID = 0x40
++ ATTR_CMN_OBJTAG = 0x10
++ ATTR_CMN_OBJTYPE = 0x8
++ ATTR_CMN_OWNERID = 0x8000
++ ATTR_CMN_PARENTID = 0x4000000
++ ATTR_CMN_PAROBJID = 0x80
++ ATTR_CMN_RETURNED_ATTRS = 0x80000000
++ ATTR_CMN_SCRIPT = 0x100
++ ATTR_CMN_SETMASK = 0x41c7ff00
++ ATTR_CMN_USERACCESS = 0x200000
++ ATTR_CMN_UUID = 0x800000
++ ATTR_CMN_VALIDMASK = 0xffffffff
++ ATTR_CMN_VOLSETMASK = 0x6700
++ ATTR_FILE_ALLOCSIZE = 0x4
++ ATTR_FILE_CLUMPSIZE = 0x10
++ ATTR_FILE_DATAALLOCSIZE = 0x400
++ ATTR_FILE_DATAEXTENTS = 0x800
++ ATTR_FILE_DATALENGTH = 0x200
++ ATTR_FILE_DEVTYPE = 0x20
++ ATTR_FILE_FILETYPE = 0x40
++ ATTR_FILE_FORKCOUNT = 0x80
++ ATTR_FILE_FORKLIST = 0x100
++ ATTR_FILE_IOBLOCKSIZE = 0x8
++ ATTR_FILE_LINKCOUNT = 0x1
++ ATTR_FILE_RSRCALLOCSIZE = 0x2000
++ ATTR_FILE_RSRCEXTENTS = 0x4000
++ ATTR_FILE_RSRCLENGTH = 0x1000
++ ATTR_FILE_SETMASK = 0x20
++ ATTR_FILE_TOTALSIZE = 0x2
++ ATTR_FILE_VALIDMASK = 0x37ff
++ ATTR_VOL_ALLOCATIONCLUMP = 0x40
++ ATTR_VOL_ATTRIBUTES = 0x40000000
++ ATTR_VOL_CAPABILITIES = 0x20000
++ ATTR_VOL_DIRCOUNT = 0x400
++ ATTR_VOL_ENCODINGSUSED = 0x10000
++ ATTR_VOL_FILECOUNT = 0x200
++ ATTR_VOL_FSTYPE = 0x1
++ ATTR_VOL_INFO = 0x80000000
++ ATTR_VOL_IOBLOCKSIZE = 0x80
++ ATTR_VOL_MAXOBJCOUNT = 0x800
++ ATTR_VOL_MINALLOCATION = 0x20
++ ATTR_VOL_MOUNTEDDEVICE = 0x8000
++ ATTR_VOL_MOUNTFLAGS = 0x4000
++ ATTR_VOL_MOUNTPOINT = 0x1000
++ ATTR_VOL_NAME = 0x2000
++ ATTR_VOL_OBJCOUNT = 0x100
++ ATTR_VOL_QUOTA_SIZE = 0x10000000
++ ATTR_VOL_RESERVED_SIZE = 0x20000000
++ ATTR_VOL_SETMASK = 0x80002000
++ ATTR_VOL_SIGNATURE = 0x2
++ ATTR_VOL_SIZE = 0x4
++ ATTR_VOL_SPACEAVAIL = 0x10
++ ATTR_VOL_SPACEFREE = 0x8
++ ATTR_VOL_UUID = 0x40000
++ ATTR_VOL_VALIDMASK = 0xf007ffff
+ B0 = 0x0
+ B110 = 0x6e
+ B115200 = 0x1c200
+@@ -169,6 +249,8 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0xc
+ CTL_NET = 0x4
+ DLT_A429 = 0xb8
+@@ -390,6 +472,11 @@ const (
+ FF1 = 0x4000
+ FFDLY = 0x4000
+ FLUSHO = 0x800000
++ FSOPT_ATTR_CMN_EXTENDED = 0x20
++ FSOPT_NOFOLLOW = 0x1
++ FSOPT_NOINMEMUPDATE = 0x2
++ FSOPT_PACK_INVAL_ATTRS = 0x8
++ FSOPT_REPORT_FULLSIZE = 0x4
+ F_ADDFILESIGS = 0x3d
+ F_ADDFILESIGS_FOR_DYLD_SIM = 0x53
+ F_ADDFILESIGS_RETURN = 0x61
+@@ -425,6 +512,7 @@ const (
+ F_PATHPKG_CHECK = 0x34
+ F_PEOFPOSMODE = 0x3
+ F_PREALLOCATE = 0x2a
++ F_PUNCHHOLE = 0x63
+ F_RDADVISE = 0x2c
+ F_RDAHEAD = 0x2d
+ F_RDLCK = 0x1
+@@ -441,10 +529,12 @@ const (
+ F_SINGLE_WRITER = 0x4c
+ F_THAW_FS = 0x36
+ F_TRANSCODEKEY = 0x4b
++ F_TRIM_ACTIVE_FILE = 0x64
+ F_UNLCK = 0x2
+ F_VOLPOSMODE = 0x4
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+@@ -681,6 +771,7 @@ const (
+ IPV6_FAITH = 0x1d
+ IPV6_FLOWINFO_MASK = 0xffffff0f
+ IPV6_FLOWLABEL_MASK = 0xffff0f00
++ IPV6_FLOW_ECN_MASK = 0x300
+ IPV6_FRAGTTL = 0x3c
+ IPV6_FW_ADD = 0x1e
+ IPV6_FW_DEL = 0x1f
+@@ -771,6 +862,7 @@ const (
+ IP_RECVOPTS = 0x5
+ IP_RECVPKTINFO = 0x1a
+ IP_RECVRETOPTS = 0x6
++ IP_RECVTOS = 0x1b
+ IP_RECVTTL = 0x18
+ IP_RETOPTS = 0x8
+ IP_RF = 0x8000
+@@ -789,6 +881,10 @@ const (
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+ LOCK_SH = 0x1
+@@ -884,6 +980,7 @@ const (
+ NET_RT_MAXID = 0xa
+ NET_RT_STAT = 0x4
+ NET_RT_TRASH = 0x5
++ NFDBITS = 0x20
+ NL0 = 0x0
+ NL1 = 0x100
+ NL2 = 0x200
+@@ -1377,6 +1474,12 @@ const (
+ WORDSIZE = 0x40
+ WSTOPPED = 0x8
+ WUNTRACED = 0x2
++ XATTR_CREATE = 0x2
++ XATTR_NODEFAULT = 0x10
++ XATTR_NOFOLLOW = 0x1
++ XATTR_NOSECURITY = 0x8
++ XATTR_REPLACE = 0x4
++ XATTR_SHOWCOMPRESSION = 0x20
+ )
+
+ // Errors
+@@ -1528,146 +1631,154 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "resource busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "operation timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "device power is off",
+- 83: "device error",
+- 84: "value too large to be stored in data type",
+- 85: "bad executable (or shared library)",
+- 86: "bad CPU type in executable",
+- 87: "shared library version mismatch",
+- 88: "malformed Mach-o file",
+- 89: "operation canceled",
+- 90: "identifier removed",
+- 91: "no message of desired type",
+- 92: "illegal byte sequence",
+- 93: "attribute not found",
+- 94: "bad message",
+- 95: "EMULTIHOP (Reserved)",
+- 96: "no message available on STREAM",
+- 97: "ENOLINK (Reserved)",
+- 98: "no STREAM resources",
+- 99: "not a STREAM",
+- 100: "protocol error",
+- 101: "STREAM ioctl timeout",
+- 102: "operation not supported on socket",
+- 103: "policy not found",
+- 104: "state not recoverable",
+- 105: "previous owner died",
+- 106: "interface output queue is full",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large"},
++ {35, "EAGAIN", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "ENOTSUP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "operation timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disc quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EPWROFF", "device power is off"},
++ {83, "EDEVERR", "device error"},
++ {84, "EOVERFLOW", "value too large to be stored in data type"},
++ {85, "EBADEXEC", "bad executable (or shared library)"},
++ {86, "EBADARCH", "bad CPU type in executable"},
++ {87, "ESHLIBVERS", "shared library version mismatch"},
++ {88, "EBADMACHO", "malformed Mach-o file"},
++ {89, "ECANCELED", "operation canceled"},
++ {90, "EIDRM", "identifier removed"},
++ {91, "ENOMSG", "no message of desired type"},
++ {92, "EILSEQ", "illegal byte sequence"},
++ {93, "ENOATTR", "attribute not found"},
++ {94, "EBADMSG", "bad message"},
++ {95, "EMULTIHOP", "EMULTIHOP (Reserved)"},
++ {96, "ENODATA", "no message available on STREAM"},
++ {97, "ENOLINK", "ENOLINK (Reserved)"},
++ {98, "ENOSR", "no STREAM resources"},
++ {99, "ENOSTR", "not a STREAM"},
++ {100, "EPROTO", "protocol error"},
++ {101, "ETIME", "STREAM ioctl timeout"},
++ {102, "EOPNOTSUPP", "operation not supported on socket"},
++ {103, "ENOPOLICY", "policy not found"},
++ {104, "ENOTRECOVERABLE", "state not recoverable"},
++ {105, "EOWNERDEAD", "previous owner died"},
++ {106, "EQFULL", "interface output queue is full"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "suspended (signal)",
+- 18: "suspended",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGABRT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "suspended (signal)"},
++ {18, "SIGTSTP", "suspended"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go
+index 24cb522d..3e417571 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go
+@@ -3,7 +3,7 @@
+
+ // +build arm,darwin
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- _const.go
+
+ package unix
+@@ -49,6 +49,86 @@ const (
+ AF_UNSPEC = 0x0
+ AF_UTUN = 0x26
+ ALTWERASE = 0x200
++ ATTR_BIT_MAP_COUNT = 0x5
++ ATTR_CMN_ACCESSMASK = 0x20000
++ ATTR_CMN_ACCTIME = 0x1000
++ ATTR_CMN_ADDEDTIME = 0x10000000
++ ATTR_CMN_BKUPTIME = 0x2000
++ ATTR_CMN_CHGTIME = 0x800
++ ATTR_CMN_CRTIME = 0x200
++ ATTR_CMN_DATA_PROTECT_FLAGS = 0x40000000
++ ATTR_CMN_DEVID = 0x2
++ ATTR_CMN_DOCUMENT_ID = 0x100000
++ ATTR_CMN_ERROR = 0x20000000
++ ATTR_CMN_EXTENDED_SECURITY = 0x400000
++ ATTR_CMN_FILEID = 0x2000000
++ ATTR_CMN_FLAGS = 0x40000
++ ATTR_CMN_FNDRINFO = 0x4000
++ ATTR_CMN_FSID = 0x4
++ ATTR_CMN_FULLPATH = 0x8000000
++ ATTR_CMN_GEN_COUNT = 0x80000
++ ATTR_CMN_GRPID = 0x10000
++ ATTR_CMN_GRPUUID = 0x1000000
++ ATTR_CMN_MODTIME = 0x400
++ ATTR_CMN_NAME = 0x1
++ ATTR_CMN_NAMEDATTRCOUNT = 0x80000
++ ATTR_CMN_NAMEDATTRLIST = 0x100000
++ ATTR_CMN_OBJID = 0x20
++ ATTR_CMN_OBJPERMANENTID = 0x40
++ ATTR_CMN_OBJTAG = 0x10
++ ATTR_CMN_OBJTYPE = 0x8
++ ATTR_CMN_OWNERID = 0x8000
++ ATTR_CMN_PARENTID = 0x4000000
++ ATTR_CMN_PAROBJID = 0x80
++ ATTR_CMN_RETURNED_ATTRS = 0x80000000
++ ATTR_CMN_SCRIPT = 0x100
++ ATTR_CMN_SETMASK = 0x41c7ff00
++ ATTR_CMN_USERACCESS = 0x200000
++ ATTR_CMN_UUID = 0x800000
++ ATTR_CMN_VALIDMASK = 0xffffffff
++ ATTR_CMN_VOLSETMASK = 0x6700
++ ATTR_FILE_ALLOCSIZE = 0x4
++ ATTR_FILE_CLUMPSIZE = 0x10
++ ATTR_FILE_DATAALLOCSIZE = 0x400
++ ATTR_FILE_DATAEXTENTS = 0x800
++ ATTR_FILE_DATALENGTH = 0x200
++ ATTR_FILE_DEVTYPE = 0x20
++ ATTR_FILE_FILETYPE = 0x40
++ ATTR_FILE_FORKCOUNT = 0x80
++ ATTR_FILE_FORKLIST = 0x100
++ ATTR_FILE_IOBLOCKSIZE = 0x8
++ ATTR_FILE_LINKCOUNT = 0x1
++ ATTR_FILE_RSRCALLOCSIZE = 0x2000
++ ATTR_FILE_RSRCEXTENTS = 0x4000
++ ATTR_FILE_RSRCLENGTH = 0x1000
++ ATTR_FILE_SETMASK = 0x20
++ ATTR_FILE_TOTALSIZE = 0x2
++ ATTR_FILE_VALIDMASK = 0x37ff
++ ATTR_VOL_ALLOCATIONCLUMP = 0x40
++ ATTR_VOL_ATTRIBUTES = 0x40000000
++ ATTR_VOL_CAPABILITIES = 0x20000
++ ATTR_VOL_DIRCOUNT = 0x400
++ ATTR_VOL_ENCODINGSUSED = 0x10000
++ ATTR_VOL_FILECOUNT = 0x200
++ ATTR_VOL_FSTYPE = 0x1
++ ATTR_VOL_INFO = 0x80000000
++ ATTR_VOL_IOBLOCKSIZE = 0x80
++ ATTR_VOL_MAXOBJCOUNT = 0x800
++ ATTR_VOL_MINALLOCATION = 0x20
++ ATTR_VOL_MOUNTEDDEVICE = 0x8000
++ ATTR_VOL_MOUNTFLAGS = 0x4000
++ ATTR_VOL_MOUNTPOINT = 0x1000
++ ATTR_VOL_NAME = 0x2000
++ ATTR_VOL_OBJCOUNT = 0x100
++ ATTR_VOL_QUOTA_SIZE = 0x10000000
++ ATTR_VOL_RESERVED_SIZE = 0x20000000
++ ATTR_VOL_SETMASK = 0x80002000
++ ATTR_VOL_SIGNATURE = 0x2
++ ATTR_VOL_SIZE = 0x4
++ ATTR_VOL_SPACEAVAIL = 0x10
++ ATTR_VOL_SPACEFREE = 0x8
++ ATTR_VOL_UUID = 0x40000
++ ATTR_VOL_VALIDMASK = 0xf007ffff
+ B0 = 0x0
+ B110 = 0x6e
+ B115200 = 0x1c200
+@@ -169,6 +249,8 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0xc
+ CTL_NET = 0x4
+ DLT_A429 = 0xb8
+@@ -390,6 +472,11 @@ const (
+ FF1 = 0x4000
+ FFDLY = 0x4000
+ FLUSHO = 0x800000
++ FSOPT_ATTR_CMN_EXTENDED = 0x20
++ FSOPT_NOFOLLOW = 0x1
++ FSOPT_NOINMEMUPDATE = 0x2
++ FSOPT_PACK_INVAL_ATTRS = 0x8
++ FSOPT_REPORT_FULLSIZE = 0x4
+ F_ADDFILESIGS = 0x3d
+ F_ADDFILESIGS_FOR_DYLD_SIM = 0x53
+ F_ADDFILESIGS_RETURN = 0x61
+@@ -425,6 +512,7 @@ const (
+ F_PATHPKG_CHECK = 0x34
+ F_PEOFPOSMODE = 0x3
+ F_PREALLOCATE = 0x2a
++ F_PUNCHHOLE = 0x63
+ F_RDADVISE = 0x2c
+ F_RDAHEAD = 0x2d
+ F_RDLCK = 0x1
+@@ -441,10 +529,12 @@ const (
+ F_SINGLE_WRITER = 0x4c
+ F_THAW_FS = 0x36
+ F_TRANSCODEKEY = 0x4b
++ F_TRIM_ACTIVE_FILE = 0x64
+ F_UNLCK = 0x2
+ F_VOLPOSMODE = 0x4
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+@@ -681,6 +771,7 @@ const (
+ IPV6_FAITH = 0x1d
+ IPV6_FLOWINFO_MASK = 0xffffff0f
+ IPV6_FLOWLABEL_MASK = 0xffff0f00
++ IPV6_FLOW_ECN_MASK = 0x300
+ IPV6_FRAGTTL = 0x3c
+ IPV6_FW_ADD = 0x1e
+ IPV6_FW_DEL = 0x1f
+@@ -771,6 +862,7 @@ const (
+ IP_RECVOPTS = 0x5
+ IP_RECVPKTINFO = 0x1a
+ IP_RECVRETOPTS = 0x6
++ IP_RECVTOS = 0x1b
+ IP_RECVTTL = 0x18
+ IP_RETOPTS = 0x8
+ IP_RF = 0x8000
+@@ -789,6 +881,10 @@ const (
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+ LOCK_SH = 0x1
+@@ -884,6 +980,7 @@ const (
+ NET_RT_MAXID = 0xa
+ NET_RT_STAT = 0x4
+ NET_RT_TRASH = 0x5
++ NFDBITS = 0x20
+ NL0 = 0x0
+ NL1 = 0x100
+ NL2 = 0x200
+@@ -1377,6 +1474,12 @@ const (
+ WORDSIZE = 0x40
+ WSTOPPED = 0x8
+ WUNTRACED = 0x2
++ XATTR_CREATE = 0x2
++ XATTR_NODEFAULT = 0x10
++ XATTR_NOFOLLOW = 0x1
++ XATTR_NOSECURITY = 0x8
++ XATTR_REPLACE = 0x4
++ XATTR_SHOWCOMPRESSION = 0x20
+ )
+
+ // Errors
+@@ -1528,146 +1631,154 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "resource busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "operation timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "device power is off",
+- 83: "device error",
+- 84: "value too large to be stored in data type",
+- 85: "bad executable (or shared library)",
+- 86: "bad CPU type in executable",
+- 87: "shared library version mismatch",
+- 88: "malformed Mach-o file",
+- 89: "operation canceled",
+- 90: "identifier removed",
+- 91: "no message of desired type",
+- 92: "illegal byte sequence",
+- 93: "attribute not found",
+- 94: "bad message",
+- 95: "EMULTIHOP (Reserved)",
+- 96: "no message available on STREAM",
+- 97: "ENOLINK (Reserved)",
+- 98: "no STREAM resources",
+- 99: "not a STREAM",
+- 100: "protocol error",
+- 101: "STREAM ioctl timeout",
+- 102: "operation not supported on socket",
+- 103: "policy not found",
+- 104: "state not recoverable",
+- 105: "previous owner died",
+- 106: "interface output queue is full",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large"},
++ {35, "EAGAIN", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "ENOTSUP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "operation timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disc quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EPWROFF", "device power is off"},
++ {83, "EDEVERR", "device error"},
++ {84, "EOVERFLOW", "value too large to be stored in data type"},
++ {85, "EBADEXEC", "bad executable (or shared library)"},
++ {86, "EBADARCH", "bad CPU type in executable"},
++ {87, "ESHLIBVERS", "shared library version mismatch"},
++ {88, "EBADMACHO", "malformed Mach-o file"},
++ {89, "ECANCELED", "operation canceled"},
++ {90, "EIDRM", "identifier removed"},
++ {91, "ENOMSG", "no message of desired type"},
++ {92, "EILSEQ", "illegal byte sequence"},
++ {93, "ENOATTR", "attribute not found"},
++ {94, "EBADMSG", "bad message"},
++ {95, "EMULTIHOP", "EMULTIHOP (Reserved)"},
++ {96, "ENODATA", "no message available on STREAM"},
++ {97, "ENOLINK", "ENOLINK (Reserved)"},
++ {98, "ENOSR", "no STREAM resources"},
++ {99, "ENOSTR", "not a STREAM"},
++ {100, "EPROTO", "protocol error"},
++ {101, "ETIME", "STREAM ioctl timeout"},
++ {102, "EOPNOTSUPP", "operation not supported on socket"},
++ {103, "ENOPOLICY", "policy not found"},
++ {104, "ENOTRECOVERABLE", "state not recoverable"},
++ {105, "EOWNERDEAD", "previous owner died"},
++ {106, "EQFULL", "interface output queue is full"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "suspended (signal)",
+- 18: "suspended",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGABRT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "suspended (signal)"},
++ {18, "SIGTSTP", "suspended"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go
+index cc8cc5b5..cbd8ed18 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go
+@@ -3,7 +3,7 @@
+
+ // +build arm64,darwin
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+
+ package unix
+@@ -49,6 +49,86 @@ const (
+ AF_UNSPEC = 0x0
+ AF_UTUN = 0x26
+ ALTWERASE = 0x200
++ ATTR_BIT_MAP_COUNT = 0x5
++ ATTR_CMN_ACCESSMASK = 0x20000
++ ATTR_CMN_ACCTIME = 0x1000
++ ATTR_CMN_ADDEDTIME = 0x10000000
++ ATTR_CMN_BKUPTIME = 0x2000
++ ATTR_CMN_CHGTIME = 0x800
++ ATTR_CMN_CRTIME = 0x200
++ ATTR_CMN_DATA_PROTECT_FLAGS = 0x40000000
++ ATTR_CMN_DEVID = 0x2
++ ATTR_CMN_DOCUMENT_ID = 0x100000
++ ATTR_CMN_ERROR = 0x20000000
++ ATTR_CMN_EXTENDED_SECURITY = 0x400000
++ ATTR_CMN_FILEID = 0x2000000
++ ATTR_CMN_FLAGS = 0x40000
++ ATTR_CMN_FNDRINFO = 0x4000
++ ATTR_CMN_FSID = 0x4
++ ATTR_CMN_FULLPATH = 0x8000000
++ ATTR_CMN_GEN_COUNT = 0x80000
++ ATTR_CMN_GRPID = 0x10000
++ ATTR_CMN_GRPUUID = 0x1000000
++ ATTR_CMN_MODTIME = 0x400
++ ATTR_CMN_NAME = 0x1
++ ATTR_CMN_NAMEDATTRCOUNT = 0x80000
++ ATTR_CMN_NAMEDATTRLIST = 0x100000
++ ATTR_CMN_OBJID = 0x20
++ ATTR_CMN_OBJPERMANENTID = 0x40
++ ATTR_CMN_OBJTAG = 0x10
++ ATTR_CMN_OBJTYPE = 0x8
++ ATTR_CMN_OWNERID = 0x8000
++ ATTR_CMN_PARENTID = 0x4000000
++ ATTR_CMN_PAROBJID = 0x80
++ ATTR_CMN_RETURNED_ATTRS = 0x80000000
++ ATTR_CMN_SCRIPT = 0x100
++ ATTR_CMN_SETMASK = 0x41c7ff00
++ ATTR_CMN_USERACCESS = 0x200000
++ ATTR_CMN_UUID = 0x800000
++ ATTR_CMN_VALIDMASK = 0xffffffff
++ ATTR_CMN_VOLSETMASK = 0x6700
++ ATTR_FILE_ALLOCSIZE = 0x4
++ ATTR_FILE_CLUMPSIZE = 0x10
++ ATTR_FILE_DATAALLOCSIZE = 0x400
++ ATTR_FILE_DATAEXTENTS = 0x800
++ ATTR_FILE_DATALENGTH = 0x200
++ ATTR_FILE_DEVTYPE = 0x20
++ ATTR_FILE_FILETYPE = 0x40
++ ATTR_FILE_FORKCOUNT = 0x80
++ ATTR_FILE_FORKLIST = 0x100
++ ATTR_FILE_IOBLOCKSIZE = 0x8
++ ATTR_FILE_LINKCOUNT = 0x1
++ ATTR_FILE_RSRCALLOCSIZE = 0x2000
++ ATTR_FILE_RSRCEXTENTS = 0x4000
++ ATTR_FILE_RSRCLENGTH = 0x1000
++ ATTR_FILE_SETMASK = 0x20
++ ATTR_FILE_TOTALSIZE = 0x2
++ ATTR_FILE_VALIDMASK = 0x37ff
++ ATTR_VOL_ALLOCATIONCLUMP = 0x40
++ ATTR_VOL_ATTRIBUTES = 0x40000000
++ ATTR_VOL_CAPABILITIES = 0x20000
++ ATTR_VOL_DIRCOUNT = 0x400
++ ATTR_VOL_ENCODINGSUSED = 0x10000
++ ATTR_VOL_FILECOUNT = 0x200
++ ATTR_VOL_FSTYPE = 0x1
++ ATTR_VOL_INFO = 0x80000000
++ ATTR_VOL_IOBLOCKSIZE = 0x80
++ ATTR_VOL_MAXOBJCOUNT = 0x800
++ ATTR_VOL_MINALLOCATION = 0x20
++ ATTR_VOL_MOUNTEDDEVICE = 0x8000
++ ATTR_VOL_MOUNTFLAGS = 0x4000
++ ATTR_VOL_MOUNTPOINT = 0x1000
++ ATTR_VOL_NAME = 0x2000
++ ATTR_VOL_OBJCOUNT = 0x100
++ ATTR_VOL_QUOTA_SIZE = 0x10000000
++ ATTR_VOL_RESERVED_SIZE = 0x20000000
++ ATTR_VOL_SETMASK = 0x80002000
++ ATTR_VOL_SIGNATURE = 0x2
++ ATTR_VOL_SIZE = 0x4
++ ATTR_VOL_SPACEAVAIL = 0x10
++ ATTR_VOL_SPACEFREE = 0x8
++ ATTR_VOL_UUID = 0x40000
++ ATTR_VOL_VALIDMASK = 0xf007ffff
+ B0 = 0x0
+ B110 = 0x6e
+ B115200 = 0x1c200
+@@ -169,6 +249,8 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0xc
+ CTL_NET = 0x4
+ DLT_A429 = 0xb8
+@@ -390,6 +472,11 @@ const (
+ FF1 = 0x4000
+ FFDLY = 0x4000
+ FLUSHO = 0x800000
++ FSOPT_ATTR_CMN_EXTENDED = 0x20
++ FSOPT_NOFOLLOW = 0x1
++ FSOPT_NOINMEMUPDATE = 0x2
++ FSOPT_PACK_INVAL_ATTRS = 0x8
++ FSOPT_REPORT_FULLSIZE = 0x4
+ F_ADDFILESIGS = 0x3d
+ F_ADDFILESIGS_FOR_DYLD_SIM = 0x53
+ F_ADDFILESIGS_RETURN = 0x61
+@@ -425,6 +512,7 @@ const (
+ F_PATHPKG_CHECK = 0x34
+ F_PEOFPOSMODE = 0x3
+ F_PREALLOCATE = 0x2a
++ F_PUNCHHOLE = 0x63
+ F_RDADVISE = 0x2c
+ F_RDAHEAD = 0x2d
+ F_RDLCK = 0x1
+@@ -441,10 +529,12 @@ const (
+ F_SINGLE_WRITER = 0x4c
+ F_THAW_FS = 0x36
+ F_TRANSCODEKEY = 0x4b
++ F_TRIM_ACTIVE_FILE = 0x64
+ F_UNLCK = 0x2
+ F_VOLPOSMODE = 0x4
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+@@ -681,6 +771,7 @@ const (
+ IPV6_FAITH = 0x1d
+ IPV6_FLOWINFO_MASK = 0xffffff0f
+ IPV6_FLOWLABEL_MASK = 0xffff0f00
++ IPV6_FLOW_ECN_MASK = 0x300
+ IPV6_FRAGTTL = 0x3c
+ IPV6_FW_ADD = 0x1e
+ IPV6_FW_DEL = 0x1f
+@@ -771,6 +862,7 @@ const (
+ IP_RECVOPTS = 0x5
+ IP_RECVPKTINFO = 0x1a
+ IP_RECVRETOPTS = 0x6
++ IP_RECVTOS = 0x1b
+ IP_RECVTTL = 0x18
+ IP_RETOPTS = 0x8
+ IP_RF = 0x8000
+@@ -789,6 +881,10 @@ const (
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+ LOCK_SH = 0x1
+@@ -884,6 +980,7 @@ const (
+ NET_RT_MAXID = 0xa
+ NET_RT_STAT = 0x4
+ NET_RT_TRASH = 0x5
++ NFDBITS = 0x20
+ NL0 = 0x0
+ NL1 = 0x100
+ NL2 = 0x200
+@@ -1377,6 +1474,12 @@ const (
+ WORDSIZE = 0x40
+ WSTOPPED = 0x8
+ WUNTRACED = 0x2
++ XATTR_CREATE = 0x2
++ XATTR_NODEFAULT = 0x10
++ XATTR_NOFOLLOW = 0x1
++ XATTR_NOSECURITY = 0x8
++ XATTR_REPLACE = 0x4
++ XATTR_SHOWCOMPRESSION = 0x20
+ )
+
+ // Errors
+@@ -1528,146 +1631,154 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "resource busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "operation timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "device power is off",
+- 83: "device error",
+- 84: "value too large to be stored in data type",
+- 85: "bad executable (or shared library)",
+- 86: "bad CPU type in executable",
+- 87: "shared library version mismatch",
+- 88: "malformed Mach-o file",
+- 89: "operation canceled",
+- 90: "identifier removed",
+- 91: "no message of desired type",
+- 92: "illegal byte sequence",
+- 93: "attribute not found",
+- 94: "bad message",
+- 95: "EMULTIHOP (Reserved)",
+- 96: "no message available on STREAM",
+- 97: "ENOLINK (Reserved)",
+- 98: "no STREAM resources",
+- 99: "not a STREAM",
+- 100: "protocol error",
+- 101: "STREAM ioctl timeout",
+- 102: "operation not supported on socket",
+- 103: "policy not found",
+- 104: "state not recoverable",
+- 105: "previous owner died",
+- 106: "interface output queue is full",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large"},
++ {35, "EAGAIN", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "ENOTSUP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "operation timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disc quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EPWROFF", "device power is off"},
++ {83, "EDEVERR", "device error"},
++ {84, "EOVERFLOW", "value too large to be stored in data type"},
++ {85, "EBADEXEC", "bad executable (or shared library)"},
++ {86, "EBADARCH", "bad CPU type in executable"},
++ {87, "ESHLIBVERS", "shared library version mismatch"},
++ {88, "EBADMACHO", "malformed Mach-o file"},
++ {89, "ECANCELED", "operation canceled"},
++ {90, "EIDRM", "identifier removed"},
++ {91, "ENOMSG", "no message of desired type"},
++ {92, "EILSEQ", "illegal byte sequence"},
++ {93, "ENOATTR", "attribute not found"},
++ {94, "EBADMSG", "bad message"},
++ {95, "EMULTIHOP", "EMULTIHOP (Reserved)"},
++ {96, "ENODATA", "no message available on STREAM"},
++ {97, "ENOLINK", "ENOLINK (Reserved)"},
++ {98, "ENOSR", "no STREAM resources"},
++ {99, "ENOSTR", "not a STREAM"},
++ {100, "EPROTO", "protocol error"},
++ {101, "ETIME", "STREAM ioctl timeout"},
++ {102, "EOPNOTSUPP", "operation not supported on socket"},
++ {103, "ENOPOLICY", "policy not found"},
++ {104, "ENOTRECOVERABLE", "state not recoverable"},
++ {105, "EOWNERDEAD", "previous owner died"},
++ {106, "EQFULL", "interface output queue is full"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "suspended (signal)",
+- 18: "suspended",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGABRT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "suspended (signal)"},
++ {18, "SIGTSTP", "suspended"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go
+index 8f40598b..61304717 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go
+@@ -3,7 +3,7 @@
+
+ // +build amd64,dragonfly
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+
+ package unix
+@@ -168,6 +168,8 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0xc
+ CTL_NET = 0x4
+ DLT_A429 = 0xb8
+@@ -353,6 +355,7 @@ const (
+ F_UNLCK = 0x2
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+@@ -835,6 +838,10 @@ const (
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+ LOCK_SH = 0x1
+@@ -873,6 +880,40 @@ const (
+ MAP_VPAGETABLE = 0x2000
+ MCL_CURRENT = 0x1
+ MCL_FUTURE = 0x2
++ MNT_ASYNC = 0x40
++ MNT_AUTOMOUNTED = 0x20
++ MNT_CMDFLAGS = 0xf0000
++ MNT_DEFEXPORTED = 0x200
++ MNT_DELEXPORT = 0x20000
++ MNT_EXKERB = 0x800
++ MNT_EXPORTANON = 0x400
++ MNT_EXPORTED = 0x100
++ MNT_EXPUBLIC = 0x20000000
++ MNT_EXRDONLY = 0x80
++ MNT_FORCE = 0x80000
++ MNT_IGNORE = 0x800000
++ MNT_LAZY = 0x4
++ MNT_LOCAL = 0x1000
++ MNT_NOATIME = 0x10000000
++ MNT_NOCLUSTERR = 0x40000000
++ MNT_NOCLUSTERW = 0x80000000
++ MNT_NODEV = 0x10
++ MNT_NOEXEC = 0x4
++ MNT_NOSUID = 0x8
++ MNT_NOSYMFOLLOW = 0x400000
++ MNT_NOWAIT = 0x2
++ MNT_QUOTA = 0x2000
++ MNT_RDONLY = 0x1
++ MNT_RELOAD = 0x40000
++ MNT_ROOTFS = 0x4000
++ MNT_SOFTDEP = 0x200000
++ MNT_SUIDDIR = 0x100000
++ MNT_SYNCHRONOUS = 0x2
++ MNT_TRIM = 0x1000000
++ MNT_UPDATE = 0x10000
++ MNT_USER = 0x8000
++ MNT_VISFLAGMASK = 0xf1f0ffff
++ MNT_WAIT = 0x1
+ MSG_CMSG_CLOEXEC = 0x1000
+ MSG_CTRUNC = 0x20
+ MSG_DONTROUTE = 0x4
+@@ -897,6 +938,7 @@ const (
+ NET_RT_FLAGS = 0x2
+ NET_RT_IFLIST = 0x3
+ NET_RT_MAXID = 0x4
++ NFDBITS = 0x40
+ NOFLSH = 0x80000000
+ NOKERNINFO = 0x2000000
+ NOTE_ATTRIB = 0x8
+@@ -973,7 +1015,10 @@ const (
+ RLIMIT_CPU = 0x0
+ RLIMIT_DATA = 0x2
+ RLIMIT_FSIZE = 0x1
++ RLIMIT_MEMLOCK = 0x6
+ RLIMIT_NOFILE = 0x8
++ RLIMIT_NPROC = 0x7
++ RLIMIT_RSS = 0x5
+ RLIMIT_STACK = 0x3
+ RLIM_INFINITY = 0x7fffffffffffffff
+ RTAX_AUTHOR = 0x6
+@@ -1158,6 +1203,36 @@ const (
+ SO_TIMESTAMP = 0x400
+ SO_TYPE = 0x1008
+ SO_USELOOPBACK = 0x40
++ S_BLKSIZE = 0x200
++ S_IEXEC = 0x40
++ S_IFBLK = 0x6000
++ S_IFCHR = 0x2000
++ S_IFDB = 0x9000
++ S_IFDIR = 0x4000
++ S_IFIFO = 0x1000
++ S_IFLNK = 0xa000
++ S_IFMT = 0xf000
++ S_IFREG = 0x8000
++ S_IFSOCK = 0xc000
++ S_IFWHT = 0xe000
++ S_IREAD = 0x100
++ S_IRGRP = 0x20
++ S_IROTH = 0x4
++ S_IRUSR = 0x100
++ S_IRWXG = 0x38
++ S_IRWXO = 0x7
++ S_IRWXU = 0x1c0
++ S_ISGID = 0x400
++ S_ISTXT = 0x200
++ S_ISUID = 0x800
++ S_ISVTX = 0x200
++ S_IWGRP = 0x10
++ S_IWOTH = 0x2
++ S_IWRITE = 0x80
++ S_IWUSR = 0x80
++ S_IXGRP = 0x8
++ S_IXOTH = 0x1
++ S_IXUSR = 0x40
+ TCIFLUSH = 0x1
+ TCIOFF = 0x3
+ TCIOFLUSH = 0x3
+@@ -1427,142 +1502,150 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "operation timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "identifier removed",
+- 83: "no message of desired type",
+- 84: "value too large to be stored in data type",
+- 85: "operation canceled",
+- 86: "illegal byte sequence",
+- 87: "attribute not found",
+- 88: "programming error",
+- 89: "bad message",
+- 90: "multihop attempted",
+- 91: "link has been severed",
+- 92: "protocol error",
+- 93: "no medium found",
+- 94: "unknown error: 94",
+- 95: "unknown error: 95",
+- 96: "unknown error: 96",
+- 97: "unknown error: 97",
+- 98: "unknown error: 98",
+- 99: "unknown error: 99",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large"},
++ {35, "EWOULDBLOCK", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "EOPNOTSUPP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "operation timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disc quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EIDRM", "identifier removed"},
++ {83, "ENOMSG", "no message of desired type"},
++ {84, "EOVERFLOW", "value too large to be stored in data type"},
++ {85, "ECANCELED", "operation canceled"},
++ {86, "EILSEQ", "illegal byte sequence"},
++ {87, "ENOATTR", "attribute not found"},
++ {88, "EDOOFUS", "programming error"},
++ {89, "EBADMSG", "bad message"},
++ {90, "EMULTIHOP", "multihop attempted"},
++ {91, "ENOLINK", "link has been severed"},
++ {92, "EPROTO", "protocol error"},
++ {93, "ENOMEDIUM", "no medium found"},
++ {94, "EUNUSED94", "unknown error: 94"},
++ {95, "EUNUSED95", "unknown error: 95"},
++ {96, "EUNUSED96", "unknown error: 96"},
++ {97, "EUNUSED97", "unknown error: 97"},
++ {98, "EUNUSED98", "unknown error: 98"},
++ {99, "ELAST", "unknown error: 99"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "suspended (signal)",
+- 18: "suspended",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
+- 32: "thread Scheduler",
+- 33: "checkPoint",
+- 34: "checkPointExit",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGIOT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "suspended (signal)"},
++ {18, "SIGTSTP", "suspended"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
++ {32, "SIGTHR", "thread Scheduler"},
++ {33, "SIGCKPT", "checkPoint"},
++ {34, "SIGCKPTEXIT", "checkPointExit"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go b/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go
+index 1d3eec44..84824587 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go
+@@ -3,7 +3,7 @@
+
+ // +build 386,freebsd
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m32 _const.go
+
+ package unix
+@@ -351,8 +351,26 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0x18
+ CTL_NET = 0x4
++ DIOCGATTR = 0xc144648e
++ DIOCGDELETE = 0x80106488
++ DIOCGFLUSH = 0x20006487
++ DIOCGFRONTSTUFF = 0x40086486
++ DIOCGFWHEADS = 0x40046483
++ DIOCGFWSECTORS = 0x40046482
++ DIOCGIDENT = 0x41006489
++ DIOCGMEDIASIZE = 0x40086481
++ DIOCGPHYSPATH = 0x4400648d
++ DIOCGPROVIDERNAME = 0x4400648a
++ DIOCGSECTORSIZE = 0x40046480
++ DIOCGSTRIPEOFFSET = 0x4008648c
++ DIOCGSTRIPESIZE = 0x4008648b
++ DIOCSKERNELDUMP = 0x804c6490
++ DIOCSKERNELDUMP_FREEBSD11 = 0x80046485
++ DIOCZONECMD = 0xc06c648f
+ DLT_A429 = 0xb8
+ DLT_A653_ICM = 0xb9
+ DLT_AIRONET_HEADER = 0x78
+@@ -377,11 +395,14 @@ const (
+ DLT_CHAOS = 0x5
+ DLT_CHDLC = 0x68
+ DLT_CISCO_IOS = 0x76
++ DLT_CLASS_NETBSD_RAWAF = 0x2240000
+ DLT_C_HDLC = 0x68
+ DLT_C_HDLC_WITH_DIR = 0xcd
+ DLT_DBUS = 0xe7
+ DLT_DECT = 0xdd
++ DLT_DISPLAYPORT_AUX = 0x113
+ DLT_DOCSIS = 0x8f
++ DLT_DOCSIS31_XRA31 = 0x111
+ DLT_DVB_CI = 0xeb
+ DLT_ECONET = 0x73
+ DLT_EN10MB = 0x1
+@@ -391,6 +412,7 @@ const (
+ DLT_ERF = 0xc5
+ DLT_ERF_ETH = 0xaf
+ DLT_ERF_POS = 0xb0
++ DLT_ETHERNET_MPACKET = 0x112
+ DLT_FC_2 = 0xe0
+ DLT_FC_2_WITH_FRAME_DELIMS = 0xe1
+ DLT_FDDI = 0xa
+@@ -404,7 +426,6 @@ const (
+ DLT_GPRS_LLC = 0xa9
+ DLT_GSMTAP_ABIS = 0xda
+ DLT_GSMTAP_UM = 0xd9
+- DLT_HHDLC = 0x79
+ DLT_IBM_SN = 0x92
+ DLT_IBM_SP = 0x91
+ DLT_IEEE802 = 0x6
+@@ -427,6 +448,7 @@ const (
+ DLT_IPV4 = 0xe4
+ DLT_IPV6 = 0xe5
+ DLT_IP_OVER_FC = 0x7a
++ DLT_ISO_14443 = 0x108
+ DLT_JUNIPER_ATM1 = 0x89
+ DLT_JUNIPER_ATM2 = 0x87
+ DLT_JUNIPER_ATM_CEMIC = 0xee
+@@ -459,8 +481,9 @@ const (
+ DLT_LINUX_PPP_WITHDIRECTION = 0xa6
+ DLT_LINUX_SLL = 0x71
+ DLT_LOOP = 0x6c
++ DLT_LORATAP = 0x10e
+ DLT_LTALK = 0x72
+- DLT_MATCHING_MAX = 0x104
++ DLT_MATCHING_MAX = 0x113
+ DLT_MATCHING_MIN = 0x68
+ DLT_MFR = 0xb6
+ DLT_MOST = 0xd3
+@@ -476,14 +499,16 @@ const (
+ DLT_NFC_LLCP = 0xf5
+ DLT_NFLOG = 0xef
+ DLT_NG40 = 0xf4
++ DLT_NORDIC_BLE = 0x110
+ DLT_NULL = 0x0
++ DLT_OPENFLOW = 0x10b
+ DLT_PCI_EXP = 0x7d
+ DLT_PFLOG = 0x75
+ DLT_PFSYNC = 0x79
+ DLT_PKTAP = 0x102
+ DLT_PPI = 0xc0
+ DLT_PPP = 0x9
+- DLT_PPP_BSDOS = 0x10
++ DLT_PPP_BSDOS = 0xe
+ DLT_PPP_ETHER = 0x33
+ DLT_PPP_PPPD = 0xa6
+ DLT_PPP_SERIAL = 0x32
+@@ -494,19 +519,25 @@ const (
+ DLT_PRONET = 0x4
+ DLT_RAIF1 = 0xc6
+ DLT_RAW = 0xc
++ DLT_RDS = 0x109
++ DLT_REDBACK_SMARTEDGE = 0x20
+ DLT_RIO = 0x7c
+ DLT_RTAC_SERIAL = 0xfa
+ DLT_SCCP = 0x8e
+ DLT_SCTP = 0xf8
++ DLT_SDLC = 0x10c
+ DLT_SITA = 0xc4
+ DLT_SLIP = 0x8
+- DLT_SLIP_BSDOS = 0xf
++ DLT_SLIP_BSDOS = 0xd
+ DLT_STANAG_5066_D_PDU = 0xed
+ DLT_SUNATM = 0x7b
+ DLT_SYMANTEC_FIREWALL = 0x63
++ DLT_TI_LLN_SNIFFER = 0x10d
+ DLT_TZSP = 0x80
+ DLT_USB = 0xba
+ DLT_USBPCAP = 0xf9
++ DLT_USB_DARWIN = 0x10a
++ DLT_USB_FREEBSD = 0xba
+ DLT_USB_LINUX = 0xbd
+ DLT_USB_LINUX_MMAPPED = 0xdc
+ DLT_USER0 = 0x93
+@@ -525,10 +556,14 @@ const (
+ DLT_USER7 = 0x9a
+ DLT_USER8 = 0x9b
+ DLT_USER9 = 0x9c
++ DLT_VSOCK = 0x10f
++ DLT_WATTSTOPPER_DLM = 0x107
+ DLT_WIHART = 0xdf
+ DLT_WIRESHARK_UPPER_PDU = 0xfc
+ DLT_X2E_SERIAL = 0xd5
+ DLT_X2E_XORAYA = 0xd6
++ DLT_ZWAVE_R1_R2 = 0x105
++ DLT_ZWAVE_R3 = 0x106
+ DT_BLK = 0x6
+ DT_CHR = 0x2
+ DT_DIR = 0x4
+@@ -546,6 +581,7 @@ const (
+ ECHONL = 0x10
+ ECHOPRT = 0x20
+ EVFILT_AIO = -0x3
++ EVFILT_EMPTY = -0xd
+ EVFILT_FS = -0x9
+ EVFILT_LIO = -0xa
+ EVFILT_PROC = -0x5
+@@ -553,11 +589,12 @@ const (
+ EVFILT_READ = -0x1
+ EVFILT_SENDFILE = -0xc
+ EVFILT_SIGNAL = -0x6
+- EVFILT_SYSCOUNT = 0xc
++ EVFILT_SYSCOUNT = 0xd
+ EVFILT_TIMER = -0x7
+ EVFILT_USER = -0xb
+ EVFILT_VNODE = -0x4
+ EVFILT_WRITE = -0x2
++ EVNAMEMAP_NAME_SIZE = 0x40
+ EV_ADD = 0x1
+ EV_CLEAR = 0x20
+ EV_DELETE = 0x2
+@@ -574,6 +611,7 @@ const (
+ EV_RECEIPT = 0x40
+ EV_SYSFLAGS = 0xf000
+ EXTA = 0x4b00
++ EXTATTR_MAXNAMELEN = 0xff
+ EXTATTR_NAMESPACE_EMPTY = 0x0
+ EXTATTR_NAMESPACE_SYSTEM = 0x2
+ EXTATTR_NAMESPACE_USER = 0x1
+@@ -608,12 +646,14 @@ const (
+ F_UNLCKSYS = 0x4
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+ IEXTEN = 0x400
+ IFAN_ARRIVAL = 0x0
+ IFAN_DEPARTURE = 0x1
++ IFCAP_WOL_MAGIC = 0x2000
+ IFF_ALLMULTI = 0x200
+ IFF_ALTPHYS = 0x4000
+ IFF_BROADCAST = 0x2
+@@ -630,6 +670,7 @@ const (
+ IFF_MONITOR = 0x40000
+ IFF_MULTICAST = 0x8000
+ IFF_NOARP = 0x80
++ IFF_NOGROUP = 0x800000
+ IFF_OACTIVE = 0x400
+ IFF_POINTOPOINT = 0x10
+ IFF_PPROMISC = 0x20000
+@@ -804,6 +845,7 @@ const (
+ IPV6_DSTOPTS = 0x32
+ IPV6_FLOWID = 0x43
+ IPV6_FLOWINFO_MASK = 0xffffff0f
++ IPV6_FLOWLABEL_LEN = 0x14
+ IPV6_FLOWLABEL_MASK = 0xffff0f00
+ IPV6_FLOWTYPE = 0x44
+ IPV6_FRAGTTL = 0x78
+@@ -824,13 +866,13 @@ const (
+ IPV6_MAX_GROUP_SRC_FILTER = 0x200
+ IPV6_MAX_MEMBERSHIPS = 0xfff
+ IPV6_MAX_SOCK_SRC_FILTER = 0x80
+- IPV6_MIN_MEMBERSHIPS = 0x1f
+ IPV6_MMTU = 0x500
+ IPV6_MSFILTER = 0x4a
+ IPV6_MULTICAST_HOPS = 0xa
+ IPV6_MULTICAST_IF = 0x9
+ IPV6_MULTICAST_LOOP = 0xb
+ IPV6_NEXTHOP = 0x30
++ IPV6_ORIGDSTADDR = 0x48
+ IPV6_PATHMTU = 0x2c
+ IPV6_PKTINFO = 0x2e
+ IPV6_PORTRANGE = 0xe
+@@ -842,6 +884,7 @@ const (
+ IPV6_RECVFLOWID = 0x46
+ IPV6_RECVHOPLIMIT = 0x25
+ IPV6_RECVHOPOPTS = 0x27
++ IPV6_RECVORIGDSTADDR = 0x48
+ IPV6_RECVPATHMTU = 0x2b
+ IPV6_RECVPKTINFO = 0x24
+ IPV6_RECVRSSBUCKETID = 0x47
+@@ -902,10 +945,8 @@ const (
+ IP_MAX_MEMBERSHIPS = 0xfff
+ IP_MAX_SOCK_MUTE_FILTER = 0x80
+ IP_MAX_SOCK_SRC_FILTER = 0x80
+- IP_MAX_SOURCE_FILTER = 0x400
+ IP_MF = 0x2000
+ IP_MINTTL = 0x42
+- IP_MIN_MEMBERSHIPS = 0x1f
+ IP_MSFILTER = 0x4a
+ IP_MSS = 0x240
+ IP_MULTICAST_IF = 0x9
+@@ -915,6 +956,7 @@ const (
+ IP_OFFMASK = 0x1fff
+ IP_ONESBCAST = 0x17
+ IP_OPTIONS = 0x1
++ IP_ORIGDSTADDR = 0x1b
+ IP_PORTRANGE = 0x13
+ IP_PORTRANGE_DEFAULT = 0x0
+ IP_PORTRANGE_HIGH = 0x1
+@@ -923,6 +965,7 @@ const (
+ IP_RECVFLOWID = 0x5d
+ IP_RECVIF = 0x14
+ IP_RECVOPTS = 0x5
++ IP_RECVORIGDSTADDR = 0x1b
+ IP_RECVRETOPTS = 0x6
+ IP_RECVRSSBUCKETID = 0x5e
+ IP_RECVTOS = 0x44
+@@ -944,6 +987,10 @@ const (
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+ LOCK_SH = 0x1
+@@ -968,6 +1015,7 @@ const (
+ MAP_EXCL = 0x4000
+ MAP_FILE = 0x0
+ MAP_FIXED = 0x10
++ MAP_GUARD = 0x2000
+ MAP_HASSEMAPHORE = 0x200
+ MAP_NOCORE = 0x20000
+ MAP_NOSYNC = 0x800
+@@ -979,8 +1027,62 @@ const (
+ MAP_RESERVED0100 = 0x100
+ MAP_SHARED = 0x1
+ MAP_STACK = 0x400
++ MCAST_BLOCK_SOURCE = 0x54
++ MCAST_EXCLUDE = 0x2
++ MCAST_INCLUDE = 0x1
++ MCAST_JOIN_GROUP = 0x50
++ MCAST_JOIN_SOURCE_GROUP = 0x52
++ MCAST_LEAVE_GROUP = 0x51
++ MCAST_LEAVE_SOURCE_GROUP = 0x53
++ MCAST_UNBLOCK_SOURCE = 0x55
++ MCAST_UNDEFINED = 0x0
+ MCL_CURRENT = 0x1
+ MCL_FUTURE = 0x2
++ MNT_ACLS = 0x8000000
++ MNT_ASYNC = 0x40
++ MNT_AUTOMOUNTED = 0x200000000
++ MNT_BYFSID = 0x8000000
++ MNT_CMDFLAGS = 0xd0f0000
++ MNT_DEFEXPORTED = 0x200
++ MNT_DELEXPORT = 0x20000
++ MNT_EXKERB = 0x800
++ MNT_EXPORTANON = 0x400
++ MNT_EXPORTED = 0x100
++ MNT_EXPUBLIC = 0x20000000
++ MNT_EXRDONLY = 0x80
++ MNT_FORCE = 0x80000
++ MNT_GJOURNAL = 0x2000000
++ MNT_IGNORE = 0x800000
++ MNT_LAZY = 0x3
++ MNT_LOCAL = 0x1000
++ MNT_MULTILABEL = 0x4000000
++ MNT_NFS4ACLS = 0x10
++ MNT_NOATIME = 0x10000000
++ MNT_NOCLUSTERR = 0x40000000
++ MNT_NOCLUSTERW = 0x80000000
++ MNT_NOEXEC = 0x4
++ MNT_NONBUSY = 0x4000000
++ MNT_NOSUID = 0x8
++ MNT_NOSYMFOLLOW = 0x400000
++ MNT_NOWAIT = 0x2
++ MNT_QUOTA = 0x2000
++ MNT_RDONLY = 0x1
++ MNT_RELOAD = 0x40000
++ MNT_ROOTFS = 0x4000
++ MNT_SNAPSHOT = 0x1000000
++ MNT_SOFTDEP = 0x200000
++ MNT_SUIDDIR = 0x100000
++ MNT_SUJ = 0x100000000
++ MNT_SUSPEND = 0x4
++ MNT_SYNCHRONOUS = 0x2
++ MNT_UNION = 0x20
++ MNT_UNTRUSTED = 0x800000000
++ MNT_UPDATE = 0x10000
++ MNT_UPDATEMASK = 0xad8d0807e
++ MNT_USER = 0x8000
++ MNT_VERIFIED = 0x400000000
++ MNT_VISFLAGMASK = 0xffef0ffff
++ MNT_WAIT = 0x1
+ MSG_CMSG_CLOEXEC = 0x40000
+ MSG_COMPAT = 0x8000
+ MSG_CTRUNC = 0x20
+@@ -1005,8 +1107,10 @@ const (
+ NET_RT_IFLIST = 0x3
+ NET_RT_IFLISTL = 0x5
+ NET_RT_IFMALIST = 0x4
++ NFDBITS = 0x20
+ NOFLSH = 0x80000000
+ NOKERNINFO = 0x2000000
++ NOTE_ABSTIME = 0x10
+ NOTE_ATTRIB = 0x8
+ NOTE_CHILD = 0x4
+ NOTE_CLOSE = 0x100
+@@ -1161,7 +1265,6 @@ const (
+ RTV_WEIGHT = 0x100
+ RT_ALL_FIBS = -0x1
+ RT_BLACKHOLE = 0x40
+- RT_CACHING_CONTEXT = 0x1
+ RT_DEFAULT_FIB = 0x0
+ RT_HAS_GW = 0x80
+ RT_HAS_HEADER = 0x10
+@@ -1171,15 +1274,17 @@ const (
+ RT_LLE_CACHE = 0x100
+ RT_MAY_LOOP = 0x8
+ RT_MAY_LOOP_BIT = 0x3
+- RT_NORTREF = 0x2
+ RT_REJECT = 0x20
+ RUSAGE_CHILDREN = -0x1
+ RUSAGE_SELF = 0x0
+ RUSAGE_THREAD = 0x1
+ SCM_BINTIME = 0x4
+ SCM_CREDS = 0x3
++ SCM_MONOTONIC = 0x6
++ SCM_REALTIME = 0x5
+ SCM_RIGHTS = 0x1
+ SCM_TIMESTAMP = 0x2
++ SCM_TIME_INFO = 0x7
+ SHUT_RD = 0x0
+ SHUT_RDWR = 0x2
+ SHUT_WR = 0x1
+@@ -1195,6 +1300,7 @@ const (
+ SIOCGETSGCNT = 0xc0147210
+ SIOCGETVIFCNT = 0xc014720f
+ SIOCGHIWAT = 0x40047301
++ SIOCGHWADDR = 0xc020693e
+ SIOCGI2C = 0xc020693d
+ SIOCGIFADDR = 0xc0206921
+ SIOCGIFBRDADDR = 0xc0206923
+@@ -1216,8 +1322,11 @@ const (
+ SIOCGIFPDSTADDR = 0xc0206948
+ SIOCGIFPHYS = 0xc0206935
+ SIOCGIFPSRCADDR = 0xc0206947
++ SIOCGIFRSSHASH = 0xc0186997
++ SIOCGIFRSSKEY = 0xc0946996
+ SIOCGIFSTATUS = 0xc331693b
+ SIOCGIFXMEDIA = 0xc028698b
++ SIOCGLANPCP = 0xc0206998
+ SIOCGLOWAT = 0x40047303
+ SIOCGPGRP = 0x40047309
+ SIOCGPRIVATE_0 = 0xc0206950
+@@ -1248,6 +1357,7 @@ const (
+ SIOCSIFPHYS = 0x80206936
+ SIOCSIFRVNET = 0xc020695b
+ SIOCSIFVNET = 0xc020695a
++ SIOCSLANPCP = 0x80206999
+ SIOCSLOWAT = 0x80047302
+ SIOCSPGRP = 0x80047308
+ SIOCSTUNFIB = 0x8020695f
+@@ -1266,6 +1376,7 @@ const (
+ SO_BINTIME = 0x2000
+ SO_BROADCAST = 0x20
+ SO_DEBUG = 0x1
++ SO_DOMAIN = 0x1019
+ SO_DONTROUTE = 0x10
+ SO_ERROR = 0x1007
+ SO_KEEPALIVE = 0x8
+@@ -1274,6 +1385,7 @@ const (
+ SO_LISTENINCQLEN = 0x1013
+ SO_LISTENQLEN = 0x1012
+ SO_LISTENQLIMIT = 0x1011
++ SO_MAX_PACING_RATE = 0x1018
+ SO_NOSIGPIPE = 0x800
+ SO_NO_DDP = 0x8000
+ SO_NO_OFFLOAD = 0x4000
+@@ -1286,15 +1398,52 @@ const (
+ SO_RCVTIMEO = 0x1006
+ SO_REUSEADDR = 0x4
+ SO_REUSEPORT = 0x200
++ SO_REUSEPORT_LB = 0x10000
+ SO_SETFIB = 0x1014
+ SO_SNDBUF = 0x1001
+ SO_SNDLOWAT = 0x1003
+ SO_SNDTIMEO = 0x1005
+ SO_TIMESTAMP = 0x400
++ SO_TS_BINTIME = 0x1
++ SO_TS_CLOCK = 0x1017
++ SO_TS_CLOCK_MAX = 0x3
++ SO_TS_DEFAULT = 0x0
++ SO_TS_MONOTONIC = 0x3
++ SO_TS_REALTIME = 0x2
++ SO_TS_REALTIME_MICRO = 0x0
+ SO_TYPE = 0x1008
+ SO_USELOOPBACK = 0x40
+ SO_USER_COOKIE = 0x1015
+ SO_VENDOR = 0x80000000
++ S_BLKSIZE = 0x200
++ S_IEXEC = 0x40
++ S_IFBLK = 0x6000
++ S_IFCHR = 0x2000
++ S_IFDIR = 0x4000
++ S_IFIFO = 0x1000
++ S_IFLNK = 0xa000
++ S_IFMT = 0xf000
++ S_IFREG = 0x8000
++ S_IFSOCK = 0xc000
++ S_IFWHT = 0xe000
++ S_IREAD = 0x100
++ S_IRGRP = 0x20
++ S_IROTH = 0x4
++ S_IRUSR = 0x100
++ S_IRWXG = 0x38
++ S_IRWXO = 0x7
++ S_IRWXU = 0x1c0
++ S_ISGID = 0x400
++ S_ISTXT = 0x200
++ S_ISUID = 0x800
++ S_ISVTX = 0x200
++ S_IWGRP = 0x10
++ S_IWOTH = 0x2
++ S_IWRITE = 0x80
++ S_IWUSR = 0x80
++ S_IXGRP = 0x8
++ S_IXOTH = 0x1
++ S_IXUSR = 0x40
+ TAB0 = 0x0
+ TAB3 = 0x4
+ TABDLY = 0x4
+@@ -1305,10 +1454,45 @@ const (
+ TCOFLUSH = 0x2
+ TCOOFF = 0x1
+ TCOON = 0x2
++ TCP_BBR_ACK_COMP_ALG = 0x448
++ TCP_BBR_DRAIN_INC_EXTRA = 0x43c
++ TCP_BBR_DRAIN_PG = 0x42e
++ TCP_BBR_EXTRA_GAIN = 0x449
++ TCP_BBR_IWINTSO = 0x42b
++ TCP_BBR_LOWGAIN_FD = 0x436
++ TCP_BBR_LOWGAIN_HALF = 0x435
++ TCP_BBR_LOWGAIN_THRESH = 0x434
++ TCP_BBR_MAX_RTO = 0x439
++ TCP_BBR_MIN_RTO = 0x438
++ TCP_BBR_ONE_RETRAN = 0x431
++ TCP_BBR_PACE_CROSS = 0x442
++ TCP_BBR_PACE_DEL_TAR = 0x43f
++ TCP_BBR_PACE_PER_SEC = 0x43e
++ TCP_BBR_PACE_SEG_MAX = 0x440
++ TCP_BBR_PACE_SEG_MIN = 0x441
++ TCP_BBR_PROBE_RTT_GAIN = 0x44d
++ TCP_BBR_PROBE_RTT_INT = 0x430
++ TCP_BBR_PROBE_RTT_LEN = 0x44e
++ TCP_BBR_RACK_RTT_USE = 0x44a
++ TCP_BBR_RECFORCE = 0x42c
++ TCP_BBR_REC_OVER_HPTS = 0x43a
++ TCP_BBR_RETRAN_WTSO = 0x44b
++ TCP_BBR_RWND_IS_APP = 0x42f
++ TCP_BBR_STARTUP_EXIT_EPOCH = 0x43d
++ TCP_BBR_STARTUP_LOSS_EXIT = 0x432
++ TCP_BBR_STARTUP_PG = 0x42d
++ TCP_BBR_UNLIMITED = 0x43b
++ TCP_BBR_USEDEL_RATE = 0x437
++ TCP_BBR_USE_LOWGAIN = 0x433
+ TCP_CA_NAME_MAX = 0x10
+ TCP_CCALGOOPT = 0x41
+ TCP_CONGESTION = 0x40
++ TCP_DATA_AFTER_CLOSE = 0x44c
++ TCP_DELACK = 0x48
+ TCP_FASTOPEN = 0x401
++ TCP_FASTOPEN_MAX_COOKIE_LEN = 0x10
++ TCP_FASTOPEN_MIN_COOKIE_LEN = 0x4
++ TCP_FASTOPEN_PSK_LEN = 0x10
+ TCP_FUNCTION_BLK = 0x2000
+ TCP_FUNCTION_NAME_LEN_MAX = 0x20
+ TCP_INFO = 0x20
+@@ -1316,6 +1500,12 @@ const (
+ TCP_KEEPIDLE = 0x100
+ TCP_KEEPINIT = 0x80
+ TCP_KEEPINTVL = 0x200
++ TCP_LOG = 0x22
++ TCP_LOGBUF = 0x23
++ TCP_LOGDUMP = 0x25
++ TCP_LOGDUMPID = 0x26
++ TCP_LOGID = 0x24
++ TCP_LOG_ID_LEN = 0x40
+ TCP_MAXBURST = 0x4
+ TCP_MAXHLEN = 0x3c
+ TCP_MAXOLEN = 0x28
+@@ -1331,8 +1521,30 @@ const (
+ TCP_NOPUSH = 0x4
+ TCP_PCAP_IN = 0x1000
+ TCP_PCAP_OUT = 0x800
++ TCP_RACK_EARLY_RECOV = 0x423
++ TCP_RACK_EARLY_SEG = 0x424
++ TCP_RACK_IDLE_REDUCE_HIGH = 0x444
++ TCP_RACK_MIN_PACE = 0x445
++ TCP_RACK_MIN_PACE_SEG = 0x446
++ TCP_RACK_MIN_TO = 0x422
++ TCP_RACK_PACE_ALWAYS = 0x41f
++ TCP_RACK_PACE_MAX_SEG = 0x41e
++ TCP_RACK_PACE_REDUCE = 0x41d
++ TCP_RACK_PKT_DELAY = 0x428
++ TCP_RACK_PROP = 0x41b
++ TCP_RACK_PROP_RATE = 0x420
++ TCP_RACK_PRR_SENDALOT = 0x421
++ TCP_RACK_REORD_FADE = 0x426
++ TCP_RACK_REORD_THRESH = 0x425
++ TCP_RACK_SESS_CWV = 0x42a
++ TCP_RACK_TLP_INC_VAR = 0x429
++ TCP_RACK_TLP_REDUCE = 0x41c
++ TCP_RACK_TLP_THRESH = 0x427
++ TCP_RACK_TLP_USE = 0x447
+ TCP_VENDOR = 0x80000000
+ TCSAFLUSH = 0x2
++ TIMER_ABSTIME = 0x1
++ TIMER_RELTIME = 0x0
+ TIOCCBRK = 0x2000747a
+ TIOCCDTR = 0x20007478
+ TIOCCONS = 0x80047462
+@@ -1396,6 +1608,8 @@ const (
+ TIOCTIMESTAMP = 0x40087459
+ TIOCUCNTL = 0x80047466
+ TOSTOP = 0x400000
++ UTIME_NOW = -0x1
++ UTIME_OMIT = -0x2
+ VDISCARD = 0xf
+ VDSUSP = 0xb
+ VEOF = 0x0
+@@ -1407,6 +1621,8 @@ const (
+ VKILL = 0x5
+ VLNEXT = 0xe
+ VMIN = 0x10
++ VM_BCACHE_SIZE_MAX = 0x70e0000
++ VM_SWZONE_SIZE_MAX = 0x2280000
+ VQUIT = 0x9
+ VREPRINT = 0x6
+ VSTART = 0xc
+@@ -1569,138 +1785,146 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "operation timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "identifier removed",
+- 83: "no message of desired type",
+- 84: "value too large to be stored in data type",
+- 85: "operation canceled",
+- 86: "illegal byte sequence",
+- 87: "attribute not found",
+- 88: "programming error",
+- 89: "bad message",
+- 90: "multihop attempted",
+- 91: "link has been severed",
+- 92: "protocol error",
+- 93: "capabilities insufficient",
+- 94: "not permitted in capability mode",
+- 95: "state not recoverable",
+- 96: "previous owner died",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large"},
++ {35, "EAGAIN", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "EOPNOTSUPP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "operation timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disc quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EIDRM", "identifier removed"},
++ {83, "ENOMSG", "no message of desired type"},
++ {84, "EOVERFLOW", "value too large to be stored in data type"},
++ {85, "ECANCELED", "operation canceled"},
++ {86, "EILSEQ", "illegal byte sequence"},
++ {87, "ENOATTR", "attribute not found"},
++ {88, "EDOOFUS", "programming error"},
++ {89, "EBADMSG", "bad message"},
++ {90, "EMULTIHOP", "multihop attempted"},
++ {91, "ENOLINK", "link has been severed"},
++ {92, "EPROTO", "protocol error"},
++ {93, "ENOTCAPABLE", "capabilities insufficient"},
++ {94, "ECAPMODE", "not permitted in capability mode"},
++ {95, "ENOTRECOVERABLE", "state not recoverable"},
++ {96, "EOWNERDEAD", "previous owner died"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "suspended (signal)",
+- 18: "suspended",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
+- 32: "unknown signal",
+- 33: "unknown signal",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGIOT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "suspended (signal)"},
++ {18, "SIGTSTP", "suspended"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
++ {32, "SIGTHR", "unknown signal"},
++ {33, "SIGLIBRT", "unknown signal"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
+index ac094f9c..4acd101c 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
+@@ -3,7 +3,7 @@
+
+ // +build amd64,freebsd
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+
+ package unix
+@@ -351,8 +351,26 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0x18
+ CTL_NET = 0x4
++ DIOCGATTR = 0xc148648e
++ DIOCGDELETE = 0x80106488
++ DIOCGFLUSH = 0x20006487
++ DIOCGFRONTSTUFF = 0x40086486
++ DIOCGFWHEADS = 0x40046483
++ DIOCGFWSECTORS = 0x40046482
++ DIOCGIDENT = 0x41006489
++ DIOCGMEDIASIZE = 0x40086481
++ DIOCGPHYSPATH = 0x4400648d
++ DIOCGPROVIDERNAME = 0x4400648a
++ DIOCGSECTORSIZE = 0x40046480
++ DIOCGSTRIPEOFFSET = 0x4008648c
++ DIOCGSTRIPESIZE = 0x4008648b
++ DIOCSKERNELDUMP = 0x80506490
++ DIOCSKERNELDUMP_FREEBSD11 = 0x80046485
++ DIOCZONECMD = 0xc080648f
+ DLT_A429 = 0xb8
+ DLT_A653_ICM = 0xb9
+ DLT_AIRONET_HEADER = 0x78
+@@ -377,11 +395,14 @@ const (
+ DLT_CHAOS = 0x5
+ DLT_CHDLC = 0x68
+ DLT_CISCO_IOS = 0x76
++ DLT_CLASS_NETBSD_RAWAF = 0x2240000
+ DLT_C_HDLC = 0x68
+ DLT_C_HDLC_WITH_DIR = 0xcd
+ DLT_DBUS = 0xe7
+ DLT_DECT = 0xdd
++ DLT_DISPLAYPORT_AUX = 0x113
+ DLT_DOCSIS = 0x8f
++ DLT_DOCSIS31_XRA31 = 0x111
+ DLT_DVB_CI = 0xeb
+ DLT_ECONET = 0x73
+ DLT_EN10MB = 0x1
+@@ -391,6 +412,7 @@ const (
+ DLT_ERF = 0xc5
+ DLT_ERF_ETH = 0xaf
+ DLT_ERF_POS = 0xb0
++ DLT_ETHERNET_MPACKET = 0x112
+ DLT_FC_2 = 0xe0
+ DLT_FC_2_WITH_FRAME_DELIMS = 0xe1
+ DLT_FDDI = 0xa
+@@ -404,7 +426,6 @@ const (
+ DLT_GPRS_LLC = 0xa9
+ DLT_GSMTAP_ABIS = 0xda
+ DLT_GSMTAP_UM = 0xd9
+- DLT_HHDLC = 0x79
+ DLT_IBM_SN = 0x92
+ DLT_IBM_SP = 0x91
+ DLT_IEEE802 = 0x6
+@@ -427,6 +448,7 @@ const (
+ DLT_IPV4 = 0xe4
+ DLT_IPV6 = 0xe5
+ DLT_IP_OVER_FC = 0x7a
++ DLT_ISO_14443 = 0x108
+ DLT_JUNIPER_ATM1 = 0x89
+ DLT_JUNIPER_ATM2 = 0x87
+ DLT_JUNIPER_ATM_CEMIC = 0xee
+@@ -459,8 +481,9 @@ const (
+ DLT_LINUX_PPP_WITHDIRECTION = 0xa6
+ DLT_LINUX_SLL = 0x71
+ DLT_LOOP = 0x6c
++ DLT_LORATAP = 0x10e
+ DLT_LTALK = 0x72
+- DLT_MATCHING_MAX = 0x104
++ DLT_MATCHING_MAX = 0x113
+ DLT_MATCHING_MIN = 0x68
+ DLT_MFR = 0xb6
+ DLT_MOST = 0xd3
+@@ -476,14 +499,16 @@ const (
+ DLT_NFC_LLCP = 0xf5
+ DLT_NFLOG = 0xef
+ DLT_NG40 = 0xf4
++ DLT_NORDIC_BLE = 0x110
+ DLT_NULL = 0x0
++ DLT_OPENFLOW = 0x10b
+ DLT_PCI_EXP = 0x7d
+ DLT_PFLOG = 0x75
+ DLT_PFSYNC = 0x79
+ DLT_PKTAP = 0x102
+ DLT_PPI = 0xc0
+ DLT_PPP = 0x9
+- DLT_PPP_BSDOS = 0x10
++ DLT_PPP_BSDOS = 0xe
+ DLT_PPP_ETHER = 0x33
+ DLT_PPP_PPPD = 0xa6
+ DLT_PPP_SERIAL = 0x32
+@@ -494,19 +519,25 @@ const (
+ DLT_PRONET = 0x4
+ DLT_RAIF1 = 0xc6
+ DLT_RAW = 0xc
++ DLT_RDS = 0x109
++ DLT_REDBACK_SMARTEDGE = 0x20
+ DLT_RIO = 0x7c
+ DLT_RTAC_SERIAL = 0xfa
+ DLT_SCCP = 0x8e
+ DLT_SCTP = 0xf8
++ DLT_SDLC = 0x10c
+ DLT_SITA = 0xc4
+ DLT_SLIP = 0x8
+- DLT_SLIP_BSDOS = 0xf
++ DLT_SLIP_BSDOS = 0xd
+ DLT_STANAG_5066_D_PDU = 0xed
+ DLT_SUNATM = 0x7b
+ DLT_SYMANTEC_FIREWALL = 0x63
++ DLT_TI_LLN_SNIFFER = 0x10d
+ DLT_TZSP = 0x80
+ DLT_USB = 0xba
+ DLT_USBPCAP = 0xf9
++ DLT_USB_DARWIN = 0x10a
++ DLT_USB_FREEBSD = 0xba
+ DLT_USB_LINUX = 0xbd
+ DLT_USB_LINUX_MMAPPED = 0xdc
+ DLT_USER0 = 0x93
+@@ -525,10 +556,14 @@ const (
+ DLT_USER7 = 0x9a
+ DLT_USER8 = 0x9b
+ DLT_USER9 = 0x9c
++ DLT_VSOCK = 0x10f
++ DLT_WATTSTOPPER_DLM = 0x107
+ DLT_WIHART = 0xdf
+ DLT_WIRESHARK_UPPER_PDU = 0xfc
+ DLT_X2E_SERIAL = 0xd5
+ DLT_X2E_XORAYA = 0xd6
++ DLT_ZWAVE_R1_R2 = 0x105
++ DLT_ZWAVE_R3 = 0x106
+ DT_BLK = 0x6
+ DT_CHR = 0x2
+ DT_DIR = 0x4
+@@ -546,6 +581,7 @@ const (
+ ECHONL = 0x10
+ ECHOPRT = 0x20
+ EVFILT_AIO = -0x3
++ EVFILT_EMPTY = -0xd
+ EVFILT_FS = -0x9
+ EVFILT_LIO = -0xa
+ EVFILT_PROC = -0x5
+@@ -553,11 +589,12 @@ const (
+ EVFILT_READ = -0x1
+ EVFILT_SENDFILE = -0xc
+ EVFILT_SIGNAL = -0x6
+- EVFILT_SYSCOUNT = 0xc
++ EVFILT_SYSCOUNT = 0xd
+ EVFILT_TIMER = -0x7
+ EVFILT_USER = -0xb
+ EVFILT_VNODE = -0x4
+ EVFILT_WRITE = -0x2
++ EVNAMEMAP_NAME_SIZE = 0x40
+ EV_ADD = 0x1
+ EV_CLEAR = 0x20
+ EV_DELETE = 0x2
+@@ -574,6 +611,7 @@ const (
+ EV_RECEIPT = 0x40
+ EV_SYSFLAGS = 0xf000
+ EXTA = 0x4b00
++ EXTATTR_MAXNAMELEN = 0xff
+ EXTATTR_NAMESPACE_EMPTY = 0x0
+ EXTATTR_NAMESPACE_SYSTEM = 0x2
+ EXTATTR_NAMESPACE_USER = 0x1
+@@ -608,12 +646,14 @@ const (
+ F_UNLCKSYS = 0x4
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+ IEXTEN = 0x400
+ IFAN_ARRIVAL = 0x0
+ IFAN_DEPARTURE = 0x1
++ IFCAP_WOL_MAGIC = 0x2000
+ IFF_ALLMULTI = 0x200
+ IFF_ALTPHYS = 0x4000
+ IFF_BROADCAST = 0x2
+@@ -630,6 +670,7 @@ const (
+ IFF_MONITOR = 0x40000
+ IFF_MULTICAST = 0x8000
+ IFF_NOARP = 0x80
++ IFF_NOGROUP = 0x800000
+ IFF_OACTIVE = 0x400
+ IFF_POINTOPOINT = 0x10
+ IFF_PPROMISC = 0x20000
+@@ -804,6 +845,7 @@ const (
+ IPV6_DSTOPTS = 0x32
+ IPV6_FLOWID = 0x43
+ IPV6_FLOWINFO_MASK = 0xffffff0f
++ IPV6_FLOWLABEL_LEN = 0x14
+ IPV6_FLOWLABEL_MASK = 0xffff0f00
+ IPV6_FLOWTYPE = 0x44
+ IPV6_FRAGTTL = 0x78
+@@ -824,13 +866,13 @@ const (
+ IPV6_MAX_GROUP_SRC_FILTER = 0x200
+ IPV6_MAX_MEMBERSHIPS = 0xfff
+ IPV6_MAX_SOCK_SRC_FILTER = 0x80
+- IPV6_MIN_MEMBERSHIPS = 0x1f
+ IPV6_MMTU = 0x500
+ IPV6_MSFILTER = 0x4a
+ IPV6_MULTICAST_HOPS = 0xa
+ IPV6_MULTICAST_IF = 0x9
+ IPV6_MULTICAST_LOOP = 0xb
+ IPV6_NEXTHOP = 0x30
++ IPV6_ORIGDSTADDR = 0x48
+ IPV6_PATHMTU = 0x2c
+ IPV6_PKTINFO = 0x2e
+ IPV6_PORTRANGE = 0xe
+@@ -842,6 +884,7 @@ const (
+ IPV6_RECVFLOWID = 0x46
+ IPV6_RECVHOPLIMIT = 0x25
+ IPV6_RECVHOPOPTS = 0x27
++ IPV6_RECVORIGDSTADDR = 0x48
+ IPV6_RECVPATHMTU = 0x2b
+ IPV6_RECVPKTINFO = 0x24
+ IPV6_RECVRSSBUCKETID = 0x47
+@@ -902,10 +945,8 @@ const (
+ IP_MAX_MEMBERSHIPS = 0xfff
+ IP_MAX_SOCK_MUTE_FILTER = 0x80
+ IP_MAX_SOCK_SRC_FILTER = 0x80
+- IP_MAX_SOURCE_FILTER = 0x400
+ IP_MF = 0x2000
+ IP_MINTTL = 0x42
+- IP_MIN_MEMBERSHIPS = 0x1f
+ IP_MSFILTER = 0x4a
+ IP_MSS = 0x240
+ IP_MULTICAST_IF = 0x9
+@@ -915,6 +956,7 @@ const (
+ IP_OFFMASK = 0x1fff
+ IP_ONESBCAST = 0x17
+ IP_OPTIONS = 0x1
++ IP_ORIGDSTADDR = 0x1b
+ IP_PORTRANGE = 0x13
+ IP_PORTRANGE_DEFAULT = 0x0
+ IP_PORTRANGE_HIGH = 0x1
+@@ -923,6 +965,7 @@ const (
+ IP_RECVFLOWID = 0x5d
+ IP_RECVIF = 0x14
+ IP_RECVOPTS = 0x5
++ IP_RECVORIGDSTADDR = 0x1b
+ IP_RECVRETOPTS = 0x6
+ IP_RECVRSSBUCKETID = 0x5e
+ IP_RECVTOS = 0x44
+@@ -944,6 +987,10 @@ const (
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+ LOCK_SH = 0x1
+@@ -969,6 +1016,7 @@ const (
+ MAP_EXCL = 0x4000
+ MAP_FILE = 0x0
+ MAP_FIXED = 0x10
++ MAP_GUARD = 0x2000
+ MAP_HASSEMAPHORE = 0x200
+ MAP_NOCORE = 0x20000
+ MAP_NOSYNC = 0x800
+@@ -980,8 +1028,62 @@ const (
+ MAP_RESERVED0100 = 0x100
+ MAP_SHARED = 0x1
+ MAP_STACK = 0x400
++ MCAST_BLOCK_SOURCE = 0x54
++ MCAST_EXCLUDE = 0x2
++ MCAST_INCLUDE = 0x1
++ MCAST_JOIN_GROUP = 0x50
++ MCAST_JOIN_SOURCE_GROUP = 0x52
++ MCAST_LEAVE_GROUP = 0x51
++ MCAST_LEAVE_SOURCE_GROUP = 0x53
++ MCAST_UNBLOCK_SOURCE = 0x55
++ MCAST_UNDEFINED = 0x0
+ MCL_CURRENT = 0x1
+ MCL_FUTURE = 0x2
++ MNT_ACLS = 0x8000000
++ MNT_ASYNC = 0x40
++ MNT_AUTOMOUNTED = 0x200000000
++ MNT_BYFSID = 0x8000000
++ MNT_CMDFLAGS = 0xd0f0000
++ MNT_DEFEXPORTED = 0x200
++ MNT_DELEXPORT = 0x20000
++ MNT_EXKERB = 0x800
++ MNT_EXPORTANON = 0x400
++ MNT_EXPORTED = 0x100
++ MNT_EXPUBLIC = 0x20000000
++ MNT_EXRDONLY = 0x80
++ MNT_FORCE = 0x80000
++ MNT_GJOURNAL = 0x2000000
++ MNT_IGNORE = 0x800000
++ MNT_LAZY = 0x3
++ MNT_LOCAL = 0x1000
++ MNT_MULTILABEL = 0x4000000
++ MNT_NFS4ACLS = 0x10
++ MNT_NOATIME = 0x10000000
++ MNT_NOCLUSTERR = 0x40000000
++ MNT_NOCLUSTERW = 0x80000000
++ MNT_NOEXEC = 0x4
++ MNT_NONBUSY = 0x4000000
++ MNT_NOSUID = 0x8
++ MNT_NOSYMFOLLOW = 0x400000
++ MNT_NOWAIT = 0x2
++ MNT_QUOTA = 0x2000
++ MNT_RDONLY = 0x1
++ MNT_RELOAD = 0x40000
++ MNT_ROOTFS = 0x4000
++ MNT_SNAPSHOT = 0x1000000
++ MNT_SOFTDEP = 0x200000
++ MNT_SUIDDIR = 0x100000
++ MNT_SUJ = 0x100000000
++ MNT_SUSPEND = 0x4
++ MNT_SYNCHRONOUS = 0x2
++ MNT_UNION = 0x20
++ MNT_UNTRUSTED = 0x800000000
++ MNT_UPDATE = 0x10000
++ MNT_UPDATEMASK = 0xad8d0807e
++ MNT_USER = 0x8000
++ MNT_VERIFIED = 0x400000000
++ MNT_VISFLAGMASK = 0xffef0ffff
++ MNT_WAIT = 0x1
+ MSG_CMSG_CLOEXEC = 0x40000
+ MSG_COMPAT = 0x8000
+ MSG_CTRUNC = 0x20
+@@ -1006,8 +1108,10 @@ const (
+ NET_RT_IFLIST = 0x3
+ NET_RT_IFLISTL = 0x5
+ NET_RT_IFMALIST = 0x4
++ NFDBITS = 0x40
+ NOFLSH = 0x80000000
+ NOKERNINFO = 0x2000000
++ NOTE_ABSTIME = 0x10
+ NOTE_ATTRIB = 0x8
+ NOTE_CHILD = 0x4
+ NOTE_CLOSE = 0x100
+@@ -1162,7 +1266,6 @@ const (
+ RTV_WEIGHT = 0x100
+ RT_ALL_FIBS = -0x1
+ RT_BLACKHOLE = 0x40
+- RT_CACHING_CONTEXT = 0x1
+ RT_DEFAULT_FIB = 0x0
+ RT_HAS_GW = 0x80
+ RT_HAS_HEADER = 0x10
+@@ -1172,15 +1275,17 @@ const (
+ RT_LLE_CACHE = 0x100
+ RT_MAY_LOOP = 0x8
+ RT_MAY_LOOP_BIT = 0x3
+- RT_NORTREF = 0x2
+ RT_REJECT = 0x20
+ RUSAGE_CHILDREN = -0x1
+ RUSAGE_SELF = 0x0
+ RUSAGE_THREAD = 0x1
+ SCM_BINTIME = 0x4
+ SCM_CREDS = 0x3
++ SCM_MONOTONIC = 0x6
++ SCM_REALTIME = 0x5
+ SCM_RIGHTS = 0x1
+ SCM_TIMESTAMP = 0x2
++ SCM_TIME_INFO = 0x7
+ SHUT_RD = 0x0
+ SHUT_RDWR = 0x2
+ SHUT_WR = 0x1
+@@ -1196,6 +1301,7 @@ const (
+ SIOCGETSGCNT = 0xc0207210
+ SIOCGETVIFCNT = 0xc028720f
+ SIOCGHIWAT = 0x40047301
++ SIOCGHWADDR = 0xc020693e
+ SIOCGI2C = 0xc020693d
+ SIOCGIFADDR = 0xc0206921
+ SIOCGIFBRDADDR = 0xc0206923
+@@ -1217,8 +1323,11 @@ const (
+ SIOCGIFPDSTADDR = 0xc0206948
+ SIOCGIFPHYS = 0xc0206935
+ SIOCGIFPSRCADDR = 0xc0206947
++ SIOCGIFRSSHASH = 0xc0186997
++ SIOCGIFRSSKEY = 0xc0946996
+ SIOCGIFSTATUS = 0xc331693b
+ SIOCGIFXMEDIA = 0xc030698b
++ SIOCGLANPCP = 0xc0206998
+ SIOCGLOWAT = 0x40047303
+ SIOCGPGRP = 0x40047309
+ SIOCGPRIVATE_0 = 0xc0206950
+@@ -1249,6 +1358,7 @@ const (
+ SIOCSIFPHYS = 0x80206936
+ SIOCSIFRVNET = 0xc020695b
+ SIOCSIFVNET = 0xc020695a
++ SIOCSLANPCP = 0x80206999
+ SIOCSLOWAT = 0x80047302
+ SIOCSPGRP = 0x80047308
+ SIOCSTUNFIB = 0x8020695f
+@@ -1267,6 +1377,7 @@ const (
+ SO_BINTIME = 0x2000
+ SO_BROADCAST = 0x20
+ SO_DEBUG = 0x1
++ SO_DOMAIN = 0x1019
+ SO_DONTROUTE = 0x10
+ SO_ERROR = 0x1007
+ SO_KEEPALIVE = 0x8
+@@ -1275,6 +1386,7 @@ const (
+ SO_LISTENINCQLEN = 0x1013
+ SO_LISTENQLEN = 0x1012
+ SO_LISTENQLIMIT = 0x1011
++ SO_MAX_PACING_RATE = 0x1018
+ SO_NOSIGPIPE = 0x800
+ SO_NO_DDP = 0x8000
+ SO_NO_OFFLOAD = 0x4000
+@@ -1287,15 +1399,52 @@ const (
+ SO_RCVTIMEO = 0x1006
+ SO_REUSEADDR = 0x4
+ SO_REUSEPORT = 0x200
++ SO_REUSEPORT_LB = 0x10000
+ SO_SETFIB = 0x1014
+ SO_SNDBUF = 0x1001
+ SO_SNDLOWAT = 0x1003
+ SO_SNDTIMEO = 0x1005
+ SO_TIMESTAMP = 0x400
++ SO_TS_BINTIME = 0x1
++ SO_TS_CLOCK = 0x1017
++ SO_TS_CLOCK_MAX = 0x3
++ SO_TS_DEFAULT = 0x0
++ SO_TS_MONOTONIC = 0x3
++ SO_TS_REALTIME = 0x2
++ SO_TS_REALTIME_MICRO = 0x0
+ SO_TYPE = 0x1008
+ SO_USELOOPBACK = 0x40
+ SO_USER_COOKIE = 0x1015
+ SO_VENDOR = 0x80000000
++ S_BLKSIZE = 0x200
++ S_IEXEC = 0x40
++ S_IFBLK = 0x6000
++ S_IFCHR = 0x2000
++ S_IFDIR = 0x4000
++ S_IFIFO = 0x1000
++ S_IFLNK = 0xa000
++ S_IFMT = 0xf000
++ S_IFREG = 0x8000
++ S_IFSOCK = 0xc000
++ S_IFWHT = 0xe000
++ S_IREAD = 0x100
++ S_IRGRP = 0x20
++ S_IROTH = 0x4
++ S_IRUSR = 0x100
++ S_IRWXG = 0x38
++ S_IRWXO = 0x7
++ S_IRWXU = 0x1c0
++ S_ISGID = 0x400
++ S_ISTXT = 0x200
++ S_ISUID = 0x800
++ S_ISVTX = 0x200
++ S_IWGRP = 0x10
++ S_IWOTH = 0x2
++ S_IWRITE = 0x80
++ S_IWUSR = 0x80
++ S_IXGRP = 0x8
++ S_IXOTH = 0x1
++ S_IXUSR = 0x40
+ TAB0 = 0x0
+ TAB3 = 0x4
+ TABDLY = 0x4
+@@ -1306,10 +1455,45 @@ const (
+ TCOFLUSH = 0x2
+ TCOOFF = 0x1
+ TCOON = 0x2
++ TCP_BBR_ACK_COMP_ALG = 0x448
++ TCP_BBR_DRAIN_INC_EXTRA = 0x43c
++ TCP_BBR_DRAIN_PG = 0x42e
++ TCP_BBR_EXTRA_GAIN = 0x449
++ TCP_BBR_IWINTSO = 0x42b
++ TCP_BBR_LOWGAIN_FD = 0x436
++ TCP_BBR_LOWGAIN_HALF = 0x435
++ TCP_BBR_LOWGAIN_THRESH = 0x434
++ TCP_BBR_MAX_RTO = 0x439
++ TCP_BBR_MIN_RTO = 0x438
++ TCP_BBR_ONE_RETRAN = 0x431
++ TCP_BBR_PACE_CROSS = 0x442
++ TCP_BBR_PACE_DEL_TAR = 0x43f
++ TCP_BBR_PACE_PER_SEC = 0x43e
++ TCP_BBR_PACE_SEG_MAX = 0x440
++ TCP_BBR_PACE_SEG_MIN = 0x441
++ TCP_BBR_PROBE_RTT_GAIN = 0x44d
++ TCP_BBR_PROBE_RTT_INT = 0x430
++ TCP_BBR_PROBE_RTT_LEN = 0x44e
++ TCP_BBR_RACK_RTT_USE = 0x44a
++ TCP_BBR_RECFORCE = 0x42c
++ TCP_BBR_REC_OVER_HPTS = 0x43a
++ TCP_BBR_RETRAN_WTSO = 0x44b
++ TCP_BBR_RWND_IS_APP = 0x42f
++ TCP_BBR_STARTUP_EXIT_EPOCH = 0x43d
++ TCP_BBR_STARTUP_LOSS_EXIT = 0x432
++ TCP_BBR_STARTUP_PG = 0x42d
++ TCP_BBR_UNLIMITED = 0x43b
++ TCP_BBR_USEDEL_RATE = 0x437
++ TCP_BBR_USE_LOWGAIN = 0x433
+ TCP_CA_NAME_MAX = 0x10
+ TCP_CCALGOOPT = 0x41
+ TCP_CONGESTION = 0x40
++ TCP_DATA_AFTER_CLOSE = 0x44c
++ TCP_DELACK = 0x48
+ TCP_FASTOPEN = 0x401
++ TCP_FASTOPEN_MAX_COOKIE_LEN = 0x10
++ TCP_FASTOPEN_MIN_COOKIE_LEN = 0x4
++ TCP_FASTOPEN_PSK_LEN = 0x10
+ TCP_FUNCTION_BLK = 0x2000
+ TCP_FUNCTION_NAME_LEN_MAX = 0x20
+ TCP_INFO = 0x20
+@@ -1317,6 +1501,12 @@ const (
+ TCP_KEEPIDLE = 0x100
+ TCP_KEEPINIT = 0x80
+ TCP_KEEPINTVL = 0x200
++ TCP_LOG = 0x22
++ TCP_LOGBUF = 0x23
++ TCP_LOGDUMP = 0x25
++ TCP_LOGDUMPID = 0x26
++ TCP_LOGID = 0x24
++ TCP_LOG_ID_LEN = 0x40
+ TCP_MAXBURST = 0x4
+ TCP_MAXHLEN = 0x3c
+ TCP_MAXOLEN = 0x28
+@@ -1332,8 +1522,30 @@ const (
+ TCP_NOPUSH = 0x4
+ TCP_PCAP_IN = 0x1000
+ TCP_PCAP_OUT = 0x800
++ TCP_RACK_EARLY_RECOV = 0x423
++ TCP_RACK_EARLY_SEG = 0x424
++ TCP_RACK_IDLE_REDUCE_HIGH = 0x444
++ TCP_RACK_MIN_PACE = 0x445
++ TCP_RACK_MIN_PACE_SEG = 0x446
++ TCP_RACK_MIN_TO = 0x422
++ TCP_RACK_PACE_ALWAYS = 0x41f
++ TCP_RACK_PACE_MAX_SEG = 0x41e
++ TCP_RACK_PACE_REDUCE = 0x41d
++ TCP_RACK_PKT_DELAY = 0x428
++ TCP_RACK_PROP = 0x41b
++ TCP_RACK_PROP_RATE = 0x420
++ TCP_RACK_PRR_SENDALOT = 0x421
++ TCP_RACK_REORD_FADE = 0x426
++ TCP_RACK_REORD_THRESH = 0x425
++ TCP_RACK_SESS_CWV = 0x42a
++ TCP_RACK_TLP_INC_VAR = 0x429
++ TCP_RACK_TLP_REDUCE = 0x41c
++ TCP_RACK_TLP_THRESH = 0x427
++ TCP_RACK_TLP_USE = 0x447
+ TCP_VENDOR = 0x80000000
+ TCSAFLUSH = 0x2
++ TIMER_ABSTIME = 0x1
++ TIMER_RELTIME = 0x0
+ TIOCCBRK = 0x2000747a
+ TIOCCDTR = 0x20007478
+ TIOCCONS = 0x80047462
+@@ -1397,6 +1609,8 @@ const (
+ TIOCTIMESTAMP = 0x40107459
+ TIOCUCNTL = 0x80047466
+ TOSTOP = 0x400000
++ UTIME_NOW = -0x1
++ UTIME_OMIT = -0x2
+ VDISCARD = 0xf
+ VDSUSP = 0xb
+ VEOF = 0x0
+@@ -1570,138 +1784,146 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "operation timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "identifier removed",
+- 83: "no message of desired type",
+- 84: "value too large to be stored in data type",
+- 85: "operation canceled",
+- 86: "illegal byte sequence",
+- 87: "attribute not found",
+- 88: "programming error",
+- 89: "bad message",
+- 90: "multihop attempted",
+- 91: "link has been severed",
+- 92: "protocol error",
+- 93: "capabilities insufficient",
+- 94: "not permitted in capability mode",
+- 95: "state not recoverable",
+- 96: "previous owner died",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large"},
++ {35, "EAGAIN", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "EOPNOTSUPP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "operation timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disc quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EIDRM", "identifier removed"},
++ {83, "ENOMSG", "no message of desired type"},
++ {84, "EOVERFLOW", "value too large to be stored in data type"},
++ {85, "ECANCELED", "operation canceled"},
++ {86, "EILSEQ", "illegal byte sequence"},
++ {87, "ENOATTR", "attribute not found"},
++ {88, "EDOOFUS", "programming error"},
++ {89, "EBADMSG", "bad message"},
++ {90, "EMULTIHOP", "multihop attempted"},
++ {91, "ENOLINK", "link has been severed"},
++ {92, "EPROTO", "protocol error"},
++ {93, "ENOTCAPABLE", "capabilities insufficient"},
++ {94, "ECAPMODE", "not permitted in capability mode"},
++ {95, "ENOTRECOVERABLE", "state not recoverable"},
++ {96, "EOWNERDEAD", "previous owner died"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "suspended (signal)",
+- 18: "suspended",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
+- 32: "unknown signal",
+- 33: "unknown signal",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGIOT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "suspended (signal)"},
++ {18, "SIGTSTP", "suspended"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
++ {32, "SIGTHR", "unknown signal"},
++ {33, "SIGLIBRT", "unknown signal"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go b/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go
+index c5c6f13e..e4719873 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go
+@@ -3,7 +3,7 @@
+
+ // +build arm,freebsd
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- _const.go
+
+ package unix
+@@ -351,8 +351,26 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0x18
+ CTL_NET = 0x4
++ DIOCGATTR = 0xc144648e
++ DIOCGDELETE = 0x80106488
++ DIOCGFLUSH = 0x20006487
++ DIOCGFRONTSTUFF = 0x40086486
++ DIOCGFWHEADS = 0x40046483
++ DIOCGFWSECTORS = 0x40046482
++ DIOCGIDENT = 0x41006489
++ DIOCGMEDIASIZE = 0x40086481
++ DIOCGPHYSPATH = 0x4400648d
++ DIOCGPROVIDERNAME = 0x4400648a
++ DIOCGSECTORSIZE = 0x40046480
++ DIOCGSTRIPEOFFSET = 0x4008648c
++ DIOCGSTRIPESIZE = 0x4008648b
++ DIOCSKERNELDUMP = 0x804c6490
++ DIOCSKERNELDUMP_FREEBSD11 = 0x80046485
++ DIOCZONECMD = 0xc06c648f
+ DLT_A429 = 0xb8
+ DLT_A653_ICM = 0xb9
+ DLT_AIRONET_HEADER = 0x78
+@@ -615,6 +633,7 @@ const (
+ F_UNLCKSYS = 0x4
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+@@ -951,6 +970,10 @@ const (
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+ LOCK_SH = 0x1
+@@ -989,6 +1012,49 @@ const (
+ MAP_STACK = 0x400
+ MCL_CURRENT = 0x1
+ MCL_FUTURE = 0x2
++ MNT_ACLS = 0x8000000
++ MNT_ASYNC = 0x40
++ MNT_AUTOMOUNTED = 0x200000000
++ MNT_BYFSID = 0x8000000
++ MNT_CMDFLAGS = 0xd0f0000
++ MNT_DEFEXPORTED = 0x200
++ MNT_DELEXPORT = 0x20000
++ MNT_EXKERB = 0x800
++ MNT_EXPORTANON = 0x400
++ MNT_EXPORTED = 0x100
++ MNT_EXPUBLIC = 0x20000000
++ MNT_EXRDONLY = 0x80
++ MNT_FORCE = 0x80000
++ MNT_GJOURNAL = 0x2000000
++ MNT_IGNORE = 0x800000
++ MNT_LAZY = 0x3
++ MNT_LOCAL = 0x1000
++ MNT_MULTILABEL = 0x4000000
++ MNT_NFS4ACLS = 0x10
++ MNT_NOATIME = 0x10000000
++ MNT_NOCLUSTERR = 0x40000000
++ MNT_NOCLUSTERW = 0x80000000
++ MNT_NOEXEC = 0x4
++ MNT_NONBUSY = 0x4000000
++ MNT_NOSUID = 0x8
++ MNT_NOSYMFOLLOW = 0x400000
++ MNT_NOWAIT = 0x2
++ MNT_QUOTA = 0x2000
++ MNT_RDONLY = 0x1
++ MNT_RELOAD = 0x40000
++ MNT_ROOTFS = 0x4000
++ MNT_SNAPSHOT = 0x1000000
++ MNT_SOFTDEP = 0x200000
++ MNT_SUIDDIR = 0x100000
++ MNT_SUJ = 0x100000000
++ MNT_SUSPEND = 0x4
++ MNT_SYNCHRONOUS = 0x2
++ MNT_UNION = 0x20
++ MNT_UPDATE = 0x10000
++ MNT_UPDATEMASK = 0x2d8d0807e
++ MNT_USER = 0x8000
++ MNT_VISFLAGMASK = 0x3fef0ffff
++ MNT_WAIT = 0x1
+ MSG_CMSG_CLOEXEC = 0x40000
+ MSG_COMPAT = 0x8000
+ MSG_CTRUNC = 0x20
+@@ -1013,6 +1079,7 @@ const (
+ NET_RT_IFLIST = 0x3
+ NET_RT_IFLISTL = 0x5
+ NET_RT_IFMALIST = 0x4
++ NFDBITS = 0x20
+ NOFLSH = 0x80000000
+ NOKERNINFO = 0x2000000
+ NOTE_ATTRIB = 0x8
+@@ -1304,6 +1371,35 @@ const (
+ SO_USELOOPBACK = 0x40
+ SO_USER_COOKIE = 0x1015
+ SO_VENDOR = 0x80000000
++ S_BLKSIZE = 0x200
++ S_IEXEC = 0x40
++ S_IFBLK = 0x6000
++ S_IFCHR = 0x2000
++ S_IFDIR = 0x4000
++ S_IFIFO = 0x1000
++ S_IFLNK = 0xa000
++ S_IFMT = 0xf000
++ S_IFREG = 0x8000
++ S_IFSOCK = 0xc000
++ S_IFWHT = 0xe000
++ S_IREAD = 0x100
++ S_IRGRP = 0x20
++ S_IROTH = 0x4
++ S_IRUSR = 0x100
++ S_IRWXG = 0x38
++ S_IRWXO = 0x7
++ S_IRWXU = 0x1c0
++ S_ISGID = 0x400
++ S_ISTXT = 0x200
++ S_ISUID = 0x800
++ S_ISVTX = 0x200
++ S_IWGRP = 0x10
++ S_IWOTH = 0x2
++ S_IWRITE = 0x80
++ S_IWUSR = 0x80
++ S_IXGRP = 0x8
++ S_IXOTH = 0x1
++ S_IXUSR = 0x40
+ TAB0 = 0x0
+ TAB3 = 0x4
+ TABDLY = 0x4
+@@ -1578,138 +1674,146 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "operation timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "identifier removed",
+- 83: "no message of desired type",
+- 84: "value too large to be stored in data type",
+- 85: "operation canceled",
+- 86: "illegal byte sequence",
+- 87: "attribute not found",
+- 88: "programming error",
+- 89: "bad message",
+- 90: "multihop attempted",
+- 91: "link has been severed",
+- 92: "protocol error",
+- 93: "capabilities insufficient",
+- 94: "not permitted in capability mode",
+- 95: "state not recoverable",
+- 96: "previous owner died",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large"},
++ {35, "EAGAIN", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "EOPNOTSUPP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "operation timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disc quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EIDRM", "identifier removed"},
++ {83, "ENOMSG", "no message of desired type"},
++ {84, "EOVERFLOW", "value too large to be stored in data type"},
++ {85, "ECANCELED", "operation canceled"},
++ {86, "EILSEQ", "illegal byte sequence"},
++ {87, "ENOATTR", "attribute not found"},
++ {88, "EDOOFUS", "programming error"},
++ {89, "EBADMSG", "bad message"},
++ {90, "EMULTIHOP", "multihop attempted"},
++ {91, "ENOLINK", "link has been severed"},
++ {92, "EPROTO", "protocol error"},
++ {93, "ENOTCAPABLE", "capabilities insufficient"},
++ {94, "ECAPMODE", "not permitted in capability mode"},
++ {95, "ENOTRECOVERABLE", "state not recoverable"},
++ {96, "EOWNERDEAD", "previous owner died"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "suspended (signal)",
+- 18: "suspended",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
+- 32: "unknown signal",
+- 33: "unknown signal",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGIOT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "suspended (signal)"},
++ {18, "SIGTSTP", "suspended"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
++ {32, "SIGTHR", "unknown signal"},
++ {33, "SIGLIBRT", "unknown signal"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go
+similarity index 80%
+copy from vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
+copy to vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go
+index ac094f9c..5e49769d 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go
+@@ -1,9 +1,9 @@
+ // mkerrors.sh -m64
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build amd64,freebsd
++// +build arm64,freebsd
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+
+ package unix
+@@ -351,8 +351,26 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0x18
+ CTL_NET = 0x4
++ DIOCGATTR = 0xc148648e
++ DIOCGDELETE = 0x80106488
++ DIOCGFLUSH = 0x20006487
++ DIOCGFRONTSTUFF = 0x40086486
++ DIOCGFWHEADS = 0x40046483
++ DIOCGFWSECTORS = 0x40046482
++ DIOCGIDENT = 0x41006489
++ DIOCGMEDIASIZE = 0x40086481
++ DIOCGPHYSPATH = 0x4400648d
++ DIOCGPROVIDERNAME = 0x4400648a
++ DIOCGSECTORSIZE = 0x40046480
++ DIOCGSTRIPEOFFSET = 0x4008648c
++ DIOCGSTRIPESIZE = 0x4008648b
++ DIOCSKERNELDUMP = 0x80506490
++ DIOCSKERNELDUMP_FREEBSD11 = 0x80046485
++ DIOCZONECMD = 0xc080648f
+ DLT_A429 = 0xb8
+ DLT_A653_ICM = 0xb9
+ DLT_AIRONET_HEADER = 0x78
+@@ -377,11 +395,14 @@ const (
+ DLT_CHAOS = 0x5
+ DLT_CHDLC = 0x68
+ DLT_CISCO_IOS = 0x76
++ DLT_CLASS_NETBSD_RAWAF = 0x2240000
+ DLT_C_HDLC = 0x68
+ DLT_C_HDLC_WITH_DIR = 0xcd
+ DLT_DBUS = 0xe7
+ DLT_DECT = 0xdd
++ DLT_DISPLAYPORT_AUX = 0x113
+ DLT_DOCSIS = 0x8f
++ DLT_DOCSIS31_XRA31 = 0x111
+ DLT_DVB_CI = 0xeb
+ DLT_ECONET = 0x73
+ DLT_EN10MB = 0x1
+@@ -391,6 +412,7 @@ const (
+ DLT_ERF = 0xc5
+ DLT_ERF_ETH = 0xaf
+ DLT_ERF_POS = 0xb0
++ DLT_ETHERNET_MPACKET = 0x112
+ DLT_FC_2 = 0xe0
+ DLT_FC_2_WITH_FRAME_DELIMS = 0xe1
+ DLT_FDDI = 0xa
+@@ -404,7 +426,6 @@ const (
+ DLT_GPRS_LLC = 0xa9
+ DLT_GSMTAP_ABIS = 0xda
+ DLT_GSMTAP_UM = 0xd9
+- DLT_HHDLC = 0x79
+ DLT_IBM_SN = 0x92
+ DLT_IBM_SP = 0x91
+ DLT_IEEE802 = 0x6
+@@ -427,6 +448,7 @@ const (
+ DLT_IPV4 = 0xe4
+ DLT_IPV6 = 0xe5
+ DLT_IP_OVER_FC = 0x7a
++ DLT_ISO_14443 = 0x108
+ DLT_JUNIPER_ATM1 = 0x89
+ DLT_JUNIPER_ATM2 = 0x87
+ DLT_JUNIPER_ATM_CEMIC = 0xee
+@@ -459,8 +481,9 @@ const (
+ DLT_LINUX_PPP_WITHDIRECTION = 0xa6
+ DLT_LINUX_SLL = 0x71
+ DLT_LOOP = 0x6c
++ DLT_LORATAP = 0x10e
+ DLT_LTALK = 0x72
+- DLT_MATCHING_MAX = 0x104
++ DLT_MATCHING_MAX = 0x113
+ DLT_MATCHING_MIN = 0x68
+ DLT_MFR = 0xb6
+ DLT_MOST = 0xd3
+@@ -476,14 +499,16 @@ const (
+ DLT_NFC_LLCP = 0xf5
+ DLT_NFLOG = 0xef
+ DLT_NG40 = 0xf4
++ DLT_NORDIC_BLE = 0x110
+ DLT_NULL = 0x0
++ DLT_OPENFLOW = 0x10b
+ DLT_PCI_EXP = 0x7d
+ DLT_PFLOG = 0x75
+ DLT_PFSYNC = 0x79
+ DLT_PKTAP = 0x102
+ DLT_PPI = 0xc0
+ DLT_PPP = 0x9
+- DLT_PPP_BSDOS = 0x10
++ DLT_PPP_BSDOS = 0xe
+ DLT_PPP_ETHER = 0x33
+ DLT_PPP_PPPD = 0xa6
+ DLT_PPP_SERIAL = 0x32
+@@ -494,19 +519,25 @@ const (
+ DLT_PRONET = 0x4
+ DLT_RAIF1 = 0xc6
+ DLT_RAW = 0xc
++ DLT_RDS = 0x109
++ DLT_REDBACK_SMARTEDGE = 0x20
+ DLT_RIO = 0x7c
+ DLT_RTAC_SERIAL = 0xfa
+ DLT_SCCP = 0x8e
+ DLT_SCTP = 0xf8
++ DLT_SDLC = 0x10c
+ DLT_SITA = 0xc4
+ DLT_SLIP = 0x8
+- DLT_SLIP_BSDOS = 0xf
++ DLT_SLIP_BSDOS = 0xd
+ DLT_STANAG_5066_D_PDU = 0xed
+ DLT_SUNATM = 0x7b
+ DLT_SYMANTEC_FIREWALL = 0x63
++ DLT_TI_LLN_SNIFFER = 0x10d
+ DLT_TZSP = 0x80
+ DLT_USB = 0xba
+ DLT_USBPCAP = 0xf9
++ DLT_USB_DARWIN = 0x10a
++ DLT_USB_FREEBSD = 0xba
+ DLT_USB_LINUX = 0xbd
+ DLT_USB_LINUX_MMAPPED = 0xdc
+ DLT_USER0 = 0x93
+@@ -525,10 +556,14 @@ const (
+ DLT_USER7 = 0x9a
+ DLT_USER8 = 0x9b
+ DLT_USER9 = 0x9c
++ DLT_VSOCK = 0x10f
++ DLT_WATTSTOPPER_DLM = 0x107
+ DLT_WIHART = 0xdf
+ DLT_WIRESHARK_UPPER_PDU = 0xfc
+ DLT_X2E_SERIAL = 0xd5
+ DLT_X2E_XORAYA = 0xd6
++ DLT_ZWAVE_R1_R2 = 0x105
++ DLT_ZWAVE_R3 = 0x106
+ DT_BLK = 0x6
+ DT_CHR = 0x2
+ DT_DIR = 0x4
+@@ -546,6 +581,7 @@ const (
+ ECHONL = 0x10
+ ECHOPRT = 0x20
+ EVFILT_AIO = -0x3
++ EVFILT_EMPTY = -0xd
+ EVFILT_FS = -0x9
+ EVFILT_LIO = -0xa
+ EVFILT_PROC = -0x5
+@@ -553,11 +589,12 @@ const (
+ EVFILT_READ = -0x1
+ EVFILT_SENDFILE = -0xc
+ EVFILT_SIGNAL = -0x6
+- EVFILT_SYSCOUNT = 0xc
++ EVFILT_SYSCOUNT = 0xd
+ EVFILT_TIMER = -0x7
+ EVFILT_USER = -0xb
+ EVFILT_VNODE = -0x4
+ EVFILT_WRITE = -0x2
++ EVNAMEMAP_NAME_SIZE = 0x40
+ EV_ADD = 0x1
+ EV_CLEAR = 0x20
+ EV_DELETE = 0x2
+@@ -574,6 +611,7 @@ const (
+ EV_RECEIPT = 0x40
+ EV_SYSFLAGS = 0xf000
+ EXTA = 0x4b00
++ EXTATTR_MAXNAMELEN = 0xff
+ EXTATTR_NAMESPACE_EMPTY = 0x0
+ EXTATTR_NAMESPACE_SYSTEM = 0x2
+ EXTATTR_NAMESPACE_USER = 0x1
+@@ -608,12 +646,14 @@ const (
+ F_UNLCKSYS = 0x4
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+ IEXTEN = 0x400
+ IFAN_ARRIVAL = 0x0
+ IFAN_DEPARTURE = 0x1
++ IFCAP_WOL_MAGIC = 0x2000
+ IFF_ALLMULTI = 0x200
+ IFF_ALTPHYS = 0x4000
+ IFF_BROADCAST = 0x2
+@@ -630,6 +670,7 @@ const (
+ IFF_MONITOR = 0x40000
+ IFF_MULTICAST = 0x8000
+ IFF_NOARP = 0x80
++ IFF_NOGROUP = 0x800000
+ IFF_OACTIVE = 0x400
+ IFF_POINTOPOINT = 0x10
+ IFF_PPROMISC = 0x20000
+@@ -804,6 +845,7 @@ const (
+ IPV6_DSTOPTS = 0x32
+ IPV6_FLOWID = 0x43
+ IPV6_FLOWINFO_MASK = 0xffffff0f
++ IPV6_FLOWLABEL_LEN = 0x14
+ IPV6_FLOWLABEL_MASK = 0xffff0f00
+ IPV6_FLOWTYPE = 0x44
+ IPV6_FRAGTTL = 0x78
+@@ -824,13 +866,13 @@ const (
+ IPV6_MAX_GROUP_SRC_FILTER = 0x200
+ IPV6_MAX_MEMBERSHIPS = 0xfff
+ IPV6_MAX_SOCK_SRC_FILTER = 0x80
+- IPV6_MIN_MEMBERSHIPS = 0x1f
+ IPV6_MMTU = 0x500
+ IPV6_MSFILTER = 0x4a
+ IPV6_MULTICAST_HOPS = 0xa
+ IPV6_MULTICAST_IF = 0x9
+ IPV6_MULTICAST_LOOP = 0xb
+ IPV6_NEXTHOP = 0x30
++ IPV6_ORIGDSTADDR = 0x48
+ IPV6_PATHMTU = 0x2c
+ IPV6_PKTINFO = 0x2e
+ IPV6_PORTRANGE = 0xe
+@@ -842,6 +884,7 @@ const (
+ IPV6_RECVFLOWID = 0x46
+ IPV6_RECVHOPLIMIT = 0x25
+ IPV6_RECVHOPOPTS = 0x27
++ IPV6_RECVORIGDSTADDR = 0x48
+ IPV6_RECVPATHMTU = 0x2b
+ IPV6_RECVPKTINFO = 0x24
+ IPV6_RECVRSSBUCKETID = 0x47
+@@ -902,10 +945,8 @@ const (
+ IP_MAX_MEMBERSHIPS = 0xfff
+ IP_MAX_SOCK_MUTE_FILTER = 0x80
+ IP_MAX_SOCK_SRC_FILTER = 0x80
+- IP_MAX_SOURCE_FILTER = 0x400
+ IP_MF = 0x2000
+ IP_MINTTL = 0x42
+- IP_MIN_MEMBERSHIPS = 0x1f
+ IP_MSFILTER = 0x4a
+ IP_MSS = 0x240
+ IP_MULTICAST_IF = 0x9
+@@ -915,6 +956,7 @@ const (
+ IP_OFFMASK = 0x1fff
+ IP_ONESBCAST = 0x17
+ IP_OPTIONS = 0x1
++ IP_ORIGDSTADDR = 0x1b
+ IP_PORTRANGE = 0x13
+ IP_PORTRANGE_DEFAULT = 0x0
+ IP_PORTRANGE_HIGH = 0x1
+@@ -923,6 +965,7 @@ const (
+ IP_RECVFLOWID = 0x5d
+ IP_RECVIF = 0x14
+ IP_RECVOPTS = 0x5
++ IP_RECVORIGDSTADDR = 0x1b
+ IP_RECVRETOPTS = 0x6
+ IP_RECVRSSBUCKETID = 0x5e
+ IP_RECVTOS = 0x44
+@@ -944,6 +987,10 @@ const (
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+ LOCK_SH = 0x1
+@@ -969,6 +1016,7 @@ const (
+ MAP_EXCL = 0x4000
+ MAP_FILE = 0x0
+ MAP_FIXED = 0x10
++ MAP_GUARD = 0x2000
+ MAP_HASSEMAPHORE = 0x200
+ MAP_NOCORE = 0x20000
+ MAP_NOSYNC = 0x800
+@@ -980,8 +1028,62 @@ const (
+ MAP_RESERVED0100 = 0x100
+ MAP_SHARED = 0x1
+ MAP_STACK = 0x400
++ MCAST_BLOCK_SOURCE = 0x54
++ MCAST_EXCLUDE = 0x2
++ MCAST_INCLUDE = 0x1
++ MCAST_JOIN_GROUP = 0x50
++ MCAST_JOIN_SOURCE_GROUP = 0x52
++ MCAST_LEAVE_GROUP = 0x51
++ MCAST_LEAVE_SOURCE_GROUP = 0x53
++ MCAST_UNBLOCK_SOURCE = 0x55
++ MCAST_UNDEFINED = 0x0
+ MCL_CURRENT = 0x1
+ MCL_FUTURE = 0x2
++ MNT_ACLS = 0x8000000
++ MNT_ASYNC = 0x40
++ MNT_AUTOMOUNTED = 0x200000000
++ MNT_BYFSID = 0x8000000
++ MNT_CMDFLAGS = 0xd0f0000
++ MNT_DEFEXPORTED = 0x200
++ MNT_DELEXPORT = 0x20000
++ MNT_EXKERB = 0x800
++ MNT_EXPORTANON = 0x400
++ MNT_EXPORTED = 0x100
++ MNT_EXPUBLIC = 0x20000000
++ MNT_EXRDONLY = 0x80
++ MNT_FORCE = 0x80000
++ MNT_GJOURNAL = 0x2000000
++ MNT_IGNORE = 0x800000
++ MNT_LAZY = 0x3
++ MNT_LOCAL = 0x1000
++ MNT_MULTILABEL = 0x4000000
++ MNT_NFS4ACLS = 0x10
++ MNT_NOATIME = 0x10000000
++ MNT_NOCLUSTERR = 0x40000000
++ MNT_NOCLUSTERW = 0x80000000
++ MNT_NOEXEC = 0x4
++ MNT_NONBUSY = 0x4000000
++ MNT_NOSUID = 0x8
++ MNT_NOSYMFOLLOW = 0x400000
++ MNT_NOWAIT = 0x2
++ MNT_QUOTA = 0x2000
++ MNT_RDONLY = 0x1
++ MNT_RELOAD = 0x40000
++ MNT_ROOTFS = 0x4000
++ MNT_SNAPSHOT = 0x1000000
++ MNT_SOFTDEP = 0x200000
++ MNT_SUIDDIR = 0x100000
++ MNT_SUJ = 0x100000000
++ MNT_SUSPEND = 0x4
++ MNT_SYNCHRONOUS = 0x2
++ MNT_UNION = 0x20
++ MNT_UNTRUSTED = 0x800000000
++ MNT_UPDATE = 0x10000
++ MNT_UPDATEMASK = 0xad8d0807e
++ MNT_USER = 0x8000
++ MNT_VERIFIED = 0x400000000
++ MNT_VISFLAGMASK = 0xffef0ffff
++ MNT_WAIT = 0x1
+ MSG_CMSG_CLOEXEC = 0x40000
+ MSG_COMPAT = 0x8000
+ MSG_CTRUNC = 0x20
+@@ -1006,8 +1108,10 @@ const (
+ NET_RT_IFLIST = 0x3
+ NET_RT_IFLISTL = 0x5
+ NET_RT_IFMALIST = 0x4
++ NFDBITS = 0x40
+ NOFLSH = 0x80000000
+ NOKERNINFO = 0x2000000
++ NOTE_ABSTIME = 0x10
+ NOTE_ATTRIB = 0x8
+ NOTE_CHILD = 0x4
+ NOTE_CLOSE = 0x100
+@@ -1162,7 +1266,6 @@ const (
+ RTV_WEIGHT = 0x100
+ RT_ALL_FIBS = -0x1
+ RT_BLACKHOLE = 0x40
+- RT_CACHING_CONTEXT = 0x1
+ RT_DEFAULT_FIB = 0x0
+ RT_HAS_GW = 0x80
+ RT_HAS_HEADER = 0x10
+@@ -1172,15 +1275,17 @@ const (
+ RT_LLE_CACHE = 0x100
+ RT_MAY_LOOP = 0x8
+ RT_MAY_LOOP_BIT = 0x3
+- RT_NORTREF = 0x2
+ RT_REJECT = 0x20
+ RUSAGE_CHILDREN = -0x1
+ RUSAGE_SELF = 0x0
+ RUSAGE_THREAD = 0x1
+ SCM_BINTIME = 0x4
+ SCM_CREDS = 0x3
++ SCM_MONOTONIC = 0x6
++ SCM_REALTIME = 0x5
+ SCM_RIGHTS = 0x1
+ SCM_TIMESTAMP = 0x2
++ SCM_TIME_INFO = 0x7
+ SHUT_RD = 0x0
+ SHUT_RDWR = 0x2
+ SHUT_WR = 0x1
+@@ -1196,6 +1301,7 @@ const (
+ SIOCGETSGCNT = 0xc0207210
+ SIOCGETVIFCNT = 0xc028720f
+ SIOCGHIWAT = 0x40047301
++ SIOCGHWADDR = 0xc020693e
+ SIOCGI2C = 0xc020693d
+ SIOCGIFADDR = 0xc0206921
+ SIOCGIFBRDADDR = 0xc0206923
+@@ -1217,8 +1323,11 @@ const (
+ SIOCGIFPDSTADDR = 0xc0206948
+ SIOCGIFPHYS = 0xc0206935
+ SIOCGIFPSRCADDR = 0xc0206947
++ SIOCGIFRSSHASH = 0xc0186997
++ SIOCGIFRSSKEY = 0xc0946996
+ SIOCGIFSTATUS = 0xc331693b
+ SIOCGIFXMEDIA = 0xc030698b
++ SIOCGLANPCP = 0xc0206998
+ SIOCGLOWAT = 0x40047303
+ SIOCGPGRP = 0x40047309
+ SIOCGPRIVATE_0 = 0xc0206950
+@@ -1249,6 +1358,7 @@ const (
+ SIOCSIFPHYS = 0x80206936
+ SIOCSIFRVNET = 0xc020695b
+ SIOCSIFVNET = 0xc020695a
++ SIOCSLANPCP = 0x80206999
+ SIOCSLOWAT = 0x80047302
+ SIOCSPGRP = 0x80047308
+ SIOCSTUNFIB = 0x8020695f
+@@ -1267,6 +1377,7 @@ const (
+ SO_BINTIME = 0x2000
+ SO_BROADCAST = 0x20
+ SO_DEBUG = 0x1
++ SO_DOMAIN = 0x1019
+ SO_DONTROUTE = 0x10
+ SO_ERROR = 0x1007
+ SO_KEEPALIVE = 0x8
+@@ -1275,6 +1386,7 @@ const (
+ SO_LISTENINCQLEN = 0x1013
+ SO_LISTENQLEN = 0x1012
+ SO_LISTENQLIMIT = 0x1011
++ SO_MAX_PACING_RATE = 0x1018
+ SO_NOSIGPIPE = 0x800
+ SO_NO_DDP = 0x8000
+ SO_NO_OFFLOAD = 0x4000
+@@ -1287,15 +1399,52 @@ const (
+ SO_RCVTIMEO = 0x1006
+ SO_REUSEADDR = 0x4
+ SO_REUSEPORT = 0x200
++ SO_REUSEPORT_LB = 0x10000
+ SO_SETFIB = 0x1014
+ SO_SNDBUF = 0x1001
+ SO_SNDLOWAT = 0x1003
+ SO_SNDTIMEO = 0x1005
+ SO_TIMESTAMP = 0x400
++ SO_TS_BINTIME = 0x1
++ SO_TS_CLOCK = 0x1017
++ SO_TS_CLOCK_MAX = 0x3
++ SO_TS_DEFAULT = 0x0
++ SO_TS_MONOTONIC = 0x3
++ SO_TS_REALTIME = 0x2
++ SO_TS_REALTIME_MICRO = 0x0
+ SO_TYPE = 0x1008
+ SO_USELOOPBACK = 0x40
+ SO_USER_COOKIE = 0x1015
+ SO_VENDOR = 0x80000000
++ S_BLKSIZE = 0x200
++ S_IEXEC = 0x40
++ S_IFBLK = 0x6000
++ S_IFCHR = 0x2000
++ S_IFDIR = 0x4000
++ S_IFIFO = 0x1000
++ S_IFLNK = 0xa000
++ S_IFMT = 0xf000
++ S_IFREG = 0x8000
++ S_IFSOCK = 0xc000
++ S_IFWHT = 0xe000
++ S_IREAD = 0x100
++ S_IRGRP = 0x20
++ S_IROTH = 0x4
++ S_IRUSR = 0x100
++ S_IRWXG = 0x38
++ S_IRWXO = 0x7
++ S_IRWXU = 0x1c0
++ S_ISGID = 0x400
++ S_ISTXT = 0x200
++ S_ISUID = 0x800
++ S_ISVTX = 0x200
++ S_IWGRP = 0x10
++ S_IWOTH = 0x2
++ S_IWRITE = 0x80
++ S_IWUSR = 0x80
++ S_IXGRP = 0x8
++ S_IXOTH = 0x1
++ S_IXUSR = 0x40
+ TAB0 = 0x0
+ TAB3 = 0x4
+ TABDLY = 0x4
+@@ -1306,10 +1455,45 @@ const (
+ TCOFLUSH = 0x2
+ TCOOFF = 0x1
+ TCOON = 0x2
++ TCP_BBR_ACK_COMP_ALG = 0x448
++ TCP_BBR_DRAIN_INC_EXTRA = 0x43c
++ TCP_BBR_DRAIN_PG = 0x42e
++ TCP_BBR_EXTRA_GAIN = 0x449
++ TCP_BBR_IWINTSO = 0x42b
++ TCP_BBR_LOWGAIN_FD = 0x436
++ TCP_BBR_LOWGAIN_HALF = 0x435
++ TCP_BBR_LOWGAIN_THRESH = 0x434
++ TCP_BBR_MAX_RTO = 0x439
++ TCP_BBR_MIN_RTO = 0x438
++ TCP_BBR_ONE_RETRAN = 0x431
++ TCP_BBR_PACE_CROSS = 0x442
++ TCP_BBR_PACE_DEL_TAR = 0x43f
++ TCP_BBR_PACE_PER_SEC = 0x43e
++ TCP_BBR_PACE_SEG_MAX = 0x440
++ TCP_BBR_PACE_SEG_MIN = 0x441
++ TCP_BBR_PROBE_RTT_GAIN = 0x44d
++ TCP_BBR_PROBE_RTT_INT = 0x430
++ TCP_BBR_PROBE_RTT_LEN = 0x44e
++ TCP_BBR_RACK_RTT_USE = 0x44a
++ TCP_BBR_RECFORCE = 0x42c
++ TCP_BBR_REC_OVER_HPTS = 0x43a
++ TCP_BBR_RETRAN_WTSO = 0x44b
++ TCP_BBR_RWND_IS_APP = 0x42f
++ TCP_BBR_STARTUP_EXIT_EPOCH = 0x43d
++ TCP_BBR_STARTUP_LOSS_EXIT = 0x432
++ TCP_BBR_STARTUP_PG = 0x42d
++ TCP_BBR_UNLIMITED = 0x43b
++ TCP_BBR_USEDEL_RATE = 0x437
++ TCP_BBR_USE_LOWGAIN = 0x433
+ TCP_CA_NAME_MAX = 0x10
+ TCP_CCALGOOPT = 0x41
+ TCP_CONGESTION = 0x40
++ TCP_DATA_AFTER_CLOSE = 0x44c
++ TCP_DELACK = 0x48
+ TCP_FASTOPEN = 0x401
++ TCP_FASTOPEN_MAX_COOKIE_LEN = 0x10
++ TCP_FASTOPEN_MIN_COOKIE_LEN = 0x4
++ TCP_FASTOPEN_PSK_LEN = 0x10
+ TCP_FUNCTION_BLK = 0x2000
+ TCP_FUNCTION_NAME_LEN_MAX = 0x20
+ TCP_INFO = 0x20
+@@ -1317,6 +1501,12 @@ const (
+ TCP_KEEPIDLE = 0x100
+ TCP_KEEPINIT = 0x80
+ TCP_KEEPINTVL = 0x200
++ TCP_LOG = 0x22
++ TCP_LOGBUF = 0x23
++ TCP_LOGDUMP = 0x25
++ TCP_LOGDUMPID = 0x26
++ TCP_LOGID = 0x24
++ TCP_LOG_ID_LEN = 0x40
+ TCP_MAXBURST = 0x4
+ TCP_MAXHLEN = 0x3c
+ TCP_MAXOLEN = 0x28
+@@ -1332,8 +1522,30 @@ const (
+ TCP_NOPUSH = 0x4
+ TCP_PCAP_IN = 0x1000
+ TCP_PCAP_OUT = 0x800
++ TCP_RACK_EARLY_RECOV = 0x423
++ TCP_RACK_EARLY_SEG = 0x424
++ TCP_RACK_IDLE_REDUCE_HIGH = 0x444
++ TCP_RACK_MIN_PACE = 0x445
++ TCP_RACK_MIN_PACE_SEG = 0x446
++ TCP_RACK_MIN_TO = 0x422
++ TCP_RACK_PACE_ALWAYS = 0x41f
++ TCP_RACK_PACE_MAX_SEG = 0x41e
++ TCP_RACK_PACE_REDUCE = 0x41d
++ TCP_RACK_PKT_DELAY = 0x428
++ TCP_RACK_PROP = 0x41b
++ TCP_RACK_PROP_RATE = 0x420
++ TCP_RACK_PRR_SENDALOT = 0x421
++ TCP_RACK_REORD_FADE = 0x426
++ TCP_RACK_REORD_THRESH = 0x425
++ TCP_RACK_SESS_CWV = 0x42a
++ TCP_RACK_TLP_INC_VAR = 0x429
++ TCP_RACK_TLP_REDUCE = 0x41c
++ TCP_RACK_TLP_THRESH = 0x427
++ TCP_RACK_TLP_USE = 0x447
+ TCP_VENDOR = 0x80000000
+ TCSAFLUSH = 0x2
++ TIMER_ABSTIME = 0x1
++ TIMER_RELTIME = 0x0
+ TIOCCBRK = 0x2000747a
+ TIOCCDTR = 0x20007478
+ TIOCCONS = 0x80047462
+@@ -1397,6 +1609,8 @@ const (
+ TIOCTIMESTAMP = 0x40107459
+ TIOCUCNTL = 0x80047466
+ TOSTOP = 0x400000
++ UTIME_NOW = -0x1
++ UTIME_OMIT = -0x2
+ VDISCARD = 0xf
+ VDSUSP = 0xb
+ VEOF = 0x0
+@@ -1408,6 +1622,7 @@ const (
+ VKILL = 0x5
+ VLNEXT = 0xe
+ VMIN = 0x10
++ VM_BCACHE_SIZE_MAX = 0x19000000
+ VQUIT = 0x9
+ VREPRINT = 0x6
+ VSTART = 0xc
+@@ -1570,138 +1785,146 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "operation timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "identifier removed",
+- 83: "no message of desired type",
+- 84: "value too large to be stored in data type",
+- 85: "operation canceled",
+- 86: "illegal byte sequence",
+- 87: "attribute not found",
+- 88: "programming error",
+- 89: "bad message",
+- 90: "multihop attempted",
+- 91: "link has been severed",
+- 92: "protocol error",
+- 93: "capabilities insufficient",
+- 94: "not permitted in capability mode",
+- 95: "state not recoverable",
+- 96: "previous owner died",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large"},
++ {35, "EAGAIN", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "EOPNOTSUPP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "operation timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disc quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EIDRM", "identifier removed"},
++ {83, "ENOMSG", "no message of desired type"},
++ {84, "EOVERFLOW", "value too large to be stored in data type"},
++ {85, "ECANCELED", "operation canceled"},
++ {86, "EILSEQ", "illegal byte sequence"},
++ {87, "ENOATTR", "attribute not found"},
++ {88, "EDOOFUS", "programming error"},
++ {89, "EBADMSG", "bad message"},
++ {90, "EMULTIHOP", "multihop attempted"},
++ {91, "ENOLINK", "link has been severed"},
++ {92, "EPROTO", "protocol error"},
++ {93, "ENOTCAPABLE", "capabilities insufficient"},
++ {94, "ECAPMODE", "not permitted in capability mode"},
++ {95, "ENOTRECOVERABLE", "state not recoverable"},
++ {96, "EOWNERDEAD", "previous owner died"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "suspended (signal)",
+- 18: "suspended",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
+- 32: "unknown signal",
+- 33: "unknown signal",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGIOT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "suspended (signal)"},
++ {18, "SIGTSTP", "suspended"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
++ {32, "SIGTHR", "unknown signal"},
++ {33, "SIGLIBRT", "unknown signal"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux.go b/vendor/golang.org/x/sys/unix/zerrors_linux.go
+new file mode 100644
+index 00000000..21973940
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zerrors_linux.go
+@@ -0,0 +1,2469 @@
++// Code generated by mkmerge.go; DO NOT EDIT.
++
++// +build linux
++
++package unix
++
++import "syscall"
++
++const (
++ AAFS_MAGIC = 0x5a3c69f0
++ ADFS_SUPER_MAGIC = 0xadf5
++ AFFS_SUPER_MAGIC = 0xadff
++ AFS_FS_MAGIC = 0x6b414653
++ AFS_SUPER_MAGIC = 0x5346414f
++ AF_ALG = 0x26
++ AF_APPLETALK = 0x5
++ AF_ASH = 0x12
++ AF_ATMPVC = 0x8
++ AF_ATMSVC = 0x14
++ AF_AX25 = 0x3
++ AF_BLUETOOTH = 0x1f
++ AF_BRIDGE = 0x7
++ AF_CAIF = 0x25
++ AF_CAN = 0x1d
++ AF_DECnet = 0xc
++ AF_ECONET = 0x13
++ AF_FILE = 0x1
++ AF_IB = 0x1b
++ AF_IEEE802154 = 0x24
++ AF_INET = 0x2
++ AF_INET6 = 0xa
++ AF_IPX = 0x4
++ AF_IRDA = 0x17
++ AF_ISDN = 0x22
++ AF_IUCV = 0x20
++ AF_KCM = 0x29
++ AF_KEY = 0xf
++ AF_LLC = 0x1a
++ AF_LOCAL = 0x1
++ AF_MAX = 0x2d
++ AF_MPLS = 0x1c
++ AF_NETBEUI = 0xd
++ AF_NETLINK = 0x10
++ AF_NETROM = 0x6
++ AF_NFC = 0x27
++ AF_PACKET = 0x11
++ AF_PHONET = 0x23
++ AF_PPPOX = 0x18
++ AF_QIPCRTR = 0x2a
++ AF_RDS = 0x15
++ AF_ROSE = 0xb
++ AF_ROUTE = 0x10
++ AF_RXRPC = 0x21
++ AF_SECURITY = 0xe
++ AF_SMC = 0x2b
++ AF_SNA = 0x16
++ AF_TIPC = 0x1e
++ AF_UNIX = 0x1
++ AF_UNSPEC = 0x0
++ AF_VSOCK = 0x28
++ AF_WANPIPE = 0x19
++ AF_X25 = 0x9
++ AF_XDP = 0x2c
++ ALG_OP_DECRYPT = 0x0
++ ALG_OP_ENCRYPT = 0x1
++ ALG_SET_AEAD_ASSOCLEN = 0x4
++ ALG_SET_AEAD_AUTHSIZE = 0x5
++ ALG_SET_IV = 0x2
++ ALG_SET_KEY = 0x1
++ ALG_SET_OP = 0x3
++ ANON_INODE_FS_MAGIC = 0x9041934
++ ARPHRD_6LOWPAN = 0x339
++ ARPHRD_ADAPT = 0x108
++ ARPHRD_APPLETLK = 0x8
++ ARPHRD_ARCNET = 0x7
++ ARPHRD_ASH = 0x30d
++ ARPHRD_ATM = 0x13
++ ARPHRD_AX25 = 0x3
++ ARPHRD_BIF = 0x307
++ ARPHRD_CAIF = 0x336
++ ARPHRD_CAN = 0x118
++ ARPHRD_CHAOS = 0x5
++ ARPHRD_CISCO = 0x201
++ ARPHRD_CSLIP = 0x101
++ ARPHRD_CSLIP6 = 0x103
++ ARPHRD_DDCMP = 0x205
++ ARPHRD_DLCI = 0xf
++ ARPHRD_ECONET = 0x30e
++ ARPHRD_EETHER = 0x2
++ ARPHRD_ETHER = 0x1
++ ARPHRD_EUI64 = 0x1b
++ ARPHRD_FCAL = 0x311
++ ARPHRD_FCFABRIC = 0x313
++ ARPHRD_FCPL = 0x312
++ ARPHRD_FCPP = 0x310
++ ARPHRD_FDDI = 0x306
++ ARPHRD_FRAD = 0x302
++ ARPHRD_HDLC = 0x201
++ ARPHRD_HIPPI = 0x30c
++ ARPHRD_HWX25 = 0x110
++ ARPHRD_IEEE1394 = 0x18
++ ARPHRD_IEEE802 = 0x6
++ ARPHRD_IEEE80211 = 0x321
++ ARPHRD_IEEE80211_PRISM = 0x322
++ ARPHRD_IEEE80211_RADIOTAP = 0x323
++ ARPHRD_IEEE802154 = 0x324
++ ARPHRD_IEEE802154_MONITOR = 0x325
++ ARPHRD_IEEE802_TR = 0x320
++ ARPHRD_INFINIBAND = 0x20
++ ARPHRD_IP6GRE = 0x337
++ ARPHRD_IPDDP = 0x309
++ ARPHRD_IPGRE = 0x30a
++ ARPHRD_IRDA = 0x30f
++ ARPHRD_LAPB = 0x204
++ ARPHRD_LOCALTLK = 0x305
++ ARPHRD_LOOPBACK = 0x304
++ ARPHRD_METRICOM = 0x17
++ ARPHRD_NETLINK = 0x338
++ ARPHRD_NETROM = 0x0
++ ARPHRD_NONE = 0xfffe
++ ARPHRD_PHONET = 0x334
++ ARPHRD_PHONET_PIPE = 0x335
++ ARPHRD_PIMREG = 0x30b
++ ARPHRD_PPP = 0x200
++ ARPHRD_PRONET = 0x4
++ ARPHRD_RAWHDLC = 0x206
++ ARPHRD_RAWIP = 0x207
++ ARPHRD_ROSE = 0x10e
++ ARPHRD_RSRVD = 0x104
++ ARPHRD_SIT = 0x308
++ ARPHRD_SKIP = 0x303
++ ARPHRD_SLIP = 0x100
++ ARPHRD_SLIP6 = 0x102
++ ARPHRD_TUNNEL = 0x300
++ ARPHRD_TUNNEL6 = 0x301
++ ARPHRD_VOID = 0xffff
++ ARPHRD_VSOCKMON = 0x33a
++ ARPHRD_X25 = 0x10f
++ AUTOFS_SUPER_MAGIC = 0x187
++ B0 = 0x0
++ B110 = 0x3
++ B1200 = 0x9
++ B134 = 0x4
++ B150 = 0x5
++ B1800 = 0xa
++ B19200 = 0xe
++ B200 = 0x6
++ B2400 = 0xb
++ B300 = 0x7
++ B38400 = 0xf
++ B4800 = 0xc
++ B50 = 0x1
++ B600 = 0x8
++ B75 = 0x2
++ B9600 = 0xd
++ BALLOON_KVM_MAGIC = 0x13661366
++ BDEVFS_MAGIC = 0x62646576
++ BINDERFS_SUPER_MAGIC = 0x6c6f6f70
++ BINFMTFS_MAGIC = 0x42494e4d
++ BPF_A = 0x10
++ BPF_ABS = 0x20
++ BPF_ADD = 0x0
++ BPF_ADJ_ROOM_ENCAP_L2_MASK = 0xff
++ BPF_ADJ_ROOM_ENCAP_L2_SHIFT = 0x38
++ BPF_ALU = 0x4
++ BPF_ALU64 = 0x7
++ BPF_AND = 0x50
++ BPF_ANY = 0x0
++ BPF_ARSH = 0xc0
++ BPF_B = 0x10
++ BPF_BUILD_ID_SIZE = 0x14
++ BPF_CALL = 0x80
++ BPF_DEVCG_ACC_MKNOD = 0x1
++ BPF_DEVCG_ACC_READ = 0x2
++ BPF_DEVCG_ACC_WRITE = 0x4
++ BPF_DEVCG_DEV_BLOCK = 0x1
++ BPF_DEVCG_DEV_CHAR = 0x2
++ BPF_DIV = 0x30
++ BPF_DW = 0x18
++ BPF_END = 0xd0
++ BPF_EXIST = 0x2
++ BPF_EXIT = 0x90
++ BPF_FLOW_DISSECTOR_F_PARSE_1ST_FRAG = 0x1
++ BPF_FLOW_DISSECTOR_F_STOP_AT_ENCAP = 0x4
++ BPF_FLOW_DISSECTOR_F_STOP_AT_FLOW_LABEL = 0x2
++ BPF_FROM_BE = 0x8
++ BPF_FROM_LE = 0x0
++ BPF_FS_MAGIC = 0xcafe4a11
++ BPF_F_ADJ_ROOM_ENCAP_L3_IPV4 = 0x2
++ BPF_F_ADJ_ROOM_ENCAP_L3_IPV6 = 0x4
++ BPF_F_ADJ_ROOM_ENCAP_L4_GRE = 0x8
++ BPF_F_ADJ_ROOM_ENCAP_L4_UDP = 0x10
++ BPF_F_ADJ_ROOM_FIXED_GSO = 0x1
++ BPF_F_ALLOW_MULTI = 0x2
++ BPF_F_ALLOW_OVERRIDE = 0x1
++ BPF_F_ANY_ALIGNMENT = 0x2
++ BPF_F_CLONE = 0x200
++ BPF_F_CTXLEN_MASK = 0xfffff00000000
++ BPF_F_CURRENT_CPU = 0xffffffff
++ BPF_F_CURRENT_NETNS = -0x1
++ BPF_F_DONT_FRAGMENT = 0x4
++ BPF_F_FAST_STACK_CMP = 0x200
++ BPF_F_HDR_FIELD_MASK = 0xf
++ BPF_F_INDEX_MASK = 0xffffffff
++ BPF_F_INGRESS = 0x1
++ BPF_F_INVALIDATE_HASH = 0x2
++ BPF_F_LOCK = 0x4
++ BPF_F_MARK_ENFORCE = 0x40
++ BPF_F_MARK_MANGLED_0 = 0x20
++ BPF_F_MMAPABLE = 0x400
++ BPF_F_NO_COMMON_LRU = 0x2
++ BPF_F_NO_PREALLOC = 0x1
++ BPF_F_NUMA_NODE = 0x4
++ BPF_F_PSEUDO_HDR = 0x10
++ BPF_F_QUERY_EFFECTIVE = 0x1
++ BPF_F_RDONLY = 0x8
++ BPF_F_RDONLY_PROG = 0x80
++ BPF_F_RECOMPUTE_CSUM = 0x1
++ BPF_F_REPLACE = 0x4
++ BPF_F_REUSE_STACKID = 0x400
++ BPF_F_SEQ_NUMBER = 0x8
++ BPF_F_SKIP_FIELD_MASK = 0xff
++ BPF_F_STACK_BUILD_ID = 0x20
++ BPF_F_STRICT_ALIGNMENT = 0x1
++ BPF_F_SYSCTL_BASE_NAME = 0x1
++ BPF_F_TEST_RND_HI32 = 0x4
++ BPF_F_TEST_STATE_FREQ = 0x8
++ BPF_F_TUNINFO_IPV6 = 0x1
++ BPF_F_USER_BUILD_ID = 0x800
++ BPF_F_USER_STACK = 0x100
++ BPF_F_WRONLY = 0x10
++ BPF_F_WRONLY_PROG = 0x100
++ BPF_F_ZERO_CSUM_TX = 0x2
++ BPF_F_ZERO_SEED = 0x40
++ BPF_H = 0x8
++ BPF_IMM = 0x0
++ BPF_IND = 0x40
++ BPF_JA = 0x0
++ BPF_JEQ = 0x10
++ BPF_JGE = 0x30
++ BPF_JGT = 0x20
++ BPF_JLE = 0xb0
++ BPF_JLT = 0xa0
++ BPF_JMP = 0x5
++ BPF_JMP32 = 0x6
++ BPF_JNE = 0x50
++ BPF_JSET = 0x40
++ BPF_JSGE = 0x70
++ BPF_JSGT = 0x60
++ BPF_JSLE = 0xd0
++ BPF_JSLT = 0xc0
++ BPF_K = 0x0
++ BPF_LD = 0x0
++ BPF_LDX = 0x1
++ BPF_LEN = 0x80
++ BPF_LL_OFF = -0x200000
++ BPF_LSH = 0x60
++ BPF_MAJOR_VERSION = 0x1
++ BPF_MAXINSNS = 0x1000
++ BPF_MEM = 0x60
++ BPF_MEMWORDS = 0x10
++ BPF_MINOR_VERSION = 0x1
++ BPF_MISC = 0x7
++ BPF_MOD = 0x90
++ BPF_MOV = 0xb0
++ BPF_MSH = 0xa0
++ BPF_MUL = 0x20
++ BPF_NEG = 0x80
++ BPF_NET_OFF = -0x100000
++ BPF_NOEXIST = 0x1
++ BPF_OBJ_NAME_LEN = 0x10
++ BPF_OR = 0x40
++ BPF_PSEUDO_CALL = 0x1
++ BPF_PSEUDO_MAP_FD = 0x1
++ BPF_PSEUDO_MAP_VALUE = 0x2
++ BPF_RET = 0x6
++ BPF_RSH = 0x70
++ BPF_SK_STORAGE_GET_F_CREATE = 0x1
++ BPF_SOCK_OPS_ALL_CB_FLAGS = 0xf
++ BPF_SOCK_OPS_RETRANS_CB_FLAG = 0x2
++ BPF_SOCK_OPS_RTO_CB_FLAG = 0x1
++ BPF_SOCK_OPS_RTT_CB_FLAG = 0x8
++ BPF_SOCK_OPS_STATE_CB_FLAG = 0x4
++ BPF_ST = 0x2
++ BPF_STX = 0x3
++ BPF_SUB = 0x10
++ BPF_TAG_SIZE = 0x8
++ BPF_TAX = 0x0
++ BPF_TO_BE = 0x8
++ BPF_TO_LE = 0x0
++ BPF_TXA = 0x80
++ BPF_W = 0x0
++ BPF_X = 0x8
++ BPF_XADD = 0xc0
++ BPF_XOR = 0xa0
++ BRKINT = 0x2
++ BS0 = 0x0
++ BTRFS_SUPER_MAGIC = 0x9123683e
++ BTRFS_TEST_MAGIC = 0x73727279
++ CAN_BCM = 0x2
++ CAN_EFF_FLAG = 0x80000000
++ CAN_EFF_ID_BITS = 0x1d
++ CAN_EFF_MASK = 0x1fffffff
++ CAN_ERR_FLAG = 0x20000000
++ CAN_ERR_MASK = 0x1fffffff
++ CAN_INV_FILTER = 0x20000000
++ CAN_ISOTP = 0x6
++ CAN_J1939 = 0x7
++ CAN_MAX_DLC = 0x8
++ CAN_MAX_DLEN = 0x8
++ CAN_MCNET = 0x5
++ CAN_MTU = 0x10
++ CAN_NPROTO = 0x8
++ CAN_RAW = 0x1
++ CAN_RAW_FILTER_MAX = 0x200
++ CAN_RTR_FLAG = 0x40000000
++ CAN_SFF_ID_BITS = 0xb
++ CAN_SFF_MASK = 0x7ff
++ CAN_TP16 = 0x3
++ CAN_TP20 = 0x4
++ CAP_AUDIT_CONTROL = 0x1e
++ CAP_AUDIT_READ = 0x25
++ CAP_AUDIT_WRITE = 0x1d
++ CAP_BLOCK_SUSPEND = 0x24
++ CAP_CHOWN = 0x0
++ CAP_DAC_OVERRIDE = 0x1
++ CAP_DAC_READ_SEARCH = 0x2
++ CAP_FOWNER = 0x3
++ CAP_FSETID = 0x4
++ CAP_IPC_LOCK = 0xe
++ CAP_IPC_OWNER = 0xf
++ CAP_KILL = 0x5
++ CAP_LAST_CAP = 0x25
++ CAP_LEASE = 0x1c
++ CAP_LINUX_IMMUTABLE = 0x9
++ CAP_MAC_ADMIN = 0x21
++ CAP_MAC_OVERRIDE = 0x20
++ CAP_MKNOD = 0x1b
++ CAP_NET_ADMIN = 0xc
++ CAP_NET_BIND_SERVICE = 0xa
++ CAP_NET_BROADCAST = 0xb
++ CAP_NET_RAW = 0xd
++ CAP_SETFCAP = 0x1f
++ CAP_SETGID = 0x6
++ CAP_SETPCAP = 0x8
++ CAP_SETUID = 0x7
++ CAP_SYSLOG = 0x22
++ CAP_SYS_ADMIN = 0x15
++ CAP_SYS_BOOT = 0x16
++ CAP_SYS_CHROOT = 0x12
++ CAP_SYS_MODULE = 0x10
++ CAP_SYS_NICE = 0x17
++ CAP_SYS_PACCT = 0x14
++ CAP_SYS_PTRACE = 0x13
++ CAP_SYS_RAWIO = 0x11
++ CAP_SYS_RESOURCE = 0x18
++ CAP_SYS_TIME = 0x19
++ CAP_SYS_TTY_CONFIG = 0x1a
++ CAP_WAKE_ALARM = 0x23
++ CFLUSH = 0xf
++ CGROUP2_SUPER_MAGIC = 0x63677270
++ CGROUP_SUPER_MAGIC = 0x27e0eb
++ CLOCK_BOOTTIME = 0x7
++ CLOCK_BOOTTIME_ALARM = 0x9
++ CLOCK_DEFAULT = 0x0
++ CLOCK_EXT = 0x1
++ CLOCK_INT = 0x2
++ CLOCK_MONOTONIC = 0x1
++ CLOCK_MONOTONIC_COARSE = 0x6
++ CLOCK_MONOTONIC_RAW = 0x4
++ CLOCK_PROCESS_CPUTIME_ID = 0x2
++ CLOCK_REALTIME = 0x0
++ CLOCK_REALTIME_ALARM = 0x8
++ CLOCK_REALTIME_COARSE = 0x5
++ CLOCK_TAI = 0xb
++ CLOCK_THREAD_CPUTIME_ID = 0x3
++ CLOCK_TXFROMRX = 0x4
++ CLOCK_TXINT = 0x3
++ CLONE_ARGS_SIZE_VER0 = 0x40
++ CLONE_ARGS_SIZE_VER1 = 0x50
++ CLONE_CHILD_CLEARTID = 0x200000
++ CLONE_CHILD_SETTID = 0x1000000
++ CLONE_CLEAR_SIGHAND = 0x100000000
++ CLONE_DETACHED = 0x400000
++ CLONE_FILES = 0x400
++ CLONE_FS = 0x200
++ CLONE_IO = 0x80000000
++ CLONE_NEWCGROUP = 0x2000000
++ CLONE_NEWIPC = 0x8000000
++ CLONE_NEWNET = 0x40000000
++ CLONE_NEWNS = 0x20000
++ CLONE_NEWPID = 0x20000000
++ CLONE_NEWTIME = 0x80
++ CLONE_NEWUSER = 0x10000000
++ CLONE_NEWUTS = 0x4000000
++ CLONE_PARENT = 0x8000
++ CLONE_PARENT_SETTID = 0x100000
++ CLONE_PIDFD = 0x1000
++ CLONE_PTRACE = 0x2000
++ CLONE_SETTLS = 0x80000
++ CLONE_SIGHAND = 0x800
++ CLONE_SYSVSEM = 0x40000
++ CLONE_THREAD = 0x10000
++ CLONE_UNTRACED = 0x800000
++ CLONE_VFORK = 0x4000
++ CLONE_VM = 0x100
++ CMSPAR = 0x40000000
++ CODA_SUPER_MAGIC = 0x73757245
++ CR0 = 0x0
++ CRAMFS_MAGIC = 0x28cd3d45
++ CRTSCTS = 0x80000000
++ CRYPTO_MAX_NAME = 0x40
++ CRYPTO_MSG_MAX = 0x15
++ CRYPTO_NR_MSGTYPES = 0x6
++ CRYPTO_REPORT_MAXSIZE = 0x160
++ CS5 = 0x0
++ CSIGNAL = 0xff
++ CSTART = 0x11
++ CSTATUS = 0x0
++ CSTOP = 0x13
++ CSUSP = 0x1a
++ DAXFS_MAGIC = 0x64646178
++ DEBUGFS_MAGIC = 0x64626720
++ DEVLINK_CMD_ESWITCH_MODE_GET = 0x1d
++ DEVLINK_CMD_ESWITCH_MODE_SET = 0x1e
++ DEVLINK_GENL_MCGRP_CONFIG_NAME = "config"
++ DEVLINK_GENL_NAME = "devlink"
++ DEVLINK_GENL_VERSION = 0x1
++ DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX = 0x14
++ DEVPTS_SUPER_MAGIC = 0x1cd1
++ DMA_BUF_MAGIC = 0x444d4142
++ DT_BLK = 0x6
++ DT_CHR = 0x2
++ DT_DIR = 0x4
++ DT_FIFO = 0x1
++ DT_LNK = 0xa
++ DT_REG = 0x8
++ DT_SOCK = 0xc
++ DT_UNKNOWN = 0x0
++ DT_WHT = 0xe
++ ECHO = 0x8
++ ECRYPTFS_SUPER_MAGIC = 0xf15f
++ EFD_SEMAPHORE = 0x1
++ EFIVARFS_MAGIC = 0xde5e81e4
++ EFS_SUPER_MAGIC = 0x414a53
++ ENCODING_DEFAULT = 0x0
++ ENCODING_FM_MARK = 0x3
++ ENCODING_FM_SPACE = 0x4
++ ENCODING_MANCHESTER = 0x5
++ ENCODING_NRZ = 0x1
++ ENCODING_NRZI = 0x2
++ EPOLLERR = 0x8
++ EPOLLET = 0x80000000
++ EPOLLEXCLUSIVE = 0x10000000
++ EPOLLHUP = 0x10
++ EPOLLIN = 0x1
++ EPOLLMSG = 0x400
++ EPOLLONESHOT = 0x40000000
++ EPOLLOUT = 0x4
++ EPOLLPRI = 0x2
++ EPOLLRDBAND = 0x80
++ EPOLLRDHUP = 0x2000
++ EPOLLRDNORM = 0x40
++ EPOLLWAKEUP = 0x20000000
++ EPOLLWRBAND = 0x200
++ EPOLLWRNORM = 0x100
++ EPOLL_CTL_ADD = 0x1
++ EPOLL_CTL_DEL = 0x2
++ EPOLL_CTL_MOD = 0x3
++ EROFS_SUPER_MAGIC_V1 = 0xe0f5e1e2
++ ETH_P_1588 = 0x88f7
++ ETH_P_8021AD = 0x88a8
++ ETH_P_8021AH = 0x88e7
++ ETH_P_8021Q = 0x8100
++ ETH_P_80221 = 0x8917
++ ETH_P_802_2 = 0x4
++ ETH_P_802_3 = 0x1
++ ETH_P_802_3_MIN = 0x600
++ ETH_P_802_EX1 = 0x88b5
++ ETH_P_AARP = 0x80f3
++ ETH_P_AF_IUCV = 0xfbfb
++ ETH_P_ALL = 0x3
++ ETH_P_AOE = 0x88a2
++ ETH_P_ARCNET = 0x1a
++ ETH_P_ARP = 0x806
++ ETH_P_ATALK = 0x809b
++ ETH_P_ATMFATE = 0x8884
++ ETH_P_ATMMPOA = 0x884c
++ ETH_P_AX25 = 0x2
++ ETH_P_BATMAN = 0x4305
++ ETH_P_BPQ = 0x8ff
++ ETH_P_CAIF = 0xf7
++ ETH_P_CAN = 0xc
++ ETH_P_CANFD = 0xd
++ ETH_P_CONTROL = 0x16
++ ETH_P_CUST = 0x6006
++ ETH_P_DDCMP = 0x6
++ ETH_P_DEC = 0x6000
++ ETH_P_DIAG = 0x6005
++ ETH_P_DNA_DL = 0x6001
++ ETH_P_DNA_RC = 0x6002
++ ETH_P_DNA_RT = 0x6003
++ ETH_P_DSA = 0x1b
++ ETH_P_DSA_8021Q = 0xdadb
++ ETH_P_ECONET = 0x18
++ ETH_P_EDSA = 0xdada
++ ETH_P_ERSPAN = 0x88be
++ ETH_P_ERSPAN2 = 0x22eb
++ ETH_P_FCOE = 0x8906
++ ETH_P_FIP = 0x8914
++ ETH_P_HDLC = 0x19
++ ETH_P_HSR = 0x892f
++ ETH_P_IBOE = 0x8915
++ ETH_P_IEEE802154 = 0xf6
++ ETH_P_IEEEPUP = 0xa00
++ ETH_P_IEEEPUPAT = 0xa01
++ ETH_P_IFE = 0xed3e
++ ETH_P_IP = 0x800
++ ETH_P_IPV6 = 0x86dd
++ ETH_P_IPX = 0x8137
++ ETH_P_IRDA = 0x17
++ ETH_P_LAT = 0x6004
++ ETH_P_LINK_CTL = 0x886c
++ ETH_P_LLDP = 0x88cc
++ ETH_P_LOCALTALK = 0x9
++ ETH_P_LOOP = 0x60
++ ETH_P_LOOPBACK = 0x9000
++ ETH_P_MACSEC = 0x88e5
++ ETH_P_MAP = 0xf9
++ ETH_P_MOBITEX = 0x15
++ ETH_P_MPLS_MC = 0x8848
++ ETH_P_MPLS_UC = 0x8847
++ ETH_P_MVRP = 0x88f5
++ ETH_P_NCSI = 0x88f8
++ ETH_P_NSH = 0x894f
++ ETH_P_PAE = 0x888e
++ ETH_P_PAUSE = 0x8808
++ ETH_P_PHONET = 0xf5
++ ETH_P_PPPTALK = 0x10
++ ETH_P_PPP_DISC = 0x8863
++ ETH_P_PPP_MP = 0x8
++ ETH_P_PPP_SES = 0x8864
++ ETH_P_PREAUTH = 0x88c7
++ ETH_P_PRP = 0x88fb
++ ETH_P_PUP = 0x200
++ ETH_P_PUPAT = 0x201
++ ETH_P_QINQ1 = 0x9100
++ ETH_P_QINQ2 = 0x9200
++ ETH_P_QINQ3 = 0x9300
++ ETH_P_RARP = 0x8035
++ ETH_P_SCA = 0x6007
++ ETH_P_SLOW = 0x8809
++ ETH_P_SNAP = 0x5
++ ETH_P_TDLS = 0x890d
++ ETH_P_TEB = 0x6558
++ ETH_P_TIPC = 0x88ca
++ ETH_P_TRAILER = 0x1c
++ ETH_P_TR_802_2 = 0x11
++ ETH_P_TSN = 0x22f0
++ ETH_P_WAN_PPP = 0x7
++ ETH_P_WCCP = 0x883e
++ ETH_P_X25 = 0x805
++ ETH_P_XDSA = 0xf8
++ EXABYTE_ENABLE_NEST = 0xf0
++ EXT2_SUPER_MAGIC = 0xef53
++ EXT3_SUPER_MAGIC = 0xef53
++ EXT4_SUPER_MAGIC = 0xef53
++ EXTA = 0xe
++ EXTB = 0xf
++ F2FS_SUPER_MAGIC = 0xf2f52010
++ FALLOC_FL_COLLAPSE_RANGE = 0x8
++ FALLOC_FL_INSERT_RANGE = 0x20
++ FALLOC_FL_KEEP_SIZE = 0x1
++ FALLOC_FL_NO_HIDE_STALE = 0x4
++ FALLOC_FL_PUNCH_HOLE = 0x2
++ FALLOC_FL_UNSHARE_RANGE = 0x40
++ FALLOC_FL_ZERO_RANGE = 0x10
++ FANOTIFY_METADATA_VERSION = 0x3
++ FAN_ACCESS = 0x1
++ FAN_ACCESS_PERM = 0x20000
++ FAN_ALLOW = 0x1
++ FAN_ALL_CLASS_BITS = 0xc
++ FAN_ALL_EVENTS = 0x3b
++ FAN_ALL_INIT_FLAGS = 0x3f
++ FAN_ALL_MARK_FLAGS = 0xff
++ FAN_ALL_OUTGOING_EVENTS = 0x3403b
++ FAN_ALL_PERM_EVENTS = 0x30000
++ FAN_ATTRIB = 0x4
++ FAN_AUDIT = 0x10
++ FAN_CLASS_CONTENT = 0x4
++ FAN_CLASS_NOTIF = 0x0
++ FAN_CLASS_PRE_CONTENT = 0x8
++ FAN_CLOEXEC = 0x1
++ FAN_CLOSE = 0x18
++ FAN_CLOSE_NOWRITE = 0x10
++ FAN_CLOSE_WRITE = 0x8
++ FAN_CREATE = 0x100
++ FAN_DELETE = 0x200
++ FAN_DELETE_SELF = 0x400
++ FAN_DENY = 0x2
++ FAN_ENABLE_AUDIT = 0x40
++ FAN_EVENT_INFO_TYPE_FID = 0x1
++ FAN_EVENT_METADATA_LEN = 0x18
++ FAN_EVENT_ON_CHILD = 0x8000000
++ FAN_MARK_ADD = 0x1
++ FAN_MARK_DONT_FOLLOW = 0x4
++ FAN_MARK_FILESYSTEM = 0x100
++ FAN_MARK_FLUSH = 0x80
++ FAN_MARK_IGNORED_MASK = 0x20
++ FAN_MARK_IGNORED_SURV_MODIFY = 0x40
++ FAN_MARK_INODE = 0x0
++ FAN_MARK_MOUNT = 0x10
++ FAN_MARK_ONLYDIR = 0x8
++ FAN_MARK_REMOVE = 0x2
++ FAN_MODIFY = 0x2
++ FAN_MOVE = 0xc0
++ FAN_MOVED_FROM = 0x40
++ FAN_MOVED_TO = 0x80
++ FAN_MOVE_SELF = 0x800
++ FAN_NOFD = -0x1
++ FAN_NONBLOCK = 0x2
++ FAN_ONDIR = 0x40000000
++ FAN_OPEN = 0x20
++ FAN_OPEN_EXEC = 0x1000
++ FAN_OPEN_EXEC_PERM = 0x40000
++ FAN_OPEN_PERM = 0x10000
++ FAN_Q_OVERFLOW = 0x4000
++ FAN_REPORT_FID = 0x200
++ FAN_REPORT_TID = 0x100
++ FAN_UNLIMITED_MARKS = 0x20
++ FAN_UNLIMITED_QUEUE = 0x10
++ FD_CLOEXEC = 0x1
++ FD_SETSIZE = 0x400
++ FF0 = 0x0
++ FSCRYPT_KEY_DESCRIPTOR_SIZE = 0x8
++ FSCRYPT_KEY_DESC_PREFIX = "fscrypt:"
++ FSCRYPT_KEY_DESC_PREFIX_SIZE = 0x8
++ FSCRYPT_KEY_IDENTIFIER_SIZE = 0x10
++ FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY = 0x1
++ FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS = 0x2
++ FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR = 0x1
++ FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER = 0x2
++ FSCRYPT_KEY_STATUS_ABSENT = 0x1
++ FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF = 0x1
++ FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED = 0x3
++ FSCRYPT_KEY_STATUS_PRESENT = 0x2
++ FSCRYPT_MAX_KEY_SIZE = 0x40
++ FSCRYPT_MODE_ADIANTUM = 0x9
++ FSCRYPT_MODE_AES_128_CBC = 0x5
++ FSCRYPT_MODE_AES_128_CTS = 0x6
++ FSCRYPT_MODE_AES_256_CTS = 0x4
++ FSCRYPT_MODE_AES_256_XTS = 0x1
++ FSCRYPT_POLICY_FLAGS_PAD_16 = 0x2
++ FSCRYPT_POLICY_FLAGS_PAD_32 = 0x3
++ FSCRYPT_POLICY_FLAGS_PAD_4 = 0x0
++ FSCRYPT_POLICY_FLAGS_PAD_8 = 0x1
++ FSCRYPT_POLICY_FLAGS_PAD_MASK = 0x3
++ FSCRYPT_POLICY_FLAGS_VALID = 0xf
++ FSCRYPT_POLICY_FLAG_DIRECT_KEY = 0x4
++ FSCRYPT_POLICY_FLAG_IV_INO_LBLK_64 = 0x8
++ FSCRYPT_POLICY_V1 = 0x0
++ FSCRYPT_POLICY_V2 = 0x2
++ FS_ENCRYPTION_MODE_ADIANTUM = 0x9
++ FS_ENCRYPTION_MODE_AES_128_CBC = 0x5
++ FS_ENCRYPTION_MODE_AES_128_CTS = 0x6
++ FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
++ FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
++ FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
++ FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
++ FS_ENCRYPTION_MODE_INVALID = 0x0
++ FS_ENCRYPTION_MODE_SPECK128_256_CTS = 0x8
++ FS_ENCRYPTION_MODE_SPECK128_256_XTS = 0x7
++ FS_IOC_ADD_ENCRYPTION_KEY = 0xc0506617
++ FS_IOC_GET_ENCRYPTION_KEY_STATUS = 0xc080661a
++ FS_IOC_GET_ENCRYPTION_POLICY_EX = 0xc0096616
++ FS_IOC_MEASURE_VERITY = 0xc0046686
++ FS_IOC_REMOVE_ENCRYPTION_KEY = 0xc0406618
++ FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS = 0xc0406619
++ FS_KEY_DESCRIPTOR_SIZE = 0x8
++ FS_KEY_DESC_PREFIX = "fscrypt:"
++ FS_KEY_DESC_PREFIX_SIZE = 0x8
++ FS_MAX_KEY_SIZE = 0x40
++ FS_POLICY_FLAGS_PAD_16 = 0x2
++ FS_POLICY_FLAGS_PAD_32 = 0x3
++ FS_POLICY_FLAGS_PAD_4 = 0x0
++ FS_POLICY_FLAGS_PAD_8 = 0x1
++ FS_POLICY_FLAGS_PAD_MASK = 0x3
++ FS_POLICY_FLAGS_VALID = 0xf
++ FS_VERITY_FL = 0x100000
++ FS_VERITY_HASH_ALG_SHA256 = 0x1
++ FS_VERITY_HASH_ALG_SHA512 = 0x2
++ FUTEXFS_SUPER_MAGIC = 0xbad1dea
++ F_ADD_SEALS = 0x409
++ F_DUPFD = 0x0
++ F_DUPFD_CLOEXEC = 0x406
++ F_EXLCK = 0x4
++ F_GETFD = 0x1
++ F_GETFL = 0x3
++ F_GETLEASE = 0x401
++ F_GETOWN_EX = 0x10
++ F_GETPIPE_SZ = 0x408
++ F_GETSIG = 0xb
++ F_GET_FILE_RW_HINT = 0x40d
++ F_GET_RW_HINT = 0x40b
++ F_GET_SEALS = 0x40a
++ F_LOCK = 0x1
++ F_NOTIFY = 0x402
++ F_OFD_GETLK = 0x24
++ F_OFD_SETLK = 0x25
++ F_OFD_SETLKW = 0x26
++ F_OK = 0x0
++ F_SEAL_FUTURE_WRITE = 0x10
++ F_SEAL_GROW = 0x4
++ F_SEAL_SEAL = 0x1
++ F_SEAL_SHRINK = 0x2
++ F_SEAL_WRITE = 0x8
++ F_SETFD = 0x2
++ F_SETFL = 0x4
++ F_SETLEASE = 0x400
++ F_SETOWN_EX = 0xf
++ F_SETPIPE_SZ = 0x407
++ F_SETSIG = 0xa
++ F_SET_FILE_RW_HINT = 0x40e
++ F_SET_RW_HINT = 0x40c
++ F_SHLCK = 0x8
++ F_TEST = 0x3
++ F_TLOCK = 0x2
++ F_ULOCK = 0x0
++ GENL_ADMIN_PERM = 0x1
++ GENL_CMD_CAP_DO = 0x2
++ GENL_CMD_CAP_DUMP = 0x4
++ GENL_CMD_CAP_HASPOL = 0x8
++ GENL_HDRLEN = 0x4
++ GENL_ID_CTRL = 0x10
++ GENL_ID_PMCRAID = 0x12
++ GENL_ID_VFS_DQUOT = 0x11
++ GENL_MAX_ID = 0x3ff
++ GENL_MIN_ID = 0x10
++ GENL_NAMSIZ = 0x10
++ GENL_START_ALLOC = 0x13
++ GENL_UNS_ADMIN_PERM = 0x10
++ GRND_INSECURE = 0x4
++ GRND_NONBLOCK = 0x1
++ GRND_RANDOM = 0x2
++ HDIO_DRIVE_CMD = 0x31f
++ HDIO_DRIVE_CMD_AEB = 0x31e
++ HDIO_DRIVE_CMD_HDR_SIZE = 0x4
++ HDIO_DRIVE_HOB_HDR_SIZE = 0x8
++ HDIO_DRIVE_RESET = 0x31c
++ HDIO_DRIVE_TASK = 0x31e
++ HDIO_DRIVE_TASKFILE = 0x31d
++ HDIO_DRIVE_TASK_HDR_SIZE = 0x8
++ HDIO_GETGEO = 0x301
++ HDIO_GET_32BIT = 0x309
++ HDIO_GET_ACOUSTIC = 0x30f
++ HDIO_GET_ADDRESS = 0x310
++ HDIO_GET_BUSSTATE = 0x31a
++ HDIO_GET_DMA = 0x30b
++ HDIO_GET_IDENTITY = 0x30d
++ HDIO_GET_KEEPSETTINGS = 0x308
++ HDIO_GET_MULTCOUNT = 0x304
++ HDIO_GET_NICE = 0x30c
++ HDIO_GET_NOWERR = 0x30a
++ HDIO_GET_QDMA = 0x305
++ HDIO_GET_UNMASKINTR = 0x302
++ HDIO_GET_WCACHE = 0x30e
++ HDIO_OBSOLETE_IDENTITY = 0x307
++ HDIO_SCAN_HWIF = 0x328
++ HDIO_SET_32BIT = 0x324
++ HDIO_SET_ACOUSTIC = 0x32c
++ HDIO_SET_ADDRESS = 0x32f
++ HDIO_SET_BUSSTATE = 0x32d
++ HDIO_SET_DMA = 0x326
++ HDIO_SET_KEEPSETTINGS = 0x323
++ HDIO_SET_MULTCOUNT = 0x321
++ HDIO_SET_NICE = 0x329
++ HDIO_SET_NOWERR = 0x325
++ HDIO_SET_PIO_MODE = 0x327
++ HDIO_SET_QDMA = 0x32e
++ HDIO_SET_UNMASKINTR = 0x322
++ HDIO_SET_WCACHE = 0x32b
++ HDIO_SET_XFER = 0x306
++ HDIO_TRISTATE_HWIF = 0x31b
++ HDIO_UNREGISTER_HWIF = 0x32a
++ HOSTFS_SUPER_MAGIC = 0xc0ffee
++ HPFS_SUPER_MAGIC = 0xf995e849
++ HUGETLBFS_MAGIC = 0x958458f6
++ IBSHIFT = 0x10
++ ICMPV6_FILTER = 0x1
++ ICRNL = 0x100
++ IFA_F_DADFAILED = 0x8
++ IFA_F_DEPRECATED = 0x20
++ IFA_F_HOMEADDRESS = 0x10
++ IFA_F_MANAGETEMPADDR = 0x100
++ IFA_F_MCAUTOJOIN = 0x400
++ IFA_F_NODAD = 0x2
++ IFA_F_NOPREFIXROUTE = 0x200
++ IFA_F_OPTIMISTIC = 0x4
++ IFA_F_PERMANENT = 0x80
++ IFA_F_SECONDARY = 0x1
++ IFA_F_STABLE_PRIVACY = 0x800
++ IFA_F_TEMPORARY = 0x1
++ IFA_F_TENTATIVE = 0x40
++ IFA_MAX = 0xa
++ IFF_ALLMULTI = 0x200
++ IFF_ATTACH_QUEUE = 0x200
++ IFF_AUTOMEDIA = 0x4000
++ IFF_BROADCAST = 0x2
++ IFF_DEBUG = 0x4
++ IFF_DETACH_QUEUE = 0x400
++ IFF_DORMANT = 0x20000
++ IFF_DYNAMIC = 0x8000
++ IFF_ECHO = 0x40000
++ IFF_LOOPBACK = 0x8
++ IFF_LOWER_UP = 0x10000
++ IFF_MASTER = 0x400
++ IFF_MULTICAST = 0x1000
++ IFF_MULTI_QUEUE = 0x100
++ IFF_NAPI = 0x10
++ IFF_NAPI_FRAGS = 0x20
++ IFF_NOARP = 0x80
++ IFF_NOFILTER = 0x1000
++ IFF_NOTRAILERS = 0x20
++ IFF_NO_PI = 0x1000
++ IFF_ONE_QUEUE = 0x2000
++ IFF_PERSIST = 0x800
++ IFF_POINTOPOINT = 0x10
++ IFF_PORTSEL = 0x2000
++ IFF_PROMISC = 0x100
++ IFF_RUNNING = 0x40
++ IFF_SLAVE = 0x800
++ IFF_TAP = 0x2
++ IFF_TUN = 0x1
++ IFF_TUN_EXCL = 0x8000
++ IFF_UP = 0x1
++ IFF_VNET_HDR = 0x4000
++ IFF_VOLATILE = 0x70c5a
++ IFNAMSIZ = 0x10
++ IGNBRK = 0x1
++ IGNCR = 0x80
++ IGNPAR = 0x4
++ IMAXBEL = 0x2000
++ INLCR = 0x40
++ INPCK = 0x10
++ IN_ACCESS = 0x1
++ IN_ALL_EVENTS = 0xfff
++ IN_ATTRIB = 0x4
++ IN_CLASSA_HOST = 0xffffff
++ IN_CLASSA_MAX = 0x80
++ IN_CLASSA_NET = 0xff000000
++ IN_CLASSA_NSHIFT = 0x18
++ IN_CLASSB_HOST = 0xffff
++ IN_CLASSB_MAX = 0x10000
++ IN_CLASSB_NET = 0xffff0000
++ IN_CLASSB_NSHIFT = 0x10
++ IN_CLASSC_HOST = 0xff
++ IN_CLASSC_NET = 0xffffff00
++ IN_CLASSC_NSHIFT = 0x8
++ IN_CLOSE = 0x18
++ IN_CLOSE_NOWRITE = 0x10
++ IN_CLOSE_WRITE = 0x8
++ IN_CREATE = 0x100
++ IN_DELETE = 0x200
++ IN_DELETE_SELF = 0x400
++ IN_DONT_FOLLOW = 0x2000000
++ IN_EXCL_UNLINK = 0x4000000
++ IN_IGNORED = 0x8000
++ IN_ISDIR = 0x40000000
++ IN_LOOPBACKNET = 0x7f
++ IN_MASK_ADD = 0x20000000
++ IN_MASK_CREATE = 0x10000000
++ IN_MODIFY = 0x2
++ IN_MOVE = 0xc0
++ IN_MOVED_FROM = 0x40
++ IN_MOVED_TO = 0x80
++ IN_MOVE_SELF = 0x800
++ IN_ONESHOT = 0x80000000
++ IN_ONLYDIR = 0x1000000
++ IN_OPEN = 0x20
++ IN_Q_OVERFLOW = 0x4000
++ IN_UNMOUNT = 0x2000
++ IPPROTO_AH = 0x33
++ IPPROTO_BEETPH = 0x5e
++ IPPROTO_COMP = 0x6c
++ IPPROTO_DCCP = 0x21
++ IPPROTO_DSTOPTS = 0x3c
++ IPPROTO_EGP = 0x8
++ IPPROTO_ENCAP = 0x62
++ IPPROTO_ESP = 0x32
++ IPPROTO_FRAGMENT = 0x2c
++ IPPROTO_GRE = 0x2f
++ IPPROTO_HOPOPTS = 0x0
++ IPPROTO_ICMP = 0x1
++ IPPROTO_ICMPV6 = 0x3a
++ IPPROTO_IDP = 0x16
++ IPPROTO_IGMP = 0x2
++ IPPROTO_IP = 0x0
++ IPPROTO_IPIP = 0x4
++ IPPROTO_IPV6 = 0x29
++ IPPROTO_L2TP = 0x73
++ IPPROTO_MH = 0x87
++ IPPROTO_MPLS = 0x89
++ IPPROTO_MTP = 0x5c
++ IPPROTO_NONE = 0x3b
++ IPPROTO_PIM = 0x67
++ IPPROTO_PUP = 0xc
++ IPPROTO_RAW = 0xff
++ IPPROTO_ROUTING = 0x2b
++ IPPROTO_RSVP = 0x2e
++ IPPROTO_SCTP = 0x84
++ IPPROTO_TCP = 0x6
++ IPPROTO_TP = 0x1d
++ IPPROTO_UDP = 0x11
++ IPPROTO_UDPLITE = 0x88
++ IPV6_2292DSTOPTS = 0x4
++ IPV6_2292HOPLIMIT = 0x8
++ IPV6_2292HOPOPTS = 0x3
++ IPV6_2292PKTINFO = 0x2
++ IPV6_2292PKTOPTIONS = 0x6
++ IPV6_2292RTHDR = 0x5
++ IPV6_ADDRFORM = 0x1
++ IPV6_ADDR_PREFERENCES = 0x48
++ IPV6_ADD_MEMBERSHIP = 0x14
++ IPV6_AUTHHDR = 0xa
++ IPV6_AUTOFLOWLABEL = 0x46
++ IPV6_CHECKSUM = 0x7
++ IPV6_DONTFRAG = 0x3e
++ IPV6_DROP_MEMBERSHIP = 0x15
++ IPV6_DSTOPTS = 0x3b
++ IPV6_FREEBIND = 0x4e
++ IPV6_HDRINCL = 0x24
++ IPV6_HOPLIMIT = 0x34
++ IPV6_HOPOPTS = 0x36
++ IPV6_IPSEC_POLICY = 0x22
++ IPV6_JOIN_ANYCAST = 0x1b
++ IPV6_JOIN_GROUP = 0x14
++ IPV6_LEAVE_ANYCAST = 0x1c
++ IPV6_LEAVE_GROUP = 0x15
++ IPV6_MINHOPCOUNT = 0x49
++ IPV6_MTU = 0x18
++ IPV6_MTU_DISCOVER = 0x17
++ IPV6_MULTICAST_ALL = 0x1d
++ IPV6_MULTICAST_HOPS = 0x12
++ IPV6_MULTICAST_IF = 0x11
++ IPV6_MULTICAST_LOOP = 0x13
++ IPV6_NEXTHOP = 0x9
++ IPV6_ORIGDSTADDR = 0x4a
++ IPV6_PATHMTU = 0x3d
++ IPV6_PKTINFO = 0x32
++ IPV6_PMTUDISC_DO = 0x2
++ IPV6_PMTUDISC_DONT = 0x0
++ IPV6_PMTUDISC_INTERFACE = 0x4
++ IPV6_PMTUDISC_OMIT = 0x5
++ IPV6_PMTUDISC_PROBE = 0x3
++ IPV6_PMTUDISC_WANT = 0x1
++ IPV6_RECVDSTOPTS = 0x3a
++ IPV6_RECVERR = 0x19
++ IPV6_RECVFRAGSIZE = 0x4d
++ IPV6_RECVHOPLIMIT = 0x33
++ IPV6_RECVHOPOPTS = 0x35
++ IPV6_RECVORIGDSTADDR = 0x4a
++ IPV6_RECVPATHMTU = 0x3c
++ IPV6_RECVPKTINFO = 0x31
++ IPV6_RECVRTHDR = 0x38
++ IPV6_RECVTCLASS = 0x42
++ IPV6_ROUTER_ALERT = 0x16
++ IPV6_ROUTER_ALERT_ISOLATE = 0x1e
++ IPV6_RTHDR = 0x39
++ IPV6_RTHDRDSTOPTS = 0x37
++ IPV6_RTHDR_LOOSE = 0x0
++ IPV6_RTHDR_STRICT = 0x1
++ IPV6_RTHDR_TYPE_0 = 0x0
++ IPV6_RXDSTOPTS = 0x3b
++ IPV6_RXHOPOPTS = 0x36
++ IPV6_TCLASS = 0x43
++ IPV6_TRANSPARENT = 0x4b
++ IPV6_UNICAST_HOPS = 0x10
++ IPV6_UNICAST_IF = 0x4c
++ IPV6_V6ONLY = 0x1a
++ IPV6_XFRM_POLICY = 0x23
++ IP_ADD_MEMBERSHIP = 0x23
++ IP_ADD_SOURCE_MEMBERSHIP = 0x27
++ IP_BIND_ADDRESS_NO_PORT = 0x18
++ IP_BLOCK_SOURCE = 0x26
++ IP_CHECKSUM = 0x17
++ IP_DEFAULT_MULTICAST_LOOP = 0x1
++ IP_DEFAULT_MULTICAST_TTL = 0x1
++ IP_DF = 0x4000
++ IP_DROP_MEMBERSHIP = 0x24
++ IP_DROP_SOURCE_MEMBERSHIP = 0x28
++ IP_FREEBIND = 0xf
++ IP_HDRINCL = 0x3
++ IP_IPSEC_POLICY = 0x10
++ IP_MAXPACKET = 0xffff
++ IP_MAX_MEMBERSHIPS = 0x14
++ IP_MF = 0x2000
++ IP_MINTTL = 0x15
++ IP_MSFILTER = 0x29
++ IP_MSS = 0x240
++ IP_MTU = 0xe
++ IP_MTU_DISCOVER = 0xa
++ IP_MULTICAST_ALL = 0x31
++ IP_MULTICAST_IF = 0x20
++ IP_MULTICAST_LOOP = 0x22
++ IP_MULTICAST_TTL = 0x21
++ IP_NODEFRAG = 0x16
++ IP_OFFMASK = 0x1fff
++ IP_OPTIONS = 0x4
++ IP_ORIGDSTADDR = 0x14
++ IP_PASSSEC = 0x12
++ IP_PKTINFO = 0x8
++ IP_PKTOPTIONS = 0x9
++ IP_PMTUDISC = 0xa
++ IP_PMTUDISC_DO = 0x2
++ IP_PMTUDISC_DONT = 0x0
++ IP_PMTUDISC_INTERFACE = 0x4
++ IP_PMTUDISC_OMIT = 0x5
++ IP_PMTUDISC_PROBE = 0x3
++ IP_PMTUDISC_WANT = 0x1
++ IP_RECVERR = 0xb
++ IP_RECVFRAGSIZE = 0x19
++ IP_RECVOPTS = 0x6
++ IP_RECVORIGDSTADDR = 0x14
++ IP_RECVRETOPTS = 0x7
++ IP_RECVTOS = 0xd
++ IP_RECVTTL = 0xc
++ IP_RETOPTS = 0x7
++ IP_RF = 0x8000
++ IP_ROUTER_ALERT = 0x5
++ IP_TOS = 0x1
++ IP_TRANSPARENT = 0x13
++ IP_TTL = 0x2
++ IP_UNBLOCK_SOURCE = 0x25
++ IP_UNICAST_IF = 0x32
++ IP_XFRM_POLICY = 0x11
++ ISOFS_SUPER_MAGIC = 0x9660
++ ISTRIP = 0x20
++ IUTF8 = 0x4000
++ IXANY = 0x800
++ JFFS2_SUPER_MAGIC = 0x72b6
++ KEXEC_ARCH_386 = 0x30000
++ KEXEC_ARCH_68K = 0x40000
++ KEXEC_ARCH_AARCH64 = 0xb70000
++ KEXEC_ARCH_ARM = 0x280000
++ KEXEC_ARCH_DEFAULT = 0x0
++ KEXEC_ARCH_IA_64 = 0x320000
++ KEXEC_ARCH_MASK = 0xffff0000
++ KEXEC_ARCH_MIPS = 0x80000
++ KEXEC_ARCH_MIPS_LE = 0xa0000
++ KEXEC_ARCH_PARISC = 0xf0000
++ KEXEC_ARCH_PPC = 0x140000
++ KEXEC_ARCH_PPC64 = 0x150000
++ KEXEC_ARCH_S390 = 0x160000
++ KEXEC_ARCH_SH = 0x2a0000
++ KEXEC_ARCH_X86_64 = 0x3e0000
++ KEXEC_FILE_NO_INITRAMFS = 0x4
++ KEXEC_FILE_ON_CRASH = 0x2
++ KEXEC_FILE_UNLOAD = 0x1
++ KEXEC_ON_CRASH = 0x1
++ KEXEC_PRESERVE_CONTEXT = 0x2
++ KEXEC_SEGMENT_MAX = 0x10
++ KEYCTL_ASSUME_AUTHORITY = 0x10
++ KEYCTL_CAPABILITIES = 0x1f
++ KEYCTL_CAPS0_BIG_KEY = 0x10
++ KEYCTL_CAPS0_CAPABILITIES = 0x1
++ KEYCTL_CAPS0_DIFFIE_HELLMAN = 0x4
++ KEYCTL_CAPS0_INVALIDATE = 0x20
++ KEYCTL_CAPS0_MOVE = 0x80
++ KEYCTL_CAPS0_PERSISTENT_KEYRINGS = 0x2
++ KEYCTL_CAPS0_PUBLIC_KEY = 0x8
++ KEYCTL_CAPS0_RESTRICT_KEYRING = 0x40
++ KEYCTL_CAPS1_NS_KEYRING_NAME = 0x1
++ KEYCTL_CAPS1_NS_KEY_TAG = 0x2
++ KEYCTL_CHOWN = 0x4
++ KEYCTL_CLEAR = 0x7
++ KEYCTL_DESCRIBE = 0x6
++ KEYCTL_DH_COMPUTE = 0x17
++ KEYCTL_GET_KEYRING_ID = 0x0
++ KEYCTL_GET_PERSISTENT = 0x16
++ KEYCTL_GET_SECURITY = 0x11
++ KEYCTL_INSTANTIATE = 0xc
++ KEYCTL_INSTANTIATE_IOV = 0x14
++ KEYCTL_INVALIDATE = 0x15
++ KEYCTL_JOIN_SESSION_KEYRING = 0x1
++ KEYCTL_LINK = 0x8
++ KEYCTL_MOVE = 0x1e
++ KEYCTL_MOVE_EXCL = 0x1
++ KEYCTL_NEGATE = 0xd
++ KEYCTL_PKEY_DECRYPT = 0x1a
++ KEYCTL_PKEY_ENCRYPT = 0x19
++ KEYCTL_PKEY_QUERY = 0x18
++ KEYCTL_PKEY_SIGN = 0x1b
++ KEYCTL_PKEY_VERIFY = 0x1c
++ KEYCTL_READ = 0xb
++ KEYCTL_REJECT = 0x13
++ KEYCTL_RESTRICT_KEYRING = 0x1d
++ KEYCTL_REVOKE = 0x3
++ KEYCTL_SEARCH = 0xa
++ KEYCTL_SESSION_TO_PARENT = 0x12
++ KEYCTL_SETPERM = 0x5
++ KEYCTL_SET_REQKEY_KEYRING = 0xe
++ KEYCTL_SET_TIMEOUT = 0xf
++ KEYCTL_SUPPORTS_DECRYPT = 0x2
++ KEYCTL_SUPPORTS_ENCRYPT = 0x1
++ KEYCTL_SUPPORTS_SIGN = 0x4
++ KEYCTL_SUPPORTS_VERIFY = 0x8
++ KEYCTL_UNLINK = 0x9
++ KEYCTL_UPDATE = 0x2
++ KEY_REQKEY_DEFL_DEFAULT = 0x0
++ KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
++ KEY_REQKEY_DEFL_NO_CHANGE = -0x1
++ KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
++ KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
++ KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
++ KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
++ KEY_REQKEY_DEFL_USER_KEYRING = 0x4
++ KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
++ KEY_SPEC_GROUP_KEYRING = -0x6
++ KEY_SPEC_PROCESS_KEYRING = -0x2
++ KEY_SPEC_REQKEY_AUTH_KEY = -0x7
++ KEY_SPEC_REQUESTOR_KEYRING = -0x8
++ KEY_SPEC_SESSION_KEYRING = -0x3
++ KEY_SPEC_THREAD_KEYRING = -0x1
++ KEY_SPEC_USER_KEYRING = -0x4
++ KEY_SPEC_USER_SESSION_KEYRING = -0x5
++ LINUX_REBOOT_CMD_CAD_OFF = 0x0
++ LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
++ LINUX_REBOOT_CMD_HALT = 0xcdef0123
++ LINUX_REBOOT_CMD_KEXEC = 0x45584543
++ LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
++ LINUX_REBOOT_CMD_RESTART = 0x1234567
++ LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
++ LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
++ LINUX_REBOOT_MAGIC1 = 0xfee1dead
++ LINUX_REBOOT_MAGIC2 = 0x28121969
++ LOCK_EX = 0x2
++ LOCK_NB = 0x4
++ LOCK_SH = 0x1
++ LOCK_UN = 0x8
++ LOOP_CLR_FD = 0x4c01
++ LOOP_CTL_ADD = 0x4c80
++ LOOP_CTL_GET_FREE = 0x4c82
++ LOOP_CTL_REMOVE = 0x4c81
++ LOOP_GET_STATUS = 0x4c03
++ LOOP_GET_STATUS64 = 0x4c05
++ LOOP_SET_BLOCK_SIZE = 0x4c09
++ LOOP_SET_CAPACITY = 0x4c07
++ LOOP_SET_DIRECT_IO = 0x4c08
++ LOOP_SET_FD = 0x4c00
++ LOOP_SET_STATUS = 0x4c02
++ LOOP_SET_STATUS64 = 0x4c04
++ LO_KEY_SIZE = 0x20
++ LO_NAME_SIZE = 0x40
++ MADV_COLD = 0x14
++ MADV_DODUMP = 0x11
++ MADV_DOFORK = 0xb
++ MADV_DONTDUMP = 0x10
++ MADV_DONTFORK = 0xa
++ MADV_DONTNEED = 0x4
++ MADV_FREE = 0x8
++ MADV_HUGEPAGE = 0xe
++ MADV_HWPOISON = 0x64
++ MADV_KEEPONFORK = 0x13
++ MADV_MERGEABLE = 0xc
++ MADV_NOHUGEPAGE = 0xf
++ MADV_NORMAL = 0x0
++ MADV_PAGEOUT = 0x15
++ MADV_RANDOM = 0x1
++ MADV_REMOVE = 0x9
++ MADV_SEQUENTIAL = 0x2
++ MADV_UNMERGEABLE = 0xd
++ MADV_WILLNEED = 0x3
++ MADV_WIPEONFORK = 0x12
++ MAP_FILE = 0x0
++ MAP_FIXED = 0x10
++ MAP_FIXED_NOREPLACE = 0x100000
++ MAP_HUGE_MASK = 0x3f
++ MAP_HUGE_SHIFT = 0x1a
++ MAP_PRIVATE = 0x2
++ MAP_SHARED = 0x1
++ MAP_SHARED_VALIDATE = 0x3
++ MAP_TYPE = 0xf
++ MCAST_BLOCK_SOURCE = 0x2b
++ MCAST_EXCLUDE = 0x0
++ MCAST_INCLUDE = 0x1
++ MCAST_JOIN_GROUP = 0x2a
++ MCAST_JOIN_SOURCE_GROUP = 0x2e
++ MCAST_LEAVE_GROUP = 0x2d
++ MCAST_LEAVE_SOURCE_GROUP = 0x2f
++ MCAST_MSFILTER = 0x30
++ MCAST_UNBLOCK_SOURCE = 0x2c
++ MFD_ALLOW_SEALING = 0x2
++ MFD_CLOEXEC = 0x1
++ MFD_HUGETLB = 0x4
++ MFD_HUGE_16GB = -0x78000000
++ MFD_HUGE_16MB = 0x60000000
++ MFD_HUGE_1GB = 0x78000000
++ MFD_HUGE_1MB = 0x50000000
++ MFD_HUGE_256MB = 0x70000000
++ MFD_HUGE_2GB = 0x7c000000
++ MFD_HUGE_2MB = 0x54000000
++ MFD_HUGE_32MB = 0x64000000
++ MFD_HUGE_512KB = 0x4c000000
++ MFD_HUGE_512MB = 0x74000000
++ MFD_HUGE_64KB = 0x40000000
++ MFD_HUGE_8MB = 0x5c000000
++ MFD_HUGE_MASK = 0x3f
++ MFD_HUGE_SHIFT = 0x1a
++ MINIX2_SUPER_MAGIC = 0x2468
++ MINIX2_SUPER_MAGIC2 = 0x2478
++ MINIX3_SUPER_MAGIC = 0x4d5a
++ MINIX_SUPER_MAGIC = 0x137f
++ MINIX_SUPER_MAGIC2 = 0x138f
++ MNT_DETACH = 0x2
++ MNT_EXPIRE = 0x4
++ MNT_FORCE = 0x1
++ MODULE_INIT_IGNORE_MODVERSIONS = 0x1
++ MODULE_INIT_IGNORE_VERMAGIC = 0x2
++ MSDOS_SUPER_MAGIC = 0x4d44
++ MSG_BATCH = 0x40000
++ MSG_CMSG_CLOEXEC = 0x40000000
++ MSG_CONFIRM = 0x800
++ MSG_CTRUNC = 0x8
++ MSG_DONTROUTE = 0x4
++ MSG_DONTWAIT = 0x40
++ MSG_EOR = 0x80
++ MSG_ERRQUEUE = 0x2000
++ MSG_FASTOPEN = 0x20000000
++ MSG_FIN = 0x200
++ MSG_MORE = 0x8000
++ MSG_NOSIGNAL = 0x4000
++ MSG_OOB = 0x1
++ MSG_PEEK = 0x2
++ MSG_PROXY = 0x10
++ MSG_RST = 0x1000
++ MSG_SYN = 0x400
++ MSG_TRUNC = 0x20
++ MSG_TRYHARD = 0x4
++ MSG_WAITALL = 0x100
++ MSG_WAITFORONE = 0x10000
++ MSG_ZEROCOPY = 0x4000000
++ MS_ACTIVE = 0x40000000
++ MS_ASYNC = 0x1
++ MS_BIND = 0x1000
++ MS_BORN = 0x20000000
++ MS_DIRSYNC = 0x80
++ MS_INVALIDATE = 0x2
++ MS_I_VERSION = 0x800000
++ MS_KERNMOUNT = 0x400000
++ MS_LAZYTIME = 0x2000000
++ MS_MANDLOCK = 0x40
++ MS_MGC_MSK = 0xffff0000
++ MS_MGC_VAL = 0xc0ed0000
++ MS_MOVE = 0x2000
++ MS_NOATIME = 0x400
++ MS_NODEV = 0x4
++ MS_NODIRATIME = 0x800
++ MS_NOEXEC = 0x8
++ MS_NOREMOTELOCK = 0x8000000
++ MS_NOSEC = 0x10000000
++ MS_NOSUID = 0x2
++ MS_NOUSER = -0x80000000
++ MS_POSIXACL = 0x10000
++ MS_PRIVATE = 0x40000
++ MS_RDONLY = 0x1
++ MS_REC = 0x4000
++ MS_RELATIME = 0x200000
++ MS_REMOUNT = 0x20
++ MS_RMT_MASK = 0x2800051
++ MS_SHARED = 0x100000
++ MS_SILENT = 0x8000
++ MS_SLAVE = 0x80000
++ MS_STRICTATIME = 0x1000000
++ MS_SUBMOUNT = 0x4000000
++ MS_SYNC = 0x4
++ MS_SYNCHRONOUS = 0x10
++ MS_UNBINDABLE = 0x20000
++ MS_VERBOSE = 0x8000
++ MTD_INODE_FS_MAGIC = 0x11307854
++ NAME_MAX = 0xff
++ NCP_SUPER_MAGIC = 0x564c
++ NETLINK_ADD_MEMBERSHIP = 0x1
++ NETLINK_AUDIT = 0x9
++ NETLINK_BROADCAST_ERROR = 0x4
++ NETLINK_CAP_ACK = 0xa
++ NETLINK_CONNECTOR = 0xb
++ NETLINK_CRYPTO = 0x15
++ NETLINK_DNRTMSG = 0xe
++ NETLINK_DROP_MEMBERSHIP = 0x2
++ NETLINK_ECRYPTFS = 0x13
++ NETLINK_EXT_ACK = 0xb
++ NETLINK_FIB_LOOKUP = 0xa
++ NETLINK_FIREWALL = 0x3
++ NETLINK_GENERIC = 0x10
++ NETLINK_GET_STRICT_CHK = 0xc
++ NETLINK_INET_DIAG = 0x4
++ NETLINK_IP6_FW = 0xd
++ NETLINK_ISCSI = 0x8
++ NETLINK_KOBJECT_UEVENT = 0xf
++ NETLINK_LISTEN_ALL_NSID = 0x8
++ NETLINK_LIST_MEMBERSHIPS = 0x9
++ NETLINK_NETFILTER = 0xc
++ NETLINK_NFLOG = 0x5
++ NETLINK_NO_ENOBUFS = 0x5
++ NETLINK_PKTINFO = 0x3
++ NETLINK_RDMA = 0x14
++ NETLINK_ROUTE = 0x0
++ NETLINK_RX_RING = 0x6
++ NETLINK_SCSITRANSPORT = 0x12
++ NETLINK_SELINUX = 0x7
++ NETLINK_SMC = 0x16
++ NETLINK_SOCK_DIAG = 0x4
++ NETLINK_TX_RING = 0x7
++ NETLINK_UNUSED = 0x1
++ NETLINK_USERSOCK = 0x2
++ NETLINK_XFRM = 0x6
++ NETNSA_MAX = 0x5
++ NETNSA_NSID_NOT_ASSIGNED = -0x1
++ NFNETLINK_V0 = 0x0
++ NFNLGRP_ACCT_QUOTA = 0x8
++ NFNLGRP_CONNTRACK_DESTROY = 0x3
++ NFNLGRP_CONNTRACK_EXP_DESTROY = 0x6
++ NFNLGRP_CONNTRACK_EXP_NEW = 0x4
++ NFNLGRP_CONNTRACK_EXP_UPDATE = 0x5
++ NFNLGRP_CONNTRACK_NEW = 0x1
++ NFNLGRP_CONNTRACK_UPDATE = 0x2
++ NFNLGRP_MAX = 0x9
++ NFNLGRP_NFTABLES = 0x7
++ NFNLGRP_NFTRACE = 0x9
++ NFNLGRP_NONE = 0x0
++ NFNL_BATCH_MAX = 0x1
++ NFNL_MSG_BATCH_BEGIN = 0x10
++ NFNL_MSG_BATCH_END = 0x11
++ NFNL_NFA_NEST = 0x8000
++ NFNL_SUBSYS_ACCT = 0x7
++ NFNL_SUBSYS_COUNT = 0xc
++ NFNL_SUBSYS_CTHELPER = 0x9
++ NFNL_SUBSYS_CTNETLINK = 0x1
++ NFNL_SUBSYS_CTNETLINK_EXP = 0x2
++ NFNL_SUBSYS_CTNETLINK_TIMEOUT = 0x8
++ NFNL_SUBSYS_IPSET = 0x6
++ NFNL_SUBSYS_NFTABLES = 0xa
++ NFNL_SUBSYS_NFT_COMPAT = 0xb
++ NFNL_SUBSYS_NONE = 0x0
++ NFNL_SUBSYS_OSF = 0x5
++ NFNL_SUBSYS_QUEUE = 0x3
++ NFNL_SUBSYS_ULOG = 0x4
++ NFS_SUPER_MAGIC = 0x6969
++ NILFS_SUPER_MAGIC = 0x3434
++ NL0 = 0x0
++ NL1 = 0x100
++ NLA_ALIGNTO = 0x4
++ NLA_F_NESTED = 0x8000
++ NLA_F_NET_BYTEORDER = 0x4000
++ NLA_HDRLEN = 0x4
++ NLMSG_ALIGNTO = 0x4
++ NLMSG_DONE = 0x3
++ NLMSG_ERROR = 0x2
++ NLMSG_HDRLEN = 0x10
++ NLMSG_MIN_TYPE = 0x10
++ NLMSG_NOOP = 0x1
++ NLMSG_OVERRUN = 0x4
++ NLM_F_ACK = 0x4
++ NLM_F_ACK_TLVS = 0x200
++ NLM_F_APPEND = 0x800
++ NLM_F_ATOMIC = 0x400
++ NLM_F_CAPPED = 0x100
++ NLM_F_CREATE = 0x400
++ NLM_F_DUMP = 0x300
++ NLM_F_DUMP_FILTERED = 0x20
++ NLM_F_DUMP_INTR = 0x10
++ NLM_F_ECHO = 0x8
++ NLM_F_EXCL = 0x200
++ NLM_F_MATCH = 0x200
++ NLM_F_MULTI = 0x2
++ NLM_F_NONREC = 0x100
++ NLM_F_REPLACE = 0x100
++ NLM_F_REQUEST = 0x1
++ NLM_F_ROOT = 0x100
++ NSFS_MAGIC = 0x6e736673
++ OCFS2_SUPER_MAGIC = 0x7461636f
++ OCRNL = 0x8
++ OFDEL = 0x80
++ OFILL = 0x40
++ ONLRET = 0x20
++ ONOCR = 0x10
++ OPENPROM_SUPER_MAGIC = 0x9fa1
++ OPOST = 0x1
++ OVERLAYFS_SUPER_MAGIC = 0x794c7630
++ O_ACCMODE = 0x3
++ O_RDONLY = 0x0
++ O_RDWR = 0x2
++ O_WRONLY = 0x1
++ PACKET_ADD_MEMBERSHIP = 0x1
++ PACKET_AUXDATA = 0x8
++ PACKET_BROADCAST = 0x1
++ PACKET_COPY_THRESH = 0x7
++ PACKET_DROP_MEMBERSHIP = 0x2
++ PACKET_FANOUT = 0x12
++ PACKET_FANOUT_CBPF = 0x6
++ PACKET_FANOUT_CPU = 0x2
++ PACKET_FANOUT_DATA = 0x16
++ PACKET_FANOUT_EBPF = 0x7
++ PACKET_FANOUT_FLAG_DEFRAG = 0x8000
++ PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
++ PACKET_FANOUT_FLAG_UNIQUEID = 0x2000
++ PACKET_FANOUT_HASH = 0x0
++ PACKET_FANOUT_LB = 0x1
++ PACKET_FANOUT_QM = 0x5
++ PACKET_FANOUT_RND = 0x4
++ PACKET_FANOUT_ROLLOVER = 0x3
++ PACKET_FASTROUTE = 0x6
++ PACKET_HDRLEN = 0xb
++ PACKET_HOST = 0x0
++ PACKET_IGNORE_OUTGOING = 0x17
++ PACKET_KERNEL = 0x7
++ PACKET_LOOPBACK = 0x5
++ PACKET_LOSS = 0xe
++ PACKET_MR_ALLMULTI = 0x2
++ PACKET_MR_MULTICAST = 0x0
++ PACKET_MR_PROMISC = 0x1
++ PACKET_MR_UNICAST = 0x3
++ PACKET_MULTICAST = 0x2
++ PACKET_ORIGDEV = 0x9
++ PACKET_OTHERHOST = 0x3
++ PACKET_OUTGOING = 0x4
++ PACKET_QDISC_BYPASS = 0x14
++ PACKET_RECV_OUTPUT = 0x3
++ PACKET_RESERVE = 0xc
++ PACKET_ROLLOVER_STATS = 0x15
++ PACKET_RX_RING = 0x5
++ PACKET_STATISTICS = 0x6
++ PACKET_TIMESTAMP = 0x11
++ PACKET_TX_HAS_OFF = 0x13
++ PACKET_TX_RING = 0xd
++ PACKET_TX_TIMESTAMP = 0x10
++ PACKET_USER = 0x6
++ PACKET_VERSION = 0xa
++ PACKET_VNET_HDR = 0xf
++ PARITY_CRC16_PR0 = 0x2
++ PARITY_CRC16_PR0_CCITT = 0x4
++ PARITY_CRC16_PR1 = 0x3
++ PARITY_CRC16_PR1_CCITT = 0x5
++ PARITY_CRC32_PR0_CCITT = 0x6
++ PARITY_CRC32_PR1_CCITT = 0x7
++ PARITY_DEFAULT = 0x0
++ PARITY_NONE = 0x1
++ PARMRK = 0x8
++ PIPEFS_MAGIC = 0x50495045
++ PPC_CMM_MAGIC = 0xc7571590
++ PPPIOCGNPMODE = 0xc008744c
++ PPPIOCNEWUNIT = 0xc004743e
++ PRIO_PGRP = 0x1
++ PRIO_PROCESS = 0x0
++ PRIO_USER = 0x2
++ PROC_SUPER_MAGIC = 0x9fa0
++ PROT_EXEC = 0x4
++ PROT_GROWSDOWN = 0x1000000
++ PROT_GROWSUP = 0x2000000
++ PROT_NONE = 0x0
++ PROT_READ = 0x1
++ PROT_WRITE = 0x2
++ PR_CAPBSET_DROP = 0x18
++ PR_CAPBSET_READ = 0x17
++ PR_CAP_AMBIENT = 0x2f
++ PR_CAP_AMBIENT_CLEAR_ALL = 0x4
++ PR_CAP_AMBIENT_IS_SET = 0x1
++ PR_CAP_AMBIENT_LOWER = 0x3
++ PR_CAP_AMBIENT_RAISE = 0x2
++ PR_ENDIAN_BIG = 0x0
++ PR_ENDIAN_LITTLE = 0x1
++ PR_ENDIAN_PPC_LITTLE = 0x2
++ PR_FPEMU_NOPRINT = 0x1
++ PR_FPEMU_SIGFPE = 0x2
++ PR_FP_EXC_ASYNC = 0x2
++ PR_FP_EXC_DISABLED = 0x0
++ PR_FP_EXC_DIV = 0x10000
++ PR_FP_EXC_INV = 0x100000
++ PR_FP_EXC_NONRECOV = 0x1
++ PR_FP_EXC_OVF = 0x20000
++ PR_FP_EXC_PRECISE = 0x3
++ PR_FP_EXC_RES = 0x80000
++ PR_FP_EXC_SW_ENABLE = 0x80
++ PR_FP_EXC_UND = 0x40000
++ PR_FP_MODE_FR = 0x1
++ PR_FP_MODE_FRE = 0x2
++ PR_GET_CHILD_SUBREAPER = 0x25
++ PR_GET_DUMPABLE = 0x3
++ PR_GET_ENDIAN = 0x13
++ PR_GET_FPEMU = 0x9
++ PR_GET_FPEXC = 0xb
++ PR_GET_FP_MODE = 0x2e
++ PR_GET_IO_FLUSHER = 0x3a
++ PR_GET_KEEPCAPS = 0x7
++ PR_GET_NAME = 0x10
++ PR_GET_NO_NEW_PRIVS = 0x27
++ PR_GET_PDEATHSIG = 0x2
++ PR_GET_SECCOMP = 0x15
++ PR_GET_SECUREBITS = 0x1b
++ PR_GET_SPECULATION_CTRL = 0x34
++ PR_GET_TAGGED_ADDR_CTRL = 0x38
++ PR_GET_THP_DISABLE = 0x2a
++ PR_GET_TID_ADDRESS = 0x28
++ PR_GET_TIMERSLACK = 0x1e
++ PR_GET_TIMING = 0xd
++ PR_GET_TSC = 0x19
++ PR_GET_UNALIGN = 0x5
++ PR_MCE_KILL = 0x21
++ PR_MCE_KILL_CLEAR = 0x0
++ PR_MCE_KILL_DEFAULT = 0x2
++ PR_MCE_KILL_EARLY = 0x1
++ PR_MCE_KILL_GET = 0x22
++ PR_MCE_KILL_LATE = 0x0
++ PR_MCE_KILL_SET = 0x1
++ PR_MPX_DISABLE_MANAGEMENT = 0x2c
++ PR_MPX_ENABLE_MANAGEMENT = 0x2b
++ PR_PAC_APDAKEY = 0x4
++ PR_PAC_APDBKEY = 0x8
++ PR_PAC_APGAKEY = 0x10
++ PR_PAC_APIAKEY = 0x1
++ PR_PAC_APIBKEY = 0x2
++ PR_PAC_RESET_KEYS = 0x36
++ PR_SET_CHILD_SUBREAPER = 0x24
++ PR_SET_DUMPABLE = 0x4
++ PR_SET_ENDIAN = 0x14
++ PR_SET_FPEMU = 0xa
++ PR_SET_FPEXC = 0xc
++ PR_SET_FP_MODE = 0x2d
++ PR_SET_IO_FLUSHER = 0x39
++ PR_SET_KEEPCAPS = 0x8
++ PR_SET_MM = 0x23
++ PR_SET_MM_ARG_END = 0x9
++ PR_SET_MM_ARG_START = 0x8
++ PR_SET_MM_AUXV = 0xc
++ PR_SET_MM_BRK = 0x7
++ PR_SET_MM_END_CODE = 0x2
++ PR_SET_MM_END_DATA = 0x4
++ PR_SET_MM_ENV_END = 0xb
++ PR_SET_MM_ENV_START = 0xa
++ PR_SET_MM_EXE_FILE = 0xd
++ PR_SET_MM_MAP = 0xe
++ PR_SET_MM_MAP_SIZE = 0xf
++ PR_SET_MM_START_BRK = 0x6
++ PR_SET_MM_START_CODE = 0x1
++ PR_SET_MM_START_DATA = 0x3
++ PR_SET_MM_START_STACK = 0x5
++ PR_SET_NAME = 0xf
++ PR_SET_NO_NEW_PRIVS = 0x26
++ PR_SET_PDEATHSIG = 0x1
++ PR_SET_PTRACER = 0x59616d61
++ PR_SET_SECCOMP = 0x16
++ PR_SET_SECUREBITS = 0x1c
++ PR_SET_SPECULATION_CTRL = 0x35
++ PR_SET_TAGGED_ADDR_CTRL = 0x37
++ PR_SET_THP_DISABLE = 0x29
++ PR_SET_TIMERSLACK = 0x1d
++ PR_SET_TIMING = 0xe
++ PR_SET_TSC = 0x1a
++ PR_SET_UNALIGN = 0x6
++ PR_SPEC_DISABLE = 0x4
++ PR_SPEC_DISABLE_NOEXEC = 0x10
++ PR_SPEC_ENABLE = 0x2
++ PR_SPEC_FORCE_DISABLE = 0x8
++ PR_SPEC_INDIRECT_BRANCH = 0x1
++ PR_SPEC_NOT_AFFECTED = 0x0
++ PR_SPEC_PRCTL = 0x1
++ PR_SPEC_STORE_BYPASS = 0x0
++ PR_SVE_GET_VL = 0x33
++ PR_SVE_SET_VL = 0x32
++ PR_SVE_SET_VL_ONEXEC = 0x40000
++ PR_SVE_VL_INHERIT = 0x20000
++ PR_SVE_VL_LEN_MASK = 0xffff
++ PR_TAGGED_ADDR_ENABLE = 0x1
++ PR_TASK_PERF_EVENTS_DISABLE = 0x1f
++ PR_TASK_PERF_EVENTS_ENABLE = 0x20
++ PR_TIMING_STATISTICAL = 0x0
++ PR_TIMING_TIMESTAMP = 0x1
++ PR_TSC_ENABLE = 0x1
++ PR_TSC_SIGSEGV = 0x2
++ PR_UNALIGN_NOPRINT = 0x1
++ PR_UNALIGN_SIGBUS = 0x2
++ PSTOREFS_MAGIC = 0x6165676c
++ PTRACE_ATTACH = 0x10
++ PTRACE_CONT = 0x7
++ PTRACE_DETACH = 0x11
++ PTRACE_EVENTMSG_SYSCALL_ENTRY = 0x1
++ PTRACE_EVENTMSG_SYSCALL_EXIT = 0x2
++ PTRACE_EVENT_CLONE = 0x3
++ PTRACE_EVENT_EXEC = 0x4
++ PTRACE_EVENT_EXIT = 0x6
++ PTRACE_EVENT_FORK = 0x1
++ PTRACE_EVENT_SECCOMP = 0x7
++ PTRACE_EVENT_STOP = 0x80
++ PTRACE_EVENT_VFORK = 0x2
++ PTRACE_EVENT_VFORK_DONE = 0x5
++ PTRACE_GETEVENTMSG = 0x4201
++ PTRACE_GETREGS = 0xc
++ PTRACE_GETREGSET = 0x4204
++ PTRACE_GETSIGINFO = 0x4202
++ PTRACE_GETSIGMASK = 0x420a
++ PTRACE_GET_SYSCALL_INFO = 0x420e
++ PTRACE_INTERRUPT = 0x4207
++ PTRACE_KILL = 0x8
++ PTRACE_LISTEN = 0x4208
++ PTRACE_O_EXITKILL = 0x100000
++ PTRACE_O_MASK = 0x3000ff
++ PTRACE_O_SUSPEND_SECCOMP = 0x200000
++ PTRACE_O_TRACECLONE = 0x8
++ PTRACE_O_TRACEEXEC = 0x10
++ PTRACE_O_TRACEEXIT = 0x40
++ PTRACE_O_TRACEFORK = 0x2
++ PTRACE_O_TRACESECCOMP = 0x80
++ PTRACE_O_TRACESYSGOOD = 0x1
++ PTRACE_O_TRACEVFORK = 0x4
++ PTRACE_O_TRACEVFORKDONE = 0x20
++ PTRACE_PEEKDATA = 0x2
++ PTRACE_PEEKSIGINFO = 0x4209
++ PTRACE_PEEKSIGINFO_SHARED = 0x1
++ PTRACE_PEEKTEXT = 0x1
++ PTRACE_PEEKUSR = 0x3
++ PTRACE_POKEDATA = 0x5
++ PTRACE_POKETEXT = 0x4
++ PTRACE_POKEUSR = 0x6
++ PTRACE_SECCOMP_GET_FILTER = 0x420c
++ PTRACE_SECCOMP_GET_METADATA = 0x420d
++ PTRACE_SEIZE = 0x4206
++ PTRACE_SETOPTIONS = 0x4200
++ PTRACE_SETREGS = 0xd
++ PTRACE_SETREGSET = 0x4205
++ PTRACE_SETSIGINFO = 0x4203
++ PTRACE_SETSIGMASK = 0x420b
++ PTRACE_SINGLESTEP = 0x9
++ PTRACE_SYSCALL = 0x18
++ PTRACE_SYSCALL_INFO_ENTRY = 0x1
++ PTRACE_SYSCALL_INFO_EXIT = 0x2
++ PTRACE_SYSCALL_INFO_NONE = 0x0
++ PTRACE_SYSCALL_INFO_SECCOMP = 0x3
++ PTRACE_TRACEME = 0x0
++ QNX4_SUPER_MAGIC = 0x2f
++ QNX6_SUPER_MAGIC = 0x68191122
++ RAMFS_MAGIC = 0x858458f6
++ RDTGROUP_SUPER_MAGIC = 0x7655821
++ REISERFS_SUPER_MAGIC = 0x52654973
++ RENAME_EXCHANGE = 0x2
++ RENAME_NOREPLACE = 0x1
++ RENAME_WHITEOUT = 0x4
++ RLIMIT_CORE = 0x4
++ RLIMIT_CPU = 0x0
++ RLIMIT_DATA = 0x2
++ RLIMIT_FSIZE = 0x1
++ RLIMIT_LOCKS = 0xa
++ RLIMIT_MSGQUEUE = 0xc
++ RLIMIT_NICE = 0xd
++ RLIMIT_RTPRIO = 0xe
++ RLIMIT_RTTIME = 0xf
++ RLIMIT_SIGPENDING = 0xb
++ RLIMIT_STACK = 0x3
++ RLIM_INFINITY = 0xffffffffffffffff
++ RTAX_ADVMSS = 0x8
++ RTAX_CC_ALGO = 0x10
++ RTAX_CWND = 0x7
++ RTAX_FASTOPEN_NO_COOKIE = 0x11
++ RTAX_FEATURES = 0xc
++ RTAX_FEATURE_ALLFRAG = 0x8
++ RTAX_FEATURE_ECN = 0x1
++ RTAX_FEATURE_MASK = 0xf
++ RTAX_FEATURE_SACK = 0x2
++ RTAX_FEATURE_TIMESTAMP = 0x4
++ RTAX_HOPLIMIT = 0xa
++ RTAX_INITCWND = 0xb
++ RTAX_INITRWND = 0xe
++ RTAX_LOCK = 0x1
++ RTAX_MAX = 0x11
++ RTAX_MTU = 0x2
++ RTAX_QUICKACK = 0xf
++ RTAX_REORDERING = 0x9
++ RTAX_RTO_MIN = 0xd
++ RTAX_RTT = 0x4
++ RTAX_RTTVAR = 0x5
++ RTAX_SSTHRESH = 0x6
++ RTAX_UNSPEC = 0x0
++ RTAX_WINDOW = 0x3
++ RTA_ALIGNTO = 0x4
++ RTA_MAX = 0x1e
++ RTCF_DIRECTSRC = 0x4000000
++ RTCF_DOREDIRECT = 0x1000000
++ RTCF_LOG = 0x2000000
++ RTCF_MASQ = 0x400000
++ RTCF_NAT = 0x800000
++ RTCF_VALVE = 0x200000
++ RTC_AF = 0x20
++ RTC_IRQF = 0x80
++ RTC_MAX_FREQ = 0x2000
++ RTC_PF = 0x40
++ RTC_UF = 0x10
++ RTF_ADDRCLASSMASK = 0xf8000000
++ RTF_ADDRCONF = 0x40000
++ RTF_ALLONLINK = 0x20000
++ RTF_BROADCAST = 0x10000000
++ RTF_CACHE = 0x1000000
++ RTF_DEFAULT = 0x10000
++ RTF_DYNAMIC = 0x10
++ RTF_FLOW = 0x2000000
++ RTF_GATEWAY = 0x2
++ RTF_HOST = 0x4
++ RTF_INTERFACE = 0x40000000
++ RTF_IRTT = 0x100
++ RTF_LINKRT = 0x100000
++ RTF_LOCAL = 0x80000000
++ RTF_MODIFIED = 0x20
++ RTF_MSS = 0x40
++ RTF_MTU = 0x40
++ RTF_MULTICAST = 0x20000000
++ RTF_NAT = 0x8000000
++ RTF_NOFORWARD = 0x1000
++ RTF_NONEXTHOP = 0x200000
++ RTF_NOPMTUDISC = 0x4000
++ RTF_POLICY = 0x4000000
++ RTF_REINSTATE = 0x8
++ RTF_REJECT = 0x200
++ RTF_STATIC = 0x400
++ RTF_THROW = 0x2000
++ RTF_UP = 0x1
++ RTF_WINDOW = 0x80
++ RTF_XRESOLVE = 0x800
++ RTMGRP_DECnet_IFADDR = 0x1000
++ RTMGRP_DECnet_ROUTE = 0x4000
++ RTMGRP_IPV4_IFADDR = 0x10
++ RTMGRP_IPV4_MROUTE = 0x20
++ RTMGRP_IPV4_ROUTE = 0x40
++ RTMGRP_IPV4_RULE = 0x80
++ RTMGRP_IPV6_IFADDR = 0x100
++ RTMGRP_IPV6_IFINFO = 0x800
++ RTMGRP_IPV6_MROUTE = 0x200
++ RTMGRP_IPV6_PREFIX = 0x20000
++ RTMGRP_IPV6_ROUTE = 0x400
++ RTMGRP_LINK = 0x1
++ RTMGRP_NEIGH = 0x4
++ RTMGRP_NOTIFY = 0x2
++ RTMGRP_TC = 0x8
++ RTM_BASE = 0x10
++ RTM_DELACTION = 0x31
++ RTM_DELADDR = 0x15
++ RTM_DELADDRLABEL = 0x49
++ RTM_DELCHAIN = 0x65
++ RTM_DELLINK = 0x11
++ RTM_DELLINKPROP = 0x6d
++ RTM_DELMDB = 0x55
++ RTM_DELNEIGH = 0x1d
++ RTM_DELNETCONF = 0x51
++ RTM_DELNEXTHOP = 0x69
++ RTM_DELNSID = 0x59
++ RTM_DELQDISC = 0x25
++ RTM_DELROUTE = 0x19
++ RTM_DELRULE = 0x21
++ RTM_DELTCLASS = 0x29
++ RTM_DELTFILTER = 0x2d
++ RTM_DELVLAN = 0x71
++ RTM_F_CLONED = 0x200
++ RTM_F_EQUALIZE = 0x400
++ RTM_F_FIB_MATCH = 0x2000
++ RTM_F_LOOKUP_TABLE = 0x1000
++ RTM_F_NOTIFY = 0x100
++ RTM_F_OFFLOAD = 0x4000
++ RTM_F_PREFIX = 0x800
++ RTM_F_TRAP = 0x8000
++ RTM_GETACTION = 0x32
++ RTM_GETADDR = 0x16
++ RTM_GETADDRLABEL = 0x4a
++ RTM_GETANYCAST = 0x3e
++ RTM_GETCHAIN = 0x66
++ RTM_GETDCB = 0x4e
++ RTM_GETLINK = 0x12
++ RTM_GETLINKPROP = 0x6e
++ RTM_GETMDB = 0x56
++ RTM_GETMULTICAST = 0x3a
++ RTM_GETNEIGH = 0x1e
++ RTM_GETNEIGHTBL = 0x42
++ RTM_GETNETCONF = 0x52
++ RTM_GETNEXTHOP = 0x6a
++ RTM_GETNSID = 0x5a
++ RTM_GETQDISC = 0x26
++ RTM_GETROUTE = 0x1a
++ RTM_GETRULE = 0x22
++ RTM_GETSTATS = 0x5e
++ RTM_GETTCLASS = 0x2a
++ RTM_GETTFILTER = 0x2e
++ RTM_GETVLAN = 0x72
++ RTM_MAX = 0x73
++ RTM_NEWACTION = 0x30
++ RTM_NEWADDR = 0x14
++ RTM_NEWADDRLABEL = 0x48
++ RTM_NEWCACHEREPORT = 0x60
++ RTM_NEWCHAIN = 0x64
++ RTM_NEWLINK = 0x10
++ RTM_NEWLINKPROP = 0x6c
++ RTM_NEWMDB = 0x54
++ RTM_NEWNDUSEROPT = 0x44
++ RTM_NEWNEIGH = 0x1c
++ RTM_NEWNEIGHTBL = 0x40
++ RTM_NEWNETCONF = 0x50
++ RTM_NEWNEXTHOP = 0x68
++ RTM_NEWNSID = 0x58
++ RTM_NEWNVLAN = 0x70
++ RTM_NEWPREFIX = 0x34
++ RTM_NEWQDISC = 0x24
++ RTM_NEWROUTE = 0x18
++ RTM_NEWRULE = 0x20
++ RTM_NEWSTATS = 0x5c
++ RTM_NEWTCLASS = 0x28
++ RTM_NEWTFILTER = 0x2c
++ RTM_NR_FAMILIES = 0x19
++ RTM_NR_MSGTYPES = 0x64
++ RTM_SETDCB = 0x4f
++ RTM_SETLINK = 0x13
++ RTM_SETNEIGHTBL = 0x43
++ RTNH_ALIGNTO = 0x4
++ RTNH_COMPARE_MASK = 0x19
++ RTNH_F_DEAD = 0x1
++ RTNH_F_LINKDOWN = 0x10
++ RTNH_F_OFFLOAD = 0x8
++ RTNH_F_ONLINK = 0x4
++ RTNH_F_PERVASIVE = 0x2
++ RTNH_F_UNRESOLVED = 0x20
++ RTN_MAX = 0xb
++ RTPROT_BABEL = 0x2a
++ RTPROT_BGP = 0xba
++ RTPROT_BIRD = 0xc
++ RTPROT_BOOT = 0x3
++ RTPROT_DHCP = 0x10
++ RTPROT_DNROUTED = 0xd
++ RTPROT_EIGRP = 0xc0
++ RTPROT_GATED = 0x8
++ RTPROT_ISIS = 0xbb
++ RTPROT_KERNEL = 0x2
++ RTPROT_MROUTED = 0x11
++ RTPROT_MRT = 0xa
++ RTPROT_NTK = 0xf
++ RTPROT_OSPF = 0xbc
++ RTPROT_RA = 0x9
++ RTPROT_REDIRECT = 0x1
++ RTPROT_RIP = 0xbd
++ RTPROT_STATIC = 0x4
++ RTPROT_UNSPEC = 0x0
++ RTPROT_XORP = 0xe
++ RTPROT_ZEBRA = 0xb
++ RT_CLASS_DEFAULT = 0xfd
++ RT_CLASS_LOCAL = 0xff
++ RT_CLASS_MAIN = 0xfe
++ RT_CLASS_MAX = 0xff
++ RT_CLASS_UNSPEC = 0x0
++ RUSAGE_CHILDREN = -0x1
++ RUSAGE_SELF = 0x0
++ RUSAGE_THREAD = 0x1
++ RWF_APPEND = 0x10
++ RWF_DSYNC = 0x2
++ RWF_HIPRI = 0x1
++ RWF_NOWAIT = 0x8
++ RWF_SUPPORTED = 0x1f
++ RWF_SYNC = 0x4
++ RWF_WRITE_LIFE_NOT_SET = 0x0
++ SCM_CREDENTIALS = 0x2
++ SCM_RIGHTS = 0x1
++ SCM_TIMESTAMP = 0x1d
++ SC_LOG_FLUSH = 0x100000
++ SECCOMP_MODE_DISABLED = 0x0
++ SECCOMP_MODE_FILTER = 0x2
++ SECCOMP_MODE_STRICT = 0x1
++ SECURITYFS_MAGIC = 0x73636673
++ SELINUX_MAGIC = 0xf97cff8c
++ SHUT_RD = 0x0
++ SHUT_RDWR = 0x2
++ SHUT_WR = 0x1
++ SIOCADDDLCI = 0x8980
++ SIOCADDMULTI = 0x8931
++ SIOCADDRT = 0x890b
++ SIOCBONDCHANGEACTIVE = 0x8995
++ SIOCBONDENSLAVE = 0x8990
++ SIOCBONDINFOQUERY = 0x8994
++ SIOCBONDRELEASE = 0x8991
++ SIOCBONDSETHWADDR = 0x8992
++ SIOCBONDSLAVEINFOQUERY = 0x8993
++ SIOCBRADDBR = 0x89a0
++ SIOCBRADDIF = 0x89a2
++ SIOCBRDELBR = 0x89a1
++ SIOCBRDELIF = 0x89a3
++ SIOCDARP = 0x8953
++ SIOCDELDLCI = 0x8981
++ SIOCDELMULTI = 0x8932
++ SIOCDELRT = 0x890c
++ SIOCDEVPRIVATE = 0x89f0
++ SIOCDIFADDR = 0x8936
++ SIOCDRARP = 0x8960
++ SIOCETHTOOL = 0x8946
++ SIOCGARP = 0x8954
++ SIOCGETLINKNAME = 0x89e0
++ SIOCGETNODEID = 0x89e1
++ SIOCGHWTSTAMP = 0x89b1
++ SIOCGIFADDR = 0x8915
++ SIOCGIFBR = 0x8940
++ SIOCGIFBRDADDR = 0x8919
++ SIOCGIFCONF = 0x8912
++ SIOCGIFCOUNT = 0x8938
++ SIOCGIFDSTADDR = 0x8917
++ SIOCGIFENCAP = 0x8925
++ SIOCGIFFLAGS = 0x8913
++ SIOCGIFHWADDR = 0x8927
++ SIOCGIFINDEX = 0x8933
++ SIOCGIFMAP = 0x8970
++ SIOCGIFMEM = 0x891f
++ SIOCGIFMETRIC = 0x891d
++ SIOCGIFMTU = 0x8921
++ SIOCGIFNAME = 0x8910
++ SIOCGIFNETMASK = 0x891b
++ SIOCGIFPFLAGS = 0x8935
++ SIOCGIFSLAVE = 0x8929
++ SIOCGIFTXQLEN = 0x8942
++ SIOCGIFVLAN = 0x8982
++ SIOCGMIIPHY = 0x8947
++ SIOCGMIIREG = 0x8948
++ SIOCGPPPCSTATS = 0x89f2
++ SIOCGPPPSTATS = 0x89f0
++ SIOCGPPPVER = 0x89f1
++ SIOCGRARP = 0x8961
++ SIOCGSKNS = 0x894c
++ SIOCGSTAMP = 0x8906
++ SIOCGSTAMPNS = 0x8907
++ SIOCGSTAMPNS_OLD = 0x8907
++ SIOCGSTAMP_OLD = 0x8906
++ SIOCOUTQNSD = 0x894b
++ SIOCPROTOPRIVATE = 0x89e0
++ SIOCRTMSG = 0x890d
++ SIOCSARP = 0x8955
++ SIOCSHWTSTAMP = 0x89b0
++ SIOCSIFADDR = 0x8916
++ SIOCSIFBR = 0x8941
++ SIOCSIFBRDADDR = 0x891a
++ SIOCSIFDSTADDR = 0x8918
++ SIOCSIFENCAP = 0x8926
++ SIOCSIFFLAGS = 0x8914
++ SIOCSIFHWADDR = 0x8924
++ SIOCSIFHWBROADCAST = 0x8937
++ SIOCSIFLINK = 0x8911
++ SIOCSIFMAP = 0x8971
++ SIOCSIFMEM = 0x8920
++ SIOCSIFMETRIC = 0x891e
++ SIOCSIFMTU = 0x8922
++ SIOCSIFNAME = 0x8923
++ SIOCSIFNETMASK = 0x891c
++ SIOCSIFPFLAGS = 0x8934
++ SIOCSIFSLAVE = 0x8930
++ SIOCSIFTXQLEN = 0x8943
++ SIOCSIFVLAN = 0x8983
++ SIOCSMIIREG = 0x8949
++ SIOCSRARP = 0x8962
++ SIOCWANDEV = 0x894a
++ SMACK_MAGIC = 0x43415d53
++ SMART_AUTOSAVE = 0xd2
++ SMART_AUTO_OFFLINE = 0xdb
++ SMART_DISABLE = 0xd9
++ SMART_ENABLE = 0xd8
++ SMART_HCYL_PASS = 0xc2
++ SMART_IMMEDIATE_OFFLINE = 0xd4
++ SMART_LCYL_PASS = 0x4f
++ SMART_READ_LOG_SECTOR = 0xd5
++ SMART_READ_THRESHOLDS = 0xd1
++ SMART_READ_VALUES = 0xd0
++ SMART_SAVE = 0xd3
++ SMART_STATUS = 0xda
++ SMART_WRITE_LOG_SECTOR = 0xd6
++ SMART_WRITE_THRESHOLDS = 0xd7
++ SMB_SUPER_MAGIC = 0x517b
++ SOCKFS_MAGIC = 0x534f434b
++ SOCK_DCCP = 0x6
++ SOCK_IOC_TYPE = 0x89
++ SOCK_PACKET = 0xa
++ SOCK_RAW = 0x3
++ SOCK_RDM = 0x4
++ SOCK_SEQPACKET = 0x5
++ SOL_AAL = 0x109
++ SOL_ALG = 0x117
++ SOL_ATM = 0x108
++ SOL_CAIF = 0x116
++ SOL_CAN_BASE = 0x64
++ SOL_DCCP = 0x10d
++ SOL_DECNET = 0x105
++ SOL_ICMPV6 = 0x3a
++ SOL_IP = 0x0
++ SOL_IPV6 = 0x29
++ SOL_IRDA = 0x10a
++ SOL_IUCV = 0x115
++ SOL_KCM = 0x119
++ SOL_LLC = 0x10c
++ SOL_NETBEUI = 0x10b
++ SOL_NETLINK = 0x10e
++ SOL_NFC = 0x118
++ SOL_PACKET = 0x107
++ SOL_PNPIPE = 0x113
++ SOL_PPPOL2TP = 0x111
++ SOL_RAW = 0xff
++ SOL_RDS = 0x114
++ SOL_RXRPC = 0x110
++ SOL_TCP = 0x6
++ SOL_TIPC = 0x10f
++ SOL_TLS = 0x11a
++ SOL_X25 = 0x106
++ SOL_XDP = 0x11b
++ SOMAXCONN = 0x1000
++ SO_ATTACH_FILTER = 0x1a
++ SO_DEBUG = 0x1
++ SO_DETACH_BPF = 0x1b
++ SO_DETACH_FILTER = 0x1b
++ SO_EE_CODE_TXTIME_INVALID_PARAM = 0x1
++ SO_EE_CODE_TXTIME_MISSED = 0x2
++ SO_EE_CODE_ZEROCOPY_COPIED = 0x1
++ SO_EE_ORIGIN_ICMP = 0x2
++ SO_EE_ORIGIN_ICMP6 = 0x3
++ SO_EE_ORIGIN_LOCAL = 0x1
++ SO_EE_ORIGIN_NONE = 0x0
++ SO_EE_ORIGIN_TIMESTAMPING = 0x4
++ SO_EE_ORIGIN_TXSTATUS = 0x4
++ SO_EE_ORIGIN_TXTIME = 0x6
++ SO_EE_ORIGIN_ZEROCOPY = 0x5
++ SO_GET_FILTER = 0x1a
++ SO_NO_CHECK = 0xb
++ SO_PEERNAME = 0x1c
++ SO_PRIORITY = 0xc
++ SO_TIMESTAMP = 0x1d
++ SO_TIMESTAMP_OLD = 0x1d
++ SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
++ SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
++ SO_VM_SOCKETS_BUFFER_SIZE = 0x0
++ SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
++ SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
++ SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
++ SO_VM_SOCKETS_TRUSTED = 0x5
++ SPLICE_F_GIFT = 0x8
++ SPLICE_F_MORE = 0x4
++ SPLICE_F_MOVE = 0x1
++ SPLICE_F_NONBLOCK = 0x2
++ SQUASHFS_MAGIC = 0x73717368
++ STACK_END_MAGIC = 0x57ac6e9d
++ STATX_ALL = 0xfff
++ STATX_ATIME = 0x20
++ STATX_ATTR_APPEND = 0x20
++ STATX_ATTR_AUTOMOUNT = 0x1000
++ STATX_ATTR_COMPRESSED = 0x4
++ STATX_ATTR_ENCRYPTED = 0x800
++ STATX_ATTR_IMMUTABLE = 0x10
++ STATX_ATTR_NODUMP = 0x40
++ STATX_ATTR_VERITY = 0x100000
++ STATX_BASIC_STATS = 0x7ff
++ STATX_BLOCKS = 0x400
++ STATX_BTIME = 0x800
++ STATX_CTIME = 0x80
++ STATX_GID = 0x10
++ STATX_INO = 0x100
++ STATX_MODE = 0x2
++ STATX_MTIME = 0x40
++ STATX_NLINK = 0x4
++ STATX_SIZE = 0x200
++ STATX_TYPE = 0x1
++ STATX_UID = 0x8
++ STATX__RESERVED = 0x80000000
++ SYNC_FILE_RANGE_WAIT_AFTER = 0x4
++ SYNC_FILE_RANGE_WAIT_BEFORE = 0x1
++ SYNC_FILE_RANGE_WRITE = 0x2
++ SYNC_FILE_RANGE_WRITE_AND_WAIT = 0x7
++ SYSFS_MAGIC = 0x62656572
++ S_BLKSIZE = 0x200
++ S_IEXEC = 0x40
++ S_IFBLK = 0x6000
++ S_IFCHR = 0x2000
++ S_IFDIR = 0x4000
++ S_IFIFO = 0x1000
++ S_IFLNK = 0xa000
++ S_IFMT = 0xf000
++ S_IFREG = 0x8000
++ S_IFSOCK = 0xc000
++ S_IREAD = 0x100
++ S_IRGRP = 0x20
++ S_IROTH = 0x4
++ S_IRUSR = 0x100
++ S_IRWXG = 0x38
++ S_IRWXO = 0x7
++ S_IRWXU = 0x1c0
++ S_ISGID = 0x400
++ S_ISUID = 0x800
++ S_ISVTX = 0x200
++ S_IWGRP = 0x10
++ S_IWOTH = 0x2
++ S_IWRITE = 0x80
++ S_IWUSR = 0x80
++ S_IXGRP = 0x8
++ S_IXOTH = 0x1
++ S_IXUSR = 0x40
++ TAB0 = 0x0
++ TASKSTATS_CMD_ATTR_MAX = 0x4
++ TASKSTATS_CMD_MAX = 0x2
++ TASKSTATS_GENL_NAME = "TASKSTATS"
++ TASKSTATS_GENL_VERSION = 0x1
++ TASKSTATS_TYPE_MAX = 0x6
++ TASKSTATS_VERSION = 0xa
++ TCIFLUSH = 0x0
++ TCIOFF = 0x2
++ TCIOFLUSH = 0x2
++ TCION = 0x3
++ TCOFLUSH = 0x1
++ TCOOFF = 0x0
++ TCOON = 0x1
++ TCP_BPF_IW = 0x3e9
++ TCP_BPF_SNDCWND_CLAMP = 0x3ea
++ TCP_CC_INFO = 0x1a
++ TCP_CM_INQ = 0x24
++ TCP_CONGESTION = 0xd
++ TCP_COOKIE_IN_ALWAYS = 0x1
++ TCP_COOKIE_MAX = 0x10
++ TCP_COOKIE_MIN = 0x8
++ TCP_COOKIE_OUT_NEVER = 0x2
++ TCP_COOKIE_PAIR_SIZE = 0x20
++ TCP_COOKIE_TRANSACTIONS = 0xf
++ TCP_CORK = 0x3
++ TCP_DEFER_ACCEPT = 0x9
++ TCP_FASTOPEN = 0x17
++ TCP_FASTOPEN_CONNECT = 0x1e
++ TCP_FASTOPEN_KEY = 0x21
++ TCP_FASTOPEN_NO_COOKIE = 0x22
++ TCP_INFO = 0xb
++ TCP_INQ = 0x24
++ TCP_KEEPCNT = 0x6
++ TCP_KEEPIDLE = 0x4
++ TCP_KEEPINTVL = 0x5
++ TCP_LINGER2 = 0x8
++ TCP_MAXSEG = 0x2
++ TCP_MAXWIN = 0xffff
++ TCP_MAX_WINSHIFT = 0xe
++ TCP_MD5SIG = 0xe
++ TCP_MD5SIG_EXT = 0x20
++ TCP_MD5SIG_FLAG_PREFIX = 0x1
++ TCP_MD5SIG_MAXKEYLEN = 0x50
++ TCP_MSS = 0x200
++ TCP_MSS_DEFAULT = 0x218
++ TCP_MSS_DESIRED = 0x4c4
++ TCP_NODELAY = 0x1
++ TCP_NOTSENT_LOWAT = 0x19
++ TCP_QUEUE_SEQ = 0x15
++ TCP_QUICKACK = 0xc
++ TCP_REPAIR = 0x13
++ TCP_REPAIR_OFF = 0x0
++ TCP_REPAIR_OFF_NO_WP = -0x1
++ TCP_REPAIR_ON = 0x1
++ TCP_REPAIR_OPTIONS = 0x16
++ TCP_REPAIR_QUEUE = 0x14
++ TCP_REPAIR_WINDOW = 0x1d
++ TCP_SAVED_SYN = 0x1c
++ TCP_SAVE_SYN = 0x1b
++ TCP_SYNCNT = 0x7
++ TCP_S_DATA_IN = 0x4
++ TCP_S_DATA_OUT = 0x8
++ TCP_THIN_DUPACK = 0x11
++ TCP_THIN_LINEAR_TIMEOUTS = 0x10
++ TCP_TIMESTAMP = 0x18
++ TCP_TX_DELAY = 0x25
++ TCP_ULP = 0x1f
++ TCP_USER_TIMEOUT = 0x12
++ TCP_WINDOW_CLAMP = 0xa
++ TCP_ZEROCOPY_RECEIVE = 0x23
++ TIMER_ABSTIME = 0x1
++ TIOCM_DTR = 0x2
++ TIOCM_LE = 0x1
++ TIOCM_RTS = 0x4
++ TIOCPKT_DATA = 0x0
++ TIOCPKT_DOSTOP = 0x20
++ TIOCPKT_FLUSHREAD = 0x1
++ TIOCPKT_FLUSHWRITE = 0x2
++ TIOCPKT_IOCTL = 0x40
++ TIOCPKT_NOSTOP = 0x10
++ TIOCPKT_START = 0x8
++ TIOCPKT_STOP = 0x4
++ TIPC_ADDR_ID = 0x3
++ TIPC_ADDR_MCAST = 0x1
++ TIPC_ADDR_NAME = 0x2
++ TIPC_ADDR_NAMESEQ = 0x1
++ TIPC_AEAD_ALG_NAME = 0x20
++ TIPC_AEAD_KEYLEN_MAX = 0x24
++ TIPC_AEAD_KEYLEN_MIN = 0x14
++ TIPC_AEAD_KEY_SIZE_MAX = 0x48
++ TIPC_CFG_SRV = 0x0
++ TIPC_CLUSTER_BITS = 0xc
++ TIPC_CLUSTER_MASK = 0xfff000
++ TIPC_CLUSTER_OFFSET = 0xc
++ TIPC_CLUSTER_SIZE = 0xfff
++ TIPC_CONN_SHUTDOWN = 0x5
++ TIPC_CONN_TIMEOUT = 0x82
++ TIPC_CRITICAL_IMPORTANCE = 0x3
++ TIPC_DESTNAME = 0x3
++ TIPC_DEST_DROPPABLE = 0x81
++ TIPC_ERRINFO = 0x1
++ TIPC_ERR_NO_NAME = 0x1
++ TIPC_ERR_NO_NODE = 0x3
++ TIPC_ERR_NO_PORT = 0x2
++ TIPC_ERR_OVERLOAD = 0x4
++ TIPC_GROUP_JOIN = 0x87
++ TIPC_GROUP_LEAVE = 0x88
++ TIPC_GROUP_LOOPBACK = 0x1
++ TIPC_GROUP_MEMBER_EVTS = 0x2
++ TIPC_HIGH_IMPORTANCE = 0x2
++ TIPC_IMPORTANCE = 0x7f
++ TIPC_LINK_STATE = 0x2
++ TIPC_LOW_IMPORTANCE = 0x0
++ TIPC_MAX_BEARER_NAME = 0x20
++ TIPC_MAX_IF_NAME = 0x10
++ TIPC_MAX_LINK_NAME = 0x44
++ TIPC_MAX_MEDIA_NAME = 0x10
++ TIPC_MAX_USER_MSG_SIZE = 0x101d0
++ TIPC_MCAST_BROADCAST = 0x85
++ TIPC_MCAST_REPLICAST = 0x86
++ TIPC_MEDIUM_IMPORTANCE = 0x1
++ TIPC_NODEID_LEN = 0x10
++ TIPC_NODELAY = 0x8a
++ TIPC_NODE_BITS = 0xc
++ TIPC_NODE_MASK = 0xfff
++ TIPC_NODE_OFFSET = 0x0
++ TIPC_NODE_RECVQ_DEPTH = 0x83
++ TIPC_NODE_SIZE = 0xfff
++ TIPC_NODE_STATE = 0x0
++ TIPC_OK = 0x0
++ TIPC_PUBLISHED = 0x1
++ TIPC_RESERVED_TYPES = 0x40
++ TIPC_RETDATA = 0x2
++ TIPC_SERVICE_ADDR = 0x2
++ TIPC_SERVICE_RANGE = 0x1
++ TIPC_SOCKET_ADDR = 0x3
++ TIPC_SOCK_RECVQ_DEPTH = 0x84
++ TIPC_SOCK_RECVQ_USED = 0x89
++ TIPC_SRC_DROPPABLE = 0x80
++ TIPC_SUBSCR_TIMEOUT = 0x3
++ TIPC_SUB_CANCEL = 0x4
++ TIPC_SUB_PORTS = 0x1
++ TIPC_SUB_SERVICE = 0x2
++ TIPC_TOP_SRV = 0x1
++ TIPC_WAIT_FOREVER = 0xffffffff
++ TIPC_WITHDRAWN = 0x2
++ TIPC_ZONE_BITS = 0x8
++ TIPC_ZONE_CLUSTER_MASK = 0xfffff000
++ TIPC_ZONE_MASK = 0xff000000
++ TIPC_ZONE_OFFSET = 0x18
++ TIPC_ZONE_SCOPE = 0x1
++ TIPC_ZONE_SIZE = 0xff
++ TMPFS_MAGIC = 0x1021994
++ TPACKET_ALIGNMENT = 0x10
++ TPACKET_HDRLEN = 0x34
++ TP_STATUS_AVAILABLE = 0x0
++ TP_STATUS_BLK_TMO = 0x20
++ TP_STATUS_COPY = 0x2
++ TP_STATUS_CSUMNOTREADY = 0x8
++ TP_STATUS_CSUM_VALID = 0x80
++ TP_STATUS_KERNEL = 0x0
++ TP_STATUS_LOSING = 0x4
++ TP_STATUS_SENDING = 0x2
++ TP_STATUS_SEND_REQUEST = 0x1
++ TP_STATUS_TS_RAW_HARDWARE = 0x80000000
++ TP_STATUS_TS_SOFTWARE = 0x20000000
++ TP_STATUS_TS_SYS_HARDWARE = 0x40000000
++ TP_STATUS_USER = 0x1
++ TP_STATUS_VLAN_TPID_VALID = 0x40
++ TP_STATUS_VLAN_VALID = 0x10
++ TP_STATUS_WRONG_FORMAT = 0x4
++ TRACEFS_MAGIC = 0x74726163
++ TS_COMM_LEN = 0x20
++ UDF_SUPER_MAGIC = 0x15013346
++ UMOUNT_NOFOLLOW = 0x8
++ USBDEVICE_SUPER_MAGIC = 0x9fa2
++ UTIME_NOW = 0x3fffffff
++ UTIME_OMIT = 0x3ffffffe
++ V9FS_MAGIC = 0x1021997
++ VERASE = 0x2
++ VINTR = 0x0
++ VKILL = 0x3
++ VLNEXT = 0xf
++ VMADDR_CID_ANY = 0xffffffff
++ VMADDR_CID_HOST = 0x2
++ VMADDR_CID_HYPERVISOR = 0x0
++ VMADDR_CID_LOCAL = 0x1
++ VMADDR_PORT_ANY = 0xffffffff
++ VM_SOCKETS_INVALID_VERSION = 0xffffffff
++ VQUIT = 0x1
++ VT0 = 0x0
++ WALL = 0x40000000
++ WCLONE = 0x80000000
++ WCONTINUED = 0x8
++ WDIOC_SETPRETIMEOUT = 0xc0045708
++ WDIOC_SETTIMEOUT = 0xc0045706
++ WEXITED = 0x4
++ WIN_ACKMEDIACHANGE = 0xdb
++ WIN_CHECKPOWERMODE1 = 0xe5
++ WIN_CHECKPOWERMODE2 = 0x98
++ WIN_DEVICE_RESET = 0x8
++ WIN_DIAGNOSE = 0x90
++ WIN_DOORLOCK = 0xde
++ WIN_DOORUNLOCK = 0xdf
++ WIN_DOWNLOAD_MICROCODE = 0x92
++ WIN_FLUSH_CACHE = 0xe7
++ WIN_FLUSH_CACHE_EXT = 0xea
++ WIN_FORMAT = 0x50
++ WIN_GETMEDIASTATUS = 0xda
++ WIN_IDENTIFY = 0xec
++ WIN_IDENTIFY_DMA = 0xee
++ WIN_IDLEIMMEDIATE = 0xe1
++ WIN_INIT = 0x60
++ WIN_MEDIAEJECT = 0xed
++ WIN_MULTREAD = 0xc4
++ WIN_MULTREAD_EXT = 0x29
++ WIN_MULTWRITE = 0xc5
++ WIN_MULTWRITE_EXT = 0x39
++ WIN_NOP = 0x0
++ WIN_PACKETCMD = 0xa0
++ WIN_PIDENTIFY = 0xa1
++ WIN_POSTBOOT = 0xdc
++ WIN_PREBOOT = 0xdd
++ WIN_QUEUED_SERVICE = 0xa2
++ WIN_READ = 0x20
++ WIN_READDMA = 0xc8
++ WIN_READDMA_EXT = 0x25
++ WIN_READDMA_ONCE = 0xc9
++ WIN_READDMA_QUEUED = 0xc7
++ WIN_READDMA_QUEUED_EXT = 0x26
++ WIN_READ_BUFFER = 0xe4
++ WIN_READ_EXT = 0x24
++ WIN_READ_LONG = 0x22
++ WIN_READ_LONG_ONCE = 0x23
++ WIN_READ_NATIVE_MAX = 0xf8
++ WIN_READ_NATIVE_MAX_EXT = 0x27
++ WIN_READ_ONCE = 0x21
++ WIN_RECAL = 0x10
++ WIN_RESTORE = 0x10
++ WIN_SECURITY_DISABLE = 0xf6
++ WIN_SECURITY_ERASE_PREPARE = 0xf3
++ WIN_SECURITY_ERASE_UNIT = 0xf4
++ WIN_SECURITY_FREEZE_LOCK = 0xf5
++ WIN_SECURITY_SET_PASS = 0xf1
++ WIN_SECURITY_UNLOCK = 0xf2
++ WIN_SEEK = 0x70
++ WIN_SETFEATURES = 0xef
++ WIN_SETIDLE1 = 0xe3
++ WIN_SETIDLE2 = 0x97
++ WIN_SETMULT = 0xc6
++ WIN_SET_MAX = 0xf9
++ WIN_SET_MAX_EXT = 0x37
++ WIN_SLEEPNOW1 = 0xe6
++ WIN_SLEEPNOW2 = 0x99
++ WIN_SMART = 0xb0
++ WIN_SPECIFY = 0x91
++ WIN_SRST = 0x8
++ WIN_STANDBY = 0xe2
++ WIN_STANDBY2 = 0x96
++ WIN_STANDBYNOW1 = 0xe0
++ WIN_STANDBYNOW2 = 0x94
++ WIN_VERIFY = 0x40
++ WIN_VERIFY_EXT = 0x42
++ WIN_VERIFY_ONCE = 0x41
++ WIN_WRITE = 0x30
++ WIN_WRITEDMA = 0xca
++ WIN_WRITEDMA_EXT = 0x35
++ WIN_WRITEDMA_ONCE = 0xcb
++ WIN_WRITEDMA_QUEUED = 0xcc
++ WIN_WRITEDMA_QUEUED_EXT = 0x36
++ WIN_WRITE_BUFFER = 0xe8
++ WIN_WRITE_EXT = 0x34
++ WIN_WRITE_LONG = 0x32
++ WIN_WRITE_LONG_ONCE = 0x33
++ WIN_WRITE_ONCE = 0x31
++ WIN_WRITE_SAME = 0xe9
++ WIN_WRITE_VERIFY = 0x3c
++ WNOHANG = 0x1
++ WNOTHREAD = 0x20000000
++ WNOWAIT = 0x1000000
++ WSTOPPED = 0x2
++ WUNTRACED = 0x2
++ XATTR_CREATE = 0x1
++ XATTR_REPLACE = 0x2
++ XDP_COPY = 0x2
++ XDP_FLAGS_DRV_MODE = 0x4
++ XDP_FLAGS_HW_MODE = 0x8
++ XDP_FLAGS_MASK = 0xf
++ XDP_FLAGS_MODES = 0xe
++ XDP_FLAGS_SKB_MODE = 0x2
++ XDP_FLAGS_UPDATE_IF_NOEXIST = 0x1
++ XDP_MMAP_OFFSETS = 0x1
++ XDP_OPTIONS = 0x8
++ XDP_OPTIONS_ZEROCOPY = 0x1
++ XDP_PACKET_HEADROOM = 0x100
++ XDP_PGOFF_RX_RING = 0x0
++ XDP_PGOFF_TX_RING = 0x80000000
++ XDP_RING_NEED_WAKEUP = 0x1
++ XDP_RX_RING = 0x2
++ XDP_SHARED_UMEM = 0x1
++ XDP_STATISTICS = 0x7
++ XDP_TX_RING = 0x3
++ XDP_UMEM_COMPLETION_RING = 0x6
++ XDP_UMEM_FILL_RING = 0x5
++ XDP_UMEM_PGOFF_COMPLETION_RING = 0x180000000
++ XDP_UMEM_PGOFF_FILL_RING = 0x100000000
++ XDP_UMEM_REG = 0x4
++ XDP_UMEM_UNALIGNED_CHUNK_FLAG = 0x1
++ XDP_USE_NEED_WAKEUP = 0x8
++ XDP_ZEROCOPY = 0x4
++ XENFS_SUPER_MAGIC = 0xabba1974
++ XFS_SUPER_MAGIC = 0x58465342
++ Z3FOLD_MAGIC = 0x33
++ ZONEFS_MAGIC = 0x5a4f4653
++ ZSMALLOC_MAGIC = 0x58295829
++)
++
++// Errors
++const (
++ E2BIG = syscall.Errno(0x7)
++ EACCES = syscall.Errno(0xd)
++ EAGAIN = syscall.Errno(0xb)
++ EBADF = syscall.Errno(0x9)
++ EBUSY = syscall.Errno(0x10)
++ ECHILD = syscall.Errno(0xa)
++ EDOM = syscall.Errno(0x21)
++ EEXIST = syscall.Errno(0x11)
++ EFAULT = syscall.Errno(0xe)
++ EFBIG = syscall.Errno(0x1b)
++ EINTR = syscall.Errno(0x4)
++ EINVAL = syscall.Errno(0x16)
++ EIO = syscall.Errno(0x5)
++ EISDIR = syscall.Errno(0x15)
++ EMFILE = syscall.Errno(0x18)
++ EMLINK = syscall.Errno(0x1f)
++ ENFILE = syscall.Errno(0x17)
++ ENODEV = syscall.Errno(0x13)
++ ENOENT = syscall.Errno(0x2)
++ ENOEXEC = syscall.Errno(0x8)
++ ENOMEM = syscall.Errno(0xc)
++ ENOSPC = syscall.Errno(0x1c)
++ ENOTBLK = syscall.Errno(0xf)
++ ENOTDIR = syscall.Errno(0x14)
++ ENOTTY = syscall.Errno(0x19)
++ ENXIO = syscall.Errno(0x6)
++ EPERM = syscall.Errno(0x1)
++ EPIPE = syscall.Errno(0x20)
++ ERANGE = syscall.Errno(0x22)
++ EROFS = syscall.Errno(0x1e)
++ ESPIPE = syscall.Errno(0x1d)
++ ESRCH = syscall.Errno(0x3)
++ ETXTBSY = syscall.Errno(0x1a)
++ EWOULDBLOCK = syscall.Errno(0xb)
++ EXDEV = syscall.Errno(0x12)
++)
++
++// Signals
++const (
++ SIGABRT = syscall.Signal(0x6)
++ SIGALRM = syscall.Signal(0xe)
++ SIGFPE = syscall.Signal(0x8)
++ SIGHUP = syscall.Signal(0x1)
++ SIGILL = syscall.Signal(0x4)
++ SIGINT = syscall.Signal(0x2)
++ SIGIOT = syscall.Signal(0x6)
++ SIGKILL = syscall.Signal(0x9)
++ SIGPIPE = syscall.Signal(0xd)
++ SIGQUIT = syscall.Signal(0x3)
++ SIGSEGV = syscall.Signal(0xb)
++ SIGTERM = syscall.Signal(0xf)
++ SIGTRAP = syscall.Signal(0x5)
++)
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_386.go b/vendor/golang.org/x/sys/unix/zerrors_linux_386.go
+index 33ced1ae..028c9d87 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_linux_386.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_linux_386.go
+@@ -3,7 +3,7 @@
+
+ // +build 386,linux
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/include -m32 _const.go
+
+ package unix
+@@ -11,1868 +11,487 @@ package unix
+ import "syscall"
+
+ const (
+- AF_ALG = 0x26
+- AF_APPLETALK = 0x5
+- AF_ASH = 0x12
+- AF_ATMPVC = 0x8
+- AF_ATMSVC = 0x14
+- AF_AX25 = 0x3
+- AF_BLUETOOTH = 0x1f
+- AF_BRIDGE = 0x7
+- AF_CAIF = 0x25
+- AF_CAN = 0x1d
+- AF_DECnet = 0xc
+- AF_ECONET = 0x13
+- AF_FILE = 0x1
+- AF_IB = 0x1b
+- AF_IEEE802154 = 0x24
+- AF_INET = 0x2
+- AF_INET6 = 0xa
+- AF_IPX = 0x4
+- AF_IRDA = 0x17
+- AF_ISDN = 0x22
+- AF_IUCV = 0x20
+- AF_KCM = 0x29
+- AF_KEY = 0xf
+- AF_LLC = 0x1a
+- AF_LOCAL = 0x1
+- AF_MAX = 0x2b
+- AF_MPLS = 0x1c
+- AF_NETBEUI = 0xd
+- AF_NETLINK = 0x10
+- AF_NETROM = 0x6
+- AF_NFC = 0x27
+- AF_PACKET = 0x11
+- AF_PHONET = 0x23
+- AF_PPPOX = 0x18
+- AF_QIPCRTR = 0x2a
+- AF_RDS = 0x15
+- AF_ROSE = 0xb
+- AF_ROUTE = 0x10
+- AF_RXRPC = 0x21
+- AF_SECURITY = 0xe
+- AF_SNA = 0x16
+- AF_TIPC = 0x1e
+- AF_UNIX = 0x1
+- AF_UNSPEC = 0x0
+- AF_VSOCK = 0x28
+- AF_WANPIPE = 0x19
+- AF_X25 = 0x9
+- ALG_OP_DECRYPT = 0x0
+- ALG_OP_ENCRYPT = 0x1
+- ALG_SET_AEAD_ASSOCLEN = 0x4
+- ALG_SET_AEAD_AUTHSIZE = 0x5
+- ALG_SET_IV = 0x2
+- ALG_SET_KEY = 0x1
+- ALG_SET_OP = 0x3
+- ARPHRD_6LOWPAN = 0x339
+- ARPHRD_ADAPT = 0x108
+- ARPHRD_APPLETLK = 0x8
+- ARPHRD_ARCNET = 0x7
+- ARPHRD_ASH = 0x30d
+- ARPHRD_ATM = 0x13
+- ARPHRD_AX25 = 0x3
+- ARPHRD_BIF = 0x307
+- ARPHRD_CAIF = 0x336
+- ARPHRD_CAN = 0x118
+- ARPHRD_CHAOS = 0x5
+- ARPHRD_CISCO = 0x201
+- ARPHRD_CSLIP = 0x101
+- ARPHRD_CSLIP6 = 0x103
+- ARPHRD_DDCMP = 0x205
+- ARPHRD_DLCI = 0xf
+- ARPHRD_ECONET = 0x30e
+- ARPHRD_EETHER = 0x2
+- ARPHRD_ETHER = 0x1
+- ARPHRD_EUI64 = 0x1b
+- ARPHRD_FCAL = 0x311
+- ARPHRD_FCFABRIC = 0x313
+- ARPHRD_FCPL = 0x312
+- ARPHRD_FCPP = 0x310
+- ARPHRD_FDDI = 0x306
+- ARPHRD_FRAD = 0x302
+- ARPHRD_HDLC = 0x201
+- ARPHRD_HIPPI = 0x30c
+- ARPHRD_HWX25 = 0x110
+- ARPHRD_IEEE1394 = 0x18
+- ARPHRD_IEEE802 = 0x6
+- ARPHRD_IEEE80211 = 0x321
+- ARPHRD_IEEE80211_PRISM = 0x322
+- ARPHRD_IEEE80211_RADIOTAP = 0x323
+- ARPHRD_IEEE802154 = 0x324
+- ARPHRD_IEEE802154_MONITOR = 0x325
+- ARPHRD_IEEE802_TR = 0x320
+- ARPHRD_INFINIBAND = 0x20
+- ARPHRD_IP6GRE = 0x337
+- ARPHRD_IPDDP = 0x309
+- ARPHRD_IPGRE = 0x30a
+- ARPHRD_IRDA = 0x30f
+- ARPHRD_LAPB = 0x204
+- ARPHRD_LOCALTLK = 0x305
+- ARPHRD_LOOPBACK = 0x304
+- ARPHRD_METRICOM = 0x17
+- ARPHRD_NETLINK = 0x338
+- ARPHRD_NETROM = 0x0
+- ARPHRD_NONE = 0xfffe
+- ARPHRD_PHONET = 0x334
+- ARPHRD_PHONET_PIPE = 0x335
+- ARPHRD_PIMREG = 0x30b
+- ARPHRD_PPP = 0x200
+- ARPHRD_PRONET = 0x4
+- ARPHRD_RAWHDLC = 0x206
+- ARPHRD_ROSE = 0x10e
+- ARPHRD_RSRVD = 0x104
+- ARPHRD_SIT = 0x308
+- ARPHRD_SKIP = 0x303
+- ARPHRD_SLIP = 0x100
+- ARPHRD_SLIP6 = 0x102
+- ARPHRD_TUNNEL = 0x300
+- ARPHRD_TUNNEL6 = 0x301
+- ARPHRD_VOID = 0xffff
+- ARPHRD_X25 = 0x10f
+- B0 = 0x0
+- B1000000 = 0x1008
+- B110 = 0x3
+- B115200 = 0x1002
+- B1152000 = 0x1009
+- B1200 = 0x9
+- B134 = 0x4
+- B150 = 0x5
+- B1500000 = 0x100a
+- B1800 = 0xa
+- B19200 = 0xe
+- B200 = 0x6
+- B2000000 = 0x100b
+- B230400 = 0x1003
+- B2400 = 0xb
+- B2500000 = 0x100c
+- B300 = 0x7
+- B3000000 = 0x100d
+- B3500000 = 0x100e
+- B38400 = 0xf
+- B4000000 = 0x100f
+- B460800 = 0x1004
+- B4800 = 0xc
+- B50 = 0x1
+- B500000 = 0x1005
+- B57600 = 0x1001
+- B576000 = 0x1006
+- B600 = 0x8
+- B75 = 0x2
+- B921600 = 0x1007
+- B9600 = 0xd
+- BLKBSZGET = 0x80041270
+- BLKBSZSET = 0x40041271
+- BLKFLSBUF = 0x1261
+- BLKFRAGET = 0x1265
+- BLKFRASET = 0x1264
+- BLKGETSIZE = 0x1260
+- BLKGETSIZE64 = 0x80041272
+- BLKPBSZGET = 0x127b
+- BLKRAGET = 0x1263
+- BLKRASET = 0x1262
+- BLKROGET = 0x125e
+- BLKROSET = 0x125d
+- BLKRRPART = 0x125f
+- BLKSECTGET = 0x1267
+- BLKSECTSET = 0x1266
+- BLKSSZGET = 0x1268
+- BOTHER = 0x1000
+- BPF_A = 0x10
+- BPF_ABS = 0x20
+- BPF_ADD = 0x0
+- BPF_ALU = 0x4
+- BPF_AND = 0x50
+- BPF_B = 0x10
+- BPF_DIV = 0x30
+- BPF_H = 0x8
+- BPF_IMM = 0x0
+- BPF_IND = 0x40
+- BPF_JA = 0x0
+- BPF_JEQ = 0x10
+- BPF_JGE = 0x30
+- BPF_JGT = 0x20
+- BPF_JMP = 0x5
+- BPF_JSET = 0x40
+- BPF_K = 0x0
+- BPF_LD = 0x0
+- BPF_LDX = 0x1
+- BPF_LEN = 0x80
+- BPF_LL_OFF = -0x200000
+- BPF_LSH = 0x60
+- BPF_MAJOR_VERSION = 0x1
+- BPF_MAXINSNS = 0x1000
+- BPF_MEM = 0x60
+- BPF_MEMWORDS = 0x10
+- BPF_MINOR_VERSION = 0x1
+- BPF_MISC = 0x7
+- BPF_MOD = 0x90
+- BPF_MSH = 0xa0
+- BPF_MUL = 0x20
+- BPF_NEG = 0x80
+- BPF_NET_OFF = -0x100000
+- BPF_OR = 0x40
+- BPF_RET = 0x6
+- BPF_RSH = 0x70
+- BPF_ST = 0x2
+- BPF_STX = 0x3
+- BPF_SUB = 0x10
+- BPF_TAX = 0x0
+- BPF_TXA = 0x80
+- BPF_W = 0x0
+- BPF_X = 0x8
+- BPF_XOR = 0xa0
+- BRKINT = 0x2
+- BS0 = 0x0
+- BS1 = 0x2000
+- BSDLY = 0x2000
+- CAN_BCM = 0x2
+- CAN_EFF_FLAG = 0x80000000
+- CAN_EFF_ID_BITS = 0x1d
+- CAN_EFF_MASK = 0x1fffffff
+- CAN_ERR_FLAG = 0x20000000
+- CAN_ERR_MASK = 0x1fffffff
+- CAN_INV_FILTER = 0x20000000
+- CAN_ISOTP = 0x6
+- CAN_MAX_DLC = 0x8
+- CAN_MAX_DLEN = 0x8
+- CAN_MCNET = 0x5
+- CAN_MTU = 0x10
+- CAN_NPROTO = 0x7
+- CAN_RAW = 0x1
+- CAN_RAW_FILTER_MAX = 0x200
+- CAN_RTR_FLAG = 0x40000000
+- CAN_SFF_ID_BITS = 0xb
+- CAN_SFF_MASK = 0x7ff
+- CAN_TP16 = 0x3
+- CAN_TP20 = 0x4
+- CBAUD = 0x100f
+- CBAUDEX = 0x1000
+- CFLUSH = 0xf
+- CIBAUD = 0x100f0000
+- CLOCAL = 0x800
+- CLOCK_BOOTTIME = 0x7
+- CLOCK_BOOTTIME_ALARM = 0x9
+- CLOCK_DEFAULT = 0x0
+- CLOCK_EXT = 0x1
+- CLOCK_INT = 0x2
+- CLOCK_MONOTONIC = 0x1
+- CLOCK_MONOTONIC_COARSE = 0x6
+- CLOCK_MONOTONIC_RAW = 0x4
+- CLOCK_PROCESS_CPUTIME_ID = 0x2
+- CLOCK_REALTIME = 0x0
+- CLOCK_REALTIME_ALARM = 0x8
+- CLOCK_REALTIME_COARSE = 0x5
+- CLOCK_TAI = 0xb
+- CLOCK_THREAD_CPUTIME_ID = 0x3
+- CLOCK_TXFROMRX = 0x4
+- CLOCK_TXINT = 0x3
+- CLONE_CHILD_CLEARTID = 0x200000
+- CLONE_CHILD_SETTID = 0x1000000
+- CLONE_DETACHED = 0x400000
+- CLONE_FILES = 0x400
+- CLONE_FS = 0x200
+- CLONE_IO = 0x80000000
+- CLONE_NEWCGROUP = 0x2000000
+- CLONE_NEWIPC = 0x8000000
+- CLONE_NEWNET = 0x40000000
+- CLONE_NEWNS = 0x20000
+- CLONE_NEWPID = 0x20000000
+- CLONE_NEWUSER = 0x10000000
+- CLONE_NEWUTS = 0x4000000
+- CLONE_PARENT = 0x8000
+- CLONE_PARENT_SETTID = 0x100000
+- CLONE_PTRACE = 0x2000
+- CLONE_SETTLS = 0x80000
+- CLONE_SIGHAND = 0x800
+- CLONE_SYSVSEM = 0x40000
+- CLONE_THREAD = 0x10000
+- CLONE_UNTRACED = 0x800000
+- CLONE_VFORK = 0x4000
+- CLONE_VM = 0x100
+- CMSPAR = 0x40000000
+- CR0 = 0x0
+- CR1 = 0x200
+- CR2 = 0x400
+- CR3 = 0x600
+- CRDLY = 0x600
+- CREAD = 0x80
+- CRTSCTS = 0x80000000
+- CS5 = 0x0
+- CS6 = 0x10
+- CS7 = 0x20
+- CS8 = 0x30
+- CSIGNAL = 0xff
+- CSIZE = 0x30
+- CSTART = 0x11
+- CSTATUS = 0x0
+- CSTOP = 0x13
+- CSTOPB = 0x40
+- CSUSP = 0x1a
+- DT_BLK = 0x6
+- DT_CHR = 0x2
+- DT_DIR = 0x4
+- DT_FIFO = 0x1
+- DT_LNK = 0xa
+- DT_REG = 0x8
+- DT_SOCK = 0xc
+- DT_UNKNOWN = 0x0
+- DT_WHT = 0xe
+- ECHO = 0x8
+- ECHOCTL = 0x200
+- ECHOE = 0x10
+- ECHOK = 0x20
+- ECHOKE = 0x800
+- ECHONL = 0x40
+- ECHOPRT = 0x400
+- EFD_CLOEXEC = 0x80000
+- EFD_NONBLOCK = 0x800
+- EFD_SEMAPHORE = 0x1
+- ENCODING_DEFAULT = 0x0
+- ENCODING_FM_MARK = 0x3
+- ENCODING_FM_SPACE = 0x4
+- ENCODING_MANCHESTER = 0x5
+- ENCODING_NRZ = 0x1
+- ENCODING_NRZI = 0x2
+- EPOLLERR = 0x8
+- EPOLLET = 0x80000000
+- EPOLLEXCLUSIVE = 0x10000000
+- EPOLLHUP = 0x10
+- EPOLLIN = 0x1
+- EPOLLMSG = 0x400
+- EPOLLONESHOT = 0x40000000
+- EPOLLOUT = 0x4
+- EPOLLPRI = 0x2
+- EPOLLRDBAND = 0x80
+- EPOLLRDHUP = 0x2000
+- EPOLLRDNORM = 0x40
+- EPOLLWAKEUP = 0x20000000
+- EPOLLWRBAND = 0x200
+- EPOLLWRNORM = 0x100
+- EPOLL_CLOEXEC = 0x80000
+- EPOLL_CTL_ADD = 0x1
+- EPOLL_CTL_DEL = 0x2
+- EPOLL_CTL_MOD = 0x3
+- ETH_P_1588 = 0x88f7
+- ETH_P_8021AD = 0x88a8
+- ETH_P_8021AH = 0x88e7
+- ETH_P_8021Q = 0x8100
+- ETH_P_80221 = 0x8917
+- ETH_P_802_2 = 0x4
+- ETH_P_802_3 = 0x1
+- ETH_P_802_3_MIN = 0x600
+- ETH_P_802_EX1 = 0x88b5
+- ETH_P_AARP = 0x80f3
+- ETH_P_AF_IUCV = 0xfbfb
+- ETH_P_ALL = 0x3
+- ETH_P_AOE = 0x88a2
+- ETH_P_ARCNET = 0x1a
+- ETH_P_ARP = 0x806
+- ETH_P_ATALK = 0x809b
+- ETH_P_ATMFATE = 0x8884
+- ETH_P_ATMMPOA = 0x884c
+- ETH_P_AX25 = 0x2
+- ETH_P_BATMAN = 0x4305
+- ETH_P_BPQ = 0x8ff
+- ETH_P_CAIF = 0xf7
+- ETH_P_CAN = 0xc
+- ETH_P_CANFD = 0xd
+- ETH_P_CONTROL = 0x16
+- ETH_P_CUST = 0x6006
+- ETH_P_DDCMP = 0x6
+- ETH_P_DEC = 0x6000
+- ETH_P_DIAG = 0x6005
+- ETH_P_DNA_DL = 0x6001
+- ETH_P_DNA_RC = 0x6002
+- ETH_P_DNA_RT = 0x6003
+- ETH_P_DSA = 0x1b
+- ETH_P_ECONET = 0x18
+- ETH_P_EDSA = 0xdada
+- ETH_P_FCOE = 0x8906
+- ETH_P_FIP = 0x8914
+- ETH_P_HDLC = 0x19
+- ETH_P_HSR = 0x892f
+- ETH_P_IEEE802154 = 0xf6
+- ETH_P_IEEEPUP = 0xa00
+- ETH_P_IEEEPUPAT = 0xa01
+- ETH_P_IP = 0x800
+- ETH_P_IPV6 = 0x86dd
+- ETH_P_IPX = 0x8137
+- ETH_P_IRDA = 0x17
+- ETH_P_LAT = 0x6004
+- ETH_P_LINK_CTL = 0x886c
+- ETH_P_LOCALTALK = 0x9
+- ETH_P_LOOP = 0x60
+- ETH_P_LOOPBACK = 0x9000
+- ETH_P_MACSEC = 0x88e5
+- ETH_P_MOBITEX = 0x15
+- ETH_P_MPLS_MC = 0x8848
+- ETH_P_MPLS_UC = 0x8847
+- ETH_P_MVRP = 0x88f5
+- ETH_P_NCSI = 0x88f8
+- ETH_P_PAE = 0x888e
+- ETH_P_PAUSE = 0x8808
+- ETH_P_PHONET = 0xf5
+- ETH_P_PPPTALK = 0x10
+- ETH_P_PPP_DISC = 0x8863
+- ETH_P_PPP_MP = 0x8
+- ETH_P_PPP_SES = 0x8864
+- ETH_P_PRP = 0x88fb
+- ETH_P_PUP = 0x200
+- ETH_P_PUPAT = 0x201
+- ETH_P_QINQ1 = 0x9100
+- ETH_P_QINQ2 = 0x9200
+- ETH_P_QINQ3 = 0x9300
+- ETH_P_RARP = 0x8035
+- ETH_P_SCA = 0x6007
+- ETH_P_SLOW = 0x8809
+- ETH_P_SNAP = 0x5
+- ETH_P_TDLS = 0x890d
+- ETH_P_TEB = 0x6558
+- ETH_P_TIPC = 0x88ca
+- ETH_P_TRAILER = 0x1c
+- ETH_P_TR_802_2 = 0x11
+- ETH_P_TSN = 0x22f0
+- ETH_P_WAN_PPP = 0x7
+- ETH_P_WCCP = 0x883e
+- ETH_P_X25 = 0x805
+- ETH_P_XDSA = 0xf8
+- EXTA = 0xe
+- EXTB = 0xf
+- EXTPROC = 0x10000
+- FALLOC_FL_COLLAPSE_RANGE = 0x8
+- FALLOC_FL_INSERT_RANGE = 0x20
+- FALLOC_FL_KEEP_SIZE = 0x1
+- FALLOC_FL_NO_HIDE_STALE = 0x4
+- FALLOC_FL_PUNCH_HOLE = 0x2
+- FALLOC_FL_UNSHARE_RANGE = 0x40
+- FALLOC_FL_ZERO_RANGE = 0x10
+- FD_CLOEXEC = 0x1
+- FD_SETSIZE = 0x400
+- FF0 = 0x0
+- FF1 = 0x8000
+- FFDLY = 0x8000
+- FLUSHO = 0x1000
+- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
+- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
+- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
+- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
+- FS_ENCRYPTION_MODE_INVALID = 0x0
+- FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
+- FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
+- FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
+- FS_KEY_DESCRIPTOR_SIZE = 0x8
+- FS_KEY_DESC_PREFIX = "fscrypt:"
+- FS_KEY_DESC_PREFIX_SIZE = 0x8
+- FS_MAX_KEY_SIZE = 0x40
+- FS_POLICY_FLAGS_PAD_16 = 0x2
+- FS_POLICY_FLAGS_PAD_32 = 0x3
+- FS_POLICY_FLAGS_PAD_4 = 0x0
+- FS_POLICY_FLAGS_PAD_8 = 0x1
+- FS_POLICY_FLAGS_PAD_MASK = 0x3
+- FS_POLICY_FLAGS_VALID = 0x3
+- F_DUPFD = 0x0
+- F_DUPFD_CLOEXEC = 0x406
+- F_EXLCK = 0x4
+- F_GETFD = 0x1
+- F_GETFL = 0x3
+- F_GETLEASE = 0x401
+- F_GETLK = 0xc
+- F_GETLK64 = 0xc
+- F_GETOWN = 0x9
+- F_GETOWN_EX = 0x10
+- F_GETPIPE_SZ = 0x408
+- F_GETSIG = 0xb
+- F_LOCK = 0x1
+- F_NOTIFY = 0x402
+- F_OFD_GETLK = 0x24
+- F_OFD_SETLK = 0x25
+- F_OFD_SETLKW = 0x26
+- F_OK = 0x0
+- F_RDLCK = 0x0
+- F_SETFD = 0x2
+- F_SETFL = 0x4
+- F_SETLEASE = 0x400
+- F_SETLK = 0xd
+- F_SETLK64 = 0xd
+- F_SETLKW = 0xe
+- F_SETLKW64 = 0xe
+- F_SETOWN = 0x8
+- F_SETOWN_EX = 0xf
+- F_SETPIPE_SZ = 0x407
+- F_SETSIG = 0xa
+- F_SHLCK = 0x8
+- F_TEST = 0x3
+- F_TLOCK = 0x2
+- F_ULOCK = 0x0
+- F_UNLCK = 0x2
+- F_WRLCK = 0x1
+- GENL_ADMIN_PERM = 0x1
+- GENL_CMD_CAP_DO = 0x2
+- GENL_CMD_CAP_DUMP = 0x4
+- GENL_CMD_CAP_HASPOL = 0x8
+- GENL_HDRLEN = 0x4
+- GENL_ID_CTRL = 0x10
+- GENL_ID_PMCRAID = 0x12
+- GENL_ID_VFS_DQUOT = 0x11
+- GENL_MAX_ID = 0x3ff
+- GENL_MIN_ID = 0x10
+- GENL_NAMSIZ = 0x10
+- GENL_START_ALLOC = 0x13
+- GENL_UNS_ADMIN_PERM = 0x10
+- GRND_NONBLOCK = 0x1
+- GRND_RANDOM = 0x2
+- HUPCL = 0x400
+- IBSHIFT = 0x10
+- ICANON = 0x2
+- ICMPV6_FILTER = 0x1
+- ICRNL = 0x100
+- IEXTEN = 0x8000
+- IFA_F_DADFAILED = 0x8
+- IFA_F_DEPRECATED = 0x20
+- IFA_F_HOMEADDRESS = 0x10
+- IFA_F_MANAGETEMPADDR = 0x100
+- IFA_F_MCAUTOJOIN = 0x400
+- IFA_F_NODAD = 0x2
+- IFA_F_NOPREFIXROUTE = 0x200
+- IFA_F_OPTIMISTIC = 0x4
+- IFA_F_PERMANENT = 0x80
+- IFA_F_SECONDARY = 0x1
+- IFA_F_STABLE_PRIVACY = 0x800
+- IFA_F_TEMPORARY = 0x1
+- IFA_F_TENTATIVE = 0x40
+- IFA_MAX = 0x8
+- IFF_ALLMULTI = 0x200
+- IFF_ATTACH_QUEUE = 0x200
+- IFF_AUTOMEDIA = 0x4000
+- IFF_BROADCAST = 0x2
+- IFF_DEBUG = 0x4
+- IFF_DETACH_QUEUE = 0x400
+- IFF_DORMANT = 0x20000
+- IFF_DYNAMIC = 0x8000
+- IFF_ECHO = 0x40000
+- IFF_LOOPBACK = 0x8
+- IFF_LOWER_UP = 0x10000
+- IFF_MASTER = 0x400
+- IFF_MULTICAST = 0x1000
+- IFF_MULTI_QUEUE = 0x100
+- IFF_NOARP = 0x80
+- IFF_NOFILTER = 0x1000
+- IFF_NOTRAILERS = 0x20
+- IFF_NO_PI = 0x1000
+- IFF_ONE_QUEUE = 0x2000
+- IFF_PERSIST = 0x800
+- IFF_POINTOPOINT = 0x10
+- IFF_PORTSEL = 0x2000
+- IFF_PROMISC = 0x100
+- IFF_RUNNING = 0x40
+- IFF_SLAVE = 0x800
+- IFF_TAP = 0x2
+- IFF_TUN = 0x1
+- IFF_TUN_EXCL = 0x8000
+- IFF_UP = 0x1
+- IFF_VNET_HDR = 0x4000
+- IFF_VOLATILE = 0x70c5a
+- IFNAMSIZ = 0x10
+- IGNBRK = 0x1
+- IGNCR = 0x80
+- IGNPAR = 0x4
+- IMAXBEL = 0x2000
+- INLCR = 0x40
+- INPCK = 0x10
+- IN_ACCESS = 0x1
+- IN_ALL_EVENTS = 0xfff
+- IN_ATTRIB = 0x4
+- IN_CLASSA_HOST = 0xffffff
+- IN_CLASSA_MAX = 0x80
+- IN_CLASSA_NET = 0xff000000
+- IN_CLASSA_NSHIFT = 0x18
+- IN_CLASSB_HOST = 0xffff
+- IN_CLASSB_MAX = 0x10000
+- IN_CLASSB_NET = 0xffff0000
+- IN_CLASSB_NSHIFT = 0x10
+- IN_CLASSC_HOST = 0xff
+- IN_CLASSC_NET = 0xffffff00
+- IN_CLASSC_NSHIFT = 0x8
+- IN_CLOEXEC = 0x80000
+- IN_CLOSE = 0x18
+- IN_CLOSE_NOWRITE = 0x10
+- IN_CLOSE_WRITE = 0x8
+- IN_CREATE = 0x100
+- IN_DELETE = 0x200
+- IN_DELETE_SELF = 0x400
+- IN_DONT_FOLLOW = 0x2000000
+- IN_EXCL_UNLINK = 0x4000000
+- IN_IGNORED = 0x8000
+- IN_ISDIR = 0x40000000
+- IN_LOOPBACKNET = 0x7f
+- IN_MASK_ADD = 0x20000000
+- IN_MODIFY = 0x2
+- IN_MOVE = 0xc0
+- IN_MOVED_FROM = 0x40
+- IN_MOVED_TO = 0x80
+- IN_MOVE_SELF = 0x800
+- IN_NONBLOCK = 0x800
+- IN_ONESHOT = 0x80000000
+- IN_ONLYDIR = 0x1000000
+- IN_OPEN = 0x20
+- IN_Q_OVERFLOW = 0x4000
+- IN_UNMOUNT = 0x2000
+- IPPROTO_AH = 0x33
+- IPPROTO_BEETPH = 0x5e
+- IPPROTO_COMP = 0x6c
+- IPPROTO_DCCP = 0x21
+- IPPROTO_DSTOPTS = 0x3c
+- IPPROTO_EGP = 0x8
+- IPPROTO_ENCAP = 0x62
+- IPPROTO_ESP = 0x32
+- IPPROTO_FRAGMENT = 0x2c
+- IPPROTO_GRE = 0x2f
+- IPPROTO_HOPOPTS = 0x0
+- IPPROTO_ICMP = 0x1
+- IPPROTO_ICMPV6 = 0x3a
+- IPPROTO_IDP = 0x16
+- IPPROTO_IGMP = 0x2
+- IPPROTO_IP = 0x0
+- IPPROTO_IPIP = 0x4
+- IPPROTO_IPV6 = 0x29
+- IPPROTO_MH = 0x87
+- IPPROTO_MPLS = 0x89
+- IPPROTO_MTP = 0x5c
+- IPPROTO_NONE = 0x3b
+- IPPROTO_PIM = 0x67
+- IPPROTO_PUP = 0xc
+- IPPROTO_RAW = 0xff
+- IPPROTO_ROUTING = 0x2b
+- IPPROTO_RSVP = 0x2e
+- IPPROTO_SCTP = 0x84
+- IPPROTO_TCP = 0x6
+- IPPROTO_TP = 0x1d
+- IPPROTO_UDP = 0x11
+- IPPROTO_UDPLITE = 0x88
+- IPV6_2292DSTOPTS = 0x4
+- IPV6_2292HOPLIMIT = 0x8
+- IPV6_2292HOPOPTS = 0x3
+- IPV6_2292PKTINFO = 0x2
+- IPV6_2292PKTOPTIONS = 0x6
+- IPV6_2292RTHDR = 0x5
+- IPV6_ADDRFORM = 0x1
+- IPV6_ADD_MEMBERSHIP = 0x14
+- IPV6_AUTHHDR = 0xa
+- IPV6_CHECKSUM = 0x7
+- IPV6_DONTFRAG = 0x3e
+- IPV6_DROP_MEMBERSHIP = 0x15
+- IPV6_DSTOPTS = 0x3b
+- IPV6_HDRINCL = 0x24
+- IPV6_HOPLIMIT = 0x34
+- IPV6_HOPOPTS = 0x36
+- IPV6_IPSEC_POLICY = 0x22
+- IPV6_JOIN_ANYCAST = 0x1b
+- IPV6_JOIN_GROUP = 0x14
+- IPV6_LEAVE_ANYCAST = 0x1c
+- IPV6_LEAVE_GROUP = 0x15
+- IPV6_MTU = 0x18
+- IPV6_MTU_DISCOVER = 0x17
+- IPV6_MULTICAST_HOPS = 0x12
+- IPV6_MULTICAST_IF = 0x11
+- IPV6_MULTICAST_LOOP = 0x13
+- IPV6_NEXTHOP = 0x9
+- IPV6_PATHMTU = 0x3d
+- IPV6_PKTINFO = 0x32
+- IPV6_PMTUDISC_DO = 0x2
+- IPV6_PMTUDISC_DONT = 0x0
+- IPV6_PMTUDISC_INTERFACE = 0x4
+- IPV6_PMTUDISC_OMIT = 0x5
+- IPV6_PMTUDISC_PROBE = 0x3
+- IPV6_PMTUDISC_WANT = 0x1
+- IPV6_RECVDSTOPTS = 0x3a
+- IPV6_RECVERR = 0x19
+- IPV6_RECVHOPLIMIT = 0x33
+- IPV6_RECVHOPOPTS = 0x35
+- IPV6_RECVPATHMTU = 0x3c
+- IPV6_RECVPKTINFO = 0x31
+- IPV6_RECVRTHDR = 0x38
+- IPV6_RECVTCLASS = 0x42
+- IPV6_ROUTER_ALERT = 0x16
+- IPV6_RTHDR = 0x39
+- IPV6_RTHDRDSTOPTS = 0x37
+- IPV6_RTHDR_LOOSE = 0x0
+- IPV6_RTHDR_STRICT = 0x1
+- IPV6_RTHDR_TYPE_0 = 0x0
+- IPV6_RXDSTOPTS = 0x3b
+- IPV6_RXHOPOPTS = 0x36
+- IPV6_TCLASS = 0x43
+- IPV6_UNICAST_HOPS = 0x10
+- IPV6_V6ONLY = 0x1a
+- IPV6_XFRM_POLICY = 0x23
+- IP_ADD_MEMBERSHIP = 0x23
+- IP_ADD_SOURCE_MEMBERSHIP = 0x27
+- IP_BIND_ADDRESS_NO_PORT = 0x18
+- IP_BLOCK_SOURCE = 0x26
+- IP_CHECKSUM = 0x17
+- IP_DEFAULT_MULTICAST_LOOP = 0x1
+- IP_DEFAULT_MULTICAST_TTL = 0x1
+- IP_DF = 0x4000
+- IP_DROP_MEMBERSHIP = 0x24
+- IP_DROP_SOURCE_MEMBERSHIP = 0x28
+- IP_FREEBIND = 0xf
+- IP_HDRINCL = 0x3
+- IP_IPSEC_POLICY = 0x10
+- IP_MAXPACKET = 0xffff
+- IP_MAX_MEMBERSHIPS = 0x14
+- IP_MF = 0x2000
+- IP_MINTTL = 0x15
+- IP_MSFILTER = 0x29
+- IP_MSS = 0x240
+- IP_MTU = 0xe
+- IP_MTU_DISCOVER = 0xa
+- IP_MULTICAST_ALL = 0x31
+- IP_MULTICAST_IF = 0x20
+- IP_MULTICAST_LOOP = 0x22
+- IP_MULTICAST_TTL = 0x21
+- IP_NODEFRAG = 0x16
+- IP_OFFMASK = 0x1fff
+- IP_OPTIONS = 0x4
+- IP_ORIGDSTADDR = 0x14
+- IP_PASSSEC = 0x12
+- IP_PKTINFO = 0x8
+- IP_PKTOPTIONS = 0x9
+- IP_PMTUDISC = 0xa
+- IP_PMTUDISC_DO = 0x2
+- IP_PMTUDISC_DONT = 0x0
+- IP_PMTUDISC_INTERFACE = 0x4
+- IP_PMTUDISC_OMIT = 0x5
+- IP_PMTUDISC_PROBE = 0x3
+- IP_PMTUDISC_WANT = 0x1
+- IP_RECVERR = 0xb
+- IP_RECVOPTS = 0x6
+- IP_RECVORIGDSTADDR = 0x14
+- IP_RECVRETOPTS = 0x7
+- IP_RECVTOS = 0xd
+- IP_RECVTTL = 0xc
+- IP_RETOPTS = 0x7
+- IP_RF = 0x8000
+- IP_ROUTER_ALERT = 0x5
+- IP_TOS = 0x1
+- IP_TRANSPARENT = 0x13
+- IP_TTL = 0x2
+- IP_UNBLOCK_SOURCE = 0x25
+- IP_UNICAST_IF = 0x32
+- IP_XFRM_POLICY = 0x11
+- ISIG = 0x1
+- ISTRIP = 0x20
+- IUCLC = 0x200
+- IUTF8 = 0x4000
+- IXANY = 0x800
+- IXOFF = 0x1000
+- IXON = 0x400
+- KEYCTL_ASSUME_AUTHORITY = 0x10
+- KEYCTL_CHOWN = 0x4
+- KEYCTL_CLEAR = 0x7
+- KEYCTL_DESCRIBE = 0x6
+- KEYCTL_DH_COMPUTE = 0x17
+- KEYCTL_GET_KEYRING_ID = 0x0
+- KEYCTL_GET_PERSISTENT = 0x16
+- KEYCTL_GET_SECURITY = 0x11
+- KEYCTL_INSTANTIATE = 0xc
+- KEYCTL_INSTANTIATE_IOV = 0x14
+- KEYCTL_INVALIDATE = 0x15
+- KEYCTL_JOIN_SESSION_KEYRING = 0x1
+- KEYCTL_LINK = 0x8
+- KEYCTL_NEGATE = 0xd
+- KEYCTL_READ = 0xb
+- KEYCTL_REJECT = 0x13
+- KEYCTL_REVOKE = 0x3
+- KEYCTL_SEARCH = 0xa
+- KEYCTL_SESSION_TO_PARENT = 0x12
+- KEYCTL_SETPERM = 0x5
+- KEYCTL_SET_REQKEY_KEYRING = 0xe
+- KEYCTL_SET_TIMEOUT = 0xf
+- KEYCTL_UNLINK = 0x9
+- KEYCTL_UPDATE = 0x2
+- KEY_REQKEY_DEFL_DEFAULT = 0x0
+- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
+- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
+- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
+- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
+- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
+- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
+- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
+- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
+- KEY_SPEC_GROUP_KEYRING = -0x6
+- KEY_SPEC_PROCESS_KEYRING = -0x2
+- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
+- KEY_SPEC_REQUESTOR_KEYRING = -0x8
+- KEY_SPEC_SESSION_KEYRING = -0x3
+- KEY_SPEC_THREAD_KEYRING = -0x1
+- KEY_SPEC_USER_KEYRING = -0x4
+- KEY_SPEC_USER_SESSION_KEYRING = -0x5
+- LINUX_REBOOT_CMD_CAD_OFF = 0x0
+- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
+- LINUX_REBOOT_CMD_HALT = 0xcdef0123
+- LINUX_REBOOT_CMD_KEXEC = 0x45584543
+- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
+- LINUX_REBOOT_CMD_RESTART = 0x1234567
+- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
+- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
+- LINUX_REBOOT_MAGIC1 = 0xfee1dead
+- LINUX_REBOOT_MAGIC2 = 0x28121969
+- LOCK_EX = 0x2
+- LOCK_NB = 0x4
+- LOCK_SH = 0x1
+- LOCK_UN = 0x8
+- MADV_DODUMP = 0x11
+- MADV_DOFORK = 0xb
+- MADV_DONTDUMP = 0x10
+- MADV_DONTFORK = 0xa
+- MADV_DONTNEED = 0x4
+- MADV_FREE = 0x8
+- MADV_HUGEPAGE = 0xe
+- MADV_HWPOISON = 0x64
+- MADV_MERGEABLE = 0xc
+- MADV_NOHUGEPAGE = 0xf
+- MADV_NORMAL = 0x0
+- MADV_RANDOM = 0x1
+- MADV_REMOVE = 0x9
+- MADV_SEQUENTIAL = 0x2
+- MADV_UNMERGEABLE = 0xd
+- MADV_WILLNEED = 0x3
+- MAP_32BIT = 0x40
+- MAP_ANON = 0x20
+- MAP_ANONYMOUS = 0x20
+- MAP_DENYWRITE = 0x800
+- MAP_EXECUTABLE = 0x1000
+- MAP_FILE = 0x0
+- MAP_FIXED = 0x10
+- MAP_GROWSDOWN = 0x100
+- MAP_HUGETLB = 0x40000
+- MAP_HUGE_MASK = 0x3f
+- MAP_HUGE_SHIFT = 0x1a
+- MAP_LOCKED = 0x2000
+- MAP_NONBLOCK = 0x10000
+- MAP_NORESERVE = 0x4000
+- MAP_POPULATE = 0x8000
+- MAP_PRIVATE = 0x2
+- MAP_SHARED = 0x1
+- MAP_STACK = 0x20000
+- MAP_TYPE = 0xf
+- MCL_CURRENT = 0x1
+- MCL_FUTURE = 0x2
+- MCL_ONFAULT = 0x4
+- MNT_DETACH = 0x2
+- MNT_EXPIRE = 0x4
+- MNT_FORCE = 0x1
+- MSG_BATCH = 0x40000
+- MSG_CMSG_CLOEXEC = 0x40000000
+- MSG_CONFIRM = 0x800
+- MSG_CTRUNC = 0x8
+- MSG_DONTROUTE = 0x4
+- MSG_DONTWAIT = 0x40
+- MSG_EOR = 0x80
+- MSG_ERRQUEUE = 0x2000
+- MSG_FASTOPEN = 0x20000000
+- MSG_FIN = 0x200
+- MSG_MORE = 0x8000
+- MSG_NOSIGNAL = 0x4000
+- MSG_OOB = 0x1
+- MSG_PEEK = 0x2
+- MSG_PROXY = 0x10
+- MSG_RST = 0x1000
+- MSG_SYN = 0x400
+- MSG_TRUNC = 0x20
+- MSG_TRYHARD = 0x4
+- MSG_WAITALL = 0x100
+- MSG_WAITFORONE = 0x10000
+- MS_ACTIVE = 0x40000000
+- MS_ASYNC = 0x1
+- MS_BIND = 0x1000
+- MS_BORN = 0x20000000
+- MS_DIRSYNC = 0x80
+- MS_INVALIDATE = 0x2
+- MS_I_VERSION = 0x800000
+- MS_KERNMOUNT = 0x400000
+- MS_LAZYTIME = 0x2000000
+- MS_MANDLOCK = 0x40
+- MS_MGC_MSK = 0xffff0000
+- MS_MGC_VAL = 0xc0ed0000
+- MS_MOVE = 0x2000
+- MS_NOATIME = 0x400
+- MS_NODEV = 0x4
+- MS_NODIRATIME = 0x800
+- MS_NOEXEC = 0x8
+- MS_NOREMOTELOCK = 0x8000000
+- MS_NOSEC = 0x10000000
+- MS_NOSUID = 0x2
+- MS_NOUSER = -0x80000000
+- MS_POSIXACL = 0x10000
+- MS_PRIVATE = 0x40000
+- MS_RDONLY = 0x1
+- MS_REC = 0x4000
+- MS_RELATIME = 0x200000
+- MS_REMOUNT = 0x20
+- MS_RMT_MASK = 0x2800051
+- MS_SHARED = 0x100000
+- MS_SILENT = 0x8000
+- MS_SLAVE = 0x80000
+- MS_STRICTATIME = 0x1000000
+- MS_SYNC = 0x4
+- MS_SYNCHRONOUS = 0x10
+- MS_UNBINDABLE = 0x20000
+- MS_VERBOSE = 0x8000
+- NAME_MAX = 0xff
+- NETLINK_ADD_MEMBERSHIP = 0x1
+- NETLINK_AUDIT = 0x9
+- NETLINK_BROADCAST_ERROR = 0x4
+- NETLINK_CAP_ACK = 0xa
+- NETLINK_CONNECTOR = 0xb
+- NETLINK_CRYPTO = 0x15
+- NETLINK_DNRTMSG = 0xe
+- NETLINK_DROP_MEMBERSHIP = 0x2
+- NETLINK_ECRYPTFS = 0x13
+- NETLINK_FIB_LOOKUP = 0xa
+- NETLINK_FIREWALL = 0x3
+- NETLINK_GENERIC = 0x10
+- NETLINK_INET_DIAG = 0x4
+- NETLINK_IP6_FW = 0xd
+- NETLINK_ISCSI = 0x8
+- NETLINK_KOBJECT_UEVENT = 0xf
+- NETLINK_LISTEN_ALL_NSID = 0x8
+- NETLINK_LIST_MEMBERSHIPS = 0x9
+- NETLINK_NETFILTER = 0xc
+- NETLINK_NFLOG = 0x5
+- NETLINK_NO_ENOBUFS = 0x5
+- NETLINK_PKTINFO = 0x3
+- NETLINK_RDMA = 0x14
+- NETLINK_ROUTE = 0x0
+- NETLINK_RX_RING = 0x6
+- NETLINK_SCSITRANSPORT = 0x12
+- NETLINK_SELINUX = 0x7
+- NETLINK_SOCK_DIAG = 0x4
+- NETLINK_TX_RING = 0x7
+- NETLINK_UNUSED = 0x1
+- NETLINK_USERSOCK = 0x2
+- NETLINK_XFRM = 0x6
+- NL0 = 0x0
+- NL1 = 0x100
+- NLA_ALIGNTO = 0x4
+- NLA_F_NESTED = 0x8000
+- NLA_F_NET_BYTEORDER = 0x4000
+- NLA_HDRLEN = 0x4
+- NLDLY = 0x100
+- NLMSG_ALIGNTO = 0x4
+- NLMSG_DONE = 0x3
+- NLMSG_ERROR = 0x2
+- NLMSG_HDRLEN = 0x10
+- NLMSG_MIN_TYPE = 0x10
+- NLMSG_NOOP = 0x1
+- NLMSG_OVERRUN = 0x4
+- NLM_F_ACK = 0x4
+- NLM_F_APPEND = 0x800
+- NLM_F_ATOMIC = 0x400
+- NLM_F_CREATE = 0x400
+- NLM_F_DUMP = 0x300
+- NLM_F_DUMP_FILTERED = 0x20
+- NLM_F_DUMP_INTR = 0x10
+- NLM_F_ECHO = 0x8
+- NLM_F_EXCL = 0x200
+- NLM_F_MATCH = 0x200
+- NLM_F_MULTI = 0x2
+- NLM_F_REPLACE = 0x100
+- NLM_F_REQUEST = 0x1
+- NLM_F_ROOT = 0x100
+- NOFLSH = 0x80
+- OCRNL = 0x8
+- OFDEL = 0x80
+- OFILL = 0x40
+- OLCUC = 0x2
+- ONLCR = 0x4
+- ONLRET = 0x20
+- ONOCR = 0x10
+- OPOST = 0x1
+- O_ACCMODE = 0x3
+- O_APPEND = 0x400
+- O_ASYNC = 0x2000
+- O_CLOEXEC = 0x80000
+- O_CREAT = 0x40
+- O_DIRECT = 0x4000
+- O_DIRECTORY = 0x10000
+- O_DSYNC = 0x1000
+- O_EXCL = 0x80
+- O_FSYNC = 0x101000
+- O_LARGEFILE = 0x8000
+- O_NDELAY = 0x800
+- O_NOATIME = 0x40000
+- O_NOCTTY = 0x100
+- O_NOFOLLOW = 0x20000
+- O_NONBLOCK = 0x800
+- O_PATH = 0x200000
+- O_RDONLY = 0x0
+- O_RDWR = 0x2
+- O_RSYNC = 0x101000
+- O_SYNC = 0x101000
+- O_TMPFILE = 0x410000
+- O_TRUNC = 0x200
+- O_WRONLY = 0x1
+- PACKET_ADD_MEMBERSHIP = 0x1
+- PACKET_AUXDATA = 0x8
+- PACKET_BROADCAST = 0x1
+- PACKET_COPY_THRESH = 0x7
+- PACKET_DROP_MEMBERSHIP = 0x2
+- PACKET_FANOUT = 0x12
+- PACKET_FANOUT_CBPF = 0x6
+- PACKET_FANOUT_CPU = 0x2
+- PACKET_FANOUT_DATA = 0x16
+- PACKET_FANOUT_EBPF = 0x7
+- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
+- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
+- PACKET_FANOUT_HASH = 0x0
+- PACKET_FANOUT_LB = 0x1
+- PACKET_FANOUT_QM = 0x5
+- PACKET_FANOUT_RND = 0x4
+- PACKET_FANOUT_ROLLOVER = 0x3
+- PACKET_FASTROUTE = 0x6
+- PACKET_HDRLEN = 0xb
+- PACKET_HOST = 0x0
+- PACKET_KERNEL = 0x7
+- PACKET_LOOPBACK = 0x5
+- PACKET_LOSS = 0xe
+- PACKET_MR_ALLMULTI = 0x2
+- PACKET_MR_MULTICAST = 0x0
+- PACKET_MR_PROMISC = 0x1
+- PACKET_MR_UNICAST = 0x3
+- PACKET_MULTICAST = 0x2
+- PACKET_ORIGDEV = 0x9
+- PACKET_OTHERHOST = 0x3
+- PACKET_OUTGOING = 0x4
+- PACKET_QDISC_BYPASS = 0x14
+- PACKET_RECV_OUTPUT = 0x3
+- PACKET_RESERVE = 0xc
+- PACKET_ROLLOVER_STATS = 0x15
+- PACKET_RX_RING = 0x5
+- PACKET_STATISTICS = 0x6
+- PACKET_TIMESTAMP = 0x11
+- PACKET_TX_HAS_OFF = 0x13
+- PACKET_TX_RING = 0xd
+- PACKET_TX_TIMESTAMP = 0x10
+- PACKET_USER = 0x6
+- PACKET_VERSION = 0xa
+- PACKET_VNET_HDR = 0xf
+- PARENB = 0x100
+- PARITY_CRC16_PR0 = 0x2
+- PARITY_CRC16_PR0_CCITT = 0x4
+- PARITY_CRC16_PR1 = 0x3
+- PARITY_CRC16_PR1_CCITT = 0x5
+- PARITY_CRC32_PR0_CCITT = 0x6
+- PARITY_CRC32_PR1_CCITT = 0x7
+- PARITY_DEFAULT = 0x0
+- PARITY_NONE = 0x1
+- PARMRK = 0x8
+- PARODD = 0x200
+- PENDIN = 0x4000
+- PERF_EVENT_IOC_DISABLE = 0x2401
+- PERF_EVENT_IOC_ENABLE = 0x2400
+- PERF_EVENT_IOC_ID = 0x80042407
+- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
+- PERF_EVENT_IOC_PERIOD = 0x40082404
+- PERF_EVENT_IOC_REFRESH = 0x2402
+- PERF_EVENT_IOC_RESET = 0x2403
+- PERF_EVENT_IOC_SET_BPF = 0x40042408
+- PERF_EVENT_IOC_SET_FILTER = 0x40042406
+- PERF_EVENT_IOC_SET_OUTPUT = 0x2405
+- PRIO_PGRP = 0x1
+- PRIO_PROCESS = 0x0
+- PRIO_USER = 0x2
+- PROT_EXEC = 0x4
+- PROT_GROWSDOWN = 0x1000000
+- PROT_GROWSUP = 0x2000000
+- PROT_NONE = 0x0
+- PROT_READ = 0x1
+- PROT_WRITE = 0x2
+- PR_CAPBSET_DROP = 0x18
+- PR_CAPBSET_READ = 0x17
+- PR_CAP_AMBIENT = 0x2f
+- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
+- PR_CAP_AMBIENT_IS_SET = 0x1
+- PR_CAP_AMBIENT_LOWER = 0x3
+- PR_CAP_AMBIENT_RAISE = 0x2
+- PR_ENDIAN_BIG = 0x0
+- PR_ENDIAN_LITTLE = 0x1
+- PR_ENDIAN_PPC_LITTLE = 0x2
+- PR_FPEMU_NOPRINT = 0x1
+- PR_FPEMU_SIGFPE = 0x2
+- PR_FP_EXC_ASYNC = 0x2
+- PR_FP_EXC_DISABLED = 0x0
+- PR_FP_EXC_DIV = 0x10000
+- PR_FP_EXC_INV = 0x100000
+- PR_FP_EXC_NONRECOV = 0x1
+- PR_FP_EXC_OVF = 0x20000
+- PR_FP_EXC_PRECISE = 0x3
+- PR_FP_EXC_RES = 0x80000
+- PR_FP_EXC_SW_ENABLE = 0x80
+- PR_FP_EXC_UND = 0x40000
+- PR_FP_MODE_FR = 0x1
+- PR_FP_MODE_FRE = 0x2
+- PR_GET_CHILD_SUBREAPER = 0x25
+- PR_GET_DUMPABLE = 0x3
+- PR_GET_ENDIAN = 0x13
+- PR_GET_FPEMU = 0x9
+- PR_GET_FPEXC = 0xb
+- PR_GET_FP_MODE = 0x2e
+- PR_GET_KEEPCAPS = 0x7
+- PR_GET_NAME = 0x10
+- PR_GET_NO_NEW_PRIVS = 0x27
+- PR_GET_PDEATHSIG = 0x2
+- PR_GET_SECCOMP = 0x15
+- PR_GET_SECUREBITS = 0x1b
+- PR_GET_THP_DISABLE = 0x2a
+- PR_GET_TID_ADDRESS = 0x28
+- PR_GET_TIMERSLACK = 0x1e
+- PR_GET_TIMING = 0xd
+- PR_GET_TSC = 0x19
+- PR_GET_UNALIGN = 0x5
+- PR_MCE_KILL = 0x21
+- PR_MCE_KILL_CLEAR = 0x0
+- PR_MCE_KILL_DEFAULT = 0x2
+- PR_MCE_KILL_EARLY = 0x1
+- PR_MCE_KILL_GET = 0x22
+- PR_MCE_KILL_LATE = 0x0
+- PR_MCE_KILL_SET = 0x1
+- PR_MPX_DISABLE_MANAGEMENT = 0x2c
+- PR_MPX_ENABLE_MANAGEMENT = 0x2b
+- PR_SET_CHILD_SUBREAPER = 0x24
+- PR_SET_DUMPABLE = 0x4
+- PR_SET_ENDIAN = 0x14
+- PR_SET_FPEMU = 0xa
+- PR_SET_FPEXC = 0xc
+- PR_SET_FP_MODE = 0x2d
+- PR_SET_KEEPCAPS = 0x8
+- PR_SET_MM = 0x23
+- PR_SET_MM_ARG_END = 0x9
+- PR_SET_MM_ARG_START = 0x8
+- PR_SET_MM_AUXV = 0xc
+- PR_SET_MM_BRK = 0x7
+- PR_SET_MM_END_CODE = 0x2
+- PR_SET_MM_END_DATA = 0x4
+- PR_SET_MM_ENV_END = 0xb
+- PR_SET_MM_ENV_START = 0xa
+- PR_SET_MM_EXE_FILE = 0xd
+- PR_SET_MM_MAP = 0xe
+- PR_SET_MM_MAP_SIZE = 0xf
+- PR_SET_MM_START_BRK = 0x6
+- PR_SET_MM_START_CODE = 0x1
+- PR_SET_MM_START_DATA = 0x3
+- PR_SET_MM_START_STACK = 0x5
+- PR_SET_NAME = 0xf
+- PR_SET_NO_NEW_PRIVS = 0x26
+- PR_SET_PDEATHSIG = 0x1
+- PR_SET_PTRACER = 0x59616d61
+- PR_SET_PTRACER_ANY = 0xffffffff
+- PR_SET_SECCOMP = 0x16
+- PR_SET_SECUREBITS = 0x1c
+- PR_SET_THP_DISABLE = 0x29
+- PR_SET_TIMERSLACK = 0x1d
+- PR_SET_TIMING = 0xe
+- PR_SET_TSC = 0x1a
+- PR_SET_UNALIGN = 0x6
+- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
+- PR_TASK_PERF_EVENTS_ENABLE = 0x20
+- PR_TIMING_STATISTICAL = 0x0
+- PR_TIMING_TIMESTAMP = 0x1
+- PR_TSC_ENABLE = 0x1
+- PR_TSC_SIGSEGV = 0x2
+- PR_UNALIGN_NOPRINT = 0x1
+- PR_UNALIGN_SIGBUS = 0x2
+- PTRACE_ATTACH = 0x10
+- PTRACE_CONT = 0x7
+- PTRACE_DETACH = 0x11
+- PTRACE_EVENT_CLONE = 0x3
+- PTRACE_EVENT_EXEC = 0x4
+- PTRACE_EVENT_EXIT = 0x6
+- PTRACE_EVENT_FORK = 0x1
+- PTRACE_EVENT_SECCOMP = 0x7
+- PTRACE_EVENT_STOP = 0x80
+- PTRACE_EVENT_VFORK = 0x2
+- PTRACE_EVENT_VFORK_DONE = 0x5
+- PTRACE_GETEVENTMSG = 0x4201
+- PTRACE_GETFPREGS = 0xe
+- PTRACE_GETFPXREGS = 0x12
+- PTRACE_GETREGS = 0xc
+- PTRACE_GETREGSET = 0x4204
+- PTRACE_GETSIGINFO = 0x4202
+- PTRACE_GETSIGMASK = 0x420a
+- PTRACE_GET_THREAD_AREA = 0x19
+- PTRACE_INTERRUPT = 0x4207
+- PTRACE_KILL = 0x8
+- PTRACE_LISTEN = 0x4208
+- PTRACE_OLDSETOPTIONS = 0x15
+- PTRACE_O_EXITKILL = 0x100000
+- PTRACE_O_MASK = 0x3000ff
+- PTRACE_O_SUSPEND_SECCOMP = 0x200000
+- PTRACE_O_TRACECLONE = 0x8
+- PTRACE_O_TRACEEXEC = 0x10
+- PTRACE_O_TRACEEXIT = 0x40
+- PTRACE_O_TRACEFORK = 0x2
+- PTRACE_O_TRACESECCOMP = 0x80
+- PTRACE_O_TRACESYSGOOD = 0x1
+- PTRACE_O_TRACEVFORK = 0x4
+- PTRACE_O_TRACEVFORKDONE = 0x20
+- PTRACE_PEEKDATA = 0x2
+- PTRACE_PEEKSIGINFO = 0x4209
+- PTRACE_PEEKSIGINFO_SHARED = 0x1
+- PTRACE_PEEKTEXT = 0x1
+- PTRACE_PEEKUSR = 0x3
+- PTRACE_POKEDATA = 0x5
+- PTRACE_POKETEXT = 0x4
+- PTRACE_POKEUSR = 0x6
+- PTRACE_SECCOMP_GET_FILTER = 0x420c
+- PTRACE_SEIZE = 0x4206
+- PTRACE_SETFPREGS = 0xf
+- PTRACE_SETFPXREGS = 0x13
+- PTRACE_SETOPTIONS = 0x4200
+- PTRACE_SETREGS = 0xd
+- PTRACE_SETREGSET = 0x4205
+- PTRACE_SETSIGINFO = 0x4203
+- PTRACE_SETSIGMASK = 0x420b
+- PTRACE_SET_THREAD_AREA = 0x1a
+- PTRACE_SINGLEBLOCK = 0x21
+- PTRACE_SINGLESTEP = 0x9
+- PTRACE_SYSCALL = 0x18
+- PTRACE_SYSEMU = 0x1f
+- PTRACE_SYSEMU_SINGLESTEP = 0x20
+- PTRACE_TRACEME = 0x0
+- RLIMIT_AS = 0x9
+- RLIMIT_CORE = 0x4
+- RLIMIT_CPU = 0x0
+- RLIMIT_DATA = 0x2
+- RLIMIT_FSIZE = 0x1
+- RLIMIT_LOCKS = 0xa
+- RLIMIT_MEMLOCK = 0x8
+- RLIMIT_MSGQUEUE = 0xc
+- RLIMIT_NICE = 0xd
+- RLIMIT_NOFILE = 0x7
+- RLIMIT_NPROC = 0x6
+- RLIMIT_RSS = 0x5
+- RLIMIT_RTPRIO = 0xe
+- RLIMIT_RTTIME = 0xf
+- RLIMIT_SIGPENDING = 0xb
+- RLIMIT_STACK = 0x3
+- RLIM_INFINITY = -0x1
+- RTAX_ADVMSS = 0x8
+- RTAX_CC_ALGO = 0x10
+- RTAX_CWND = 0x7
+- RTAX_FEATURES = 0xc
+- RTAX_FEATURE_ALLFRAG = 0x8
+- RTAX_FEATURE_ECN = 0x1
+- RTAX_FEATURE_MASK = 0xf
+- RTAX_FEATURE_SACK = 0x2
+- RTAX_FEATURE_TIMESTAMP = 0x4
+- RTAX_HOPLIMIT = 0xa
+- RTAX_INITCWND = 0xb
+- RTAX_INITRWND = 0xe
+- RTAX_LOCK = 0x1
+- RTAX_MAX = 0x10
+- RTAX_MTU = 0x2
+- RTAX_QUICKACK = 0xf
+- RTAX_REORDERING = 0x9
+- RTAX_RTO_MIN = 0xd
+- RTAX_RTT = 0x4
+- RTAX_RTTVAR = 0x5
+- RTAX_SSTHRESH = 0x6
+- RTAX_UNSPEC = 0x0
+- RTAX_WINDOW = 0x3
+- RTA_ALIGNTO = 0x4
+- RTA_MAX = 0x19
+- RTCF_DIRECTSRC = 0x4000000
+- RTCF_DOREDIRECT = 0x1000000
+- RTCF_LOG = 0x2000000
+- RTCF_MASQ = 0x400000
+- RTCF_NAT = 0x800000
+- RTCF_VALVE = 0x200000
+- RTF_ADDRCLASSMASK = 0xf8000000
+- RTF_ADDRCONF = 0x40000
+- RTF_ALLONLINK = 0x20000
+- RTF_BROADCAST = 0x10000000
+- RTF_CACHE = 0x1000000
+- RTF_DEFAULT = 0x10000
+- RTF_DYNAMIC = 0x10
+- RTF_FLOW = 0x2000000
+- RTF_GATEWAY = 0x2
+- RTF_HOST = 0x4
+- RTF_INTERFACE = 0x40000000
+- RTF_IRTT = 0x100
+- RTF_LINKRT = 0x100000
+- RTF_LOCAL = 0x80000000
+- RTF_MODIFIED = 0x20
+- RTF_MSS = 0x40
+- RTF_MTU = 0x40
+- RTF_MULTICAST = 0x20000000
+- RTF_NAT = 0x8000000
+- RTF_NOFORWARD = 0x1000
+- RTF_NONEXTHOP = 0x200000
+- RTF_NOPMTUDISC = 0x4000
+- RTF_POLICY = 0x4000000
+- RTF_REINSTATE = 0x8
+- RTF_REJECT = 0x200
+- RTF_STATIC = 0x400
+- RTF_THROW = 0x2000
+- RTF_UP = 0x1
+- RTF_WINDOW = 0x80
+- RTF_XRESOLVE = 0x800
+- RTM_BASE = 0x10
+- RTM_DELACTION = 0x31
+- RTM_DELADDR = 0x15
+- RTM_DELADDRLABEL = 0x49
+- RTM_DELLINK = 0x11
+- RTM_DELMDB = 0x55
+- RTM_DELNEIGH = 0x1d
+- RTM_DELNSID = 0x59
+- RTM_DELQDISC = 0x25
+- RTM_DELROUTE = 0x19
+- RTM_DELRULE = 0x21
+- RTM_DELTCLASS = 0x29
+- RTM_DELTFILTER = 0x2d
+- RTM_F_CLONED = 0x200
+- RTM_F_EQUALIZE = 0x400
+- RTM_F_LOOKUP_TABLE = 0x1000
+- RTM_F_NOTIFY = 0x100
+- RTM_F_PREFIX = 0x800
+- RTM_GETACTION = 0x32
+- RTM_GETADDR = 0x16
+- RTM_GETADDRLABEL = 0x4a
+- RTM_GETANYCAST = 0x3e
+- RTM_GETDCB = 0x4e
+- RTM_GETLINK = 0x12
+- RTM_GETMDB = 0x56
+- RTM_GETMULTICAST = 0x3a
+- RTM_GETNEIGH = 0x1e
+- RTM_GETNEIGHTBL = 0x42
+- RTM_GETNETCONF = 0x52
+- RTM_GETNSID = 0x5a
+- RTM_GETQDISC = 0x26
+- RTM_GETROUTE = 0x1a
+- RTM_GETRULE = 0x22
+- RTM_GETSTATS = 0x5e
+- RTM_GETTCLASS = 0x2a
+- RTM_GETTFILTER = 0x2e
+- RTM_MAX = 0x5f
+- RTM_NEWACTION = 0x30
+- RTM_NEWADDR = 0x14
+- RTM_NEWADDRLABEL = 0x48
+- RTM_NEWLINK = 0x10
+- RTM_NEWMDB = 0x54
+- RTM_NEWNDUSEROPT = 0x44
+- RTM_NEWNEIGH = 0x1c
+- RTM_NEWNEIGHTBL = 0x40
+- RTM_NEWNETCONF = 0x50
+- RTM_NEWNSID = 0x58
+- RTM_NEWPREFIX = 0x34
+- RTM_NEWQDISC = 0x24
+- RTM_NEWROUTE = 0x18
+- RTM_NEWRULE = 0x20
+- RTM_NEWSTATS = 0x5c
+- RTM_NEWTCLASS = 0x28
+- RTM_NEWTFILTER = 0x2c
+- RTM_NR_FAMILIES = 0x14
+- RTM_NR_MSGTYPES = 0x50
+- RTM_SETDCB = 0x4f
+- RTM_SETLINK = 0x13
+- RTM_SETNEIGHTBL = 0x43
+- RTNH_ALIGNTO = 0x4
+- RTNH_COMPARE_MASK = 0x19
+- RTNH_F_DEAD = 0x1
+- RTNH_F_LINKDOWN = 0x10
+- RTNH_F_OFFLOAD = 0x8
+- RTNH_F_ONLINK = 0x4
+- RTNH_F_PERVASIVE = 0x2
+- RTN_MAX = 0xb
+- RTPROT_BABEL = 0x2a
+- RTPROT_BIRD = 0xc
+- RTPROT_BOOT = 0x3
+- RTPROT_DHCP = 0x10
+- RTPROT_DNROUTED = 0xd
+- RTPROT_GATED = 0x8
+- RTPROT_KERNEL = 0x2
+- RTPROT_MROUTED = 0x11
+- RTPROT_MRT = 0xa
+- RTPROT_NTK = 0xf
+- RTPROT_RA = 0x9
+- RTPROT_REDIRECT = 0x1
+- RTPROT_STATIC = 0x4
+- RTPROT_UNSPEC = 0x0
+- RTPROT_XORP = 0xe
+- RTPROT_ZEBRA = 0xb
+- RT_CLASS_DEFAULT = 0xfd
+- RT_CLASS_LOCAL = 0xff
+- RT_CLASS_MAIN = 0xfe
+- RT_CLASS_MAX = 0xff
+- RT_CLASS_UNSPEC = 0x0
+- RUSAGE_CHILDREN = -0x1
+- RUSAGE_SELF = 0x0
+- RUSAGE_THREAD = 0x1
+- SCM_CREDENTIALS = 0x2
+- SCM_RIGHTS = 0x1
+- SCM_TIMESTAMP = 0x1d
+- SCM_TIMESTAMPING = 0x25
+- SCM_TIMESTAMPING_OPT_STATS = 0x36
+- SCM_TIMESTAMPNS = 0x23
+- SCM_WIFI_STATUS = 0x29
+- SECCOMP_MODE_DISABLED = 0x0
+- SECCOMP_MODE_FILTER = 0x2
+- SECCOMP_MODE_STRICT = 0x1
+- SHUT_RD = 0x0
+- SHUT_RDWR = 0x2
+- SHUT_WR = 0x1
+- SIOCADDDLCI = 0x8980
+- SIOCADDMULTI = 0x8931
+- SIOCADDRT = 0x890b
+- SIOCATMARK = 0x8905
+- SIOCBONDCHANGEACTIVE = 0x8995
+- SIOCBONDENSLAVE = 0x8990
+- SIOCBONDINFOQUERY = 0x8994
+- SIOCBONDRELEASE = 0x8991
+- SIOCBONDSETHWADDR = 0x8992
+- SIOCBONDSLAVEINFOQUERY = 0x8993
+- SIOCBRADDBR = 0x89a0
+- SIOCBRADDIF = 0x89a2
+- SIOCBRDELBR = 0x89a1
+- SIOCBRDELIF = 0x89a3
+- SIOCDARP = 0x8953
+- SIOCDELDLCI = 0x8981
+- SIOCDELMULTI = 0x8932
+- SIOCDELRT = 0x890c
+- SIOCDEVPRIVATE = 0x89f0
+- SIOCDIFADDR = 0x8936
+- SIOCDRARP = 0x8960
+- SIOCETHTOOL = 0x8946
+- SIOCGARP = 0x8954
+- SIOCGHWTSTAMP = 0x89b1
+- SIOCGIFADDR = 0x8915
+- SIOCGIFBR = 0x8940
+- SIOCGIFBRDADDR = 0x8919
+- SIOCGIFCONF = 0x8912
+- SIOCGIFCOUNT = 0x8938
+- SIOCGIFDSTADDR = 0x8917
+- SIOCGIFENCAP = 0x8925
+- SIOCGIFFLAGS = 0x8913
+- SIOCGIFHWADDR = 0x8927
+- SIOCGIFINDEX = 0x8933
+- SIOCGIFMAP = 0x8970
+- SIOCGIFMEM = 0x891f
+- SIOCGIFMETRIC = 0x891d
+- SIOCGIFMTU = 0x8921
+- SIOCGIFNAME = 0x8910
+- SIOCGIFNETMASK = 0x891b
+- SIOCGIFPFLAGS = 0x8935
+- SIOCGIFSLAVE = 0x8929
+- SIOCGIFTXQLEN = 0x8942
+- SIOCGIFVLAN = 0x8982
+- SIOCGMIIPHY = 0x8947
+- SIOCGMIIREG = 0x8948
+- SIOCGPGRP = 0x8904
+- SIOCGRARP = 0x8961
+- SIOCGSKNS = 0x894c
+- SIOCGSTAMP = 0x8906
+- SIOCGSTAMPNS = 0x8907
+- SIOCINQ = 0x541b
+- SIOCOUTQ = 0x5411
+- SIOCOUTQNSD = 0x894b
+- SIOCPROTOPRIVATE = 0x89e0
+- SIOCRTMSG = 0x890d
+- SIOCSARP = 0x8955
+- SIOCSHWTSTAMP = 0x89b0
+- SIOCSIFADDR = 0x8916
+- SIOCSIFBR = 0x8941
+- SIOCSIFBRDADDR = 0x891a
+- SIOCSIFDSTADDR = 0x8918
+- SIOCSIFENCAP = 0x8926
+- SIOCSIFFLAGS = 0x8914
+- SIOCSIFHWADDR = 0x8924
+- SIOCSIFHWBROADCAST = 0x8937
+- SIOCSIFLINK = 0x8911
+- SIOCSIFMAP = 0x8971
+- SIOCSIFMEM = 0x8920
+- SIOCSIFMETRIC = 0x891e
+- SIOCSIFMTU = 0x8922
+- SIOCSIFNAME = 0x8923
+- SIOCSIFNETMASK = 0x891c
+- SIOCSIFPFLAGS = 0x8934
+- SIOCSIFSLAVE = 0x8930
+- SIOCSIFTXQLEN = 0x8943
+- SIOCSIFVLAN = 0x8983
+- SIOCSMIIREG = 0x8949
+- SIOCSPGRP = 0x8902
+- SIOCSRARP = 0x8962
+- SIOCWANDEV = 0x894a
+- SOCK_CLOEXEC = 0x80000
+- SOCK_DCCP = 0x6
+- SOCK_DGRAM = 0x2
+- SOCK_IOC_TYPE = 0x89
+- SOCK_NONBLOCK = 0x800
+- SOCK_PACKET = 0xa
+- SOCK_RAW = 0x3
+- SOCK_RDM = 0x4
+- SOCK_SEQPACKET = 0x5
+- SOCK_STREAM = 0x1
+- SOL_AAL = 0x109
+- SOL_ALG = 0x117
+- SOL_ATM = 0x108
+- SOL_CAIF = 0x116
+- SOL_CAN_BASE = 0x64
+- SOL_DCCP = 0x10d
+- SOL_DECNET = 0x105
+- SOL_ICMPV6 = 0x3a
+- SOL_IP = 0x0
+- SOL_IPV6 = 0x29
+- SOL_IRDA = 0x10a
+- SOL_IUCV = 0x115
+- SOL_KCM = 0x119
+- SOL_LLC = 0x10c
+- SOL_NETBEUI = 0x10b
+- SOL_NETLINK = 0x10e
+- SOL_NFC = 0x118
+- SOL_PACKET = 0x107
+- SOL_PNPIPE = 0x113
+- SOL_PPPOL2TP = 0x111
+- SOL_RAW = 0xff
+- SOL_RDS = 0x114
+- SOL_RXRPC = 0x110
+- SOL_SOCKET = 0x1
+- SOL_TCP = 0x6
+- SOL_TIPC = 0x10f
+- SOL_X25 = 0x106
+- SOMAXCONN = 0x80
+- SO_ACCEPTCONN = 0x1e
+- SO_ATTACH_BPF = 0x32
+- SO_ATTACH_FILTER = 0x1a
+- SO_ATTACH_REUSEPORT_CBPF = 0x33
+- SO_ATTACH_REUSEPORT_EBPF = 0x34
+- SO_BINDTODEVICE = 0x19
+- SO_BPF_EXTENSIONS = 0x30
+- SO_BROADCAST = 0x6
+- SO_BSDCOMPAT = 0xe
+- SO_BUSY_POLL = 0x2e
+- SO_CNX_ADVICE = 0x35
+- SO_DEBUG = 0x1
+- SO_DETACH_BPF = 0x1b
+- SO_DETACH_FILTER = 0x1b
+- SO_DOMAIN = 0x27
+- SO_DONTROUTE = 0x5
+- SO_ERROR = 0x4
+- SO_GET_FILTER = 0x1a
+- SO_INCOMING_CPU = 0x31
+- SO_KEEPALIVE = 0x9
+- SO_LINGER = 0xd
+- SO_LOCK_FILTER = 0x2c
+- SO_MARK = 0x24
+- SO_MAX_PACING_RATE = 0x2f
+- SO_NOFCS = 0x2b
+- SO_NO_CHECK = 0xb
+- SO_OOBINLINE = 0xa
+- SO_PASSCRED = 0x10
+- SO_PASSSEC = 0x22
+- SO_PEEK_OFF = 0x2a
+- SO_PEERCRED = 0x11
+- SO_PEERNAME = 0x1c
+- SO_PEERSEC = 0x1f
+- SO_PRIORITY = 0xc
+- SO_PROTOCOL = 0x26
+- SO_RCVBUF = 0x8
+- SO_RCVBUFFORCE = 0x21
+- SO_RCVLOWAT = 0x12
+- SO_RCVTIMEO = 0x14
+- SO_REUSEADDR = 0x2
+- SO_REUSEPORT = 0xf
+- SO_RXQ_OVFL = 0x28
+- SO_SECURITY_AUTHENTICATION = 0x16
+- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
+- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
+- SO_SELECT_ERR_QUEUE = 0x2d
+- SO_SNDBUF = 0x7
+- SO_SNDBUFFORCE = 0x20
+- SO_SNDLOWAT = 0x13
+- SO_SNDTIMEO = 0x15
+- SO_TIMESTAMP = 0x1d
+- SO_TIMESTAMPING = 0x25
+- SO_TIMESTAMPNS = 0x23
+- SO_TYPE = 0x3
+- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
+- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
+- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
+- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
+- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
+- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
+- SO_VM_SOCKETS_TRUSTED = 0x5
+- SO_WIFI_STATUS = 0x29
+- SPLICE_F_GIFT = 0x8
+- SPLICE_F_MORE = 0x4
+- SPLICE_F_MOVE = 0x1
+- SPLICE_F_NONBLOCK = 0x2
+- S_BLKSIZE = 0x200
+- S_IEXEC = 0x40
+- S_IFBLK = 0x6000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFIFO = 0x1000
+- S_IFLNK = 0xa000
+- S_IFMT = 0xf000
+- S_IFREG = 0x8000
+- S_IFSOCK = 0xc000
+- S_IREAD = 0x100
+- S_IRGRP = 0x20
+- S_IROTH = 0x4
+- S_IRUSR = 0x100
+- S_IRWXG = 0x38
+- S_IRWXO = 0x7
+- S_IRWXU = 0x1c0
+- S_ISGID = 0x400
+- S_ISUID = 0x800
+- S_ISVTX = 0x200
+- S_IWGRP = 0x10
+- S_IWOTH = 0x2
+- S_IWRITE = 0x80
+- S_IWUSR = 0x80
+- S_IXGRP = 0x8
+- S_IXOTH = 0x1
+- S_IXUSR = 0x40
+- TAB0 = 0x0
+- TAB1 = 0x800
+- TAB2 = 0x1000
+- TAB3 = 0x1800
+- TABDLY = 0x1800
+- TASKSTATS_CMD_ATTR_MAX = 0x4
+- TASKSTATS_CMD_MAX = 0x2
+- TASKSTATS_GENL_NAME = "TASKSTATS"
+- TASKSTATS_GENL_VERSION = 0x1
+- TASKSTATS_TYPE_MAX = 0x6
+- TASKSTATS_VERSION = 0x8
+- TCFLSH = 0x540b
+- TCGETA = 0x5405
+- TCGETS = 0x5401
+- TCGETS2 = 0x802c542a
+- TCGETX = 0x5432
+- TCIFLUSH = 0x0
+- TCIOFF = 0x2
+- TCIOFLUSH = 0x2
+- TCION = 0x3
+- TCOFLUSH = 0x1
+- TCOOFF = 0x0
+- TCOON = 0x1
+- TCP_CC_INFO = 0x1a
+- TCP_CONGESTION = 0xd
+- TCP_COOKIE_IN_ALWAYS = 0x1
+- TCP_COOKIE_MAX = 0x10
+- TCP_COOKIE_MIN = 0x8
+- TCP_COOKIE_OUT_NEVER = 0x2
+- TCP_COOKIE_PAIR_SIZE = 0x20
+- TCP_COOKIE_TRANSACTIONS = 0xf
+- TCP_CORK = 0x3
+- TCP_DEFER_ACCEPT = 0x9
+- TCP_FASTOPEN = 0x17
+- TCP_INFO = 0xb
+- TCP_KEEPCNT = 0x6
+- TCP_KEEPIDLE = 0x4
+- TCP_KEEPINTVL = 0x5
+- TCP_LINGER2 = 0x8
+- TCP_MAXSEG = 0x2
+- TCP_MAXWIN = 0xffff
+- TCP_MAX_WINSHIFT = 0xe
+- TCP_MD5SIG = 0xe
+- TCP_MD5SIG_MAXKEYLEN = 0x50
+- TCP_MSS = 0x200
+- TCP_MSS_DEFAULT = 0x218
+- TCP_MSS_DESIRED = 0x4c4
+- TCP_NODELAY = 0x1
+- TCP_NOTSENT_LOWAT = 0x19
+- TCP_QUEUE_SEQ = 0x15
+- TCP_QUICKACK = 0xc
+- TCP_REPAIR = 0x13
+- TCP_REPAIR_OPTIONS = 0x16
+- TCP_REPAIR_QUEUE = 0x14
+- TCP_REPAIR_WINDOW = 0x1d
+- TCP_SAVED_SYN = 0x1c
+- TCP_SAVE_SYN = 0x1b
+- TCP_SYNCNT = 0x7
+- TCP_S_DATA_IN = 0x4
+- TCP_S_DATA_OUT = 0x8
+- TCP_THIN_DUPACK = 0x11
+- TCP_THIN_LINEAR_TIMEOUTS = 0x10
+- TCP_TIMESTAMP = 0x18
+- TCP_USER_TIMEOUT = 0x12
+- TCP_WINDOW_CLAMP = 0xa
+- TCSAFLUSH = 0x2
+- TCSBRK = 0x5409
+- TCSBRKP = 0x5425
+- TCSETA = 0x5406
+- TCSETAF = 0x5408
+- TCSETAW = 0x5407
+- TCSETS = 0x5402
+- TCSETS2 = 0x402c542b
+- TCSETSF = 0x5404
+- TCSETSF2 = 0x402c542d
+- TCSETSW = 0x5403
+- TCSETSW2 = 0x402c542c
+- TCSETX = 0x5433
+- TCSETXF = 0x5434
+- TCSETXW = 0x5435
+- TCXONC = 0x540a
+- TIOCCBRK = 0x5428
+- TIOCCONS = 0x541d
+- TIOCEXCL = 0x540c
+- TIOCGDEV = 0x80045432
+- TIOCGETD = 0x5424
+- TIOCGEXCL = 0x80045440
+- TIOCGICOUNT = 0x545d
+- TIOCGLCKTRMIOS = 0x5456
+- TIOCGPGRP = 0x540f
+- TIOCGPKT = 0x80045438
+- TIOCGPTLCK = 0x80045439
+- TIOCGPTN = 0x80045430
+- TIOCGRS485 = 0x542e
+- TIOCGSERIAL = 0x541e
+- TIOCGSID = 0x5429
+- TIOCGSOFTCAR = 0x5419
+- TIOCGWINSZ = 0x5413
+- TIOCINQ = 0x541b
+- TIOCLINUX = 0x541c
+- TIOCMBIC = 0x5417
+- TIOCMBIS = 0x5416
+- TIOCMGET = 0x5415
+- TIOCMIWAIT = 0x545c
+- TIOCMSET = 0x5418
+- TIOCM_CAR = 0x40
+- TIOCM_CD = 0x40
+- TIOCM_CTS = 0x20
+- TIOCM_DSR = 0x100
+- TIOCM_DTR = 0x2
+- TIOCM_LE = 0x1
+- TIOCM_RI = 0x80
+- TIOCM_RNG = 0x80
+- TIOCM_RTS = 0x4
+- TIOCM_SR = 0x10
+- TIOCM_ST = 0x8
+- TIOCNOTTY = 0x5422
+- TIOCNXCL = 0x540d
+- TIOCOUTQ = 0x5411
+- TIOCPKT = 0x5420
+- TIOCPKT_DATA = 0x0
+- TIOCPKT_DOSTOP = 0x20
+- TIOCPKT_FLUSHREAD = 0x1
+- TIOCPKT_FLUSHWRITE = 0x2
+- TIOCPKT_IOCTL = 0x40
+- TIOCPKT_NOSTOP = 0x10
+- TIOCPKT_START = 0x8
+- TIOCPKT_STOP = 0x4
+- TIOCSBRK = 0x5427
+- TIOCSCTTY = 0x540e
+- TIOCSERCONFIG = 0x5453
+- TIOCSERGETLSR = 0x5459
+- TIOCSERGETMULTI = 0x545a
+- TIOCSERGSTRUCT = 0x5458
+- TIOCSERGWILD = 0x5454
+- TIOCSERSETMULTI = 0x545b
+- TIOCSERSWILD = 0x5455
+- TIOCSER_TEMT = 0x1
+- TIOCSETD = 0x5423
+- TIOCSIG = 0x40045436
+- TIOCSLCKTRMIOS = 0x5457
+- TIOCSPGRP = 0x5410
+- TIOCSPTLCK = 0x40045431
+- TIOCSRS485 = 0x542f
+- TIOCSSERIAL = 0x541f
+- TIOCSSOFTCAR = 0x541a
+- TIOCSTI = 0x5412
+- TIOCSWINSZ = 0x5414
+- TIOCVHANGUP = 0x5437
+- TOSTOP = 0x100
+- TS_COMM_LEN = 0x20
+- TUNATTACHFILTER = 0x400854d5
+- TUNDETACHFILTER = 0x400854d6
+- TUNGETFEATURES = 0x800454cf
+- TUNGETFILTER = 0x800854db
+- TUNGETIFF = 0x800454d2
+- TUNGETSNDBUF = 0x800454d3
+- TUNGETVNETBE = 0x800454df
+- TUNGETVNETHDRSZ = 0x800454d7
+- TUNGETVNETLE = 0x800454dd
+- TUNSETDEBUG = 0x400454c9
+- TUNSETGROUP = 0x400454ce
+- TUNSETIFF = 0x400454ca
+- TUNSETIFINDEX = 0x400454da
+- TUNSETLINK = 0x400454cd
+- TUNSETNOCSUM = 0x400454c8
+- TUNSETOFFLOAD = 0x400454d0
+- TUNSETOWNER = 0x400454cc
+- TUNSETPERSIST = 0x400454cb
+- TUNSETQUEUE = 0x400454d9
+- TUNSETSNDBUF = 0x400454d4
+- TUNSETTXFILTER = 0x400454d1
+- TUNSETVNETBE = 0x400454de
+- TUNSETVNETHDRSZ = 0x400454d8
+- TUNSETVNETLE = 0x400454dc
+- UMOUNT_NOFOLLOW = 0x8
+- VDISCARD = 0xd
+- VEOF = 0x4
+- VEOL = 0xb
+- VEOL2 = 0x10
+- VERASE = 0x2
+- VINTR = 0x0
+- VKILL = 0x3
+- VLNEXT = 0xf
+- VMADDR_CID_ANY = 0xffffffff
+- VMADDR_CID_HOST = 0x2
+- VMADDR_CID_HYPERVISOR = 0x0
+- VMADDR_CID_RESERVED = 0x1
+- VMADDR_PORT_ANY = 0xffffffff
+- VMIN = 0x6
+- VM_SOCKETS_INVALID_VERSION = 0xffffffff
+- VQUIT = 0x1
+- VREPRINT = 0xc
+- VSTART = 0x8
+- VSTOP = 0x9
+- VSUSP = 0xa
+- VSWTC = 0x7
+- VT0 = 0x0
+- VT1 = 0x4000
+- VTDLY = 0x4000
+- VTIME = 0x5
+- VWERASE = 0xe
+- WALL = 0x40000000
+- WCLONE = 0x80000000
+- WCONTINUED = 0x8
+- WEXITED = 0x4
+- WNOHANG = 0x1
+- WNOTHREAD = 0x20000000
+- WNOWAIT = 0x1000000
+- WORDSIZE = 0x20
+- WSTOPPED = 0x2
+- WUNTRACED = 0x2
+- XATTR_CREATE = 0x1
+- XATTR_REPLACE = 0x2
+- XCASE = 0x4
+- XTABS = 0x1800
++ B1000000 = 0x1008
++ B115200 = 0x1002
++ B1152000 = 0x1009
++ B1500000 = 0x100a
++ B2000000 = 0x100b
++ B230400 = 0x1003
++ B2500000 = 0x100c
++ B3000000 = 0x100d
++ B3500000 = 0x100e
++ B4000000 = 0x100f
++ B460800 = 0x1004
++ B500000 = 0x1005
++ B57600 = 0x1001
++ B576000 = 0x1006
++ B921600 = 0x1007
++ BLKBSZGET = 0x80041270
++ BLKBSZSET = 0x40041271
++ BLKFLSBUF = 0x1261
++ BLKFRAGET = 0x1265
++ BLKFRASET = 0x1264
++ BLKGETSIZE = 0x1260
++ BLKGETSIZE64 = 0x80041272
++ BLKPBSZGET = 0x127b
++ BLKRAGET = 0x1263
++ BLKRASET = 0x1262
++ BLKROGET = 0x125e
++ BLKROSET = 0x125d
++ BLKRRPART = 0x125f
++ BLKSECTGET = 0x1267
++ BLKSECTSET = 0x1266
++ BLKSSZGET = 0x1268
++ BOTHER = 0x1000
++ BS1 = 0x2000
++ BSDLY = 0x2000
++ CBAUD = 0x100f
++ CBAUDEX = 0x1000
++ CIBAUD = 0x100f0000
++ CLOCAL = 0x800
++ CR1 = 0x200
++ CR2 = 0x400
++ CR3 = 0x600
++ CRDLY = 0x600
++ CREAD = 0x80
++ CS6 = 0x10
++ CS7 = 0x20
++ CS8 = 0x30
++ CSIZE = 0x30
++ CSTOPB = 0x40
++ ECHOCTL = 0x200
++ ECHOE = 0x10
++ ECHOK = 0x20
++ ECHOKE = 0x800
++ ECHONL = 0x40
++ ECHOPRT = 0x400
++ EFD_CLOEXEC = 0x80000
++ EFD_NONBLOCK = 0x800
++ EPOLL_CLOEXEC = 0x80000
++ EXTPROC = 0x10000
++ FF1 = 0x8000
++ FFDLY = 0x8000
++ FLUSHO = 0x1000
++ FP_XSTATE_MAGIC2 = 0x46505845
++ FS_IOC_ENABLE_VERITY = 0x40806685
++ FS_IOC_GETFLAGS = 0x80046601
++ FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
++ FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
++ FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
++ F_GETLK = 0xc
++ F_GETLK64 = 0xc
++ F_GETOWN = 0x9
++ F_RDLCK = 0x0
++ F_SETLK = 0xd
++ F_SETLK64 = 0xd
++ F_SETLKW = 0xe
++ F_SETLKW64 = 0xe
++ F_SETOWN = 0x8
++ F_UNLCK = 0x2
++ F_WRLCK = 0x1
++ HUPCL = 0x400
++ ICANON = 0x2
++ IEXTEN = 0x8000
++ IN_CLOEXEC = 0x80000
++ IN_NONBLOCK = 0x800
++ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x7b9
++ ISIG = 0x1
++ IUCLC = 0x200
++ IXOFF = 0x1000
++ IXON = 0x400
++ MAP_32BIT = 0x40
++ MAP_ANON = 0x20
++ MAP_ANONYMOUS = 0x20
++ MAP_DENYWRITE = 0x800
++ MAP_EXECUTABLE = 0x1000
++ MAP_GROWSDOWN = 0x100
++ MAP_HUGETLB = 0x40000
++ MAP_LOCKED = 0x2000
++ MAP_NONBLOCK = 0x10000
++ MAP_NORESERVE = 0x4000
++ MAP_POPULATE = 0x8000
++ MAP_STACK = 0x20000
++ MAP_SYNC = 0x80000
++ MCL_CURRENT = 0x1
++ MCL_FUTURE = 0x2
++ MCL_ONFAULT = 0x4
++ NFDBITS = 0x20
++ NLDLY = 0x100
++ NOFLSH = 0x80
++ NS_GET_NSTYPE = 0xb703
++ NS_GET_OWNER_UID = 0xb704
++ NS_GET_PARENT = 0xb702
++ NS_GET_USERNS = 0xb701
++ OLCUC = 0x2
++ ONLCR = 0x4
++ O_APPEND = 0x400
++ O_ASYNC = 0x2000
++ O_CLOEXEC = 0x80000
++ O_CREAT = 0x40
++ O_DIRECT = 0x4000
++ O_DIRECTORY = 0x10000
++ O_DSYNC = 0x1000
++ O_EXCL = 0x80
++ O_FSYNC = 0x101000
++ O_LARGEFILE = 0x8000
++ O_NDELAY = 0x800
++ O_NOATIME = 0x40000
++ O_NOCTTY = 0x100
++ O_NOFOLLOW = 0x20000
++ O_NONBLOCK = 0x800
++ O_PATH = 0x200000
++ O_RSYNC = 0x101000
++ O_SYNC = 0x101000
++ O_TMPFILE = 0x410000
++ O_TRUNC = 0x200
++ PARENB = 0x100
++ PARODD = 0x200
++ PENDIN = 0x4000
++ PERF_EVENT_IOC_DISABLE = 0x2401
++ PERF_EVENT_IOC_ENABLE = 0x2400
++ PERF_EVENT_IOC_ID = 0x80042407
++ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x4004240b
++ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
++ PERF_EVENT_IOC_PERIOD = 0x40082404
++ PERF_EVENT_IOC_QUERY_BPF = 0xc004240a
++ PERF_EVENT_IOC_REFRESH = 0x2402
++ PERF_EVENT_IOC_RESET = 0x2403
++ PERF_EVENT_IOC_SET_BPF = 0x40042408
++ PERF_EVENT_IOC_SET_FILTER = 0x40042406
++ PERF_EVENT_IOC_SET_OUTPUT = 0x2405
++ PPPIOCATTACH = 0x4004743d
++ PPPIOCATTCHAN = 0x40047438
++ PPPIOCCONNECT = 0x4004743a
++ PPPIOCDETACH = 0x4004743c
++ PPPIOCDISCONN = 0x7439
++ PPPIOCGASYNCMAP = 0x80047458
++ PPPIOCGCHAN = 0x80047437
++ PPPIOCGDEBUG = 0x80047441
++ PPPIOCGFLAGS = 0x8004745a
++ PPPIOCGIDLE = 0x8008743f
++ PPPIOCGIDLE32 = 0x8008743f
++ PPPIOCGIDLE64 = 0x8010743f
++ PPPIOCGL2TPSTATS = 0x80487436
++ PPPIOCGMRU = 0x80047453
++ PPPIOCGRASYNCMAP = 0x80047455
++ PPPIOCGUNIT = 0x80047456
++ PPPIOCGXASYNCMAP = 0x80207450
++ PPPIOCSACTIVE = 0x40087446
++ PPPIOCSASYNCMAP = 0x40047457
++ PPPIOCSCOMPRESS = 0x400c744d
++ PPPIOCSDEBUG = 0x40047440
++ PPPIOCSFLAGS = 0x40047459
++ PPPIOCSMAXCID = 0x40047451
++ PPPIOCSMRRU = 0x4004743b
++ PPPIOCSMRU = 0x40047452
++ PPPIOCSNPMODE = 0x4008744b
++ PPPIOCSPASS = 0x40087447
++ PPPIOCSRASYNCMAP = 0x40047454
++ PPPIOCSXASYNCMAP = 0x4020744f
++ PPPIOCXFERUNIT = 0x744e
++ PR_SET_PTRACER_ANY = 0xffffffff
++ PTRACE_GETFPREGS = 0xe
++ PTRACE_GETFPXREGS = 0x12
++ PTRACE_GET_THREAD_AREA = 0x19
++ PTRACE_OLDSETOPTIONS = 0x15
++ PTRACE_SETFPREGS = 0xf
++ PTRACE_SETFPXREGS = 0x13
++ PTRACE_SET_THREAD_AREA = 0x1a
++ PTRACE_SINGLEBLOCK = 0x21
++ PTRACE_SYSEMU = 0x1f
++ PTRACE_SYSEMU_SINGLESTEP = 0x20
++ RLIMIT_AS = 0x9
++ RLIMIT_MEMLOCK = 0x8
++ RLIMIT_NOFILE = 0x7
++ RLIMIT_NPROC = 0x6
++ RLIMIT_RSS = 0x5
++ RNDADDENTROPY = 0x40085203
++ RNDADDTOENTCNT = 0x40045201
++ RNDCLEARPOOL = 0x5206
++ RNDGETENTCNT = 0x80045200
++ RNDGETPOOL = 0x80085202
++ RNDRESEEDCRNG = 0x5207
++ RNDZAPENTCNT = 0x5204
++ RTC_AIE_OFF = 0x7002
++ RTC_AIE_ON = 0x7001
++ RTC_ALM_READ = 0x80247008
++ RTC_ALM_SET = 0x40247007
++ RTC_EPOCH_READ = 0x8004700d
++ RTC_EPOCH_SET = 0x4004700e
++ RTC_IRQP_READ = 0x8004700b
++ RTC_IRQP_SET = 0x4004700c
++ RTC_PIE_OFF = 0x7006
++ RTC_PIE_ON = 0x7005
++ RTC_PLL_GET = 0x801c7011
++ RTC_PLL_SET = 0x401c7012
++ RTC_RD_TIME = 0x80247009
++ RTC_SET_TIME = 0x4024700a
++ RTC_UIE_OFF = 0x7004
++ RTC_UIE_ON = 0x7003
++ RTC_VL_CLR = 0x7014
++ RTC_VL_READ = 0x80047013
++ RTC_WIE_OFF = 0x7010
++ RTC_WIE_ON = 0x700f
++ RTC_WKALM_RD = 0x80287010
++ RTC_WKALM_SET = 0x4028700f
++ SCM_TIMESTAMPING = 0x25
++ SCM_TIMESTAMPING_OPT_STATS = 0x36
++ SCM_TIMESTAMPING_PKTINFO = 0x3a
++ SCM_TIMESTAMPNS = 0x23
++ SCM_TXTIME = 0x3d
++ SCM_WIFI_STATUS = 0x29
++ SFD_CLOEXEC = 0x80000
++ SFD_NONBLOCK = 0x800
++ SIOCATMARK = 0x8905
++ SIOCGPGRP = 0x8904
++ SIOCGSTAMPNS_NEW = 0x80108907
++ SIOCGSTAMP_NEW = 0x80108906
++ SIOCINQ = 0x541b
++ SIOCOUTQ = 0x5411
++ SIOCSPGRP = 0x8902
++ SOCK_CLOEXEC = 0x80000
++ SOCK_DGRAM = 0x2
++ SOCK_NONBLOCK = 0x800
++ SOCK_STREAM = 0x1
++ SOL_SOCKET = 0x1
++ SO_ACCEPTCONN = 0x1e
++ SO_ATTACH_BPF = 0x32
++ SO_ATTACH_REUSEPORT_CBPF = 0x33
++ SO_ATTACH_REUSEPORT_EBPF = 0x34
++ SO_BINDTODEVICE = 0x19
++ SO_BINDTOIFINDEX = 0x3e
++ SO_BPF_EXTENSIONS = 0x30
++ SO_BROADCAST = 0x6
++ SO_BSDCOMPAT = 0xe
++ SO_BUSY_POLL = 0x2e
++ SO_CNX_ADVICE = 0x35
++ SO_COOKIE = 0x39
++ SO_DETACH_REUSEPORT_BPF = 0x44
++ SO_DOMAIN = 0x27
++ SO_DONTROUTE = 0x5
++ SO_ERROR = 0x4
++ SO_INCOMING_CPU = 0x31
++ SO_INCOMING_NAPI_ID = 0x38
++ SO_KEEPALIVE = 0x9
++ SO_LINGER = 0xd
++ SO_LOCK_FILTER = 0x2c
++ SO_MARK = 0x24
++ SO_MAX_PACING_RATE = 0x2f
++ SO_MEMINFO = 0x37
++ SO_NOFCS = 0x2b
++ SO_OOBINLINE = 0xa
++ SO_PASSCRED = 0x10
++ SO_PASSSEC = 0x22
++ SO_PEEK_OFF = 0x2a
++ SO_PEERCRED = 0x11
++ SO_PEERGROUPS = 0x3b
++ SO_PEERSEC = 0x1f
++ SO_PROTOCOL = 0x26
++ SO_RCVBUF = 0x8
++ SO_RCVBUFFORCE = 0x21
++ SO_RCVLOWAT = 0x12
++ SO_RCVTIMEO = 0x14
++ SO_RCVTIMEO_NEW = 0x42
++ SO_RCVTIMEO_OLD = 0x14
++ SO_REUSEADDR = 0x2
++ SO_REUSEPORT = 0xf
++ SO_RXQ_OVFL = 0x28
++ SO_SECURITY_AUTHENTICATION = 0x16
++ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
++ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
++ SO_SELECT_ERR_QUEUE = 0x2d
++ SO_SNDBUF = 0x7
++ SO_SNDBUFFORCE = 0x20
++ SO_SNDLOWAT = 0x13
++ SO_SNDTIMEO = 0x15
++ SO_SNDTIMEO_NEW = 0x43
++ SO_SNDTIMEO_OLD = 0x15
++ SO_TIMESTAMPING = 0x25
++ SO_TIMESTAMPING_NEW = 0x41
++ SO_TIMESTAMPING_OLD = 0x25
++ SO_TIMESTAMPNS = 0x23
++ SO_TIMESTAMPNS_NEW = 0x40
++ SO_TIMESTAMPNS_OLD = 0x23
++ SO_TIMESTAMP_NEW = 0x3f
++ SO_TXTIME = 0x3d
++ SO_TYPE = 0x3
++ SO_WIFI_STATUS = 0x29
++ SO_ZEROCOPY = 0x3c
++ TAB1 = 0x800
++ TAB2 = 0x1000
++ TAB3 = 0x1800
++ TABDLY = 0x1800
++ TCFLSH = 0x540b
++ TCGETA = 0x5405
++ TCGETS = 0x5401
++ TCGETS2 = 0x802c542a
++ TCGETX = 0x5432
++ TCSAFLUSH = 0x2
++ TCSBRK = 0x5409
++ TCSBRKP = 0x5425
++ TCSETA = 0x5406
++ TCSETAF = 0x5408
++ TCSETAW = 0x5407
++ TCSETS = 0x5402
++ TCSETS2 = 0x402c542b
++ TCSETSF = 0x5404
++ TCSETSF2 = 0x402c542d
++ TCSETSW = 0x5403
++ TCSETSW2 = 0x402c542c
++ TCSETX = 0x5433
++ TCSETXF = 0x5434
++ TCSETXW = 0x5435
++ TCXONC = 0x540a
++ TIOCCBRK = 0x5428
++ TIOCCONS = 0x541d
++ TIOCEXCL = 0x540c
++ TIOCGDEV = 0x80045432
++ TIOCGETD = 0x5424
++ TIOCGEXCL = 0x80045440
++ TIOCGICOUNT = 0x545d
++ TIOCGISO7816 = 0x80285442
++ TIOCGLCKTRMIOS = 0x5456
++ TIOCGPGRP = 0x540f
++ TIOCGPKT = 0x80045438
++ TIOCGPTLCK = 0x80045439
++ TIOCGPTN = 0x80045430
++ TIOCGPTPEER = 0x5441
++ TIOCGRS485 = 0x542e
++ TIOCGSERIAL = 0x541e
++ TIOCGSID = 0x5429
++ TIOCGSOFTCAR = 0x5419
++ TIOCGWINSZ = 0x5413
++ TIOCINQ = 0x541b
++ TIOCLINUX = 0x541c
++ TIOCMBIC = 0x5417
++ TIOCMBIS = 0x5416
++ TIOCMGET = 0x5415
++ TIOCMIWAIT = 0x545c
++ TIOCMSET = 0x5418
++ TIOCM_CAR = 0x40
++ TIOCM_CD = 0x40
++ TIOCM_CTS = 0x20
++ TIOCM_DSR = 0x100
++ TIOCM_RI = 0x80
++ TIOCM_RNG = 0x80
++ TIOCM_SR = 0x10
++ TIOCM_ST = 0x8
++ TIOCNOTTY = 0x5422
++ TIOCNXCL = 0x540d
++ TIOCOUTQ = 0x5411
++ TIOCPKT = 0x5420
++ TIOCSBRK = 0x5427
++ TIOCSCTTY = 0x540e
++ TIOCSERCONFIG = 0x5453
++ TIOCSERGETLSR = 0x5459
++ TIOCSERGETMULTI = 0x545a
++ TIOCSERGSTRUCT = 0x5458
++ TIOCSERGWILD = 0x5454
++ TIOCSERSETMULTI = 0x545b
++ TIOCSERSWILD = 0x5455
++ TIOCSER_TEMT = 0x1
++ TIOCSETD = 0x5423
++ TIOCSIG = 0x40045436
++ TIOCSISO7816 = 0xc0285443
++ TIOCSLCKTRMIOS = 0x5457
++ TIOCSPGRP = 0x5410
++ TIOCSPTLCK = 0x40045431
++ TIOCSRS485 = 0x542f
++ TIOCSSERIAL = 0x541f
++ TIOCSSOFTCAR = 0x541a
++ TIOCSTI = 0x5412
++ TIOCSWINSZ = 0x5414
++ TIOCVHANGUP = 0x5437
++ TOSTOP = 0x100
++ TUNATTACHFILTER = 0x400854d5
++ TUNDETACHFILTER = 0x400854d6
++ TUNGETDEVNETNS = 0x54e3
++ TUNGETFEATURES = 0x800454cf
++ TUNGETFILTER = 0x800854db
++ TUNGETIFF = 0x800454d2
++ TUNGETSNDBUF = 0x800454d3
++ TUNGETVNETBE = 0x800454df
++ TUNGETVNETHDRSZ = 0x800454d7
++ TUNGETVNETLE = 0x800454dd
++ TUNSETCARRIER = 0x400454e2
++ TUNSETDEBUG = 0x400454c9
++ TUNSETFILTEREBPF = 0x800454e1
++ TUNSETGROUP = 0x400454ce
++ TUNSETIFF = 0x400454ca
++ TUNSETIFINDEX = 0x400454da
++ TUNSETLINK = 0x400454cd
++ TUNSETNOCSUM = 0x400454c8
++ TUNSETOFFLOAD = 0x400454d0
++ TUNSETOWNER = 0x400454cc
++ TUNSETPERSIST = 0x400454cb
++ TUNSETQUEUE = 0x400454d9
++ TUNSETSNDBUF = 0x400454d4
++ TUNSETSTEERINGEBPF = 0x800454e0
++ TUNSETTXFILTER = 0x400454d1
++ TUNSETVNETBE = 0x400454de
++ TUNSETVNETHDRSZ = 0x400454d8
++ TUNSETVNETLE = 0x400454dc
++ UBI_IOCATT = 0x40186f40
++ UBI_IOCDET = 0x40046f41
++ UBI_IOCEBCH = 0x40044f02
++ UBI_IOCEBER = 0x40044f01
++ UBI_IOCEBISMAP = 0x80044f05
++ UBI_IOCEBMAP = 0x40084f03
++ UBI_IOCEBUNMAP = 0x40044f04
++ UBI_IOCMKVOL = 0x40986f00
++ UBI_IOCRMVOL = 0x40046f01
++ UBI_IOCRNVOL = 0x51106f03
++ UBI_IOCRPEB = 0x40046f04
++ UBI_IOCRSVOL = 0x400c6f02
++ UBI_IOCSETVOLPROP = 0x40104f06
++ UBI_IOCSPEB = 0x40046f05
++ UBI_IOCVOLCRBLK = 0x40804f07
++ UBI_IOCVOLRMBLK = 0x4f08
++ UBI_IOCVOLUP = 0x40084f00
++ VDISCARD = 0xd
++ VEOF = 0x4
++ VEOL = 0xb
++ VEOL2 = 0x10
++ VMIN = 0x6
++ VREPRINT = 0xc
++ VSTART = 0x8
++ VSTOP = 0x9
++ VSUSP = 0xa
++ VSWTC = 0x7
++ VT1 = 0x4000
++ VTDLY = 0x4000
++ VTIME = 0x5
++ VWERASE = 0xe
++ WDIOC_GETBOOTSTATUS = 0x80045702
++ WDIOC_GETPRETIMEOUT = 0x80045709
++ WDIOC_GETSTATUS = 0x80045701
++ WDIOC_GETSUPPORT = 0x80285700
++ WDIOC_GETTEMP = 0x80045703
++ WDIOC_GETTIMELEFT = 0x8004570a
++ WDIOC_GETTIMEOUT = 0x80045707
++ WDIOC_KEEPALIVE = 0x80045705
++ WDIOC_SETOPTIONS = 0x80045704
++ WORDSIZE = 0x20
++ X86_FXSR_MAGIC = 0x0
++ XCASE = 0x4
++ XTABS = 0x1800
+ )
+
+ // Errors
+ const (
+- E2BIG = syscall.Errno(0x7)
+- EACCES = syscall.Errno(0xd)
+ EADDRINUSE = syscall.Errno(0x62)
+ EADDRNOTAVAIL = syscall.Errno(0x63)
+ EADV = syscall.Errno(0x44)
+ EAFNOSUPPORT = syscall.Errno(0x61)
+- EAGAIN = syscall.Errno(0xb)
+ EALREADY = syscall.Errno(0x72)
+ EBADE = syscall.Errno(0x34)
+- EBADF = syscall.Errno(0x9)
+ EBADFD = syscall.Errno(0x4d)
+ EBADMSG = syscall.Errno(0x4a)
+ EBADR = syscall.Errno(0x35)
+ EBADRQC = syscall.Errno(0x38)
+ EBADSLT = syscall.Errno(0x39)
+ EBFONT = syscall.Errno(0x3b)
+- EBUSY = syscall.Errno(0x10)
+ ECANCELED = syscall.Errno(0x7d)
+- ECHILD = syscall.Errno(0xa)
+ ECHRNG = syscall.Errno(0x2c)
+ ECOMM = syscall.Errno(0x46)
+ ECONNABORTED = syscall.Errno(0x67)
+@@ -1881,23 +500,15 @@ const (
+ EDEADLK = syscall.Errno(0x23)
+ EDEADLOCK = syscall.Errno(0x23)
+ EDESTADDRREQ = syscall.Errno(0x59)
+- EDOM = syscall.Errno(0x21)
+ EDOTDOT = syscall.Errno(0x49)
+ EDQUOT = syscall.Errno(0x7a)
+- EEXIST = syscall.Errno(0x11)
+- EFAULT = syscall.Errno(0xe)
+- EFBIG = syscall.Errno(0x1b)
+ EHOSTDOWN = syscall.Errno(0x70)
+ EHOSTUNREACH = syscall.Errno(0x71)
+ EHWPOISON = syscall.Errno(0x85)
+ EIDRM = syscall.Errno(0x2b)
+ EILSEQ = syscall.Errno(0x54)
+ EINPROGRESS = syscall.Errno(0x73)
+- EINTR = syscall.Errno(0x4)
+- EINVAL = syscall.Errno(0x16)
+- EIO = syscall.Errno(0x5)
+ EISCONN = syscall.Errno(0x6a)
+- EISDIR = syscall.Errno(0x15)
+ EISNAM = syscall.Errno(0x78)
+ EKEYEXPIRED = syscall.Errno(0x7f)
+ EKEYREJECTED = syscall.Errno(0x81)
+@@ -1914,8 +525,6 @@ const (
+ ELNRNG = syscall.Errno(0x30)
+ ELOOP = syscall.Errno(0x28)
+ EMEDIUMTYPE = syscall.Errno(0x7c)
+- EMFILE = syscall.Errno(0x18)
+- EMLINK = syscall.Errno(0x1f)
+ EMSGSIZE = syscall.Errno(0x5a)
+ EMULTIHOP = syscall.Errno(0x48)
+ ENAMETOOLONG = syscall.Errno(0x24)
+@@ -1923,103 +532,70 @@ const (
+ ENETDOWN = syscall.Errno(0x64)
+ ENETRESET = syscall.Errno(0x66)
+ ENETUNREACH = syscall.Errno(0x65)
+- ENFILE = syscall.Errno(0x17)
+ ENOANO = syscall.Errno(0x37)
+ ENOBUFS = syscall.Errno(0x69)
+ ENOCSI = syscall.Errno(0x32)
+ ENODATA = syscall.Errno(0x3d)
+- ENODEV = syscall.Errno(0x13)
+- ENOENT = syscall.Errno(0x2)
+- ENOEXEC = syscall.Errno(0x8)
+ ENOKEY = syscall.Errno(0x7e)
+ ENOLCK = syscall.Errno(0x25)
+ ENOLINK = syscall.Errno(0x43)
+ ENOMEDIUM = syscall.Errno(0x7b)
+- ENOMEM = syscall.Errno(0xc)
+ ENOMSG = syscall.Errno(0x2a)
+ ENONET = syscall.Errno(0x40)
+ ENOPKG = syscall.Errno(0x41)
+ ENOPROTOOPT = syscall.Errno(0x5c)
+- ENOSPC = syscall.Errno(0x1c)
+ ENOSR = syscall.Errno(0x3f)
+ ENOSTR = syscall.Errno(0x3c)
+ ENOSYS = syscall.Errno(0x26)
+- ENOTBLK = syscall.Errno(0xf)
+ ENOTCONN = syscall.Errno(0x6b)
+- ENOTDIR = syscall.Errno(0x14)
+ ENOTEMPTY = syscall.Errno(0x27)
+ ENOTNAM = syscall.Errno(0x76)
+ ENOTRECOVERABLE = syscall.Errno(0x83)
+ ENOTSOCK = syscall.Errno(0x58)
+ ENOTSUP = syscall.Errno(0x5f)
+- ENOTTY = syscall.Errno(0x19)
+ ENOTUNIQ = syscall.Errno(0x4c)
+- ENXIO = syscall.Errno(0x6)
+ EOPNOTSUPP = syscall.Errno(0x5f)
+ EOVERFLOW = syscall.Errno(0x4b)
+ EOWNERDEAD = syscall.Errno(0x82)
+- EPERM = syscall.Errno(0x1)
+ EPFNOSUPPORT = syscall.Errno(0x60)
+- EPIPE = syscall.Errno(0x20)
+ EPROTO = syscall.Errno(0x47)
+ EPROTONOSUPPORT = syscall.Errno(0x5d)
+ EPROTOTYPE = syscall.Errno(0x5b)
+- ERANGE = syscall.Errno(0x22)
+ EREMCHG = syscall.Errno(0x4e)
+ EREMOTE = syscall.Errno(0x42)
+ EREMOTEIO = syscall.Errno(0x79)
+ ERESTART = syscall.Errno(0x55)
+ ERFKILL = syscall.Errno(0x84)
+- EROFS = syscall.Errno(0x1e)
+ ESHUTDOWN = syscall.Errno(0x6c)
+ ESOCKTNOSUPPORT = syscall.Errno(0x5e)
+- ESPIPE = syscall.Errno(0x1d)
+- ESRCH = syscall.Errno(0x3)
+ ESRMNT = syscall.Errno(0x45)
+ ESTALE = syscall.Errno(0x74)
+ ESTRPIPE = syscall.Errno(0x56)
+ ETIME = syscall.Errno(0x3e)
+ ETIMEDOUT = syscall.Errno(0x6e)
+ ETOOMANYREFS = syscall.Errno(0x6d)
+- ETXTBSY = syscall.Errno(0x1a)
+ EUCLEAN = syscall.Errno(0x75)
+ EUNATCH = syscall.Errno(0x31)
+ EUSERS = syscall.Errno(0x57)
+- EWOULDBLOCK = syscall.Errno(0xb)
+- EXDEV = syscall.Errno(0x12)
+ EXFULL = syscall.Errno(0x36)
+ )
+
+ // Signals
+ const (
+- SIGABRT = syscall.Signal(0x6)
+- SIGALRM = syscall.Signal(0xe)
+ SIGBUS = syscall.Signal(0x7)
+ SIGCHLD = syscall.Signal(0x11)
+ SIGCLD = syscall.Signal(0x11)
+ SIGCONT = syscall.Signal(0x12)
+- SIGFPE = syscall.Signal(0x8)
+- SIGHUP = syscall.Signal(0x1)
+- SIGILL = syscall.Signal(0x4)
+- SIGINT = syscall.Signal(0x2)
+ SIGIO = syscall.Signal(0x1d)
+- SIGIOT = syscall.Signal(0x6)
+- SIGKILL = syscall.Signal(0x9)
+- SIGPIPE = syscall.Signal(0xd)
+ SIGPOLL = syscall.Signal(0x1d)
+ SIGPROF = syscall.Signal(0x1b)
+ SIGPWR = syscall.Signal(0x1e)
+- SIGQUIT = syscall.Signal(0x3)
+- SIGSEGV = syscall.Signal(0xb)
+ SIGSTKFLT = syscall.Signal(0x10)
+ SIGSTOP = syscall.Signal(0x13)
+ SIGSYS = syscall.Signal(0x1f)
+- SIGTERM = syscall.Signal(0xf)
+- SIGTRAP = syscall.Signal(0x5)
+ SIGTSTP = syscall.Signal(0x14)
+ SIGTTIN = syscall.Signal(0x15)
+ SIGTTOU = syscall.Signal(0x16)
+- SIGUNUSED = syscall.Signal(0x1f)
+ SIGURG = syscall.Signal(0x17)
+ SIGUSR1 = syscall.Signal(0xa)
+ SIGUSR2 = syscall.Signal(0xc)
+@@ -2030,171 +606,179 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "no such device or address",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource temporarily unavailable",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device or resource busy",
+- 17: "file exists",
+- 18: "invalid cross-device link",
+- 19: "no such device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "numerical result out of range",
+- 35: "resource deadlock avoided",
+- 36: "file name too long",
+- 37: "no locks available",
+- 38: "function not implemented",
+- 39: "directory not empty",
+- 40: "too many levels of symbolic links",
+- 42: "no message of desired type",
+- 43: "identifier removed",
+- 44: "channel number out of range",
+- 45: "level 2 not synchronized",
+- 46: "level 3 halted",
+- 47: "level 3 reset",
+- 48: "link number out of range",
+- 49: "protocol driver not attached",
+- 50: "no CSI structure available",
+- 51: "level 2 halted",
+- 52: "invalid exchange",
+- 53: "invalid request descriptor",
+- 54: "exchange full",
+- 55: "no anode",
+- 56: "invalid request code",
+- 57: "invalid slot",
+- 59: "bad font file format",
+- 60: "device not a stream",
+- 61: "no data available",
+- 62: "timer expired",
+- 63: "out of streams resources",
+- 64: "machine is not on the network",
+- 65: "package not installed",
+- 66: "object is remote",
+- 67: "link has been severed",
+- 68: "advertise error",
+- 69: "srmount error",
+- 70: "communication error on send",
+- 71: "protocol error",
+- 72: "multihop attempted",
+- 73: "RFS specific error",
+- 74: "bad message",
+- 75: "value too large for defined data type",
+- 76: "name not unique on network",
+- 77: "file descriptor in bad state",
+- 78: "remote address changed",
+- 79: "can not access a needed shared library",
+- 80: "accessing a corrupted shared library",
+- 81: ".lib section in a.out corrupted",
+- 82: "attempting to link in too many shared libraries",
+- 83: "cannot exec a shared library directly",
+- 84: "invalid or incomplete multibyte or wide character",
+- 85: "interrupted system call should be restarted",
+- 86: "streams pipe error",
+- 87: "too many users",
+- 88: "socket operation on non-socket",
+- 89: "destination address required",
+- 90: "message too long",
+- 91: "protocol wrong type for socket",
+- 92: "protocol not available",
+- 93: "protocol not supported",
+- 94: "socket type not supported",
+- 95: "operation not supported",
+- 96: "protocol family not supported",
+- 97: "address family not supported by protocol",
+- 98: "address already in use",
+- 99: "cannot assign requested address",
+- 100: "network is down",
+- 101: "network is unreachable",
+- 102: "network dropped connection on reset",
+- 103: "software caused connection abort",
+- 104: "connection reset by peer",
+- 105: "no buffer space available",
+- 106: "transport endpoint is already connected",
+- 107: "transport endpoint is not connected",
+- 108: "cannot send after transport endpoint shutdown",
+- 109: "too many references: cannot splice",
+- 110: "connection timed out",
+- 111: "connection refused",
+- 112: "host is down",
+- 113: "no route to host",
+- 114: "operation already in progress",
+- 115: "operation now in progress",
+- 116: "stale file handle",
+- 117: "structure needs cleaning",
+- 118: "not a XENIX named type file",
+- 119: "no XENIX semaphores available",
+- 120: "is a named type file",
+- 121: "remote I/O error",
+- 122: "disk quota exceeded",
+- 123: "no medium found",
+- 124: "wrong medium type",
+- 125: "operation canceled",
+- 126: "required key not available",
+- 127: "key has expired",
+- 128: "key has been revoked",
+- 129: "key was rejected by service",
+- 130: "owner died",
+- 131: "state not recoverable",
+- 132: "operation not possible due to RF-kill",
+- 133: "memory page has hardware error",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "no such device or address"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EAGAIN", "resource temporarily unavailable"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device or resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "invalid cross-device link"},
++ {19, "ENODEV", "no such device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "numerical result out of range"},
++ {35, "EDEADLK", "resource deadlock avoided"},
++ {36, "ENAMETOOLONG", "file name too long"},
++ {37, "ENOLCK", "no locks available"},
++ {38, "ENOSYS", "function not implemented"},
++ {39, "ENOTEMPTY", "directory not empty"},
++ {40, "ELOOP", "too many levels of symbolic links"},
++ {42, "ENOMSG", "no message of desired type"},
++ {43, "EIDRM", "identifier removed"},
++ {44, "ECHRNG", "channel number out of range"},
++ {45, "EL2NSYNC", "level 2 not synchronized"},
++ {46, "EL3HLT", "level 3 halted"},
++ {47, "EL3RST", "level 3 reset"},
++ {48, "ELNRNG", "link number out of range"},
++ {49, "EUNATCH", "protocol driver not attached"},
++ {50, "ENOCSI", "no CSI structure available"},
++ {51, "EL2HLT", "level 2 halted"},
++ {52, "EBADE", "invalid exchange"},
++ {53, "EBADR", "invalid request descriptor"},
++ {54, "EXFULL", "exchange full"},
++ {55, "ENOANO", "no anode"},
++ {56, "EBADRQC", "invalid request code"},
++ {57, "EBADSLT", "invalid slot"},
++ {59, "EBFONT", "bad font file format"},
++ {60, "ENOSTR", "device not a stream"},
++ {61, "ENODATA", "no data available"},
++ {62, "ETIME", "timer expired"},
++ {63, "ENOSR", "out of streams resources"},
++ {64, "ENONET", "machine is not on the network"},
++ {65, "ENOPKG", "package not installed"},
++ {66, "EREMOTE", "object is remote"},
++ {67, "ENOLINK", "link has been severed"},
++ {68, "EADV", "advertise error"},
++ {69, "ESRMNT", "srmount error"},
++ {70, "ECOMM", "communication error on send"},
++ {71, "EPROTO", "protocol error"},
++ {72, "EMULTIHOP", "multihop attempted"},
++ {73, "EDOTDOT", "RFS specific error"},
++ {74, "EBADMSG", "bad message"},
++ {75, "EOVERFLOW", "value too large for defined data type"},
++ {76, "ENOTUNIQ", "name not unique on network"},
++ {77, "EBADFD", "file descriptor in bad state"},
++ {78, "EREMCHG", "remote address changed"},
++ {79, "ELIBACC", "can not access a needed shared library"},
++ {80, "ELIBBAD", "accessing a corrupted shared library"},
++ {81, "ELIBSCN", ".lib section in a.out corrupted"},
++ {82, "ELIBMAX", "attempting to link in too many shared libraries"},
++ {83, "ELIBEXEC", "cannot exec a shared library directly"},
++ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"},
++ {85, "ERESTART", "interrupted system call should be restarted"},
++ {86, "ESTRPIPE", "streams pipe error"},
++ {87, "EUSERS", "too many users"},
++ {88, "ENOTSOCK", "socket operation on non-socket"},
++ {89, "EDESTADDRREQ", "destination address required"},
++ {90, "EMSGSIZE", "message too long"},
++ {91, "EPROTOTYPE", "protocol wrong type for socket"},
++ {92, "ENOPROTOOPT", "protocol not available"},
++ {93, "EPROTONOSUPPORT", "protocol not supported"},
++ {94, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {95, "ENOTSUP", "operation not supported"},
++ {96, "EPFNOSUPPORT", "protocol family not supported"},
++ {97, "EAFNOSUPPORT", "address family not supported by protocol"},
++ {98, "EADDRINUSE", "address already in use"},
++ {99, "EADDRNOTAVAIL", "cannot assign requested address"},
++ {100, "ENETDOWN", "network is down"},
++ {101, "ENETUNREACH", "network is unreachable"},
++ {102, "ENETRESET", "network dropped connection on reset"},
++ {103, "ECONNABORTED", "software caused connection abort"},
++ {104, "ECONNRESET", "connection reset by peer"},
++ {105, "ENOBUFS", "no buffer space available"},
++ {106, "EISCONN", "transport endpoint is already connected"},
++ {107, "ENOTCONN", "transport endpoint is not connected"},
++ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
++ {109, "ETOOMANYREFS", "too many references: cannot splice"},
++ {110, "ETIMEDOUT", "connection timed out"},
++ {111, "ECONNREFUSED", "connection refused"},
++ {112, "EHOSTDOWN", "host is down"},
++ {113, "EHOSTUNREACH", "no route to host"},
++ {114, "EALREADY", "operation already in progress"},
++ {115, "EINPROGRESS", "operation now in progress"},
++ {116, "ESTALE", "stale file handle"},
++ {117, "EUCLEAN", "structure needs cleaning"},
++ {118, "ENOTNAM", "not a XENIX named type file"},
++ {119, "ENAVAIL", "no XENIX semaphores available"},
++ {120, "EISNAM", "is a named type file"},
++ {121, "EREMOTEIO", "remote I/O error"},
++ {122, "EDQUOT", "disk quota exceeded"},
++ {123, "ENOMEDIUM", "no medium found"},
++ {124, "EMEDIUMTYPE", "wrong medium type"},
++ {125, "ECANCELED", "operation canceled"},
++ {126, "ENOKEY", "required key not available"},
++ {127, "EKEYEXPIRED", "key has expired"},
++ {128, "EKEYREVOKED", "key has been revoked"},
++ {129, "EKEYREJECTED", "key was rejected by service"},
++ {130, "EOWNERDEAD", "owner died"},
++ {131, "ENOTRECOVERABLE", "state not recoverable"},
++ {132, "ERFKILL", "operation not possible due to RF-kill"},
++ {133, "EHWPOISON", "memory page has hardware error"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/breakpoint trap",
+- 6: "aborted",
+- 7: "bus error",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "user defined signal 1",
+- 11: "segmentation fault",
+- 12: "user defined signal 2",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "stack fault",
+- 17: "child exited",
+- 18: "continued",
+- 19: "stopped (signal)",
+- 20: "stopped",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "urgent I/O condition",
+- 24: "CPU time limit exceeded",
+- 25: "file size limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window changed",
+- 29: "I/O possible",
+- 30: "power failure",
+- 31: "bad system call",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/breakpoint trap"},
++ {6, "SIGABRT", "aborted"},
++ {7, "SIGBUS", "bus error"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGUSR1", "user defined signal 1"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGUSR2", "user defined signal 2"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGSTKFLT", "stack fault"},
++ {17, "SIGCHLD", "child exited"},
++ {18, "SIGCONT", "continued"},
++ {19, "SIGSTOP", "stopped (signal)"},
++ {20, "SIGTSTP", "stopped"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGURG", "urgent I/O condition"},
++ {24, "SIGXCPU", "CPU time limit exceeded"},
++ {25, "SIGXFSZ", "file size limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window changed"},
++ {29, "SIGIO", "I/O possible"},
++ {30, "SIGPWR", "power failure"},
++ {31, "SIGSYS", "bad system call"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go
+index a6618fc1..005970f7 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go
+@@ -3,7 +3,7 @@
+
+ // +build amd64,linux
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/include -m64 _const.go
+
+ package unix
+@@ -11,1869 +11,487 @@ package unix
+ import "syscall"
+
+ const (
+- AF_ALG = 0x26
+- AF_APPLETALK = 0x5
+- AF_ASH = 0x12
+- AF_ATMPVC = 0x8
+- AF_ATMSVC = 0x14
+- AF_AX25 = 0x3
+- AF_BLUETOOTH = 0x1f
+- AF_BRIDGE = 0x7
+- AF_CAIF = 0x25
+- AF_CAN = 0x1d
+- AF_DECnet = 0xc
+- AF_ECONET = 0x13
+- AF_FILE = 0x1
+- AF_IB = 0x1b
+- AF_IEEE802154 = 0x24
+- AF_INET = 0x2
+- AF_INET6 = 0xa
+- AF_IPX = 0x4
+- AF_IRDA = 0x17
+- AF_ISDN = 0x22
+- AF_IUCV = 0x20
+- AF_KCM = 0x29
+- AF_KEY = 0xf
+- AF_LLC = 0x1a
+- AF_LOCAL = 0x1
+- AF_MAX = 0x2b
+- AF_MPLS = 0x1c
+- AF_NETBEUI = 0xd
+- AF_NETLINK = 0x10
+- AF_NETROM = 0x6
+- AF_NFC = 0x27
+- AF_PACKET = 0x11
+- AF_PHONET = 0x23
+- AF_PPPOX = 0x18
+- AF_QIPCRTR = 0x2a
+- AF_RDS = 0x15
+- AF_ROSE = 0xb
+- AF_ROUTE = 0x10
+- AF_RXRPC = 0x21
+- AF_SECURITY = 0xe
+- AF_SNA = 0x16
+- AF_TIPC = 0x1e
+- AF_UNIX = 0x1
+- AF_UNSPEC = 0x0
+- AF_VSOCK = 0x28
+- AF_WANPIPE = 0x19
+- AF_X25 = 0x9
+- ALG_OP_DECRYPT = 0x0
+- ALG_OP_ENCRYPT = 0x1
+- ALG_SET_AEAD_ASSOCLEN = 0x4
+- ALG_SET_AEAD_AUTHSIZE = 0x5
+- ALG_SET_IV = 0x2
+- ALG_SET_KEY = 0x1
+- ALG_SET_OP = 0x3
+- ARPHRD_6LOWPAN = 0x339
+- ARPHRD_ADAPT = 0x108
+- ARPHRD_APPLETLK = 0x8
+- ARPHRD_ARCNET = 0x7
+- ARPHRD_ASH = 0x30d
+- ARPHRD_ATM = 0x13
+- ARPHRD_AX25 = 0x3
+- ARPHRD_BIF = 0x307
+- ARPHRD_CAIF = 0x336
+- ARPHRD_CAN = 0x118
+- ARPHRD_CHAOS = 0x5
+- ARPHRD_CISCO = 0x201
+- ARPHRD_CSLIP = 0x101
+- ARPHRD_CSLIP6 = 0x103
+- ARPHRD_DDCMP = 0x205
+- ARPHRD_DLCI = 0xf
+- ARPHRD_ECONET = 0x30e
+- ARPHRD_EETHER = 0x2
+- ARPHRD_ETHER = 0x1
+- ARPHRD_EUI64 = 0x1b
+- ARPHRD_FCAL = 0x311
+- ARPHRD_FCFABRIC = 0x313
+- ARPHRD_FCPL = 0x312
+- ARPHRD_FCPP = 0x310
+- ARPHRD_FDDI = 0x306
+- ARPHRD_FRAD = 0x302
+- ARPHRD_HDLC = 0x201
+- ARPHRD_HIPPI = 0x30c
+- ARPHRD_HWX25 = 0x110
+- ARPHRD_IEEE1394 = 0x18
+- ARPHRD_IEEE802 = 0x6
+- ARPHRD_IEEE80211 = 0x321
+- ARPHRD_IEEE80211_PRISM = 0x322
+- ARPHRD_IEEE80211_RADIOTAP = 0x323
+- ARPHRD_IEEE802154 = 0x324
+- ARPHRD_IEEE802154_MONITOR = 0x325
+- ARPHRD_IEEE802_TR = 0x320
+- ARPHRD_INFINIBAND = 0x20
+- ARPHRD_IP6GRE = 0x337
+- ARPHRD_IPDDP = 0x309
+- ARPHRD_IPGRE = 0x30a
+- ARPHRD_IRDA = 0x30f
+- ARPHRD_LAPB = 0x204
+- ARPHRD_LOCALTLK = 0x305
+- ARPHRD_LOOPBACK = 0x304
+- ARPHRD_METRICOM = 0x17
+- ARPHRD_NETLINK = 0x338
+- ARPHRD_NETROM = 0x0
+- ARPHRD_NONE = 0xfffe
+- ARPHRD_PHONET = 0x334
+- ARPHRD_PHONET_PIPE = 0x335
+- ARPHRD_PIMREG = 0x30b
+- ARPHRD_PPP = 0x200
+- ARPHRD_PRONET = 0x4
+- ARPHRD_RAWHDLC = 0x206
+- ARPHRD_ROSE = 0x10e
+- ARPHRD_RSRVD = 0x104
+- ARPHRD_SIT = 0x308
+- ARPHRD_SKIP = 0x303
+- ARPHRD_SLIP = 0x100
+- ARPHRD_SLIP6 = 0x102
+- ARPHRD_TUNNEL = 0x300
+- ARPHRD_TUNNEL6 = 0x301
+- ARPHRD_VOID = 0xffff
+- ARPHRD_X25 = 0x10f
+- B0 = 0x0
+- B1000000 = 0x1008
+- B110 = 0x3
+- B115200 = 0x1002
+- B1152000 = 0x1009
+- B1200 = 0x9
+- B134 = 0x4
+- B150 = 0x5
+- B1500000 = 0x100a
+- B1800 = 0xa
+- B19200 = 0xe
+- B200 = 0x6
+- B2000000 = 0x100b
+- B230400 = 0x1003
+- B2400 = 0xb
+- B2500000 = 0x100c
+- B300 = 0x7
+- B3000000 = 0x100d
+- B3500000 = 0x100e
+- B38400 = 0xf
+- B4000000 = 0x100f
+- B460800 = 0x1004
+- B4800 = 0xc
+- B50 = 0x1
+- B500000 = 0x1005
+- B57600 = 0x1001
+- B576000 = 0x1006
+- B600 = 0x8
+- B75 = 0x2
+- B921600 = 0x1007
+- B9600 = 0xd
+- BLKBSZGET = 0x80081270
+- BLKBSZSET = 0x40081271
+- BLKFLSBUF = 0x1261
+- BLKFRAGET = 0x1265
+- BLKFRASET = 0x1264
+- BLKGETSIZE = 0x1260
+- BLKGETSIZE64 = 0x80081272
+- BLKPBSZGET = 0x127b
+- BLKRAGET = 0x1263
+- BLKRASET = 0x1262
+- BLKROGET = 0x125e
+- BLKROSET = 0x125d
+- BLKRRPART = 0x125f
+- BLKSECTGET = 0x1267
+- BLKSECTSET = 0x1266
+- BLKSSZGET = 0x1268
+- BOTHER = 0x1000
+- BPF_A = 0x10
+- BPF_ABS = 0x20
+- BPF_ADD = 0x0
+- BPF_ALU = 0x4
+- BPF_AND = 0x50
+- BPF_B = 0x10
+- BPF_DIV = 0x30
+- BPF_H = 0x8
+- BPF_IMM = 0x0
+- BPF_IND = 0x40
+- BPF_JA = 0x0
+- BPF_JEQ = 0x10
+- BPF_JGE = 0x30
+- BPF_JGT = 0x20
+- BPF_JMP = 0x5
+- BPF_JSET = 0x40
+- BPF_K = 0x0
+- BPF_LD = 0x0
+- BPF_LDX = 0x1
+- BPF_LEN = 0x80
+- BPF_LL_OFF = -0x200000
+- BPF_LSH = 0x60
+- BPF_MAJOR_VERSION = 0x1
+- BPF_MAXINSNS = 0x1000
+- BPF_MEM = 0x60
+- BPF_MEMWORDS = 0x10
+- BPF_MINOR_VERSION = 0x1
+- BPF_MISC = 0x7
+- BPF_MOD = 0x90
+- BPF_MSH = 0xa0
+- BPF_MUL = 0x20
+- BPF_NEG = 0x80
+- BPF_NET_OFF = -0x100000
+- BPF_OR = 0x40
+- BPF_RET = 0x6
+- BPF_RSH = 0x70
+- BPF_ST = 0x2
+- BPF_STX = 0x3
+- BPF_SUB = 0x10
+- BPF_TAX = 0x0
+- BPF_TXA = 0x80
+- BPF_W = 0x0
+- BPF_X = 0x8
+- BPF_XOR = 0xa0
+- BRKINT = 0x2
+- BS0 = 0x0
+- BS1 = 0x2000
+- BSDLY = 0x2000
+- CAN_BCM = 0x2
+- CAN_EFF_FLAG = 0x80000000
+- CAN_EFF_ID_BITS = 0x1d
+- CAN_EFF_MASK = 0x1fffffff
+- CAN_ERR_FLAG = 0x20000000
+- CAN_ERR_MASK = 0x1fffffff
+- CAN_INV_FILTER = 0x20000000
+- CAN_ISOTP = 0x6
+- CAN_MAX_DLC = 0x8
+- CAN_MAX_DLEN = 0x8
+- CAN_MCNET = 0x5
+- CAN_MTU = 0x10
+- CAN_NPROTO = 0x7
+- CAN_RAW = 0x1
+- CAN_RAW_FILTER_MAX = 0x200
+- CAN_RTR_FLAG = 0x40000000
+- CAN_SFF_ID_BITS = 0xb
+- CAN_SFF_MASK = 0x7ff
+- CAN_TP16 = 0x3
+- CAN_TP20 = 0x4
+- CBAUD = 0x100f
+- CBAUDEX = 0x1000
+- CFLUSH = 0xf
+- CIBAUD = 0x100f0000
+- CLOCAL = 0x800
+- CLOCK_BOOTTIME = 0x7
+- CLOCK_BOOTTIME_ALARM = 0x9
+- CLOCK_DEFAULT = 0x0
+- CLOCK_EXT = 0x1
+- CLOCK_INT = 0x2
+- CLOCK_MONOTONIC = 0x1
+- CLOCK_MONOTONIC_COARSE = 0x6
+- CLOCK_MONOTONIC_RAW = 0x4
+- CLOCK_PROCESS_CPUTIME_ID = 0x2
+- CLOCK_REALTIME = 0x0
+- CLOCK_REALTIME_ALARM = 0x8
+- CLOCK_REALTIME_COARSE = 0x5
+- CLOCK_TAI = 0xb
+- CLOCK_THREAD_CPUTIME_ID = 0x3
+- CLOCK_TXFROMRX = 0x4
+- CLOCK_TXINT = 0x3
+- CLONE_CHILD_CLEARTID = 0x200000
+- CLONE_CHILD_SETTID = 0x1000000
+- CLONE_DETACHED = 0x400000
+- CLONE_FILES = 0x400
+- CLONE_FS = 0x200
+- CLONE_IO = 0x80000000
+- CLONE_NEWCGROUP = 0x2000000
+- CLONE_NEWIPC = 0x8000000
+- CLONE_NEWNET = 0x40000000
+- CLONE_NEWNS = 0x20000
+- CLONE_NEWPID = 0x20000000
+- CLONE_NEWUSER = 0x10000000
+- CLONE_NEWUTS = 0x4000000
+- CLONE_PARENT = 0x8000
+- CLONE_PARENT_SETTID = 0x100000
+- CLONE_PTRACE = 0x2000
+- CLONE_SETTLS = 0x80000
+- CLONE_SIGHAND = 0x800
+- CLONE_SYSVSEM = 0x40000
+- CLONE_THREAD = 0x10000
+- CLONE_UNTRACED = 0x800000
+- CLONE_VFORK = 0x4000
+- CLONE_VM = 0x100
+- CMSPAR = 0x40000000
+- CR0 = 0x0
+- CR1 = 0x200
+- CR2 = 0x400
+- CR3 = 0x600
+- CRDLY = 0x600
+- CREAD = 0x80
+- CRTSCTS = 0x80000000
+- CS5 = 0x0
+- CS6 = 0x10
+- CS7 = 0x20
+- CS8 = 0x30
+- CSIGNAL = 0xff
+- CSIZE = 0x30
+- CSTART = 0x11
+- CSTATUS = 0x0
+- CSTOP = 0x13
+- CSTOPB = 0x40
+- CSUSP = 0x1a
+- DT_BLK = 0x6
+- DT_CHR = 0x2
+- DT_DIR = 0x4
+- DT_FIFO = 0x1
+- DT_LNK = 0xa
+- DT_REG = 0x8
+- DT_SOCK = 0xc
+- DT_UNKNOWN = 0x0
+- DT_WHT = 0xe
+- ECHO = 0x8
+- ECHOCTL = 0x200
+- ECHOE = 0x10
+- ECHOK = 0x20
+- ECHOKE = 0x800
+- ECHONL = 0x40
+- ECHOPRT = 0x400
+- EFD_CLOEXEC = 0x80000
+- EFD_NONBLOCK = 0x800
+- EFD_SEMAPHORE = 0x1
+- ENCODING_DEFAULT = 0x0
+- ENCODING_FM_MARK = 0x3
+- ENCODING_FM_SPACE = 0x4
+- ENCODING_MANCHESTER = 0x5
+- ENCODING_NRZ = 0x1
+- ENCODING_NRZI = 0x2
+- EPOLLERR = 0x8
+- EPOLLET = 0x80000000
+- EPOLLEXCLUSIVE = 0x10000000
+- EPOLLHUP = 0x10
+- EPOLLIN = 0x1
+- EPOLLMSG = 0x400
+- EPOLLONESHOT = 0x40000000
+- EPOLLOUT = 0x4
+- EPOLLPRI = 0x2
+- EPOLLRDBAND = 0x80
+- EPOLLRDHUP = 0x2000
+- EPOLLRDNORM = 0x40
+- EPOLLWAKEUP = 0x20000000
+- EPOLLWRBAND = 0x200
+- EPOLLWRNORM = 0x100
+- EPOLL_CLOEXEC = 0x80000
+- EPOLL_CTL_ADD = 0x1
+- EPOLL_CTL_DEL = 0x2
+- EPOLL_CTL_MOD = 0x3
+- ETH_P_1588 = 0x88f7
+- ETH_P_8021AD = 0x88a8
+- ETH_P_8021AH = 0x88e7
+- ETH_P_8021Q = 0x8100
+- ETH_P_80221 = 0x8917
+- ETH_P_802_2 = 0x4
+- ETH_P_802_3 = 0x1
+- ETH_P_802_3_MIN = 0x600
+- ETH_P_802_EX1 = 0x88b5
+- ETH_P_AARP = 0x80f3
+- ETH_P_AF_IUCV = 0xfbfb
+- ETH_P_ALL = 0x3
+- ETH_P_AOE = 0x88a2
+- ETH_P_ARCNET = 0x1a
+- ETH_P_ARP = 0x806
+- ETH_P_ATALK = 0x809b
+- ETH_P_ATMFATE = 0x8884
+- ETH_P_ATMMPOA = 0x884c
+- ETH_P_AX25 = 0x2
+- ETH_P_BATMAN = 0x4305
+- ETH_P_BPQ = 0x8ff
+- ETH_P_CAIF = 0xf7
+- ETH_P_CAN = 0xc
+- ETH_P_CANFD = 0xd
+- ETH_P_CONTROL = 0x16
+- ETH_P_CUST = 0x6006
+- ETH_P_DDCMP = 0x6
+- ETH_P_DEC = 0x6000
+- ETH_P_DIAG = 0x6005
+- ETH_P_DNA_DL = 0x6001
+- ETH_P_DNA_RC = 0x6002
+- ETH_P_DNA_RT = 0x6003
+- ETH_P_DSA = 0x1b
+- ETH_P_ECONET = 0x18
+- ETH_P_EDSA = 0xdada
+- ETH_P_FCOE = 0x8906
+- ETH_P_FIP = 0x8914
+- ETH_P_HDLC = 0x19
+- ETH_P_HSR = 0x892f
+- ETH_P_IEEE802154 = 0xf6
+- ETH_P_IEEEPUP = 0xa00
+- ETH_P_IEEEPUPAT = 0xa01
+- ETH_P_IP = 0x800
+- ETH_P_IPV6 = 0x86dd
+- ETH_P_IPX = 0x8137
+- ETH_P_IRDA = 0x17
+- ETH_P_LAT = 0x6004
+- ETH_P_LINK_CTL = 0x886c
+- ETH_P_LOCALTALK = 0x9
+- ETH_P_LOOP = 0x60
+- ETH_P_LOOPBACK = 0x9000
+- ETH_P_MACSEC = 0x88e5
+- ETH_P_MOBITEX = 0x15
+- ETH_P_MPLS_MC = 0x8848
+- ETH_P_MPLS_UC = 0x8847
+- ETH_P_MVRP = 0x88f5
+- ETH_P_NCSI = 0x88f8
+- ETH_P_PAE = 0x888e
+- ETH_P_PAUSE = 0x8808
+- ETH_P_PHONET = 0xf5
+- ETH_P_PPPTALK = 0x10
+- ETH_P_PPP_DISC = 0x8863
+- ETH_P_PPP_MP = 0x8
+- ETH_P_PPP_SES = 0x8864
+- ETH_P_PRP = 0x88fb
+- ETH_P_PUP = 0x200
+- ETH_P_PUPAT = 0x201
+- ETH_P_QINQ1 = 0x9100
+- ETH_P_QINQ2 = 0x9200
+- ETH_P_QINQ3 = 0x9300
+- ETH_P_RARP = 0x8035
+- ETH_P_SCA = 0x6007
+- ETH_P_SLOW = 0x8809
+- ETH_P_SNAP = 0x5
+- ETH_P_TDLS = 0x890d
+- ETH_P_TEB = 0x6558
+- ETH_P_TIPC = 0x88ca
+- ETH_P_TRAILER = 0x1c
+- ETH_P_TR_802_2 = 0x11
+- ETH_P_TSN = 0x22f0
+- ETH_P_WAN_PPP = 0x7
+- ETH_P_WCCP = 0x883e
+- ETH_P_X25 = 0x805
+- ETH_P_XDSA = 0xf8
+- EXTA = 0xe
+- EXTB = 0xf
+- EXTPROC = 0x10000
+- FALLOC_FL_COLLAPSE_RANGE = 0x8
+- FALLOC_FL_INSERT_RANGE = 0x20
+- FALLOC_FL_KEEP_SIZE = 0x1
+- FALLOC_FL_NO_HIDE_STALE = 0x4
+- FALLOC_FL_PUNCH_HOLE = 0x2
+- FALLOC_FL_UNSHARE_RANGE = 0x40
+- FALLOC_FL_ZERO_RANGE = 0x10
+- FD_CLOEXEC = 0x1
+- FD_SETSIZE = 0x400
+- FF0 = 0x0
+- FF1 = 0x8000
+- FFDLY = 0x8000
+- FLUSHO = 0x1000
+- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
+- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
+- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
+- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
+- FS_ENCRYPTION_MODE_INVALID = 0x0
+- FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
+- FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
+- FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
+- FS_KEY_DESCRIPTOR_SIZE = 0x8
+- FS_KEY_DESC_PREFIX = "fscrypt:"
+- FS_KEY_DESC_PREFIX_SIZE = 0x8
+- FS_MAX_KEY_SIZE = 0x40
+- FS_POLICY_FLAGS_PAD_16 = 0x2
+- FS_POLICY_FLAGS_PAD_32 = 0x3
+- FS_POLICY_FLAGS_PAD_4 = 0x0
+- FS_POLICY_FLAGS_PAD_8 = 0x1
+- FS_POLICY_FLAGS_PAD_MASK = 0x3
+- FS_POLICY_FLAGS_VALID = 0x3
+- F_DUPFD = 0x0
+- F_DUPFD_CLOEXEC = 0x406
+- F_EXLCK = 0x4
+- F_GETFD = 0x1
+- F_GETFL = 0x3
+- F_GETLEASE = 0x401
+- F_GETLK = 0x5
+- F_GETLK64 = 0x5
+- F_GETOWN = 0x9
+- F_GETOWN_EX = 0x10
+- F_GETPIPE_SZ = 0x408
+- F_GETSIG = 0xb
+- F_LOCK = 0x1
+- F_NOTIFY = 0x402
+- F_OFD_GETLK = 0x24
+- F_OFD_SETLK = 0x25
+- F_OFD_SETLKW = 0x26
+- F_OK = 0x0
+- F_RDLCK = 0x0
+- F_SETFD = 0x2
+- F_SETFL = 0x4
+- F_SETLEASE = 0x400
+- F_SETLK = 0x6
+- F_SETLK64 = 0x6
+- F_SETLKW = 0x7
+- F_SETLKW64 = 0x7
+- F_SETOWN = 0x8
+- F_SETOWN_EX = 0xf
+- F_SETPIPE_SZ = 0x407
+- F_SETSIG = 0xa
+- F_SHLCK = 0x8
+- F_TEST = 0x3
+- F_TLOCK = 0x2
+- F_ULOCK = 0x0
+- F_UNLCK = 0x2
+- F_WRLCK = 0x1
+- GENL_ADMIN_PERM = 0x1
+- GENL_CMD_CAP_DO = 0x2
+- GENL_CMD_CAP_DUMP = 0x4
+- GENL_CMD_CAP_HASPOL = 0x8
+- GENL_HDRLEN = 0x4
+- GENL_ID_CTRL = 0x10
+- GENL_ID_PMCRAID = 0x12
+- GENL_ID_VFS_DQUOT = 0x11
+- GENL_MAX_ID = 0x3ff
+- GENL_MIN_ID = 0x10
+- GENL_NAMSIZ = 0x10
+- GENL_START_ALLOC = 0x13
+- GENL_UNS_ADMIN_PERM = 0x10
+- GRND_NONBLOCK = 0x1
+- GRND_RANDOM = 0x2
+- HUPCL = 0x400
+- IBSHIFT = 0x10
+- ICANON = 0x2
+- ICMPV6_FILTER = 0x1
+- ICRNL = 0x100
+- IEXTEN = 0x8000
+- IFA_F_DADFAILED = 0x8
+- IFA_F_DEPRECATED = 0x20
+- IFA_F_HOMEADDRESS = 0x10
+- IFA_F_MANAGETEMPADDR = 0x100
+- IFA_F_MCAUTOJOIN = 0x400
+- IFA_F_NODAD = 0x2
+- IFA_F_NOPREFIXROUTE = 0x200
+- IFA_F_OPTIMISTIC = 0x4
+- IFA_F_PERMANENT = 0x80
+- IFA_F_SECONDARY = 0x1
+- IFA_F_STABLE_PRIVACY = 0x800
+- IFA_F_TEMPORARY = 0x1
+- IFA_F_TENTATIVE = 0x40
+- IFA_MAX = 0x8
+- IFF_ALLMULTI = 0x200
+- IFF_ATTACH_QUEUE = 0x200
+- IFF_AUTOMEDIA = 0x4000
+- IFF_BROADCAST = 0x2
+- IFF_DEBUG = 0x4
+- IFF_DETACH_QUEUE = 0x400
+- IFF_DORMANT = 0x20000
+- IFF_DYNAMIC = 0x8000
+- IFF_ECHO = 0x40000
+- IFF_LOOPBACK = 0x8
+- IFF_LOWER_UP = 0x10000
+- IFF_MASTER = 0x400
+- IFF_MULTICAST = 0x1000
+- IFF_MULTI_QUEUE = 0x100
+- IFF_NOARP = 0x80
+- IFF_NOFILTER = 0x1000
+- IFF_NOTRAILERS = 0x20
+- IFF_NO_PI = 0x1000
+- IFF_ONE_QUEUE = 0x2000
+- IFF_PERSIST = 0x800
+- IFF_POINTOPOINT = 0x10
+- IFF_PORTSEL = 0x2000
+- IFF_PROMISC = 0x100
+- IFF_RUNNING = 0x40
+- IFF_SLAVE = 0x800
+- IFF_TAP = 0x2
+- IFF_TUN = 0x1
+- IFF_TUN_EXCL = 0x8000
+- IFF_UP = 0x1
+- IFF_VNET_HDR = 0x4000
+- IFF_VOLATILE = 0x70c5a
+- IFNAMSIZ = 0x10
+- IGNBRK = 0x1
+- IGNCR = 0x80
+- IGNPAR = 0x4
+- IMAXBEL = 0x2000
+- INLCR = 0x40
+- INPCK = 0x10
+- IN_ACCESS = 0x1
+- IN_ALL_EVENTS = 0xfff
+- IN_ATTRIB = 0x4
+- IN_CLASSA_HOST = 0xffffff
+- IN_CLASSA_MAX = 0x80
+- IN_CLASSA_NET = 0xff000000
+- IN_CLASSA_NSHIFT = 0x18
+- IN_CLASSB_HOST = 0xffff
+- IN_CLASSB_MAX = 0x10000
+- IN_CLASSB_NET = 0xffff0000
+- IN_CLASSB_NSHIFT = 0x10
+- IN_CLASSC_HOST = 0xff
+- IN_CLASSC_NET = 0xffffff00
+- IN_CLASSC_NSHIFT = 0x8
+- IN_CLOEXEC = 0x80000
+- IN_CLOSE = 0x18
+- IN_CLOSE_NOWRITE = 0x10
+- IN_CLOSE_WRITE = 0x8
+- IN_CREATE = 0x100
+- IN_DELETE = 0x200
+- IN_DELETE_SELF = 0x400
+- IN_DONT_FOLLOW = 0x2000000
+- IN_EXCL_UNLINK = 0x4000000
+- IN_IGNORED = 0x8000
+- IN_ISDIR = 0x40000000
+- IN_LOOPBACKNET = 0x7f
+- IN_MASK_ADD = 0x20000000
+- IN_MODIFY = 0x2
+- IN_MOVE = 0xc0
+- IN_MOVED_FROM = 0x40
+- IN_MOVED_TO = 0x80
+- IN_MOVE_SELF = 0x800
+- IN_NONBLOCK = 0x800
+- IN_ONESHOT = 0x80000000
+- IN_ONLYDIR = 0x1000000
+- IN_OPEN = 0x20
+- IN_Q_OVERFLOW = 0x4000
+- IN_UNMOUNT = 0x2000
+- IPPROTO_AH = 0x33
+- IPPROTO_BEETPH = 0x5e
+- IPPROTO_COMP = 0x6c
+- IPPROTO_DCCP = 0x21
+- IPPROTO_DSTOPTS = 0x3c
+- IPPROTO_EGP = 0x8
+- IPPROTO_ENCAP = 0x62
+- IPPROTO_ESP = 0x32
+- IPPROTO_FRAGMENT = 0x2c
+- IPPROTO_GRE = 0x2f
+- IPPROTO_HOPOPTS = 0x0
+- IPPROTO_ICMP = 0x1
+- IPPROTO_ICMPV6 = 0x3a
+- IPPROTO_IDP = 0x16
+- IPPROTO_IGMP = 0x2
+- IPPROTO_IP = 0x0
+- IPPROTO_IPIP = 0x4
+- IPPROTO_IPV6 = 0x29
+- IPPROTO_MH = 0x87
+- IPPROTO_MPLS = 0x89
+- IPPROTO_MTP = 0x5c
+- IPPROTO_NONE = 0x3b
+- IPPROTO_PIM = 0x67
+- IPPROTO_PUP = 0xc
+- IPPROTO_RAW = 0xff
+- IPPROTO_ROUTING = 0x2b
+- IPPROTO_RSVP = 0x2e
+- IPPROTO_SCTP = 0x84
+- IPPROTO_TCP = 0x6
+- IPPROTO_TP = 0x1d
+- IPPROTO_UDP = 0x11
+- IPPROTO_UDPLITE = 0x88
+- IPV6_2292DSTOPTS = 0x4
+- IPV6_2292HOPLIMIT = 0x8
+- IPV6_2292HOPOPTS = 0x3
+- IPV6_2292PKTINFO = 0x2
+- IPV6_2292PKTOPTIONS = 0x6
+- IPV6_2292RTHDR = 0x5
+- IPV6_ADDRFORM = 0x1
+- IPV6_ADD_MEMBERSHIP = 0x14
+- IPV6_AUTHHDR = 0xa
+- IPV6_CHECKSUM = 0x7
+- IPV6_DONTFRAG = 0x3e
+- IPV6_DROP_MEMBERSHIP = 0x15
+- IPV6_DSTOPTS = 0x3b
+- IPV6_HDRINCL = 0x24
+- IPV6_HOPLIMIT = 0x34
+- IPV6_HOPOPTS = 0x36
+- IPV6_IPSEC_POLICY = 0x22
+- IPV6_JOIN_ANYCAST = 0x1b
+- IPV6_JOIN_GROUP = 0x14
+- IPV6_LEAVE_ANYCAST = 0x1c
+- IPV6_LEAVE_GROUP = 0x15
+- IPV6_MTU = 0x18
+- IPV6_MTU_DISCOVER = 0x17
+- IPV6_MULTICAST_HOPS = 0x12
+- IPV6_MULTICAST_IF = 0x11
+- IPV6_MULTICAST_LOOP = 0x13
+- IPV6_NEXTHOP = 0x9
+- IPV6_PATHMTU = 0x3d
+- IPV6_PKTINFO = 0x32
+- IPV6_PMTUDISC_DO = 0x2
+- IPV6_PMTUDISC_DONT = 0x0
+- IPV6_PMTUDISC_INTERFACE = 0x4
+- IPV6_PMTUDISC_OMIT = 0x5
+- IPV6_PMTUDISC_PROBE = 0x3
+- IPV6_PMTUDISC_WANT = 0x1
+- IPV6_RECVDSTOPTS = 0x3a
+- IPV6_RECVERR = 0x19
+- IPV6_RECVHOPLIMIT = 0x33
+- IPV6_RECVHOPOPTS = 0x35
+- IPV6_RECVPATHMTU = 0x3c
+- IPV6_RECVPKTINFO = 0x31
+- IPV6_RECVRTHDR = 0x38
+- IPV6_RECVTCLASS = 0x42
+- IPV6_ROUTER_ALERT = 0x16
+- IPV6_RTHDR = 0x39
+- IPV6_RTHDRDSTOPTS = 0x37
+- IPV6_RTHDR_LOOSE = 0x0
+- IPV6_RTHDR_STRICT = 0x1
+- IPV6_RTHDR_TYPE_0 = 0x0
+- IPV6_RXDSTOPTS = 0x3b
+- IPV6_RXHOPOPTS = 0x36
+- IPV6_TCLASS = 0x43
+- IPV6_UNICAST_HOPS = 0x10
+- IPV6_V6ONLY = 0x1a
+- IPV6_XFRM_POLICY = 0x23
+- IP_ADD_MEMBERSHIP = 0x23
+- IP_ADD_SOURCE_MEMBERSHIP = 0x27
+- IP_BIND_ADDRESS_NO_PORT = 0x18
+- IP_BLOCK_SOURCE = 0x26
+- IP_CHECKSUM = 0x17
+- IP_DEFAULT_MULTICAST_LOOP = 0x1
+- IP_DEFAULT_MULTICAST_TTL = 0x1
+- IP_DF = 0x4000
+- IP_DROP_MEMBERSHIP = 0x24
+- IP_DROP_SOURCE_MEMBERSHIP = 0x28
+- IP_FREEBIND = 0xf
+- IP_HDRINCL = 0x3
+- IP_IPSEC_POLICY = 0x10
+- IP_MAXPACKET = 0xffff
+- IP_MAX_MEMBERSHIPS = 0x14
+- IP_MF = 0x2000
+- IP_MINTTL = 0x15
+- IP_MSFILTER = 0x29
+- IP_MSS = 0x240
+- IP_MTU = 0xe
+- IP_MTU_DISCOVER = 0xa
+- IP_MULTICAST_ALL = 0x31
+- IP_MULTICAST_IF = 0x20
+- IP_MULTICAST_LOOP = 0x22
+- IP_MULTICAST_TTL = 0x21
+- IP_NODEFRAG = 0x16
+- IP_OFFMASK = 0x1fff
+- IP_OPTIONS = 0x4
+- IP_ORIGDSTADDR = 0x14
+- IP_PASSSEC = 0x12
+- IP_PKTINFO = 0x8
+- IP_PKTOPTIONS = 0x9
+- IP_PMTUDISC = 0xa
+- IP_PMTUDISC_DO = 0x2
+- IP_PMTUDISC_DONT = 0x0
+- IP_PMTUDISC_INTERFACE = 0x4
+- IP_PMTUDISC_OMIT = 0x5
+- IP_PMTUDISC_PROBE = 0x3
+- IP_PMTUDISC_WANT = 0x1
+- IP_RECVERR = 0xb
+- IP_RECVOPTS = 0x6
+- IP_RECVORIGDSTADDR = 0x14
+- IP_RECVRETOPTS = 0x7
+- IP_RECVTOS = 0xd
+- IP_RECVTTL = 0xc
+- IP_RETOPTS = 0x7
+- IP_RF = 0x8000
+- IP_ROUTER_ALERT = 0x5
+- IP_TOS = 0x1
+- IP_TRANSPARENT = 0x13
+- IP_TTL = 0x2
+- IP_UNBLOCK_SOURCE = 0x25
+- IP_UNICAST_IF = 0x32
+- IP_XFRM_POLICY = 0x11
+- ISIG = 0x1
+- ISTRIP = 0x20
+- IUCLC = 0x200
+- IUTF8 = 0x4000
+- IXANY = 0x800
+- IXOFF = 0x1000
+- IXON = 0x400
+- KEYCTL_ASSUME_AUTHORITY = 0x10
+- KEYCTL_CHOWN = 0x4
+- KEYCTL_CLEAR = 0x7
+- KEYCTL_DESCRIBE = 0x6
+- KEYCTL_DH_COMPUTE = 0x17
+- KEYCTL_GET_KEYRING_ID = 0x0
+- KEYCTL_GET_PERSISTENT = 0x16
+- KEYCTL_GET_SECURITY = 0x11
+- KEYCTL_INSTANTIATE = 0xc
+- KEYCTL_INSTANTIATE_IOV = 0x14
+- KEYCTL_INVALIDATE = 0x15
+- KEYCTL_JOIN_SESSION_KEYRING = 0x1
+- KEYCTL_LINK = 0x8
+- KEYCTL_NEGATE = 0xd
+- KEYCTL_READ = 0xb
+- KEYCTL_REJECT = 0x13
+- KEYCTL_REVOKE = 0x3
+- KEYCTL_SEARCH = 0xa
+- KEYCTL_SESSION_TO_PARENT = 0x12
+- KEYCTL_SETPERM = 0x5
+- KEYCTL_SET_REQKEY_KEYRING = 0xe
+- KEYCTL_SET_TIMEOUT = 0xf
+- KEYCTL_UNLINK = 0x9
+- KEYCTL_UPDATE = 0x2
+- KEY_REQKEY_DEFL_DEFAULT = 0x0
+- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
+- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
+- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
+- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
+- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
+- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
+- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
+- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
+- KEY_SPEC_GROUP_KEYRING = -0x6
+- KEY_SPEC_PROCESS_KEYRING = -0x2
+- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
+- KEY_SPEC_REQUESTOR_KEYRING = -0x8
+- KEY_SPEC_SESSION_KEYRING = -0x3
+- KEY_SPEC_THREAD_KEYRING = -0x1
+- KEY_SPEC_USER_KEYRING = -0x4
+- KEY_SPEC_USER_SESSION_KEYRING = -0x5
+- LINUX_REBOOT_CMD_CAD_OFF = 0x0
+- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
+- LINUX_REBOOT_CMD_HALT = 0xcdef0123
+- LINUX_REBOOT_CMD_KEXEC = 0x45584543
+- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
+- LINUX_REBOOT_CMD_RESTART = 0x1234567
+- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
+- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
+- LINUX_REBOOT_MAGIC1 = 0xfee1dead
+- LINUX_REBOOT_MAGIC2 = 0x28121969
+- LOCK_EX = 0x2
+- LOCK_NB = 0x4
+- LOCK_SH = 0x1
+- LOCK_UN = 0x8
+- MADV_DODUMP = 0x11
+- MADV_DOFORK = 0xb
+- MADV_DONTDUMP = 0x10
+- MADV_DONTFORK = 0xa
+- MADV_DONTNEED = 0x4
+- MADV_FREE = 0x8
+- MADV_HUGEPAGE = 0xe
+- MADV_HWPOISON = 0x64
+- MADV_MERGEABLE = 0xc
+- MADV_NOHUGEPAGE = 0xf
+- MADV_NORMAL = 0x0
+- MADV_RANDOM = 0x1
+- MADV_REMOVE = 0x9
+- MADV_SEQUENTIAL = 0x2
+- MADV_UNMERGEABLE = 0xd
+- MADV_WILLNEED = 0x3
+- MAP_32BIT = 0x40
+- MAP_ANON = 0x20
+- MAP_ANONYMOUS = 0x20
+- MAP_DENYWRITE = 0x800
+- MAP_EXECUTABLE = 0x1000
+- MAP_FILE = 0x0
+- MAP_FIXED = 0x10
+- MAP_GROWSDOWN = 0x100
+- MAP_HUGETLB = 0x40000
+- MAP_HUGE_MASK = 0x3f
+- MAP_HUGE_SHIFT = 0x1a
+- MAP_LOCKED = 0x2000
+- MAP_NONBLOCK = 0x10000
+- MAP_NORESERVE = 0x4000
+- MAP_POPULATE = 0x8000
+- MAP_PRIVATE = 0x2
+- MAP_SHARED = 0x1
+- MAP_STACK = 0x20000
+- MAP_TYPE = 0xf
+- MCL_CURRENT = 0x1
+- MCL_FUTURE = 0x2
+- MCL_ONFAULT = 0x4
+- MNT_DETACH = 0x2
+- MNT_EXPIRE = 0x4
+- MNT_FORCE = 0x1
+- MSG_BATCH = 0x40000
+- MSG_CMSG_CLOEXEC = 0x40000000
+- MSG_CONFIRM = 0x800
+- MSG_CTRUNC = 0x8
+- MSG_DONTROUTE = 0x4
+- MSG_DONTWAIT = 0x40
+- MSG_EOR = 0x80
+- MSG_ERRQUEUE = 0x2000
+- MSG_FASTOPEN = 0x20000000
+- MSG_FIN = 0x200
+- MSG_MORE = 0x8000
+- MSG_NOSIGNAL = 0x4000
+- MSG_OOB = 0x1
+- MSG_PEEK = 0x2
+- MSG_PROXY = 0x10
+- MSG_RST = 0x1000
+- MSG_SYN = 0x400
+- MSG_TRUNC = 0x20
+- MSG_TRYHARD = 0x4
+- MSG_WAITALL = 0x100
+- MSG_WAITFORONE = 0x10000
+- MS_ACTIVE = 0x40000000
+- MS_ASYNC = 0x1
+- MS_BIND = 0x1000
+- MS_BORN = 0x20000000
+- MS_DIRSYNC = 0x80
+- MS_INVALIDATE = 0x2
+- MS_I_VERSION = 0x800000
+- MS_KERNMOUNT = 0x400000
+- MS_LAZYTIME = 0x2000000
+- MS_MANDLOCK = 0x40
+- MS_MGC_MSK = 0xffff0000
+- MS_MGC_VAL = 0xc0ed0000
+- MS_MOVE = 0x2000
+- MS_NOATIME = 0x400
+- MS_NODEV = 0x4
+- MS_NODIRATIME = 0x800
+- MS_NOEXEC = 0x8
+- MS_NOREMOTELOCK = 0x8000000
+- MS_NOSEC = 0x10000000
+- MS_NOSUID = 0x2
+- MS_NOUSER = -0x80000000
+- MS_POSIXACL = 0x10000
+- MS_PRIVATE = 0x40000
+- MS_RDONLY = 0x1
+- MS_REC = 0x4000
+- MS_RELATIME = 0x200000
+- MS_REMOUNT = 0x20
+- MS_RMT_MASK = 0x2800051
+- MS_SHARED = 0x100000
+- MS_SILENT = 0x8000
+- MS_SLAVE = 0x80000
+- MS_STRICTATIME = 0x1000000
+- MS_SYNC = 0x4
+- MS_SYNCHRONOUS = 0x10
+- MS_UNBINDABLE = 0x20000
+- MS_VERBOSE = 0x8000
+- NAME_MAX = 0xff
+- NETLINK_ADD_MEMBERSHIP = 0x1
+- NETLINK_AUDIT = 0x9
+- NETLINK_BROADCAST_ERROR = 0x4
+- NETLINK_CAP_ACK = 0xa
+- NETLINK_CONNECTOR = 0xb
+- NETLINK_CRYPTO = 0x15
+- NETLINK_DNRTMSG = 0xe
+- NETLINK_DROP_MEMBERSHIP = 0x2
+- NETLINK_ECRYPTFS = 0x13
+- NETLINK_FIB_LOOKUP = 0xa
+- NETLINK_FIREWALL = 0x3
+- NETLINK_GENERIC = 0x10
+- NETLINK_INET_DIAG = 0x4
+- NETLINK_IP6_FW = 0xd
+- NETLINK_ISCSI = 0x8
+- NETLINK_KOBJECT_UEVENT = 0xf
+- NETLINK_LISTEN_ALL_NSID = 0x8
+- NETLINK_LIST_MEMBERSHIPS = 0x9
+- NETLINK_NETFILTER = 0xc
+- NETLINK_NFLOG = 0x5
+- NETLINK_NO_ENOBUFS = 0x5
+- NETLINK_PKTINFO = 0x3
+- NETLINK_RDMA = 0x14
+- NETLINK_ROUTE = 0x0
+- NETLINK_RX_RING = 0x6
+- NETLINK_SCSITRANSPORT = 0x12
+- NETLINK_SELINUX = 0x7
+- NETLINK_SOCK_DIAG = 0x4
+- NETLINK_TX_RING = 0x7
+- NETLINK_UNUSED = 0x1
+- NETLINK_USERSOCK = 0x2
+- NETLINK_XFRM = 0x6
+- NL0 = 0x0
+- NL1 = 0x100
+- NLA_ALIGNTO = 0x4
+- NLA_F_NESTED = 0x8000
+- NLA_F_NET_BYTEORDER = 0x4000
+- NLA_HDRLEN = 0x4
+- NLDLY = 0x100
+- NLMSG_ALIGNTO = 0x4
+- NLMSG_DONE = 0x3
+- NLMSG_ERROR = 0x2
+- NLMSG_HDRLEN = 0x10
+- NLMSG_MIN_TYPE = 0x10
+- NLMSG_NOOP = 0x1
+- NLMSG_OVERRUN = 0x4
+- NLM_F_ACK = 0x4
+- NLM_F_APPEND = 0x800
+- NLM_F_ATOMIC = 0x400
+- NLM_F_CREATE = 0x400
+- NLM_F_DUMP = 0x300
+- NLM_F_DUMP_FILTERED = 0x20
+- NLM_F_DUMP_INTR = 0x10
+- NLM_F_ECHO = 0x8
+- NLM_F_EXCL = 0x200
+- NLM_F_MATCH = 0x200
+- NLM_F_MULTI = 0x2
+- NLM_F_REPLACE = 0x100
+- NLM_F_REQUEST = 0x1
+- NLM_F_ROOT = 0x100
+- NOFLSH = 0x80
+- OCRNL = 0x8
+- OFDEL = 0x80
+- OFILL = 0x40
+- OLCUC = 0x2
+- ONLCR = 0x4
+- ONLRET = 0x20
+- ONOCR = 0x10
+- OPOST = 0x1
+- O_ACCMODE = 0x3
+- O_APPEND = 0x400
+- O_ASYNC = 0x2000
+- O_CLOEXEC = 0x80000
+- O_CREAT = 0x40
+- O_DIRECT = 0x4000
+- O_DIRECTORY = 0x10000
+- O_DSYNC = 0x1000
+- O_EXCL = 0x80
+- O_FSYNC = 0x101000
+- O_LARGEFILE = 0x0
+- O_NDELAY = 0x800
+- O_NOATIME = 0x40000
+- O_NOCTTY = 0x100
+- O_NOFOLLOW = 0x20000
+- O_NONBLOCK = 0x800
+- O_PATH = 0x200000
+- O_RDONLY = 0x0
+- O_RDWR = 0x2
+- O_RSYNC = 0x101000
+- O_SYNC = 0x101000
+- O_TMPFILE = 0x410000
+- O_TRUNC = 0x200
+- O_WRONLY = 0x1
+- PACKET_ADD_MEMBERSHIP = 0x1
+- PACKET_AUXDATA = 0x8
+- PACKET_BROADCAST = 0x1
+- PACKET_COPY_THRESH = 0x7
+- PACKET_DROP_MEMBERSHIP = 0x2
+- PACKET_FANOUT = 0x12
+- PACKET_FANOUT_CBPF = 0x6
+- PACKET_FANOUT_CPU = 0x2
+- PACKET_FANOUT_DATA = 0x16
+- PACKET_FANOUT_EBPF = 0x7
+- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
+- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
+- PACKET_FANOUT_HASH = 0x0
+- PACKET_FANOUT_LB = 0x1
+- PACKET_FANOUT_QM = 0x5
+- PACKET_FANOUT_RND = 0x4
+- PACKET_FANOUT_ROLLOVER = 0x3
+- PACKET_FASTROUTE = 0x6
+- PACKET_HDRLEN = 0xb
+- PACKET_HOST = 0x0
+- PACKET_KERNEL = 0x7
+- PACKET_LOOPBACK = 0x5
+- PACKET_LOSS = 0xe
+- PACKET_MR_ALLMULTI = 0x2
+- PACKET_MR_MULTICAST = 0x0
+- PACKET_MR_PROMISC = 0x1
+- PACKET_MR_UNICAST = 0x3
+- PACKET_MULTICAST = 0x2
+- PACKET_ORIGDEV = 0x9
+- PACKET_OTHERHOST = 0x3
+- PACKET_OUTGOING = 0x4
+- PACKET_QDISC_BYPASS = 0x14
+- PACKET_RECV_OUTPUT = 0x3
+- PACKET_RESERVE = 0xc
+- PACKET_ROLLOVER_STATS = 0x15
+- PACKET_RX_RING = 0x5
+- PACKET_STATISTICS = 0x6
+- PACKET_TIMESTAMP = 0x11
+- PACKET_TX_HAS_OFF = 0x13
+- PACKET_TX_RING = 0xd
+- PACKET_TX_TIMESTAMP = 0x10
+- PACKET_USER = 0x6
+- PACKET_VERSION = 0xa
+- PACKET_VNET_HDR = 0xf
+- PARENB = 0x100
+- PARITY_CRC16_PR0 = 0x2
+- PARITY_CRC16_PR0_CCITT = 0x4
+- PARITY_CRC16_PR1 = 0x3
+- PARITY_CRC16_PR1_CCITT = 0x5
+- PARITY_CRC32_PR0_CCITT = 0x6
+- PARITY_CRC32_PR1_CCITT = 0x7
+- PARITY_DEFAULT = 0x0
+- PARITY_NONE = 0x1
+- PARMRK = 0x8
+- PARODD = 0x200
+- PENDIN = 0x4000
+- PERF_EVENT_IOC_DISABLE = 0x2401
+- PERF_EVENT_IOC_ENABLE = 0x2400
+- PERF_EVENT_IOC_ID = 0x80082407
+- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
+- PERF_EVENT_IOC_PERIOD = 0x40082404
+- PERF_EVENT_IOC_REFRESH = 0x2402
+- PERF_EVENT_IOC_RESET = 0x2403
+- PERF_EVENT_IOC_SET_BPF = 0x40042408
+- PERF_EVENT_IOC_SET_FILTER = 0x40082406
+- PERF_EVENT_IOC_SET_OUTPUT = 0x2405
+- PRIO_PGRP = 0x1
+- PRIO_PROCESS = 0x0
+- PRIO_USER = 0x2
+- PROT_EXEC = 0x4
+- PROT_GROWSDOWN = 0x1000000
+- PROT_GROWSUP = 0x2000000
+- PROT_NONE = 0x0
+- PROT_READ = 0x1
+- PROT_WRITE = 0x2
+- PR_CAPBSET_DROP = 0x18
+- PR_CAPBSET_READ = 0x17
+- PR_CAP_AMBIENT = 0x2f
+- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
+- PR_CAP_AMBIENT_IS_SET = 0x1
+- PR_CAP_AMBIENT_LOWER = 0x3
+- PR_CAP_AMBIENT_RAISE = 0x2
+- PR_ENDIAN_BIG = 0x0
+- PR_ENDIAN_LITTLE = 0x1
+- PR_ENDIAN_PPC_LITTLE = 0x2
+- PR_FPEMU_NOPRINT = 0x1
+- PR_FPEMU_SIGFPE = 0x2
+- PR_FP_EXC_ASYNC = 0x2
+- PR_FP_EXC_DISABLED = 0x0
+- PR_FP_EXC_DIV = 0x10000
+- PR_FP_EXC_INV = 0x100000
+- PR_FP_EXC_NONRECOV = 0x1
+- PR_FP_EXC_OVF = 0x20000
+- PR_FP_EXC_PRECISE = 0x3
+- PR_FP_EXC_RES = 0x80000
+- PR_FP_EXC_SW_ENABLE = 0x80
+- PR_FP_EXC_UND = 0x40000
+- PR_FP_MODE_FR = 0x1
+- PR_FP_MODE_FRE = 0x2
+- PR_GET_CHILD_SUBREAPER = 0x25
+- PR_GET_DUMPABLE = 0x3
+- PR_GET_ENDIAN = 0x13
+- PR_GET_FPEMU = 0x9
+- PR_GET_FPEXC = 0xb
+- PR_GET_FP_MODE = 0x2e
+- PR_GET_KEEPCAPS = 0x7
+- PR_GET_NAME = 0x10
+- PR_GET_NO_NEW_PRIVS = 0x27
+- PR_GET_PDEATHSIG = 0x2
+- PR_GET_SECCOMP = 0x15
+- PR_GET_SECUREBITS = 0x1b
+- PR_GET_THP_DISABLE = 0x2a
+- PR_GET_TID_ADDRESS = 0x28
+- PR_GET_TIMERSLACK = 0x1e
+- PR_GET_TIMING = 0xd
+- PR_GET_TSC = 0x19
+- PR_GET_UNALIGN = 0x5
+- PR_MCE_KILL = 0x21
+- PR_MCE_KILL_CLEAR = 0x0
+- PR_MCE_KILL_DEFAULT = 0x2
+- PR_MCE_KILL_EARLY = 0x1
+- PR_MCE_KILL_GET = 0x22
+- PR_MCE_KILL_LATE = 0x0
+- PR_MCE_KILL_SET = 0x1
+- PR_MPX_DISABLE_MANAGEMENT = 0x2c
+- PR_MPX_ENABLE_MANAGEMENT = 0x2b
+- PR_SET_CHILD_SUBREAPER = 0x24
+- PR_SET_DUMPABLE = 0x4
+- PR_SET_ENDIAN = 0x14
+- PR_SET_FPEMU = 0xa
+- PR_SET_FPEXC = 0xc
+- PR_SET_FP_MODE = 0x2d
+- PR_SET_KEEPCAPS = 0x8
+- PR_SET_MM = 0x23
+- PR_SET_MM_ARG_END = 0x9
+- PR_SET_MM_ARG_START = 0x8
+- PR_SET_MM_AUXV = 0xc
+- PR_SET_MM_BRK = 0x7
+- PR_SET_MM_END_CODE = 0x2
+- PR_SET_MM_END_DATA = 0x4
+- PR_SET_MM_ENV_END = 0xb
+- PR_SET_MM_ENV_START = 0xa
+- PR_SET_MM_EXE_FILE = 0xd
+- PR_SET_MM_MAP = 0xe
+- PR_SET_MM_MAP_SIZE = 0xf
+- PR_SET_MM_START_BRK = 0x6
+- PR_SET_MM_START_CODE = 0x1
+- PR_SET_MM_START_DATA = 0x3
+- PR_SET_MM_START_STACK = 0x5
+- PR_SET_NAME = 0xf
+- PR_SET_NO_NEW_PRIVS = 0x26
+- PR_SET_PDEATHSIG = 0x1
+- PR_SET_PTRACER = 0x59616d61
+- PR_SET_PTRACER_ANY = -0x1
+- PR_SET_SECCOMP = 0x16
+- PR_SET_SECUREBITS = 0x1c
+- PR_SET_THP_DISABLE = 0x29
+- PR_SET_TIMERSLACK = 0x1d
+- PR_SET_TIMING = 0xe
+- PR_SET_TSC = 0x1a
+- PR_SET_UNALIGN = 0x6
+- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
+- PR_TASK_PERF_EVENTS_ENABLE = 0x20
+- PR_TIMING_STATISTICAL = 0x0
+- PR_TIMING_TIMESTAMP = 0x1
+- PR_TSC_ENABLE = 0x1
+- PR_TSC_SIGSEGV = 0x2
+- PR_UNALIGN_NOPRINT = 0x1
+- PR_UNALIGN_SIGBUS = 0x2
+- PTRACE_ARCH_PRCTL = 0x1e
+- PTRACE_ATTACH = 0x10
+- PTRACE_CONT = 0x7
+- PTRACE_DETACH = 0x11
+- PTRACE_EVENT_CLONE = 0x3
+- PTRACE_EVENT_EXEC = 0x4
+- PTRACE_EVENT_EXIT = 0x6
+- PTRACE_EVENT_FORK = 0x1
+- PTRACE_EVENT_SECCOMP = 0x7
+- PTRACE_EVENT_STOP = 0x80
+- PTRACE_EVENT_VFORK = 0x2
+- PTRACE_EVENT_VFORK_DONE = 0x5
+- PTRACE_GETEVENTMSG = 0x4201
+- PTRACE_GETFPREGS = 0xe
+- PTRACE_GETFPXREGS = 0x12
+- PTRACE_GETREGS = 0xc
+- PTRACE_GETREGSET = 0x4204
+- PTRACE_GETSIGINFO = 0x4202
+- PTRACE_GETSIGMASK = 0x420a
+- PTRACE_GET_THREAD_AREA = 0x19
+- PTRACE_INTERRUPT = 0x4207
+- PTRACE_KILL = 0x8
+- PTRACE_LISTEN = 0x4208
+- PTRACE_OLDSETOPTIONS = 0x15
+- PTRACE_O_EXITKILL = 0x100000
+- PTRACE_O_MASK = 0x3000ff
+- PTRACE_O_SUSPEND_SECCOMP = 0x200000
+- PTRACE_O_TRACECLONE = 0x8
+- PTRACE_O_TRACEEXEC = 0x10
+- PTRACE_O_TRACEEXIT = 0x40
+- PTRACE_O_TRACEFORK = 0x2
+- PTRACE_O_TRACESECCOMP = 0x80
+- PTRACE_O_TRACESYSGOOD = 0x1
+- PTRACE_O_TRACEVFORK = 0x4
+- PTRACE_O_TRACEVFORKDONE = 0x20
+- PTRACE_PEEKDATA = 0x2
+- PTRACE_PEEKSIGINFO = 0x4209
+- PTRACE_PEEKSIGINFO_SHARED = 0x1
+- PTRACE_PEEKTEXT = 0x1
+- PTRACE_PEEKUSR = 0x3
+- PTRACE_POKEDATA = 0x5
+- PTRACE_POKETEXT = 0x4
+- PTRACE_POKEUSR = 0x6
+- PTRACE_SECCOMP_GET_FILTER = 0x420c
+- PTRACE_SEIZE = 0x4206
+- PTRACE_SETFPREGS = 0xf
+- PTRACE_SETFPXREGS = 0x13
+- PTRACE_SETOPTIONS = 0x4200
+- PTRACE_SETREGS = 0xd
+- PTRACE_SETREGSET = 0x4205
+- PTRACE_SETSIGINFO = 0x4203
+- PTRACE_SETSIGMASK = 0x420b
+- PTRACE_SET_THREAD_AREA = 0x1a
+- PTRACE_SINGLEBLOCK = 0x21
+- PTRACE_SINGLESTEP = 0x9
+- PTRACE_SYSCALL = 0x18
+- PTRACE_SYSEMU = 0x1f
+- PTRACE_SYSEMU_SINGLESTEP = 0x20
+- PTRACE_TRACEME = 0x0
+- RLIMIT_AS = 0x9
+- RLIMIT_CORE = 0x4
+- RLIMIT_CPU = 0x0
+- RLIMIT_DATA = 0x2
+- RLIMIT_FSIZE = 0x1
+- RLIMIT_LOCKS = 0xa
+- RLIMIT_MEMLOCK = 0x8
+- RLIMIT_MSGQUEUE = 0xc
+- RLIMIT_NICE = 0xd
+- RLIMIT_NOFILE = 0x7
+- RLIMIT_NPROC = 0x6
+- RLIMIT_RSS = 0x5
+- RLIMIT_RTPRIO = 0xe
+- RLIMIT_RTTIME = 0xf
+- RLIMIT_SIGPENDING = 0xb
+- RLIMIT_STACK = 0x3
+- RLIM_INFINITY = -0x1
+- RTAX_ADVMSS = 0x8
+- RTAX_CC_ALGO = 0x10
+- RTAX_CWND = 0x7
+- RTAX_FEATURES = 0xc
+- RTAX_FEATURE_ALLFRAG = 0x8
+- RTAX_FEATURE_ECN = 0x1
+- RTAX_FEATURE_MASK = 0xf
+- RTAX_FEATURE_SACK = 0x2
+- RTAX_FEATURE_TIMESTAMP = 0x4
+- RTAX_HOPLIMIT = 0xa
+- RTAX_INITCWND = 0xb
+- RTAX_INITRWND = 0xe
+- RTAX_LOCK = 0x1
+- RTAX_MAX = 0x10
+- RTAX_MTU = 0x2
+- RTAX_QUICKACK = 0xf
+- RTAX_REORDERING = 0x9
+- RTAX_RTO_MIN = 0xd
+- RTAX_RTT = 0x4
+- RTAX_RTTVAR = 0x5
+- RTAX_SSTHRESH = 0x6
+- RTAX_UNSPEC = 0x0
+- RTAX_WINDOW = 0x3
+- RTA_ALIGNTO = 0x4
+- RTA_MAX = 0x19
+- RTCF_DIRECTSRC = 0x4000000
+- RTCF_DOREDIRECT = 0x1000000
+- RTCF_LOG = 0x2000000
+- RTCF_MASQ = 0x400000
+- RTCF_NAT = 0x800000
+- RTCF_VALVE = 0x200000
+- RTF_ADDRCLASSMASK = 0xf8000000
+- RTF_ADDRCONF = 0x40000
+- RTF_ALLONLINK = 0x20000
+- RTF_BROADCAST = 0x10000000
+- RTF_CACHE = 0x1000000
+- RTF_DEFAULT = 0x10000
+- RTF_DYNAMIC = 0x10
+- RTF_FLOW = 0x2000000
+- RTF_GATEWAY = 0x2
+- RTF_HOST = 0x4
+- RTF_INTERFACE = 0x40000000
+- RTF_IRTT = 0x100
+- RTF_LINKRT = 0x100000
+- RTF_LOCAL = 0x80000000
+- RTF_MODIFIED = 0x20
+- RTF_MSS = 0x40
+- RTF_MTU = 0x40
+- RTF_MULTICAST = 0x20000000
+- RTF_NAT = 0x8000000
+- RTF_NOFORWARD = 0x1000
+- RTF_NONEXTHOP = 0x200000
+- RTF_NOPMTUDISC = 0x4000
+- RTF_POLICY = 0x4000000
+- RTF_REINSTATE = 0x8
+- RTF_REJECT = 0x200
+- RTF_STATIC = 0x400
+- RTF_THROW = 0x2000
+- RTF_UP = 0x1
+- RTF_WINDOW = 0x80
+- RTF_XRESOLVE = 0x800
+- RTM_BASE = 0x10
+- RTM_DELACTION = 0x31
+- RTM_DELADDR = 0x15
+- RTM_DELADDRLABEL = 0x49
+- RTM_DELLINK = 0x11
+- RTM_DELMDB = 0x55
+- RTM_DELNEIGH = 0x1d
+- RTM_DELNSID = 0x59
+- RTM_DELQDISC = 0x25
+- RTM_DELROUTE = 0x19
+- RTM_DELRULE = 0x21
+- RTM_DELTCLASS = 0x29
+- RTM_DELTFILTER = 0x2d
+- RTM_F_CLONED = 0x200
+- RTM_F_EQUALIZE = 0x400
+- RTM_F_LOOKUP_TABLE = 0x1000
+- RTM_F_NOTIFY = 0x100
+- RTM_F_PREFIX = 0x800
+- RTM_GETACTION = 0x32
+- RTM_GETADDR = 0x16
+- RTM_GETADDRLABEL = 0x4a
+- RTM_GETANYCAST = 0x3e
+- RTM_GETDCB = 0x4e
+- RTM_GETLINK = 0x12
+- RTM_GETMDB = 0x56
+- RTM_GETMULTICAST = 0x3a
+- RTM_GETNEIGH = 0x1e
+- RTM_GETNEIGHTBL = 0x42
+- RTM_GETNETCONF = 0x52
+- RTM_GETNSID = 0x5a
+- RTM_GETQDISC = 0x26
+- RTM_GETROUTE = 0x1a
+- RTM_GETRULE = 0x22
+- RTM_GETSTATS = 0x5e
+- RTM_GETTCLASS = 0x2a
+- RTM_GETTFILTER = 0x2e
+- RTM_MAX = 0x5f
+- RTM_NEWACTION = 0x30
+- RTM_NEWADDR = 0x14
+- RTM_NEWADDRLABEL = 0x48
+- RTM_NEWLINK = 0x10
+- RTM_NEWMDB = 0x54
+- RTM_NEWNDUSEROPT = 0x44
+- RTM_NEWNEIGH = 0x1c
+- RTM_NEWNEIGHTBL = 0x40
+- RTM_NEWNETCONF = 0x50
+- RTM_NEWNSID = 0x58
+- RTM_NEWPREFIX = 0x34
+- RTM_NEWQDISC = 0x24
+- RTM_NEWROUTE = 0x18
+- RTM_NEWRULE = 0x20
+- RTM_NEWSTATS = 0x5c
+- RTM_NEWTCLASS = 0x28
+- RTM_NEWTFILTER = 0x2c
+- RTM_NR_FAMILIES = 0x14
+- RTM_NR_MSGTYPES = 0x50
+- RTM_SETDCB = 0x4f
+- RTM_SETLINK = 0x13
+- RTM_SETNEIGHTBL = 0x43
+- RTNH_ALIGNTO = 0x4
+- RTNH_COMPARE_MASK = 0x19
+- RTNH_F_DEAD = 0x1
+- RTNH_F_LINKDOWN = 0x10
+- RTNH_F_OFFLOAD = 0x8
+- RTNH_F_ONLINK = 0x4
+- RTNH_F_PERVASIVE = 0x2
+- RTN_MAX = 0xb
+- RTPROT_BABEL = 0x2a
+- RTPROT_BIRD = 0xc
+- RTPROT_BOOT = 0x3
+- RTPROT_DHCP = 0x10
+- RTPROT_DNROUTED = 0xd
+- RTPROT_GATED = 0x8
+- RTPROT_KERNEL = 0x2
+- RTPROT_MROUTED = 0x11
+- RTPROT_MRT = 0xa
+- RTPROT_NTK = 0xf
+- RTPROT_RA = 0x9
+- RTPROT_REDIRECT = 0x1
+- RTPROT_STATIC = 0x4
+- RTPROT_UNSPEC = 0x0
+- RTPROT_XORP = 0xe
+- RTPROT_ZEBRA = 0xb
+- RT_CLASS_DEFAULT = 0xfd
+- RT_CLASS_LOCAL = 0xff
+- RT_CLASS_MAIN = 0xfe
+- RT_CLASS_MAX = 0xff
+- RT_CLASS_UNSPEC = 0x0
+- RUSAGE_CHILDREN = -0x1
+- RUSAGE_SELF = 0x0
+- RUSAGE_THREAD = 0x1
+- SCM_CREDENTIALS = 0x2
+- SCM_RIGHTS = 0x1
+- SCM_TIMESTAMP = 0x1d
+- SCM_TIMESTAMPING = 0x25
+- SCM_TIMESTAMPING_OPT_STATS = 0x36
+- SCM_TIMESTAMPNS = 0x23
+- SCM_WIFI_STATUS = 0x29
+- SECCOMP_MODE_DISABLED = 0x0
+- SECCOMP_MODE_FILTER = 0x2
+- SECCOMP_MODE_STRICT = 0x1
+- SHUT_RD = 0x0
+- SHUT_RDWR = 0x2
+- SHUT_WR = 0x1
+- SIOCADDDLCI = 0x8980
+- SIOCADDMULTI = 0x8931
+- SIOCADDRT = 0x890b
+- SIOCATMARK = 0x8905
+- SIOCBONDCHANGEACTIVE = 0x8995
+- SIOCBONDENSLAVE = 0x8990
+- SIOCBONDINFOQUERY = 0x8994
+- SIOCBONDRELEASE = 0x8991
+- SIOCBONDSETHWADDR = 0x8992
+- SIOCBONDSLAVEINFOQUERY = 0x8993
+- SIOCBRADDBR = 0x89a0
+- SIOCBRADDIF = 0x89a2
+- SIOCBRDELBR = 0x89a1
+- SIOCBRDELIF = 0x89a3
+- SIOCDARP = 0x8953
+- SIOCDELDLCI = 0x8981
+- SIOCDELMULTI = 0x8932
+- SIOCDELRT = 0x890c
+- SIOCDEVPRIVATE = 0x89f0
+- SIOCDIFADDR = 0x8936
+- SIOCDRARP = 0x8960
+- SIOCETHTOOL = 0x8946
+- SIOCGARP = 0x8954
+- SIOCGHWTSTAMP = 0x89b1
+- SIOCGIFADDR = 0x8915
+- SIOCGIFBR = 0x8940
+- SIOCGIFBRDADDR = 0x8919
+- SIOCGIFCONF = 0x8912
+- SIOCGIFCOUNT = 0x8938
+- SIOCGIFDSTADDR = 0x8917
+- SIOCGIFENCAP = 0x8925
+- SIOCGIFFLAGS = 0x8913
+- SIOCGIFHWADDR = 0x8927
+- SIOCGIFINDEX = 0x8933
+- SIOCGIFMAP = 0x8970
+- SIOCGIFMEM = 0x891f
+- SIOCGIFMETRIC = 0x891d
+- SIOCGIFMTU = 0x8921
+- SIOCGIFNAME = 0x8910
+- SIOCGIFNETMASK = 0x891b
+- SIOCGIFPFLAGS = 0x8935
+- SIOCGIFSLAVE = 0x8929
+- SIOCGIFTXQLEN = 0x8942
+- SIOCGIFVLAN = 0x8982
+- SIOCGMIIPHY = 0x8947
+- SIOCGMIIREG = 0x8948
+- SIOCGPGRP = 0x8904
+- SIOCGRARP = 0x8961
+- SIOCGSKNS = 0x894c
+- SIOCGSTAMP = 0x8906
+- SIOCGSTAMPNS = 0x8907
+- SIOCINQ = 0x541b
+- SIOCOUTQ = 0x5411
+- SIOCOUTQNSD = 0x894b
+- SIOCPROTOPRIVATE = 0x89e0
+- SIOCRTMSG = 0x890d
+- SIOCSARP = 0x8955
+- SIOCSHWTSTAMP = 0x89b0
+- SIOCSIFADDR = 0x8916
+- SIOCSIFBR = 0x8941
+- SIOCSIFBRDADDR = 0x891a
+- SIOCSIFDSTADDR = 0x8918
+- SIOCSIFENCAP = 0x8926
+- SIOCSIFFLAGS = 0x8914
+- SIOCSIFHWADDR = 0x8924
+- SIOCSIFHWBROADCAST = 0x8937
+- SIOCSIFLINK = 0x8911
+- SIOCSIFMAP = 0x8971
+- SIOCSIFMEM = 0x8920
+- SIOCSIFMETRIC = 0x891e
+- SIOCSIFMTU = 0x8922
+- SIOCSIFNAME = 0x8923
+- SIOCSIFNETMASK = 0x891c
+- SIOCSIFPFLAGS = 0x8934
+- SIOCSIFSLAVE = 0x8930
+- SIOCSIFTXQLEN = 0x8943
+- SIOCSIFVLAN = 0x8983
+- SIOCSMIIREG = 0x8949
+- SIOCSPGRP = 0x8902
+- SIOCSRARP = 0x8962
+- SIOCWANDEV = 0x894a
+- SOCK_CLOEXEC = 0x80000
+- SOCK_DCCP = 0x6
+- SOCK_DGRAM = 0x2
+- SOCK_IOC_TYPE = 0x89
+- SOCK_NONBLOCK = 0x800
+- SOCK_PACKET = 0xa
+- SOCK_RAW = 0x3
+- SOCK_RDM = 0x4
+- SOCK_SEQPACKET = 0x5
+- SOCK_STREAM = 0x1
+- SOL_AAL = 0x109
+- SOL_ALG = 0x117
+- SOL_ATM = 0x108
+- SOL_CAIF = 0x116
+- SOL_CAN_BASE = 0x64
+- SOL_DCCP = 0x10d
+- SOL_DECNET = 0x105
+- SOL_ICMPV6 = 0x3a
+- SOL_IP = 0x0
+- SOL_IPV6 = 0x29
+- SOL_IRDA = 0x10a
+- SOL_IUCV = 0x115
+- SOL_KCM = 0x119
+- SOL_LLC = 0x10c
+- SOL_NETBEUI = 0x10b
+- SOL_NETLINK = 0x10e
+- SOL_NFC = 0x118
+- SOL_PACKET = 0x107
+- SOL_PNPIPE = 0x113
+- SOL_PPPOL2TP = 0x111
+- SOL_RAW = 0xff
+- SOL_RDS = 0x114
+- SOL_RXRPC = 0x110
+- SOL_SOCKET = 0x1
+- SOL_TCP = 0x6
+- SOL_TIPC = 0x10f
+- SOL_X25 = 0x106
+- SOMAXCONN = 0x80
+- SO_ACCEPTCONN = 0x1e
+- SO_ATTACH_BPF = 0x32
+- SO_ATTACH_FILTER = 0x1a
+- SO_ATTACH_REUSEPORT_CBPF = 0x33
+- SO_ATTACH_REUSEPORT_EBPF = 0x34
+- SO_BINDTODEVICE = 0x19
+- SO_BPF_EXTENSIONS = 0x30
+- SO_BROADCAST = 0x6
+- SO_BSDCOMPAT = 0xe
+- SO_BUSY_POLL = 0x2e
+- SO_CNX_ADVICE = 0x35
+- SO_DEBUG = 0x1
+- SO_DETACH_BPF = 0x1b
+- SO_DETACH_FILTER = 0x1b
+- SO_DOMAIN = 0x27
+- SO_DONTROUTE = 0x5
+- SO_ERROR = 0x4
+- SO_GET_FILTER = 0x1a
+- SO_INCOMING_CPU = 0x31
+- SO_KEEPALIVE = 0x9
+- SO_LINGER = 0xd
+- SO_LOCK_FILTER = 0x2c
+- SO_MARK = 0x24
+- SO_MAX_PACING_RATE = 0x2f
+- SO_NOFCS = 0x2b
+- SO_NO_CHECK = 0xb
+- SO_OOBINLINE = 0xa
+- SO_PASSCRED = 0x10
+- SO_PASSSEC = 0x22
+- SO_PEEK_OFF = 0x2a
+- SO_PEERCRED = 0x11
+- SO_PEERNAME = 0x1c
+- SO_PEERSEC = 0x1f
+- SO_PRIORITY = 0xc
+- SO_PROTOCOL = 0x26
+- SO_RCVBUF = 0x8
+- SO_RCVBUFFORCE = 0x21
+- SO_RCVLOWAT = 0x12
+- SO_RCVTIMEO = 0x14
+- SO_REUSEADDR = 0x2
+- SO_REUSEPORT = 0xf
+- SO_RXQ_OVFL = 0x28
+- SO_SECURITY_AUTHENTICATION = 0x16
+- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
+- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
+- SO_SELECT_ERR_QUEUE = 0x2d
+- SO_SNDBUF = 0x7
+- SO_SNDBUFFORCE = 0x20
+- SO_SNDLOWAT = 0x13
+- SO_SNDTIMEO = 0x15
+- SO_TIMESTAMP = 0x1d
+- SO_TIMESTAMPING = 0x25
+- SO_TIMESTAMPNS = 0x23
+- SO_TYPE = 0x3
+- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
+- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
+- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
+- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
+- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
+- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
+- SO_VM_SOCKETS_TRUSTED = 0x5
+- SO_WIFI_STATUS = 0x29
+- SPLICE_F_GIFT = 0x8
+- SPLICE_F_MORE = 0x4
+- SPLICE_F_MOVE = 0x1
+- SPLICE_F_NONBLOCK = 0x2
+- S_BLKSIZE = 0x200
+- S_IEXEC = 0x40
+- S_IFBLK = 0x6000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFIFO = 0x1000
+- S_IFLNK = 0xa000
+- S_IFMT = 0xf000
+- S_IFREG = 0x8000
+- S_IFSOCK = 0xc000
+- S_IREAD = 0x100
+- S_IRGRP = 0x20
+- S_IROTH = 0x4
+- S_IRUSR = 0x100
+- S_IRWXG = 0x38
+- S_IRWXO = 0x7
+- S_IRWXU = 0x1c0
+- S_ISGID = 0x400
+- S_ISUID = 0x800
+- S_ISVTX = 0x200
+- S_IWGRP = 0x10
+- S_IWOTH = 0x2
+- S_IWRITE = 0x80
+- S_IWUSR = 0x80
+- S_IXGRP = 0x8
+- S_IXOTH = 0x1
+- S_IXUSR = 0x40
+- TAB0 = 0x0
+- TAB1 = 0x800
+- TAB2 = 0x1000
+- TAB3 = 0x1800
+- TABDLY = 0x1800
+- TASKSTATS_CMD_ATTR_MAX = 0x4
+- TASKSTATS_CMD_MAX = 0x2
+- TASKSTATS_GENL_NAME = "TASKSTATS"
+- TASKSTATS_GENL_VERSION = 0x1
+- TASKSTATS_TYPE_MAX = 0x6
+- TASKSTATS_VERSION = 0x8
+- TCFLSH = 0x540b
+- TCGETA = 0x5405
+- TCGETS = 0x5401
+- TCGETS2 = 0x802c542a
+- TCGETX = 0x5432
+- TCIFLUSH = 0x0
+- TCIOFF = 0x2
+- TCIOFLUSH = 0x2
+- TCION = 0x3
+- TCOFLUSH = 0x1
+- TCOOFF = 0x0
+- TCOON = 0x1
+- TCP_CC_INFO = 0x1a
+- TCP_CONGESTION = 0xd
+- TCP_COOKIE_IN_ALWAYS = 0x1
+- TCP_COOKIE_MAX = 0x10
+- TCP_COOKIE_MIN = 0x8
+- TCP_COOKIE_OUT_NEVER = 0x2
+- TCP_COOKIE_PAIR_SIZE = 0x20
+- TCP_COOKIE_TRANSACTIONS = 0xf
+- TCP_CORK = 0x3
+- TCP_DEFER_ACCEPT = 0x9
+- TCP_FASTOPEN = 0x17
+- TCP_INFO = 0xb
+- TCP_KEEPCNT = 0x6
+- TCP_KEEPIDLE = 0x4
+- TCP_KEEPINTVL = 0x5
+- TCP_LINGER2 = 0x8
+- TCP_MAXSEG = 0x2
+- TCP_MAXWIN = 0xffff
+- TCP_MAX_WINSHIFT = 0xe
+- TCP_MD5SIG = 0xe
+- TCP_MD5SIG_MAXKEYLEN = 0x50
+- TCP_MSS = 0x200
+- TCP_MSS_DEFAULT = 0x218
+- TCP_MSS_DESIRED = 0x4c4
+- TCP_NODELAY = 0x1
+- TCP_NOTSENT_LOWAT = 0x19
+- TCP_QUEUE_SEQ = 0x15
+- TCP_QUICKACK = 0xc
+- TCP_REPAIR = 0x13
+- TCP_REPAIR_OPTIONS = 0x16
+- TCP_REPAIR_QUEUE = 0x14
+- TCP_REPAIR_WINDOW = 0x1d
+- TCP_SAVED_SYN = 0x1c
+- TCP_SAVE_SYN = 0x1b
+- TCP_SYNCNT = 0x7
+- TCP_S_DATA_IN = 0x4
+- TCP_S_DATA_OUT = 0x8
+- TCP_THIN_DUPACK = 0x11
+- TCP_THIN_LINEAR_TIMEOUTS = 0x10
+- TCP_TIMESTAMP = 0x18
+- TCP_USER_TIMEOUT = 0x12
+- TCP_WINDOW_CLAMP = 0xa
+- TCSAFLUSH = 0x2
+- TCSBRK = 0x5409
+- TCSBRKP = 0x5425
+- TCSETA = 0x5406
+- TCSETAF = 0x5408
+- TCSETAW = 0x5407
+- TCSETS = 0x5402
+- TCSETS2 = 0x402c542b
+- TCSETSF = 0x5404
+- TCSETSF2 = 0x402c542d
+- TCSETSW = 0x5403
+- TCSETSW2 = 0x402c542c
+- TCSETX = 0x5433
+- TCSETXF = 0x5434
+- TCSETXW = 0x5435
+- TCXONC = 0x540a
+- TIOCCBRK = 0x5428
+- TIOCCONS = 0x541d
+- TIOCEXCL = 0x540c
+- TIOCGDEV = 0x80045432
+- TIOCGETD = 0x5424
+- TIOCGEXCL = 0x80045440
+- TIOCGICOUNT = 0x545d
+- TIOCGLCKTRMIOS = 0x5456
+- TIOCGPGRP = 0x540f
+- TIOCGPKT = 0x80045438
+- TIOCGPTLCK = 0x80045439
+- TIOCGPTN = 0x80045430
+- TIOCGRS485 = 0x542e
+- TIOCGSERIAL = 0x541e
+- TIOCGSID = 0x5429
+- TIOCGSOFTCAR = 0x5419
+- TIOCGWINSZ = 0x5413
+- TIOCINQ = 0x541b
+- TIOCLINUX = 0x541c
+- TIOCMBIC = 0x5417
+- TIOCMBIS = 0x5416
+- TIOCMGET = 0x5415
+- TIOCMIWAIT = 0x545c
+- TIOCMSET = 0x5418
+- TIOCM_CAR = 0x40
+- TIOCM_CD = 0x40
+- TIOCM_CTS = 0x20
+- TIOCM_DSR = 0x100
+- TIOCM_DTR = 0x2
+- TIOCM_LE = 0x1
+- TIOCM_RI = 0x80
+- TIOCM_RNG = 0x80
+- TIOCM_RTS = 0x4
+- TIOCM_SR = 0x10
+- TIOCM_ST = 0x8
+- TIOCNOTTY = 0x5422
+- TIOCNXCL = 0x540d
+- TIOCOUTQ = 0x5411
+- TIOCPKT = 0x5420
+- TIOCPKT_DATA = 0x0
+- TIOCPKT_DOSTOP = 0x20
+- TIOCPKT_FLUSHREAD = 0x1
+- TIOCPKT_FLUSHWRITE = 0x2
+- TIOCPKT_IOCTL = 0x40
+- TIOCPKT_NOSTOP = 0x10
+- TIOCPKT_START = 0x8
+- TIOCPKT_STOP = 0x4
+- TIOCSBRK = 0x5427
+- TIOCSCTTY = 0x540e
+- TIOCSERCONFIG = 0x5453
+- TIOCSERGETLSR = 0x5459
+- TIOCSERGETMULTI = 0x545a
+- TIOCSERGSTRUCT = 0x5458
+- TIOCSERGWILD = 0x5454
+- TIOCSERSETMULTI = 0x545b
+- TIOCSERSWILD = 0x5455
+- TIOCSER_TEMT = 0x1
+- TIOCSETD = 0x5423
+- TIOCSIG = 0x40045436
+- TIOCSLCKTRMIOS = 0x5457
+- TIOCSPGRP = 0x5410
+- TIOCSPTLCK = 0x40045431
+- TIOCSRS485 = 0x542f
+- TIOCSSERIAL = 0x541f
+- TIOCSSOFTCAR = 0x541a
+- TIOCSTI = 0x5412
+- TIOCSWINSZ = 0x5414
+- TIOCVHANGUP = 0x5437
+- TOSTOP = 0x100
+- TS_COMM_LEN = 0x20
+- TUNATTACHFILTER = 0x401054d5
+- TUNDETACHFILTER = 0x401054d6
+- TUNGETFEATURES = 0x800454cf
+- TUNGETFILTER = 0x801054db
+- TUNGETIFF = 0x800454d2
+- TUNGETSNDBUF = 0x800454d3
+- TUNGETVNETBE = 0x800454df
+- TUNGETVNETHDRSZ = 0x800454d7
+- TUNGETVNETLE = 0x800454dd
+- TUNSETDEBUG = 0x400454c9
+- TUNSETGROUP = 0x400454ce
+- TUNSETIFF = 0x400454ca
+- TUNSETIFINDEX = 0x400454da
+- TUNSETLINK = 0x400454cd
+- TUNSETNOCSUM = 0x400454c8
+- TUNSETOFFLOAD = 0x400454d0
+- TUNSETOWNER = 0x400454cc
+- TUNSETPERSIST = 0x400454cb
+- TUNSETQUEUE = 0x400454d9
+- TUNSETSNDBUF = 0x400454d4
+- TUNSETTXFILTER = 0x400454d1
+- TUNSETVNETBE = 0x400454de
+- TUNSETVNETHDRSZ = 0x400454d8
+- TUNSETVNETLE = 0x400454dc
+- UMOUNT_NOFOLLOW = 0x8
+- VDISCARD = 0xd
+- VEOF = 0x4
+- VEOL = 0xb
+- VEOL2 = 0x10
+- VERASE = 0x2
+- VINTR = 0x0
+- VKILL = 0x3
+- VLNEXT = 0xf
+- VMADDR_CID_ANY = 0xffffffff
+- VMADDR_CID_HOST = 0x2
+- VMADDR_CID_HYPERVISOR = 0x0
+- VMADDR_CID_RESERVED = 0x1
+- VMADDR_PORT_ANY = 0xffffffff
+- VMIN = 0x6
+- VM_SOCKETS_INVALID_VERSION = 0xffffffff
+- VQUIT = 0x1
+- VREPRINT = 0xc
+- VSTART = 0x8
+- VSTOP = 0x9
+- VSUSP = 0xa
+- VSWTC = 0x7
+- VT0 = 0x0
+- VT1 = 0x4000
+- VTDLY = 0x4000
+- VTIME = 0x5
+- VWERASE = 0xe
+- WALL = 0x40000000
+- WCLONE = 0x80000000
+- WCONTINUED = 0x8
+- WEXITED = 0x4
+- WNOHANG = 0x1
+- WNOTHREAD = 0x20000000
+- WNOWAIT = 0x1000000
+- WORDSIZE = 0x40
+- WSTOPPED = 0x2
+- WUNTRACED = 0x2
+- XATTR_CREATE = 0x1
+- XATTR_REPLACE = 0x2
+- XCASE = 0x4
+- XTABS = 0x1800
++ B1000000 = 0x1008
++ B115200 = 0x1002
++ B1152000 = 0x1009
++ B1500000 = 0x100a
++ B2000000 = 0x100b
++ B230400 = 0x1003
++ B2500000 = 0x100c
++ B3000000 = 0x100d
++ B3500000 = 0x100e
++ B4000000 = 0x100f
++ B460800 = 0x1004
++ B500000 = 0x1005
++ B57600 = 0x1001
++ B576000 = 0x1006
++ B921600 = 0x1007
++ BLKBSZGET = 0x80081270
++ BLKBSZSET = 0x40081271
++ BLKFLSBUF = 0x1261
++ BLKFRAGET = 0x1265
++ BLKFRASET = 0x1264
++ BLKGETSIZE = 0x1260
++ BLKGETSIZE64 = 0x80081272
++ BLKPBSZGET = 0x127b
++ BLKRAGET = 0x1263
++ BLKRASET = 0x1262
++ BLKROGET = 0x125e
++ BLKROSET = 0x125d
++ BLKRRPART = 0x125f
++ BLKSECTGET = 0x1267
++ BLKSECTSET = 0x1266
++ BLKSSZGET = 0x1268
++ BOTHER = 0x1000
++ BS1 = 0x2000
++ BSDLY = 0x2000
++ CBAUD = 0x100f
++ CBAUDEX = 0x1000
++ CIBAUD = 0x100f0000
++ CLOCAL = 0x800
++ CR1 = 0x200
++ CR2 = 0x400
++ CR3 = 0x600
++ CRDLY = 0x600
++ CREAD = 0x80
++ CS6 = 0x10
++ CS7 = 0x20
++ CS8 = 0x30
++ CSIZE = 0x30
++ CSTOPB = 0x40
++ ECHOCTL = 0x200
++ ECHOE = 0x10
++ ECHOK = 0x20
++ ECHOKE = 0x800
++ ECHONL = 0x40
++ ECHOPRT = 0x400
++ EFD_CLOEXEC = 0x80000
++ EFD_NONBLOCK = 0x800
++ EPOLL_CLOEXEC = 0x80000
++ EXTPROC = 0x10000
++ FF1 = 0x8000
++ FFDLY = 0x8000
++ FLUSHO = 0x1000
++ FP_XSTATE_MAGIC2 = 0x46505845
++ FS_IOC_ENABLE_VERITY = 0x40806685
++ FS_IOC_GETFLAGS = 0x80086601
++ FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
++ FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
++ FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
++ F_GETLK = 0x5
++ F_GETLK64 = 0x5
++ F_GETOWN = 0x9
++ F_RDLCK = 0x0
++ F_SETLK = 0x6
++ F_SETLK64 = 0x6
++ F_SETLKW = 0x7
++ F_SETLKW64 = 0x7
++ F_SETOWN = 0x8
++ F_UNLCK = 0x2
++ F_WRLCK = 0x1
++ HUPCL = 0x400
++ ICANON = 0x2
++ IEXTEN = 0x8000
++ IN_CLOEXEC = 0x80000
++ IN_NONBLOCK = 0x800
++ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x7b9
++ ISIG = 0x1
++ IUCLC = 0x200
++ IXOFF = 0x1000
++ IXON = 0x400
++ MAP_32BIT = 0x40
++ MAP_ANON = 0x20
++ MAP_ANONYMOUS = 0x20
++ MAP_DENYWRITE = 0x800
++ MAP_EXECUTABLE = 0x1000
++ MAP_GROWSDOWN = 0x100
++ MAP_HUGETLB = 0x40000
++ MAP_LOCKED = 0x2000
++ MAP_NONBLOCK = 0x10000
++ MAP_NORESERVE = 0x4000
++ MAP_POPULATE = 0x8000
++ MAP_STACK = 0x20000
++ MAP_SYNC = 0x80000
++ MCL_CURRENT = 0x1
++ MCL_FUTURE = 0x2
++ MCL_ONFAULT = 0x4
++ NFDBITS = 0x40
++ NLDLY = 0x100
++ NOFLSH = 0x80
++ NS_GET_NSTYPE = 0xb703
++ NS_GET_OWNER_UID = 0xb704
++ NS_GET_PARENT = 0xb702
++ NS_GET_USERNS = 0xb701
++ OLCUC = 0x2
++ ONLCR = 0x4
++ O_APPEND = 0x400
++ O_ASYNC = 0x2000
++ O_CLOEXEC = 0x80000
++ O_CREAT = 0x40
++ O_DIRECT = 0x4000
++ O_DIRECTORY = 0x10000
++ O_DSYNC = 0x1000
++ O_EXCL = 0x80
++ O_FSYNC = 0x101000
++ O_LARGEFILE = 0x0
++ O_NDELAY = 0x800
++ O_NOATIME = 0x40000
++ O_NOCTTY = 0x100
++ O_NOFOLLOW = 0x20000
++ O_NONBLOCK = 0x800
++ O_PATH = 0x200000
++ O_RSYNC = 0x101000
++ O_SYNC = 0x101000
++ O_TMPFILE = 0x410000
++ O_TRUNC = 0x200
++ PARENB = 0x100
++ PARODD = 0x200
++ PENDIN = 0x4000
++ PERF_EVENT_IOC_DISABLE = 0x2401
++ PERF_EVENT_IOC_ENABLE = 0x2400
++ PERF_EVENT_IOC_ID = 0x80082407
++ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x4008240b
++ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
++ PERF_EVENT_IOC_PERIOD = 0x40082404
++ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
++ PERF_EVENT_IOC_REFRESH = 0x2402
++ PERF_EVENT_IOC_RESET = 0x2403
++ PERF_EVENT_IOC_SET_BPF = 0x40042408
++ PERF_EVENT_IOC_SET_FILTER = 0x40082406
++ PERF_EVENT_IOC_SET_OUTPUT = 0x2405
++ PPPIOCATTACH = 0x4004743d
++ PPPIOCATTCHAN = 0x40047438
++ PPPIOCCONNECT = 0x4004743a
++ PPPIOCDETACH = 0x4004743c
++ PPPIOCDISCONN = 0x7439
++ PPPIOCGASYNCMAP = 0x80047458
++ PPPIOCGCHAN = 0x80047437
++ PPPIOCGDEBUG = 0x80047441
++ PPPIOCGFLAGS = 0x8004745a
++ PPPIOCGIDLE = 0x8010743f
++ PPPIOCGIDLE32 = 0x8008743f
++ PPPIOCGIDLE64 = 0x8010743f
++ PPPIOCGL2TPSTATS = 0x80487436
++ PPPIOCGMRU = 0x80047453
++ PPPIOCGRASYNCMAP = 0x80047455
++ PPPIOCGUNIT = 0x80047456
++ PPPIOCGXASYNCMAP = 0x80207450
++ PPPIOCSACTIVE = 0x40107446
++ PPPIOCSASYNCMAP = 0x40047457
++ PPPIOCSCOMPRESS = 0x4010744d
++ PPPIOCSDEBUG = 0x40047440
++ PPPIOCSFLAGS = 0x40047459
++ PPPIOCSMAXCID = 0x40047451
++ PPPIOCSMRRU = 0x4004743b
++ PPPIOCSMRU = 0x40047452
++ PPPIOCSNPMODE = 0x4008744b
++ PPPIOCSPASS = 0x40107447
++ PPPIOCSRASYNCMAP = 0x40047454
++ PPPIOCSXASYNCMAP = 0x4020744f
++ PPPIOCXFERUNIT = 0x744e
++ PR_SET_PTRACER_ANY = 0xffffffffffffffff
++ PTRACE_ARCH_PRCTL = 0x1e
++ PTRACE_GETFPREGS = 0xe
++ PTRACE_GETFPXREGS = 0x12
++ PTRACE_GET_THREAD_AREA = 0x19
++ PTRACE_OLDSETOPTIONS = 0x15
++ PTRACE_SETFPREGS = 0xf
++ PTRACE_SETFPXREGS = 0x13
++ PTRACE_SET_THREAD_AREA = 0x1a
++ PTRACE_SINGLEBLOCK = 0x21
++ PTRACE_SYSEMU = 0x1f
++ PTRACE_SYSEMU_SINGLESTEP = 0x20
++ RLIMIT_AS = 0x9
++ RLIMIT_MEMLOCK = 0x8
++ RLIMIT_NOFILE = 0x7
++ RLIMIT_NPROC = 0x6
++ RLIMIT_RSS = 0x5
++ RNDADDENTROPY = 0x40085203
++ RNDADDTOENTCNT = 0x40045201
++ RNDCLEARPOOL = 0x5206
++ RNDGETENTCNT = 0x80045200
++ RNDGETPOOL = 0x80085202
++ RNDRESEEDCRNG = 0x5207
++ RNDZAPENTCNT = 0x5204
++ RTC_AIE_OFF = 0x7002
++ RTC_AIE_ON = 0x7001
++ RTC_ALM_READ = 0x80247008
++ RTC_ALM_SET = 0x40247007
++ RTC_EPOCH_READ = 0x8008700d
++ RTC_EPOCH_SET = 0x4008700e
++ RTC_IRQP_READ = 0x8008700b
++ RTC_IRQP_SET = 0x4008700c
++ RTC_PIE_OFF = 0x7006
++ RTC_PIE_ON = 0x7005
++ RTC_PLL_GET = 0x80207011
++ RTC_PLL_SET = 0x40207012
++ RTC_RD_TIME = 0x80247009
++ RTC_SET_TIME = 0x4024700a
++ RTC_UIE_OFF = 0x7004
++ RTC_UIE_ON = 0x7003
++ RTC_VL_CLR = 0x7014
++ RTC_VL_READ = 0x80047013
++ RTC_WIE_OFF = 0x7010
++ RTC_WIE_ON = 0x700f
++ RTC_WKALM_RD = 0x80287010
++ RTC_WKALM_SET = 0x4028700f
++ SCM_TIMESTAMPING = 0x25
++ SCM_TIMESTAMPING_OPT_STATS = 0x36
++ SCM_TIMESTAMPING_PKTINFO = 0x3a
++ SCM_TIMESTAMPNS = 0x23
++ SCM_TXTIME = 0x3d
++ SCM_WIFI_STATUS = 0x29
++ SFD_CLOEXEC = 0x80000
++ SFD_NONBLOCK = 0x800
++ SIOCATMARK = 0x8905
++ SIOCGPGRP = 0x8904
++ SIOCGSTAMPNS_NEW = 0x80108907
++ SIOCGSTAMP_NEW = 0x80108906
++ SIOCINQ = 0x541b
++ SIOCOUTQ = 0x5411
++ SIOCSPGRP = 0x8902
++ SOCK_CLOEXEC = 0x80000
++ SOCK_DGRAM = 0x2
++ SOCK_NONBLOCK = 0x800
++ SOCK_STREAM = 0x1
++ SOL_SOCKET = 0x1
++ SO_ACCEPTCONN = 0x1e
++ SO_ATTACH_BPF = 0x32
++ SO_ATTACH_REUSEPORT_CBPF = 0x33
++ SO_ATTACH_REUSEPORT_EBPF = 0x34
++ SO_BINDTODEVICE = 0x19
++ SO_BINDTOIFINDEX = 0x3e
++ SO_BPF_EXTENSIONS = 0x30
++ SO_BROADCAST = 0x6
++ SO_BSDCOMPAT = 0xe
++ SO_BUSY_POLL = 0x2e
++ SO_CNX_ADVICE = 0x35
++ SO_COOKIE = 0x39
++ SO_DETACH_REUSEPORT_BPF = 0x44
++ SO_DOMAIN = 0x27
++ SO_DONTROUTE = 0x5
++ SO_ERROR = 0x4
++ SO_INCOMING_CPU = 0x31
++ SO_INCOMING_NAPI_ID = 0x38
++ SO_KEEPALIVE = 0x9
++ SO_LINGER = 0xd
++ SO_LOCK_FILTER = 0x2c
++ SO_MARK = 0x24
++ SO_MAX_PACING_RATE = 0x2f
++ SO_MEMINFO = 0x37
++ SO_NOFCS = 0x2b
++ SO_OOBINLINE = 0xa
++ SO_PASSCRED = 0x10
++ SO_PASSSEC = 0x22
++ SO_PEEK_OFF = 0x2a
++ SO_PEERCRED = 0x11
++ SO_PEERGROUPS = 0x3b
++ SO_PEERSEC = 0x1f
++ SO_PROTOCOL = 0x26
++ SO_RCVBUF = 0x8
++ SO_RCVBUFFORCE = 0x21
++ SO_RCVLOWAT = 0x12
++ SO_RCVTIMEO = 0x14
++ SO_RCVTIMEO_NEW = 0x42
++ SO_RCVTIMEO_OLD = 0x14
++ SO_REUSEADDR = 0x2
++ SO_REUSEPORT = 0xf
++ SO_RXQ_OVFL = 0x28
++ SO_SECURITY_AUTHENTICATION = 0x16
++ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
++ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
++ SO_SELECT_ERR_QUEUE = 0x2d
++ SO_SNDBUF = 0x7
++ SO_SNDBUFFORCE = 0x20
++ SO_SNDLOWAT = 0x13
++ SO_SNDTIMEO = 0x15
++ SO_SNDTIMEO_NEW = 0x43
++ SO_SNDTIMEO_OLD = 0x15
++ SO_TIMESTAMPING = 0x25
++ SO_TIMESTAMPING_NEW = 0x41
++ SO_TIMESTAMPING_OLD = 0x25
++ SO_TIMESTAMPNS = 0x23
++ SO_TIMESTAMPNS_NEW = 0x40
++ SO_TIMESTAMPNS_OLD = 0x23
++ SO_TIMESTAMP_NEW = 0x3f
++ SO_TXTIME = 0x3d
++ SO_TYPE = 0x3
++ SO_WIFI_STATUS = 0x29
++ SO_ZEROCOPY = 0x3c
++ TAB1 = 0x800
++ TAB2 = 0x1000
++ TAB3 = 0x1800
++ TABDLY = 0x1800
++ TCFLSH = 0x540b
++ TCGETA = 0x5405
++ TCGETS = 0x5401
++ TCGETS2 = 0x802c542a
++ TCGETX = 0x5432
++ TCSAFLUSH = 0x2
++ TCSBRK = 0x5409
++ TCSBRKP = 0x5425
++ TCSETA = 0x5406
++ TCSETAF = 0x5408
++ TCSETAW = 0x5407
++ TCSETS = 0x5402
++ TCSETS2 = 0x402c542b
++ TCSETSF = 0x5404
++ TCSETSF2 = 0x402c542d
++ TCSETSW = 0x5403
++ TCSETSW2 = 0x402c542c
++ TCSETX = 0x5433
++ TCSETXF = 0x5434
++ TCSETXW = 0x5435
++ TCXONC = 0x540a
++ TIOCCBRK = 0x5428
++ TIOCCONS = 0x541d
++ TIOCEXCL = 0x540c
++ TIOCGDEV = 0x80045432
++ TIOCGETD = 0x5424
++ TIOCGEXCL = 0x80045440
++ TIOCGICOUNT = 0x545d
++ TIOCGISO7816 = 0x80285442
++ TIOCGLCKTRMIOS = 0x5456
++ TIOCGPGRP = 0x540f
++ TIOCGPKT = 0x80045438
++ TIOCGPTLCK = 0x80045439
++ TIOCGPTN = 0x80045430
++ TIOCGPTPEER = 0x5441
++ TIOCGRS485 = 0x542e
++ TIOCGSERIAL = 0x541e
++ TIOCGSID = 0x5429
++ TIOCGSOFTCAR = 0x5419
++ TIOCGWINSZ = 0x5413
++ TIOCINQ = 0x541b
++ TIOCLINUX = 0x541c
++ TIOCMBIC = 0x5417
++ TIOCMBIS = 0x5416
++ TIOCMGET = 0x5415
++ TIOCMIWAIT = 0x545c
++ TIOCMSET = 0x5418
++ TIOCM_CAR = 0x40
++ TIOCM_CD = 0x40
++ TIOCM_CTS = 0x20
++ TIOCM_DSR = 0x100
++ TIOCM_RI = 0x80
++ TIOCM_RNG = 0x80
++ TIOCM_SR = 0x10
++ TIOCM_ST = 0x8
++ TIOCNOTTY = 0x5422
++ TIOCNXCL = 0x540d
++ TIOCOUTQ = 0x5411
++ TIOCPKT = 0x5420
++ TIOCSBRK = 0x5427
++ TIOCSCTTY = 0x540e
++ TIOCSERCONFIG = 0x5453
++ TIOCSERGETLSR = 0x5459
++ TIOCSERGETMULTI = 0x545a
++ TIOCSERGSTRUCT = 0x5458
++ TIOCSERGWILD = 0x5454
++ TIOCSERSETMULTI = 0x545b
++ TIOCSERSWILD = 0x5455
++ TIOCSER_TEMT = 0x1
++ TIOCSETD = 0x5423
++ TIOCSIG = 0x40045436
++ TIOCSISO7816 = 0xc0285443
++ TIOCSLCKTRMIOS = 0x5457
++ TIOCSPGRP = 0x5410
++ TIOCSPTLCK = 0x40045431
++ TIOCSRS485 = 0x542f
++ TIOCSSERIAL = 0x541f
++ TIOCSSOFTCAR = 0x541a
++ TIOCSTI = 0x5412
++ TIOCSWINSZ = 0x5414
++ TIOCVHANGUP = 0x5437
++ TOSTOP = 0x100
++ TUNATTACHFILTER = 0x401054d5
++ TUNDETACHFILTER = 0x401054d6
++ TUNGETDEVNETNS = 0x54e3
++ TUNGETFEATURES = 0x800454cf
++ TUNGETFILTER = 0x801054db
++ TUNGETIFF = 0x800454d2
++ TUNGETSNDBUF = 0x800454d3
++ TUNGETVNETBE = 0x800454df
++ TUNGETVNETHDRSZ = 0x800454d7
++ TUNGETVNETLE = 0x800454dd
++ TUNSETCARRIER = 0x400454e2
++ TUNSETDEBUG = 0x400454c9
++ TUNSETFILTEREBPF = 0x800454e1
++ TUNSETGROUP = 0x400454ce
++ TUNSETIFF = 0x400454ca
++ TUNSETIFINDEX = 0x400454da
++ TUNSETLINK = 0x400454cd
++ TUNSETNOCSUM = 0x400454c8
++ TUNSETOFFLOAD = 0x400454d0
++ TUNSETOWNER = 0x400454cc
++ TUNSETPERSIST = 0x400454cb
++ TUNSETQUEUE = 0x400454d9
++ TUNSETSNDBUF = 0x400454d4
++ TUNSETSTEERINGEBPF = 0x800454e0
++ TUNSETTXFILTER = 0x400454d1
++ TUNSETVNETBE = 0x400454de
++ TUNSETVNETHDRSZ = 0x400454d8
++ TUNSETVNETLE = 0x400454dc
++ UBI_IOCATT = 0x40186f40
++ UBI_IOCDET = 0x40046f41
++ UBI_IOCEBCH = 0x40044f02
++ UBI_IOCEBER = 0x40044f01
++ UBI_IOCEBISMAP = 0x80044f05
++ UBI_IOCEBMAP = 0x40084f03
++ UBI_IOCEBUNMAP = 0x40044f04
++ UBI_IOCMKVOL = 0x40986f00
++ UBI_IOCRMVOL = 0x40046f01
++ UBI_IOCRNVOL = 0x51106f03
++ UBI_IOCRPEB = 0x40046f04
++ UBI_IOCRSVOL = 0x400c6f02
++ UBI_IOCSETVOLPROP = 0x40104f06
++ UBI_IOCSPEB = 0x40046f05
++ UBI_IOCVOLCRBLK = 0x40804f07
++ UBI_IOCVOLRMBLK = 0x4f08
++ UBI_IOCVOLUP = 0x40084f00
++ VDISCARD = 0xd
++ VEOF = 0x4
++ VEOL = 0xb
++ VEOL2 = 0x10
++ VMIN = 0x6
++ VREPRINT = 0xc
++ VSTART = 0x8
++ VSTOP = 0x9
++ VSUSP = 0xa
++ VSWTC = 0x7
++ VT1 = 0x4000
++ VTDLY = 0x4000
++ VTIME = 0x5
++ VWERASE = 0xe
++ WDIOC_GETBOOTSTATUS = 0x80045702
++ WDIOC_GETPRETIMEOUT = 0x80045709
++ WDIOC_GETSTATUS = 0x80045701
++ WDIOC_GETSUPPORT = 0x80285700
++ WDIOC_GETTEMP = 0x80045703
++ WDIOC_GETTIMELEFT = 0x8004570a
++ WDIOC_GETTIMEOUT = 0x80045707
++ WDIOC_KEEPALIVE = 0x80045705
++ WDIOC_SETOPTIONS = 0x80045704
++ WORDSIZE = 0x40
++ XCASE = 0x4
++ XTABS = 0x1800
+ )
+
+ // Errors
+ const (
+- E2BIG = syscall.Errno(0x7)
+- EACCES = syscall.Errno(0xd)
+ EADDRINUSE = syscall.Errno(0x62)
+ EADDRNOTAVAIL = syscall.Errno(0x63)
+ EADV = syscall.Errno(0x44)
+ EAFNOSUPPORT = syscall.Errno(0x61)
+- EAGAIN = syscall.Errno(0xb)
+ EALREADY = syscall.Errno(0x72)
+ EBADE = syscall.Errno(0x34)
+- EBADF = syscall.Errno(0x9)
+ EBADFD = syscall.Errno(0x4d)
+ EBADMSG = syscall.Errno(0x4a)
+ EBADR = syscall.Errno(0x35)
+ EBADRQC = syscall.Errno(0x38)
+ EBADSLT = syscall.Errno(0x39)
+ EBFONT = syscall.Errno(0x3b)
+- EBUSY = syscall.Errno(0x10)
+ ECANCELED = syscall.Errno(0x7d)
+- ECHILD = syscall.Errno(0xa)
+ ECHRNG = syscall.Errno(0x2c)
+ ECOMM = syscall.Errno(0x46)
+ ECONNABORTED = syscall.Errno(0x67)
+@@ -1882,23 +500,15 @@ const (
+ EDEADLK = syscall.Errno(0x23)
+ EDEADLOCK = syscall.Errno(0x23)
+ EDESTADDRREQ = syscall.Errno(0x59)
+- EDOM = syscall.Errno(0x21)
+ EDOTDOT = syscall.Errno(0x49)
+ EDQUOT = syscall.Errno(0x7a)
+- EEXIST = syscall.Errno(0x11)
+- EFAULT = syscall.Errno(0xe)
+- EFBIG = syscall.Errno(0x1b)
+ EHOSTDOWN = syscall.Errno(0x70)
+ EHOSTUNREACH = syscall.Errno(0x71)
+ EHWPOISON = syscall.Errno(0x85)
+ EIDRM = syscall.Errno(0x2b)
+ EILSEQ = syscall.Errno(0x54)
+ EINPROGRESS = syscall.Errno(0x73)
+- EINTR = syscall.Errno(0x4)
+- EINVAL = syscall.Errno(0x16)
+- EIO = syscall.Errno(0x5)
+ EISCONN = syscall.Errno(0x6a)
+- EISDIR = syscall.Errno(0x15)
+ EISNAM = syscall.Errno(0x78)
+ EKEYEXPIRED = syscall.Errno(0x7f)
+ EKEYREJECTED = syscall.Errno(0x81)
+@@ -1915,8 +525,6 @@ const (
+ ELNRNG = syscall.Errno(0x30)
+ ELOOP = syscall.Errno(0x28)
+ EMEDIUMTYPE = syscall.Errno(0x7c)
+- EMFILE = syscall.Errno(0x18)
+- EMLINK = syscall.Errno(0x1f)
+ EMSGSIZE = syscall.Errno(0x5a)
+ EMULTIHOP = syscall.Errno(0x48)
+ ENAMETOOLONG = syscall.Errno(0x24)
+@@ -1924,103 +532,70 @@ const (
+ ENETDOWN = syscall.Errno(0x64)
+ ENETRESET = syscall.Errno(0x66)
+ ENETUNREACH = syscall.Errno(0x65)
+- ENFILE = syscall.Errno(0x17)
+ ENOANO = syscall.Errno(0x37)
+ ENOBUFS = syscall.Errno(0x69)
+ ENOCSI = syscall.Errno(0x32)
+ ENODATA = syscall.Errno(0x3d)
+- ENODEV = syscall.Errno(0x13)
+- ENOENT = syscall.Errno(0x2)
+- ENOEXEC = syscall.Errno(0x8)
+ ENOKEY = syscall.Errno(0x7e)
+ ENOLCK = syscall.Errno(0x25)
+ ENOLINK = syscall.Errno(0x43)
+ ENOMEDIUM = syscall.Errno(0x7b)
+- ENOMEM = syscall.Errno(0xc)
+ ENOMSG = syscall.Errno(0x2a)
+ ENONET = syscall.Errno(0x40)
+ ENOPKG = syscall.Errno(0x41)
+ ENOPROTOOPT = syscall.Errno(0x5c)
+- ENOSPC = syscall.Errno(0x1c)
+ ENOSR = syscall.Errno(0x3f)
+ ENOSTR = syscall.Errno(0x3c)
+ ENOSYS = syscall.Errno(0x26)
+- ENOTBLK = syscall.Errno(0xf)
+ ENOTCONN = syscall.Errno(0x6b)
+- ENOTDIR = syscall.Errno(0x14)
+ ENOTEMPTY = syscall.Errno(0x27)
+ ENOTNAM = syscall.Errno(0x76)
+ ENOTRECOVERABLE = syscall.Errno(0x83)
+ ENOTSOCK = syscall.Errno(0x58)
+ ENOTSUP = syscall.Errno(0x5f)
+- ENOTTY = syscall.Errno(0x19)
+ ENOTUNIQ = syscall.Errno(0x4c)
+- ENXIO = syscall.Errno(0x6)
+ EOPNOTSUPP = syscall.Errno(0x5f)
+ EOVERFLOW = syscall.Errno(0x4b)
+ EOWNERDEAD = syscall.Errno(0x82)
+- EPERM = syscall.Errno(0x1)
+ EPFNOSUPPORT = syscall.Errno(0x60)
+- EPIPE = syscall.Errno(0x20)
+ EPROTO = syscall.Errno(0x47)
+ EPROTONOSUPPORT = syscall.Errno(0x5d)
+ EPROTOTYPE = syscall.Errno(0x5b)
+- ERANGE = syscall.Errno(0x22)
+ EREMCHG = syscall.Errno(0x4e)
+ EREMOTE = syscall.Errno(0x42)
+ EREMOTEIO = syscall.Errno(0x79)
+ ERESTART = syscall.Errno(0x55)
+ ERFKILL = syscall.Errno(0x84)
+- EROFS = syscall.Errno(0x1e)
+ ESHUTDOWN = syscall.Errno(0x6c)
+ ESOCKTNOSUPPORT = syscall.Errno(0x5e)
+- ESPIPE = syscall.Errno(0x1d)
+- ESRCH = syscall.Errno(0x3)
+ ESRMNT = syscall.Errno(0x45)
+ ESTALE = syscall.Errno(0x74)
+ ESTRPIPE = syscall.Errno(0x56)
+ ETIME = syscall.Errno(0x3e)
+ ETIMEDOUT = syscall.Errno(0x6e)
+ ETOOMANYREFS = syscall.Errno(0x6d)
+- ETXTBSY = syscall.Errno(0x1a)
+ EUCLEAN = syscall.Errno(0x75)
+ EUNATCH = syscall.Errno(0x31)
+ EUSERS = syscall.Errno(0x57)
+- EWOULDBLOCK = syscall.Errno(0xb)
+- EXDEV = syscall.Errno(0x12)
+ EXFULL = syscall.Errno(0x36)
+ )
+
+ // Signals
+ const (
+- SIGABRT = syscall.Signal(0x6)
+- SIGALRM = syscall.Signal(0xe)
+ SIGBUS = syscall.Signal(0x7)
+ SIGCHLD = syscall.Signal(0x11)
+ SIGCLD = syscall.Signal(0x11)
+ SIGCONT = syscall.Signal(0x12)
+- SIGFPE = syscall.Signal(0x8)
+- SIGHUP = syscall.Signal(0x1)
+- SIGILL = syscall.Signal(0x4)
+- SIGINT = syscall.Signal(0x2)
+ SIGIO = syscall.Signal(0x1d)
+- SIGIOT = syscall.Signal(0x6)
+- SIGKILL = syscall.Signal(0x9)
+- SIGPIPE = syscall.Signal(0xd)
+ SIGPOLL = syscall.Signal(0x1d)
+ SIGPROF = syscall.Signal(0x1b)
+ SIGPWR = syscall.Signal(0x1e)
+- SIGQUIT = syscall.Signal(0x3)
+- SIGSEGV = syscall.Signal(0xb)
+ SIGSTKFLT = syscall.Signal(0x10)
+ SIGSTOP = syscall.Signal(0x13)
+ SIGSYS = syscall.Signal(0x1f)
+- SIGTERM = syscall.Signal(0xf)
+- SIGTRAP = syscall.Signal(0x5)
+ SIGTSTP = syscall.Signal(0x14)
+ SIGTTIN = syscall.Signal(0x15)
+ SIGTTOU = syscall.Signal(0x16)
+- SIGUNUSED = syscall.Signal(0x1f)
+ SIGURG = syscall.Signal(0x17)
+ SIGUSR1 = syscall.Signal(0xa)
+ SIGUSR2 = syscall.Signal(0xc)
+@@ -2031,171 +606,179 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "no such device or address",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource temporarily unavailable",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device or resource busy",
+- 17: "file exists",
+- 18: "invalid cross-device link",
+- 19: "no such device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "numerical result out of range",
+- 35: "resource deadlock avoided",
+- 36: "file name too long",
+- 37: "no locks available",
+- 38: "function not implemented",
+- 39: "directory not empty",
+- 40: "too many levels of symbolic links",
+- 42: "no message of desired type",
+- 43: "identifier removed",
+- 44: "channel number out of range",
+- 45: "level 2 not synchronized",
+- 46: "level 3 halted",
+- 47: "level 3 reset",
+- 48: "link number out of range",
+- 49: "protocol driver not attached",
+- 50: "no CSI structure available",
+- 51: "level 2 halted",
+- 52: "invalid exchange",
+- 53: "invalid request descriptor",
+- 54: "exchange full",
+- 55: "no anode",
+- 56: "invalid request code",
+- 57: "invalid slot",
+- 59: "bad font file format",
+- 60: "device not a stream",
+- 61: "no data available",
+- 62: "timer expired",
+- 63: "out of streams resources",
+- 64: "machine is not on the network",
+- 65: "package not installed",
+- 66: "object is remote",
+- 67: "link has been severed",
+- 68: "advertise error",
+- 69: "srmount error",
+- 70: "communication error on send",
+- 71: "protocol error",
+- 72: "multihop attempted",
+- 73: "RFS specific error",
+- 74: "bad message",
+- 75: "value too large for defined data type",
+- 76: "name not unique on network",
+- 77: "file descriptor in bad state",
+- 78: "remote address changed",
+- 79: "can not access a needed shared library",
+- 80: "accessing a corrupted shared library",
+- 81: ".lib section in a.out corrupted",
+- 82: "attempting to link in too many shared libraries",
+- 83: "cannot exec a shared library directly",
+- 84: "invalid or incomplete multibyte or wide character",
+- 85: "interrupted system call should be restarted",
+- 86: "streams pipe error",
+- 87: "too many users",
+- 88: "socket operation on non-socket",
+- 89: "destination address required",
+- 90: "message too long",
+- 91: "protocol wrong type for socket",
+- 92: "protocol not available",
+- 93: "protocol not supported",
+- 94: "socket type not supported",
+- 95: "operation not supported",
+- 96: "protocol family not supported",
+- 97: "address family not supported by protocol",
+- 98: "address already in use",
+- 99: "cannot assign requested address",
+- 100: "network is down",
+- 101: "network is unreachable",
+- 102: "network dropped connection on reset",
+- 103: "software caused connection abort",
+- 104: "connection reset by peer",
+- 105: "no buffer space available",
+- 106: "transport endpoint is already connected",
+- 107: "transport endpoint is not connected",
+- 108: "cannot send after transport endpoint shutdown",
+- 109: "too many references: cannot splice",
+- 110: "connection timed out",
+- 111: "connection refused",
+- 112: "host is down",
+- 113: "no route to host",
+- 114: "operation already in progress",
+- 115: "operation now in progress",
+- 116: "stale file handle",
+- 117: "structure needs cleaning",
+- 118: "not a XENIX named type file",
+- 119: "no XENIX semaphores available",
+- 120: "is a named type file",
+- 121: "remote I/O error",
+- 122: "disk quota exceeded",
+- 123: "no medium found",
+- 124: "wrong medium type",
+- 125: "operation canceled",
+- 126: "required key not available",
+- 127: "key has expired",
+- 128: "key has been revoked",
+- 129: "key was rejected by service",
+- 130: "owner died",
+- 131: "state not recoverable",
+- 132: "operation not possible due to RF-kill",
+- 133: "memory page has hardware error",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "no such device or address"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EAGAIN", "resource temporarily unavailable"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device or resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "invalid cross-device link"},
++ {19, "ENODEV", "no such device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "numerical result out of range"},
++ {35, "EDEADLK", "resource deadlock avoided"},
++ {36, "ENAMETOOLONG", "file name too long"},
++ {37, "ENOLCK", "no locks available"},
++ {38, "ENOSYS", "function not implemented"},
++ {39, "ENOTEMPTY", "directory not empty"},
++ {40, "ELOOP", "too many levels of symbolic links"},
++ {42, "ENOMSG", "no message of desired type"},
++ {43, "EIDRM", "identifier removed"},
++ {44, "ECHRNG", "channel number out of range"},
++ {45, "EL2NSYNC", "level 2 not synchronized"},
++ {46, "EL3HLT", "level 3 halted"},
++ {47, "EL3RST", "level 3 reset"},
++ {48, "ELNRNG", "link number out of range"},
++ {49, "EUNATCH", "protocol driver not attached"},
++ {50, "ENOCSI", "no CSI structure available"},
++ {51, "EL2HLT", "level 2 halted"},
++ {52, "EBADE", "invalid exchange"},
++ {53, "EBADR", "invalid request descriptor"},
++ {54, "EXFULL", "exchange full"},
++ {55, "ENOANO", "no anode"},
++ {56, "EBADRQC", "invalid request code"},
++ {57, "EBADSLT", "invalid slot"},
++ {59, "EBFONT", "bad font file format"},
++ {60, "ENOSTR", "device not a stream"},
++ {61, "ENODATA", "no data available"},
++ {62, "ETIME", "timer expired"},
++ {63, "ENOSR", "out of streams resources"},
++ {64, "ENONET", "machine is not on the network"},
++ {65, "ENOPKG", "package not installed"},
++ {66, "EREMOTE", "object is remote"},
++ {67, "ENOLINK", "link has been severed"},
++ {68, "EADV", "advertise error"},
++ {69, "ESRMNT", "srmount error"},
++ {70, "ECOMM", "communication error on send"},
++ {71, "EPROTO", "protocol error"},
++ {72, "EMULTIHOP", "multihop attempted"},
++ {73, "EDOTDOT", "RFS specific error"},
++ {74, "EBADMSG", "bad message"},
++ {75, "EOVERFLOW", "value too large for defined data type"},
++ {76, "ENOTUNIQ", "name not unique on network"},
++ {77, "EBADFD", "file descriptor in bad state"},
++ {78, "EREMCHG", "remote address changed"},
++ {79, "ELIBACC", "can not access a needed shared library"},
++ {80, "ELIBBAD", "accessing a corrupted shared library"},
++ {81, "ELIBSCN", ".lib section in a.out corrupted"},
++ {82, "ELIBMAX", "attempting to link in too many shared libraries"},
++ {83, "ELIBEXEC", "cannot exec a shared library directly"},
++ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"},
++ {85, "ERESTART", "interrupted system call should be restarted"},
++ {86, "ESTRPIPE", "streams pipe error"},
++ {87, "EUSERS", "too many users"},
++ {88, "ENOTSOCK", "socket operation on non-socket"},
++ {89, "EDESTADDRREQ", "destination address required"},
++ {90, "EMSGSIZE", "message too long"},
++ {91, "EPROTOTYPE", "protocol wrong type for socket"},
++ {92, "ENOPROTOOPT", "protocol not available"},
++ {93, "EPROTONOSUPPORT", "protocol not supported"},
++ {94, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {95, "ENOTSUP", "operation not supported"},
++ {96, "EPFNOSUPPORT", "protocol family not supported"},
++ {97, "EAFNOSUPPORT", "address family not supported by protocol"},
++ {98, "EADDRINUSE", "address already in use"},
++ {99, "EADDRNOTAVAIL", "cannot assign requested address"},
++ {100, "ENETDOWN", "network is down"},
++ {101, "ENETUNREACH", "network is unreachable"},
++ {102, "ENETRESET", "network dropped connection on reset"},
++ {103, "ECONNABORTED", "software caused connection abort"},
++ {104, "ECONNRESET", "connection reset by peer"},
++ {105, "ENOBUFS", "no buffer space available"},
++ {106, "EISCONN", "transport endpoint is already connected"},
++ {107, "ENOTCONN", "transport endpoint is not connected"},
++ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
++ {109, "ETOOMANYREFS", "too many references: cannot splice"},
++ {110, "ETIMEDOUT", "connection timed out"},
++ {111, "ECONNREFUSED", "connection refused"},
++ {112, "EHOSTDOWN", "host is down"},
++ {113, "EHOSTUNREACH", "no route to host"},
++ {114, "EALREADY", "operation already in progress"},
++ {115, "EINPROGRESS", "operation now in progress"},
++ {116, "ESTALE", "stale file handle"},
++ {117, "EUCLEAN", "structure needs cleaning"},
++ {118, "ENOTNAM", "not a XENIX named type file"},
++ {119, "ENAVAIL", "no XENIX semaphores available"},
++ {120, "EISNAM", "is a named type file"},
++ {121, "EREMOTEIO", "remote I/O error"},
++ {122, "EDQUOT", "disk quota exceeded"},
++ {123, "ENOMEDIUM", "no medium found"},
++ {124, "EMEDIUMTYPE", "wrong medium type"},
++ {125, "ECANCELED", "operation canceled"},
++ {126, "ENOKEY", "required key not available"},
++ {127, "EKEYEXPIRED", "key has expired"},
++ {128, "EKEYREVOKED", "key has been revoked"},
++ {129, "EKEYREJECTED", "key was rejected by service"},
++ {130, "EOWNERDEAD", "owner died"},
++ {131, "ENOTRECOVERABLE", "state not recoverable"},
++ {132, "ERFKILL", "operation not possible due to RF-kill"},
++ {133, "EHWPOISON", "memory page has hardware error"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/breakpoint trap",
+- 6: "aborted",
+- 7: "bus error",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "user defined signal 1",
+- 11: "segmentation fault",
+- 12: "user defined signal 2",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "stack fault",
+- 17: "child exited",
+- 18: "continued",
+- 19: "stopped (signal)",
+- 20: "stopped",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "urgent I/O condition",
+- 24: "CPU time limit exceeded",
+- 25: "file size limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window changed",
+- 29: "I/O possible",
+- 30: "power failure",
+- 31: "bad system call",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/breakpoint trap"},
++ {6, "SIGABRT", "aborted"},
++ {7, "SIGBUS", "bus error"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGUSR1", "user defined signal 1"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGUSR2", "user defined signal 2"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGSTKFLT", "stack fault"},
++ {17, "SIGCHLD", "child exited"},
++ {18, "SIGCONT", "continued"},
++ {19, "SIGSTOP", "stopped (signal)"},
++ {20, "SIGTSTP", "stopped"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGURG", "urgent I/O condition"},
++ {24, "SIGXCPU", "CPU time limit exceeded"},
++ {25, "SIGXFSZ", "file size limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window changed"},
++ {29, "SIGIO", "I/O possible"},
++ {30, "SIGPWR", "power failure"},
++ {31, "SIGSYS", "bad system call"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go b/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go
+index 1adff0b2..0541f36e 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go
+@@ -3,7 +3,7 @@
+
+ // +build arm,linux
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
+
+ package unix
+@@ -11,1873 +11,493 @@ package unix
+ import "syscall"
+
+ const (
+- AF_ALG = 0x26
+- AF_APPLETALK = 0x5
+- AF_ASH = 0x12
+- AF_ATMPVC = 0x8
+- AF_ATMSVC = 0x14
+- AF_AX25 = 0x3
+- AF_BLUETOOTH = 0x1f
+- AF_BRIDGE = 0x7
+- AF_CAIF = 0x25
+- AF_CAN = 0x1d
+- AF_DECnet = 0xc
+- AF_ECONET = 0x13
+- AF_FILE = 0x1
+- AF_IB = 0x1b
+- AF_IEEE802154 = 0x24
+- AF_INET = 0x2
+- AF_INET6 = 0xa
+- AF_IPX = 0x4
+- AF_IRDA = 0x17
+- AF_ISDN = 0x22
+- AF_IUCV = 0x20
+- AF_KCM = 0x29
+- AF_KEY = 0xf
+- AF_LLC = 0x1a
+- AF_LOCAL = 0x1
+- AF_MAX = 0x2b
+- AF_MPLS = 0x1c
+- AF_NETBEUI = 0xd
+- AF_NETLINK = 0x10
+- AF_NETROM = 0x6
+- AF_NFC = 0x27
+- AF_PACKET = 0x11
+- AF_PHONET = 0x23
+- AF_PPPOX = 0x18
+- AF_QIPCRTR = 0x2a
+- AF_RDS = 0x15
+- AF_ROSE = 0xb
+- AF_ROUTE = 0x10
+- AF_RXRPC = 0x21
+- AF_SECURITY = 0xe
+- AF_SNA = 0x16
+- AF_TIPC = 0x1e
+- AF_UNIX = 0x1
+- AF_UNSPEC = 0x0
+- AF_VSOCK = 0x28
+- AF_WANPIPE = 0x19
+- AF_X25 = 0x9
+- ALG_OP_DECRYPT = 0x0
+- ALG_OP_ENCRYPT = 0x1
+- ALG_SET_AEAD_ASSOCLEN = 0x4
+- ALG_SET_AEAD_AUTHSIZE = 0x5
+- ALG_SET_IV = 0x2
+- ALG_SET_KEY = 0x1
+- ALG_SET_OP = 0x3
+- ARPHRD_6LOWPAN = 0x339
+- ARPHRD_ADAPT = 0x108
+- ARPHRD_APPLETLK = 0x8
+- ARPHRD_ARCNET = 0x7
+- ARPHRD_ASH = 0x30d
+- ARPHRD_ATM = 0x13
+- ARPHRD_AX25 = 0x3
+- ARPHRD_BIF = 0x307
+- ARPHRD_CAIF = 0x336
+- ARPHRD_CAN = 0x118
+- ARPHRD_CHAOS = 0x5
+- ARPHRD_CISCO = 0x201
+- ARPHRD_CSLIP = 0x101
+- ARPHRD_CSLIP6 = 0x103
+- ARPHRD_DDCMP = 0x205
+- ARPHRD_DLCI = 0xf
+- ARPHRD_ECONET = 0x30e
+- ARPHRD_EETHER = 0x2
+- ARPHRD_ETHER = 0x1
+- ARPHRD_EUI64 = 0x1b
+- ARPHRD_FCAL = 0x311
+- ARPHRD_FCFABRIC = 0x313
+- ARPHRD_FCPL = 0x312
+- ARPHRD_FCPP = 0x310
+- ARPHRD_FDDI = 0x306
+- ARPHRD_FRAD = 0x302
+- ARPHRD_HDLC = 0x201
+- ARPHRD_HIPPI = 0x30c
+- ARPHRD_HWX25 = 0x110
+- ARPHRD_IEEE1394 = 0x18
+- ARPHRD_IEEE802 = 0x6
+- ARPHRD_IEEE80211 = 0x321
+- ARPHRD_IEEE80211_PRISM = 0x322
+- ARPHRD_IEEE80211_RADIOTAP = 0x323
+- ARPHRD_IEEE802154 = 0x324
+- ARPHRD_IEEE802154_MONITOR = 0x325
+- ARPHRD_IEEE802_TR = 0x320
+- ARPHRD_INFINIBAND = 0x20
+- ARPHRD_IP6GRE = 0x337
+- ARPHRD_IPDDP = 0x309
+- ARPHRD_IPGRE = 0x30a
+- ARPHRD_IRDA = 0x30f
+- ARPHRD_LAPB = 0x204
+- ARPHRD_LOCALTLK = 0x305
+- ARPHRD_LOOPBACK = 0x304
+- ARPHRD_METRICOM = 0x17
+- ARPHRD_NETLINK = 0x338
+- ARPHRD_NETROM = 0x0
+- ARPHRD_NONE = 0xfffe
+- ARPHRD_PHONET = 0x334
+- ARPHRD_PHONET_PIPE = 0x335
+- ARPHRD_PIMREG = 0x30b
+- ARPHRD_PPP = 0x200
+- ARPHRD_PRONET = 0x4
+- ARPHRD_RAWHDLC = 0x206
+- ARPHRD_ROSE = 0x10e
+- ARPHRD_RSRVD = 0x104
+- ARPHRD_SIT = 0x308
+- ARPHRD_SKIP = 0x303
+- ARPHRD_SLIP = 0x100
+- ARPHRD_SLIP6 = 0x102
+- ARPHRD_TUNNEL = 0x300
+- ARPHRD_TUNNEL6 = 0x301
+- ARPHRD_VOID = 0xffff
+- ARPHRD_X25 = 0x10f
+- B0 = 0x0
+- B1000000 = 0x1008
+- B110 = 0x3
+- B115200 = 0x1002
+- B1152000 = 0x1009
+- B1200 = 0x9
+- B134 = 0x4
+- B150 = 0x5
+- B1500000 = 0x100a
+- B1800 = 0xa
+- B19200 = 0xe
+- B200 = 0x6
+- B2000000 = 0x100b
+- B230400 = 0x1003
+- B2400 = 0xb
+- B2500000 = 0x100c
+- B300 = 0x7
+- B3000000 = 0x100d
+- B3500000 = 0x100e
+- B38400 = 0xf
+- B4000000 = 0x100f
+- B460800 = 0x1004
+- B4800 = 0xc
+- B50 = 0x1
+- B500000 = 0x1005
+- B57600 = 0x1001
+- B576000 = 0x1006
+- B600 = 0x8
+- B75 = 0x2
+- B921600 = 0x1007
+- B9600 = 0xd
+- BLKBSZGET = 0x80041270
+- BLKBSZSET = 0x40041271
+- BLKFLSBUF = 0x1261
+- BLKFRAGET = 0x1265
+- BLKFRASET = 0x1264
+- BLKGETSIZE = 0x1260
+- BLKGETSIZE64 = 0x80041272
+- BLKPBSZGET = 0x127b
+- BLKRAGET = 0x1263
+- BLKRASET = 0x1262
+- BLKROGET = 0x125e
+- BLKROSET = 0x125d
+- BLKRRPART = 0x125f
+- BLKSECTGET = 0x1267
+- BLKSECTSET = 0x1266
+- BLKSSZGET = 0x1268
+- BOTHER = 0x1000
+- BPF_A = 0x10
+- BPF_ABS = 0x20
+- BPF_ADD = 0x0
+- BPF_ALU = 0x4
+- BPF_AND = 0x50
+- BPF_B = 0x10
+- BPF_DIV = 0x30
+- BPF_H = 0x8
+- BPF_IMM = 0x0
+- BPF_IND = 0x40
+- BPF_JA = 0x0
+- BPF_JEQ = 0x10
+- BPF_JGE = 0x30
+- BPF_JGT = 0x20
+- BPF_JMP = 0x5
+- BPF_JSET = 0x40
+- BPF_K = 0x0
+- BPF_LD = 0x0
+- BPF_LDX = 0x1
+- BPF_LEN = 0x80
+- BPF_LL_OFF = -0x200000
+- BPF_LSH = 0x60
+- BPF_MAJOR_VERSION = 0x1
+- BPF_MAXINSNS = 0x1000
+- BPF_MEM = 0x60
+- BPF_MEMWORDS = 0x10
+- BPF_MINOR_VERSION = 0x1
+- BPF_MISC = 0x7
+- BPF_MOD = 0x90
+- BPF_MSH = 0xa0
+- BPF_MUL = 0x20
+- BPF_NEG = 0x80
+- BPF_NET_OFF = -0x100000
+- BPF_OR = 0x40
+- BPF_RET = 0x6
+- BPF_RSH = 0x70
+- BPF_ST = 0x2
+- BPF_STX = 0x3
+- BPF_SUB = 0x10
+- BPF_TAX = 0x0
+- BPF_TXA = 0x80
+- BPF_W = 0x0
+- BPF_X = 0x8
+- BPF_XOR = 0xa0
+- BRKINT = 0x2
+- BS0 = 0x0
+- BS1 = 0x2000
+- BSDLY = 0x2000
+- CAN_BCM = 0x2
+- CAN_EFF_FLAG = 0x80000000
+- CAN_EFF_ID_BITS = 0x1d
+- CAN_EFF_MASK = 0x1fffffff
+- CAN_ERR_FLAG = 0x20000000
+- CAN_ERR_MASK = 0x1fffffff
+- CAN_INV_FILTER = 0x20000000
+- CAN_ISOTP = 0x6
+- CAN_MAX_DLC = 0x8
+- CAN_MAX_DLEN = 0x8
+- CAN_MCNET = 0x5
+- CAN_MTU = 0x10
+- CAN_NPROTO = 0x7
+- CAN_RAW = 0x1
+- CAN_RAW_FILTER_MAX = 0x200
+- CAN_RTR_FLAG = 0x40000000
+- CAN_SFF_ID_BITS = 0xb
+- CAN_SFF_MASK = 0x7ff
+- CAN_TP16 = 0x3
+- CAN_TP20 = 0x4
+- CBAUD = 0x100f
+- CBAUDEX = 0x1000
+- CFLUSH = 0xf
+- CIBAUD = 0x100f0000
+- CLOCAL = 0x800
+- CLOCK_BOOTTIME = 0x7
+- CLOCK_BOOTTIME_ALARM = 0x9
+- CLOCK_DEFAULT = 0x0
+- CLOCK_EXT = 0x1
+- CLOCK_INT = 0x2
+- CLOCK_MONOTONIC = 0x1
+- CLOCK_MONOTONIC_COARSE = 0x6
+- CLOCK_MONOTONIC_RAW = 0x4
+- CLOCK_PROCESS_CPUTIME_ID = 0x2
+- CLOCK_REALTIME = 0x0
+- CLOCK_REALTIME_ALARM = 0x8
+- CLOCK_REALTIME_COARSE = 0x5
+- CLOCK_TAI = 0xb
+- CLOCK_THREAD_CPUTIME_ID = 0x3
+- CLOCK_TXFROMRX = 0x4
+- CLOCK_TXINT = 0x3
+- CLONE_CHILD_CLEARTID = 0x200000
+- CLONE_CHILD_SETTID = 0x1000000
+- CLONE_DETACHED = 0x400000
+- CLONE_FILES = 0x400
+- CLONE_FS = 0x200
+- CLONE_IO = 0x80000000
+- CLONE_NEWCGROUP = 0x2000000
+- CLONE_NEWIPC = 0x8000000
+- CLONE_NEWNET = 0x40000000
+- CLONE_NEWNS = 0x20000
+- CLONE_NEWPID = 0x20000000
+- CLONE_NEWUSER = 0x10000000
+- CLONE_NEWUTS = 0x4000000
+- CLONE_PARENT = 0x8000
+- CLONE_PARENT_SETTID = 0x100000
+- CLONE_PTRACE = 0x2000
+- CLONE_SETTLS = 0x80000
+- CLONE_SIGHAND = 0x800
+- CLONE_SYSVSEM = 0x40000
+- CLONE_THREAD = 0x10000
+- CLONE_UNTRACED = 0x800000
+- CLONE_VFORK = 0x4000
+- CLONE_VM = 0x100
+- CMSPAR = 0x40000000
+- CR0 = 0x0
+- CR1 = 0x200
+- CR2 = 0x400
+- CR3 = 0x600
+- CRDLY = 0x600
+- CREAD = 0x80
+- CRTSCTS = 0x80000000
+- CS5 = 0x0
+- CS6 = 0x10
+- CS7 = 0x20
+- CS8 = 0x30
+- CSIGNAL = 0xff
+- CSIZE = 0x30
+- CSTART = 0x11
+- CSTATUS = 0x0
+- CSTOP = 0x13
+- CSTOPB = 0x40
+- CSUSP = 0x1a
+- DT_BLK = 0x6
+- DT_CHR = 0x2
+- DT_DIR = 0x4
+- DT_FIFO = 0x1
+- DT_LNK = 0xa
+- DT_REG = 0x8
+- DT_SOCK = 0xc
+- DT_UNKNOWN = 0x0
+- DT_WHT = 0xe
+- ECHO = 0x8
+- ECHOCTL = 0x200
+- ECHOE = 0x10
+- ECHOK = 0x20
+- ECHOKE = 0x800
+- ECHONL = 0x40
+- ECHOPRT = 0x400
+- EFD_CLOEXEC = 0x80000
+- EFD_NONBLOCK = 0x800
+- EFD_SEMAPHORE = 0x1
+- ENCODING_DEFAULT = 0x0
+- ENCODING_FM_MARK = 0x3
+- ENCODING_FM_SPACE = 0x4
+- ENCODING_MANCHESTER = 0x5
+- ENCODING_NRZ = 0x1
+- ENCODING_NRZI = 0x2
+- EPOLLERR = 0x8
+- EPOLLET = 0x80000000
+- EPOLLEXCLUSIVE = 0x10000000
+- EPOLLHUP = 0x10
+- EPOLLIN = 0x1
+- EPOLLMSG = 0x400
+- EPOLLONESHOT = 0x40000000
+- EPOLLOUT = 0x4
+- EPOLLPRI = 0x2
+- EPOLLRDBAND = 0x80
+- EPOLLRDHUP = 0x2000
+- EPOLLRDNORM = 0x40
+- EPOLLWAKEUP = 0x20000000
+- EPOLLWRBAND = 0x200
+- EPOLLWRNORM = 0x100
+- EPOLL_CLOEXEC = 0x80000
+- EPOLL_CTL_ADD = 0x1
+- EPOLL_CTL_DEL = 0x2
+- EPOLL_CTL_MOD = 0x3
+- ETH_P_1588 = 0x88f7
+- ETH_P_8021AD = 0x88a8
+- ETH_P_8021AH = 0x88e7
+- ETH_P_8021Q = 0x8100
+- ETH_P_80221 = 0x8917
+- ETH_P_802_2 = 0x4
+- ETH_P_802_3 = 0x1
+- ETH_P_802_3_MIN = 0x600
+- ETH_P_802_EX1 = 0x88b5
+- ETH_P_AARP = 0x80f3
+- ETH_P_AF_IUCV = 0xfbfb
+- ETH_P_ALL = 0x3
+- ETH_P_AOE = 0x88a2
+- ETH_P_ARCNET = 0x1a
+- ETH_P_ARP = 0x806
+- ETH_P_ATALK = 0x809b
+- ETH_P_ATMFATE = 0x8884
+- ETH_P_ATMMPOA = 0x884c
+- ETH_P_AX25 = 0x2
+- ETH_P_BATMAN = 0x4305
+- ETH_P_BPQ = 0x8ff
+- ETH_P_CAIF = 0xf7
+- ETH_P_CAN = 0xc
+- ETH_P_CANFD = 0xd
+- ETH_P_CONTROL = 0x16
+- ETH_P_CUST = 0x6006
+- ETH_P_DDCMP = 0x6
+- ETH_P_DEC = 0x6000
+- ETH_P_DIAG = 0x6005
+- ETH_P_DNA_DL = 0x6001
+- ETH_P_DNA_RC = 0x6002
+- ETH_P_DNA_RT = 0x6003
+- ETH_P_DSA = 0x1b
+- ETH_P_ECONET = 0x18
+- ETH_P_EDSA = 0xdada
+- ETH_P_FCOE = 0x8906
+- ETH_P_FIP = 0x8914
+- ETH_P_HDLC = 0x19
+- ETH_P_HSR = 0x892f
+- ETH_P_IEEE802154 = 0xf6
+- ETH_P_IEEEPUP = 0xa00
+- ETH_P_IEEEPUPAT = 0xa01
+- ETH_P_IP = 0x800
+- ETH_P_IPV6 = 0x86dd
+- ETH_P_IPX = 0x8137
+- ETH_P_IRDA = 0x17
+- ETH_P_LAT = 0x6004
+- ETH_P_LINK_CTL = 0x886c
+- ETH_P_LOCALTALK = 0x9
+- ETH_P_LOOP = 0x60
+- ETH_P_LOOPBACK = 0x9000
+- ETH_P_MACSEC = 0x88e5
+- ETH_P_MOBITEX = 0x15
+- ETH_P_MPLS_MC = 0x8848
+- ETH_P_MPLS_UC = 0x8847
+- ETH_P_MVRP = 0x88f5
+- ETH_P_NCSI = 0x88f8
+- ETH_P_PAE = 0x888e
+- ETH_P_PAUSE = 0x8808
+- ETH_P_PHONET = 0xf5
+- ETH_P_PPPTALK = 0x10
+- ETH_P_PPP_DISC = 0x8863
+- ETH_P_PPP_MP = 0x8
+- ETH_P_PPP_SES = 0x8864
+- ETH_P_PRP = 0x88fb
+- ETH_P_PUP = 0x200
+- ETH_P_PUPAT = 0x201
+- ETH_P_QINQ1 = 0x9100
+- ETH_P_QINQ2 = 0x9200
+- ETH_P_QINQ3 = 0x9300
+- ETH_P_RARP = 0x8035
+- ETH_P_SCA = 0x6007
+- ETH_P_SLOW = 0x8809
+- ETH_P_SNAP = 0x5
+- ETH_P_TDLS = 0x890d
+- ETH_P_TEB = 0x6558
+- ETH_P_TIPC = 0x88ca
+- ETH_P_TRAILER = 0x1c
+- ETH_P_TR_802_2 = 0x11
+- ETH_P_TSN = 0x22f0
+- ETH_P_WAN_PPP = 0x7
+- ETH_P_WCCP = 0x883e
+- ETH_P_X25 = 0x805
+- ETH_P_XDSA = 0xf8
+- EXTA = 0xe
+- EXTB = 0xf
+- EXTPROC = 0x10000
+- FALLOC_FL_COLLAPSE_RANGE = 0x8
+- FALLOC_FL_INSERT_RANGE = 0x20
+- FALLOC_FL_KEEP_SIZE = 0x1
+- FALLOC_FL_NO_HIDE_STALE = 0x4
+- FALLOC_FL_PUNCH_HOLE = 0x2
+- FALLOC_FL_UNSHARE_RANGE = 0x40
+- FALLOC_FL_ZERO_RANGE = 0x10
+- FD_CLOEXEC = 0x1
+- FD_SETSIZE = 0x400
+- FF0 = 0x0
+- FF1 = 0x8000
+- FFDLY = 0x8000
+- FLUSHO = 0x1000
+- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
+- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
+- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
+- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
+- FS_ENCRYPTION_MODE_INVALID = 0x0
+- FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
+- FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
+- FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
+- FS_KEY_DESCRIPTOR_SIZE = 0x8
+- FS_KEY_DESC_PREFIX = "fscrypt:"
+- FS_KEY_DESC_PREFIX_SIZE = 0x8
+- FS_MAX_KEY_SIZE = 0x40
+- FS_POLICY_FLAGS_PAD_16 = 0x2
+- FS_POLICY_FLAGS_PAD_32 = 0x3
+- FS_POLICY_FLAGS_PAD_4 = 0x0
+- FS_POLICY_FLAGS_PAD_8 = 0x1
+- FS_POLICY_FLAGS_PAD_MASK = 0x3
+- FS_POLICY_FLAGS_VALID = 0x3
+- F_DUPFD = 0x0
+- F_DUPFD_CLOEXEC = 0x406
+- F_EXLCK = 0x4
+- F_GETFD = 0x1
+- F_GETFL = 0x3
+- F_GETLEASE = 0x401
+- F_GETLK = 0xc
+- F_GETLK64 = 0xc
+- F_GETOWN = 0x9
+- F_GETOWN_EX = 0x10
+- F_GETPIPE_SZ = 0x408
+- F_GETSIG = 0xb
+- F_LOCK = 0x1
+- F_NOTIFY = 0x402
+- F_OFD_GETLK = 0x24
+- F_OFD_SETLK = 0x25
+- F_OFD_SETLKW = 0x26
+- F_OK = 0x0
+- F_RDLCK = 0x0
+- F_SETFD = 0x2
+- F_SETFL = 0x4
+- F_SETLEASE = 0x400
+- F_SETLK = 0xd
+- F_SETLK64 = 0xd
+- F_SETLKW = 0xe
+- F_SETLKW64 = 0xe
+- F_SETOWN = 0x8
+- F_SETOWN_EX = 0xf
+- F_SETPIPE_SZ = 0x407
+- F_SETSIG = 0xa
+- F_SHLCK = 0x8
+- F_TEST = 0x3
+- F_TLOCK = 0x2
+- F_ULOCK = 0x0
+- F_UNLCK = 0x2
+- F_WRLCK = 0x1
+- GENL_ADMIN_PERM = 0x1
+- GENL_CMD_CAP_DO = 0x2
+- GENL_CMD_CAP_DUMP = 0x4
+- GENL_CMD_CAP_HASPOL = 0x8
+- GENL_HDRLEN = 0x4
+- GENL_ID_CTRL = 0x10
+- GENL_ID_PMCRAID = 0x12
+- GENL_ID_VFS_DQUOT = 0x11
+- GENL_MAX_ID = 0x3ff
+- GENL_MIN_ID = 0x10
+- GENL_NAMSIZ = 0x10
+- GENL_START_ALLOC = 0x13
+- GENL_UNS_ADMIN_PERM = 0x10
+- GRND_NONBLOCK = 0x1
+- GRND_RANDOM = 0x2
+- HUPCL = 0x400
+- IBSHIFT = 0x10
+- ICANON = 0x2
+- ICMPV6_FILTER = 0x1
+- ICRNL = 0x100
+- IEXTEN = 0x8000
+- IFA_F_DADFAILED = 0x8
+- IFA_F_DEPRECATED = 0x20
+- IFA_F_HOMEADDRESS = 0x10
+- IFA_F_MANAGETEMPADDR = 0x100
+- IFA_F_MCAUTOJOIN = 0x400
+- IFA_F_NODAD = 0x2
+- IFA_F_NOPREFIXROUTE = 0x200
+- IFA_F_OPTIMISTIC = 0x4
+- IFA_F_PERMANENT = 0x80
+- IFA_F_SECONDARY = 0x1
+- IFA_F_STABLE_PRIVACY = 0x800
+- IFA_F_TEMPORARY = 0x1
+- IFA_F_TENTATIVE = 0x40
+- IFA_MAX = 0x8
+- IFF_ALLMULTI = 0x200
+- IFF_ATTACH_QUEUE = 0x200
+- IFF_AUTOMEDIA = 0x4000
+- IFF_BROADCAST = 0x2
+- IFF_DEBUG = 0x4
+- IFF_DETACH_QUEUE = 0x400
+- IFF_DORMANT = 0x20000
+- IFF_DYNAMIC = 0x8000
+- IFF_ECHO = 0x40000
+- IFF_LOOPBACK = 0x8
+- IFF_LOWER_UP = 0x10000
+- IFF_MASTER = 0x400
+- IFF_MULTICAST = 0x1000
+- IFF_MULTI_QUEUE = 0x100
+- IFF_NOARP = 0x80
+- IFF_NOFILTER = 0x1000
+- IFF_NOTRAILERS = 0x20
+- IFF_NO_PI = 0x1000
+- IFF_ONE_QUEUE = 0x2000
+- IFF_PERSIST = 0x800
+- IFF_POINTOPOINT = 0x10
+- IFF_PORTSEL = 0x2000
+- IFF_PROMISC = 0x100
+- IFF_RUNNING = 0x40
+- IFF_SLAVE = 0x800
+- IFF_TAP = 0x2
+- IFF_TUN = 0x1
+- IFF_TUN_EXCL = 0x8000
+- IFF_UP = 0x1
+- IFF_VNET_HDR = 0x4000
+- IFF_VOLATILE = 0x70c5a
+- IFNAMSIZ = 0x10
+- IGNBRK = 0x1
+- IGNCR = 0x80
+- IGNPAR = 0x4
+- IMAXBEL = 0x2000
+- INLCR = 0x40
+- INPCK = 0x10
+- IN_ACCESS = 0x1
+- IN_ALL_EVENTS = 0xfff
+- IN_ATTRIB = 0x4
+- IN_CLASSA_HOST = 0xffffff
+- IN_CLASSA_MAX = 0x80
+- IN_CLASSA_NET = 0xff000000
+- IN_CLASSA_NSHIFT = 0x18
+- IN_CLASSB_HOST = 0xffff
+- IN_CLASSB_MAX = 0x10000
+- IN_CLASSB_NET = 0xffff0000
+- IN_CLASSB_NSHIFT = 0x10
+- IN_CLASSC_HOST = 0xff
+- IN_CLASSC_NET = 0xffffff00
+- IN_CLASSC_NSHIFT = 0x8
+- IN_CLOEXEC = 0x80000
+- IN_CLOSE = 0x18
+- IN_CLOSE_NOWRITE = 0x10
+- IN_CLOSE_WRITE = 0x8
+- IN_CREATE = 0x100
+- IN_DELETE = 0x200
+- IN_DELETE_SELF = 0x400
+- IN_DONT_FOLLOW = 0x2000000
+- IN_EXCL_UNLINK = 0x4000000
+- IN_IGNORED = 0x8000
+- IN_ISDIR = 0x40000000
+- IN_LOOPBACKNET = 0x7f
+- IN_MASK_ADD = 0x20000000
+- IN_MODIFY = 0x2
+- IN_MOVE = 0xc0
+- IN_MOVED_FROM = 0x40
+- IN_MOVED_TO = 0x80
+- IN_MOVE_SELF = 0x800
+- IN_NONBLOCK = 0x800
+- IN_ONESHOT = 0x80000000
+- IN_ONLYDIR = 0x1000000
+- IN_OPEN = 0x20
+- IN_Q_OVERFLOW = 0x4000
+- IN_UNMOUNT = 0x2000
+- IPPROTO_AH = 0x33
+- IPPROTO_BEETPH = 0x5e
+- IPPROTO_COMP = 0x6c
+- IPPROTO_DCCP = 0x21
+- IPPROTO_DSTOPTS = 0x3c
+- IPPROTO_EGP = 0x8
+- IPPROTO_ENCAP = 0x62
+- IPPROTO_ESP = 0x32
+- IPPROTO_FRAGMENT = 0x2c
+- IPPROTO_GRE = 0x2f
+- IPPROTO_HOPOPTS = 0x0
+- IPPROTO_ICMP = 0x1
+- IPPROTO_ICMPV6 = 0x3a
+- IPPROTO_IDP = 0x16
+- IPPROTO_IGMP = 0x2
+- IPPROTO_IP = 0x0
+- IPPROTO_IPIP = 0x4
+- IPPROTO_IPV6 = 0x29
+- IPPROTO_MH = 0x87
+- IPPROTO_MPLS = 0x89
+- IPPROTO_MTP = 0x5c
+- IPPROTO_NONE = 0x3b
+- IPPROTO_PIM = 0x67
+- IPPROTO_PUP = 0xc
+- IPPROTO_RAW = 0xff
+- IPPROTO_ROUTING = 0x2b
+- IPPROTO_RSVP = 0x2e
+- IPPROTO_SCTP = 0x84
+- IPPROTO_TCP = 0x6
+- IPPROTO_TP = 0x1d
+- IPPROTO_UDP = 0x11
+- IPPROTO_UDPLITE = 0x88
+- IPV6_2292DSTOPTS = 0x4
+- IPV6_2292HOPLIMIT = 0x8
+- IPV6_2292HOPOPTS = 0x3
+- IPV6_2292PKTINFO = 0x2
+- IPV6_2292PKTOPTIONS = 0x6
+- IPV6_2292RTHDR = 0x5
+- IPV6_ADDRFORM = 0x1
+- IPV6_ADD_MEMBERSHIP = 0x14
+- IPV6_AUTHHDR = 0xa
+- IPV6_CHECKSUM = 0x7
+- IPV6_DONTFRAG = 0x3e
+- IPV6_DROP_MEMBERSHIP = 0x15
+- IPV6_DSTOPTS = 0x3b
+- IPV6_HDRINCL = 0x24
+- IPV6_HOPLIMIT = 0x34
+- IPV6_HOPOPTS = 0x36
+- IPV6_IPSEC_POLICY = 0x22
+- IPV6_JOIN_ANYCAST = 0x1b
+- IPV6_JOIN_GROUP = 0x14
+- IPV6_LEAVE_ANYCAST = 0x1c
+- IPV6_LEAVE_GROUP = 0x15
+- IPV6_MTU = 0x18
+- IPV6_MTU_DISCOVER = 0x17
+- IPV6_MULTICAST_HOPS = 0x12
+- IPV6_MULTICAST_IF = 0x11
+- IPV6_MULTICAST_LOOP = 0x13
+- IPV6_NEXTHOP = 0x9
+- IPV6_PATHMTU = 0x3d
+- IPV6_PKTINFO = 0x32
+- IPV6_PMTUDISC_DO = 0x2
+- IPV6_PMTUDISC_DONT = 0x0
+- IPV6_PMTUDISC_INTERFACE = 0x4
+- IPV6_PMTUDISC_OMIT = 0x5
+- IPV6_PMTUDISC_PROBE = 0x3
+- IPV6_PMTUDISC_WANT = 0x1
+- IPV6_RECVDSTOPTS = 0x3a
+- IPV6_RECVERR = 0x19
+- IPV6_RECVHOPLIMIT = 0x33
+- IPV6_RECVHOPOPTS = 0x35
+- IPV6_RECVPATHMTU = 0x3c
+- IPV6_RECVPKTINFO = 0x31
+- IPV6_RECVRTHDR = 0x38
+- IPV6_RECVTCLASS = 0x42
+- IPV6_ROUTER_ALERT = 0x16
+- IPV6_RTHDR = 0x39
+- IPV6_RTHDRDSTOPTS = 0x37
+- IPV6_RTHDR_LOOSE = 0x0
+- IPV6_RTHDR_STRICT = 0x1
+- IPV6_RTHDR_TYPE_0 = 0x0
+- IPV6_RXDSTOPTS = 0x3b
+- IPV6_RXHOPOPTS = 0x36
+- IPV6_TCLASS = 0x43
+- IPV6_UNICAST_HOPS = 0x10
+- IPV6_V6ONLY = 0x1a
+- IPV6_XFRM_POLICY = 0x23
+- IP_ADD_MEMBERSHIP = 0x23
+- IP_ADD_SOURCE_MEMBERSHIP = 0x27
+- IP_BIND_ADDRESS_NO_PORT = 0x18
+- IP_BLOCK_SOURCE = 0x26
+- IP_CHECKSUM = 0x17
+- IP_DEFAULT_MULTICAST_LOOP = 0x1
+- IP_DEFAULT_MULTICAST_TTL = 0x1
+- IP_DF = 0x4000
+- IP_DROP_MEMBERSHIP = 0x24
+- IP_DROP_SOURCE_MEMBERSHIP = 0x28
+- IP_FREEBIND = 0xf
+- IP_HDRINCL = 0x3
+- IP_IPSEC_POLICY = 0x10
+- IP_MAXPACKET = 0xffff
+- IP_MAX_MEMBERSHIPS = 0x14
+- IP_MF = 0x2000
+- IP_MINTTL = 0x15
+- IP_MSFILTER = 0x29
+- IP_MSS = 0x240
+- IP_MTU = 0xe
+- IP_MTU_DISCOVER = 0xa
+- IP_MULTICAST_ALL = 0x31
+- IP_MULTICAST_IF = 0x20
+- IP_MULTICAST_LOOP = 0x22
+- IP_MULTICAST_TTL = 0x21
+- IP_NODEFRAG = 0x16
+- IP_OFFMASK = 0x1fff
+- IP_OPTIONS = 0x4
+- IP_ORIGDSTADDR = 0x14
+- IP_PASSSEC = 0x12
+- IP_PKTINFO = 0x8
+- IP_PKTOPTIONS = 0x9
+- IP_PMTUDISC = 0xa
+- IP_PMTUDISC_DO = 0x2
+- IP_PMTUDISC_DONT = 0x0
+- IP_PMTUDISC_INTERFACE = 0x4
+- IP_PMTUDISC_OMIT = 0x5
+- IP_PMTUDISC_PROBE = 0x3
+- IP_PMTUDISC_WANT = 0x1
+- IP_RECVERR = 0xb
+- IP_RECVOPTS = 0x6
+- IP_RECVORIGDSTADDR = 0x14
+- IP_RECVRETOPTS = 0x7
+- IP_RECVTOS = 0xd
+- IP_RECVTTL = 0xc
+- IP_RETOPTS = 0x7
+- IP_RF = 0x8000
+- IP_ROUTER_ALERT = 0x5
+- IP_TOS = 0x1
+- IP_TRANSPARENT = 0x13
+- IP_TTL = 0x2
+- IP_UNBLOCK_SOURCE = 0x25
+- IP_UNICAST_IF = 0x32
+- IP_XFRM_POLICY = 0x11
+- ISIG = 0x1
+- ISTRIP = 0x20
+- IUCLC = 0x200
+- IUTF8 = 0x4000
+- IXANY = 0x800
+- IXOFF = 0x1000
+- IXON = 0x400
+- KEYCTL_ASSUME_AUTHORITY = 0x10
+- KEYCTL_CHOWN = 0x4
+- KEYCTL_CLEAR = 0x7
+- KEYCTL_DESCRIBE = 0x6
+- KEYCTL_DH_COMPUTE = 0x17
+- KEYCTL_GET_KEYRING_ID = 0x0
+- KEYCTL_GET_PERSISTENT = 0x16
+- KEYCTL_GET_SECURITY = 0x11
+- KEYCTL_INSTANTIATE = 0xc
+- KEYCTL_INSTANTIATE_IOV = 0x14
+- KEYCTL_INVALIDATE = 0x15
+- KEYCTL_JOIN_SESSION_KEYRING = 0x1
+- KEYCTL_LINK = 0x8
+- KEYCTL_NEGATE = 0xd
+- KEYCTL_READ = 0xb
+- KEYCTL_REJECT = 0x13
+- KEYCTL_REVOKE = 0x3
+- KEYCTL_SEARCH = 0xa
+- KEYCTL_SESSION_TO_PARENT = 0x12
+- KEYCTL_SETPERM = 0x5
+- KEYCTL_SET_REQKEY_KEYRING = 0xe
+- KEYCTL_SET_TIMEOUT = 0xf
+- KEYCTL_UNLINK = 0x9
+- KEYCTL_UPDATE = 0x2
+- KEY_REQKEY_DEFL_DEFAULT = 0x0
+- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
+- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
+- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
+- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
+- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
+- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
+- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
+- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
+- KEY_SPEC_GROUP_KEYRING = -0x6
+- KEY_SPEC_PROCESS_KEYRING = -0x2
+- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
+- KEY_SPEC_REQUESTOR_KEYRING = -0x8
+- KEY_SPEC_SESSION_KEYRING = -0x3
+- KEY_SPEC_THREAD_KEYRING = -0x1
+- KEY_SPEC_USER_KEYRING = -0x4
+- KEY_SPEC_USER_SESSION_KEYRING = -0x5
+- LINUX_REBOOT_CMD_CAD_OFF = 0x0
+- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
+- LINUX_REBOOT_CMD_HALT = 0xcdef0123
+- LINUX_REBOOT_CMD_KEXEC = 0x45584543
+- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
+- LINUX_REBOOT_CMD_RESTART = 0x1234567
+- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
+- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
+- LINUX_REBOOT_MAGIC1 = 0xfee1dead
+- LINUX_REBOOT_MAGIC2 = 0x28121969
+- LOCK_EX = 0x2
+- LOCK_NB = 0x4
+- LOCK_SH = 0x1
+- LOCK_UN = 0x8
+- MADV_DODUMP = 0x11
+- MADV_DOFORK = 0xb
+- MADV_DONTDUMP = 0x10
+- MADV_DONTFORK = 0xa
+- MADV_DONTNEED = 0x4
+- MADV_FREE = 0x8
+- MADV_HUGEPAGE = 0xe
+- MADV_HWPOISON = 0x64
+- MADV_MERGEABLE = 0xc
+- MADV_NOHUGEPAGE = 0xf
+- MADV_NORMAL = 0x0
+- MADV_RANDOM = 0x1
+- MADV_REMOVE = 0x9
+- MADV_SEQUENTIAL = 0x2
+- MADV_UNMERGEABLE = 0xd
+- MADV_WILLNEED = 0x3
+- MAP_ANON = 0x20
+- MAP_ANONYMOUS = 0x20
+- MAP_DENYWRITE = 0x800
+- MAP_EXECUTABLE = 0x1000
+- MAP_FILE = 0x0
+- MAP_FIXED = 0x10
+- MAP_GROWSDOWN = 0x100
+- MAP_HUGETLB = 0x40000
+- MAP_HUGE_MASK = 0x3f
+- MAP_HUGE_SHIFT = 0x1a
+- MAP_LOCKED = 0x2000
+- MAP_NONBLOCK = 0x10000
+- MAP_NORESERVE = 0x4000
+- MAP_POPULATE = 0x8000
+- MAP_PRIVATE = 0x2
+- MAP_SHARED = 0x1
+- MAP_STACK = 0x20000
+- MAP_TYPE = 0xf
+- MCL_CURRENT = 0x1
+- MCL_FUTURE = 0x2
+- MCL_ONFAULT = 0x4
+- MNT_DETACH = 0x2
+- MNT_EXPIRE = 0x4
+- MNT_FORCE = 0x1
+- MSG_BATCH = 0x40000
+- MSG_CMSG_CLOEXEC = 0x40000000
+- MSG_CONFIRM = 0x800
+- MSG_CTRUNC = 0x8
+- MSG_DONTROUTE = 0x4
+- MSG_DONTWAIT = 0x40
+- MSG_EOR = 0x80
+- MSG_ERRQUEUE = 0x2000
+- MSG_FASTOPEN = 0x20000000
+- MSG_FIN = 0x200
+- MSG_MORE = 0x8000
+- MSG_NOSIGNAL = 0x4000
+- MSG_OOB = 0x1
+- MSG_PEEK = 0x2
+- MSG_PROXY = 0x10
+- MSG_RST = 0x1000
+- MSG_SYN = 0x400
+- MSG_TRUNC = 0x20
+- MSG_TRYHARD = 0x4
+- MSG_WAITALL = 0x100
+- MSG_WAITFORONE = 0x10000
+- MS_ACTIVE = 0x40000000
+- MS_ASYNC = 0x1
+- MS_BIND = 0x1000
+- MS_BORN = 0x20000000
+- MS_DIRSYNC = 0x80
+- MS_INVALIDATE = 0x2
+- MS_I_VERSION = 0x800000
+- MS_KERNMOUNT = 0x400000
+- MS_LAZYTIME = 0x2000000
+- MS_MANDLOCK = 0x40
+- MS_MGC_MSK = 0xffff0000
+- MS_MGC_VAL = 0xc0ed0000
+- MS_MOVE = 0x2000
+- MS_NOATIME = 0x400
+- MS_NODEV = 0x4
+- MS_NODIRATIME = 0x800
+- MS_NOEXEC = 0x8
+- MS_NOREMOTELOCK = 0x8000000
+- MS_NOSEC = 0x10000000
+- MS_NOSUID = 0x2
+- MS_NOUSER = -0x80000000
+- MS_POSIXACL = 0x10000
+- MS_PRIVATE = 0x40000
+- MS_RDONLY = 0x1
+- MS_REC = 0x4000
+- MS_RELATIME = 0x200000
+- MS_REMOUNT = 0x20
+- MS_RMT_MASK = 0x2800051
+- MS_SHARED = 0x100000
+- MS_SILENT = 0x8000
+- MS_SLAVE = 0x80000
+- MS_STRICTATIME = 0x1000000
+- MS_SYNC = 0x4
+- MS_SYNCHRONOUS = 0x10
+- MS_UNBINDABLE = 0x20000
+- MS_VERBOSE = 0x8000
+- NAME_MAX = 0xff
+- NETLINK_ADD_MEMBERSHIP = 0x1
+- NETLINK_AUDIT = 0x9
+- NETLINK_BROADCAST_ERROR = 0x4
+- NETLINK_CAP_ACK = 0xa
+- NETLINK_CONNECTOR = 0xb
+- NETLINK_CRYPTO = 0x15
+- NETLINK_DNRTMSG = 0xe
+- NETLINK_DROP_MEMBERSHIP = 0x2
+- NETLINK_ECRYPTFS = 0x13
+- NETLINK_FIB_LOOKUP = 0xa
+- NETLINK_FIREWALL = 0x3
+- NETLINK_GENERIC = 0x10
+- NETLINK_INET_DIAG = 0x4
+- NETLINK_IP6_FW = 0xd
+- NETLINK_ISCSI = 0x8
+- NETLINK_KOBJECT_UEVENT = 0xf
+- NETLINK_LISTEN_ALL_NSID = 0x8
+- NETLINK_LIST_MEMBERSHIPS = 0x9
+- NETLINK_NETFILTER = 0xc
+- NETLINK_NFLOG = 0x5
+- NETLINK_NO_ENOBUFS = 0x5
+- NETLINK_PKTINFO = 0x3
+- NETLINK_RDMA = 0x14
+- NETLINK_ROUTE = 0x0
+- NETLINK_RX_RING = 0x6
+- NETLINK_SCSITRANSPORT = 0x12
+- NETLINK_SELINUX = 0x7
+- NETLINK_SOCK_DIAG = 0x4
+- NETLINK_TX_RING = 0x7
+- NETLINK_UNUSED = 0x1
+- NETLINK_USERSOCK = 0x2
+- NETLINK_XFRM = 0x6
+- NL0 = 0x0
+- NL1 = 0x100
+- NLA_ALIGNTO = 0x4
+- NLA_F_NESTED = 0x8000
+- NLA_F_NET_BYTEORDER = 0x4000
+- NLA_HDRLEN = 0x4
+- NLDLY = 0x100
+- NLMSG_ALIGNTO = 0x4
+- NLMSG_DONE = 0x3
+- NLMSG_ERROR = 0x2
+- NLMSG_HDRLEN = 0x10
+- NLMSG_MIN_TYPE = 0x10
+- NLMSG_NOOP = 0x1
+- NLMSG_OVERRUN = 0x4
+- NLM_F_ACK = 0x4
+- NLM_F_APPEND = 0x800
+- NLM_F_ATOMIC = 0x400
+- NLM_F_CREATE = 0x400
+- NLM_F_DUMP = 0x300
+- NLM_F_DUMP_FILTERED = 0x20
+- NLM_F_DUMP_INTR = 0x10
+- NLM_F_ECHO = 0x8
+- NLM_F_EXCL = 0x200
+- NLM_F_MATCH = 0x200
+- NLM_F_MULTI = 0x2
+- NLM_F_REPLACE = 0x100
+- NLM_F_REQUEST = 0x1
+- NLM_F_ROOT = 0x100
+- NOFLSH = 0x80
+- OCRNL = 0x8
+- OFDEL = 0x80
+- OFILL = 0x40
+- OLCUC = 0x2
+- ONLCR = 0x4
+- ONLRET = 0x20
+- ONOCR = 0x10
+- OPOST = 0x1
+- O_ACCMODE = 0x3
+- O_APPEND = 0x400
+- O_ASYNC = 0x2000
+- O_CLOEXEC = 0x80000
+- O_CREAT = 0x40
+- O_DIRECT = 0x10000
+- O_DIRECTORY = 0x4000
+- O_DSYNC = 0x1000
+- O_EXCL = 0x80
+- O_FSYNC = 0x101000
+- O_LARGEFILE = 0x20000
+- O_NDELAY = 0x800
+- O_NOATIME = 0x40000
+- O_NOCTTY = 0x100
+- O_NOFOLLOW = 0x8000
+- O_NONBLOCK = 0x800
+- O_PATH = 0x200000
+- O_RDONLY = 0x0
+- O_RDWR = 0x2
+- O_RSYNC = 0x101000
+- O_SYNC = 0x101000
+- O_TMPFILE = 0x404000
+- O_TRUNC = 0x200
+- O_WRONLY = 0x1
+- PACKET_ADD_MEMBERSHIP = 0x1
+- PACKET_AUXDATA = 0x8
+- PACKET_BROADCAST = 0x1
+- PACKET_COPY_THRESH = 0x7
+- PACKET_DROP_MEMBERSHIP = 0x2
+- PACKET_FANOUT = 0x12
+- PACKET_FANOUT_CBPF = 0x6
+- PACKET_FANOUT_CPU = 0x2
+- PACKET_FANOUT_DATA = 0x16
+- PACKET_FANOUT_EBPF = 0x7
+- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
+- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
+- PACKET_FANOUT_HASH = 0x0
+- PACKET_FANOUT_LB = 0x1
+- PACKET_FANOUT_QM = 0x5
+- PACKET_FANOUT_RND = 0x4
+- PACKET_FANOUT_ROLLOVER = 0x3
+- PACKET_FASTROUTE = 0x6
+- PACKET_HDRLEN = 0xb
+- PACKET_HOST = 0x0
+- PACKET_KERNEL = 0x7
+- PACKET_LOOPBACK = 0x5
+- PACKET_LOSS = 0xe
+- PACKET_MR_ALLMULTI = 0x2
+- PACKET_MR_MULTICAST = 0x0
+- PACKET_MR_PROMISC = 0x1
+- PACKET_MR_UNICAST = 0x3
+- PACKET_MULTICAST = 0x2
+- PACKET_ORIGDEV = 0x9
+- PACKET_OTHERHOST = 0x3
+- PACKET_OUTGOING = 0x4
+- PACKET_QDISC_BYPASS = 0x14
+- PACKET_RECV_OUTPUT = 0x3
+- PACKET_RESERVE = 0xc
+- PACKET_ROLLOVER_STATS = 0x15
+- PACKET_RX_RING = 0x5
+- PACKET_STATISTICS = 0x6
+- PACKET_TIMESTAMP = 0x11
+- PACKET_TX_HAS_OFF = 0x13
+- PACKET_TX_RING = 0xd
+- PACKET_TX_TIMESTAMP = 0x10
+- PACKET_USER = 0x6
+- PACKET_VERSION = 0xa
+- PACKET_VNET_HDR = 0xf
+- PARENB = 0x100
+- PARITY_CRC16_PR0 = 0x2
+- PARITY_CRC16_PR0_CCITT = 0x4
+- PARITY_CRC16_PR1 = 0x3
+- PARITY_CRC16_PR1_CCITT = 0x5
+- PARITY_CRC32_PR0_CCITT = 0x6
+- PARITY_CRC32_PR1_CCITT = 0x7
+- PARITY_DEFAULT = 0x0
+- PARITY_NONE = 0x1
+- PARMRK = 0x8
+- PARODD = 0x200
+- PENDIN = 0x4000
+- PERF_EVENT_IOC_DISABLE = 0x2401
+- PERF_EVENT_IOC_ENABLE = 0x2400
+- PERF_EVENT_IOC_ID = 0x80042407
+- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
+- PERF_EVENT_IOC_PERIOD = 0x40082404
+- PERF_EVENT_IOC_REFRESH = 0x2402
+- PERF_EVENT_IOC_RESET = 0x2403
+- PERF_EVENT_IOC_SET_BPF = 0x40042408
+- PERF_EVENT_IOC_SET_FILTER = 0x40042406
+- PERF_EVENT_IOC_SET_OUTPUT = 0x2405
+- PRIO_PGRP = 0x1
+- PRIO_PROCESS = 0x0
+- PRIO_USER = 0x2
+- PROT_EXEC = 0x4
+- PROT_GROWSDOWN = 0x1000000
+- PROT_GROWSUP = 0x2000000
+- PROT_NONE = 0x0
+- PROT_READ = 0x1
+- PROT_WRITE = 0x2
+- PR_CAPBSET_DROP = 0x18
+- PR_CAPBSET_READ = 0x17
+- PR_CAP_AMBIENT = 0x2f
+- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
+- PR_CAP_AMBIENT_IS_SET = 0x1
+- PR_CAP_AMBIENT_LOWER = 0x3
+- PR_CAP_AMBIENT_RAISE = 0x2
+- PR_ENDIAN_BIG = 0x0
+- PR_ENDIAN_LITTLE = 0x1
+- PR_ENDIAN_PPC_LITTLE = 0x2
+- PR_FPEMU_NOPRINT = 0x1
+- PR_FPEMU_SIGFPE = 0x2
+- PR_FP_EXC_ASYNC = 0x2
+- PR_FP_EXC_DISABLED = 0x0
+- PR_FP_EXC_DIV = 0x10000
+- PR_FP_EXC_INV = 0x100000
+- PR_FP_EXC_NONRECOV = 0x1
+- PR_FP_EXC_OVF = 0x20000
+- PR_FP_EXC_PRECISE = 0x3
+- PR_FP_EXC_RES = 0x80000
+- PR_FP_EXC_SW_ENABLE = 0x80
+- PR_FP_EXC_UND = 0x40000
+- PR_FP_MODE_FR = 0x1
+- PR_FP_MODE_FRE = 0x2
+- PR_GET_CHILD_SUBREAPER = 0x25
+- PR_GET_DUMPABLE = 0x3
+- PR_GET_ENDIAN = 0x13
+- PR_GET_FPEMU = 0x9
+- PR_GET_FPEXC = 0xb
+- PR_GET_FP_MODE = 0x2e
+- PR_GET_KEEPCAPS = 0x7
+- PR_GET_NAME = 0x10
+- PR_GET_NO_NEW_PRIVS = 0x27
+- PR_GET_PDEATHSIG = 0x2
+- PR_GET_SECCOMP = 0x15
+- PR_GET_SECUREBITS = 0x1b
+- PR_GET_THP_DISABLE = 0x2a
+- PR_GET_TID_ADDRESS = 0x28
+- PR_GET_TIMERSLACK = 0x1e
+- PR_GET_TIMING = 0xd
+- PR_GET_TSC = 0x19
+- PR_GET_UNALIGN = 0x5
+- PR_MCE_KILL = 0x21
+- PR_MCE_KILL_CLEAR = 0x0
+- PR_MCE_KILL_DEFAULT = 0x2
+- PR_MCE_KILL_EARLY = 0x1
+- PR_MCE_KILL_GET = 0x22
+- PR_MCE_KILL_LATE = 0x0
+- PR_MCE_KILL_SET = 0x1
+- PR_MPX_DISABLE_MANAGEMENT = 0x2c
+- PR_MPX_ENABLE_MANAGEMENT = 0x2b
+- PR_SET_CHILD_SUBREAPER = 0x24
+- PR_SET_DUMPABLE = 0x4
+- PR_SET_ENDIAN = 0x14
+- PR_SET_FPEMU = 0xa
+- PR_SET_FPEXC = 0xc
+- PR_SET_FP_MODE = 0x2d
+- PR_SET_KEEPCAPS = 0x8
+- PR_SET_MM = 0x23
+- PR_SET_MM_ARG_END = 0x9
+- PR_SET_MM_ARG_START = 0x8
+- PR_SET_MM_AUXV = 0xc
+- PR_SET_MM_BRK = 0x7
+- PR_SET_MM_END_CODE = 0x2
+- PR_SET_MM_END_DATA = 0x4
+- PR_SET_MM_ENV_END = 0xb
+- PR_SET_MM_ENV_START = 0xa
+- PR_SET_MM_EXE_FILE = 0xd
+- PR_SET_MM_MAP = 0xe
+- PR_SET_MM_MAP_SIZE = 0xf
+- PR_SET_MM_START_BRK = 0x6
+- PR_SET_MM_START_CODE = 0x1
+- PR_SET_MM_START_DATA = 0x3
+- PR_SET_MM_START_STACK = 0x5
+- PR_SET_NAME = 0xf
+- PR_SET_NO_NEW_PRIVS = 0x26
+- PR_SET_PDEATHSIG = 0x1
+- PR_SET_PTRACER = 0x59616d61
+- PR_SET_PTRACER_ANY = 0xffffffff
+- PR_SET_SECCOMP = 0x16
+- PR_SET_SECUREBITS = 0x1c
+- PR_SET_THP_DISABLE = 0x29
+- PR_SET_TIMERSLACK = 0x1d
+- PR_SET_TIMING = 0xe
+- PR_SET_TSC = 0x1a
+- PR_SET_UNALIGN = 0x6
+- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
+- PR_TASK_PERF_EVENTS_ENABLE = 0x20
+- PR_TIMING_STATISTICAL = 0x0
+- PR_TIMING_TIMESTAMP = 0x1
+- PR_TSC_ENABLE = 0x1
+- PR_TSC_SIGSEGV = 0x2
+- PR_UNALIGN_NOPRINT = 0x1
+- PR_UNALIGN_SIGBUS = 0x2
+- PTRACE_ATTACH = 0x10
+- PTRACE_CONT = 0x7
+- PTRACE_DETACH = 0x11
+- PTRACE_EVENT_CLONE = 0x3
+- PTRACE_EVENT_EXEC = 0x4
+- PTRACE_EVENT_EXIT = 0x6
+- PTRACE_EVENT_FORK = 0x1
+- PTRACE_EVENT_SECCOMP = 0x7
+- PTRACE_EVENT_STOP = 0x80
+- PTRACE_EVENT_VFORK = 0x2
+- PTRACE_EVENT_VFORK_DONE = 0x5
+- PTRACE_GETCRUNCHREGS = 0x19
+- PTRACE_GETEVENTMSG = 0x4201
+- PTRACE_GETFPREGS = 0xe
+- PTRACE_GETHBPREGS = 0x1d
+- PTRACE_GETREGS = 0xc
+- PTRACE_GETREGSET = 0x4204
+- PTRACE_GETSIGINFO = 0x4202
+- PTRACE_GETSIGMASK = 0x420a
+- PTRACE_GETVFPREGS = 0x1b
+- PTRACE_GETWMMXREGS = 0x12
+- PTRACE_GET_THREAD_AREA = 0x16
+- PTRACE_INTERRUPT = 0x4207
+- PTRACE_KILL = 0x8
+- PTRACE_LISTEN = 0x4208
+- PTRACE_OLDSETOPTIONS = 0x15
+- PTRACE_O_EXITKILL = 0x100000
+- PTRACE_O_MASK = 0x3000ff
+- PTRACE_O_SUSPEND_SECCOMP = 0x200000
+- PTRACE_O_TRACECLONE = 0x8
+- PTRACE_O_TRACEEXEC = 0x10
+- PTRACE_O_TRACEEXIT = 0x40
+- PTRACE_O_TRACEFORK = 0x2
+- PTRACE_O_TRACESECCOMP = 0x80
+- PTRACE_O_TRACESYSGOOD = 0x1
+- PTRACE_O_TRACEVFORK = 0x4
+- PTRACE_O_TRACEVFORKDONE = 0x20
+- PTRACE_PEEKDATA = 0x2
+- PTRACE_PEEKSIGINFO = 0x4209
+- PTRACE_PEEKSIGINFO_SHARED = 0x1
+- PTRACE_PEEKTEXT = 0x1
+- PTRACE_PEEKUSR = 0x3
+- PTRACE_POKEDATA = 0x5
+- PTRACE_POKETEXT = 0x4
+- PTRACE_POKEUSR = 0x6
+- PTRACE_SECCOMP_GET_FILTER = 0x420c
+- PTRACE_SEIZE = 0x4206
+- PTRACE_SETCRUNCHREGS = 0x1a
+- PTRACE_SETFPREGS = 0xf
+- PTRACE_SETHBPREGS = 0x1e
+- PTRACE_SETOPTIONS = 0x4200
+- PTRACE_SETREGS = 0xd
+- PTRACE_SETREGSET = 0x4205
+- PTRACE_SETSIGINFO = 0x4203
+- PTRACE_SETSIGMASK = 0x420b
+- PTRACE_SETVFPREGS = 0x1c
+- PTRACE_SETWMMXREGS = 0x13
+- PTRACE_SET_SYSCALL = 0x17
+- PTRACE_SINGLESTEP = 0x9
+- PTRACE_SYSCALL = 0x18
+- PTRACE_TRACEME = 0x0
+- PT_DATA_ADDR = 0x10004
+- PT_TEXT_ADDR = 0x10000
+- PT_TEXT_END_ADDR = 0x10008
+- RLIMIT_AS = 0x9
+- RLIMIT_CORE = 0x4
+- RLIMIT_CPU = 0x0
+- RLIMIT_DATA = 0x2
+- RLIMIT_FSIZE = 0x1
+- RLIMIT_LOCKS = 0xa
+- RLIMIT_MEMLOCK = 0x8
+- RLIMIT_MSGQUEUE = 0xc
+- RLIMIT_NICE = 0xd
+- RLIMIT_NOFILE = 0x7
+- RLIMIT_NPROC = 0x6
+- RLIMIT_RSS = 0x5
+- RLIMIT_RTPRIO = 0xe
+- RLIMIT_RTTIME = 0xf
+- RLIMIT_SIGPENDING = 0xb
+- RLIMIT_STACK = 0x3
+- RLIM_INFINITY = -0x1
+- RTAX_ADVMSS = 0x8
+- RTAX_CC_ALGO = 0x10
+- RTAX_CWND = 0x7
+- RTAX_FEATURES = 0xc
+- RTAX_FEATURE_ALLFRAG = 0x8
+- RTAX_FEATURE_ECN = 0x1
+- RTAX_FEATURE_MASK = 0xf
+- RTAX_FEATURE_SACK = 0x2
+- RTAX_FEATURE_TIMESTAMP = 0x4
+- RTAX_HOPLIMIT = 0xa
+- RTAX_INITCWND = 0xb
+- RTAX_INITRWND = 0xe
+- RTAX_LOCK = 0x1
+- RTAX_MAX = 0x10
+- RTAX_MTU = 0x2
+- RTAX_QUICKACK = 0xf
+- RTAX_REORDERING = 0x9
+- RTAX_RTO_MIN = 0xd
+- RTAX_RTT = 0x4
+- RTAX_RTTVAR = 0x5
+- RTAX_SSTHRESH = 0x6
+- RTAX_UNSPEC = 0x0
+- RTAX_WINDOW = 0x3
+- RTA_ALIGNTO = 0x4
+- RTA_MAX = 0x19
+- RTCF_DIRECTSRC = 0x4000000
+- RTCF_DOREDIRECT = 0x1000000
+- RTCF_LOG = 0x2000000
+- RTCF_MASQ = 0x400000
+- RTCF_NAT = 0x800000
+- RTCF_VALVE = 0x200000
+- RTF_ADDRCLASSMASK = 0xf8000000
+- RTF_ADDRCONF = 0x40000
+- RTF_ALLONLINK = 0x20000
+- RTF_BROADCAST = 0x10000000
+- RTF_CACHE = 0x1000000
+- RTF_DEFAULT = 0x10000
+- RTF_DYNAMIC = 0x10
+- RTF_FLOW = 0x2000000
+- RTF_GATEWAY = 0x2
+- RTF_HOST = 0x4
+- RTF_INTERFACE = 0x40000000
+- RTF_IRTT = 0x100
+- RTF_LINKRT = 0x100000
+- RTF_LOCAL = 0x80000000
+- RTF_MODIFIED = 0x20
+- RTF_MSS = 0x40
+- RTF_MTU = 0x40
+- RTF_MULTICAST = 0x20000000
+- RTF_NAT = 0x8000000
+- RTF_NOFORWARD = 0x1000
+- RTF_NONEXTHOP = 0x200000
+- RTF_NOPMTUDISC = 0x4000
+- RTF_POLICY = 0x4000000
+- RTF_REINSTATE = 0x8
+- RTF_REJECT = 0x200
+- RTF_STATIC = 0x400
+- RTF_THROW = 0x2000
+- RTF_UP = 0x1
+- RTF_WINDOW = 0x80
+- RTF_XRESOLVE = 0x800
+- RTM_BASE = 0x10
+- RTM_DELACTION = 0x31
+- RTM_DELADDR = 0x15
+- RTM_DELADDRLABEL = 0x49
+- RTM_DELLINK = 0x11
+- RTM_DELMDB = 0x55
+- RTM_DELNEIGH = 0x1d
+- RTM_DELNSID = 0x59
+- RTM_DELQDISC = 0x25
+- RTM_DELROUTE = 0x19
+- RTM_DELRULE = 0x21
+- RTM_DELTCLASS = 0x29
+- RTM_DELTFILTER = 0x2d
+- RTM_F_CLONED = 0x200
+- RTM_F_EQUALIZE = 0x400
+- RTM_F_LOOKUP_TABLE = 0x1000
+- RTM_F_NOTIFY = 0x100
+- RTM_F_PREFIX = 0x800
+- RTM_GETACTION = 0x32
+- RTM_GETADDR = 0x16
+- RTM_GETADDRLABEL = 0x4a
+- RTM_GETANYCAST = 0x3e
+- RTM_GETDCB = 0x4e
+- RTM_GETLINK = 0x12
+- RTM_GETMDB = 0x56
+- RTM_GETMULTICAST = 0x3a
+- RTM_GETNEIGH = 0x1e
+- RTM_GETNEIGHTBL = 0x42
+- RTM_GETNETCONF = 0x52
+- RTM_GETNSID = 0x5a
+- RTM_GETQDISC = 0x26
+- RTM_GETROUTE = 0x1a
+- RTM_GETRULE = 0x22
+- RTM_GETSTATS = 0x5e
+- RTM_GETTCLASS = 0x2a
+- RTM_GETTFILTER = 0x2e
+- RTM_MAX = 0x5f
+- RTM_NEWACTION = 0x30
+- RTM_NEWADDR = 0x14
+- RTM_NEWADDRLABEL = 0x48
+- RTM_NEWLINK = 0x10
+- RTM_NEWMDB = 0x54
+- RTM_NEWNDUSEROPT = 0x44
+- RTM_NEWNEIGH = 0x1c
+- RTM_NEWNEIGHTBL = 0x40
+- RTM_NEWNETCONF = 0x50
+- RTM_NEWNSID = 0x58
+- RTM_NEWPREFIX = 0x34
+- RTM_NEWQDISC = 0x24
+- RTM_NEWROUTE = 0x18
+- RTM_NEWRULE = 0x20
+- RTM_NEWSTATS = 0x5c
+- RTM_NEWTCLASS = 0x28
+- RTM_NEWTFILTER = 0x2c
+- RTM_NR_FAMILIES = 0x14
+- RTM_NR_MSGTYPES = 0x50
+- RTM_SETDCB = 0x4f
+- RTM_SETLINK = 0x13
+- RTM_SETNEIGHTBL = 0x43
+- RTNH_ALIGNTO = 0x4
+- RTNH_COMPARE_MASK = 0x19
+- RTNH_F_DEAD = 0x1
+- RTNH_F_LINKDOWN = 0x10
+- RTNH_F_OFFLOAD = 0x8
+- RTNH_F_ONLINK = 0x4
+- RTNH_F_PERVASIVE = 0x2
+- RTN_MAX = 0xb
+- RTPROT_BABEL = 0x2a
+- RTPROT_BIRD = 0xc
+- RTPROT_BOOT = 0x3
+- RTPROT_DHCP = 0x10
+- RTPROT_DNROUTED = 0xd
+- RTPROT_GATED = 0x8
+- RTPROT_KERNEL = 0x2
+- RTPROT_MROUTED = 0x11
+- RTPROT_MRT = 0xa
+- RTPROT_NTK = 0xf
+- RTPROT_RA = 0x9
+- RTPROT_REDIRECT = 0x1
+- RTPROT_STATIC = 0x4
+- RTPROT_UNSPEC = 0x0
+- RTPROT_XORP = 0xe
+- RTPROT_ZEBRA = 0xb
+- RT_CLASS_DEFAULT = 0xfd
+- RT_CLASS_LOCAL = 0xff
+- RT_CLASS_MAIN = 0xfe
+- RT_CLASS_MAX = 0xff
+- RT_CLASS_UNSPEC = 0x0
+- RUSAGE_CHILDREN = -0x1
+- RUSAGE_SELF = 0x0
+- RUSAGE_THREAD = 0x1
+- SCM_CREDENTIALS = 0x2
+- SCM_RIGHTS = 0x1
+- SCM_TIMESTAMP = 0x1d
+- SCM_TIMESTAMPING = 0x25
+- SCM_TIMESTAMPING_OPT_STATS = 0x36
+- SCM_TIMESTAMPNS = 0x23
+- SCM_WIFI_STATUS = 0x29
+- SECCOMP_MODE_DISABLED = 0x0
+- SECCOMP_MODE_FILTER = 0x2
+- SECCOMP_MODE_STRICT = 0x1
+- SHUT_RD = 0x0
+- SHUT_RDWR = 0x2
+- SHUT_WR = 0x1
+- SIOCADDDLCI = 0x8980
+- SIOCADDMULTI = 0x8931
+- SIOCADDRT = 0x890b
+- SIOCATMARK = 0x8905
+- SIOCBONDCHANGEACTIVE = 0x8995
+- SIOCBONDENSLAVE = 0x8990
+- SIOCBONDINFOQUERY = 0x8994
+- SIOCBONDRELEASE = 0x8991
+- SIOCBONDSETHWADDR = 0x8992
+- SIOCBONDSLAVEINFOQUERY = 0x8993
+- SIOCBRADDBR = 0x89a0
+- SIOCBRADDIF = 0x89a2
+- SIOCBRDELBR = 0x89a1
+- SIOCBRDELIF = 0x89a3
+- SIOCDARP = 0x8953
+- SIOCDELDLCI = 0x8981
+- SIOCDELMULTI = 0x8932
+- SIOCDELRT = 0x890c
+- SIOCDEVPRIVATE = 0x89f0
+- SIOCDIFADDR = 0x8936
+- SIOCDRARP = 0x8960
+- SIOCETHTOOL = 0x8946
+- SIOCGARP = 0x8954
+- SIOCGHWTSTAMP = 0x89b1
+- SIOCGIFADDR = 0x8915
+- SIOCGIFBR = 0x8940
+- SIOCGIFBRDADDR = 0x8919
+- SIOCGIFCONF = 0x8912
+- SIOCGIFCOUNT = 0x8938
+- SIOCGIFDSTADDR = 0x8917
+- SIOCGIFENCAP = 0x8925
+- SIOCGIFFLAGS = 0x8913
+- SIOCGIFHWADDR = 0x8927
+- SIOCGIFINDEX = 0x8933
+- SIOCGIFMAP = 0x8970
+- SIOCGIFMEM = 0x891f
+- SIOCGIFMETRIC = 0x891d
+- SIOCGIFMTU = 0x8921
+- SIOCGIFNAME = 0x8910
+- SIOCGIFNETMASK = 0x891b
+- SIOCGIFPFLAGS = 0x8935
+- SIOCGIFSLAVE = 0x8929
+- SIOCGIFTXQLEN = 0x8942
+- SIOCGIFVLAN = 0x8982
+- SIOCGMIIPHY = 0x8947
+- SIOCGMIIREG = 0x8948
+- SIOCGPGRP = 0x8904
+- SIOCGRARP = 0x8961
+- SIOCGSKNS = 0x894c
+- SIOCGSTAMP = 0x8906
+- SIOCGSTAMPNS = 0x8907
+- SIOCINQ = 0x541b
+- SIOCOUTQ = 0x5411
+- SIOCOUTQNSD = 0x894b
+- SIOCPROTOPRIVATE = 0x89e0
+- SIOCRTMSG = 0x890d
+- SIOCSARP = 0x8955
+- SIOCSHWTSTAMP = 0x89b0
+- SIOCSIFADDR = 0x8916
+- SIOCSIFBR = 0x8941
+- SIOCSIFBRDADDR = 0x891a
+- SIOCSIFDSTADDR = 0x8918
+- SIOCSIFENCAP = 0x8926
+- SIOCSIFFLAGS = 0x8914
+- SIOCSIFHWADDR = 0x8924
+- SIOCSIFHWBROADCAST = 0x8937
+- SIOCSIFLINK = 0x8911
+- SIOCSIFMAP = 0x8971
+- SIOCSIFMEM = 0x8920
+- SIOCSIFMETRIC = 0x891e
+- SIOCSIFMTU = 0x8922
+- SIOCSIFNAME = 0x8923
+- SIOCSIFNETMASK = 0x891c
+- SIOCSIFPFLAGS = 0x8934
+- SIOCSIFSLAVE = 0x8930
+- SIOCSIFTXQLEN = 0x8943
+- SIOCSIFVLAN = 0x8983
+- SIOCSMIIREG = 0x8949
+- SIOCSPGRP = 0x8902
+- SIOCSRARP = 0x8962
+- SIOCWANDEV = 0x894a
+- SOCK_CLOEXEC = 0x80000
+- SOCK_DCCP = 0x6
+- SOCK_DGRAM = 0x2
+- SOCK_IOC_TYPE = 0x89
+- SOCK_NONBLOCK = 0x800
+- SOCK_PACKET = 0xa
+- SOCK_RAW = 0x3
+- SOCK_RDM = 0x4
+- SOCK_SEQPACKET = 0x5
+- SOCK_STREAM = 0x1
+- SOL_AAL = 0x109
+- SOL_ALG = 0x117
+- SOL_ATM = 0x108
+- SOL_CAIF = 0x116
+- SOL_CAN_BASE = 0x64
+- SOL_DCCP = 0x10d
+- SOL_DECNET = 0x105
+- SOL_ICMPV6 = 0x3a
+- SOL_IP = 0x0
+- SOL_IPV6 = 0x29
+- SOL_IRDA = 0x10a
+- SOL_IUCV = 0x115
+- SOL_KCM = 0x119
+- SOL_LLC = 0x10c
+- SOL_NETBEUI = 0x10b
+- SOL_NETLINK = 0x10e
+- SOL_NFC = 0x118
+- SOL_PACKET = 0x107
+- SOL_PNPIPE = 0x113
+- SOL_PPPOL2TP = 0x111
+- SOL_RAW = 0xff
+- SOL_RDS = 0x114
+- SOL_RXRPC = 0x110
+- SOL_SOCKET = 0x1
+- SOL_TCP = 0x6
+- SOL_TIPC = 0x10f
+- SOL_X25 = 0x106
+- SOMAXCONN = 0x80
+- SO_ACCEPTCONN = 0x1e
+- SO_ATTACH_BPF = 0x32
+- SO_ATTACH_FILTER = 0x1a
+- SO_ATTACH_REUSEPORT_CBPF = 0x33
+- SO_ATTACH_REUSEPORT_EBPF = 0x34
+- SO_BINDTODEVICE = 0x19
+- SO_BPF_EXTENSIONS = 0x30
+- SO_BROADCAST = 0x6
+- SO_BSDCOMPAT = 0xe
+- SO_BUSY_POLL = 0x2e
+- SO_CNX_ADVICE = 0x35
+- SO_DEBUG = 0x1
+- SO_DETACH_BPF = 0x1b
+- SO_DETACH_FILTER = 0x1b
+- SO_DOMAIN = 0x27
+- SO_DONTROUTE = 0x5
+- SO_ERROR = 0x4
+- SO_GET_FILTER = 0x1a
+- SO_INCOMING_CPU = 0x31
+- SO_KEEPALIVE = 0x9
+- SO_LINGER = 0xd
+- SO_LOCK_FILTER = 0x2c
+- SO_MARK = 0x24
+- SO_MAX_PACING_RATE = 0x2f
+- SO_NOFCS = 0x2b
+- SO_NO_CHECK = 0xb
+- SO_OOBINLINE = 0xa
+- SO_PASSCRED = 0x10
+- SO_PASSSEC = 0x22
+- SO_PEEK_OFF = 0x2a
+- SO_PEERCRED = 0x11
+- SO_PEERNAME = 0x1c
+- SO_PEERSEC = 0x1f
+- SO_PRIORITY = 0xc
+- SO_PROTOCOL = 0x26
+- SO_RCVBUF = 0x8
+- SO_RCVBUFFORCE = 0x21
+- SO_RCVLOWAT = 0x12
+- SO_RCVTIMEO = 0x14
+- SO_REUSEADDR = 0x2
+- SO_REUSEPORT = 0xf
+- SO_RXQ_OVFL = 0x28
+- SO_SECURITY_AUTHENTICATION = 0x16
+- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
+- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
+- SO_SELECT_ERR_QUEUE = 0x2d
+- SO_SNDBUF = 0x7
+- SO_SNDBUFFORCE = 0x20
+- SO_SNDLOWAT = 0x13
+- SO_SNDTIMEO = 0x15
+- SO_TIMESTAMP = 0x1d
+- SO_TIMESTAMPING = 0x25
+- SO_TIMESTAMPNS = 0x23
+- SO_TYPE = 0x3
+- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
+- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
+- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
+- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
+- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
+- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
+- SO_VM_SOCKETS_TRUSTED = 0x5
+- SO_WIFI_STATUS = 0x29
+- SPLICE_F_GIFT = 0x8
+- SPLICE_F_MORE = 0x4
+- SPLICE_F_MOVE = 0x1
+- SPLICE_F_NONBLOCK = 0x2
+- S_BLKSIZE = 0x200
+- S_IEXEC = 0x40
+- S_IFBLK = 0x6000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFIFO = 0x1000
+- S_IFLNK = 0xa000
+- S_IFMT = 0xf000
+- S_IFREG = 0x8000
+- S_IFSOCK = 0xc000
+- S_IREAD = 0x100
+- S_IRGRP = 0x20
+- S_IROTH = 0x4
+- S_IRUSR = 0x100
+- S_IRWXG = 0x38
+- S_IRWXO = 0x7
+- S_IRWXU = 0x1c0
+- S_ISGID = 0x400
+- S_ISUID = 0x800
+- S_ISVTX = 0x200
+- S_IWGRP = 0x10
+- S_IWOTH = 0x2
+- S_IWRITE = 0x80
+- S_IWUSR = 0x80
+- S_IXGRP = 0x8
+- S_IXOTH = 0x1
+- S_IXUSR = 0x40
+- TAB0 = 0x0
+- TAB1 = 0x800
+- TAB2 = 0x1000
+- TAB3 = 0x1800
+- TABDLY = 0x1800
+- TASKSTATS_CMD_ATTR_MAX = 0x4
+- TASKSTATS_CMD_MAX = 0x2
+- TASKSTATS_GENL_NAME = "TASKSTATS"
+- TASKSTATS_GENL_VERSION = 0x1
+- TASKSTATS_TYPE_MAX = 0x6
+- TASKSTATS_VERSION = 0x8
+- TCFLSH = 0x540b
+- TCGETA = 0x5405
+- TCGETS = 0x5401
+- TCGETS2 = 0x802c542a
+- TCGETX = 0x5432
+- TCIFLUSH = 0x0
+- TCIOFF = 0x2
+- TCIOFLUSH = 0x2
+- TCION = 0x3
+- TCOFLUSH = 0x1
+- TCOOFF = 0x0
+- TCOON = 0x1
+- TCP_CC_INFO = 0x1a
+- TCP_CONGESTION = 0xd
+- TCP_COOKIE_IN_ALWAYS = 0x1
+- TCP_COOKIE_MAX = 0x10
+- TCP_COOKIE_MIN = 0x8
+- TCP_COOKIE_OUT_NEVER = 0x2
+- TCP_COOKIE_PAIR_SIZE = 0x20
+- TCP_COOKIE_TRANSACTIONS = 0xf
+- TCP_CORK = 0x3
+- TCP_DEFER_ACCEPT = 0x9
+- TCP_FASTOPEN = 0x17
+- TCP_INFO = 0xb
+- TCP_KEEPCNT = 0x6
+- TCP_KEEPIDLE = 0x4
+- TCP_KEEPINTVL = 0x5
+- TCP_LINGER2 = 0x8
+- TCP_MAXSEG = 0x2
+- TCP_MAXWIN = 0xffff
+- TCP_MAX_WINSHIFT = 0xe
+- TCP_MD5SIG = 0xe
+- TCP_MD5SIG_MAXKEYLEN = 0x50
+- TCP_MSS = 0x200
+- TCP_MSS_DEFAULT = 0x218
+- TCP_MSS_DESIRED = 0x4c4
+- TCP_NODELAY = 0x1
+- TCP_NOTSENT_LOWAT = 0x19
+- TCP_QUEUE_SEQ = 0x15
+- TCP_QUICKACK = 0xc
+- TCP_REPAIR = 0x13
+- TCP_REPAIR_OPTIONS = 0x16
+- TCP_REPAIR_QUEUE = 0x14
+- TCP_REPAIR_WINDOW = 0x1d
+- TCP_SAVED_SYN = 0x1c
+- TCP_SAVE_SYN = 0x1b
+- TCP_SYNCNT = 0x7
+- TCP_S_DATA_IN = 0x4
+- TCP_S_DATA_OUT = 0x8
+- TCP_THIN_DUPACK = 0x11
+- TCP_THIN_LINEAR_TIMEOUTS = 0x10
+- TCP_TIMESTAMP = 0x18
+- TCP_USER_TIMEOUT = 0x12
+- TCP_WINDOW_CLAMP = 0xa
+- TCSAFLUSH = 0x2
+- TCSBRK = 0x5409
+- TCSBRKP = 0x5425
+- TCSETA = 0x5406
+- TCSETAF = 0x5408
+- TCSETAW = 0x5407
+- TCSETS = 0x5402
+- TCSETS2 = 0x402c542b
+- TCSETSF = 0x5404
+- TCSETSF2 = 0x402c542d
+- TCSETSW = 0x5403
+- TCSETSW2 = 0x402c542c
+- TCSETX = 0x5433
+- TCSETXF = 0x5434
+- TCSETXW = 0x5435
+- TCXONC = 0x540a
+- TIOCCBRK = 0x5428
+- TIOCCONS = 0x541d
+- TIOCEXCL = 0x540c
+- TIOCGDEV = 0x80045432
+- TIOCGETD = 0x5424
+- TIOCGEXCL = 0x80045440
+- TIOCGICOUNT = 0x545d
+- TIOCGLCKTRMIOS = 0x5456
+- TIOCGPGRP = 0x540f
+- TIOCGPKT = 0x80045438
+- TIOCGPTLCK = 0x80045439
+- TIOCGPTN = 0x80045430
+- TIOCGRS485 = 0x542e
+- TIOCGSERIAL = 0x541e
+- TIOCGSID = 0x5429
+- TIOCGSOFTCAR = 0x5419
+- TIOCGWINSZ = 0x5413
+- TIOCINQ = 0x541b
+- TIOCLINUX = 0x541c
+- TIOCMBIC = 0x5417
+- TIOCMBIS = 0x5416
+- TIOCMGET = 0x5415
+- TIOCMIWAIT = 0x545c
+- TIOCMSET = 0x5418
+- TIOCM_CAR = 0x40
+- TIOCM_CD = 0x40
+- TIOCM_CTS = 0x20
+- TIOCM_DSR = 0x100
+- TIOCM_DTR = 0x2
+- TIOCM_LE = 0x1
+- TIOCM_RI = 0x80
+- TIOCM_RNG = 0x80
+- TIOCM_RTS = 0x4
+- TIOCM_SR = 0x10
+- TIOCM_ST = 0x8
+- TIOCNOTTY = 0x5422
+- TIOCNXCL = 0x540d
+- TIOCOUTQ = 0x5411
+- TIOCPKT = 0x5420
+- TIOCPKT_DATA = 0x0
+- TIOCPKT_DOSTOP = 0x20
+- TIOCPKT_FLUSHREAD = 0x1
+- TIOCPKT_FLUSHWRITE = 0x2
+- TIOCPKT_IOCTL = 0x40
+- TIOCPKT_NOSTOP = 0x10
+- TIOCPKT_START = 0x8
+- TIOCPKT_STOP = 0x4
+- TIOCSBRK = 0x5427
+- TIOCSCTTY = 0x540e
+- TIOCSERCONFIG = 0x5453
+- TIOCSERGETLSR = 0x5459
+- TIOCSERGETMULTI = 0x545a
+- TIOCSERGSTRUCT = 0x5458
+- TIOCSERGWILD = 0x5454
+- TIOCSERSETMULTI = 0x545b
+- TIOCSERSWILD = 0x5455
+- TIOCSER_TEMT = 0x1
+- TIOCSETD = 0x5423
+- TIOCSIG = 0x40045436
+- TIOCSLCKTRMIOS = 0x5457
+- TIOCSPGRP = 0x5410
+- TIOCSPTLCK = 0x40045431
+- TIOCSRS485 = 0x542f
+- TIOCSSERIAL = 0x541f
+- TIOCSSOFTCAR = 0x541a
+- TIOCSTI = 0x5412
+- TIOCSWINSZ = 0x5414
+- TIOCVHANGUP = 0x5437
+- TOSTOP = 0x100
+- TS_COMM_LEN = 0x20
+- TUNATTACHFILTER = 0x400854d5
+- TUNDETACHFILTER = 0x400854d6
+- TUNGETFEATURES = 0x800454cf
+- TUNGETFILTER = 0x800854db
+- TUNGETIFF = 0x800454d2
+- TUNGETSNDBUF = 0x800454d3
+- TUNGETVNETBE = 0x800454df
+- TUNGETVNETHDRSZ = 0x800454d7
+- TUNGETVNETLE = 0x800454dd
+- TUNSETDEBUG = 0x400454c9
+- TUNSETGROUP = 0x400454ce
+- TUNSETIFF = 0x400454ca
+- TUNSETIFINDEX = 0x400454da
+- TUNSETLINK = 0x400454cd
+- TUNSETNOCSUM = 0x400454c8
+- TUNSETOFFLOAD = 0x400454d0
+- TUNSETOWNER = 0x400454cc
+- TUNSETPERSIST = 0x400454cb
+- TUNSETQUEUE = 0x400454d9
+- TUNSETSNDBUF = 0x400454d4
+- TUNSETTXFILTER = 0x400454d1
+- TUNSETVNETBE = 0x400454de
+- TUNSETVNETHDRSZ = 0x400454d8
+- TUNSETVNETLE = 0x400454dc
+- UMOUNT_NOFOLLOW = 0x8
+- VDISCARD = 0xd
+- VEOF = 0x4
+- VEOL = 0xb
+- VEOL2 = 0x10
+- VERASE = 0x2
+- VINTR = 0x0
+- VKILL = 0x3
+- VLNEXT = 0xf
+- VMADDR_CID_ANY = 0xffffffff
+- VMADDR_CID_HOST = 0x2
+- VMADDR_CID_HYPERVISOR = 0x0
+- VMADDR_CID_RESERVED = 0x1
+- VMADDR_PORT_ANY = 0xffffffff
+- VMIN = 0x6
+- VM_SOCKETS_INVALID_VERSION = 0xffffffff
+- VQUIT = 0x1
+- VREPRINT = 0xc
+- VSTART = 0x8
+- VSTOP = 0x9
+- VSUSP = 0xa
+- VSWTC = 0x7
+- VT0 = 0x0
+- VT1 = 0x4000
+- VTDLY = 0x4000
+- VTIME = 0x5
+- VWERASE = 0xe
+- WALL = 0x40000000
+- WCLONE = 0x80000000
+- WCONTINUED = 0x8
+- WEXITED = 0x4
+- WNOHANG = 0x1
+- WNOTHREAD = 0x20000000
+- WNOWAIT = 0x1000000
+- WORDSIZE = 0x20
+- WSTOPPED = 0x2
+- WUNTRACED = 0x2
+- XATTR_CREATE = 0x1
+- XATTR_REPLACE = 0x2
+- XCASE = 0x4
+- XTABS = 0x1800
++ B1000000 = 0x1008
++ B115200 = 0x1002
++ B1152000 = 0x1009
++ B1500000 = 0x100a
++ B2000000 = 0x100b
++ B230400 = 0x1003
++ B2500000 = 0x100c
++ B3000000 = 0x100d
++ B3500000 = 0x100e
++ B4000000 = 0x100f
++ B460800 = 0x1004
++ B500000 = 0x1005
++ B57600 = 0x1001
++ B576000 = 0x1006
++ B921600 = 0x1007
++ BLKBSZGET = 0x80041270
++ BLKBSZSET = 0x40041271
++ BLKFLSBUF = 0x1261
++ BLKFRAGET = 0x1265
++ BLKFRASET = 0x1264
++ BLKGETSIZE = 0x1260
++ BLKGETSIZE64 = 0x80041272
++ BLKPBSZGET = 0x127b
++ BLKRAGET = 0x1263
++ BLKRASET = 0x1262
++ BLKROGET = 0x125e
++ BLKROSET = 0x125d
++ BLKRRPART = 0x125f
++ BLKSECTGET = 0x1267
++ BLKSECTSET = 0x1266
++ BLKSSZGET = 0x1268
++ BOTHER = 0x1000
++ BS1 = 0x2000
++ BSDLY = 0x2000
++ CBAUD = 0x100f
++ CBAUDEX = 0x1000
++ CIBAUD = 0x100f0000
++ CLOCAL = 0x800
++ CR1 = 0x200
++ CR2 = 0x400
++ CR3 = 0x600
++ CRDLY = 0x600
++ CREAD = 0x80
++ CS6 = 0x10
++ CS7 = 0x20
++ CS8 = 0x30
++ CSIZE = 0x30
++ CSTOPB = 0x40
++ ECHOCTL = 0x200
++ ECHOE = 0x10
++ ECHOK = 0x20
++ ECHOKE = 0x800
++ ECHONL = 0x40
++ ECHOPRT = 0x400
++ EFD_CLOEXEC = 0x80000
++ EFD_NONBLOCK = 0x800
++ EPOLL_CLOEXEC = 0x80000
++ EXTPROC = 0x10000
++ FF1 = 0x8000
++ FFDLY = 0x8000
++ FLUSHO = 0x1000
++ FS_IOC_ENABLE_VERITY = 0x40806685
++ FS_IOC_GETFLAGS = 0x80046601
++ FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
++ FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
++ FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
++ F_GETLK = 0xc
++ F_GETLK64 = 0xc
++ F_GETOWN = 0x9
++ F_RDLCK = 0x0
++ F_SETLK = 0xd
++ F_SETLK64 = 0xd
++ F_SETLKW = 0xe
++ F_SETLKW64 = 0xe
++ F_SETOWN = 0x8
++ F_UNLCK = 0x2
++ F_WRLCK = 0x1
++ HUPCL = 0x400
++ ICANON = 0x2
++ IEXTEN = 0x8000
++ IN_CLOEXEC = 0x80000
++ IN_NONBLOCK = 0x800
++ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x7b9
++ ISIG = 0x1
++ IUCLC = 0x200
++ IXOFF = 0x1000
++ IXON = 0x400
++ MAP_ANON = 0x20
++ MAP_ANONYMOUS = 0x20
++ MAP_DENYWRITE = 0x800
++ MAP_EXECUTABLE = 0x1000
++ MAP_GROWSDOWN = 0x100
++ MAP_HUGETLB = 0x40000
++ MAP_LOCKED = 0x2000
++ MAP_NONBLOCK = 0x10000
++ MAP_NORESERVE = 0x4000
++ MAP_POPULATE = 0x8000
++ MAP_STACK = 0x20000
++ MAP_SYNC = 0x80000
++ MCL_CURRENT = 0x1
++ MCL_FUTURE = 0x2
++ MCL_ONFAULT = 0x4
++ NFDBITS = 0x20
++ NLDLY = 0x100
++ NOFLSH = 0x80
++ NS_GET_NSTYPE = 0xb703
++ NS_GET_OWNER_UID = 0xb704
++ NS_GET_PARENT = 0xb702
++ NS_GET_USERNS = 0xb701
++ OLCUC = 0x2
++ ONLCR = 0x4
++ O_APPEND = 0x400
++ O_ASYNC = 0x2000
++ O_CLOEXEC = 0x80000
++ O_CREAT = 0x40
++ O_DIRECT = 0x10000
++ O_DIRECTORY = 0x4000
++ O_DSYNC = 0x1000
++ O_EXCL = 0x80
++ O_FSYNC = 0x101000
++ O_LARGEFILE = 0x20000
++ O_NDELAY = 0x800
++ O_NOATIME = 0x40000
++ O_NOCTTY = 0x100
++ O_NOFOLLOW = 0x8000
++ O_NONBLOCK = 0x800
++ O_PATH = 0x200000
++ O_RSYNC = 0x101000
++ O_SYNC = 0x101000
++ O_TMPFILE = 0x404000
++ O_TRUNC = 0x200
++ PARENB = 0x100
++ PARODD = 0x200
++ PENDIN = 0x4000
++ PERF_EVENT_IOC_DISABLE = 0x2401
++ PERF_EVENT_IOC_ENABLE = 0x2400
++ PERF_EVENT_IOC_ID = 0x80042407
++ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x4004240b
++ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
++ PERF_EVENT_IOC_PERIOD = 0x40082404
++ PERF_EVENT_IOC_QUERY_BPF = 0xc004240a
++ PERF_EVENT_IOC_REFRESH = 0x2402
++ PERF_EVENT_IOC_RESET = 0x2403
++ PERF_EVENT_IOC_SET_BPF = 0x40042408
++ PERF_EVENT_IOC_SET_FILTER = 0x40042406
++ PERF_EVENT_IOC_SET_OUTPUT = 0x2405
++ PPPIOCATTACH = 0x4004743d
++ PPPIOCATTCHAN = 0x40047438
++ PPPIOCCONNECT = 0x4004743a
++ PPPIOCDETACH = 0x4004743c
++ PPPIOCDISCONN = 0x7439
++ PPPIOCGASYNCMAP = 0x80047458
++ PPPIOCGCHAN = 0x80047437
++ PPPIOCGDEBUG = 0x80047441
++ PPPIOCGFLAGS = 0x8004745a
++ PPPIOCGIDLE = 0x8008743f
++ PPPIOCGIDLE32 = 0x8008743f
++ PPPIOCGIDLE64 = 0x8010743f
++ PPPIOCGL2TPSTATS = 0x80487436
++ PPPIOCGMRU = 0x80047453
++ PPPIOCGRASYNCMAP = 0x80047455
++ PPPIOCGUNIT = 0x80047456
++ PPPIOCGXASYNCMAP = 0x80207450
++ PPPIOCSACTIVE = 0x40087446
++ PPPIOCSASYNCMAP = 0x40047457
++ PPPIOCSCOMPRESS = 0x400c744d
++ PPPIOCSDEBUG = 0x40047440
++ PPPIOCSFLAGS = 0x40047459
++ PPPIOCSMAXCID = 0x40047451
++ PPPIOCSMRRU = 0x4004743b
++ PPPIOCSMRU = 0x40047452
++ PPPIOCSNPMODE = 0x4008744b
++ PPPIOCSPASS = 0x40087447
++ PPPIOCSRASYNCMAP = 0x40047454
++ PPPIOCSXASYNCMAP = 0x4020744f
++ PPPIOCXFERUNIT = 0x744e
++ PR_SET_PTRACER_ANY = 0xffffffff
++ PTRACE_GETCRUNCHREGS = 0x19
++ PTRACE_GETFDPIC = 0x1f
++ PTRACE_GETFDPIC_EXEC = 0x0
++ PTRACE_GETFDPIC_INTERP = 0x1
++ PTRACE_GETFPREGS = 0xe
++ PTRACE_GETHBPREGS = 0x1d
++ PTRACE_GETVFPREGS = 0x1b
++ PTRACE_GETWMMXREGS = 0x12
++ PTRACE_GET_THREAD_AREA = 0x16
++ PTRACE_OLDSETOPTIONS = 0x15
++ PTRACE_SETCRUNCHREGS = 0x1a
++ PTRACE_SETFPREGS = 0xf
++ PTRACE_SETHBPREGS = 0x1e
++ PTRACE_SETVFPREGS = 0x1c
++ PTRACE_SETWMMXREGS = 0x13
++ PTRACE_SET_SYSCALL = 0x17
++ PT_DATA_ADDR = 0x10004
++ PT_TEXT_ADDR = 0x10000
++ PT_TEXT_END_ADDR = 0x10008
++ RLIMIT_AS = 0x9
++ RLIMIT_MEMLOCK = 0x8
++ RLIMIT_NOFILE = 0x7
++ RLIMIT_NPROC = 0x6
++ RLIMIT_RSS = 0x5
++ RNDADDENTROPY = 0x40085203
++ RNDADDTOENTCNT = 0x40045201
++ RNDCLEARPOOL = 0x5206
++ RNDGETENTCNT = 0x80045200
++ RNDGETPOOL = 0x80085202
++ RNDRESEEDCRNG = 0x5207
++ RNDZAPENTCNT = 0x5204
++ RTC_AIE_OFF = 0x7002
++ RTC_AIE_ON = 0x7001
++ RTC_ALM_READ = 0x80247008
++ RTC_ALM_SET = 0x40247007
++ RTC_EPOCH_READ = 0x8004700d
++ RTC_EPOCH_SET = 0x4004700e
++ RTC_IRQP_READ = 0x8004700b
++ RTC_IRQP_SET = 0x4004700c
++ RTC_PIE_OFF = 0x7006
++ RTC_PIE_ON = 0x7005
++ RTC_PLL_GET = 0x801c7011
++ RTC_PLL_SET = 0x401c7012
++ RTC_RD_TIME = 0x80247009
++ RTC_SET_TIME = 0x4024700a
++ RTC_UIE_OFF = 0x7004
++ RTC_UIE_ON = 0x7003
++ RTC_VL_CLR = 0x7014
++ RTC_VL_READ = 0x80047013
++ RTC_WIE_OFF = 0x7010
++ RTC_WIE_ON = 0x700f
++ RTC_WKALM_RD = 0x80287010
++ RTC_WKALM_SET = 0x4028700f
++ SCM_TIMESTAMPING = 0x25
++ SCM_TIMESTAMPING_OPT_STATS = 0x36
++ SCM_TIMESTAMPING_PKTINFO = 0x3a
++ SCM_TIMESTAMPNS = 0x23
++ SCM_TXTIME = 0x3d
++ SCM_WIFI_STATUS = 0x29
++ SFD_CLOEXEC = 0x80000
++ SFD_NONBLOCK = 0x800
++ SIOCATMARK = 0x8905
++ SIOCGPGRP = 0x8904
++ SIOCGSTAMPNS_NEW = 0x80108907
++ SIOCGSTAMP_NEW = 0x80108906
++ SIOCINQ = 0x541b
++ SIOCOUTQ = 0x5411
++ SIOCSPGRP = 0x8902
++ SOCK_CLOEXEC = 0x80000
++ SOCK_DGRAM = 0x2
++ SOCK_NONBLOCK = 0x800
++ SOCK_STREAM = 0x1
++ SOL_SOCKET = 0x1
++ SO_ACCEPTCONN = 0x1e
++ SO_ATTACH_BPF = 0x32
++ SO_ATTACH_REUSEPORT_CBPF = 0x33
++ SO_ATTACH_REUSEPORT_EBPF = 0x34
++ SO_BINDTODEVICE = 0x19
++ SO_BINDTOIFINDEX = 0x3e
++ SO_BPF_EXTENSIONS = 0x30
++ SO_BROADCAST = 0x6
++ SO_BSDCOMPAT = 0xe
++ SO_BUSY_POLL = 0x2e
++ SO_CNX_ADVICE = 0x35
++ SO_COOKIE = 0x39
++ SO_DETACH_REUSEPORT_BPF = 0x44
++ SO_DOMAIN = 0x27
++ SO_DONTROUTE = 0x5
++ SO_ERROR = 0x4
++ SO_INCOMING_CPU = 0x31
++ SO_INCOMING_NAPI_ID = 0x38
++ SO_KEEPALIVE = 0x9
++ SO_LINGER = 0xd
++ SO_LOCK_FILTER = 0x2c
++ SO_MARK = 0x24
++ SO_MAX_PACING_RATE = 0x2f
++ SO_MEMINFO = 0x37
++ SO_NOFCS = 0x2b
++ SO_OOBINLINE = 0xa
++ SO_PASSCRED = 0x10
++ SO_PASSSEC = 0x22
++ SO_PEEK_OFF = 0x2a
++ SO_PEERCRED = 0x11
++ SO_PEERGROUPS = 0x3b
++ SO_PEERSEC = 0x1f
++ SO_PROTOCOL = 0x26
++ SO_RCVBUF = 0x8
++ SO_RCVBUFFORCE = 0x21
++ SO_RCVLOWAT = 0x12
++ SO_RCVTIMEO = 0x14
++ SO_RCVTIMEO_NEW = 0x42
++ SO_RCVTIMEO_OLD = 0x14
++ SO_REUSEADDR = 0x2
++ SO_REUSEPORT = 0xf
++ SO_RXQ_OVFL = 0x28
++ SO_SECURITY_AUTHENTICATION = 0x16
++ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
++ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
++ SO_SELECT_ERR_QUEUE = 0x2d
++ SO_SNDBUF = 0x7
++ SO_SNDBUFFORCE = 0x20
++ SO_SNDLOWAT = 0x13
++ SO_SNDTIMEO = 0x15
++ SO_SNDTIMEO_NEW = 0x43
++ SO_SNDTIMEO_OLD = 0x15
++ SO_TIMESTAMPING = 0x25
++ SO_TIMESTAMPING_NEW = 0x41
++ SO_TIMESTAMPING_OLD = 0x25
++ SO_TIMESTAMPNS = 0x23
++ SO_TIMESTAMPNS_NEW = 0x40
++ SO_TIMESTAMPNS_OLD = 0x23
++ SO_TIMESTAMP_NEW = 0x3f
++ SO_TXTIME = 0x3d
++ SO_TYPE = 0x3
++ SO_WIFI_STATUS = 0x29
++ SO_ZEROCOPY = 0x3c
++ TAB1 = 0x800
++ TAB2 = 0x1000
++ TAB3 = 0x1800
++ TABDLY = 0x1800
++ TCFLSH = 0x540b
++ TCGETA = 0x5405
++ TCGETS = 0x5401
++ TCGETS2 = 0x802c542a
++ TCGETX = 0x5432
++ TCSAFLUSH = 0x2
++ TCSBRK = 0x5409
++ TCSBRKP = 0x5425
++ TCSETA = 0x5406
++ TCSETAF = 0x5408
++ TCSETAW = 0x5407
++ TCSETS = 0x5402
++ TCSETS2 = 0x402c542b
++ TCSETSF = 0x5404
++ TCSETSF2 = 0x402c542d
++ TCSETSW = 0x5403
++ TCSETSW2 = 0x402c542c
++ TCSETX = 0x5433
++ TCSETXF = 0x5434
++ TCSETXW = 0x5435
++ TCXONC = 0x540a
++ TIOCCBRK = 0x5428
++ TIOCCONS = 0x541d
++ TIOCEXCL = 0x540c
++ TIOCGDEV = 0x80045432
++ TIOCGETD = 0x5424
++ TIOCGEXCL = 0x80045440
++ TIOCGICOUNT = 0x545d
++ TIOCGISO7816 = 0x80285442
++ TIOCGLCKTRMIOS = 0x5456
++ TIOCGPGRP = 0x540f
++ TIOCGPKT = 0x80045438
++ TIOCGPTLCK = 0x80045439
++ TIOCGPTN = 0x80045430
++ TIOCGPTPEER = 0x5441
++ TIOCGRS485 = 0x542e
++ TIOCGSERIAL = 0x541e
++ TIOCGSID = 0x5429
++ TIOCGSOFTCAR = 0x5419
++ TIOCGWINSZ = 0x5413
++ TIOCINQ = 0x541b
++ TIOCLINUX = 0x541c
++ TIOCMBIC = 0x5417
++ TIOCMBIS = 0x5416
++ TIOCMGET = 0x5415
++ TIOCMIWAIT = 0x545c
++ TIOCMSET = 0x5418
++ TIOCM_CAR = 0x40
++ TIOCM_CD = 0x40
++ TIOCM_CTS = 0x20
++ TIOCM_DSR = 0x100
++ TIOCM_RI = 0x80
++ TIOCM_RNG = 0x80
++ TIOCM_SR = 0x10
++ TIOCM_ST = 0x8
++ TIOCNOTTY = 0x5422
++ TIOCNXCL = 0x540d
++ TIOCOUTQ = 0x5411
++ TIOCPKT = 0x5420
++ TIOCSBRK = 0x5427
++ TIOCSCTTY = 0x540e
++ TIOCSERCONFIG = 0x5453
++ TIOCSERGETLSR = 0x5459
++ TIOCSERGETMULTI = 0x545a
++ TIOCSERGSTRUCT = 0x5458
++ TIOCSERGWILD = 0x5454
++ TIOCSERSETMULTI = 0x545b
++ TIOCSERSWILD = 0x5455
++ TIOCSER_TEMT = 0x1
++ TIOCSETD = 0x5423
++ TIOCSIG = 0x40045436
++ TIOCSISO7816 = 0xc0285443
++ TIOCSLCKTRMIOS = 0x5457
++ TIOCSPGRP = 0x5410
++ TIOCSPTLCK = 0x40045431
++ TIOCSRS485 = 0x542f
++ TIOCSSERIAL = 0x541f
++ TIOCSSOFTCAR = 0x541a
++ TIOCSTI = 0x5412
++ TIOCSWINSZ = 0x5414
++ TIOCVHANGUP = 0x5437
++ TOSTOP = 0x100
++ TUNATTACHFILTER = 0x400854d5
++ TUNDETACHFILTER = 0x400854d6
++ TUNGETDEVNETNS = 0x54e3
++ TUNGETFEATURES = 0x800454cf
++ TUNGETFILTER = 0x800854db
++ TUNGETIFF = 0x800454d2
++ TUNGETSNDBUF = 0x800454d3
++ TUNGETVNETBE = 0x800454df
++ TUNGETVNETHDRSZ = 0x800454d7
++ TUNGETVNETLE = 0x800454dd
++ TUNSETCARRIER = 0x400454e2
++ TUNSETDEBUG = 0x400454c9
++ TUNSETFILTEREBPF = 0x800454e1
++ TUNSETGROUP = 0x400454ce
++ TUNSETIFF = 0x400454ca
++ TUNSETIFINDEX = 0x400454da
++ TUNSETLINK = 0x400454cd
++ TUNSETNOCSUM = 0x400454c8
++ TUNSETOFFLOAD = 0x400454d0
++ TUNSETOWNER = 0x400454cc
++ TUNSETPERSIST = 0x400454cb
++ TUNSETQUEUE = 0x400454d9
++ TUNSETSNDBUF = 0x400454d4
++ TUNSETSTEERINGEBPF = 0x800454e0
++ TUNSETTXFILTER = 0x400454d1
++ TUNSETVNETBE = 0x400454de
++ TUNSETVNETHDRSZ = 0x400454d8
++ TUNSETVNETLE = 0x400454dc
++ UBI_IOCATT = 0x40186f40
++ UBI_IOCDET = 0x40046f41
++ UBI_IOCEBCH = 0x40044f02
++ UBI_IOCEBER = 0x40044f01
++ UBI_IOCEBISMAP = 0x80044f05
++ UBI_IOCEBMAP = 0x40084f03
++ UBI_IOCEBUNMAP = 0x40044f04
++ UBI_IOCMKVOL = 0x40986f00
++ UBI_IOCRMVOL = 0x40046f01
++ UBI_IOCRNVOL = 0x51106f03
++ UBI_IOCRPEB = 0x40046f04
++ UBI_IOCRSVOL = 0x400c6f02
++ UBI_IOCSETVOLPROP = 0x40104f06
++ UBI_IOCSPEB = 0x40046f05
++ UBI_IOCVOLCRBLK = 0x40804f07
++ UBI_IOCVOLRMBLK = 0x4f08
++ UBI_IOCVOLUP = 0x40084f00
++ VDISCARD = 0xd
++ VEOF = 0x4
++ VEOL = 0xb
++ VEOL2 = 0x10
++ VMIN = 0x6
++ VREPRINT = 0xc
++ VSTART = 0x8
++ VSTOP = 0x9
++ VSUSP = 0xa
++ VSWTC = 0x7
++ VT1 = 0x4000
++ VTDLY = 0x4000
++ VTIME = 0x5
++ VWERASE = 0xe
++ WDIOC_GETBOOTSTATUS = 0x80045702
++ WDIOC_GETPRETIMEOUT = 0x80045709
++ WDIOC_GETSTATUS = 0x80045701
++ WDIOC_GETSUPPORT = 0x80285700
++ WDIOC_GETTEMP = 0x80045703
++ WDIOC_GETTIMELEFT = 0x8004570a
++ WDIOC_GETTIMEOUT = 0x80045707
++ WDIOC_KEEPALIVE = 0x80045705
++ WDIOC_SETOPTIONS = 0x80045704
++ WORDSIZE = 0x20
++ XCASE = 0x4
++ XTABS = 0x1800
+ )
+
+ // Errors
+ const (
+- E2BIG = syscall.Errno(0x7)
+- EACCES = syscall.Errno(0xd)
+ EADDRINUSE = syscall.Errno(0x62)
+ EADDRNOTAVAIL = syscall.Errno(0x63)
+ EADV = syscall.Errno(0x44)
+ EAFNOSUPPORT = syscall.Errno(0x61)
+- EAGAIN = syscall.Errno(0xb)
+ EALREADY = syscall.Errno(0x72)
+ EBADE = syscall.Errno(0x34)
+- EBADF = syscall.Errno(0x9)
+ EBADFD = syscall.Errno(0x4d)
+ EBADMSG = syscall.Errno(0x4a)
+ EBADR = syscall.Errno(0x35)
+ EBADRQC = syscall.Errno(0x38)
+ EBADSLT = syscall.Errno(0x39)
+ EBFONT = syscall.Errno(0x3b)
+- EBUSY = syscall.Errno(0x10)
+ ECANCELED = syscall.Errno(0x7d)
+- ECHILD = syscall.Errno(0xa)
+ ECHRNG = syscall.Errno(0x2c)
+ ECOMM = syscall.Errno(0x46)
+ ECONNABORTED = syscall.Errno(0x67)
+@@ -1886,23 +506,15 @@ const (
+ EDEADLK = syscall.Errno(0x23)
+ EDEADLOCK = syscall.Errno(0x23)
+ EDESTADDRREQ = syscall.Errno(0x59)
+- EDOM = syscall.Errno(0x21)
+ EDOTDOT = syscall.Errno(0x49)
+ EDQUOT = syscall.Errno(0x7a)
+- EEXIST = syscall.Errno(0x11)
+- EFAULT = syscall.Errno(0xe)
+- EFBIG = syscall.Errno(0x1b)
+ EHOSTDOWN = syscall.Errno(0x70)
+ EHOSTUNREACH = syscall.Errno(0x71)
+ EHWPOISON = syscall.Errno(0x85)
+ EIDRM = syscall.Errno(0x2b)
+ EILSEQ = syscall.Errno(0x54)
+ EINPROGRESS = syscall.Errno(0x73)
+- EINTR = syscall.Errno(0x4)
+- EINVAL = syscall.Errno(0x16)
+- EIO = syscall.Errno(0x5)
+ EISCONN = syscall.Errno(0x6a)
+- EISDIR = syscall.Errno(0x15)
+ EISNAM = syscall.Errno(0x78)
+ EKEYEXPIRED = syscall.Errno(0x7f)
+ EKEYREJECTED = syscall.Errno(0x81)
+@@ -1919,8 +531,6 @@ const (
+ ELNRNG = syscall.Errno(0x30)
+ ELOOP = syscall.Errno(0x28)
+ EMEDIUMTYPE = syscall.Errno(0x7c)
+- EMFILE = syscall.Errno(0x18)
+- EMLINK = syscall.Errno(0x1f)
+ EMSGSIZE = syscall.Errno(0x5a)
+ EMULTIHOP = syscall.Errno(0x48)
+ ENAMETOOLONG = syscall.Errno(0x24)
+@@ -1928,103 +538,70 @@ const (
+ ENETDOWN = syscall.Errno(0x64)
+ ENETRESET = syscall.Errno(0x66)
+ ENETUNREACH = syscall.Errno(0x65)
+- ENFILE = syscall.Errno(0x17)
+ ENOANO = syscall.Errno(0x37)
+ ENOBUFS = syscall.Errno(0x69)
+ ENOCSI = syscall.Errno(0x32)
+ ENODATA = syscall.Errno(0x3d)
+- ENODEV = syscall.Errno(0x13)
+- ENOENT = syscall.Errno(0x2)
+- ENOEXEC = syscall.Errno(0x8)
+ ENOKEY = syscall.Errno(0x7e)
+ ENOLCK = syscall.Errno(0x25)
+ ENOLINK = syscall.Errno(0x43)
+ ENOMEDIUM = syscall.Errno(0x7b)
+- ENOMEM = syscall.Errno(0xc)
+ ENOMSG = syscall.Errno(0x2a)
+ ENONET = syscall.Errno(0x40)
+ ENOPKG = syscall.Errno(0x41)
+ ENOPROTOOPT = syscall.Errno(0x5c)
+- ENOSPC = syscall.Errno(0x1c)
+ ENOSR = syscall.Errno(0x3f)
+ ENOSTR = syscall.Errno(0x3c)
+ ENOSYS = syscall.Errno(0x26)
+- ENOTBLK = syscall.Errno(0xf)
+ ENOTCONN = syscall.Errno(0x6b)
+- ENOTDIR = syscall.Errno(0x14)
+ ENOTEMPTY = syscall.Errno(0x27)
+ ENOTNAM = syscall.Errno(0x76)
+ ENOTRECOVERABLE = syscall.Errno(0x83)
+ ENOTSOCK = syscall.Errno(0x58)
+ ENOTSUP = syscall.Errno(0x5f)
+- ENOTTY = syscall.Errno(0x19)
+ ENOTUNIQ = syscall.Errno(0x4c)
+- ENXIO = syscall.Errno(0x6)
+ EOPNOTSUPP = syscall.Errno(0x5f)
+ EOVERFLOW = syscall.Errno(0x4b)
+ EOWNERDEAD = syscall.Errno(0x82)
+- EPERM = syscall.Errno(0x1)
+ EPFNOSUPPORT = syscall.Errno(0x60)
+- EPIPE = syscall.Errno(0x20)
+ EPROTO = syscall.Errno(0x47)
+ EPROTONOSUPPORT = syscall.Errno(0x5d)
+ EPROTOTYPE = syscall.Errno(0x5b)
+- ERANGE = syscall.Errno(0x22)
+ EREMCHG = syscall.Errno(0x4e)
+ EREMOTE = syscall.Errno(0x42)
+ EREMOTEIO = syscall.Errno(0x79)
+ ERESTART = syscall.Errno(0x55)
+ ERFKILL = syscall.Errno(0x84)
+- EROFS = syscall.Errno(0x1e)
+ ESHUTDOWN = syscall.Errno(0x6c)
+ ESOCKTNOSUPPORT = syscall.Errno(0x5e)
+- ESPIPE = syscall.Errno(0x1d)
+- ESRCH = syscall.Errno(0x3)
+ ESRMNT = syscall.Errno(0x45)
+ ESTALE = syscall.Errno(0x74)
+ ESTRPIPE = syscall.Errno(0x56)
+ ETIME = syscall.Errno(0x3e)
+ ETIMEDOUT = syscall.Errno(0x6e)
+ ETOOMANYREFS = syscall.Errno(0x6d)
+- ETXTBSY = syscall.Errno(0x1a)
+ EUCLEAN = syscall.Errno(0x75)
+ EUNATCH = syscall.Errno(0x31)
+ EUSERS = syscall.Errno(0x57)
+- EWOULDBLOCK = syscall.Errno(0xb)
+- EXDEV = syscall.Errno(0x12)
+ EXFULL = syscall.Errno(0x36)
+ )
+
+ // Signals
+ const (
+- SIGABRT = syscall.Signal(0x6)
+- SIGALRM = syscall.Signal(0xe)
+ SIGBUS = syscall.Signal(0x7)
+ SIGCHLD = syscall.Signal(0x11)
+ SIGCLD = syscall.Signal(0x11)
+ SIGCONT = syscall.Signal(0x12)
+- SIGFPE = syscall.Signal(0x8)
+- SIGHUP = syscall.Signal(0x1)
+- SIGILL = syscall.Signal(0x4)
+- SIGINT = syscall.Signal(0x2)
+ SIGIO = syscall.Signal(0x1d)
+- SIGIOT = syscall.Signal(0x6)
+- SIGKILL = syscall.Signal(0x9)
+- SIGPIPE = syscall.Signal(0xd)
+ SIGPOLL = syscall.Signal(0x1d)
+ SIGPROF = syscall.Signal(0x1b)
+ SIGPWR = syscall.Signal(0x1e)
+- SIGQUIT = syscall.Signal(0x3)
+- SIGSEGV = syscall.Signal(0xb)
+ SIGSTKFLT = syscall.Signal(0x10)
+ SIGSTOP = syscall.Signal(0x13)
+ SIGSYS = syscall.Signal(0x1f)
+- SIGTERM = syscall.Signal(0xf)
+- SIGTRAP = syscall.Signal(0x5)
+ SIGTSTP = syscall.Signal(0x14)
+ SIGTTIN = syscall.Signal(0x15)
+ SIGTTOU = syscall.Signal(0x16)
+- SIGUNUSED = syscall.Signal(0x1f)
+ SIGURG = syscall.Signal(0x17)
+ SIGUSR1 = syscall.Signal(0xa)
+ SIGUSR2 = syscall.Signal(0xc)
+@@ -2035,171 +612,179 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "no such device or address",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource temporarily unavailable",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device or resource busy",
+- 17: "file exists",
+- 18: "invalid cross-device link",
+- 19: "no such device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "numerical result out of range",
+- 35: "resource deadlock avoided",
+- 36: "file name too long",
+- 37: "no locks available",
+- 38: "function not implemented",
+- 39: "directory not empty",
+- 40: "too many levels of symbolic links",
+- 42: "no message of desired type",
+- 43: "identifier removed",
+- 44: "channel number out of range",
+- 45: "level 2 not synchronized",
+- 46: "level 3 halted",
+- 47: "level 3 reset",
+- 48: "link number out of range",
+- 49: "protocol driver not attached",
+- 50: "no CSI structure available",
+- 51: "level 2 halted",
+- 52: "invalid exchange",
+- 53: "invalid request descriptor",
+- 54: "exchange full",
+- 55: "no anode",
+- 56: "invalid request code",
+- 57: "invalid slot",
+- 59: "bad font file format",
+- 60: "device not a stream",
+- 61: "no data available",
+- 62: "timer expired",
+- 63: "out of streams resources",
+- 64: "machine is not on the network",
+- 65: "package not installed",
+- 66: "object is remote",
+- 67: "link has been severed",
+- 68: "advertise error",
+- 69: "srmount error",
+- 70: "communication error on send",
+- 71: "protocol error",
+- 72: "multihop attempted",
+- 73: "RFS specific error",
+- 74: "bad message",
+- 75: "value too large for defined data type",
+- 76: "name not unique on network",
+- 77: "file descriptor in bad state",
+- 78: "remote address changed",
+- 79: "can not access a needed shared library",
+- 80: "accessing a corrupted shared library",
+- 81: ".lib section in a.out corrupted",
+- 82: "attempting to link in too many shared libraries",
+- 83: "cannot exec a shared library directly",
+- 84: "invalid or incomplete multibyte or wide character",
+- 85: "interrupted system call should be restarted",
+- 86: "streams pipe error",
+- 87: "too many users",
+- 88: "socket operation on non-socket",
+- 89: "destination address required",
+- 90: "message too long",
+- 91: "protocol wrong type for socket",
+- 92: "protocol not available",
+- 93: "protocol not supported",
+- 94: "socket type not supported",
+- 95: "operation not supported",
+- 96: "protocol family not supported",
+- 97: "address family not supported by protocol",
+- 98: "address already in use",
+- 99: "cannot assign requested address",
+- 100: "network is down",
+- 101: "network is unreachable",
+- 102: "network dropped connection on reset",
+- 103: "software caused connection abort",
+- 104: "connection reset by peer",
+- 105: "no buffer space available",
+- 106: "transport endpoint is already connected",
+- 107: "transport endpoint is not connected",
+- 108: "cannot send after transport endpoint shutdown",
+- 109: "too many references: cannot splice",
+- 110: "connection timed out",
+- 111: "connection refused",
+- 112: "host is down",
+- 113: "no route to host",
+- 114: "operation already in progress",
+- 115: "operation now in progress",
+- 116: "stale file handle",
+- 117: "structure needs cleaning",
+- 118: "not a XENIX named type file",
+- 119: "no XENIX semaphores available",
+- 120: "is a named type file",
+- 121: "remote I/O error",
+- 122: "disk quota exceeded",
+- 123: "no medium found",
+- 124: "wrong medium type",
+- 125: "operation canceled",
+- 126: "required key not available",
+- 127: "key has expired",
+- 128: "key has been revoked",
+- 129: "key was rejected by service",
+- 130: "owner died",
+- 131: "state not recoverable",
+- 132: "operation not possible due to RF-kill",
+- 133: "memory page has hardware error",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "no such device or address"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EAGAIN", "resource temporarily unavailable"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device or resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "invalid cross-device link"},
++ {19, "ENODEV", "no such device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "numerical result out of range"},
++ {35, "EDEADLK", "resource deadlock avoided"},
++ {36, "ENAMETOOLONG", "file name too long"},
++ {37, "ENOLCK", "no locks available"},
++ {38, "ENOSYS", "function not implemented"},
++ {39, "ENOTEMPTY", "directory not empty"},
++ {40, "ELOOP", "too many levels of symbolic links"},
++ {42, "ENOMSG", "no message of desired type"},
++ {43, "EIDRM", "identifier removed"},
++ {44, "ECHRNG", "channel number out of range"},
++ {45, "EL2NSYNC", "level 2 not synchronized"},
++ {46, "EL3HLT", "level 3 halted"},
++ {47, "EL3RST", "level 3 reset"},
++ {48, "ELNRNG", "link number out of range"},
++ {49, "EUNATCH", "protocol driver not attached"},
++ {50, "ENOCSI", "no CSI structure available"},
++ {51, "EL2HLT", "level 2 halted"},
++ {52, "EBADE", "invalid exchange"},
++ {53, "EBADR", "invalid request descriptor"},
++ {54, "EXFULL", "exchange full"},
++ {55, "ENOANO", "no anode"},
++ {56, "EBADRQC", "invalid request code"},
++ {57, "EBADSLT", "invalid slot"},
++ {59, "EBFONT", "bad font file format"},
++ {60, "ENOSTR", "device not a stream"},
++ {61, "ENODATA", "no data available"},
++ {62, "ETIME", "timer expired"},
++ {63, "ENOSR", "out of streams resources"},
++ {64, "ENONET", "machine is not on the network"},
++ {65, "ENOPKG", "package not installed"},
++ {66, "EREMOTE", "object is remote"},
++ {67, "ENOLINK", "link has been severed"},
++ {68, "EADV", "advertise error"},
++ {69, "ESRMNT", "srmount error"},
++ {70, "ECOMM", "communication error on send"},
++ {71, "EPROTO", "protocol error"},
++ {72, "EMULTIHOP", "multihop attempted"},
++ {73, "EDOTDOT", "RFS specific error"},
++ {74, "EBADMSG", "bad message"},
++ {75, "EOVERFLOW", "value too large for defined data type"},
++ {76, "ENOTUNIQ", "name not unique on network"},
++ {77, "EBADFD", "file descriptor in bad state"},
++ {78, "EREMCHG", "remote address changed"},
++ {79, "ELIBACC", "can not access a needed shared library"},
++ {80, "ELIBBAD", "accessing a corrupted shared library"},
++ {81, "ELIBSCN", ".lib section in a.out corrupted"},
++ {82, "ELIBMAX", "attempting to link in too many shared libraries"},
++ {83, "ELIBEXEC", "cannot exec a shared library directly"},
++ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"},
++ {85, "ERESTART", "interrupted system call should be restarted"},
++ {86, "ESTRPIPE", "streams pipe error"},
++ {87, "EUSERS", "too many users"},
++ {88, "ENOTSOCK", "socket operation on non-socket"},
++ {89, "EDESTADDRREQ", "destination address required"},
++ {90, "EMSGSIZE", "message too long"},
++ {91, "EPROTOTYPE", "protocol wrong type for socket"},
++ {92, "ENOPROTOOPT", "protocol not available"},
++ {93, "EPROTONOSUPPORT", "protocol not supported"},
++ {94, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {95, "ENOTSUP", "operation not supported"},
++ {96, "EPFNOSUPPORT", "protocol family not supported"},
++ {97, "EAFNOSUPPORT", "address family not supported by protocol"},
++ {98, "EADDRINUSE", "address already in use"},
++ {99, "EADDRNOTAVAIL", "cannot assign requested address"},
++ {100, "ENETDOWN", "network is down"},
++ {101, "ENETUNREACH", "network is unreachable"},
++ {102, "ENETRESET", "network dropped connection on reset"},
++ {103, "ECONNABORTED", "software caused connection abort"},
++ {104, "ECONNRESET", "connection reset by peer"},
++ {105, "ENOBUFS", "no buffer space available"},
++ {106, "EISCONN", "transport endpoint is already connected"},
++ {107, "ENOTCONN", "transport endpoint is not connected"},
++ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
++ {109, "ETOOMANYREFS", "too many references: cannot splice"},
++ {110, "ETIMEDOUT", "connection timed out"},
++ {111, "ECONNREFUSED", "connection refused"},
++ {112, "EHOSTDOWN", "host is down"},
++ {113, "EHOSTUNREACH", "no route to host"},
++ {114, "EALREADY", "operation already in progress"},
++ {115, "EINPROGRESS", "operation now in progress"},
++ {116, "ESTALE", "stale file handle"},
++ {117, "EUCLEAN", "structure needs cleaning"},
++ {118, "ENOTNAM", "not a XENIX named type file"},
++ {119, "ENAVAIL", "no XENIX semaphores available"},
++ {120, "EISNAM", "is a named type file"},
++ {121, "EREMOTEIO", "remote I/O error"},
++ {122, "EDQUOT", "disk quota exceeded"},
++ {123, "ENOMEDIUM", "no medium found"},
++ {124, "EMEDIUMTYPE", "wrong medium type"},
++ {125, "ECANCELED", "operation canceled"},
++ {126, "ENOKEY", "required key not available"},
++ {127, "EKEYEXPIRED", "key has expired"},
++ {128, "EKEYREVOKED", "key has been revoked"},
++ {129, "EKEYREJECTED", "key was rejected by service"},
++ {130, "EOWNERDEAD", "owner died"},
++ {131, "ENOTRECOVERABLE", "state not recoverable"},
++ {132, "ERFKILL", "operation not possible due to RF-kill"},
++ {133, "EHWPOISON", "memory page has hardware error"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/breakpoint trap",
+- 6: "aborted",
+- 7: "bus error",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "user defined signal 1",
+- 11: "segmentation fault",
+- 12: "user defined signal 2",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "stack fault",
+- 17: "child exited",
+- 18: "continued",
+- 19: "stopped (signal)",
+- 20: "stopped",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "urgent I/O condition",
+- 24: "CPU time limit exceeded",
+- 25: "file size limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window changed",
+- 29: "I/O possible",
+- 30: "power failure",
+- 31: "bad system call",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/breakpoint trap"},
++ {6, "SIGABRT", "aborted"},
++ {7, "SIGBUS", "bus error"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGUSR1", "user defined signal 1"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGUSR2", "user defined signal 2"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGSTKFLT", "stack fault"},
++ {17, "SIGCHLD", "child exited"},
++ {18, "SIGCONT", "continued"},
++ {19, "SIGSTOP", "stopped (signal)"},
++ {20, "SIGTSTP", "stopped"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGURG", "urgent I/O condition"},
++ {24, "SIGXCPU", "CPU time limit exceeded"},
++ {25, "SIGXFSZ", "file size limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window changed"},
++ {29, "SIGIO", "I/O possible"},
++ {30, "SIGPWR", "power failure"},
++ {31, "SIGSYS", "bad system call"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go
+index c0ecd47c..9ee8d1bc 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go
+@@ -3,7 +3,7 @@
+
+ // +build arm64,linux
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/include -fsigned-char _const.go
+
+ package unix
+@@ -11,1858 +11,480 @@ package unix
+ import "syscall"
+
+ const (
+- AF_ALG = 0x26
+- AF_APPLETALK = 0x5
+- AF_ASH = 0x12
+- AF_ATMPVC = 0x8
+- AF_ATMSVC = 0x14
+- AF_AX25 = 0x3
+- AF_BLUETOOTH = 0x1f
+- AF_BRIDGE = 0x7
+- AF_CAIF = 0x25
+- AF_CAN = 0x1d
+- AF_DECnet = 0xc
+- AF_ECONET = 0x13
+- AF_FILE = 0x1
+- AF_IB = 0x1b
+- AF_IEEE802154 = 0x24
+- AF_INET = 0x2
+- AF_INET6 = 0xa
+- AF_IPX = 0x4
+- AF_IRDA = 0x17
+- AF_ISDN = 0x22
+- AF_IUCV = 0x20
+- AF_KCM = 0x29
+- AF_KEY = 0xf
+- AF_LLC = 0x1a
+- AF_LOCAL = 0x1
+- AF_MAX = 0x2b
+- AF_MPLS = 0x1c
+- AF_NETBEUI = 0xd
+- AF_NETLINK = 0x10
+- AF_NETROM = 0x6
+- AF_NFC = 0x27
+- AF_PACKET = 0x11
+- AF_PHONET = 0x23
+- AF_PPPOX = 0x18
+- AF_QIPCRTR = 0x2a
+- AF_RDS = 0x15
+- AF_ROSE = 0xb
+- AF_ROUTE = 0x10
+- AF_RXRPC = 0x21
+- AF_SECURITY = 0xe
+- AF_SNA = 0x16
+- AF_TIPC = 0x1e
+- AF_UNIX = 0x1
+- AF_UNSPEC = 0x0
+- AF_VSOCK = 0x28
+- AF_WANPIPE = 0x19
+- AF_X25 = 0x9
+- ALG_OP_DECRYPT = 0x0
+- ALG_OP_ENCRYPT = 0x1
+- ALG_SET_AEAD_ASSOCLEN = 0x4
+- ALG_SET_AEAD_AUTHSIZE = 0x5
+- ALG_SET_IV = 0x2
+- ALG_SET_KEY = 0x1
+- ALG_SET_OP = 0x3
+- ARPHRD_6LOWPAN = 0x339
+- ARPHRD_ADAPT = 0x108
+- ARPHRD_APPLETLK = 0x8
+- ARPHRD_ARCNET = 0x7
+- ARPHRD_ASH = 0x30d
+- ARPHRD_ATM = 0x13
+- ARPHRD_AX25 = 0x3
+- ARPHRD_BIF = 0x307
+- ARPHRD_CAIF = 0x336
+- ARPHRD_CAN = 0x118
+- ARPHRD_CHAOS = 0x5
+- ARPHRD_CISCO = 0x201
+- ARPHRD_CSLIP = 0x101
+- ARPHRD_CSLIP6 = 0x103
+- ARPHRD_DDCMP = 0x205
+- ARPHRD_DLCI = 0xf
+- ARPHRD_ECONET = 0x30e
+- ARPHRD_EETHER = 0x2
+- ARPHRD_ETHER = 0x1
+- ARPHRD_EUI64 = 0x1b
+- ARPHRD_FCAL = 0x311
+- ARPHRD_FCFABRIC = 0x313
+- ARPHRD_FCPL = 0x312
+- ARPHRD_FCPP = 0x310
+- ARPHRD_FDDI = 0x306
+- ARPHRD_FRAD = 0x302
+- ARPHRD_HDLC = 0x201
+- ARPHRD_HIPPI = 0x30c
+- ARPHRD_HWX25 = 0x110
+- ARPHRD_IEEE1394 = 0x18
+- ARPHRD_IEEE802 = 0x6
+- ARPHRD_IEEE80211 = 0x321
+- ARPHRD_IEEE80211_PRISM = 0x322
+- ARPHRD_IEEE80211_RADIOTAP = 0x323
+- ARPHRD_IEEE802154 = 0x324
+- ARPHRD_IEEE802154_MONITOR = 0x325
+- ARPHRD_IEEE802_TR = 0x320
+- ARPHRD_INFINIBAND = 0x20
+- ARPHRD_IP6GRE = 0x337
+- ARPHRD_IPDDP = 0x309
+- ARPHRD_IPGRE = 0x30a
+- ARPHRD_IRDA = 0x30f
+- ARPHRD_LAPB = 0x204
+- ARPHRD_LOCALTLK = 0x305
+- ARPHRD_LOOPBACK = 0x304
+- ARPHRD_METRICOM = 0x17
+- ARPHRD_NETLINK = 0x338
+- ARPHRD_NETROM = 0x0
+- ARPHRD_NONE = 0xfffe
+- ARPHRD_PHONET = 0x334
+- ARPHRD_PHONET_PIPE = 0x335
+- ARPHRD_PIMREG = 0x30b
+- ARPHRD_PPP = 0x200
+- ARPHRD_PRONET = 0x4
+- ARPHRD_RAWHDLC = 0x206
+- ARPHRD_ROSE = 0x10e
+- ARPHRD_RSRVD = 0x104
+- ARPHRD_SIT = 0x308
+- ARPHRD_SKIP = 0x303
+- ARPHRD_SLIP = 0x100
+- ARPHRD_SLIP6 = 0x102
+- ARPHRD_TUNNEL = 0x300
+- ARPHRD_TUNNEL6 = 0x301
+- ARPHRD_VOID = 0xffff
+- ARPHRD_X25 = 0x10f
+- B0 = 0x0
+- B1000000 = 0x1008
+- B110 = 0x3
+- B115200 = 0x1002
+- B1152000 = 0x1009
+- B1200 = 0x9
+- B134 = 0x4
+- B150 = 0x5
+- B1500000 = 0x100a
+- B1800 = 0xa
+- B19200 = 0xe
+- B200 = 0x6
+- B2000000 = 0x100b
+- B230400 = 0x1003
+- B2400 = 0xb
+- B2500000 = 0x100c
+- B300 = 0x7
+- B3000000 = 0x100d
+- B3500000 = 0x100e
+- B38400 = 0xf
+- B4000000 = 0x100f
+- B460800 = 0x1004
+- B4800 = 0xc
+- B50 = 0x1
+- B500000 = 0x1005
+- B57600 = 0x1001
+- B576000 = 0x1006
+- B600 = 0x8
+- B75 = 0x2
+- B921600 = 0x1007
+- B9600 = 0xd
+- BLKBSZGET = 0x80081270
+- BLKBSZSET = 0x40081271
+- BLKFLSBUF = 0x1261
+- BLKFRAGET = 0x1265
+- BLKFRASET = 0x1264
+- BLKGETSIZE = 0x1260
+- BLKGETSIZE64 = 0x80081272
+- BLKPBSZGET = 0x127b
+- BLKRAGET = 0x1263
+- BLKRASET = 0x1262
+- BLKROGET = 0x125e
+- BLKROSET = 0x125d
+- BLKRRPART = 0x125f
+- BLKSECTGET = 0x1267
+- BLKSECTSET = 0x1266
+- BLKSSZGET = 0x1268
+- BOTHER = 0x1000
+- BPF_A = 0x10
+- BPF_ABS = 0x20
+- BPF_ADD = 0x0
+- BPF_ALU = 0x4
+- BPF_AND = 0x50
+- BPF_B = 0x10
+- BPF_DIV = 0x30
+- BPF_H = 0x8
+- BPF_IMM = 0x0
+- BPF_IND = 0x40
+- BPF_JA = 0x0
+- BPF_JEQ = 0x10
+- BPF_JGE = 0x30
+- BPF_JGT = 0x20
+- BPF_JMP = 0x5
+- BPF_JSET = 0x40
+- BPF_K = 0x0
+- BPF_LD = 0x0
+- BPF_LDX = 0x1
+- BPF_LEN = 0x80
+- BPF_LL_OFF = -0x200000
+- BPF_LSH = 0x60
+- BPF_MAJOR_VERSION = 0x1
+- BPF_MAXINSNS = 0x1000
+- BPF_MEM = 0x60
+- BPF_MEMWORDS = 0x10
+- BPF_MINOR_VERSION = 0x1
+- BPF_MISC = 0x7
+- BPF_MOD = 0x90
+- BPF_MSH = 0xa0
+- BPF_MUL = 0x20
+- BPF_NEG = 0x80
+- BPF_NET_OFF = -0x100000
+- BPF_OR = 0x40
+- BPF_RET = 0x6
+- BPF_RSH = 0x70
+- BPF_ST = 0x2
+- BPF_STX = 0x3
+- BPF_SUB = 0x10
+- BPF_TAX = 0x0
+- BPF_TXA = 0x80
+- BPF_W = 0x0
+- BPF_X = 0x8
+- BPF_XOR = 0xa0
+- BRKINT = 0x2
+- BS0 = 0x0
+- BS1 = 0x2000
+- BSDLY = 0x2000
+- CAN_BCM = 0x2
+- CAN_EFF_FLAG = 0x80000000
+- CAN_EFF_ID_BITS = 0x1d
+- CAN_EFF_MASK = 0x1fffffff
+- CAN_ERR_FLAG = 0x20000000
+- CAN_ERR_MASK = 0x1fffffff
+- CAN_INV_FILTER = 0x20000000
+- CAN_ISOTP = 0x6
+- CAN_MAX_DLC = 0x8
+- CAN_MAX_DLEN = 0x8
+- CAN_MCNET = 0x5
+- CAN_MTU = 0x10
+- CAN_NPROTO = 0x7
+- CAN_RAW = 0x1
+- CAN_RAW_FILTER_MAX = 0x200
+- CAN_RTR_FLAG = 0x40000000
+- CAN_SFF_ID_BITS = 0xb
+- CAN_SFF_MASK = 0x7ff
+- CAN_TP16 = 0x3
+- CAN_TP20 = 0x4
+- CBAUD = 0x100f
+- CBAUDEX = 0x1000
+- CFLUSH = 0xf
+- CIBAUD = 0x100f0000
+- CLOCAL = 0x800
+- CLOCK_BOOTTIME = 0x7
+- CLOCK_BOOTTIME_ALARM = 0x9
+- CLOCK_DEFAULT = 0x0
+- CLOCK_EXT = 0x1
+- CLOCK_INT = 0x2
+- CLOCK_MONOTONIC = 0x1
+- CLOCK_MONOTONIC_COARSE = 0x6
+- CLOCK_MONOTONIC_RAW = 0x4
+- CLOCK_PROCESS_CPUTIME_ID = 0x2
+- CLOCK_REALTIME = 0x0
+- CLOCK_REALTIME_ALARM = 0x8
+- CLOCK_REALTIME_COARSE = 0x5
+- CLOCK_TAI = 0xb
+- CLOCK_THREAD_CPUTIME_ID = 0x3
+- CLOCK_TXFROMRX = 0x4
+- CLOCK_TXINT = 0x3
+- CLONE_CHILD_CLEARTID = 0x200000
+- CLONE_CHILD_SETTID = 0x1000000
+- CLONE_DETACHED = 0x400000
+- CLONE_FILES = 0x400
+- CLONE_FS = 0x200
+- CLONE_IO = 0x80000000
+- CLONE_NEWCGROUP = 0x2000000
+- CLONE_NEWIPC = 0x8000000
+- CLONE_NEWNET = 0x40000000
+- CLONE_NEWNS = 0x20000
+- CLONE_NEWPID = 0x20000000
+- CLONE_NEWUSER = 0x10000000
+- CLONE_NEWUTS = 0x4000000
+- CLONE_PARENT = 0x8000
+- CLONE_PARENT_SETTID = 0x100000
+- CLONE_PTRACE = 0x2000
+- CLONE_SETTLS = 0x80000
+- CLONE_SIGHAND = 0x800
+- CLONE_SYSVSEM = 0x40000
+- CLONE_THREAD = 0x10000
+- CLONE_UNTRACED = 0x800000
+- CLONE_VFORK = 0x4000
+- CLONE_VM = 0x100
+- CMSPAR = 0x40000000
+- CR0 = 0x0
+- CR1 = 0x200
+- CR2 = 0x400
+- CR3 = 0x600
+- CRDLY = 0x600
+- CREAD = 0x80
+- CRTSCTS = 0x80000000
+- CS5 = 0x0
+- CS6 = 0x10
+- CS7 = 0x20
+- CS8 = 0x30
+- CSIGNAL = 0xff
+- CSIZE = 0x30
+- CSTART = 0x11
+- CSTATUS = 0x0
+- CSTOP = 0x13
+- CSTOPB = 0x40
+- CSUSP = 0x1a
+- DT_BLK = 0x6
+- DT_CHR = 0x2
+- DT_DIR = 0x4
+- DT_FIFO = 0x1
+- DT_LNK = 0xa
+- DT_REG = 0x8
+- DT_SOCK = 0xc
+- DT_UNKNOWN = 0x0
+- DT_WHT = 0xe
+- ECHO = 0x8
+- ECHOCTL = 0x200
+- ECHOE = 0x10
+- ECHOK = 0x20
+- ECHOKE = 0x800
+- ECHONL = 0x40
+- ECHOPRT = 0x400
+- EFD_CLOEXEC = 0x80000
+- EFD_NONBLOCK = 0x800
+- EFD_SEMAPHORE = 0x1
+- ENCODING_DEFAULT = 0x0
+- ENCODING_FM_MARK = 0x3
+- ENCODING_FM_SPACE = 0x4
+- ENCODING_MANCHESTER = 0x5
+- ENCODING_NRZ = 0x1
+- ENCODING_NRZI = 0x2
+- EPOLLERR = 0x8
+- EPOLLET = 0x80000000
+- EPOLLEXCLUSIVE = 0x10000000
+- EPOLLHUP = 0x10
+- EPOLLIN = 0x1
+- EPOLLMSG = 0x400
+- EPOLLONESHOT = 0x40000000
+- EPOLLOUT = 0x4
+- EPOLLPRI = 0x2
+- EPOLLRDBAND = 0x80
+- EPOLLRDHUP = 0x2000
+- EPOLLRDNORM = 0x40
+- EPOLLWAKEUP = 0x20000000
+- EPOLLWRBAND = 0x200
+- EPOLLWRNORM = 0x100
+- EPOLL_CLOEXEC = 0x80000
+- EPOLL_CTL_ADD = 0x1
+- EPOLL_CTL_DEL = 0x2
+- EPOLL_CTL_MOD = 0x3
+- ESR_MAGIC = 0x45535201
+- ETH_P_1588 = 0x88f7
+- ETH_P_8021AD = 0x88a8
+- ETH_P_8021AH = 0x88e7
+- ETH_P_8021Q = 0x8100
+- ETH_P_80221 = 0x8917
+- ETH_P_802_2 = 0x4
+- ETH_P_802_3 = 0x1
+- ETH_P_802_3_MIN = 0x600
+- ETH_P_802_EX1 = 0x88b5
+- ETH_P_AARP = 0x80f3
+- ETH_P_AF_IUCV = 0xfbfb
+- ETH_P_ALL = 0x3
+- ETH_P_AOE = 0x88a2
+- ETH_P_ARCNET = 0x1a
+- ETH_P_ARP = 0x806
+- ETH_P_ATALK = 0x809b
+- ETH_P_ATMFATE = 0x8884
+- ETH_P_ATMMPOA = 0x884c
+- ETH_P_AX25 = 0x2
+- ETH_P_BATMAN = 0x4305
+- ETH_P_BPQ = 0x8ff
+- ETH_P_CAIF = 0xf7
+- ETH_P_CAN = 0xc
+- ETH_P_CANFD = 0xd
+- ETH_P_CONTROL = 0x16
+- ETH_P_CUST = 0x6006
+- ETH_P_DDCMP = 0x6
+- ETH_P_DEC = 0x6000
+- ETH_P_DIAG = 0x6005
+- ETH_P_DNA_DL = 0x6001
+- ETH_P_DNA_RC = 0x6002
+- ETH_P_DNA_RT = 0x6003
+- ETH_P_DSA = 0x1b
+- ETH_P_ECONET = 0x18
+- ETH_P_EDSA = 0xdada
+- ETH_P_FCOE = 0x8906
+- ETH_P_FIP = 0x8914
+- ETH_P_HDLC = 0x19
+- ETH_P_HSR = 0x892f
+- ETH_P_IEEE802154 = 0xf6
+- ETH_P_IEEEPUP = 0xa00
+- ETH_P_IEEEPUPAT = 0xa01
+- ETH_P_IP = 0x800
+- ETH_P_IPV6 = 0x86dd
+- ETH_P_IPX = 0x8137
+- ETH_P_IRDA = 0x17
+- ETH_P_LAT = 0x6004
+- ETH_P_LINK_CTL = 0x886c
+- ETH_P_LOCALTALK = 0x9
+- ETH_P_LOOP = 0x60
+- ETH_P_LOOPBACK = 0x9000
+- ETH_P_MACSEC = 0x88e5
+- ETH_P_MOBITEX = 0x15
+- ETH_P_MPLS_MC = 0x8848
+- ETH_P_MPLS_UC = 0x8847
+- ETH_P_MVRP = 0x88f5
+- ETH_P_NCSI = 0x88f8
+- ETH_P_PAE = 0x888e
+- ETH_P_PAUSE = 0x8808
+- ETH_P_PHONET = 0xf5
+- ETH_P_PPPTALK = 0x10
+- ETH_P_PPP_DISC = 0x8863
+- ETH_P_PPP_MP = 0x8
+- ETH_P_PPP_SES = 0x8864
+- ETH_P_PRP = 0x88fb
+- ETH_P_PUP = 0x200
+- ETH_P_PUPAT = 0x201
+- ETH_P_QINQ1 = 0x9100
+- ETH_P_QINQ2 = 0x9200
+- ETH_P_QINQ3 = 0x9300
+- ETH_P_RARP = 0x8035
+- ETH_P_SCA = 0x6007
+- ETH_P_SLOW = 0x8809
+- ETH_P_SNAP = 0x5
+- ETH_P_TDLS = 0x890d
+- ETH_P_TEB = 0x6558
+- ETH_P_TIPC = 0x88ca
+- ETH_P_TRAILER = 0x1c
+- ETH_P_TR_802_2 = 0x11
+- ETH_P_TSN = 0x22f0
+- ETH_P_WAN_PPP = 0x7
+- ETH_P_WCCP = 0x883e
+- ETH_P_X25 = 0x805
+- ETH_P_XDSA = 0xf8
+- EXTA = 0xe
+- EXTB = 0xf
+- EXTPROC = 0x10000
+- FALLOC_FL_COLLAPSE_RANGE = 0x8
+- FALLOC_FL_INSERT_RANGE = 0x20
+- FALLOC_FL_KEEP_SIZE = 0x1
+- FALLOC_FL_NO_HIDE_STALE = 0x4
+- FALLOC_FL_PUNCH_HOLE = 0x2
+- FALLOC_FL_UNSHARE_RANGE = 0x40
+- FALLOC_FL_ZERO_RANGE = 0x10
+- FD_CLOEXEC = 0x1
+- FD_SETSIZE = 0x400
+- FF0 = 0x0
+- FF1 = 0x8000
+- FFDLY = 0x8000
+- FLUSHO = 0x1000
+- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
+- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
+- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
+- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
+- FS_ENCRYPTION_MODE_INVALID = 0x0
+- FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
+- FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
+- FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
+- FS_KEY_DESCRIPTOR_SIZE = 0x8
+- FS_KEY_DESC_PREFIX = "fscrypt:"
+- FS_KEY_DESC_PREFIX_SIZE = 0x8
+- FS_MAX_KEY_SIZE = 0x40
+- FS_POLICY_FLAGS_PAD_16 = 0x2
+- FS_POLICY_FLAGS_PAD_32 = 0x3
+- FS_POLICY_FLAGS_PAD_4 = 0x0
+- FS_POLICY_FLAGS_PAD_8 = 0x1
+- FS_POLICY_FLAGS_PAD_MASK = 0x3
+- FS_POLICY_FLAGS_VALID = 0x3
+- F_DUPFD = 0x0
+- F_DUPFD_CLOEXEC = 0x406
+- F_EXLCK = 0x4
+- F_GETFD = 0x1
+- F_GETFL = 0x3
+- F_GETLEASE = 0x401
+- F_GETLK = 0x5
+- F_GETLK64 = 0x5
+- F_GETOWN = 0x9
+- F_GETOWN_EX = 0x10
+- F_GETPIPE_SZ = 0x408
+- F_GETSIG = 0xb
+- F_LOCK = 0x1
+- F_NOTIFY = 0x402
+- F_OFD_GETLK = 0x24
+- F_OFD_SETLK = 0x25
+- F_OFD_SETLKW = 0x26
+- F_OK = 0x0
+- F_RDLCK = 0x0
+- F_SETFD = 0x2
+- F_SETFL = 0x4
+- F_SETLEASE = 0x400
+- F_SETLK = 0x6
+- F_SETLK64 = 0x6
+- F_SETLKW = 0x7
+- F_SETLKW64 = 0x7
+- F_SETOWN = 0x8
+- F_SETOWN_EX = 0xf
+- F_SETPIPE_SZ = 0x407
+- F_SETSIG = 0xa
+- F_SHLCK = 0x8
+- F_TEST = 0x3
+- F_TLOCK = 0x2
+- F_ULOCK = 0x0
+- F_UNLCK = 0x2
+- F_WRLCK = 0x1
+- GENL_ADMIN_PERM = 0x1
+- GENL_CMD_CAP_DO = 0x2
+- GENL_CMD_CAP_DUMP = 0x4
+- GENL_CMD_CAP_HASPOL = 0x8
+- GENL_HDRLEN = 0x4
+- GENL_ID_CTRL = 0x10
+- GENL_ID_PMCRAID = 0x12
+- GENL_ID_VFS_DQUOT = 0x11
+- GENL_MAX_ID = 0x3ff
+- GENL_MIN_ID = 0x10
+- GENL_NAMSIZ = 0x10
+- GENL_START_ALLOC = 0x13
+- GENL_UNS_ADMIN_PERM = 0x10
+- GRND_NONBLOCK = 0x1
+- GRND_RANDOM = 0x2
+- HUPCL = 0x400
+- IBSHIFT = 0x10
+- ICANON = 0x2
+- ICMPV6_FILTER = 0x1
+- ICRNL = 0x100
+- IEXTEN = 0x8000
+- IFA_F_DADFAILED = 0x8
+- IFA_F_DEPRECATED = 0x20
+- IFA_F_HOMEADDRESS = 0x10
+- IFA_F_MANAGETEMPADDR = 0x100
+- IFA_F_MCAUTOJOIN = 0x400
+- IFA_F_NODAD = 0x2
+- IFA_F_NOPREFIXROUTE = 0x200
+- IFA_F_OPTIMISTIC = 0x4
+- IFA_F_PERMANENT = 0x80
+- IFA_F_SECONDARY = 0x1
+- IFA_F_STABLE_PRIVACY = 0x800
+- IFA_F_TEMPORARY = 0x1
+- IFA_F_TENTATIVE = 0x40
+- IFA_MAX = 0x8
+- IFF_ALLMULTI = 0x200
+- IFF_ATTACH_QUEUE = 0x200
+- IFF_AUTOMEDIA = 0x4000
+- IFF_BROADCAST = 0x2
+- IFF_DEBUG = 0x4
+- IFF_DETACH_QUEUE = 0x400
+- IFF_DORMANT = 0x20000
+- IFF_DYNAMIC = 0x8000
+- IFF_ECHO = 0x40000
+- IFF_LOOPBACK = 0x8
+- IFF_LOWER_UP = 0x10000
+- IFF_MASTER = 0x400
+- IFF_MULTICAST = 0x1000
+- IFF_MULTI_QUEUE = 0x100
+- IFF_NOARP = 0x80
+- IFF_NOFILTER = 0x1000
+- IFF_NOTRAILERS = 0x20
+- IFF_NO_PI = 0x1000
+- IFF_ONE_QUEUE = 0x2000
+- IFF_PERSIST = 0x800
+- IFF_POINTOPOINT = 0x10
+- IFF_PORTSEL = 0x2000
+- IFF_PROMISC = 0x100
+- IFF_RUNNING = 0x40
+- IFF_SLAVE = 0x800
+- IFF_TAP = 0x2
+- IFF_TUN = 0x1
+- IFF_TUN_EXCL = 0x8000
+- IFF_UP = 0x1
+- IFF_VNET_HDR = 0x4000
+- IFF_VOLATILE = 0x70c5a
+- IFNAMSIZ = 0x10
+- IGNBRK = 0x1
+- IGNCR = 0x80
+- IGNPAR = 0x4
+- IMAXBEL = 0x2000
+- INLCR = 0x40
+- INPCK = 0x10
+- IN_ACCESS = 0x1
+- IN_ALL_EVENTS = 0xfff
+- IN_ATTRIB = 0x4
+- IN_CLASSA_HOST = 0xffffff
+- IN_CLASSA_MAX = 0x80
+- IN_CLASSA_NET = 0xff000000
+- IN_CLASSA_NSHIFT = 0x18
+- IN_CLASSB_HOST = 0xffff
+- IN_CLASSB_MAX = 0x10000
+- IN_CLASSB_NET = 0xffff0000
+- IN_CLASSB_NSHIFT = 0x10
+- IN_CLASSC_HOST = 0xff
+- IN_CLASSC_NET = 0xffffff00
+- IN_CLASSC_NSHIFT = 0x8
+- IN_CLOEXEC = 0x80000
+- IN_CLOSE = 0x18
+- IN_CLOSE_NOWRITE = 0x10
+- IN_CLOSE_WRITE = 0x8
+- IN_CREATE = 0x100
+- IN_DELETE = 0x200
+- IN_DELETE_SELF = 0x400
+- IN_DONT_FOLLOW = 0x2000000
+- IN_EXCL_UNLINK = 0x4000000
+- IN_IGNORED = 0x8000
+- IN_ISDIR = 0x40000000
+- IN_LOOPBACKNET = 0x7f
+- IN_MASK_ADD = 0x20000000
+- IN_MODIFY = 0x2
+- IN_MOVE = 0xc0
+- IN_MOVED_FROM = 0x40
+- IN_MOVED_TO = 0x80
+- IN_MOVE_SELF = 0x800
+- IN_NONBLOCK = 0x800
+- IN_ONESHOT = 0x80000000
+- IN_ONLYDIR = 0x1000000
+- IN_OPEN = 0x20
+- IN_Q_OVERFLOW = 0x4000
+- IN_UNMOUNT = 0x2000
+- IPPROTO_AH = 0x33
+- IPPROTO_BEETPH = 0x5e
+- IPPROTO_COMP = 0x6c
+- IPPROTO_DCCP = 0x21
+- IPPROTO_DSTOPTS = 0x3c
+- IPPROTO_EGP = 0x8
+- IPPROTO_ENCAP = 0x62
+- IPPROTO_ESP = 0x32
+- IPPROTO_FRAGMENT = 0x2c
+- IPPROTO_GRE = 0x2f
+- IPPROTO_HOPOPTS = 0x0
+- IPPROTO_ICMP = 0x1
+- IPPROTO_ICMPV6 = 0x3a
+- IPPROTO_IDP = 0x16
+- IPPROTO_IGMP = 0x2
+- IPPROTO_IP = 0x0
+- IPPROTO_IPIP = 0x4
+- IPPROTO_IPV6 = 0x29
+- IPPROTO_MH = 0x87
+- IPPROTO_MPLS = 0x89
+- IPPROTO_MTP = 0x5c
+- IPPROTO_NONE = 0x3b
+- IPPROTO_PIM = 0x67
+- IPPROTO_PUP = 0xc
+- IPPROTO_RAW = 0xff
+- IPPROTO_ROUTING = 0x2b
+- IPPROTO_RSVP = 0x2e
+- IPPROTO_SCTP = 0x84
+- IPPROTO_TCP = 0x6
+- IPPROTO_TP = 0x1d
+- IPPROTO_UDP = 0x11
+- IPPROTO_UDPLITE = 0x88
+- IPV6_2292DSTOPTS = 0x4
+- IPV6_2292HOPLIMIT = 0x8
+- IPV6_2292HOPOPTS = 0x3
+- IPV6_2292PKTINFO = 0x2
+- IPV6_2292PKTOPTIONS = 0x6
+- IPV6_2292RTHDR = 0x5
+- IPV6_ADDRFORM = 0x1
+- IPV6_ADD_MEMBERSHIP = 0x14
+- IPV6_AUTHHDR = 0xa
+- IPV6_CHECKSUM = 0x7
+- IPV6_DONTFRAG = 0x3e
+- IPV6_DROP_MEMBERSHIP = 0x15
+- IPV6_DSTOPTS = 0x3b
+- IPV6_HDRINCL = 0x24
+- IPV6_HOPLIMIT = 0x34
+- IPV6_HOPOPTS = 0x36
+- IPV6_IPSEC_POLICY = 0x22
+- IPV6_JOIN_ANYCAST = 0x1b
+- IPV6_JOIN_GROUP = 0x14
+- IPV6_LEAVE_ANYCAST = 0x1c
+- IPV6_LEAVE_GROUP = 0x15
+- IPV6_MTU = 0x18
+- IPV6_MTU_DISCOVER = 0x17
+- IPV6_MULTICAST_HOPS = 0x12
+- IPV6_MULTICAST_IF = 0x11
+- IPV6_MULTICAST_LOOP = 0x13
+- IPV6_NEXTHOP = 0x9
+- IPV6_PATHMTU = 0x3d
+- IPV6_PKTINFO = 0x32
+- IPV6_PMTUDISC_DO = 0x2
+- IPV6_PMTUDISC_DONT = 0x0
+- IPV6_PMTUDISC_INTERFACE = 0x4
+- IPV6_PMTUDISC_OMIT = 0x5
+- IPV6_PMTUDISC_PROBE = 0x3
+- IPV6_PMTUDISC_WANT = 0x1
+- IPV6_RECVDSTOPTS = 0x3a
+- IPV6_RECVERR = 0x19
+- IPV6_RECVHOPLIMIT = 0x33
+- IPV6_RECVHOPOPTS = 0x35
+- IPV6_RECVPATHMTU = 0x3c
+- IPV6_RECVPKTINFO = 0x31
+- IPV6_RECVRTHDR = 0x38
+- IPV6_RECVTCLASS = 0x42
+- IPV6_ROUTER_ALERT = 0x16
+- IPV6_RTHDR = 0x39
+- IPV6_RTHDRDSTOPTS = 0x37
+- IPV6_RTHDR_LOOSE = 0x0
+- IPV6_RTHDR_STRICT = 0x1
+- IPV6_RTHDR_TYPE_0 = 0x0
+- IPV6_RXDSTOPTS = 0x3b
+- IPV6_RXHOPOPTS = 0x36
+- IPV6_TCLASS = 0x43
+- IPV6_UNICAST_HOPS = 0x10
+- IPV6_V6ONLY = 0x1a
+- IPV6_XFRM_POLICY = 0x23
+- IP_ADD_MEMBERSHIP = 0x23
+- IP_ADD_SOURCE_MEMBERSHIP = 0x27
+- IP_BIND_ADDRESS_NO_PORT = 0x18
+- IP_BLOCK_SOURCE = 0x26
+- IP_CHECKSUM = 0x17
+- IP_DEFAULT_MULTICAST_LOOP = 0x1
+- IP_DEFAULT_MULTICAST_TTL = 0x1
+- IP_DF = 0x4000
+- IP_DROP_MEMBERSHIP = 0x24
+- IP_DROP_SOURCE_MEMBERSHIP = 0x28
+- IP_FREEBIND = 0xf
+- IP_HDRINCL = 0x3
+- IP_IPSEC_POLICY = 0x10
+- IP_MAXPACKET = 0xffff
+- IP_MAX_MEMBERSHIPS = 0x14
+- IP_MF = 0x2000
+- IP_MINTTL = 0x15
+- IP_MSFILTER = 0x29
+- IP_MSS = 0x240
+- IP_MTU = 0xe
+- IP_MTU_DISCOVER = 0xa
+- IP_MULTICAST_ALL = 0x31
+- IP_MULTICAST_IF = 0x20
+- IP_MULTICAST_LOOP = 0x22
+- IP_MULTICAST_TTL = 0x21
+- IP_NODEFRAG = 0x16
+- IP_OFFMASK = 0x1fff
+- IP_OPTIONS = 0x4
+- IP_ORIGDSTADDR = 0x14
+- IP_PASSSEC = 0x12
+- IP_PKTINFO = 0x8
+- IP_PKTOPTIONS = 0x9
+- IP_PMTUDISC = 0xa
+- IP_PMTUDISC_DO = 0x2
+- IP_PMTUDISC_DONT = 0x0
+- IP_PMTUDISC_INTERFACE = 0x4
+- IP_PMTUDISC_OMIT = 0x5
+- IP_PMTUDISC_PROBE = 0x3
+- IP_PMTUDISC_WANT = 0x1
+- IP_RECVERR = 0xb
+- IP_RECVOPTS = 0x6
+- IP_RECVORIGDSTADDR = 0x14
+- IP_RECVRETOPTS = 0x7
+- IP_RECVTOS = 0xd
+- IP_RECVTTL = 0xc
+- IP_RETOPTS = 0x7
+- IP_RF = 0x8000
+- IP_ROUTER_ALERT = 0x5
+- IP_TOS = 0x1
+- IP_TRANSPARENT = 0x13
+- IP_TTL = 0x2
+- IP_UNBLOCK_SOURCE = 0x25
+- IP_UNICAST_IF = 0x32
+- IP_XFRM_POLICY = 0x11
+- ISIG = 0x1
+- ISTRIP = 0x20
+- IUCLC = 0x200
+- IUTF8 = 0x4000
+- IXANY = 0x800
+- IXOFF = 0x1000
+- IXON = 0x400
+- KEYCTL_ASSUME_AUTHORITY = 0x10
+- KEYCTL_CHOWN = 0x4
+- KEYCTL_CLEAR = 0x7
+- KEYCTL_DESCRIBE = 0x6
+- KEYCTL_DH_COMPUTE = 0x17
+- KEYCTL_GET_KEYRING_ID = 0x0
+- KEYCTL_GET_PERSISTENT = 0x16
+- KEYCTL_GET_SECURITY = 0x11
+- KEYCTL_INSTANTIATE = 0xc
+- KEYCTL_INSTANTIATE_IOV = 0x14
+- KEYCTL_INVALIDATE = 0x15
+- KEYCTL_JOIN_SESSION_KEYRING = 0x1
+- KEYCTL_LINK = 0x8
+- KEYCTL_NEGATE = 0xd
+- KEYCTL_READ = 0xb
+- KEYCTL_REJECT = 0x13
+- KEYCTL_REVOKE = 0x3
+- KEYCTL_SEARCH = 0xa
+- KEYCTL_SESSION_TO_PARENT = 0x12
+- KEYCTL_SETPERM = 0x5
+- KEYCTL_SET_REQKEY_KEYRING = 0xe
+- KEYCTL_SET_TIMEOUT = 0xf
+- KEYCTL_UNLINK = 0x9
+- KEYCTL_UPDATE = 0x2
+- KEY_REQKEY_DEFL_DEFAULT = 0x0
+- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
+- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
+- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
+- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
+- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
+- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
+- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
+- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
+- KEY_SPEC_GROUP_KEYRING = -0x6
+- KEY_SPEC_PROCESS_KEYRING = -0x2
+- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
+- KEY_SPEC_REQUESTOR_KEYRING = -0x8
+- KEY_SPEC_SESSION_KEYRING = -0x3
+- KEY_SPEC_THREAD_KEYRING = -0x1
+- KEY_SPEC_USER_KEYRING = -0x4
+- KEY_SPEC_USER_SESSION_KEYRING = -0x5
+- LINUX_REBOOT_CMD_CAD_OFF = 0x0
+- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
+- LINUX_REBOOT_CMD_HALT = 0xcdef0123
+- LINUX_REBOOT_CMD_KEXEC = 0x45584543
+- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
+- LINUX_REBOOT_CMD_RESTART = 0x1234567
+- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
+- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
+- LINUX_REBOOT_MAGIC1 = 0xfee1dead
+- LINUX_REBOOT_MAGIC2 = 0x28121969
+- LOCK_EX = 0x2
+- LOCK_NB = 0x4
+- LOCK_SH = 0x1
+- LOCK_UN = 0x8
+- MADV_DODUMP = 0x11
+- MADV_DOFORK = 0xb
+- MADV_DONTDUMP = 0x10
+- MADV_DONTFORK = 0xa
+- MADV_DONTNEED = 0x4
+- MADV_FREE = 0x8
+- MADV_HUGEPAGE = 0xe
+- MADV_HWPOISON = 0x64
+- MADV_MERGEABLE = 0xc
+- MADV_NOHUGEPAGE = 0xf
+- MADV_NORMAL = 0x0
+- MADV_RANDOM = 0x1
+- MADV_REMOVE = 0x9
+- MADV_SEQUENTIAL = 0x2
+- MADV_UNMERGEABLE = 0xd
+- MADV_WILLNEED = 0x3
+- MAP_ANON = 0x20
+- MAP_ANONYMOUS = 0x20
+- MAP_DENYWRITE = 0x800
+- MAP_EXECUTABLE = 0x1000
+- MAP_FILE = 0x0
+- MAP_FIXED = 0x10
+- MAP_GROWSDOWN = 0x100
+- MAP_HUGETLB = 0x40000
+- MAP_HUGE_MASK = 0x3f
+- MAP_HUGE_SHIFT = 0x1a
+- MAP_LOCKED = 0x2000
+- MAP_NONBLOCK = 0x10000
+- MAP_NORESERVE = 0x4000
+- MAP_POPULATE = 0x8000
+- MAP_PRIVATE = 0x2
+- MAP_SHARED = 0x1
+- MAP_STACK = 0x20000
+- MAP_TYPE = 0xf
+- MCL_CURRENT = 0x1
+- MCL_FUTURE = 0x2
+- MCL_ONFAULT = 0x4
+- MNT_DETACH = 0x2
+- MNT_EXPIRE = 0x4
+- MNT_FORCE = 0x1
+- MSG_BATCH = 0x40000
+- MSG_CMSG_CLOEXEC = 0x40000000
+- MSG_CONFIRM = 0x800
+- MSG_CTRUNC = 0x8
+- MSG_DONTROUTE = 0x4
+- MSG_DONTWAIT = 0x40
+- MSG_EOR = 0x80
+- MSG_ERRQUEUE = 0x2000
+- MSG_FASTOPEN = 0x20000000
+- MSG_FIN = 0x200
+- MSG_MORE = 0x8000
+- MSG_NOSIGNAL = 0x4000
+- MSG_OOB = 0x1
+- MSG_PEEK = 0x2
+- MSG_PROXY = 0x10
+- MSG_RST = 0x1000
+- MSG_SYN = 0x400
+- MSG_TRUNC = 0x20
+- MSG_TRYHARD = 0x4
+- MSG_WAITALL = 0x100
+- MSG_WAITFORONE = 0x10000
+- MS_ACTIVE = 0x40000000
+- MS_ASYNC = 0x1
+- MS_BIND = 0x1000
+- MS_BORN = 0x20000000
+- MS_DIRSYNC = 0x80
+- MS_INVALIDATE = 0x2
+- MS_I_VERSION = 0x800000
+- MS_KERNMOUNT = 0x400000
+- MS_LAZYTIME = 0x2000000
+- MS_MANDLOCK = 0x40
+- MS_MGC_MSK = 0xffff0000
+- MS_MGC_VAL = 0xc0ed0000
+- MS_MOVE = 0x2000
+- MS_NOATIME = 0x400
+- MS_NODEV = 0x4
+- MS_NODIRATIME = 0x800
+- MS_NOEXEC = 0x8
+- MS_NOREMOTELOCK = 0x8000000
+- MS_NOSEC = 0x10000000
+- MS_NOSUID = 0x2
+- MS_NOUSER = -0x80000000
+- MS_POSIXACL = 0x10000
+- MS_PRIVATE = 0x40000
+- MS_RDONLY = 0x1
+- MS_REC = 0x4000
+- MS_RELATIME = 0x200000
+- MS_REMOUNT = 0x20
+- MS_RMT_MASK = 0x2800051
+- MS_SHARED = 0x100000
+- MS_SILENT = 0x8000
+- MS_SLAVE = 0x80000
+- MS_STRICTATIME = 0x1000000
+- MS_SYNC = 0x4
+- MS_SYNCHRONOUS = 0x10
+- MS_UNBINDABLE = 0x20000
+- MS_VERBOSE = 0x8000
+- NAME_MAX = 0xff
+- NETLINK_ADD_MEMBERSHIP = 0x1
+- NETLINK_AUDIT = 0x9
+- NETLINK_BROADCAST_ERROR = 0x4
+- NETLINK_CAP_ACK = 0xa
+- NETLINK_CONNECTOR = 0xb
+- NETLINK_CRYPTO = 0x15
+- NETLINK_DNRTMSG = 0xe
+- NETLINK_DROP_MEMBERSHIP = 0x2
+- NETLINK_ECRYPTFS = 0x13
+- NETLINK_FIB_LOOKUP = 0xa
+- NETLINK_FIREWALL = 0x3
+- NETLINK_GENERIC = 0x10
+- NETLINK_INET_DIAG = 0x4
+- NETLINK_IP6_FW = 0xd
+- NETLINK_ISCSI = 0x8
+- NETLINK_KOBJECT_UEVENT = 0xf
+- NETLINK_LISTEN_ALL_NSID = 0x8
+- NETLINK_LIST_MEMBERSHIPS = 0x9
+- NETLINK_NETFILTER = 0xc
+- NETLINK_NFLOG = 0x5
+- NETLINK_NO_ENOBUFS = 0x5
+- NETLINK_PKTINFO = 0x3
+- NETLINK_RDMA = 0x14
+- NETLINK_ROUTE = 0x0
+- NETLINK_RX_RING = 0x6
+- NETLINK_SCSITRANSPORT = 0x12
+- NETLINK_SELINUX = 0x7
+- NETLINK_SOCK_DIAG = 0x4
+- NETLINK_TX_RING = 0x7
+- NETLINK_UNUSED = 0x1
+- NETLINK_USERSOCK = 0x2
+- NETLINK_XFRM = 0x6
+- NL0 = 0x0
+- NL1 = 0x100
+- NLA_ALIGNTO = 0x4
+- NLA_F_NESTED = 0x8000
+- NLA_F_NET_BYTEORDER = 0x4000
+- NLA_HDRLEN = 0x4
+- NLDLY = 0x100
+- NLMSG_ALIGNTO = 0x4
+- NLMSG_DONE = 0x3
+- NLMSG_ERROR = 0x2
+- NLMSG_HDRLEN = 0x10
+- NLMSG_MIN_TYPE = 0x10
+- NLMSG_NOOP = 0x1
+- NLMSG_OVERRUN = 0x4
+- NLM_F_ACK = 0x4
+- NLM_F_APPEND = 0x800
+- NLM_F_ATOMIC = 0x400
+- NLM_F_CREATE = 0x400
+- NLM_F_DUMP = 0x300
+- NLM_F_DUMP_FILTERED = 0x20
+- NLM_F_DUMP_INTR = 0x10
+- NLM_F_ECHO = 0x8
+- NLM_F_EXCL = 0x200
+- NLM_F_MATCH = 0x200
+- NLM_F_MULTI = 0x2
+- NLM_F_REPLACE = 0x100
+- NLM_F_REQUEST = 0x1
+- NLM_F_ROOT = 0x100
+- NOFLSH = 0x80
+- OCRNL = 0x8
+- OFDEL = 0x80
+- OFILL = 0x40
+- OLCUC = 0x2
+- ONLCR = 0x4
+- ONLRET = 0x20
+- ONOCR = 0x10
+- OPOST = 0x1
+- O_ACCMODE = 0x3
+- O_APPEND = 0x400
+- O_ASYNC = 0x2000
+- O_CLOEXEC = 0x80000
+- O_CREAT = 0x40
+- O_DIRECT = 0x10000
+- O_DIRECTORY = 0x4000
+- O_DSYNC = 0x1000
+- O_EXCL = 0x80
+- O_FSYNC = 0x101000
+- O_LARGEFILE = 0x0
+- O_NDELAY = 0x800
+- O_NOATIME = 0x40000
+- O_NOCTTY = 0x100
+- O_NOFOLLOW = 0x8000
+- O_NONBLOCK = 0x800
+- O_PATH = 0x200000
+- O_RDONLY = 0x0
+- O_RDWR = 0x2
+- O_RSYNC = 0x101000
+- O_SYNC = 0x101000
+- O_TMPFILE = 0x404000
+- O_TRUNC = 0x200
+- O_WRONLY = 0x1
+- PACKET_ADD_MEMBERSHIP = 0x1
+- PACKET_AUXDATA = 0x8
+- PACKET_BROADCAST = 0x1
+- PACKET_COPY_THRESH = 0x7
+- PACKET_DROP_MEMBERSHIP = 0x2
+- PACKET_FANOUT = 0x12
+- PACKET_FANOUT_CBPF = 0x6
+- PACKET_FANOUT_CPU = 0x2
+- PACKET_FANOUT_DATA = 0x16
+- PACKET_FANOUT_EBPF = 0x7
+- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
+- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
+- PACKET_FANOUT_HASH = 0x0
+- PACKET_FANOUT_LB = 0x1
+- PACKET_FANOUT_QM = 0x5
+- PACKET_FANOUT_RND = 0x4
+- PACKET_FANOUT_ROLLOVER = 0x3
+- PACKET_FASTROUTE = 0x6
+- PACKET_HDRLEN = 0xb
+- PACKET_HOST = 0x0
+- PACKET_KERNEL = 0x7
+- PACKET_LOOPBACK = 0x5
+- PACKET_LOSS = 0xe
+- PACKET_MR_ALLMULTI = 0x2
+- PACKET_MR_MULTICAST = 0x0
+- PACKET_MR_PROMISC = 0x1
+- PACKET_MR_UNICAST = 0x3
+- PACKET_MULTICAST = 0x2
+- PACKET_ORIGDEV = 0x9
+- PACKET_OTHERHOST = 0x3
+- PACKET_OUTGOING = 0x4
+- PACKET_QDISC_BYPASS = 0x14
+- PACKET_RECV_OUTPUT = 0x3
+- PACKET_RESERVE = 0xc
+- PACKET_ROLLOVER_STATS = 0x15
+- PACKET_RX_RING = 0x5
+- PACKET_STATISTICS = 0x6
+- PACKET_TIMESTAMP = 0x11
+- PACKET_TX_HAS_OFF = 0x13
+- PACKET_TX_RING = 0xd
+- PACKET_TX_TIMESTAMP = 0x10
+- PACKET_USER = 0x6
+- PACKET_VERSION = 0xa
+- PACKET_VNET_HDR = 0xf
+- PARENB = 0x100
+- PARITY_CRC16_PR0 = 0x2
+- PARITY_CRC16_PR0_CCITT = 0x4
+- PARITY_CRC16_PR1 = 0x3
+- PARITY_CRC16_PR1_CCITT = 0x5
+- PARITY_CRC32_PR0_CCITT = 0x6
+- PARITY_CRC32_PR1_CCITT = 0x7
+- PARITY_DEFAULT = 0x0
+- PARITY_NONE = 0x1
+- PARMRK = 0x8
+- PARODD = 0x200
+- PENDIN = 0x4000
+- PERF_EVENT_IOC_DISABLE = 0x2401
+- PERF_EVENT_IOC_ENABLE = 0x2400
+- PERF_EVENT_IOC_ID = 0x80082407
+- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
+- PERF_EVENT_IOC_PERIOD = 0x40082404
+- PERF_EVENT_IOC_REFRESH = 0x2402
+- PERF_EVENT_IOC_RESET = 0x2403
+- PERF_EVENT_IOC_SET_BPF = 0x40042408
+- PERF_EVENT_IOC_SET_FILTER = 0x40082406
+- PERF_EVENT_IOC_SET_OUTPUT = 0x2405
+- PRIO_PGRP = 0x1
+- PRIO_PROCESS = 0x0
+- PRIO_USER = 0x2
+- PROT_EXEC = 0x4
+- PROT_GROWSDOWN = 0x1000000
+- PROT_GROWSUP = 0x2000000
+- PROT_NONE = 0x0
+- PROT_READ = 0x1
+- PROT_WRITE = 0x2
+- PR_CAPBSET_DROP = 0x18
+- PR_CAPBSET_READ = 0x17
+- PR_CAP_AMBIENT = 0x2f
+- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
+- PR_CAP_AMBIENT_IS_SET = 0x1
+- PR_CAP_AMBIENT_LOWER = 0x3
+- PR_CAP_AMBIENT_RAISE = 0x2
+- PR_ENDIAN_BIG = 0x0
+- PR_ENDIAN_LITTLE = 0x1
+- PR_ENDIAN_PPC_LITTLE = 0x2
+- PR_FPEMU_NOPRINT = 0x1
+- PR_FPEMU_SIGFPE = 0x2
+- PR_FP_EXC_ASYNC = 0x2
+- PR_FP_EXC_DISABLED = 0x0
+- PR_FP_EXC_DIV = 0x10000
+- PR_FP_EXC_INV = 0x100000
+- PR_FP_EXC_NONRECOV = 0x1
+- PR_FP_EXC_OVF = 0x20000
+- PR_FP_EXC_PRECISE = 0x3
+- PR_FP_EXC_RES = 0x80000
+- PR_FP_EXC_SW_ENABLE = 0x80
+- PR_FP_EXC_UND = 0x40000
+- PR_FP_MODE_FR = 0x1
+- PR_FP_MODE_FRE = 0x2
+- PR_GET_CHILD_SUBREAPER = 0x25
+- PR_GET_DUMPABLE = 0x3
+- PR_GET_ENDIAN = 0x13
+- PR_GET_FPEMU = 0x9
+- PR_GET_FPEXC = 0xb
+- PR_GET_FP_MODE = 0x2e
+- PR_GET_KEEPCAPS = 0x7
+- PR_GET_NAME = 0x10
+- PR_GET_NO_NEW_PRIVS = 0x27
+- PR_GET_PDEATHSIG = 0x2
+- PR_GET_SECCOMP = 0x15
+- PR_GET_SECUREBITS = 0x1b
+- PR_GET_THP_DISABLE = 0x2a
+- PR_GET_TID_ADDRESS = 0x28
+- PR_GET_TIMERSLACK = 0x1e
+- PR_GET_TIMING = 0xd
+- PR_GET_TSC = 0x19
+- PR_GET_UNALIGN = 0x5
+- PR_MCE_KILL = 0x21
+- PR_MCE_KILL_CLEAR = 0x0
+- PR_MCE_KILL_DEFAULT = 0x2
+- PR_MCE_KILL_EARLY = 0x1
+- PR_MCE_KILL_GET = 0x22
+- PR_MCE_KILL_LATE = 0x0
+- PR_MCE_KILL_SET = 0x1
+- PR_MPX_DISABLE_MANAGEMENT = 0x2c
+- PR_MPX_ENABLE_MANAGEMENT = 0x2b
+- PR_SET_CHILD_SUBREAPER = 0x24
+- PR_SET_DUMPABLE = 0x4
+- PR_SET_ENDIAN = 0x14
+- PR_SET_FPEMU = 0xa
+- PR_SET_FPEXC = 0xc
+- PR_SET_FP_MODE = 0x2d
+- PR_SET_KEEPCAPS = 0x8
+- PR_SET_MM = 0x23
+- PR_SET_MM_ARG_END = 0x9
+- PR_SET_MM_ARG_START = 0x8
+- PR_SET_MM_AUXV = 0xc
+- PR_SET_MM_BRK = 0x7
+- PR_SET_MM_END_CODE = 0x2
+- PR_SET_MM_END_DATA = 0x4
+- PR_SET_MM_ENV_END = 0xb
+- PR_SET_MM_ENV_START = 0xa
+- PR_SET_MM_EXE_FILE = 0xd
+- PR_SET_MM_MAP = 0xe
+- PR_SET_MM_MAP_SIZE = 0xf
+- PR_SET_MM_START_BRK = 0x6
+- PR_SET_MM_START_CODE = 0x1
+- PR_SET_MM_START_DATA = 0x3
+- PR_SET_MM_START_STACK = 0x5
+- PR_SET_NAME = 0xf
+- PR_SET_NO_NEW_PRIVS = 0x26
+- PR_SET_PDEATHSIG = 0x1
+- PR_SET_PTRACER = 0x59616d61
+- PR_SET_PTRACER_ANY = -0x1
+- PR_SET_SECCOMP = 0x16
+- PR_SET_SECUREBITS = 0x1c
+- PR_SET_THP_DISABLE = 0x29
+- PR_SET_TIMERSLACK = 0x1d
+- PR_SET_TIMING = 0xe
+- PR_SET_TSC = 0x1a
+- PR_SET_UNALIGN = 0x6
+- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
+- PR_TASK_PERF_EVENTS_ENABLE = 0x20
+- PR_TIMING_STATISTICAL = 0x0
+- PR_TIMING_TIMESTAMP = 0x1
+- PR_TSC_ENABLE = 0x1
+- PR_TSC_SIGSEGV = 0x2
+- PR_UNALIGN_NOPRINT = 0x1
+- PR_UNALIGN_SIGBUS = 0x2
+- PTRACE_ATTACH = 0x10
+- PTRACE_CONT = 0x7
+- PTRACE_DETACH = 0x11
+- PTRACE_EVENT_CLONE = 0x3
+- PTRACE_EVENT_EXEC = 0x4
+- PTRACE_EVENT_EXIT = 0x6
+- PTRACE_EVENT_FORK = 0x1
+- PTRACE_EVENT_SECCOMP = 0x7
+- PTRACE_EVENT_STOP = 0x80
+- PTRACE_EVENT_VFORK = 0x2
+- PTRACE_EVENT_VFORK_DONE = 0x5
+- PTRACE_GETEVENTMSG = 0x4201
+- PTRACE_GETREGS = 0xc
+- PTRACE_GETREGSET = 0x4204
+- PTRACE_GETSIGINFO = 0x4202
+- PTRACE_GETSIGMASK = 0x420a
+- PTRACE_INTERRUPT = 0x4207
+- PTRACE_KILL = 0x8
+- PTRACE_LISTEN = 0x4208
+- PTRACE_O_EXITKILL = 0x100000
+- PTRACE_O_MASK = 0x3000ff
+- PTRACE_O_SUSPEND_SECCOMP = 0x200000
+- PTRACE_O_TRACECLONE = 0x8
+- PTRACE_O_TRACEEXEC = 0x10
+- PTRACE_O_TRACEEXIT = 0x40
+- PTRACE_O_TRACEFORK = 0x2
+- PTRACE_O_TRACESECCOMP = 0x80
+- PTRACE_O_TRACESYSGOOD = 0x1
+- PTRACE_O_TRACEVFORK = 0x4
+- PTRACE_O_TRACEVFORKDONE = 0x20
+- PTRACE_PEEKDATA = 0x2
+- PTRACE_PEEKSIGINFO = 0x4209
+- PTRACE_PEEKSIGINFO_SHARED = 0x1
+- PTRACE_PEEKTEXT = 0x1
+- PTRACE_PEEKUSR = 0x3
+- PTRACE_POKEDATA = 0x5
+- PTRACE_POKETEXT = 0x4
+- PTRACE_POKEUSR = 0x6
+- PTRACE_SECCOMP_GET_FILTER = 0x420c
+- PTRACE_SEIZE = 0x4206
+- PTRACE_SETOPTIONS = 0x4200
+- PTRACE_SETREGS = 0xd
+- PTRACE_SETREGSET = 0x4205
+- PTRACE_SETSIGINFO = 0x4203
+- PTRACE_SETSIGMASK = 0x420b
+- PTRACE_SINGLESTEP = 0x9
+- PTRACE_SYSCALL = 0x18
+- PTRACE_TRACEME = 0x0
+- RLIMIT_AS = 0x9
+- RLIMIT_CORE = 0x4
+- RLIMIT_CPU = 0x0
+- RLIMIT_DATA = 0x2
+- RLIMIT_FSIZE = 0x1
+- RLIMIT_LOCKS = 0xa
+- RLIMIT_MEMLOCK = 0x8
+- RLIMIT_MSGQUEUE = 0xc
+- RLIMIT_NICE = 0xd
+- RLIMIT_NOFILE = 0x7
+- RLIMIT_NPROC = 0x6
+- RLIMIT_RSS = 0x5
+- RLIMIT_RTPRIO = 0xe
+- RLIMIT_RTTIME = 0xf
+- RLIMIT_SIGPENDING = 0xb
+- RLIMIT_STACK = 0x3
+- RLIM_INFINITY = -0x1
+- RTAX_ADVMSS = 0x8
+- RTAX_CC_ALGO = 0x10
+- RTAX_CWND = 0x7
+- RTAX_FEATURES = 0xc
+- RTAX_FEATURE_ALLFRAG = 0x8
+- RTAX_FEATURE_ECN = 0x1
+- RTAX_FEATURE_MASK = 0xf
+- RTAX_FEATURE_SACK = 0x2
+- RTAX_FEATURE_TIMESTAMP = 0x4
+- RTAX_HOPLIMIT = 0xa
+- RTAX_INITCWND = 0xb
+- RTAX_INITRWND = 0xe
+- RTAX_LOCK = 0x1
+- RTAX_MAX = 0x10
+- RTAX_MTU = 0x2
+- RTAX_QUICKACK = 0xf
+- RTAX_REORDERING = 0x9
+- RTAX_RTO_MIN = 0xd
+- RTAX_RTT = 0x4
+- RTAX_RTTVAR = 0x5
+- RTAX_SSTHRESH = 0x6
+- RTAX_UNSPEC = 0x0
+- RTAX_WINDOW = 0x3
+- RTA_ALIGNTO = 0x4
+- RTA_MAX = 0x19
+- RTCF_DIRECTSRC = 0x4000000
+- RTCF_DOREDIRECT = 0x1000000
+- RTCF_LOG = 0x2000000
+- RTCF_MASQ = 0x400000
+- RTCF_NAT = 0x800000
+- RTCF_VALVE = 0x200000
+- RTF_ADDRCLASSMASK = 0xf8000000
+- RTF_ADDRCONF = 0x40000
+- RTF_ALLONLINK = 0x20000
+- RTF_BROADCAST = 0x10000000
+- RTF_CACHE = 0x1000000
+- RTF_DEFAULT = 0x10000
+- RTF_DYNAMIC = 0x10
+- RTF_FLOW = 0x2000000
+- RTF_GATEWAY = 0x2
+- RTF_HOST = 0x4
+- RTF_INTERFACE = 0x40000000
+- RTF_IRTT = 0x100
+- RTF_LINKRT = 0x100000
+- RTF_LOCAL = 0x80000000
+- RTF_MODIFIED = 0x20
+- RTF_MSS = 0x40
+- RTF_MTU = 0x40
+- RTF_MULTICAST = 0x20000000
+- RTF_NAT = 0x8000000
+- RTF_NOFORWARD = 0x1000
+- RTF_NONEXTHOP = 0x200000
+- RTF_NOPMTUDISC = 0x4000
+- RTF_POLICY = 0x4000000
+- RTF_REINSTATE = 0x8
+- RTF_REJECT = 0x200
+- RTF_STATIC = 0x400
+- RTF_THROW = 0x2000
+- RTF_UP = 0x1
+- RTF_WINDOW = 0x80
+- RTF_XRESOLVE = 0x800
+- RTM_BASE = 0x10
+- RTM_DELACTION = 0x31
+- RTM_DELADDR = 0x15
+- RTM_DELADDRLABEL = 0x49
+- RTM_DELLINK = 0x11
+- RTM_DELMDB = 0x55
+- RTM_DELNEIGH = 0x1d
+- RTM_DELNSID = 0x59
+- RTM_DELQDISC = 0x25
+- RTM_DELROUTE = 0x19
+- RTM_DELRULE = 0x21
+- RTM_DELTCLASS = 0x29
+- RTM_DELTFILTER = 0x2d
+- RTM_F_CLONED = 0x200
+- RTM_F_EQUALIZE = 0x400
+- RTM_F_LOOKUP_TABLE = 0x1000
+- RTM_F_NOTIFY = 0x100
+- RTM_F_PREFIX = 0x800
+- RTM_GETACTION = 0x32
+- RTM_GETADDR = 0x16
+- RTM_GETADDRLABEL = 0x4a
+- RTM_GETANYCAST = 0x3e
+- RTM_GETDCB = 0x4e
+- RTM_GETLINK = 0x12
+- RTM_GETMDB = 0x56
+- RTM_GETMULTICAST = 0x3a
+- RTM_GETNEIGH = 0x1e
+- RTM_GETNEIGHTBL = 0x42
+- RTM_GETNETCONF = 0x52
+- RTM_GETNSID = 0x5a
+- RTM_GETQDISC = 0x26
+- RTM_GETROUTE = 0x1a
+- RTM_GETRULE = 0x22
+- RTM_GETSTATS = 0x5e
+- RTM_GETTCLASS = 0x2a
+- RTM_GETTFILTER = 0x2e
+- RTM_MAX = 0x5f
+- RTM_NEWACTION = 0x30
+- RTM_NEWADDR = 0x14
+- RTM_NEWADDRLABEL = 0x48
+- RTM_NEWLINK = 0x10
+- RTM_NEWMDB = 0x54
+- RTM_NEWNDUSEROPT = 0x44
+- RTM_NEWNEIGH = 0x1c
+- RTM_NEWNEIGHTBL = 0x40
+- RTM_NEWNETCONF = 0x50
+- RTM_NEWNSID = 0x58
+- RTM_NEWPREFIX = 0x34
+- RTM_NEWQDISC = 0x24
+- RTM_NEWROUTE = 0x18
+- RTM_NEWRULE = 0x20
+- RTM_NEWSTATS = 0x5c
+- RTM_NEWTCLASS = 0x28
+- RTM_NEWTFILTER = 0x2c
+- RTM_NR_FAMILIES = 0x14
+- RTM_NR_MSGTYPES = 0x50
+- RTM_SETDCB = 0x4f
+- RTM_SETLINK = 0x13
+- RTM_SETNEIGHTBL = 0x43
+- RTNH_ALIGNTO = 0x4
+- RTNH_COMPARE_MASK = 0x19
+- RTNH_F_DEAD = 0x1
+- RTNH_F_LINKDOWN = 0x10
+- RTNH_F_OFFLOAD = 0x8
+- RTNH_F_ONLINK = 0x4
+- RTNH_F_PERVASIVE = 0x2
+- RTN_MAX = 0xb
+- RTPROT_BABEL = 0x2a
+- RTPROT_BIRD = 0xc
+- RTPROT_BOOT = 0x3
+- RTPROT_DHCP = 0x10
+- RTPROT_DNROUTED = 0xd
+- RTPROT_GATED = 0x8
+- RTPROT_KERNEL = 0x2
+- RTPROT_MROUTED = 0x11
+- RTPROT_MRT = 0xa
+- RTPROT_NTK = 0xf
+- RTPROT_RA = 0x9
+- RTPROT_REDIRECT = 0x1
+- RTPROT_STATIC = 0x4
+- RTPROT_UNSPEC = 0x0
+- RTPROT_XORP = 0xe
+- RTPROT_ZEBRA = 0xb
+- RT_CLASS_DEFAULT = 0xfd
+- RT_CLASS_LOCAL = 0xff
+- RT_CLASS_MAIN = 0xfe
+- RT_CLASS_MAX = 0xff
+- RT_CLASS_UNSPEC = 0x0
+- RUSAGE_CHILDREN = -0x1
+- RUSAGE_SELF = 0x0
+- RUSAGE_THREAD = 0x1
+- SCM_CREDENTIALS = 0x2
+- SCM_RIGHTS = 0x1
+- SCM_TIMESTAMP = 0x1d
+- SCM_TIMESTAMPING = 0x25
+- SCM_TIMESTAMPING_OPT_STATS = 0x36
+- SCM_TIMESTAMPNS = 0x23
+- SCM_WIFI_STATUS = 0x29
+- SECCOMP_MODE_DISABLED = 0x0
+- SECCOMP_MODE_FILTER = 0x2
+- SECCOMP_MODE_STRICT = 0x1
+- SHUT_RD = 0x0
+- SHUT_RDWR = 0x2
+- SHUT_WR = 0x1
+- SIOCADDDLCI = 0x8980
+- SIOCADDMULTI = 0x8931
+- SIOCADDRT = 0x890b
+- SIOCATMARK = 0x8905
+- SIOCBONDCHANGEACTIVE = 0x8995
+- SIOCBONDENSLAVE = 0x8990
+- SIOCBONDINFOQUERY = 0x8994
+- SIOCBONDRELEASE = 0x8991
+- SIOCBONDSETHWADDR = 0x8992
+- SIOCBONDSLAVEINFOQUERY = 0x8993
+- SIOCBRADDBR = 0x89a0
+- SIOCBRADDIF = 0x89a2
+- SIOCBRDELBR = 0x89a1
+- SIOCBRDELIF = 0x89a3
+- SIOCDARP = 0x8953
+- SIOCDELDLCI = 0x8981
+- SIOCDELMULTI = 0x8932
+- SIOCDELRT = 0x890c
+- SIOCDEVPRIVATE = 0x89f0
+- SIOCDIFADDR = 0x8936
+- SIOCDRARP = 0x8960
+- SIOCETHTOOL = 0x8946
+- SIOCGARP = 0x8954
+- SIOCGHWTSTAMP = 0x89b1
+- SIOCGIFADDR = 0x8915
+- SIOCGIFBR = 0x8940
+- SIOCGIFBRDADDR = 0x8919
+- SIOCGIFCONF = 0x8912
+- SIOCGIFCOUNT = 0x8938
+- SIOCGIFDSTADDR = 0x8917
+- SIOCGIFENCAP = 0x8925
+- SIOCGIFFLAGS = 0x8913
+- SIOCGIFHWADDR = 0x8927
+- SIOCGIFINDEX = 0x8933
+- SIOCGIFMAP = 0x8970
+- SIOCGIFMEM = 0x891f
+- SIOCGIFMETRIC = 0x891d
+- SIOCGIFMTU = 0x8921
+- SIOCGIFNAME = 0x8910
+- SIOCGIFNETMASK = 0x891b
+- SIOCGIFPFLAGS = 0x8935
+- SIOCGIFSLAVE = 0x8929
+- SIOCGIFTXQLEN = 0x8942
+- SIOCGIFVLAN = 0x8982
+- SIOCGMIIPHY = 0x8947
+- SIOCGMIIREG = 0x8948
+- SIOCGPGRP = 0x8904
+- SIOCGRARP = 0x8961
+- SIOCGSKNS = 0x894c
+- SIOCGSTAMP = 0x8906
+- SIOCGSTAMPNS = 0x8907
+- SIOCINQ = 0x541b
+- SIOCOUTQ = 0x5411
+- SIOCOUTQNSD = 0x894b
+- SIOCPROTOPRIVATE = 0x89e0
+- SIOCRTMSG = 0x890d
+- SIOCSARP = 0x8955
+- SIOCSHWTSTAMP = 0x89b0
+- SIOCSIFADDR = 0x8916
+- SIOCSIFBR = 0x8941
+- SIOCSIFBRDADDR = 0x891a
+- SIOCSIFDSTADDR = 0x8918
+- SIOCSIFENCAP = 0x8926
+- SIOCSIFFLAGS = 0x8914
+- SIOCSIFHWADDR = 0x8924
+- SIOCSIFHWBROADCAST = 0x8937
+- SIOCSIFLINK = 0x8911
+- SIOCSIFMAP = 0x8971
+- SIOCSIFMEM = 0x8920
+- SIOCSIFMETRIC = 0x891e
+- SIOCSIFMTU = 0x8922
+- SIOCSIFNAME = 0x8923
+- SIOCSIFNETMASK = 0x891c
+- SIOCSIFPFLAGS = 0x8934
+- SIOCSIFSLAVE = 0x8930
+- SIOCSIFTXQLEN = 0x8943
+- SIOCSIFVLAN = 0x8983
+- SIOCSMIIREG = 0x8949
+- SIOCSPGRP = 0x8902
+- SIOCSRARP = 0x8962
+- SIOCWANDEV = 0x894a
+- SOCK_CLOEXEC = 0x80000
+- SOCK_DCCP = 0x6
+- SOCK_DGRAM = 0x2
+- SOCK_IOC_TYPE = 0x89
+- SOCK_NONBLOCK = 0x800
+- SOCK_PACKET = 0xa
+- SOCK_RAW = 0x3
+- SOCK_RDM = 0x4
+- SOCK_SEQPACKET = 0x5
+- SOCK_STREAM = 0x1
+- SOL_AAL = 0x109
+- SOL_ALG = 0x117
+- SOL_ATM = 0x108
+- SOL_CAIF = 0x116
+- SOL_CAN_BASE = 0x64
+- SOL_DCCP = 0x10d
+- SOL_DECNET = 0x105
+- SOL_ICMPV6 = 0x3a
+- SOL_IP = 0x0
+- SOL_IPV6 = 0x29
+- SOL_IRDA = 0x10a
+- SOL_IUCV = 0x115
+- SOL_KCM = 0x119
+- SOL_LLC = 0x10c
+- SOL_NETBEUI = 0x10b
+- SOL_NETLINK = 0x10e
+- SOL_NFC = 0x118
+- SOL_PACKET = 0x107
+- SOL_PNPIPE = 0x113
+- SOL_PPPOL2TP = 0x111
+- SOL_RAW = 0xff
+- SOL_RDS = 0x114
+- SOL_RXRPC = 0x110
+- SOL_SOCKET = 0x1
+- SOL_TCP = 0x6
+- SOL_TIPC = 0x10f
+- SOL_X25 = 0x106
+- SOMAXCONN = 0x80
+- SO_ACCEPTCONN = 0x1e
+- SO_ATTACH_BPF = 0x32
+- SO_ATTACH_FILTER = 0x1a
+- SO_ATTACH_REUSEPORT_CBPF = 0x33
+- SO_ATTACH_REUSEPORT_EBPF = 0x34
+- SO_BINDTODEVICE = 0x19
+- SO_BPF_EXTENSIONS = 0x30
+- SO_BROADCAST = 0x6
+- SO_BSDCOMPAT = 0xe
+- SO_BUSY_POLL = 0x2e
+- SO_CNX_ADVICE = 0x35
+- SO_DEBUG = 0x1
+- SO_DETACH_BPF = 0x1b
+- SO_DETACH_FILTER = 0x1b
+- SO_DOMAIN = 0x27
+- SO_DONTROUTE = 0x5
+- SO_ERROR = 0x4
+- SO_GET_FILTER = 0x1a
+- SO_INCOMING_CPU = 0x31
+- SO_KEEPALIVE = 0x9
+- SO_LINGER = 0xd
+- SO_LOCK_FILTER = 0x2c
+- SO_MARK = 0x24
+- SO_MAX_PACING_RATE = 0x2f
+- SO_NOFCS = 0x2b
+- SO_NO_CHECK = 0xb
+- SO_OOBINLINE = 0xa
+- SO_PASSCRED = 0x10
+- SO_PASSSEC = 0x22
+- SO_PEEK_OFF = 0x2a
+- SO_PEERCRED = 0x11
+- SO_PEERNAME = 0x1c
+- SO_PEERSEC = 0x1f
+- SO_PRIORITY = 0xc
+- SO_PROTOCOL = 0x26
+- SO_RCVBUF = 0x8
+- SO_RCVBUFFORCE = 0x21
+- SO_RCVLOWAT = 0x12
+- SO_RCVTIMEO = 0x14
+- SO_REUSEADDR = 0x2
+- SO_REUSEPORT = 0xf
+- SO_RXQ_OVFL = 0x28
+- SO_SECURITY_AUTHENTICATION = 0x16
+- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
+- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
+- SO_SELECT_ERR_QUEUE = 0x2d
+- SO_SNDBUF = 0x7
+- SO_SNDBUFFORCE = 0x20
+- SO_SNDLOWAT = 0x13
+- SO_SNDTIMEO = 0x15
+- SO_TIMESTAMP = 0x1d
+- SO_TIMESTAMPING = 0x25
+- SO_TIMESTAMPNS = 0x23
+- SO_TYPE = 0x3
+- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
+- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
+- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
+- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
+- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
+- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
+- SO_VM_SOCKETS_TRUSTED = 0x5
+- SO_WIFI_STATUS = 0x29
+- SPLICE_F_GIFT = 0x8
+- SPLICE_F_MORE = 0x4
+- SPLICE_F_MOVE = 0x1
+- SPLICE_F_NONBLOCK = 0x2
+- S_BLKSIZE = 0x200
+- S_IEXEC = 0x40
+- S_IFBLK = 0x6000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFIFO = 0x1000
+- S_IFLNK = 0xa000
+- S_IFMT = 0xf000
+- S_IFREG = 0x8000
+- S_IFSOCK = 0xc000
+- S_IREAD = 0x100
+- S_IRGRP = 0x20
+- S_IROTH = 0x4
+- S_IRUSR = 0x100
+- S_IRWXG = 0x38
+- S_IRWXO = 0x7
+- S_IRWXU = 0x1c0
+- S_ISGID = 0x400
+- S_ISUID = 0x800
+- S_ISVTX = 0x200
+- S_IWGRP = 0x10
+- S_IWOTH = 0x2
+- S_IWRITE = 0x80
+- S_IWUSR = 0x80
+- S_IXGRP = 0x8
+- S_IXOTH = 0x1
+- S_IXUSR = 0x40
+- TAB0 = 0x0
+- TAB1 = 0x800
+- TAB2 = 0x1000
+- TAB3 = 0x1800
+- TABDLY = 0x1800
+- TASKSTATS_CMD_ATTR_MAX = 0x4
+- TASKSTATS_CMD_MAX = 0x2
+- TASKSTATS_GENL_NAME = "TASKSTATS"
+- TASKSTATS_GENL_VERSION = 0x1
+- TASKSTATS_TYPE_MAX = 0x6
+- TASKSTATS_VERSION = 0x8
+- TCFLSH = 0x540b
+- TCGETA = 0x5405
+- TCGETS = 0x5401
+- TCGETS2 = 0x802c542a
+- TCGETX = 0x5432
+- TCIFLUSH = 0x0
+- TCIOFF = 0x2
+- TCIOFLUSH = 0x2
+- TCION = 0x3
+- TCOFLUSH = 0x1
+- TCOOFF = 0x0
+- TCOON = 0x1
+- TCP_CC_INFO = 0x1a
+- TCP_CONGESTION = 0xd
+- TCP_COOKIE_IN_ALWAYS = 0x1
+- TCP_COOKIE_MAX = 0x10
+- TCP_COOKIE_MIN = 0x8
+- TCP_COOKIE_OUT_NEVER = 0x2
+- TCP_COOKIE_PAIR_SIZE = 0x20
+- TCP_COOKIE_TRANSACTIONS = 0xf
+- TCP_CORK = 0x3
+- TCP_DEFER_ACCEPT = 0x9
+- TCP_FASTOPEN = 0x17
+- TCP_INFO = 0xb
+- TCP_KEEPCNT = 0x6
+- TCP_KEEPIDLE = 0x4
+- TCP_KEEPINTVL = 0x5
+- TCP_LINGER2 = 0x8
+- TCP_MAXSEG = 0x2
+- TCP_MAXWIN = 0xffff
+- TCP_MAX_WINSHIFT = 0xe
+- TCP_MD5SIG = 0xe
+- TCP_MD5SIG_MAXKEYLEN = 0x50
+- TCP_MSS = 0x200
+- TCP_MSS_DEFAULT = 0x218
+- TCP_MSS_DESIRED = 0x4c4
+- TCP_NODELAY = 0x1
+- TCP_NOTSENT_LOWAT = 0x19
+- TCP_QUEUE_SEQ = 0x15
+- TCP_QUICKACK = 0xc
+- TCP_REPAIR = 0x13
+- TCP_REPAIR_OPTIONS = 0x16
+- TCP_REPAIR_QUEUE = 0x14
+- TCP_REPAIR_WINDOW = 0x1d
+- TCP_SAVED_SYN = 0x1c
+- TCP_SAVE_SYN = 0x1b
+- TCP_SYNCNT = 0x7
+- TCP_S_DATA_IN = 0x4
+- TCP_S_DATA_OUT = 0x8
+- TCP_THIN_DUPACK = 0x11
+- TCP_THIN_LINEAR_TIMEOUTS = 0x10
+- TCP_TIMESTAMP = 0x18
+- TCP_USER_TIMEOUT = 0x12
+- TCP_WINDOW_CLAMP = 0xa
+- TCSAFLUSH = 0x2
+- TCSBRK = 0x5409
+- TCSBRKP = 0x5425
+- TCSETA = 0x5406
+- TCSETAF = 0x5408
+- TCSETAW = 0x5407
+- TCSETS = 0x5402
+- TCSETS2 = 0x402c542b
+- TCSETSF = 0x5404
+- TCSETSF2 = 0x402c542d
+- TCSETSW = 0x5403
+- TCSETSW2 = 0x402c542c
+- TCSETX = 0x5433
+- TCSETXF = 0x5434
+- TCSETXW = 0x5435
+- TCXONC = 0x540a
+- TIOCCBRK = 0x5428
+- TIOCCONS = 0x541d
+- TIOCEXCL = 0x540c
+- TIOCGDEV = 0x80045432
+- TIOCGETD = 0x5424
+- TIOCGEXCL = 0x80045440
+- TIOCGICOUNT = 0x545d
+- TIOCGLCKTRMIOS = 0x5456
+- TIOCGPGRP = 0x540f
+- TIOCGPKT = 0x80045438
+- TIOCGPTLCK = 0x80045439
+- TIOCGPTN = 0x80045430
+- TIOCGRS485 = 0x542e
+- TIOCGSERIAL = 0x541e
+- TIOCGSID = 0x5429
+- TIOCGSOFTCAR = 0x5419
+- TIOCGWINSZ = 0x5413
+- TIOCINQ = 0x541b
+- TIOCLINUX = 0x541c
+- TIOCMBIC = 0x5417
+- TIOCMBIS = 0x5416
+- TIOCMGET = 0x5415
+- TIOCMIWAIT = 0x545c
+- TIOCMSET = 0x5418
+- TIOCM_CAR = 0x40
+- TIOCM_CD = 0x40
+- TIOCM_CTS = 0x20
+- TIOCM_DSR = 0x100
+- TIOCM_DTR = 0x2
+- TIOCM_LE = 0x1
+- TIOCM_RI = 0x80
+- TIOCM_RNG = 0x80
+- TIOCM_RTS = 0x4
+- TIOCM_SR = 0x10
+- TIOCM_ST = 0x8
+- TIOCNOTTY = 0x5422
+- TIOCNXCL = 0x540d
+- TIOCOUTQ = 0x5411
+- TIOCPKT = 0x5420
+- TIOCPKT_DATA = 0x0
+- TIOCPKT_DOSTOP = 0x20
+- TIOCPKT_FLUSHREAD = 0x1
+- TIOCPKT_FLUSHWRITE = 0x2
+- TIOCPKT_IOCTL = 0x40
+- TIOCPKT_NOSTOP = 0x10
+- TIOCPKT_START = 0x8
+- TIOCPKT_STOP = 0x4
+- TIOCSBRK = 0x5427
+- TIOCSCTTY = 0x540e
+- TIOCSERCONFIG = 0x5453
+- TIOCSERGETLSR = 0x5459
+- TIOCSERGETMULTI = 0x545a
+- TIOCSERGSTRUCT = 0x5458
+- TIOCSERGWILD = 0x5454
+- TIOCSERSETMULTI = 0x545b
+- TIOCSERSWILD = 0x5455
+- TIOCSER_TEMT = 0x1
+- TIOCSETD = 0x5423
+- TIOCSIG = 0x40045436
+- TIOCSLCKTRMIOS = 0x5457
+- TIOCSPGRP = 0x5410
+- TIOCSPTLCK = 0x40045431
+- TIOCSRS485 = 0x542f
+- TIOCSSERIAL = 0x541f
+- TIOCSSOFTCAR = 0x541a
+- TIOCSTI = 0x5412
+- TIOCSWINSZ = 0x5414
+- TIOCVHANGUP = 0x5437
+- TOSTOP = 0x100
+- TS_COMM_LEN = 0x20
+- TUNATTACHFILTER = 0x401054d5
+- TUNDETACHFILTER = 0x401054d6
+- TUNGETFEATURES = 0x800454cf
+- TUNGETFILTER = 0x801054db
+- TUNGETIFF = 0x800454d2
+- TUNGETSNDBUF = 0x800454d3
+- TUNGETVNETBE = 0x800454df
+- TUNGETVNETHDRSZ = 0x800454d7
+- TUNGETVNETLE = 0x800454dd
+- TUNSETDEBUG = 0x400454c9
+- TUNSETGROUP = 0x400454ce
+- TUNSETIFF = 0x400454ca
+- TUNSETIFINDEX = 0x400454da
+- TUNSETLINK = 0x400454cd
+- TUNSETNOCSUM = 0x400454c8
+- TUNSETOFFLOAD = 0x400454d0
+- TUNSETOWNER = 0x400454cc
+- TUNSETPERSIST = 0x400454cb
+- TUNSETQUEUE = 0x400454d9
+- TUNSETSNDBUF = 0x400454d4
+- TUNSETTXFILTER = 0x400454d1
+- TUNSETVNETBE = 0x400454de
+- TUNSETVNETHDRSZ = 0x400454d8
+- TUNSETVNETLE = 0x400454dc
+- UMOUNT_NOFOLLOW = 0x8
+- VDISCARD = 0xd
+- VEOF = 0x4
+- VEOL = 0xb
+- VEOL2 = 0x10
+- VERASE = 0x2
+- VINTR = 0x0
+- VKILL = 0x3
+- VLNEXT = 0xf
+- VMADDR_CID_ANY = 0xffffffff
+- VMADDR_CID_HOST = 0x2
+- VMADDR_CID_HYPERVISOR = 0x0
+- VMADDR_CID_RESERVED = 0x1
+- VMADDR_PORT_ANY = 0xffffffff
+- VMIN = 0x6
+- VM_SOCKETS_INVALID_VERSION = 0xffffffff
+- VQUIT = 0x1
+- VREPRINT = 0xc
+- VSTART = 0x8
+- VSTOP = 0x9
+- VSUSP = 0xa
+- VSWTC = 0x7
+- VT0 = 0x0
+- VT1 = 0x4000
+- VTDLY = 0x4000
+- VTIME = 0x5
+- VWERASE = 0xe
+- WALL = 0x40000000
+- WCLONE = 0x80000000
+- WCONTINUED = 0x8
+- WEXITED = 0x4
+- WNOHANG = 0x1
+- WNOTHREAD = 0x20000000
+- WNOWAIT = 0x1000000
+- WORDSIZE = 0x40
+- WSTOPPED = 0x2
+- WUNTRACED = 0x2
+- XATTR_CREATE = 0x1
+- XATTR_REPLACE = 0x2
+- XCASE = 0x4
+- XTABS = 0x1800
++ B1000000 = 0x1008
++ B115200 = 0x1002
++ B1152000 = 0x1009
++ B1500000 = 0x100a
++ B2000000 = 0x100b
++ B230400 = 0x1003
++ B2500000 = 0x100c
++ B3000000 = 0x100d
++ B3500000 = 0x100e
++ B4000000 = 0x100f
++ B460800 = 0x1004
++ B500000 = 0x1005
++ B57600 = 0x1001
++ B576000 = 0x1006
++ B921600 = 0x1007
++ BLKBSZGET = 0x80081270
++ BLKBSZSET = 0x40081271
++ BLKFLSBUF = 0x1261
++ BLKFRAGET = 0x1265
++ BLKFRASET = 0x1264
++ BLKGETSIZE = 0x1260
++ BLKGETSIZE64 = 0x80081272
++ BLKPBSZGET = 0x127b
++ BLKRAGET = 0x1263
++ BLKRASET = 0x1262
++ BLKROGET = 0x125e
++ BLKROSET = 0x125d
++ BLKRRPART = 0x125f
++ BLKSECTGET = 0x1267
++ BLKSECTSET = 0x1266
++ BLKSSZGET = 0x1268
++ BOTHER = 0x1000
++ BS1 = 0x2000
++ BSDLY = 0x2000
++ CBAUD = 0x100f
++ CBAUDEX = 0x1000
++ CIBAUD = 0x100f0000
++ CLOCAL = 0x800
++ CR1 = 0x200
++ CR2 = 0x400
++ CR3 = 0x600
++ CRDLY = 0x600
++ CREAD = 0x80
++ CS6 = 0x10
++ CS7 = 0x20
++ CS8 = 0x30
++ CSIZE = 0x30
++ CSTOPB = 0x40
++ ECHOCTL = 0x200
++ ECHOE = 0x10
++ ECHOK = 0x20
++ ECHOKE = 0x800
++ ECHONL = 0x40
++ ECHOPRT = 0x400
++ EFD_CLOEXEC = 0x80000
++ EFD_NONBLOCK = 0x800
++ EPOLL_CLOEXEC = 0x80000
++ ESR_MAGIC = 0x45535201
++ EXTPROC = 0x10000
++ EXTRA_MAGIC = 0x45585401
++ FF1 = 0x8000
++ FFDLY = 0x8000
++ FLUSHO = 0x1000
++ FPSIMD_MAGIC = 0x46508001
++ FS_IOC_ENABLE_VERITY = 0x40806685
++ FS_IOC_GETFLAGS = 0x80086601
++ FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
++ FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
++ FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
++ F_GETLK = 0x5
++ F_GETLK64 = 0x5
++ F_GETOWN = 0x9
++ F_RDLCK = 0x0
++ F_SETLK = 0x6
++ F_SETLK64 = 0x6
++ F_SETLKW = 0x7
++ F_SETLKW64 = 0x7
++ F_SETOWN = 0x8
++ F_UNLCK = 0x2
++ F_WRLCK = 0x1
++ HUPCL = 0x400
++ ICANON = 0x2
++ IEXTEN = 0x8000
++ IN_CLOEXEC = 0x80000
++ IN_NONBLOCK = 0x800
++ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x7b9
++ ISIG = 0x1
++ IUCLC = 0x200
++ IXOFF = 0x1000
++ IXON = 0x400
++ MAP_ANON = 0x20
++ MAP_ANONYMOUS = 0x20
++ MAP_DENYWRITE = 0x800
++ MAP_EXECUTABLE = 0x1000
++ MAP_GROWSDOWN = 0x100
++ MAP_HUGETLB = 0x40000
++ MAP_LOCKED = 0x2000
++ MAP_NONBLOCK = 0x10000
++ MAP_NORESERVE = 0x4000
++ MAP_POPULATE = 0x8000
++ MAP_STACK = 0x20000
++ MAP_SYNC = 0x80000
++ MCL_CURRENT = 0x1
++ MCL_FUTURE = 0x2
++ MCL_ONFAULT = 0x4
++ NFDBITS = 0x40
++ NLDLY = 0x100
++ NOFLSH = 0x80
++ NS_GET_NSTYPE = 0xb703
++ NS_GET_OWNER_UID = 0xb704
++ NS_GET_PARENT = 0xb702
++ NS_GET_USERNS = 0xb701
++ OLCUC = 0x2
++ ONLCR = 0x4
++ O_APPEND = 0x400
++ O_ASYNC = 0x2000
++ O_CLOEXEC = 0x80000
++ O_CREAT = 0x40
++ O_DIRECT = 0x10000
++ O_DIRECTORY = 0x4000
++ O_DSYNC = 0x1000
++ O_EXCL = 0x80
++ O_FSYNC = 0x101000
++ O_LARGEFILE = 0x0
++ O_NDELAY = 0x800
++ O_NOATIME = 0x40000
++ O_NOCTTY = 0x100
++ O_NOFOLLOW = 0x8000
++ O_NONBLOCK = 0x800
++ O_PATH = 0x200000
++ O_RSYNC = 0x101000
++ O_SYNC = 0x101000
++ O_TMPFILE = 0x404000
++ O_TRUNC = 0x200
++ PARENB = 0x100
++ PARODD = 0x200
++ PENDIN = 0x4000
++ PERF_EVENT_IOC_DISABLE = 0x2401
++ PERF_EVENT_IOC_ENABLE = 0x2400
++ PERF_EVENT_IOC_ID = 0x80082407
++ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x4008240b
++ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
++ PERF_EVENT_IOC_PERIOD = 0x40082404
++ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
++ PERF_EVENT_IOC_REFRESH = 0x2402
++ PERF_EVENT_IOC_RESET = 0x2403
++ PERF_EVENT_IOC_SET_BPF = 0x40042408
++ PERF_EVENT_IOC_SET_FILTER = 0x40082406
++ PERF_EVENT_IOC_SET_OUTPUT = 0x2405
++ PPPIOCATTACH = 0x4004743d
++ PPPIOCATTCHAN = 0x40047438
++ PPPIOCCONNECT = 0x4004743a
++ PPPIOCDETACH = 0x4004743c
++ PPPIOCDISCONN = 0x7439
++ PPPIOCGASYNCMAP = 0x80047458
++ PPPIOCGCHAN = 0x80047437
++ PPPIOCGDEBUG = 0x80047441
++ PPPIOCGFLAGS = 0x8004745a
++ PPPIOCGIDLE = 0x8010743f
++ PPPIOCGIDLE32 = 0x8008743f
++ PPPIOCGIDLE64 = 0x8010743f
++ PPPIOCGL2TPSTATS = 0x80487436
++ PPPIOCGMRU = 0x80047453
++ PPPIOCGRASYNCMAP = 0x80047455
++ PPPIOCGUNIT = 0x80047456
++ PPPIOCGXASYNCMAP = 0x80207450
++ PPPIOCSACTIVE = 0x40107446
++ PPPIOCSASYNCMAP = 0x40047457
++ PPPIOCSCOMPRESS = 0x4010744d
++ PPPIOCSDEBUG = 0x40047440
++ PPPIOCSFLAGS = 0x40047459
++ PPPIOCSMAXCID = 0x40047451
++ PPPIOCSMRRU = 0x4004743b
++ PPPIOCSMRU = 0x40047452
++ PPPIOCSNPMODE = 0x4008744b
++ PPPIOCSPASS = 0x40107447
++ PPPIOCSRASYNCMAP = 0x40047454
++ PPPIOCSXASYNCMAP = 0x4020744f
++ PPPIOCXFERUNIT = 0x744e
++ PR_SET_PTRACER_ANY = 0xffffffffffffffff
++ PTRACE_SYSEMU = 0x1f
++ PTRACE_SYSEMU_SINGLESTEP = 0x20
++ RLIMIT_AS = 0x9
++ RLIMIT_MEMLOCK = 0x8
++ RLIMIT_NOFILE = 0x7
++ RLIMIT_NPROC = 0x6
++ RLIMIT_RSS = 0x5
++ RNDADDENTROPY = 0x40085203
++ RNDADDTOENTCNT = 0x40045201
++ RNDCLEARPOOL = 0x5206
++ RNDGETENTCNT = 0x80045200
++ RNDGETPOOL = 0x80085202
++ RNDRESEEDCRNG = 0x5207
++ RNDZAPENTCNT = 0x5204
++ RTC_AIE_OFF = 0x7002
++ RTC_AIE_ON = 0x7001
++ RTC_ALM_READ = 0x80247008
++ RTC_ALM_SET = 0x40247007
++ RTC_EPOCH_READ = 0x8008700d
++ RTC_EPOCH_SET = 0x4008700e
++ RTC_IRQP_READ = 0x8008700b
++ RTC_IRQP_SET = 0x4008700c
++ RTC_PIE_OFF = 0x7006
++ RTC_PIE_ON = 0x7005
++ RTC_PLL_GET = 0x80207011
++ RTC_PLL_SET = 0x40207012
++ RTC_RD_TIME = 0x80247009
++ RTC_SET_TIME = 0x4024700a
++ RTC_UIE_OFF = 0x7004
++ RTC_UIE_ON = 0x7003
++ RTC_VL_CLR = 0x7014
++ RTC_VL_READ = 0x80047013
++ RTC_WIE_OFF = 0x7010
++ RTC_WIE_ON = 0x700f
++ RTC_WKALM_RD = 0x80287010
++ RTC_WKALM_SET = 0x4028700f
++ SCM_TIMESTAMPING = 0x25
++ SCM_TIMESTAMPING_OPT_STATS = 0x36
++ SCM_TIMESTAMPING_PKTINFO = 0x3a
++ SCM_TIMESTAMPNS = 0x23
++ SCM_TXTIME = 0x3d
++ SCM_WIFI_STATUS = 0x29
++ SFD_CLOEXEC = 0x80000
++ SFD_NONBLOCK = 0x800
++ SIOCATMARK = 0x8905
++ SIOCGPGRP = 0x8904
++ SIOCGSTAMPNS_NEW = 0x80108907
++ SIOCGSTAMP_NEW = 0x80108906
++ SIOCINQ = 0x541b
++ SIOCOUTQ = 0x5411
++ SIOCSPGRP = 0x8902
++ SOCK_CLOEXEC = 0x80000
++ SOCK_DGRAM = 0x2
++ SOCK_NONBLOCK = 0x800
++ SOCK_STREAM = 0x1
++ SOL_SOCKET = 0x1
++ SO_ACCEPTCONN = 0x1e
++ SO_ATTACH_BPF = 0x32
++ SO_ATTACH_REUSEPORT_CBPF = 0x33
++ SO_ATTACH_REUSEPORT_EBPF = 0x34
++ SO_BINDTODEVICE = 0x19
++ SO_BINDTOIFINDEX = 0x3e
++ SO_BPF_EXTENSIONS = 0x30
++ SO_BROADCAST = 0x6
++ SO_BSDCOMPAT = 0xe
++ SO_BUSY_POLL = 0x2e
++ SO_CNX_ADVICE = 0x35
++ SO_COOKIE = 0x39
++ SO_DETACH_REUSEPORT_BPF = 0x44
++ SO_DOMAIN = 0x27
++ SO_DONTROUTE = 0x5
++ SO_ERROR = 0x4
++ SO_INCOMING_CPU = 0x31
++ SO_INCOMING_NAPI_ID = 0x38
++ SO_KEEPALIVE = 0x9
++ SO_LINGER = 0xd
++ SO_LOCK_FILTER = 0x2c
++ SO_MARK = 0x24
++ SO_MAX_PACING_RATE = 0x2f
++ SO_MEMINFO = 0x37
++ SO_NOFCS = 0x2b
++ SO_OOBINLINE = 0xa
++ SO_PASSCRED = 0x10
++ SO_PASSSEC = 0x22
++ SO_PEEK_OFF = 0x2a
++ SO_PEERCRED = 0x11
++ SO_PEERGROUPS = 0x3b
++ SO_PEERSEC = 0x1f
++ SO_PROTOCOL = 0x26
++ SO_RCVBUF = 0x8
++ SO_RCVBUFFORCE = 0x21
++ SO_RCVLOWAT = 0x12
++ SO_RCVTIMEO = 0x14
++ SO_RCVTIMEO_NEW = 0x42
++ SO_RCVTIMEO_OLD = 0x14
++ SO_REUSEADDR = 0x2
++ SO_REUSEPORT = 0xf
++ SO_RXQ_OVFL = 0x28
++ SO_SECURITY_AUTHENTICATION = 0x16
++ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
++ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
++ SO_SELECT_ERR_QUEUE = 0x2d
++ SO_SNDBUF = 0x7
++ SO_SNDBUFFORCE = 0x20
++ SO_SNDLOWAT = 0x13
++ SO_SNDTIMEO = 0x15
++ SO_SNDTIMEO_NEW = 0x43
++ SO_SNDTIMEO_OLD = 0x15
++ SO_TIMESTAMPING = 0x25
++ SO_TIMESTAMPING_NEW = 0x41
++ SO_TIMESTAMPING_OLD = 0x25
++ SO_TIMESTAMPNS = 0x23
++ SO_TIMESTAMPNS_NEW = 0x40
++ SO_TIMESTAMPNS_OLD = 0x23
++ SO_TIMESTAMP_NEW = 0x3f
++ SO_TXTIME = 0x3d
++ SO_TYPE = 0x3
++ SO_WIFI_STATUS = 0x29
++ SO_ZEROCOPY = 0x3c
++ SVE_MAGIC = 0x53564501
++ TAB1 = 0x800
++ TAB2 = 0x1000
++ TAB3 = 0x1800
++ TABDLY = 0x1800
++ TCFLSH = 0x540b
++ TCGETA = 0x5405
++ TCGETS = 0x5401
++ TCGETS2 = 0x802c542a
++ TCGETX = 0x5432
++ TCSAFLUSH = 0x2
++ TCSBRK = 0x5409
++ TCSBRKP = 0x5425
++ TCSETA = 0x5406
++ TCSETAF = 0x5408
++ TCSETAW = 0x5407
++ TCSETS = 0x5402
++ TCSETS2 = 0x402c542b
++ TCSETSF = 0x5404
++ TCSETSF2 = 0x402c542d
++ TCSETSW = 0x5403
++ TCSETSW2 = 0x402c542c
++ TCSETX = 0x5433
++ TCSETXF = 0x5434
++ TCSETXW = 0x5435
++ TCXONC = 0x540a
++ TIOCCBRK = 0x5428
++ TIOCCONS = 0x541d
++ TIOCEXCL = 0x540c
++ TIOCGDEV = 0x80045432
++ TIOCGETD = 0x5424
++ TIOCGEXCL = 0x80045440
++ TIOCGICOUNT = 0x545d
++ TIOCGISO7816 = 0x80285442
++ TIOCGLCKTRMIOS = 0x5456
++ TIOCGPGRP = 0x540f
++ TIOCGPKT = 0x80045438
++ TIOCGPTLCK = 0x80045439
++ TIOCGPTN = 0x80045430
++ TIOCGPTPEER = 0x5441
++ TIOCGRS485 = 0x542e
++ TIOCGSERIAL = 0x541e
++ TIOCGSID = 0x5429
++ TIOCGSOFTCAR = 0x5419
++ TIOCGWINSZ = 0x5413
++ TIOCINQ = 0x541b
++ TIOCLINUX = 0x541c
++ TIOCMBIC = 0x5417
++ TIOCMBIS = 0x5416
++ TIOCMGET = 0x5415
++ TIOCMIWAIT = 0x545c
++ TIOCMSET = 0x5418
++ TIOCM_CAR = 0x40
++ TIOCM_CD = 0x40
++ TIOCM_CTS = 0x20
++ TIOCM_DSR = 0x100
++ TIOCM_RI = 0x80
++ TIOCM_RNG = 0x80
++ TIOCM_SR = 0x10
++ TIOCM_ST = 0x8
++ TIOCNOTTY = 0x5422
++ TIOCNXCL = 0x540d
++ TIOCOUTQ = 0x5411
++ TIOCPKT = 0x5420
++ TIOCSBRK = 0x5427
++ TIOCSCTTY = 0x540e
++ TIOCSERCONFIG = 0x5453
++ TIOCSERGETLSR = 0x5459
++ TIOCSERGETMULTI = 0x545a
++ TIOCSERGSTRUCT = 0x5458
++ TIOCSERGWILD = 0x5454
++ TIOCSERSETMULTI = 0x545b
++ TIOCSERSWILD = 0x5455
++ TIOCSER_TEMT = 0x1
++ TIOCSETD = 0x5423
++ TIOCSIG = 0x40045436
++ TIOCSISO7816 = 0xc0285443
++ TIOCSLCKTRMIOS = 0x5457
++ TIOCSPGRP = 0x5410
++ TIOCSPTLCK = 0x40045431
++ TIOCSRS485 = 0x542f
++ TIOCSSERIAL = 0x541f
++ TIOCSSOFTCAR = 0x541a
++ TIOCSTI = 0x5412
++ TIOCSWINSZ = 0x5414
++ TIOCVHANGUP = 0x5437
++ TOSTOP = 0x100
++ TUNATTACHFILTER = 0x401054d5
++ TUNDETACHFILTER = 0x401054d6
++ TUNGETDEVNETNS = 0x54e3
++ TUNGETFEATURES = 0x800454cf
++ TUNGETFILTER = 0x801054db
++ TUNGETIFF = 0x800454d2
++ TUNGETSNDBUF = 0x800454d3
++ TUNGETVNETBE = 0x800454df
++ TUNGETVNETHDRSZ = 0x800454d7
++ TUNGETVNETLE = 0x800454dd
++ TUNSETCARRIER = 0x400454e2
++ TUNSETDEBUG = 0x400454c9
++ TUNSETFILTEREBPF = 0x800454e1
++ TUNSETGROUP = 0x400454ce
++ TUNSETIFF = 0x400454ca
++ TUNSETIFINDEX = 0x400454da
++ TUNSETLINK = 0x400454cd
++ TUNSETNOCSUM = 0x400454c8
++ TUNSETOFFLOAD = 0x400454d0
++ TUNSETOWNER = 0x400454cc
++ TUNSETPERSIST = 0x400454cb
++ TUNSETQUEUE = 0x400454d9
++ TUNSETSNDBUF = 0x400454d4
++ TUNSETSTEERINGEBPF = 0x800454e0
++ TUNSETTXFILTER = 0x400454d1
++ TUNSETVNETBE = 0x400454de
++ TUNSETVNETHDRSZ = 0x400454d8
++ TUNSETVNETLE = 0x400454dc
++ UBI_IOCATT = 0x40186f40
++ UBI_IOCDET = 0x40046f41
++ UBI_IOCEBCH = 0x40044f02
++ UBI_IOCEBER = 0x40044f01
++ UBI_IOCEBISMAP = 0x80044f05
++ UBI_IOCEBMAP = 0x40084f03
++ UBI_IOCEBUNMAP = 0x40044f04
++ UBI_IOCMKVOL = 0x40986f00
++ UBI_IOCRMVOL = 0x40046f01
++ UBI_IOCRNVOL = 0x51106f03
++ UBI_IOCRPEB = 0x40046f04
++ UBI_IOCRSVOL = 0x400c6f02
++ UBI_IOCSETVOLPROP = 0x40104f06
++ UBI_IOCSPEB = 0x40046f05
++ UBI_IOCVOLCRBLK = 0x40804f07
++ UBI_IOCVOLRMBLK = 0x4f08
++ UBI_IOCVOLUP = 0x40084f00
++ VDISCARD = 0xd
++ VEOF = 0x4
++ VEOL = 0xb
++ VEOL2 = 0x10
++ VMIN = 0x6
++ VREPRINT = 0xc
++ VSTART = 0x8
++ VSTOP = 0x9
++ VSUSP = 0xa
++ VSWTC = 0x7
++ VT1 = 0x4000
++ VTDLY = 0x4000
++ VTIME = 0x5
++ VWERASE = 0xe
++ WDIOC_GETBOOTSTATUS = 0x80045702
++ WDIOC_GETPRETIMEOUT = 0x80045709
++ WDIOC_GETSTATUS = 0x80045701
++ WDIOC_GETSUPPORT = 0x80285700
++ WDIOC_GETTEMP = 0x80045703
++ WDIOC_GETTIMELEFT = 0x8004570a
++ WDIOC_GETTIMEOUT = 0x80045707
++ WDIOC_KEEPALIVE = 0x80045705
++ WDIOC_SETOPTIONS = 0x80045704
++ WORDSIZE = 0x40
++ XCASE = 0x4
++ XTABS = 0x1800
+ )
+
+ // Errors
+ const (
+- E2BIG = syscall.Errno(0x7)
+- EACCES = syscall.Errno(0xd)
+ EADDRINUSE = syscall.Errno(0x62)
+ EADDRNOTAVAIL = syscall.Errno(0x63)
+ EADV = syscall.Errno(0x44)
+ EAFNOSUPPORT = syscall.Errno(0x61)
+- EAGAIN = syscall.Errno(0xb)
+ EALREADY = syscall.Errno(0x72)
+ EBADE = syscall.Errno(0x34)
+- EBADF = syscall.Errno(0x9)
+ EBADFD = syscall.Errno(0x4d)
+ EBADMSG = syscall.Errno(0x4a)
+ EBADR = syscall.Errno(0x35)
+ EBADRQC = syscall.Errno(0x38)
+ EBADSLT = syscall.Errno(0x39)
+ EBFONT = syscall.Errno(0x3b)
+- EBUSY = syscall.Errno(0x10)
+ ECANCELED = syscall.Errno(0x7d)
+- ECHILD = syscall.Errno(0xa)
+ ECHRNG = syscall.Errno(0x2c)
+ ECOMM = syscall.Errno(0x46)
+ ECONNABORTED = syscall.Errno(0x67)
+@@ -1871,23 +493,15 @@ const (
+ EDEADLK = syscall.Errno(0x23)
+ EDEADLOCK = syscall.Errno(0x23)
+ EDESTADDRREQ = syscall.Errno(0x59)
+- EDOM = syscall.Errno(0x21)
+ EDOTDOT = syscall.Errno(0x49)
+ EDQUOT = syscall.Errno(0x7a)
+- EEXIST = syscall.Errno(0x11)
+- EFAULT = syscall.Errno(0xe)
+- EFBIG = syscall.Errno(0x1b)
+ EHOSTDOWN = syscall.Errno(0x70)
+ EHOSTUNREACH = syscall.Errno(0x71)
+ EHWPOISON = syscall.Errno(0x85)
+ EIDRM = syscall.Errno(0x2b)
+ EILSEQ = syscall.Errno(0x54)
+ EINPROGRESS = syscall.Errno(0x73)
+- EINTR = syscall.Errno(0x4)
+- EINVAL = syscall.Errno(0x16)
+- EIO = syscall.Errno(0x5)
+ EISCONN = syscall.Errno(0x6a)
+- EISDIR = syscall.Errno(0x15)
+ EISNAM = syscall.Errno(0x78)
+ EKEYEXPIRED = syscall.Errno(0x7f)
+ EKEYREJECTED = syscall.Errno(0x81)
+@@ -1904,8 +518,6 @@ const (
+ ELNRNG = syscall.Errno(0x30)
+ ELOOP = syscall.Errno(0x28)
+ EMEDIUMTYPE = syscall.Errno(0x7c)
+- EMFILE = syscall.Errno(0x18)
+- EMLINK = syscall.Errno(0x1f)
+ EMSGSIZE = syscall.Errno(0x5a)
+ EMULTIHOP = syscall.Errno(0x48)
+ ENAMETOOLONG = syscall.Errno(0x24)
+@@ -1913,103 +525,70 @@ const (
+ ENETDOWN = syscall.Errno(0x64)
+ ENETRESET = syscall.Errno(0x66)
+ ENETUNREACH = syscall.Errno(0x65)
+- ENFILE = syscall.Errno(0x17)
+ ENOANO = syscall.Errno(0x37)
+ ENOBUFS = syscall.Errno(0x69)
+ ENOCSI = syscall.Errno(0x32)
+ ENODATA = syscall.Errno(0x3d)
+- ENODEV = syscall.Errno(0x13)
+- ENOENT = syscall.Errno(0x2)
+- ENOEXEC = syscall.Errno(0x8)
+ ENOKEY = syscall.Errno(0x7e)
+ ENOLCK = syscall.Errno(0x25)
+ ENOLINK = syscall.Errno(0x43)
+ ENOMEDIUM = syscall.Errno(0x7b)
+- ENOMEM = syscall.Errno(0xc)
+ ENOMSG = syscall.Errno(0x2a)
+ ENONET = syscall.Errno(0x40)
+ ENOPKG = syscall.Errno(0x41)
+ ENOPROTOOPT = syscall.Errno(0x5c)
+- ENOSPC = syscall.Errno(0x1c)
+ ENOSR = syscall.Errno(0x3f)
+ ENOSTR = syscall.Errno(0x3c)
+ ENOSYS = syscall.Errno(0x26)
+- ENOTBLK = syscall.Errno(0xf)
+ ENOTCONN = syscall.Errno(0x6b)
+- ENOTDIR = syscall.Errno(0x14)
+ ENOTEMPTY = syscall.Errno(0x27)
+ ENOTNAM = syscall.Errno(0x76)
+ ENOTRECOVERABLE = syscall.Errno(0x83)
+ ENOTSOCK = syscall.Errno(0x58)
+ ENOTSUP = syscall.Errno(0x5f)
+- ENOTTY = syscall.Errno(0x19)
+ ENOTUNIQ = syscall.Errno(0x4c)
+- ENXIO = syscall.Errno(0x6)
+ EOPNOTSUPP = syscall.Errno(0x5f)
+ EOVERFLOW = syscall.Errno(0x4b)
+ EOWNERDEAD = syscall.Errno(0x82)
+- EPERM = syscall.Errno(0x1)
+ EPFNOSUPPORT = syscall.Errno(0x60)
+- EPIPE = syscall.Errno(0x20)
+ EPROTO = syscall.Errno(0x47)
+ EPROTONOSUPPORT = syscall.Errno(0x5d)
+ EPROTOTYPE = syscall.Errno(0x5b)
+- ERANGE = syscall.Errno(0x22)
+ EREMCHG = syscall.Errno(0x4e)
+ EREMOTE = syscall.Errno(0x42)
+ EREMOTEIO = syscall.Errno(0x79)
+ ERESTART = syscall.Errno(0x55)
+ ERFKILL = syscall.Errno(0x84)
+- EROFS = syscall.Errno(0x1e)
+ ESHUTDOWN = syscall.Errno(0x6c)
+ ESOCKTNOSUPPORT = syscall.Errno(0x5e)
+- ESPIPE = syscall.Errno(0x1d)
+- ESRCH = syscall.Errno(0x3)
+ ESRMNT = syscall.Errno(0x45)
+ ESTALE = syscall.Errno(0x74)
+ ESTRPIPE = syscall.Errno(0x56)
+ ETIME = syscall.Errno(0x3e)
+ ETIMEDOUT = syscall.Errno(0x6e)
+ ETOOMANYREFS = syscall.Errno(0x6d)
+- ETXTBSY = syscall.Errno(0x1a)
+ EUCLEAN = syscall.Errno(0x75)
+ EUNATCH = syscall.Errno(0x31)
+ EUSERS = syscall.Errno(0x57)
+- EWOULDBLOCK = syscall.Errno(0xb)
+- EXDEV = syscall.Errno(0x12)
+ EXFULL = syscall.Errno(0x36)
+ )
+
+ // Signals
+ const (
+- SIGABRT = syscall.Signal(0x6)
+- SIGALRM = syscall.Signal(0xe)
+ SIGBUS = syscall.Signal(0x7)
+ SIGCHLD = syscall.Signal(0x11)
+ SIGCLD = syscall.Signal(0x11)
+ SIGCONT = syscall.Signal(0x12)
+- SIGFPE = syscall.Signal(0x8)
+- SIGHUP = syscall.Signal(0x1)
+- SIGILL = syscall.Signal(0x4)
+- SIGINT = syscall.Signal(0x2)
+ SIGIO = syscall.Signal(0x1d)
+- SIGIOT = syscall.Signal(0x6)
+- SIGKILL = syscall.Signal(0x9)
+- SIGPIPE = syscall.Signal(0xd)
+ SIGPOLL = syscall.Signal(0x1d)
+ SIGPROF = syscall.Signal(0x1b)
+ SIGPWR = syscall.Signal(0x1e)
+- SIGQUIT = syscall.Signal(0x3)
+- SIGSEGV = syscall.Signal(0xb)
+ SIGSTKFLT = syscall.Signal(0x10)
+ SIGSTOP = syscall.Signal(0x13)
+ SIGSYS = syscall.Signal(0x1f)
+- SIGTERM = syscall.Signal(0xf)
+- SIGTRAP = syscall.Signal(0x5)
+ SIGTSTP = syscall.Signal(0x14)
+ SIGTTIN = syscall.Signal(0x15)
+ SIGTTOU = syscall.Signal(0x16)
+- SIGUNUSED = syscall.Signal(0x1f)
+ SIGURG = syscall.Signal(0x17)
+ SIGUSR1 = syscall.Signal(0xa)
+ SIGUSR2 = syscall.Signal(0xc)
+@@ -2020,171 +599,179 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "no such device or address",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource temporarily unavailable",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device or resource busy",
+- 17: "file exists",
+- 18: "invalid cross-device link",
+- 19: "no such device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "numerical result out of range",
+- 35: "resource deadlock avoided",
+- 36: "file name too long",
+- 37: "no locks available",
+- 38: "function not implemented",
+- 39: "directory not empty",
+- 40: "too many levels of symbolic links",
+- 42: "no message of desired type",
+- 43: "identifier removed",
+- 44: "channel number out of range",
+- 45: "level 2 not synchronized",
+- 46: "level 3 halted",
+- 47: "level 3 reset",
+- 48: "link number out of range",
+- 49: "protocol driver not attached",
+- 50: "no CSI structure available",
+- 51: "level 2 halted",
+- 52: "invalid exchange",
+- 53: "invalid request descriptor",
+- 54: "exchange full",
+- 55: "no anode",
+- 56: "invalid request code",
+- 57: "invalid slot",
+- 59: "bad font file format",
+- 60: "device not a stream",
+- 61: "no data available",
+- 62: "timer expired",
+- 63: "out of streams resources",
+- 64: "machine is not on the network",
+- 65: "package not installed",
+- 66: "object is remote",
+- 67: "link has been severed",
+- 68: "advertise error",
+- 69: "srmount error",
+- 70: "communication error on send",
+- 71: "protocol error",
+- 72: "multihop attempted",
+- 73: "RFS specific error",
+- 74: "bad message",
+- 75: "value too large for defined data type",
+- 76: "name not unique on network",
+- 77: "file descriptor in bad state",
+- 78: "remote address changed",
+- 79: "can not access a needed shared library",
+- 80: "accessing a corrupted shared library",
+- 81: ".lib section in a.out corrupted",
+- 82: "attempting to link in too many shared libraries",
+- 83: "cannot exec a shared library directly",
+- 84: "invalid or incomplete multibyte or wide character",
+- 85: "interrupted system call should be restarted",
+- 86: "streams pipe error",
+- 87: "too many users",
+- 88: "socket operation on non-socket",
+- 89: "destination address required",
+- 90: "message too long",
+- 91: "protocol wrong type for socket",
+- 92: "protocol not available",
+- 93: "protocol not supported",
+- 94: "socket type not supported",
+- 95: "operation not supported",
+- 96: "protocol family not supported",
+- 97: "address family not supported by protocol",
+- 98: "address already in use",
+- 99: "cannot assign requested address",
+- 100: "network is down",
+- 101: "network is unreachable",
+- 102: "network dropped connection on reset",
+- 103: "software caused connection abort",
+- 104: "connection reset by peer",
+- 105: "no buffer space available",
+- 106: "transport endpoint is already connected",
+- 107: "transport endpoint is not connected",
+- 108: "cannot send after transport endpoint shutdown",
+- 109: "too many references: cannot splice",
+- 110: "connection timed out",
+- 111: "connection refused",
+- 112: "host is down",
+- 113: "no route to host",
+- 114: "operation already in progress",
+- 115: "operation now in progress",
+- 116: "stale file handle",
+- 117: "structure needs cleaning",
+- 118: "not a XENIX named type file",
+- 119: "no XENIX semaphores available",
+- 120: "is a named type file",
+- 121: "remote I/O error",
+- 122: "disk quota exceeded",
+- 123: "no medium found",
+- 124: "wrong medium type",
+- 125: "operation canceled",
+- 126: "required key not available",
+- 127: "key has expired",
+- 128: "key has been revoked",
+- 129: "key was rejected by service",
+- 130: "owner died",
+- 131: "state not recoverable",
+- 132: "operation not possible due to RF-kill",
+- 133: "memory page has hardware error",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "no such device or address"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EAGAIN", "resource temporarily unavailable"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device or resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "invalid cross-device link"},
++ {19, "ENODEV", "no such device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "numerical result out of range"},
++ {35, "EDEADLK", "resource deadlock avoided"},
++ {36, "ENAMETOOLONG", "file name too long"},
++ {37, "ENOLCK", "no locks available"},
++ {38, "ENOSYS", "function not implemented"},
++ {39, "ENOTEMPTY", "directory not empty"},
++ {40, "ELOOP", "too many levels of symbolic links"},
++ {42, "ENOMSG", "no message of desired type"},
++ {43, "EIDRM", "identifier removed"},
++ {44, "ECHRNG", "channel number out of range"},
++ {45, "EL2NSYNC", "level 2 not synchronized"},
++ {46, "EL3HLT", "level 3 halted"},
++ {47, "EL3RST", "level 3 reset"},
++ {48, "ELNRNG", "link number out of range"},
++ {49, "EUNATCH", "protocol driver not attached"},
++ {50, "ENOCSI", "no CSI structure available"},
++ {51, "EL2HLT", "level 2 halted"},
++ {52, "EBADE", "invalid exchange"},
++ {53, "EBADR", "invalid request descriptor"},
++ {54, "EXFULL", "exchange full"},
++ {55, "ENOANO", "no anode"},
++ {56, "EBADRQC", "invalid request code"},
++ {57, "EBADSLT", "invalid slot"},
++ {59, "EBFONT", "bad font file format"},
++ {60, "ENOSTR", "device not a stream"},
++ {61, "ENODATA", "no data available"},
++ {62, "ETIME", "timer expired"},
++ {63, "ENOSR", "out of streams resources"},
++ {64, "ENONET", "machine is not on the network"},
++ {65, "ENOPKG", "package not installed"},
++ {66, "EREMOTE", "object is remote"},
++ {67, "ENOLINK", "link has been severed"},
++ {68, "EADV", "advertise error"},
++ {69, "ESRMNT", "srmount error"},
++ {70, "ECOMM", "communication error on send"},
++ {71, "EPROTO", "protocol error"},
++ {72, "EMULTIHOP", "multihop attempted"},
++ {73, "EDOTDOT", "RFS specific error"},
++ {74, "EBADMSG", "bad message"},
++ {75, "EOVERFLOW", "value too large for defined data type"},
++ {76, "ENOTUNIQ", "name not unique on network"},
++ {77, "EBADFD", "file descriptor in bad state"},
++ {78, "EREMCHG", "remote address changed"},
++ {79, "ELIBACC", "can not access a needed shared library"},
++ {80, "ELIBBAD", "accessing a corrupted shared library"},
++ {81, "ELIBSCN", ".lib section in a.out corrupted"},
++ {82, "ELIBMAX", "attempting to link in too many shared libraries"},
++ {83, "ELIBEXEC", "cannot exec a shared library directly"},
++ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"},
++ {85, "ERESTART", "interrupted system call should be restarted"},
++ {86, "ESTRPIPE", "streams pipe error"},
++ {87, "EUSERS", "too many users"},
++ {88, "ENOTSOCK", "socket operation on non-socket"},
++ {89, "EDESTADDRREQ", "destination address required"},
++ {90, "EMSGSIZE", "message too long"},
++ {91, "EPROTOTYPE", "protocol wrong type for socket"},
++ {92, "ENOPROTOOPT", "protocol not available"},
++ {93, "EPROTONOSUPPORT", "protocol not supported"},
++ {94, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {95, "ENOTSUP", "operation not supported"},
++ {96, "EPFNOSUPPORT", "protocol family not supported"},
++ {97, "EAFNOSUPPORT", "address family not supported by protocol"},
++ {98, "EADDRINUSE", "address already in use"},
++ {99, "EADDRNOTAVAIL", "cannot assign requested address"},
++ {100, "ENETDOWN", "network is down"},
++ {101, "ENETUNREACH", "network is unreachable"},
++ {102, "ENETRESET", "network dropped connection on reset"},
++ {103, "ECONNABORTED", "software caused connection abort"},
++ {104, "ECONNRESET", "connection reset by peer"},
++ {105, "ENOBUFS", "no buffer space available"},
++ {106, "EISCONN", "transport endpoint is already connected"},
++ {107, "ENOTCONN", "transport endpoint is not connected"},
++ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
++ {109, "ETOOMANYREFS", "too many references: cannot splice"},
++ {110, "ETIMEDOUT", "connection timed out"},
++ {111, "ECONNREFUSED", "connection refused"},
++ {112, "EHOSTDOWN", "host is down"},
++ {113, "EHOSTUNREACH", "no route to host"},
++ {114, "EALREADY", "operation already in progress"},
++ {115, "EINPROGRESS", "operation now in progress"},
++ {116, "ESTALE", "stale file handle"},
++ {117, "EUCLEAN", "structure needs cleaning"},
++ {118, "ENOTNAM", "not a XENIX named type file"},
++ {119, "ENAVAIL", "no XENIX semaphores available"},
++ {120, "EISNAM", "is a named type file"},
++ {121, "EREMOTEIO", "remote I/O error"},
++ {122, "EDQUOT", "disk quota exceeded"},
++ {123, "ENOMEDIUM", "no medium found"},
++ {124, "EMEDIUMTYPE", "wrong medium type"},
++ {125, "ECANCELED", "operation canceled"},
++ {126, "ENOKEY", "required key not available"},
++ {127, "EKEYEXPIRED", "key has expired"},
++ {128, "EKEYREVOKED", "key has been revoked"},
++ {129, "EKEYREJECTED", "key was rejected by service"},
++ {130, "EOWNERDEAD", "owner died"},
++ {131, "ENOTRECOVERABLE", "state not recoverable"},
++ {132, "ERFKILL", "operation not possible due to RF-kill"},
++ {133, "EHWPOISON", "memory page has hardware error"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/breakpoint trap",
+- 6: "aborted",
+- 7: "bus error",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "user defined signal 1",
+- 11: "segmentation fault",
+- 12: "user defined signal 2",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "stack fault",
+- 17: "child exited",
+- 18: "continued",
+- 19: "stopped (signal)",
+- 20: "stopped",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "urgent I/O condition",
+- 24: "CPU time limit exceeded",
+- 25: "file size limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window changed",
+- 29: "I/O possible",
+- 30: "power failure",
+- 31: "bad system call",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/breakpoint trap"},
++ {6, "SIGABRT", "aborted"},
++ {7, "SIGBUS", "bus error"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGUSR1", "user defined signal 1"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGUSR2", "user defined signal 2"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGSTKFLT", "stack fault"},
++ {17, "SIGCHLD", "child exited"},
++ {18, "SIGCONT", "continued"},
++ {19, "SIGSTOP", "stopped (signal)"},
++ {20, "SIGTSTP", "stopped"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGURG", "urgent I/O condition"},
++ {24, "SIGXCPU", "CPU time limit exceeded"},
++ {25, "SIGXFSZ", "file size limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window changed"},
++ {29, "SIGIO", "I/O possible"},
++ {30, "SIGPWR", "power failure"},
++ {31, "SIGSYS", "bad system call"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go b/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go
+index 900f568a..4826bd70 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go
+@@ -3,7 +3,7 @@
+
+ // +build mips,linux
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
+
+ package unix
+@@ -11,1873 +11,489 @@ package unix
+ import "syscall"
+
+ const (
+- AF_ALG = 0x26
+- AF_APPLETALK = 0x5
+- AF_ASH = 0x12
+- AF_ATMPVC = 0x8
+- AF_ATMSVC = 0x14
+- AF_AX25 = 0x3
+- AF_BLUETOOTH = 0x1f
+- AF_BRIDGE = 0x7
+- AF_CAIF = 0x25
+- AF_CAN = 0x1d
+- AF_DECnet = 0xc
+- AF_ECONET = 0x13
+- AF_FILE = 0x1
+- AF_IB = 0x1b
+- AF_IEEE802154 = 0x24
+- AF_INET = 0x2
+- AF_INET6 = 0xa
+- AF_IPX = 0x4
+- AF_IRDA = 0x17
+- AF_ISDN = 0x22
+- AF_IUCV = 0x20
+- AF_KCM = 0x29
+- AF_KEY = 0xf
+- AF_LLC = 0x1a
+- AF_LOCAL = 0x1
+- AF_MAX = 0x2b
+- AF_MPLS = 0x1c
+- AF_NETBEUI = 0xd
+- AF_NETLINK = 0x10
+- AF_NETROM = 0x6
+- AF_NFC = 0x27
+- AF_PACKET = 0x11
+- AF_PHONET = 0x23
+- AF_PPPOX = 0x18
+- AF_QIPCRTR = 0x2a
+- AF_RDS = 0x15
+- AF_ROSE = 0xb
+- AF_ROUTE = 0x10
+- AF_RXRPC = 0x21
+- AF_SECURITY = 0xe
+- AF_SNA = 0x16
+- AF_TIPC = 0x1e
+- AF_UNIX = 0x1
+- AF_UNSPEC = 0x0
+- AF_VSOCK = 0x28
+- AF_WANPIPE = 0x19
+- AF_X25 = 0x9
+- ALG_OP_DECRYPT = 0x0
+- ALG_OP_ENCRYPT = 0x1
+- ALG_SET_AEAD_ASSOCLEN = 0x4
+- ALG_SET_AEAD_AUTHSIZE = 0x5
+- ALG_SET_IV = 0x2
+- ALG_SET_KEY = 0x1
+- ALG_SET_OP = 0x3
+- ARPHRD_6LOWPAN = 0x339
+- ARPHRD_ADAPT = 0x108
+- ARPHRD_APPLETLK = 0x8
+- ARPHRD_ARCNET = 0x7
+- ARPHRD_ASH = 0x30d
+- ARPHRD_ATM = 0x13
+- ARPHRD_AX25 = 0x3
+- ARPHRD_BIF = 0x307
+- ARPHRD_CAIF = 0x336
+- ARPHRD_CAN = 0x118
+- ARPHRD_CHAOS = 0x5
+- ARPHRD_CISCO = 0x201
+- ARPHRD_CSLIP = 0x101
+- ARPHRD_CSLIP6 = 0x103
+- ARPHRD_DDCMP = 0x205
+- ARPHRD_DLCI = 0xf
+- ARPHRD_ECONET = 0x30e
+- ARPHRD_EETHER = 0x2
+- ARPHRD_ETHER = 0x1
+- ARPHRD_EUI64 = 0x1b
+- ARPHRD_FCAL = 0x311
+- ARPHRD_FCFABRIC = 0x313
+- ARPHRD_FCPL = 0x312
+- ARPHRD_FCPP = 0x310
+- ARPHRD_FDDI = 0x306
+- ARPHRD_FRAD = 0x302
+- ARPHRD_HDLC = 0x201
+- ARPHRD_HIPPI = 0x30c
+- ARPHRD_HWX25 = 0x110
+- ARPHRD_IEEE1394 = 0x18
+- ARPHRD_IEEE802 = 0x6
+- ARPHRD_IEEE80211 = 0x321
+- ARPHRD_IEEE80211_PRISM = 0x322
+- ARPHRD_IEEE80211_RADIOTAP = 0x323
+- ARPHRD_IEEE802154 = 0x324
+- ARPHRD_IEEE802154_MONITOR = 0x325
+- ARPHRD_IEEE802_TR = 0x320
+- ARPHRD_INFINIBAND = 0x20
+- ARPHRD_IP6GRE = 0x337
+- ARPHRD_IPDDP = 0x309
+- ARPHRD_IPGRE = 0x30a
+- ARPHRD_IRDA = 0x30f
+- ARPHRD_LAPB = 0x204
+- ARPHRD_LOCALTLK = 0x305
+- ARPHRD_LOOPBACK = 0x304
+- ARPHRD_METRICOM = 0x17
+- ARPHRD_NETLINK = 0x338
+- ARPHRD_NETROM = 0x0
+- ARPHRD_NONE = 0xfffe
+- ARPHRD_PHONET = 0x334
+- ARPHRD_PHONET_PIPE = 0x335
+- ARPHRD_PIMREG = 0x30b
+- ARPHRD_PPP = 0x200
+- ARPHRD_PRONET = 0x4
+- ARPHRD_RAWHDLC = 0x206
+- ARPHRD_ROSE = 0x10e
+- ARPHRD_RSRVD = 0x104
+- ARPHRD_SIT = 0x308
+- ARPHRD_SKIP = 0x303
+- ARPHRD_SLIP = 0x100
+- ARPHRD_SLIP6 = 0x102
+- ARPHRD_TUNNEL = 0x300
+- ARPHRD_TUNNEL6 = 0x301
+- ARPHRD_VOID = 0xffff
+- ARPHRD_X25 = 0x10f
+- B0 = 0x0
+- B1000000 = 0x1008
+- B110 = 0x3
+- B115200 = 0x1002
+- B1152000 = 0x1009
+- B1200 = 0x9
+- B134 = 0x4
+- B150 = 0x5
+- B1500000 = 0x100a
+- B1800 = 0xa
+- B19200 = 0xe
+- B200 = 0x6
+- B2000000 = 0x100b
+- B230400 = 0x1003
+- B2400 = 0xb
+- B2500000 = 0x100c
+- B300 = 0x7
+- B3000000 = 0x100d
+- B3500000 = 0x100e
+- B38400 = 0xf
+- B4000000 = 0x100f
+- B460800 = 0x1004
+- B4800 = 0xc
+- B50 = 0x1
+- B500000 = 0x1005
+- B57600 = 0x1001
+- B576000 = 0x1006
+- B600 = 0x8
+- B75 = 0x2
+- B921600 = 0x1007
+- B9600 = 0xd
+- BLKBSZGET = 0x40041270
+- BLKBSZSET = 0x80041271
+- BLKFLSBUF = 0x20001261
+- BLKFRAGET = 0x20001265
+- BLKFRASET = 0x20001264
+- BLKGETSIZE = 0x20001260
+- BLKGETSIZE64 = 0x40041272
+- BLKPBSZGET = 0x2000127b
+- BLKRAGET = 0x20001263
+- BLKRASET = 0x20001262
+- BLKROGET = 0x2000125e
+- BLKROSET = 0x2000125d
+- BLKRRPART = 0x2000125f
+- BLKSECTGET = 0x20001267
+- BLKSECTSET = 0x20001266
+- BLKSSZGET = 0x20001268
+- BOTHER = 0x1000
+- BPF_A = 0x10
+- BPF_ABS = 0x20
+- BPF_ADD = 0x0
+- BPF_ALU = 0x4
+- BPF_AND = 0x50
+- BPF_B = 0x10
+- BPF_DIV = 0x30
+- BPF_H = 0x8
+- BPF_IMM = 0x0
+- BPF_IND = 0x40
+- BPF_JA = 0x0
+- BPF_JEQ = 0x10
+- BPF_JGE = 0x30
+- BPF_JGT = 0x20
+- BPF_JMP = 0x5
+- BPF_JSET = 0x40
+- BPF_K = 0x0
+- BPF_LD = 0x0
+- BPF_LDX = 0x1
+- BPF_LEN = 0x80
+- BPF_LL_OFF = -0x200000
+- BPF_LSH = 0x60
+- BPF_MAJOR_VERSION = 0x1
+- BPF_MAXINSNS = 0x1000
+- BPF_MEM = 0x60
+- BPF_MEMWORDS = 0x10
+- BPF_MINOR_VERSION = 0x1
+- BPF_MISC = 0x7
+- BPF_MOD = 0x90
+- BPF_MSH = 0xa0
+- BPF_MUL = 0x20
+- BPF_NEG = 0x80
+- BPF_NET_OFF = -0x100000
+- BPF_OR = 0x40
+- BPF_RET = 0x6
+- BPF_RSH = 0x70
+- BPF_ST = 0x2
+- BPF_STX = 0x3
+- BPF_SUB = 0x10
+- BPF_TAX = 0x0
+- BPF_TXA = 0x80
+- BPF_W = 0x0
+- BPF_X = 0x8
+- BPF_XOR = 0xa0
+- BRKINT = 0x2
+- BS0 = 0x0
+- BS1 = 0x2000
+- BSDLY = 0x2000
+- CAN_BCM = 0x2
+- CAN_EFF_FLAG = 0x80000000
+- CAN_EFF_ID_BITS = 0x1d
+- CAN_EFF_MASK = 0x1fffffff
+- CAN_ERR_FLAG = 0x20000000
+- CAN_ERR_MASK = 0x1fffffff
+- CAN_INV_FILTER = 0x20000000
+- CAN_ISOTP = 0x6
+- CAN_MAX_DLC = 0x8
+- CAN_MAX_DLEN = 0x8
+- CAN_MCNET = 0x5
+- CAN_MTU = 0x10
+- CAN_NPROTO = 0x7
+- CAN_RAW = 0x1
+- CAN_RAW_FILTER_MAX = 0x200
+- CAN_RTR_FLAG = 0x40000000
+- CAN_SFF_ID_BITS = 0xb
+- CAN_SFF_MASK = 0x7ff
+- CAN_TP16 = 0x3
+- CAN_TP20 = 0x4
+- CBAUD = 0x100f
+- CBAUDEX = 0x1000
+- CFLUSH = 0xf
+- CIBAUD = 0x100f0000
+- CLOCAL = 0x800
+- CLOCK_BOOTTIME = 0x7
+- CLOCK_BOOTTIME_ALARM = 0x9
+- CLOCK_DEFAULT = 0x0
+- CLOCK_EXT = 0x1
+- CLOCK_INT = 0x2
+- CLOCK_MONOTONIC = 0x1
+- CLOCK_MONOTONIC_COARSE = 0x6
+- CLOCK_MONOTONIC_RAW = 0x4
+- CLOCK_PROCESS_CPUTIME_ID = 0x2
+- CLOCK_REALTIME = 0x0
+- CLOCK_REALTIME_ALARM = 0x8
+- CLOCK_REALTIME_COARSE = 0x5
+- CLOCK_TAI = 0xb
+- CLOCK_THREAD_CPUTIME_ID = 0x3
+- CLOCK_TXFROMRX = 0x4
+- CLOCK_TXINT = 0x3
+- CLONE_CHILD_CLEARTID = 0x200000
+- CLONE_CHILD_SETTID = 0x1000000
+- CLONE_DETACHED = 0x400000
+- CLONE_FILES = 0x400
+- CLONE_FS = 0x200
+- CLONE_IO = 0x80000000
+- CLONE_NEWCGROUP = 0x2000000
+- CLONE_NEWIPC = 0x8000000
+- CLONE_NEWNET = 0x40000000
+- CLONE_NEWNS = 0x20000
+- CLONE_NEWPID = 0x20000000
+- CLONE_NEWUSER = 0x10000000
+- CLONE_NEWUTS = 0x4000000
+- CLONE_PARENT = 0x8000
+- CLONE_PARENT_SETTID = 0x100000
+- CLONE_PTRACE = 0x2000
+- CLONE_SETTLS = 0x80000
+- CLONE_SIGHAND = 0x800
+- CLONE_SYSVSEM = 0x40000
+- CLONE_THREAD = 0x10000
+- CLONE_UNTRACED = 0x800000
+- CLONE_VFORK = 0x4000
+- CLONE_VM = 0x100
+- CMSPAR = 0x40000000
+- CR0 = 0x0
+- CR1 = 0x200
+- CR2 = 0x400
+- CR3 = 0x600
+- CRDLY = 0x600
+- CREAD = 0x80
+- CRTSCTS = 0x80000000
+- CS5 = 0x0
+- CS6 = 0x10
+- CS7 = 0x20
+- CS8 = 0x30
+- CSIGNAL = 0xff
+- CSIZE = 0x30
+- CSTART = 0x11
+- CSTATUS = 0x0
+- CSTOP = 0x13
+- CSTOPB = 0x40
+- CSUSP = 0x1a
+- DT_BLK = 0x6
+- DT_CHR = 0x2
+- DT_DIR = 0x4
+- DT_FIFO = 0x1
+- DT_LNK = 0xa
+- DT_REG = 0x8
+- DT_SOCK = 0xc
+- DT_UNKNOWN = 0x0
+- DT_WHT = 0xe
+- ECHO = 0x8
+- ECHOCTL = 0x200
+- ECHOE = 0x10
+- ECHOK = 0x20
+- ECHOKE = 0x800
+- ECHONL = 0x40
+- ECHOPRT = 0x400
+- EFD_CLOEXEC = 0x80000
+- EFD_NONBLOCK = 0x80
+- EFD_SEMAPHORE = 0x1
+- ENCODING_DEFAULT = 0x0
+- ENCODING_FM_MARK = 0x3
+- ENCODING_FM_SPACE = 0x4
+- ENCODING_MANCHESTER = 0x5
+- ENCODING_NRZ = 0x1
+- ENCODING_NRZI = 0x2
+- EPOLLERR = 0x8
+- EPOLLET = 0x80000000
+- EPOLLEXCLUSIVE = 0x10000000
+- EPOLLHUP = 0x10
+- EPOLLIN = 0x1
+- EPOLLMSG = 0x400
+- EPOLLONESHOT = 0x40000000
+- EPOLLOUT = 0x4
+- EPOLLPRI = 0x2
+- EPOLLRDBAND = 0x80
+- EPOLLRDHUP = 0x2000
+- EPOLLRDNORM = 0x40
+- EPOLLWAKEUP = 0x20000000
+- EPOLLWRBAND = 0x200
+- EPOLLWRNORM = 0x100
+- EPOLL_CLOEXEC = 0x80000
+- EPOLL_CTL_ADD = 0x1
+- EPOLL_CTL_DEL = 0x2
+- EPOLL_CTL_MOD = 0x3
+- ETH_P_1588 = 0x88f7
+- ETH_P_8021AD = 0x88a8
+- ETH_P_8021AH = 0x88e7
+- ETH_P_8021Q = 0x8100
+- ETH_P_80221 = 0x8917
+- ETH_P_802_2 = 0x4
+- ETH_P_802_3 = 0x1
+- ETH_P_802_3_MIN = 0x600
+- ETH_P_802_EX1 = 0x88b5
+- ETH_P_AARP = 0x80f3
+- ETH_P_AF_IUCV = 0xfbfb
+- ETH_P_ALL = 0x3
+- ETH_P_AOE = 0x88a2
+- ETH_P_ARCNET = 0x1a
+- ETH_P_ARP = 0x806
+- ETH_P_ATALK = 0x809b
+- ETH_P_ATMFATE = 0x8884
+- ETH_P_ATMMPOA = 0x884c
+- ETH_P_AX25 = 0x2
+- ETH_P_BATMAN = 0x4305
+- ETH_P_BPQ = 0x8ff
+- ETH_P_CAIF = 0xf7
+- ETH_P_CAN = 0xc
+- ETH_P_CANFD = 0xd
+- ETH_P_CONTROL = 0x16
+- ETH_P_CUST = 0x6006
+- ETH_P_DDCMP = 0x6
+- ETH_P_DEC = 0x6000
+- ETH_P_DIAG = 0x6005
+- ETH_P_DNA_DL = 0x6001
+- ETH_P_DNA_RC = 0x6002
+- ETH_P_DNA_RT = 0x6003
+- ETH_P_DSA = 0x1b
+- ETH_P_ECONET = 0x18
+- ETH_P_EDSA = 0xdada
+- ETH_P_FCOE = 0x8906
+- ETH_P_FIP = 0x8914
+- ETH_P_HDLC = 0x19
+- ETH_P_HSR = 0x892f
+- ETH_P_IEEE802154 = 0xf6
+- ETH_P_IEEEPUP = 0xa00
+- ETH_P_IEEEPUPAT = 0xa01
+- ETH_P_IP = 0x800
+- ETH_P_IPV6 = 0x86dd
+- ETH_P_IPX = 0x8137
+- ETH_P_IRDA = 0x17
+- ETH_P_LAT = 0x6004
+- ETH_P_LINK_CTL = 0x886c
+- ETH_P_LOCALTALK = 0x9
+- ETH_P_LOOP = 0x60
+- ETH_P_LOOPBACK = 0x9000
+- ETH_P_MACSEC = 0x88e5
+- ETH_P_MOBITEX = 0x15
+- ETH_P_MPLS_MC = 0x8848
+- ETH_P_MPLS_UC = 0x8847
+- ETH_P_MVRP = 0x88f5
+- ETH_P_NCSI = 0x88f8
+- ETH_P_PAE = 0x888e
+- ETH_P_PAUSE = 0x8808
+- ETH_P_PHONET = 0xf5
+- ETH_P_PPPTALK = 0x10
+- ETH_P_PPP_DISC = 0x8863
+- ETH_P_PPP_MP = 0x8
+- ETH_P_PPP_SES = 0x8864
+- ETH_P_PRP = 0x88fb
+- ETH_P_PUP = 0x200
+- ETH_P_PUPAT = 0x201
+- ETH_P_QINQ1 = 0x9100
+- ETH_P_QINQ2 = 0x9200
+- ETH_P_QINQ3 = 0x9300
+- ETH_P_RARP = 0x8035
+- ETH_P_SCA = 0x6007
+- ETH_P_SLOW = 0x8809
+- ETH_P_SNAP = 0x5
+- ETH_P_TDLS = 0x890d
+- ETH_P_TEB = 0x6558
+- ETH_P_TIPC = 0x88ca
+- ETH_P_TRAILER = 0x1c
+- ETH_P_TR_802_2 = 0x11
+- ETH_P_TSN = 0x22f0
+- ETH_P_WAN_PPP = 0x7
+- ETH_P_WCCP = 0x883e
+- ETH_P_X25 = 0x805
+- ETH_P_XDSA = 0xf8
+- EXTA = 0xe
+- EXTB = 0xf
+- EXTPROC = 0x10000
+- FALLOC_FL_COLLAPSE_RANGE = 0x8
+- FALLOC_FL_INSERT_RANGE = 0x20
+- FALLOC_FL_KEEP_SIZE = 0x1
+- FALLOC_FL_NO_HIDE_STALE = 0x4
+- FALLOC_FL_PUNCH_HOLE = 0x2
+- FALLOC_FL_UNSHARE_RANGE = 0x40
+- FALLOC_FL_ZERO_RANGE = 0x10
+- FD_CLOEXEC = 0x1
+- FD_SETSIZE = 0x400
+- FF0 = 0x0
+- FF1 = 0x8000
+- FFDLY = 0x8000
+- FLUSHO = 0x2000
+- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
+- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
+- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
+- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
+- FS_ENCRYPTION_MODE_INVALID = 0x0
+- FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
+- FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
+- FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
+- FS_KEY_DESCRIPTOR_SIZE = 0x8
+- FS_KEY_DESC_PREFIX = "fscrypt:"
+- FS_KEY_DESC_PREFIX_SIZE = 0x8
+- FS_MAX_KEY_SIZE = 0x40
+- FS_POLICY_FLAGS_PAD_16 = 0x2
+- FS_POLICY_FLAGS_PAD_32 = 0x3
+- FS_POLICY_FLAGS_PAD_4 = 0x0
+- FS_POLICY_FLAGS_PAD_8 = 0x1
+- FS_POLICY_FLAGS_PAD_MASK = 0x3
+- FS_POLICY_FLAGS_VALID = 0x3
+- F_DUPFD = 0x0
+- F_DUPFD_CLOEXEC = 0x406
+- F_EXLCK = 0x4
+- F_GETFD = 0x1
+- F_GETFL = 0x3
+- F_GETLEASE = 0x401
+- F_GETLK = 0x21
+- F_GETLK64 = 0x21
+- F_GETOWN = 0x17
+- F_GETOWN_EX = 0x10
+- F_GETPIPE_SZ = 0x408
+- F_GETSIG = 0xb
+- F_LOCK = 0x1
+- F_NOTIFY = 0x402
+- F_OFD_GETLK = 0x24
+- F_OFD_SETLK = 0x25
+- F_OFD_SETLKW = 0x26
+- F_OK = 0x0
+- F_RDLCK = 0x0
+- F_SETFD = 0x2
+- F_SETFL = 0x4
+- F_SETLEASE = 0x400
+- F_SETLK = 0x22
+- F_SETLK64 = 0x22
+- F_SETLKW = 0x23
+- F_SETLKW64 = 0x23
+- F_SETOWN = 0x18
+- F_SETOWN_EX = 0xf
+- F_SETPIPE_SZ = 0x407
+- F_SETSIG = 0xa
+- F_SHLCK = 0x8
+- F_TEST = 0x3
+- F_TLOCK = 0x2
+- F_ULOCK = 0x0
+- F_UNLCK = 0x2
+- F_WRLCK = 0x1
+- GENL_ADMIN_PERM = 0x1
+- GENL_CMD_CAP_DO = 0x2
+- GENL_CMD_CAP_DUMP = 0x4
+- GENL_CMD_CAP_HASPOL = 0x8
+- GENL_HDRLEN = 0x4
+- GENL_ID_CTRL = 0x10
+- GENL_ID_PMCRAID = 0x12
+- GENL_ID_VFS_DQUOT = 0x11
+- GENL_MAX_ID = 0x3ff
+- GENL_MIN_ID = 0x10
+- GENL_NAMSIZ = 0x10
+- GENL_START_ALLOC = 0x13
+- GENL_UNS_ADMIN_PERM = 0x10
+- GRND_NONBLOCK = 0x1
+- GRND_RANDOM = 0x2
+- HUPCL = 0x400
+- IBSHIFT = 0x10
+- ICANON = 0x2
+- ICMPV6_FILTER = 0x1
+- ICRNL = 0x100
+- IEXTEN = 0x100
+- IFA_F_DADFAILED = 0x8
+- IFA_F_DEPRECATED = 0x20
+- IFA_F_HOMEADDRESS = 0x10
+- IFA_F_MANAGETEMPADDR = 0x100
+- IFA_F_MCAUTOJOIN = 0x400
+- IFA_F_NODAD = 0x2
+- IFA_F_NOPREFIXROUTE = 0x200
+- IFA_F_OPTIMISTIC = 0x4
+- IFA_F_PERMANENT = 0x80
+- IFA_F_SECONDARY = 0x1
+- IFA_F_STABLE_PRIVACY = 0x800
+- IFA_F_TEMPORARY = 0x1
+- IFA_F_TENTATIVE = 0x40
+- IFA_MAX = 0x8
+- IFF_ALLMULTI = 0x200
+- IFF_ATTACH_QUEUE = 0x200
+- IFF_AUTOMEDIA = 0x4000
+- IFF_BROADCAST = 0x2
+- IFF_DEBUG = 0x4
+- IFF_DETACH_QUEUE = 0x400
+- IFF_DORMANT = 0x20000
+- IFF_DYNAMIC = 0x8000
+- IFF_ECHO = 0x40000
+- IFF_LOOPBACK = 0x8
+- IFF_LOWER_UP = 0x10000
+- IFF_MASTER = 0x400
+- IFF_MULTICAST = 0x1000
+- IFF_MULTI_QUEUE = 0x100
+- IFF_NOARP = 0x80
+- IFF_NOFILTER = 0x1000
+- IFF_NOTRAILERS = 0x20
+- IFF_NO_PI = 0x1000
+- IFF_ONE_QUEUE = 0x2000
+- IFF_PERSIST = 0x800
+- IFF_POINTOPOINT = 0x10
+- IFF_PORTSEL = 0x2000
+- IFF_PROMISC = 0x100
+- IFF_RUNNING = 0x40
+- IFF_SLAVE = 0x800
+- IFF_TAP = 0x2
+- IFF_TUN = 0x1
+- IFF_TUN_EXCL = 0x8000
+- IFF_UP = 0x1
+- IFF_VNET_HDR = 0x4000
+- IFF_VOLATILE = 0x70c5a
+- IFNAMSIZ = 0x10
+- IGNBRK = 0x1
+- IGNCR = 0x80
+- IGNPAR = 0x4
+- IMAXBEL = 0x2000
+- INLCR = 0x40
+- INPCK = 0x10
+- IN_ACCESS = 0x1
+- IN_ALL_EVENTS = 0xfff
+- IN_ATTRIB = 0x4
+- IN_CLASSA_HOST = 0xffffff
+- IN_CLASSA_MAX = 0x80
+- IN_CLASSA_NET = 0xff000000
+- IN_CLASSA_NSHIFT = 0x18
+- IN_CLASSB_HOST = 0xffff
+- IN_CLASSB_MAX = 0x10000
+- IN_CLASSB_NET = 0xffff0000
+- IN_CLASSB_NSHIFT = 0x10
+- IN_CLASSC_HOST = 0xff
+- IN_CLASSC_NET = 0xffffff00
+- IN_CLASSC_NSHIFT = 0x8
+- IN_CLOEXEC = 0x80000
+- IN_CLOSE = 0x18
+- IN_CLOSE_NOWRITE = 0x10
+- IN_CLOSE_WRITE = 0x8
+- IN_CREATE = 0x100
+- IN_DELETE = 0x200
+- IN_DELETE_SELF = 0x400
+- IN_DONT_FOLLOW = 0x2000000
+- IN_EXCL_UNLINK = 0x4000000
+- IN_IGNORED = 0x8000
+- IN_ISDIR = 0x40000000
+- IN_LOOPBACKNET = 0x7f
+- IN_MASK_ADD = 0x20000000
+- IN_MODIFY = 0x2
+- IN_MOVE = 0xc0
+- IN_MOVED_FROM = 0x40
+- IN_MOVED_TO = 0x80
+- IN_MOVE_SELF = 0x800
+- IN_NONBLOCK = 0x80
+- IN_ONESHOT = 0x80000000
+- IN_ONLYDIR = 0x1000000
+- IN_OPEN = 0x20
+- IN_Q_OVERFLOW = 0x4000
+- IN_UNMOUNT = 0x2000
+- IPPROTO_AH = 0x33
+- IPPROTO_BEETPH = 0x5e
+- IPPROTO_COMP = 0x6c
+- IPPROTO_DCCP = 0x21
+- IPPROTO_DSTOPTS = 0x3c
+- IPPROTO_EGP = 0x8
+- IPPROTO_ENCAP = 0x62
+- IPPROTO_ESP = 0x32
+- IPPROTO_FRAGMENT = 0x2c
+- IPPROTO_GRE = 0x2f
+- IPPROTO_HOPOPTS = 0x0
+- IPPROTO_ICMP = 0x1
+- IPPROTO_ICMPV6 = 0x3a
+- IPPROTO_IDP = 0x16
+- IPPROTO_IGMP = 0x2
+- IPPROTO_IP = 0x0
+- IPPROTO_IPIP = 0x4
+- IPPROTO_IPV6 = 0x29
+- IPPROTO_MH = 0x87
+- IPPROTO_MPLS = 0x89
+- IPPROTO_MTP = 0x5c
+- IPPROTO_NONE = 0x3b
+- IPPROTO_PIM = 0x67
+- IPPROTO_PUP = 0xc
+- IPPROTO_RAW = 0xff
+- IPPROTO_ROUTING = 0x2b
+- IPPROTO_RSVP = 0x2e
+- IPPROTO_SCTP = 0x84
+- IPPROTO_TCP = 0x6
+- IPPROTO_TP = 0x1d
+- IPPROTO_UDP = 0x11
+- IPPROTO_UDPLITE = 0x88
+- IPV6_2292DSTOPTS = 0x4
+- IPV6_2292HOPLIMIT = 0x8
+- IPV6_2292HOPOPTS = 0x3
+- IPV6_2292PKTINFO = 0x2
+- IPV6_2292PKTOPTIONS = 0x6
+- IPV6_2292RTHDR = 0x5
+- IPV6_ADDRFORM = 0x1
+- IPV6_ADD_MEMBERSHIP = 0x14
+- IPV6_AUTHHDR = 0xa
+- IPV6_CHECKSUM = 0x7
+- IPV6_DONTFRAG = 0x3e
+- IPV6_DROP_MEMBERSHIP = 0x15
+- IPV6_DSTOPTS = 0x3b
+- IPV6_HDRINCL = 0x24
+- IPV6_HOPLIMIT = 0x34
+- IPV6_HOPOPTS = 0x36
+- IPV6_IPSEC_POLICY = 0x22
+- IPV6_JOIN_ANYCAST = 0x1b
+- IPV6_JOIN_GROUP = 0x14
+- IPV6_LEAVE_ANYCAST = 0x1c
+- IPV6_LEAVE_GROUP = 0x15
+- IPV6_MTU = 0x18
+- IPV6_MTU_DISCOVER = 0x17
+- IPV6_MULTICAST_HOPS = 0x12
+- IPV6_MULTICAST_IF = 0x11
+- IPV6_MULTICAST_LOOP = 0x13
+- IPV6_NEXTHOP = 0x9
+- IPV6_PATHMTU = 0x3d
+- IPV6_PKTINFO = 0x32
+- IPV6_PMTUDISC_DO = 0x2
+- IPV6_PMTUDISC_DONT = 0x0
+- IPV6_PMTUDISC_INTERFACE = 0x4
+- IPV6_PMTUDISC_OMIT = 0x5
+- IPV6_PMTUDISC_PROBE = 0x3
+- IPV6_PMTUDISC_WANT = 0x1
+- IPV6_RECVDSTOPTS = 0x3a
+- IPV6_RECVERR = 0x19
+- IPV6_RECVHOPLIMIT = 0x33
+- IPV6_RECVHOPOPTS = 0x35
+- IPV6_RECVPATHMTU = 0x3c
+- IPV6_RECVPKTINFO = 0x31
+- IPV6_RECVRTHDR = 0x38
+- IPV6_RECVTCLASS = 0x42
+- IPV6_ROUTER_ALERT = 0x16
+- IPV6_RTHDR = 0x39
+- IPV6_RTHDRDSTOPTS = 0x37
+- IPV6_RTHDR_LOOSE = 0x0
+- IPV6_RTHDR_STRICT = 0x1
+- IPV6_RTHDR_TYPE_0 = 0x0
+- IPV6_RXDSTOPTS = 0x3b
+- IPV6_RXHOPOPTS = 0x36
+- IPV6_TCLASS = 0x43
+- IPV6_UNICAST_HOPS = 0x10
+- IPV6_V6ONLY = 0x1a
+- IPV6_XFRM_POLICY = 0x23
+- IP_ADD_MEMBERSHIP = 0x23
+- IP_ADD_SOURCE_MEMBERSHIP = 0x27
+- IP_BIND_ADDRESS_NO_PORT = 0x18
+- IP_BLOCK_SOURCE = 0x26
+- IP_CHECKSUM = 0x17
+- IP_DEFAULT_MULTICAST_LOOP = 0x1
+- IP_DEFAULT_MULTICAST_TTL = 0x1
+- IP_DF = 0x4000
+- IP_DROP_MEMBERSHIP = 0x24
+- IP_DROP_SOURCE_MEMBERSHIP = 0x28
+- IP_FREEBIND = 0xf
+- IP_HDRINCL = 0x3
+- IP_IPSEC_POLICY = 0x10
+- IP_MAXPACKET = 0xffff
+- IP_MAX_MEMBERSHIPS = 0x14
+- IP_MF = 0x2000
+- IP_MINTTL = 0x15
+- IP_MSFILTER = 0x29
+- IP_MSS = 0x240
+- IP_MTU = 0xe
+- IP_MTU_DISCOVER = 0xa
+- IP_MULTICAST_ALL = 0x31
+- IP_MULTICAST_IF = 0x20
+- IP_MULTICAST_LOOP = 0x22
+- IP_MULTICAST_TTL = 0x21
+- IP_NODEFRAG = 0x16
+- IP_OFFMASK = 0x1fff
+- IP_OPTIONS = 0x4
+- IP_ORIGDSTADDR = 0x14
+- IP_PASSSEC = 0x12
+- IP_PKTINFO = 0x8
+- IP_PKTOPTIONS = 0x9
+- IP_PMTUDISC = 0xa
+- IP_PMTUDISC_DO = 0x2
+- IP_PMTUDISC_DONT = 0x0
+- IP_PMTUDISC_INTERFACE = 0x4
+- IP_PMTUDISC_OMIT = 0x5
+- IP_PMTUDISC_PROBE = 0x3
+- IP_PMTUDISC_WANT = 0x1
+- IP_RECVERR = 0xb
+- IP_RECVOPTS = 0x6
+- IP_RECVORIGDSTADDR = 0x14
+- IP_RECVRETOPTS = 0x7
+- IP_RECVTOS = 0xd
+- IP_RECVTTL = 0xc
+- IP_RETOPTS = 0x7
+- IP_RF = 0x8000
+- IP_ROUTER_ALERT = 0x5
+- IP_TOS = 0x1
+- IP_TRANSPARENT = 0x13
+- IP_TTL = 0x2
+- IP_UNBLOCK_SOURCE = 0x25
+- IP_UNICAST_IF = 0x32
+- IP_XFRM_POLICY = 0x11
+- ISIG = 0x1
+- ISTRIP = 0x20
+- IUCLC = 0x200
+- IUTF8 = 0x4000
+- IXANY = 0x800
+- IXOFF = 0x1000
+- IXON = 0x400
+- KEYCTL_ASSUME_AUTHORITY = 0x10
+- KEYCTL_CHOWN = 0x4
+- KEYCTL_CLEAR = 0x7
+- KEYCTL_DESCRIBE = 0x6
+- KEYCTL_DH_COMPUTE = 0x17
+- KEYCTL_GET_KEYRING_ID = 0x0
+- KEYCTL_GET_PERSISTENT = 0x16
+- KEYCTL_GET_SECURITY = 0x11
+- KEYCTL_INSTANTIATE = 0xc
+- KEYCTL_INSTANTIATE_IOV = 0x14
+- KEYCTL_INVALIDATE = 0x15
+- KEYCTL_JOIN_SESSION_KEYRING = 0x1
+- KEYCTL_LINK = 0x8
+- KEYCTL_NEGATE = 0xd
+- KEYCTL_READ = 0xb
+- KEYCTL_REJECT = 0x13
+- KEYCTL_REVOKE = 0x3
+- KEYCTL_SEARCH = 0xa
+- KEYCTL_SESSION_TO_PARENT = 0x12
+- KEYCTL_SETPERM = 0x5
+- KEYCTL_SET_REQKEY_KEYRING = 0xe
+- KEYCTL_SET_TIMEOUT = 0xf
+- KEYCTL_UNLINK = 0x9
+- KEYCTL_UPDATE = 0x2
+- KEY_REQKEY_DEFL_DEFAULT = 0x0
+- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
+- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
+- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
+- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
+- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
+- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
+- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
+- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
+- KEY_SPEC_GROUP_KEYRING = -0x6
+- KEY_SPEC_PROCESS_KEYRING = -0x2
+- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
+- KEY_SPEC_REQUESTOR_KEYRING = -0x8
+- KEY_SPEC_SESSION_KEYRING = -0x3
+- KEY_SPEC_THREAD_KEYRING = -0x1
+- KEY_SPEC_USER_KEYRING = -0x4
+- KEY_SPEC_USER_SESSION_KEYRING = -0x5
+- LINUX_REBOOT_CMD_CAD_OFF = 0x0
+- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
+- LINUX_REBOOT_CMD_HALT = 0xcdef0123
+- LINUX_REBOOT_CMD_KEXEC = 0x45584543
+- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
+- LINUX_REBOOT_CMD_RESTART = 0x1234567
+- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
+- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
+- LINUX_REBOOT_MAGIC1 = 0xfee1dead
+- LINUX_REBOOT_MAGIC2 = 0x28121969
+- LOCK_EX = 0x2
+- LOCK_NB = 0x4
+- LOCK_SH = 0x1
+- LOCK_UN = 0x8
+- MADV_DODUMP = 0x11
+- MADV_DOFORK = 0xb
+- MADV_DONTDUMP = 0x10
+- MADV_DONTFORK = 0xa
+- MADV_DONTNEED = 0x4
+- MADV_FREE = 0x8
+- MADV_HUGEPAGE = 0xe
+- MADV_HWPOISON = 0x64
+- MADV_MERGEABLE = 0xc
+- MADV_NOHUGEPAGE = 0xf
+- MADV_NORMAL = 0x0
+- MADV_RANDOM = 0x1
+- MADV_REMOVE = 0x9
+- MADV_SEQUENTIAL = 0x2
+- MADV_UNMERGEABLE = 0xd
+- MADV_WILLNEED = 0x3
+- MAP_ANON = 0x800
+- MAP_ANONYMOUS = 0x800
+- MAP_DENYWRITE = 0x2000
+- MAP_EXECUTABLE = 0x4000
+- MAP_FILE = 0x0
+- MAP_FIXED = 0x10
+- MAP_GROWSDOWN = 0x1000
+- MAP_HUGETLB = 0x80000
+- MAP_HUGE_MASK = 0x3f
+- MAP_HUGE_SHIFT = 0x1a
+- MAP_LOCKED = 0x8000
+- MAP_NONBLOCK = 0x20000
+- MAP_NORESERVE = 0x400
+- MAP_POPULATE = 0x10000
+- MAP_PRIVATE = 0x2
+- MAP_RENAME = 0x800
+- MAP_SHARED = 0x1
+- MAP_STACK = 0x40000
+- MAP_TYPE = 0xf
+- MCL_CURRENT = 0x1
+- MCL_FUTURE = 0x2
+- MCL_ONFAULT = 0x4
+- MNT_DETACH = 0x2
+- MNT_EXPIRE = 0x4
+- MNT_FORCE = 0x1
+- MSG_BATCH = 0x40000
+- MSG_CMSG_CLOEXEC = 0x40000000
+- MSG_CONFIRM = 0x800
+- MSG_CTRUNC = 0x8
+- MSG_DONTROUTE = 0x4
+- MSG_DONTWAIT = 0x40
+- MSG_EOR = 0x80
+- MSG_ERRQUEUE = 0x2000
+- MSG_FASTOPEN = 0x20000000
+- MSG_FIN = 0x200
+- MSG_MORE = 0x8000
+- MSG_NOSIGNAL = 0x4000
+- MSG_OOB = 0x1
+- MSG_PEEK = 0x2
+- MSG_PROXY = 0x10
+- MSG_RST = 0x1000
+- MSG_SYN = 0x400
+- MSG_TRUNC = 0x20
+- MSG_TRYHARD = 0x4
+- MSG_WAITALL = 0x100
+- MSG_WAITFORONE = 0x10000
+- MS_ACTIVE = 0x40000000
+- MS_ASYNC = 0x1
+- MS_BIND = 0x1000
+- MS_BORN = 0x20000000
+- MS_DIRSYNC = 0x80
+- MS_INVALIDATE = 0x2
+- MS_I_VERSION = 0x800000
+- MS_KERNMOUNT = 0x400000
+- MS_LAZYTIME = 0x2000000
+- MS_MANDLOCK = 0x40
+- MS_MGC_MSK = 0xffff0000
+- MS_MGC_VAL = 0xc0ed0000
+- MS_MOVE = 0x2000
+- MS_NOATIME = 0x400
+- MS_NODEV = 0x4
+- MS_NODIRATIME = 0x800
+- MS_NOEXEC = 0x8
+- MS_NOREMOTELOCK = 0x8000000
+- MS_NOSEC = 0x10000000
+- MS_NOSUID = 0x2
+- MS_NOUSER = -0x80000000
+- MS_POSIXACL = 0x10000
+- MS_PRIVATE = 0x40000
+- MS_RDONLY = 0x1
+- MS_REC = 0x4000
+- MS_RELATIME = 0x200000
+- MS_REMOUNT = 0x20
+- MS_RMT_MASK = 0x2800051
+- MS_SHARED = 0x100000
+- MS_SILENT = 0x8000
+- MS_SLAVE = 0x80000
+- MS_STRICTATIME = 0x1000000
+- MS_SYNC = 0x4
+- MS_SYNCHRONOUS = 0x10
+- MS_UNBINDABLE = 0x20000
+- MS_VERBOSE = 0x8000
+- NAME_MAX = 0xff
+- NETLINK_ADD_MEMBERSHIP = 0x1
+- NETLINK_AUDIT = 0x9
+- NETLINK_BROADCAST_ERROR = 0x4
+- NETLINK_CAP_ACK = 0xa
+- NETLINK_CONNECTOR = 0xb
+- NETLINK_CRYPTO = 0x15
+- NETLINK_DNRTMSG = 0xe
+- NETLINK_DROP_MEMBERSHIP = 0x2
+- NETLINK_ECRYPTFS = 0x13
+- NETLINK_FIB_LOOKUP = 0xa
+- NETLINK_FIREWALL = 0x3
+- NETLINK_GENERIC = 0x10
+- NETLINK_INET_DIAG = 0x4
+- NETLINK_IP6_FW = 0xd
+- NETLINK_ISCSI = 0x8
+- NETLINK_KOBJECT_UEVENT = 0xf
+- NETLINK_LISTEN_ALL_NSID = 0x8
+- NETLINK_LIST_MEMBERSHIPS = 0x9
+- NETLINK_NETFILTER = 0xc
+- NETLINK_NFLOG = 0x5
+- NETLINK_NO_ENOBUFS = 0x5
+- NETLINK_PKTINFO = 0x3
+- NETLINK_RDMA = 0x14
+- NETLINK_ROUTE = 0x0
+- NETLINK_RX_RING = 0x6
+- NETLINK_SCSITRANSPORT = 0x12
+- NETLINK_SELINUX = 0x7
+- NETLINK_SOCK_DIAG = 0x4
+- NETLINK_TX_RING = 0x7
+- NETLINK_UNUSED = 0x1
+- NETLINK_USERSOCK = 0x2
+- NETLINK_XFRM = 0x6
+- NL0 = 0x0
+- NL1 = 0x100
+- NLA_ALIGNTO = 0x4
+- NLA_F_NESTED = 0x8000
+- NLA_F_NET_BYTEORDER = 0x4000
+- NLA_HDRLEN = 0x4
+- NLDLY = 0x100
+- NLMSG_ALIGNTO = 0x4
+- NLMSG_DONE = 0x3
+- NLMSG_ERROR = 0x2
+- NLMSG_HDRLEN = 0x10
+- NLMSG_MIN_TYPE = 0x10
+- NLMSG_NOOP = 0x1
+- NLMSG_OVERRUN = 0x4
+- NLM_F_ACK = 0x4
+- NLM_F_APPEND = 0x800
+- NLM_F_ATOMIC = 0x400
+- NLM_F_CREATE = 0x400
+- NLM_F_DUMP = 0x300
+- NLM_F_DUMP_FILTERED = 0x20
+- NLM_F_DUMP_INTR = 0x10
+- NLM_F_ECHO = 0x8
+- NLM_F_EXCL = 0x200
+- NLM_F_MATCH = 0x200
+- NLM_F_MULTI = 0x2
+- NLM_F_REPLACE = 0x100
+- NLM_F_REQUEST = 0x1
+- NLM_F_ROOT = 0x100
+- NOFLSH = 0x80
+- OCRNL = 0x8
+- OFDEL = 0x80
+- OFILL = 0x40
+- OLCUC = 0x2
+- ONLCR = 0x4
+- ONLRET = 0x20
+- ONOCR = 0x10
+- OPOST = 0x1
+- O_ACCMODE = 0x3
+- O_APPEND = 0x8
+- O_ASYNC = 0x1000
+- O_CLOEXEC = 0x80000
+- O_CREAT = 0x100
+- O_DIRECT = 0x8000
+- O_DIRECTORY = 0x10000
+- O_DSYNC = 0x10
+- O_EXCL = 0x400
+- O_FSYNC = 0x4010
+- O_LARGEFILE = 0x2000
+- O_NDELAY = 0x80
+- O_NOATIME = 0x40000
+- O_NOCTTY = 0x800
+- O_NOFOLLOW = 0x20000
+- O_NONBLOCK = 0x80
+- O_PATH = 0x200000
+- O_RDONLY = 0x0
+- O_RDWR = 0x2
+- O_RSYNC = 0x4010
+- O_SYNC = 0x4010
+- O_TMPFILE = 0x410000
+- O_TRUNC = 0x200
+- O_WRONLY = 0x1
+- PACKET_ADD_MEMBERSHIP = 0x1
+- PACKET_AUXDATA = 0x8
+- PACKET_BROADCAST = 0x1
+- PACKET_COPY_THRESH = 0x7
+- PACKET_DROP_MEMBERSHIP = 0x2
+- PACKET_FANOUT = 0x12
+- PACKET_FANOUT_CBPF = 0x6
+- PACKET_FANOUT_CPU = 0x2
+- PACKET_FANOUT_DATA = 0x16
+- PACKET_FANOUT_EBPF = 0x7
+- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
+- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
+- PACKET_FANOUT_HASH = 0x0
+- PACKET_FANOUT_LB = 0x1
+- PACKET_FANOUT_QM = 0x5
+- PACKET_FANOUT_RND = 0x4
+- PACKET_FANOUT_ROLLOVER = 0x3
+- PACKET_FASTROUTE = 0x6
+- PACKET_HDRLEN = 0xb
+- PACKET_HOST = 0x0
+- PACKET_KERNEL = 0x7
+- PACKET_LOOPBACK = 0x5
+- PACKET_LOSS = 0xe
+- PACKET_MR_ALLMULTI = 0x2
+- PACKET_MR_MULTICAST = 0x0
+- PACKET_MR_PROMISC = 0x1
+- PACKET_MR_UNICAST = 0x3
+- PACKET_MULTICAST = 0x2
+- PACKET_ORIGDEV = 0x9
+- PACKET_OTHERHOST = 0x3
+- PACKET_OUTGOING = 0x4
+- PACKET_QDISC_BYPASS = 0x14
+- PACKET_RECV_OUTPUT = 0x3
+- PACKET_RESERVE = 0xc
+- PACKET_ROLLOVER_STATS = 0x15
+- PACKET_RX_RING = 0x5
+- PACKET_STATISTICS = 0x6
+- PACKET_TIMESTAMP = 0x11
+- PACKET_TX_HAS_OFF = 0x13
+- PACKET_TX_RING = 0xd
+- PACKET_TX_TIMESTAMP = 0x10
+- PACKET_USER = 0x6
+- PACKET_VERSION = 0xa
+- PACKET_VNET_HDR = 0xf
+- PARENB = 0x100
+- PARITY_CRC16_PR0 = 0x2
+- PARITY_CRC16_PR0_CCITT = 0x4
+- PARITY_CRC16_PR1 = 0x3
+- PARITY_CRC16_PR1_CCITT = 0x5
+- PARITY_CRC32_PR0_CCITT = 0x6
+- PARITY_CRC32_PR1_CCITT = 0x7
+- PARITY_DEFAULT = 0x0
+- PARITY_NONE = 0x1
+- PARMRK = 0x8
+- PARODD = 0x200
+- PENDIN = 0x4000
+- PERF_EVENT_IOC_DISABLE = 0x20002401
+- PERF_EVENT_IOC_ENABLE = 0x20002400
+- PERF_EVENT_IOC_ID = 0x40042407
+- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
+- PERF_EVENT_IOC_PERIOD = 0x80082404
+- PERF_EVENT_IOC_REFRESH = 0x20002402
+- PERF_EVENT_IOC_RESET = 0x20002403
+- PERF_EVENT_IOC_SET_BPF = 0x80042408
+- PERF_EVENT_IOC_SET_FILTER = 0x80042406
+- PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
+- PRIO_PGRP = 0x1
+- PRIO_PROCESS = 0x0
+- PRIO_USER = 0x2
+- PROT_EXEC = 0x4
+- PROT_GROWSDOWN = 0x1000000
+- PROT_GROWSUP = 0x2000000
+- PROT_NONE = 0x0
+- PROT_READ = 0x1
+- PROT_WRITE = 0x2
+- PR_CAPBSET_DROP = 0x18
+- PR_CAPBSET_READ = 0x17
+- PR_CAP_AMBIENT = 0x2f
+- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
+- PR_CAP_AMBIENT_IS_SET = 0x1
+- PR_CAP_AMBIENT_LOWER = 0x3
+- PR_CAP_AMBIENT_RAISE = 0x2
+- PR_ENDIAN_BIG = 0x0
+- PR_ENDIAN_LITTLE = 0x1
+- PR_ENDIAN_PPC_LITTLE = 0x2
+- PR_FPEMU_NOPRINT = 0x1
+- PR_FPEMU_SIGFPE = 0x2
+- PR_FP_EXC_ASYNC = 0x2
+- PR_FP_EXC_DISABLED = 0x0
+- PR_FP_EXC_DIV = 0x10000
+- PR_FP_EXC_INV = 0x100000
+- PR_FP_EXC_NONRECOV = 0x1
+- PR_FP_EXC_OVF = 0x20000
+- PR_FP_EXC_PRECISE = 0x3
+- PR_FP_EXC_RES = 0x80000
+- PR_FP_EXC_SW_ENABLE = 0x80
+- PR_FP_EXC_UND = 0x40000
+- PR_FP_MODE_FR = 0x1
+- PR_FP_MODE_FRE = 0x2
+- PR_GET_CHILD_SUBREAPER = 0x25
+- PR_GET_DUMPABLE = 0x3
+- PR_GET_ENDIAN = 0x13
+- PR_GET_FPEMU = 0x9
+- PR_GET_FPEXC = 0xb
+- PR_GET_FP_MODE = 0x2e
+- PR_GET_KEEPCAPS = 0x7
+- PR_GET_NAME = 0x10
+- PR_GET_NO_NEW_PRIVS = 0x27
+- PR_GET_PDEATHSIG = 0x2
+- PR_GET_SECCOMP = 0x15
+- PR_GET_SECUREBITS = 0x1b
+- PR_GET_THP_DISABLE = 0x2a
+- PR_GET_TID_ADDRESS = 0x28
+- PR_GET_TIMERSLACK = 0x1e
+- PR_GET_TIMING = 0xd
+- PR_GET_TSC = 0x19
+- PR_GET_UNALIGN = 0x5
+- PR_MCE_KILL = 0x21
+- PR_MCE_KILL_CLEAR = 0x0
+- PR_MCE_KILL_DEFAULT = 0x2
+- PR_MCE_KILL_EARLY = 0x1
+- PR_MCE_KILL_GET = 0x22
+- PR_MCE_KILL_LATE = 0x0
+- PR_MCE_KILL_SET = 0x1
+- PR_MPX_DISABLE_MANAGEMENT = 0x2c
+- PR_MPX_ENABLE_MANAGEMENT = 0x2b
+- PR_SET_CHILD_SUBREAPER = 0x24
+- PR_SET_DUMPABLE = 0x4
+- PR_SET_ENDIAN = 0x14
+- PR_SET_FPEMU = 0xa
+- PR_SET_FPEXC = 0xc
+- PR_SET_FP_MODE = 0x2d
+- PR_SET_KEEPCAPS = 0x8
+- PR_SET_MM = 0x23
+- PR_SET_MM_ARG_END = 0x9
+- PR_SET_MM_ARG_START = 0x8
+- PR_SET_MM_AUXV = 0xc
+- PR_SET_MM_BRK = 0x7
+- PR_SET_MM_END_CODE = 0x2
+- PR_SET_MM_END_DATA = 0x4
+- PR_SET_MM_ENV_END = 0xb
+- PR_SET_MM_ENV_START = 0xa
+- PR_SET_MM_EXE_FILE = 0xd
+- PR_SET_MM_MAP = 0xe
+- PR_SET_MM_MAP_SIZE = 0xf
+- PR_SET_MM_START_BRK = 0x6
+- PR_SET_MM_START_CODE = 0x1
+- PR_SET_MM_START_DATA = 0x3
+- PR_SET_MM_START_STACK = 0x5
+- PR_SET_NAME = 0xf
+- PR_SET_NO_NEW_PRIVS = 0x26
+- PR_SET_PDEATHSIG = 0x1
+- PR_SET_PTRACER = 0x59616d61
+- PR_SET_PTRACER_ANY = 0xffffffff
+- PR_SET_SECCOMP = 0x16
+- PR_SET_SECUREBITS = 0x1c
+- PR_SET_THP_DISABLE = 0x29
+- PR_SET_TIMERSLACK = 0x1d
+- PR_SET_TIMING = 0xe
+- PR_SET_TSC = 0x1a
+- PR_SET_UNALIGN = 0x6
+- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
+- PR_TASK_PERF_EVENTS_ENABLE = 0x20
+- PR_TIMING_STATISTICAL = 0x0
+- PR_TIMING_TIMESTAMP = 0x1
+- PR_TSC_ENABLE = 0x1
+- PR_TSC_SIGSEGV = 0x2
+- PR_UNALIGN_NOPRINT = 0x1
+- PR_UNALIGN_SIGBUS = 0x2
+- PTRACE_ATTACH = 0x10
+- PTRACE_CONT = 0x7
+- PTRACE_DETACH = 0x11
+- PTRACE_EVENT_CLONE = 0x3
+- PTRACE_EVENT_EXEC = 0x4
+- PTRACE_EVENT_EXIT = 0x6
+- PTRACE_EVENT_FORK = 0x1
+- PTRACE_EVENT_SECCOMP = 0x7
+- PTRACE_EVENT_STOP = 0x80
+- PTRACE_EVENT_VFORK = 0x2
+- PTRACE_EVENT_VFORK_DONE = 0x5
+- PTRACE_GETEVENTMSG = 0x4201
+- PTRACE_GETFPREGS = 0xe
+- PTRACE_GETREGS = 0xc
+- PTRACE_GETREGSET = 0x4204
+- PTRACE_GETSIGINFO = 0x4202
+- PTRACE_GETSIGMASK = 0x420a
+- PTRACE_GET_THREAD_AREA = 0x19
+- PTRACE_GET_THREAD_AREA_3264 = 0xc4
+- PTRACE_GET_WATCH_REGS = 0xd0
+- PTRACE_INTERRUPT = 0x4207
+- PTRACE_KILL = 0x8
+- PTRACE_LISTEN = 0x4208
+- PTRACE_OLDSETOPTIONS = 0x15
+- PTRACE_O_EXITKILL = 0x100000
+- PTRACE_O_MASK = 0x3000ff
+- PTRACE_O_SUSPEND_SECCOMP = 0x200000
+- PTRACE_O_TRACECLONE = 0x8
+- PTRACE_O_TRACEEXEC = 0x10
+- PTRACE_O_TRACEEXIT = 0x40
+- PTRACE_O_TRACEFORK = 0x2
+- PTRACE_O_TRACESECCOMP = 0x80
+- PTRACE_O_TRACESYSGOOD = 0x1
+- PTRACE_O_TRACEVFORK = 0x4
+- PTRACE_O_TRACEVFORKDONE = 0x20
+- PTRACE_PEEKDATA = 0x2
+- PTRACE_PEEKDATA_3264 = 0xc1
+- PTRACE_PEEKSIGINFO = 0x4209
+- PTRACE_PEEKSIGINFO_SHARED = 0x1
+- PTRACE_PEEKTEXT = 0x1
+- PTRACE_PEEKTEXT_3264 = 0xc0
+- PTRACE_PEEKUSR = 0x3
+- PTRACE_POKEDATA = 0x5
+- PTRACE_POKEDATA_3264 = 0xc3
+- PTRACE_POKETEXT = 0x4
+- PTRACE_POKETEXT_3264 = 0xc2
+- PTRACE_POKEUSR = 0x6
+- PTRACE_SECCOMP_GET_FILTER = 0x420c
+- PTRACE_SEIZE = 0x4206
+- PTRACE_SETFPREGS = 0xf
+- PTRACE_SETOPTIONS = 0x4200
+- PTRACE_SETREGS = 0xd
+- PTRACE_SETREGSET = 0x4205
+- PTRACE_SETSIGINFO = 0x4203
+- PTRACE_SETSIGMASK = 0x420b
+- PTRACE_SET_THREAD_AREA = 0x1a
+- PTRACE_SET_WATCH_REGS = 0xd1
+- PTRACE_SINGLESTEP = 0x9
+- PTRACE_SYSCALL = 0x18
+- PTRACE_TRACEME = 0x0
+- RLIMIT_AS = 0x6
+- RLIMIT_CORE = 0x4
+- RLIMIT_CPU = 0x0
+- RLIMIT_DATA = 0x2
+- RLIMIT_FSIZE = 0x1
+- RLIMIT_LOCKS = 0xa
+- RLIMIT_MEMLOCK = 0x9
+- RLIMIT_MSGQUEUE = 0xc
+- RLIMIT_NICE = 0xd
+- RLIMIT_NOFILE = 0x5
+- RLIMIT_NPROC = 0x8
+- RLIMIT_RSS = 0x7
+- RLIMIT_RTPRIO = 0xe
+- RLIMIT_RTTIME = 0xf
+- RLIMIT_SIGPENDING = 0xb
+- RLIMIT_STACK = 0x3
+- RLIM_INFINITY = -0x1
+- RTAX_ADVMSS = 0x8
+- RTAX_CC_ALGO = 0x10
+- RTAX_CWND = 0x7
+- RTAX_FEATURES = 0xc
+- RTAX_FEATURE_ALLFRAG = 0x8
+- RTAX_FEATURE_ECN = 0x1
+- RTAX_FEATURE_MASK = 0xf
+- RTAX_FEATURE_SACK = 0x2
+- RTAX_FEATURE_TIMESTAMP = 0x4
+- RTAX_HOPLIMIT = 0xa
+- RTAX_INITCWND = 0xb
+- RTAX_INITRWND = 0xe
+- RTAX_LOCK = 0x1
+- RTAX_MAX = 0x10
+- RTAX_MTU = 0x2
+- RTAX_QUICKACK = 0xf
+- RTAX_REORDERING = 0x9
+- RTAX_RTO_MIN = 0xd
+- RTAX_RTT = 0x4
+- RTAX_RTTVAR = 0x5
+- RTAX_SSTHRESH = 0x6
+- RTAX_UNSPEC = 0x0
+- RTAX_WINDOW = 0x3
+- RTA_ALIGNTO = 0x4
+- RTA_MAX = 0x19
+- RTCF_DIRECTSRC = 0x4000000
+- RTCF_DOREDIRECT = 0x1000000
+- RTCF_LOG = 0x2000000
+- RTCF_MASQ = 0x400000
+- RTCF_NAT = 0x800000
+- RTCF_VALVE = 0x200000
+- RTF_ADDRCLASSMASK = 0xf8000000
+- RTF_ADDRCONF = 0x40000
+- RTF_ALLONLINK = 0x20000
+- RTF_BROADCAST = 0x10000000
+- RTF_CACHE = 0x1000000
+- RTF_DEFAULT = 0x10000
+- RTF_DYNAMIC = 0x10
+- RTF_FLOW = 0x2000000
+- RTF_GATEWAY = 0x2
+- RTF_HOST = 0x4
+- RTF_INTERFACE = 0x40000000
+- RTF_IRTT = 0x100
+- RTF_LINKRT = 0x100000
+- RTF_LOCAL = 0x80000000
+- RTF_MODIFIED = 0x20
+- RTF_MSS = 0x40
+- RTF_MTU = 0x40
+- RTF_MULTICAST = 0x20000000
+- RTF_NAT = 0x8000000
+- RTF_NOFORWARD = 0x1000
+- RTF_NONEXTHOP = 0x200000
+- RTF_NOPMTUDISC = 0x4000
+- RTF_POLICY = 0x4000000
+- RTF_REINSTATE = 0x8
+- RTF_REJECT = 0x200
+- RTF_STATIC = 0x400
+- RTF_THROW = 0x2000
+- RTF_UP = 0x1
+- RTF_WINDOW = 0x80
+- RTF_XRESOLVE = 0x800
+- RTM_BASE = 0x10
+- RTM_DELACTION = 0x31
+- RTM_DELADDR = 0x15
+- RTM_DELADDRLABEL = 0x49
+- RTM_DELLINK = 0x11
+- RTM_DELMDB = 0x55
+- RTM_DELNEIGH = 0x1d
+- RTM_DELNSID = 0x59
+- RTM_DELQDISC = 0x25
+- RTM_DELROUTE = 0x19
+- RTM_DELRULE = 0x21
+- RTM_DELTCLASS = 0x29
+- RTM_DELTFILTER = 0x2d
+- RTM_F_CLONED = 0x200
+- RTM_F_EQUALIZE = 0x400
+- RTM_F_LOOKUP_TABLE = 0x1000
+- RTM_F_NOTIFY = 0x100
+- RTM_F_PREFIX = 0x800
+- RTM_GETACTION = 0x32
+- RTM_GETADDR = 0x16
+- RTM_GETADDRLABEL = 0x4a
+- RTM_GETANYCAST = 0x3e
+- RTM_GETDCB = 0x4e
+- RTM_GETLINK = 0x12
+- RTM_GETMDB = 0x56
+- RTM_GETMULTICAST = 0x3a
+- RTM_GETNEIGH = 0x1e
+- RTM_GETNEIGHTBL = 0x42
+- RTM_GETNETCONF = 0x52
+- RTM_GETNSID = 0x5a
+- RTM_GETQDISC = 0x26
+- RTM_GETROUTE = 0x1a
+- RTM_GETRULE = 0x22
+- RTM_GETSTATS = 0x5e
+- RTM_GETTCLASS = 0x2a
+- RTM_GETTFILTER = 0x2e
+- RTM_MAX = 0x5f
+- RTM_NEWACTION = 0x30
+- RTM_NEWADDR = 0x14
+- RTM_NEWADDRLABEL = 0x48
+- RTM_NEWLINK = 0x10
+- RTM_NEWMDB = 0x54
+- RTM_NEWNDUSEROPT = 0x44
+- RTM_NEWNEIGH = 0x1c
+- RTM_NEWNEIGHTBL = 0x40
+- RTM_NEWNETCONF = 0x50
+- RTM_NEWNSID = 0x58
+- RTM_NEWPREFIX = 0x34
+- RTM_NEWQDISC = 0x24
+- RTM_NEWROUTE = 0x18
+- RTM_NEWRULE = 0x20
+- RTM_NEWSTATS = 0x5c
+- RTM_NEWTCLASS = 0x28
+- RTM_NEWTFILTER = 0x2c
+- RTM_NR_FAMILIES = 0x14
+- RTM_NR_MSGTYPES = 0x50
+- RTM_SETDCB = 0x4f
+- RTM_SETLINK = 0x13
+- RTM_SETNEIGHTBL = 0x43
+- RTNH_ALIGNTO = 0x4
+- RTNH_COMPARE_MASK = 0x19
+- RTNH_F_DEAD = 0x1
+- RTNH_F_LINKDOWN = 0x10
+- RTNH_F_OFFLOAD = 0x8
+- RTNH_F_ONLINK = 0x4
+- RTNH_F_PERVASIVE = 0x2
+- RTN_MAX = 0xb
+- RTPROT_BABEL = 0x2a
+- RTPROT_BIRD = 0xc
+- RTPROT_BOOT = 0x3
+- RTPROT_DHCP = 0x10
+- RTPROT_DNROUTED = 0xd
+- RTPROT_GATED = 0x8
+- RTPROT_KERNEL = 0x2
+- RTPROT_MROUTED = 0x11
+- RTPROT_MRT = 0xa
+- RTPROT_NTK = 0xf
+- RTPROT_RA = 0x9
+- RTPROT_REDIRECT = 0x1
+- RTPROT_STATIC = 0x4
+- RTPROT_UNSPEC = 0x0
+- RTPROT_XORP = 0xe
+- RTPROT_ZEBRA = 0xb
+- RT_CLASS_DEFAULT = 0xfd
+- RT_CLASS_LOCAL = 0xff
+- RT_CLASS_MAIN = 0xfe
+- RT_CLASS_MAX = 0xff
+- RT_CLASS_UNSPEC = 0x0
+- RUSAGE_CHILDREN = -0x1
+- RUSAGE_SELF = 0x0
+- RUSAGE_THREAD = 0x1
+- SCM_CREDENTIALS = 0x2
+- SCM_RIGHTS = 0x1
+- SCM_TIMESTAMP = 0x1d
+- SCM_TIMESTAMPING = 0x25
+- SCM_TIMESTAMPING_OPT_STATS = 0x36
+- SCM_TIMESTAMPNS = 0x23
+- SCM_WIFI_STATUS = 0x29
+- SECCOMP_MODE_DISABLED = 0x0
+- SECCOMP_MODE_FILTER = 0x2
+- SECCOMP_MODE_STRICT = 0x1
+- SHUT_RD = 0x0
+- SHUT_RDWR = 0x2
+- SHUT_WR = 0x1
+- SIOCADDDLCI = 0x8980
+- SIOCADDMULTI = 0x8931
+- SIOCADDRT = 0x890b
+- SIOCATMARK = 0x40047307
+- SIOCBONDCHANGEACTIVE = 0x8995
+- SIOCBONDENSLAVE = 0x8990
+- SIOCBONDINFOQUERY = 0x8994
+- SIOCBONDRELEASE = 0x8991
+- SIOCBONDSETHWADDR = 0x8992
+- SIOCBONDSLAVEINFOQUERY = 0x8993
+- SIOCBRADDBR = 0x89a0
+- SIOCBRADDIF = 0x89a2
+- SIOCBRDELBR = 0x89a1
+- SIOCBRDELIF = 0x89a3
+- SIOCDARP = 0x8953
+- SIOCDELDLCI = 0x8981
+- SIOCDELMULTI = 0x8932
+- SIOCDELRT = 0x890c
+- SIOCDEVPRIVATE = 0x89f0
+- SIOCDIFADDR = 0x8936
+- SIOCDRARP = 0x8960
+- SIOCETHTOOL = 0x8946
+- SIOCGARP = 0x8954
+- SIOCGHWTSTAMP = 0x89b1
+- SIOCGIFADDR = 0x8915
+- SIOCGIFBR = 0x8940
+- SIOCGIFBRDADDR = 0x8919
+- SIOCGIFCONF = 0x8912
+- SIOCGIFCOUNT = 0x8938
+- SIOCGIFDSTADDR = 0x8917
+- SIOCGIFENCAP = 0x8925
+- SIOCGIFFLAGS = 0x8913
+- SIOCGIFHWADDR = 0x8927
+- SIOCGIFINDEX = 0x8933
+- SIOCGIFMAP = 0x8970
+- SIOCGIFMEM = 0x891f
+- SIOCGIFMETRIC = 0x891d
+- SIOCGIFMTU = 0x8921
+- SIOCGIFNAME = 0x8910
+- SIOCGIFNETMASK = 0x891b
+- SIOCGIFPFLAGS = 0x8935
+- SIOCGIFSLAVE = 0x8929
+- SIOCGIFTXQLEN = 0x8942
+- SIOCGIFVLAN = 0x8982
+- SIOCGMIIPHY = 0x8947
+- SIOCGMIIREG = 0x8948
+- SIOCGPGRP = 0x40047309
+- SIOCGRARP = 0x8961
+- SIOCGSKNS = 0x894c
+- SIOCGSTAMP = 0x8906
+- SIOCGSTAMPNS = 0x8907
+- SIOCINQ = 0x467f
+- SIOCOUTQ = 0x7472
+- SIOCOUTQNSD = 0x894b
+- SIOCPROTOPRIVATE = 0x89e0
+- SIOCRTMSG = 0x890d
+- SIOCSARP = 0x8955
+- SIOCSHWTSTAMP = 0x89b0
+- SIOCSIFADDR = 0x8916
+- SIOCSIFBR = 0x8941
+- SIOCSIFBRDADDR = 0x891a
+- SIOCSIFDSTADDR = 0x8918
+- SIOCSIFENCAP = 0x8926
+- SIOCSIFFLAGS = 0x8914
+- SIOCSIFHWADDR = 0x8924
+- SIOCSIFHWBROADCAST = 0x8937
+- SIOCSIFLINK = 0x8911
+- SIOCSIFMAP = 0x8971
+- SIOCSIFMEM = 0x8920
+- SIOCSIFMETRIC = 0x891e
+- SIOCSIFMTU = 0x8922
+- SIOCSIFNAME = 0x8923
+- SIOCSIFNETMASK = 0x891c
+- SIOCSIFPFLAGS = 0x8934
+- SIOCSIFSLAVE = 0x8930
+- SIOCSIFTXQLEN = 0x8943
+- SIOCSIFVLAN = 0x8983
+- SIOCSMIIREG = 0x8949
+- SIOCSPGRP = 0x80047308
+- SIOCSRARP = 0x8962
+- SIOCWANDEV = 0x894a
+- SOCK_CLOEXEC = 0x80000
+- SOCK_DCCP = 0x6
+- SOCK_DGRAM = 0x1
+- SOCK_IOC_TYPE = 0x89
+- SOCK_NONBLOCK = 0x80
+- SOCK_PACKET = 0xa
+- SOCK_RAW = 0x3
+- SOCK_RDM = 0x4
+- SOCK_SEQPACKET = 0x5
+- SOCK_STREAM = 0x2
+- SOL_AAL = 0x109
+- SOL_ALG = 0x117
+- SOL_ATM = 0x108
+- SOL_CAIF = 0x116
+- SOL_CAN_BASE = 0x64
+- SOL_DCCP = 0x10d
+- SOL_DECNET = 0x105
+- SOL_ICMPV6 = 0x3a
+- SOL_IP = 0x0
+- SOL_IPV6 = 0x29
+- SOL_IRDA = 0x10a
+- SOL_IUCV = 0x115
+- SOL_KCM = 0x119
+- SOL_LLC = 0x10c
+- SOL_NETBEUI = 0x10b
+- SOL_NETLINK = 0x10e
+- SOL_NFC = 0x118
+- SOL_PACKET = 0x107
+- SOL_PNPIPE = 0x113
+- SOL_PPPOL2TP = 0x111
+- SOL_RAW = 0xff
+- SOL_RDS = 0x114
+- SOL_RXRPC = 0x110
+- SOL_SOCKET = 0xffff
+- SOL_TCP = 0x6
+- SOL_TIPC = 0x10f
+- SOL_X25 = 0x106
+- SOMAXCONN = 0x80
+- SO_ACCEPTCONN = 0x1009
+- SO_ATTACH_BPF = 0x32
+- SO_ATTACH_FILTER = 0x1a
+- SO_ATTACH_REUSEPORT_CBPF = 0x33
+- SO_ATTACH_REUSEPORT_EBPF = 0x34
+- SO_BINDTODEVICE = 0x19
+- SO_BPF_EXTENSIONS = 0x30
+- SO_BROADCAST = 0x20
+- SO_BSDCOMPAT = 0xe
+- SO_BUSY_POLL = 0x2e
+- SO_CNX_ADVICE = 0x35
+- SO_DEBUG = 0x1
+- SO_DETACH_BPF = 0x1b
+- SO_DETACH_FILTER = 0x1b
+- SO_DOMAIN = 0x1029
+- SO_DONTROUTE = 0x10
+- SO_ERROR = 0x1007
+- SO_GET_FILTER = 0x1a
+- SO_INCOMING_CPU = 0x31
+- SO_KEEPALIVE = 0x8
+- SO_LINGER = 0x80
+- SO_LOCK_FILTER = 0x2c
+- SO_MARK = 0x24
+- SO_MAX_PACING_RATE = 0x2f
+- SO_NOFCS = 0x2b
+- SO_NO_CHECK = 0xb
+- SO_OOBINLINE = 0x100
+- SO_PASSCRED = 0x11
+- SO_PASSSEC = 0x22
+- SO_PEEK_OFF = 0x2a
+- SO_PEERCRED = 0x12
+- SO_PEERNAME = 0x1c
+- SO_PEERSEC = 0x1e
+- SO_PRIORITY = 0xc
+- SO_PROTOCOL = 0x1028
+- SO_RCVBUF = 0x1002
+- SO_RCVBUFFORCE = 0x21
+- SO_RCVLOWAT = 0x1004
+- SO_RCVTIMEO = 0x1006
+- SO_REUSEADDR = 0x4
+- SO_REUSEPORT = 0x200
+- SO_RXQ_OVFL = 0x28
+- SO_SECURITY_AUTHENTICATION = 0x16
+- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
+- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
+- SO_SELECT_ERR_QUEUE = 0x2d
+- SO_SNDBUF = 0x1001
+- SO_SNDBUFFORCE = 0x1f
+- SO_SNDLOWAT = 0x1003
+- SO_SNDTIMEO = 0x1005
+- SO_STYLE = 0x1008
+- SO_TIMESTAMP = 0x1d
+- SO_TIMESTAMPING = 0x25
+- SO_TIMESTAMPNS = 0x23
+- SO_TYPE = 0x1008
+- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
+- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
+- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
+- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
+- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
+- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
+- SO_VM_SOCKETS_TRUSTED = 0x5
+- SO_WIFI_STATUS = 0x29
+- SPLICE_F_GIFT = 0x8
+- SPLICE_F_MORE = 0x4
+- SPLICE_F_MOVE = 0x1
+- SPLICE_F_NONBLOCK = 0x2
+- S_BLKSIZE = 0x200
+- S_IEXEC = 0x40
+- S_IFBLK = 0x6000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFIFO = 0x1000
+- S_IFLNK = 0xa000
+- S_IFMT = 0xf000
+- S_IFREG = 0x8000
+- S_IFSOCK = 0xc000
+- S_IREAD = 0x100
+- S_IRGRP = 0x20
+- S_IROTH = 0x4
+- S_IRUSR = 0x100
+- S_IRWXG = 0x38
+- S_IRWXO = 0x7
+- S_IRWXU = 0x1c0
+- S_ISGID = 0x400
+- S_ISUID = 0x800
+- S_ISVTX = 0x200
+- S_IWGRP = 0x10
+- S_IWOTH = 0x2
+- S_IWRITE = 0x80
+- S_IWUSR = 0x80
+- S_IXGRP = 0x8
+- S_IXOTH = 0x1
+- S_IXUSR = 0x40
+- TAB0 = 0x0
+- TAB1 = 0x800
+- TAB2 = 0x1000
+- TAB3 = 0x1800
+- TABDLY = 0x1800
+- TASKSTATS_CMD_ATTR_MAX = 0x4
+- TASKSTATS_CMD_MAX = 0x2
+- TASKSTATS_GENL_NAME = "TASKSTATS"
+- TASKSTATS_GENL_VERSION = 0x1
+- TASKSTATS_TYPE_MAX = 0x6
+- TASKSTATS_VERSION = 0x8
+- TCFLSH = 0x5407
+- TCGETA = 0x5401
+- TCGETS = 0x540d
+- TCGETS2 = 0x4030542a
+- TCIFLUSH = 0x0
+- TCIOFF = 0x2
+- TCIOFLUSH = 0x2
+- TCION = 0x3
+- TCOFLUSH = 0x1
+- TCOOFF = 0x0
+- TCOON = 0x1
+- TCP_CC_INFO = 0x1a
+- TCP_CONGESTION = 0xd
+- TCP_COOKIE_IN_ALWAYS = 0x1
+- TCP_COOKIE_MAX = 0x10
+- TCP_COOKIE_MIN = 0x8
+- TCP_COOKIE_OUT_NEVER = 0x2
+- TCP_COOKIE_PAIR_SIZE = 0x20
+- TCP_COOKIE_TRANSACTIONS = 0xf
+- TCP_CORK = 0x3
+- TCP_DEFER_ACCEPT = 0x9
+- TCP_FASTOPEN = 0x17
+- TCP_INFO = 0xb
+- TCP_KEEPCNT = 0x6
+- TCP_KEEPIDLE = 0x4
+- TCP_KEEPINTVL = 0x5
+- TCP_LINGER2 = 0x8
+- TCP_MAXSEG = 0x2
+- TCP_MAXWIN = 0xffff
+- TCP_MAX_WINSHIFT = 0xe
+- TCP_MD5SIG = 0xe
+- TCP_MD5SIG_MAXKEYLEN = 0x50
+- TCP_MSS = 0x200
+- TCP_MSS_DEFAULT = 0x218
+- TCP_MSS_DESIRED = 0x4c4
+- TCP_NODELAY = 0x1
+- TCP_NOTSENT_LOWAT = 0x19
+- TCP_QUEUE_SEQ = 0x15
+- TCP_QUICKACK = 0xc
+- TCP_REPAIR = 0x13
+- TCP_REPAIR_OPTIONS = 0x16
+- TCP_REPAIR_QUEUE = 0x14
+- TCP_REPAIR_WINDOW = 0x1d
+- TCP_SAVED_SYN = 0x1c
+- TCP_SAVE_SYN = 0x1b
+- TCP_SYNCNT = 0x7
+- TCP_S_DATA_IN = 0x4
+- TCP_S_DATA_OUT = 0x8
+- TCP_THIN_DUPACK = 0x11
+- TCP_THIN_LINEAR_TIMEOUTS = 0x10
+- TCP_TIMESTAMP = 0x18
+- TCP_USER_TIMEOUT = 0x12
+- TCP_WINDOW_CLAMP = 0xa
+- TCSAFLUSH = 0x5410
+- TCSBRK = 0x5405
+- TCSBRKP = 0x5486
+- TCSETA = 0x5402
+- TCSETAF = 0x5404
+- TCSETAW = 0x5403
+- TCSETS = 0x540e
+- TCSETS2 = 0x8030542b
+- TCSETSF = 0x5410
+- TCSETSF2 = 0x8030542d
+- TCSETSW = 0x540f
+- TCSETSW2 = 0x8030542c
+- TCXONC = 0x5406
+- TIOCCBRK = 0x5428
+- TIOCCONS = 0x80047478
+- TIOCEXCL = 0x740d
+- TIOCGDEV = 0x40045432
+- TIOCGETD = 0x7400
+- TIOCGETP = 0x7408
+- TIOCGEXCL = 0x40045440
+- TIOCGICOUNT = 0x5492
+- TIOCGLCKTRMIOS = 0x548b
+- TIOCGLTC = 0x7474
+- TIOCGPGRP = 0x40047477
+- TIOCGPKT = 0x40045438
+- TIOCGPTLCK = 0x40045439
+- TIOCGPTN = 0x40045430
+- TIOCGRS485 = 0x4020542e
+- TIOCGSERIAL = 0x5484
+- TIOCGSID = 0x7416
+- TIOCGSOFTCAR = 0x5481
+- TIOCGWINSZ = 0x40087468
+- TIOCINQ = 0x467f
+- TIOCLINUX = 0x5483
+- TIOCMBIC = 0x741c
+- TIOCMBIS = 0x741b
+- TIOCMGET = 0x741d
+- TIOCMIWAIT = 0x5491
+- TIOCMSET = 0x741a
+- TIOCM_CAR = 0x100
+- TIOCM_CD = 0x100
+- TIOCM_CTS = 0x40
+- TIOCM_DSR = 0x400
+- TIOCM_DTR = 0x2
+- TIOCM_LE = 0x1
+- TIOCM_RI = 0x200
+- TIOCM_RNG = 0x200
+- TIOCM_RTS = 0x4
+- TIOCM_SR = 0x20
+- TIOCM_ST = 0x10
+- TIOCNOTTY = 0x5471
+- TIOCNXCL = 0x740e
+- TIOCOUTQ = 0x7472
+- TIOCPKT = 0x5470
+- TIOCPKT_DATA = 0x0
+- TIOCPKT_DOSTOP = 0x20
+- TIOCPKT_FLUSHREAD = 0x1
+- TIOCPKT_FLUSHWRITE = 0x2
+- TIOCPKT_IOCTL = 0x40
+- TIOCPKT_NOSTOP = 0x10
+- TIOCPKT_START = 0x8
+- TIOCPKT_STOP = 0x4
+- TIOCSBRK = 0x5427
+- TIOCSCTTY = 0x5480
+- TIOCSERCONFIG = 0x5488
+- TIOCSERGETLSR = 0x548e
+- TIOCSERGETMULTI = 0x548f
+- TIOCSERGSTRUCT = 0x548d
+- TIOCSERGWILD = 0x5489
+- TIOCSERSETMULTI = 0x5490
+- TIOCSERSWILD = 0x548a
+- TIOCSER_TEMT = 0x1
+- TIOCSETD = 0x7401
+- TIOCSETN = 0x740a
+- TIOCSETP = 0x7409
+- TIOCSIG = 0x80045436
+- TIOCSLCKTRMIOS = 0x548c
+- TIOCSLTC = 0x7475
+- TIOCSPGRP = 0x80047476
+- TIOCSPTLCK = 0x80045431
+- TIOCSRS485 = 0xc020542f
+- TIOCSSERIAL = 0x5485
+- TIOCSSOFTCAR = 0x5482
+- TIOCSTI = 0x5472
+- TIOCSWINSZ = 0x80087467
+- TIOCVHANGUP = 0x5437
+- TOSTOP = 0x8000
+- TS_COMM_LEN = 0x20
+- TUNATTACHFILTER = 0x800854d5
+- TUNDETACHFILTER = 0x800854d6
+- TUNGETFEATURES = 0x400454cf
+- TUNGETFILTER = 0x400854db
+- TUNGETIFF = 0x400454d2
+- TUNGETSNDBUF = 0x400454d3
+- TUNGETVNETBE = 0x400454df
+- TUNGETVNETHDRSZ = 0x400454d7
+- TUNGETVNETLE = 0x400454dd
+- TUNSETDEBUG = 0x800454c9
+- TUNSETGROUP = 0x800454ce
+- TUNSETIFF = 0x800454ca
+- TUNSETIFINDEX = 0x800454da
+- TUNSETLINK = 0x800454cd
+- TUNSETNOCSUM = 0x800454c8
+- TUNSETOFFLOAD = 0x800454d0
+- TUNSETOWNER = 0x800454cc
+- TUNSETPERSIST = 0x800454cb
+- TUNSETQUEUE = 0x800454d9
+- TUNSETSNDBUF = 0x800454d4
+- TUNSETTXFILTER = 0x800454d1
+- TUNSETVNETBE = 0x800454de
+- TUNSETVNETHDRSZ = 0x800454d8
+- TUNSETVNETLE = 0x800454dc
+- UMOUNT_NOFOLLOW = 0x8
+- VDISCARD = 0xd
+- VEOF = 0x10
+- VEOL = 0x11
+- VEOL2 = 0x6
+- VERASE = 0x2
+- VINTR = 0x0
+- VKILL = 0x3
+- VLNEXT = 0xf
+- VMADDR_CID_ANY = 0xffffffff
+- VMADDR_CID_HOST = 0x2
+- VMADDR_CID_HYPERVISOR = 0x0
+- VMADDR_CID_RESERVED = 0x1
+- VMADDR_PORT_ANY = 0xffffffff
+- VMIN = 0x4
+- VM_SOCKETS_INVALID_VERSION = 0xffffffff
+- VQUIT = 0x1
+- VREPRINT = 0xc
+- VSTART = 0x8
+- VSTOP = 0x9
+- VSUSP = 0xa
+- VSWTC = 0x7
+- VSWTCH = 0x7
+- VT0 = 0x0
+- VT1 = 0x4000
+- VTDLY = 0x4000
+- VTIME = 0x5
+- VWERASE = 0xe
+- WALL = 0x40000000
+- WCLONE = 0x80000000
+- WCONTINUED = 0x8
+- WEXITED = 0x4
+- WNOHANG = 0x1
+- WNOTHREAD = 0x20000000
+- WNOWAIT = 0x1000000
+- WORDSIZE = 0x20
+- WSTOPPED = 0x2
+- WUNTRACED = 0x2
+- XATTR_CREATE = 0x1
+- XATTR_REPLACE = 0x2
+- XCASE = 0x4
+- XTABS = 0x1800
++ B1000000 = 0x1008
++ B115200 = 0x1002
++ B1152000 = 0x1009
++ B1500000 = 0x100a
++ B2000000 = 0x100b
++ B230400 = 0x1003
++ B2500000 = 0x100c
++ B3000000 = 0x100d
++ B3500000 = 0x100e
++ B4000000 = 0x100f
++ B460800 = 0x1004
++ B500000 = 0x1005
++ B57600 = 0x1001
++ B576000 = 0x1006
++ B921600 = 0x1007
++ BLKBSZGET = 0x40041270
++ BLKBSZSET = 0x80041271
++ BLKFLSBUF = 0x20001261
++ BLKFRAGET = 0x20001265
++ BLKFRASET = 0x20001264
++ BLKGETSIZE = 0x20001260
++ BLKGETSIZE64 = 0x40041272
++ BLKPBSZGET = 0x2000127b
++ BLKRAGET = 0x20001263
++ BLKRASET = 0x20001262
++ BLKROGET = 0x2000125e
++ BLKROSET = 0x2000125d
++ BLKRRPART = 0x2000125f
++ BLKSECTGET = 0x20001267
++ BLKSECTSET = 0x20001266
++ BLKSSZGET = 0x20001268
++ BOTHER = 0x1000
++ BS1 = 0x2000
++ BSDLY = 0x2000
++ CBAUD = 0x100f
++ CBAUDEX = 0x1000
++ CIBAUD = 0x100f0000
++ CLOCAL = 0x800
++ CR1 = 0x200
++ CR2 = 0x400
++ CR3 = 0x600
++ CRDLY = 0x600
++ CREAD = 0x80
++ CS6 = 0x10
++ CS7 = 0x20
++ CS8 = 0x30
++ CSIZE = 0x30
++ CSTOPB = 0x40
++ ECHOCTL = 0x200
++ ECHOE = 0x10
++ ECHOK = 0x20
++ ECHOKE = 0x800
++ ECHONL = 0x40
++ ECHOPRT = 0x400
++ EFD_CLOEXEC = 0x80000
++ EFD_NONBLOCK = 0x80
++ EPOLL_CLOEXEC = 0x80000
++ EXTPROC = 0x10000
++ FF1 = 0x8000
++ FFDLY = 0x8000
++ FLUSHO = 0x2000
++ FS_IOC_ENABLE_VERITY = 0x80806685
++ FS_IOC_GETFLAGS = 0x40046601
++ FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
++ FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
++ FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
++ F_GETLK = 0x21
++ F_GETLK64 = 0x21
++ F_GETOWN = 0x17
++ F_RDLCK = 0x0
++ F_SETLK = 0x22
++ F_SETLK64 = 0x22
++ F_SETLKW = 0x23
++ F_SETLKW64 = 0x23
++ F_SETOWN = 0x18
++ F_UNLCK = 0x2
++ F_WRLCK = 0x1
++ HUPCL = 0x400
++ ICANON = 0x2
++ IEXTEN = 0x100
++ IN_CLOEXEC = 0x80000
++ IN_NONBLOCK = 0x80
++ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x200007b9
++ ISIG = 0x1
++ IUCLC = 0x200
++ IXOFF = 0x1000
++ IXON = 0x400
++ MAP_ANON = 0x800
++ MAP_ANONYMOUS = 0x800
++ MAP_DENYWRITE = 0x2000
++ MAP_EXECUTABLE = 0x4000
++ MAP_GROWSDOWN = 0x1000
++ MAP_HUGETLB = 0x80000
++ MAP_LOCKED = 0x8000
++ MAP_NONBLOCK = 0x20000
++ MAP_NORESERVE = 0x400
++ MAP_POPULATE = 0x10000
++ MAP_RENAME = 0x800
++ MAP_STACK = 0x40000
++ MCL_CURRENT = 0x1
++ MCL_FUTURE = 0x2
++ MCL_ONFAULT = 0x4
++ NFDBITS = 0x20
++ NLDLY = 0x100
++ NOFLSH = 0x80
++ NS_GET_NSTYPE = 0x2000b703
++ NS_GET_OWNER_UID = 0x2000b704
++ NS_GET_PARENT = 0x2000b702
++ NS_GET_USERNS = 0x2000b701
++ OLCUC = 0x2
++ ONLCR = 0x4
++ O_APPEND = 0x8
++ O_ASYNC = 0x1000
++ O_CLOEXEC = 0x80000
++ O_CREAT = 0x100
++ O_DIRECT = 0x8000
++ O_DIRECTORY = 0x10000
++ O_DSYNC = 0x10
++ O_EXCL = 0x400
++ O_FSYNC = 0x4010
++ O_LARGEFILE = 0x2000
++ O_NDELAY = 0x80
++ O_NOATIME = 0x40000
++ O_NOCTTY = 0x800
++ O_NOFOLLOW = 0x20000
++ O_NONBLOCK = 0x80
++ O_PATH = 0x200000
++ O_RSYNC = 0x4010
++ O_SYNC = 0x4010
++ O_TMPFILE = 0x410000
++ O_TRUNC = 0x200
++ PARENB = 0x100
++ PARODD = 0x200
++ PENDIN = 0x4000
++ PERF_EVENT_IOC_DISABLE = 0x20002401
++ PERF_EVENT_IOC_ENABLE = 0x20002400
++ PERF_EVENT_IOC_ID = 0x40042407
++ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8004240b
++ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
++ PERF_EVENT_IOC_PERIOD = 0x80082404
++ PERF_EVENT_IOC_QUERY_BPF = 0xc004240a
++ PERF_EVENT_IOC_REFRESH = 0x20002402
++ PERF_EVENT_IOC_RESET = 0x20002403
++ PERF_EVENT_IOC_SET_BPF = 0x80042408
++ PERF_EVENT_IOC_SET_FILTER = 0x80042406
++ PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
++ PPPIOCATTACH = 0x8004743d
++ PPPIOCATTCHAN = 0x80047438
++ PPPIOCCONNECT = 0x8004743a
++ PPPIOCDETACH = 0x8004743c
++ PPPIOCDISCONN = 0x20007439
++ PPPIOCGASYNCMAP = 0x40047458
++ PPPIOCGCHAN = 0x40047437
++ PPPIOCGDEBUG = 0x40047441
++ PPPIOCGFLAGS = 0x4004745a
++ PPPIOCGIDLE = 0x4008743f
++ PPPIOCGIDLE32 = 0x4008743f
++ PPPIOCGIDLE64 = 0x4010743f
++ PPPIOCGL2TPSTATS = 0x40487436
++ PPPIOCGMRU = 0x40047453
++ PPPIOCGRASYNCMAP = 0x40047455
++ PPPIOCGUNIT = 0x40047456
++ PPPIOCGXASYNCMAP = 0x40207450
++ PPPIOCSACTIVE = 0x80087446
++ PPPIOCSASYNCMAP = 0x80047457
++ PPPIOCSCOMPRESS = 0x800c744d
++ PPPIOCSDEBUG = 0x80047440
++ PPPIOCSFLAGS = 0x80047459
++ PPPIOCSMAXCID = 0x80047451
++ PPPIOCSMRRU = 0x8004743b
++ PPPIOCSMRU = 0x80047452
++ PPPIOCSNPMODE = 0x8008744b
++ PPPIOCSPASS = 0x80087447
++ PPPIOCSRASYNCMAP = 0x80047454
++ PPPIOCSXASYNCMAP = 0x8020744f
++ PPPIOCXFERUNIT = 0x2000744e
++ PR_SET_PTRACER_ANY = 0xffffffff
++ PTRACE_GETFPREGS = 0xe
++ PTRACE_GET_THREAD_AREA = 0x19
++ PTRACE_GET_THREAD_AREA_3264 = 0xc4
++ PTRACE_GET_WATCH_REGS = 0xd0
++ PTRACE_OLDSETOPTIONS = 0x15
++ PTRACE_PEEKDATA_3264 = 0xc1
++ PTRACE_PEEKTEXT_3264 = 0xc0
++ PTRACE_POKEDATA_3264 = 0xc3
++ PTRACE_POKETEXT_3264 = 0xc2
++ PTRACE_SETFPREGS = 0xf
++ PTRACE_SET_THREAD_AREA = 0x1a
++ PTRACE_SET_WATCH_REGS = 0xd1
++ RLIMIT_AS = 0x6
++ RLIMIT_MEMLOCK = 0x9
++ RLIMIT_NOFILE = 0x5
++ RLIMIT_NPROC = 0x8
++ RLIMIT_RSS = 0x7
++ RNDADDENTROPY = 0x80085203
++ RNDADDTOENTCNT = 0x80045201
++ RNDCLEARPOOL = 0x20005206
++ RNDGETENTCNT = 0x40045200
++ RNDGETPOOL = 0x40085202
++ RNDRESEEDCRNG = 0x20005207
++ RNDZAPENTCNT = 0x20005204
++ RTC_AIE_OFF = 0x20007002
++ RTC_AIE_ON = 0x20007001
++ RTC_ALM_READ = 0x40247008
++ RTC_ALM_SET = 0x80247007
++ RTC_EPOCH_READ = 0x4004700d
++ RTC_EPOCH_SET = 0x8004700e
++ RTC_IRQP_READ = 0x4004700b
++ RTC_IRQP_SET = 0x8004700c
++ RTC_PIE_OFF = 0x20007006
++ RTC_PIE_ON = 0x20007005
++ RTC_PLL_GET = 0x401c7011
++ RTC_PLL_SET = 0x801c7012
++ RTC_RD_TIME = 0x40247009
++ RTC_SET_TIME = 0x8024700a
++ RTC_UIE_OFF = 0x20007004
++ RTC_UIE_ON = 0x20007003
++ RTC_VL_CLR = 0x20007014
++ RTC_VL_READ = 0x40047013
++ RTC_WIE_OFF = 0x20007010
++ RTC_WIE_ON = 0x2000700f
++ RTC_WKALM_RD = 0x40287010
++ RTC_WKALM_SET = 0x8028700f
++ SCM_TIMESTAMPING = 0x25
++ SCM_TIMESTAMPING_OPT_STATS = 0x36
++ SCM_TIMESTAMPING_PKTINFO = 0x3a
++ SCM_TIMESTAMPNS = 0x23
++ SCM_TXTIME = 0x3d
++ SCM_WIFI_STATUS = 0x29
++ SFD_CLOEXEC = 0x80000
++ SFD_NONBLOCK = 0x80
++ SIOCATMARK = 0x40047307
++ SIOCGPGRP = 0x40047309
++ SIOCGSTAMPNS_NEW = 0x40108907
++ SIOCGSTAMP_NEW = 0x40108906
++ SIOCINQ = 0x467f
++ SIOCOUTQ = 0x7472
++ SIOCSPGRP = 0x80047308
++ SOCK_CLOEXEC = 0x80000
++ SOCK_DGRAM = 0x1
++ SOCK_NONBLOCK = 0x80
++ SOCK_STREAM = 0x2
++ SOL_SOCKET = 0xffff
++ SO_ACCEPTCONN = 0x1009
++ SO_ATTACH_BPF = 0x32
++ SO_ATTACH_REUSEPORT_CBPF = 0x33
++ SO_ATTACH_REUSEPORT_EBPF = 0x34
++ SO_BINDTODEVICE = 0x19
++ SO_BINDTOIFINDEX = 0x3e
++ SO_BPF_EXTENSIONS = 0x30
++ SO_BROADCAST = 0x20
++ SO_BSDCOMPAT = 0xe
++ SO_BUSY_POLL = 0x2e
++ SO_CNX_ADVICE = 0x35
++ SO_COOKIE = 0x39
++ SO_DETACH_REUSEPORT_BPF = 0x44
++ SO_DOMAIN = 0x1029
++ SO_DONTROUTE = 0x10
++ SO_ERROR = 0x1007
++ SO_INCOMING_CPU = 0x31
++ SO_INCOMING_NAPI_ID = 0x38
++ SO_KEEPALIVE = 0x8
++ SO_LINGER = 0x80
++ SO_LOCK_FILTER = 0x2c
++ SO_MARK = 0x24
++ SO_MAX_PACING_RATE = 0x2f
++ SO_MEMINFO = 0x37
++ SO_NOFCS = 0x2b
++ SO_OOBINLINE = 0x100
++ SO_PASSCRED = 0x11
++ SO_PASSSEC = 0x22
++ SO_PEEK_OFF = 0x2a
++ SO_PEERCRED = 0x12
++ SO_PEERGROUPS = 0x3b
++ SO_PEERSEC = 0x1e
++ SO_PROTOCOL = 0x1028
++ SO_RCVBUF = 0x1002
++ SO_RCVBUFFORCE = 0x21
++ SO_RCVLOWAT = 0x1004
++ SO_RCVTIMEO = 0x1006
++ SO_RCVTIMEO_NEW = 0x42
++ SO_RCVTIMEO_OLD = 0x1006
++ SO_REUSEADDR = 0x4
++ SO_REUSEPORT = 0x200
++ SO_RXQ_OVFL = 0x28
++ SO_SECURITY_AUTHENTICATION = 0x16
++ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
++ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
++ SO_SELECT_ERR_QUEUE = 0x2d
++ SO_SNDBUF = 0x1001
++ SO_SNDBUFFORCE = 0x1f
++ SO_SNDLOWAT = 0x1003
++ SO_SNDTIMEO = 0x1005
++ SO_SNDTIMEO_NEW = 0x43
++ SO_SNDTIMEO_OLD = 0x1005
++ SO_STYLE = 0x1008
++ SO_TIMESTAMPING = 0x25
++ SO_TIMESTAMPING_NEW = 0x41
++ SO_TIMESTAMPING_OLD = 0x25
++ SO_TIMESTAMPNS = 0x23
++ SO_TIMESTAMPNS_NEW = 0x40
++ SO_TIMESTAMPNS_OLD = 0x23
++ SO_TIMESTAMP_NEW = 0x3f
++ SO_TXTIME = 0x3d
++ SO_TYPE = 0x1008
++ SO_WIFI_STATUS = 0x29
++ SO_ZEROCOPY = 0x3c
++ TAB1 = 0x800
++ TAB2 = 0x1000
++ TAB3 = 0x1800
++ TABDLY = 0x1800
++ TCFLSH = 0x5407
++ TCGETA = 0x5401
++ TCGETS = 0x540d
++ TCGETS2 = 0x4030542a
++ TCSAFLUSH = 0x5410
++ TCSBRK = 0x5405
++ TCSBRKP = 0x5486
++ TCSETA = 0x5402
++ TCSETAF = 0x5404
++ TCSETAW = 0x5403
++ TCSETS = 0x540e
++ TCSETS2 = 0x8030542b
++ TCSETSF = 0x5410
++ TCSETSF2 = 0x8030542d
++ TCSETSW = 0x540f
++ TCSETSW2 = 0x8030542c
++ TCXONC = 0x5406
++ TIOCCBRK = 0x5428
++ TIOCCONS = 0x80047478
++ TIOCEXCL = 0x740d
++ TIOCGDEV = 0x40045432
++ TIOCGETD = 0x7400
++ TIOCGETP = 0x7408
++ TIOCGEXCL = 0x40045440
++ TIOCGICOUNT = 0x5492
++ TIOCGISO7816 = 0x40285442
++ TIOCGLCKTRMIOS = 0x548b
++ TIOCGLTC = 0x7474
++ TIOCGPGRP = 0x40047477
++ TIOCGPKT = 0x40045438
++ TIOCGPTLCK = 0x40045439
++ TIOCGPTN = 0x40045430
++ TIOCGPTPEER = 0x20005441
++ TIOCGRS485 = 0x4020542e
++ TIOCGSERIAL = 0x5484
++ TIOCGSID = 0x7416
++ TIOCGSOFTCAR = 0x5481
++ TIOCGWINSZ = 0x40087468
++ TIOCINQ = 0x467f
++ TIOCLINUX = 0x5483
++ TIOCMBIC = 0x741c
++ TIOCMBIS = 0x741b
++ TIOCMGET = 0x741d
++ TIOCMIWAIT = 0x5491
++ TIOCMSET = 0x741a
++ TIOCM_CAR = 0x100
++ TIOCM_CD = 0x100
++ TIOCM_CTS = 0x40
++ TIOCM_DSR = 0x400
++ TIOCM_RI = 0x200
++ TIOCM_RNG = 0x200
++ TIOCM_SR = 0x20
++ TIOCM_ST = 0x10
++ TIOCNOTTY = 0x5471
++ TIOCNXCL = 0x740e
++ TIOCOUTQ = 0x7472
++ TIOCPKT = 0x5470
++ TIOCSBRK = 0x5427
++ TIOCSCTTY = 0x5480
++ TIOCSERCONFIG = 0x5488
++ TIOCSERGETLSR = 0x548e
++ TIOCSERGETMULTI = 0x548f
++ TIOCSERGSTRUCT = 0x548d
++ TIOCSERGWILD = 0x5489
++ TIOCSERSETMULTI = 0x5490
++ TIOCSERSWILD = 0x548a
++ TIOCSER_TEMT = 0x1
++ TIOCSETD = 0x7401
++ TIOCSETN = 0x740a
++ TIOCSETP = 0x7409
++ TIOCSIG = 0x80045436
++ TIOCSISO7816 = 0xc0285443
++ TIOCSLCKTRMIOS = 0x548c
++ TIOCSLTC = 0x7475
++ TIOCSPGRP = 0x80047476
++ TIOCSPTLCK = 0x80045431
++ TIOCSRS485 = 0xc020542f
++ TIOCSSERIAL = 0x5485
++ TIOCSSOFTCAR = 0x5482
++ TIOCSTI = 0x5472
++ TIOCSWINSZ = 0x80087467
++ TIOCVHANGUP = 0x5437
++ TOSTOP = 0x8000
++ TUNATTACHFILTER = 0x800854d5
++ TUNDETACHFILTER = 0x800854d6
++ TUNGETDEVNETNS = 0x200054e3
++ TUNGETFEATURES = 0x400454cf
++ TUNGETFILTER = 0x400854db
++ TUNGETIFF = 0x400454d2
++ TUNGETSNDBUF = 0x400454d3
++ TUNGETVNETBE = 0x400454df
++ TUNGETVNETHDRSZ = 0x400454d7
++ TUNGETVNETLE = 0x400454dd
++ TUNSETCARRIER = 0x800454e2
++ TUNSETDEBUG = 0x800454c9
++ TUNSETFILTEREBPF = 0x400454e1
++ TUNSETGROUP = 0x800454ce
++ TUNSETIFF = 0x800454ca
++ TUNSETIFINDEX = 0x800454da
++ TUNSETLINK = 0x800454cd
++ TUNSETNOCSUM = 0x800454c8
++ TUNSETOFFLOAD = 0x800454d0
++ TUNSETOWNER = 0x800454cc
++ TUNSETPERSIST = 0x800454cb
++ TUNSETQUEUE = 0x800454d9
++ TUNSETSNDBUF = 0x800454d4
++ TUNSETSTEERINGEBPF = 0x400454e0
++ TUNSETTXFILTER = 0x800454d1
++ TUNSETVNETBE = 0x800454de
++ TUNSETVNETHDRSZ = 0x800454d8
++ TUNSETVNETLE = 0x800454dc
++ UBI_IOCATT = 0x80186f40
++ UBI_IOCDET = 0x80046f41
++ UBI_IOCEBCH = 0x80044f02
++ UBI_IOCEBER = 0x80044f01
++ UBI_IOCEBISMAP = 0x40044f05
++ UBI_IOCEBMAP = 0x80084f03
++ UBI_IOCEBUNMAP = 0x80044f04
++ UBI_IOCMKVOL = 0x80986f00
++ UBI_IOCRMVOL = 0x80046f01
++ UBI_IOCRNVOL = 0x91106f03
++ UBI_IOCRPEB = 0x80046f04
++ UBI_IOCRSVOL = 0x800c6f02
++ UBI_IOCSETVOLPROP = 0x80104f06
++ UBI_IOCSPEB = 0x80046f05
++ UBI_IOCVOLCRBLK = 0x80804f07
++ UBI_IOCVOLRMBLK = 0x20004f08
++ UBI_IOCVOLUP = 0x80084f00
++ VDISCARD = 0xd
++ VEOF = 0x10
++ VEOL = 0x11
++ VEOL2 = 0x6
++ VMIN = 0x4
++ VREPRINT = 0xc
++ VSTART = 0x8
++ VSTOP = 0x9
++ VSUSP = 0xa
++ VSWTC = 0x7
++ VSWTCH = 0x7
++ VT1 = 0x4000
++ VTDLY = 0x4000
++ VTIME = 0x5
++ VWERASE = 0xe
++ WDIOC_GETBOOTSTATUS = 0x40045702
++ WDIOC_GETPRETIMEOUT = 0x40045709
++ WDIOC_GETSTATUS = 0x40045701
++ WDIOC_GETSUPPORT = 0x40285700
++ WDIOC_GETTEMP = 0x40045703
++ WDIOC_GETTIMELEFT = 0x4004570a
++ WDIOC_GETTIMEOUT = 0x40045707
++ WDIOC_KEEPALIVE = 0x40045705
++ WDIOC_SETOPTIONS = 0x40045704
++ WORDSIZE = 0x20
++ XCASE = 0x4
++ XTABS = 0x1800
+ )
+
+ // Errors
+ const (
+- E2BIG = syscall.Errno(0x7)
+- EACCES = syscall.Errno(0xd)
+ EADDRINUSE = syscall.Errno(0x7d)
+ EADDRNOTAVAIL = syscall.Errno(0x7e)
+ EADV = syscall.Errno(0x44)
+ EAFNOSUPPORT = syscall.Errno(0x7c)
+- EAGAIN = syscall.Errno(0xb)
+ EALREADY = syscall.Errno(0x95)
+ EBADE = syscall.Errno(0x32)
+- EBADF = syscall.Errno(0x9)
+ EBADFD = syscall.Errno(0x51)
+ EBADMSG = syscall.Errno(0x4d)
+ EBADR = syscall.Errno(0x33)
+ EBADRQC = syscall.Errno(0x36)
+ EBADSLT = syscall.Errno(0x37)
+ EBFONT = syscall.Errno(0x3b)
+- EBUSY = syscall.Errno(0x10)
+ ECANCELED = syscall.Errno(0x9e)
+- ECHILD = syscall.Errno(0xa)
+ ECHRNG = syscall.Errno(0x25)
+ ECOMM = syscall.Errno(0x46)
+ ECONNABORTED = syscall.Errno(0x82)
+@@ -1886,12 +502,8 @@ const (
+ EDEADLK = syscall.Errno(0x2d)
+ EDEADLOCK = syscall.Errno(0x38)
+ EDESTADDRREQ = syscall.Errno(0x60)
+- EDOM = syscall.Errno(0x21)
+ EDOTDOT = syscall.Errno(0x49)
+ EDQUOT = syscall.Errno(0x46d)
+- EEXIST = syscall.Errno(0x11)
+- EFAULT = syscall.Errno(0xe)
+- EFBIG = syscall.Errno(0x1b)
+ EHOSTDOWN = syscall.Errno(0x93)
+ EHOSTUNREACH = syscall.Errno(0x94)
+ EHWPOISON = syscall.Errno(0xa8)
+@@ -1899,11 +511,7 @@ const (
+ EILSEQ = syscall.Errno(0x58)
+ EINIT = syscall.Errno(0x8d)
+ EINPROGRESS = syscall.Errno(0x96)
+- EINTR = syscall.Errno(0x4)
+- EINVAL = syscall.Errno(0x16)
+- EIO = syscall.Errno(0x5)
+ EISCONN = syscall.Errno(0x85)
+- EISDIR = syscall.Errno(0x15)
+ EISNAM = syscall.Errno(0x8b)
+ EKEYEXPIRED = syscall.Errno(0xa2)
+ EKEYREJECTED = syscall.Errno(0xa4)
+@@ -1920,8 +528,6 @@ const (
+ ELNRNG = syscall.Errno(0x29)
+ ELOOP = syscall.Errno(0x5a)
+ EMEDIUMTYPE = syscall.Errno(0xa0)
+- EMFILE = syscall.Errno(0x18)
+- EMLINK = syscall.Errno(0x1f)
+ EMSGSIZE = syscall.Errno(0x61)
+ EMULTIHOP = syscall.Errno(0x4a)
+ ENAMETOOLONG = syscall.Errno(0x4e)
+@@ -1929,100 +535,68 @@ const (
+ ENETDOWN = syscall.Errno(0x7f)
+ ENETRESET = syscall.Errno(0x81)
+ ENETUNREACH = syscall.Errno(0x80)
+- ENFILE = syscall.Errno(0x17)
+ ENOANO = syscall.Errno(0x35)
+ ENOBUFS = syscall.Errno(0x84)
+ ENOCSI = syscall.Errno(0x2b)
+ ENODATA = syscall.Errno(0x3d)
+- ENODEV = syscall.Errno(0x13)
+- ENOENT = syscall.Errno(0x2)
+- ENOEXEC = syscall.Errno(0x8)
+ ENOKEY = syscall.Errno(0xa1)
+ ENOLCK = syscall.Errno(0x2e)
+ ENOLINK = syscall.Errno(0x43)
+ ENOMEDIUM = syscall.Errno(0x9f)
+- ENOMEM = syscall.Errno(0xc)
+ ENOMSG = syscall.Errno(0x23)
+ ENONET = syscall.Errno(0x40)
+ ENOPKG = syscall.Errno(0x41)
+ ENOPROTOOPT = syscall.Errno(0x63)
+- ENOSPC = syscall.Errno(0x1c)
+ ENOSR = syscall.Errno(0x3f)
+ ENOSTR = syscall.Errno(0x3c)
+ ENOSYS = syscall.Errno(0x59)
+- ENOTBLK = syscall.Errno(0xf)
+ ENOTCONN = syscall.Errno(0x86)
+- ENOTDIR = syscall.Errno(0x14)
+ ENOTEMPTY = syscall.Errno(0x5d)
+ ENOTNAM = syscall.Errno(0x89)
+ ENOTRECOVERABLE = syscall.Errno(0xa6)
+ ENOTSOCK = syscall.Errno(0x5f)
+ ENOTSUP = syscall.Errno(0x7a)
+- ENOTTY = syscall.Errno(0x19)
+ ENOTUNIQ = syscall.Errno(0x50)
+- ENXIO = syscall.Errno(0x6)
+ EOPNOTSUPP = syscall.Errno(0x7a)
+ EOVERFLOW = syscall.Errno(0x4f)
+ EOWNERDEAD = syscall.Errno(0xa5)
+- EPERM = syscall.Errno(0x1)
+ EPFNOSUPPORT = syscall.Errno(0x7b)
+- EPIPE = syscall.Errno(0x20)
+ EPROTO = syscall.Errno(0x47)
+ EPROTONOSUPPORT = syscall.Errno(0x78)
+ EPROTOTYPE = syscall.Errno(0x62)
+- ERANGE = syscall.Errno(0x22)
+ EREMCHG = syscall.Errno(0x52)
+ EREMDEV = syscall.Errno(0x8e)
+ EREMOTE = syscall.Errno(0x42)
+ EREMOTEIO = syscall.Errno(0x8c)
+ ERESTART = syscall.Errno(0x5b)
+ ERFKILL = syscall.Errno(0xa7)
+- EROFS = syscall.Errno(0x1e)
+ ESHUTDOWN = syscall.Errno(0x8f)
+ ESOCKTNOSUPPORT = syscall.Errno(0x79)
+- ESPIPE = syscall.Errno(0x1d)
+- ESRCH = syscall.Errno(0x3)
+ ESRMNT = syscall.Errno(0x45)
+ ESTALE = syscall.Errno(0x97)
+ ESTRPIPE = syscall.Errno(0x5c)
+ ETIME = syscall.Errno(0x3e)
+ ETIMEDOUT = syscall.Errno(0x91)
+ ETOOMANYREFS = syscall.Errno(0x90)
+- ETXTBSY = syscall.Errno(0x1a)
+ EUCLEAN = syscall.Errno(0x87)
+ EUNATCH = syscall.Errno(0x2a)
+ EUSERS = syscall.Errno(0x5e)
+- EWOULDBLOCK = syscall.Errno(0xb)
+- EXDEV = syscall.Errno(0x12)
+ EXFULL = syscall.Errno(0x34)
+ )
+
+ // Signals
+ const (
+- SIGABRT = syscall.Signal(0x6)
+- SIGALRM = syscall.Signal(0xe)
+ SIGBUS = syscall.Signal(0xa)
+ SIGCHLD = syscall.Signal(0x12)
+ SIGCLD = syscall.Signal(0x12)
+ SIGCONT = syscall.Signal(0x19)
+ SIGEMT = syscall.Signal(0x7)
+- SIGFPE = syscall.Signal(0x8)
+- SIGHUP = syscall.Signal(0x1)
+- SIGILL = syscall.Signal(0x4)
+- SIGINT = syscall.Signal(0x2)
+ SIGIO = syscall.Signal(0x16)
+- SIGIOT = syscall.Signal(0x6)
+- SIGKILL = syscall.Signal(0x9)
+- SIGPIPE = syscall.Signal(0xd)
+ SIGPOLL = syscall.Signal(0x16)
+ SIGPROF = syscall.Signal(0x1d)
+ SIGPWR = syscall.Signal(0x13)
+- SIGQUIT = syscall.Signal(0x3)
+- SIGSEGV = syscall.Signal(0xb)
+ SIGSTOP = syscall.Signal(0x17)
+ SIGSYS = syscall.Signal(0xc)
+- SIGTERM = syscall.Signal(0xf)
+- SIGTRAP = syscall.Signal(0x5)
+ SIGTSTP = syscall.Signal(0x18)
+ SIGTTIN = syscall.Signal(0x1a)
+ SIGTTOU = syscall.Signal(0x1b)
+@@ -2036,174 +610,182 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "no such device or address",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource temporarily unavailable",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device or resource busy",
+- 17: "file exists",
+- 18: "invalid cross-device link",
+- 19: "no such device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "numerical result out of range",
+- 35: "no message of desired type",
+- 36: "identifier removed",
+- 37: "channel number out of range",
+- 38: "level 2 not synchronized",
+- 39: "level 3 halted",
+- 40: "level 3 reset",
+- 41: "link number out of range",
+- 42: "protocol driver not attached",
+- 43: "no CSI structure available",
+- 44: "level 2 halted",
+- 45: "resource deadlock avoided",
+- 46: "no locks available",
+- 50: "invalid exchange",
+- 51: "invalid request descriptor",
+- 52: "exchange full",
+- 53: "no anode",
+- 54: "invalid request code",
+- 55: "invalid slot",
+- 56: "file locking deadlock error",
+- 59: "bad font file format",
+- 60: "device not a stream",
+- 61: "no data available",
+- 62: "timer expired",
+- 63: "out of streams resources",
+- 64: "machine is not on the network",
+- 65: "package not installed",
+- 66: "object is remote",
+- 67: "link has been severed",
+- 68: "advertise error",
+- 69: "srmount error",
+- 70: "communication error on send",
+- 71: "protocol error",
+- 73: "RFS specific error",
+- 74: "multihop attempted",
+- 77: "bad message",
+- 78: "file name too long",
+- 79: "value too large for defined data type",
+- 80: "name not unique on network",
+- 81: "file descriptor in bad state",
+- 82: "remote address changed",
+- 83: "can not access a needed shared library",
+- 84: "accessing a corrupted shared library",
+- 85: ".lib section in a.out corrupted",
+- 86: "attempting to link in too many shared libraries",
+- 87: "cannot exec a shared library directly",
+- 88: "invalid or incomplete multibyte or wide character",
+- 89: "function not implemented",
+- 90: "too many levels of symbolic links",
+- 91: "interrupted system call should be restarted",
+- 92: "streams pipe error",
+- 93: "directory not empty",
+- 94: "too many users",
+- 95: "socket operation on non-socket",
+- 96: "destination address required",
+- 97: "message too long",
+- 98: "protocol wrong type for socket",
+- 99: "protocol not available",
+- 120: "protocol not supported",
+- 121: "socket type not supported",
+- 122: "operation not supported",
+- 123: "protocol family not supported",
+- 124: "address family not supported by protocol",
+- 125: "address already in use",
+- 126: "cannot assign requested address",
+- 127: "network is down",
+- 128: "network is unreachable",
+- 129: "network dropped connection on reset",
+- 130: "software caused connection abort",
+- 131: "connection reset by peer",
+- 132: "no buffer space available",
+- 133: "transport endpoint is already connected",
+- 134: "transport endpoint is not connected",
+- 135: "structure needs cleaning",
+- 137: "not a XENIX named type file",
+- 138: "no XENIX semaphores available",
+- 139: "is a named type file",
+- 140: "remote I/O error",
+- 141: "unknown error 141",
+- 142: "unknown error 142",
+- 143: "cannot send after transport endpoint shutdown",
+- 144: "too many references: cannot splice",
+- 145: "connection timed out",
+- 146: "connection refused",
+- 147: "host is down",
+- 148: "no route to host",
+- 149: "operation already in progress",
+- 150: "operation now in progress",
+- 151: "stale file handle",
+- 158: "operation canceled",
+- 159: "no medium found",
+- 160: "wrong medium type",
+- 161: "required key not available",
+- 162: "key has expired",
+- 163: "key has been revoked",
+- 164: "key was rejected by service",
+- 165: "owner died",
+- 166: "state not recoverable",
+- 167: "operation not possible due to RF-kill",
+- 168: "memory page has hardware error",
+- 1133: "disk quota exceeded",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "no such device or address"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EAGAIN", "resource temporarily unavailable"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device or resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "invalid cross-device link"},
++ {19, "ENODEV", "no such device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "numerical result out of range"},
++ {35, "ENOMSG", "no message of desired type"},
++ {36, "EIDRM", "identifier removed"},
++ {37, "ECHRNG", "channel number out of range"},
++ {38, "EL2NSYNC", "level 2 not synchronized"},
++ {39, "EL3HLT", "level 3 halted"},
++ {40, "EL3RST", "level 3 reset"},
++ {41, "ELNRNG", "link number out of range"},
++ {42, "EUNATCH", "protocol driver not attached"},
++ {43, "ENOCSI", "no CSI structure available"},
++ {44, "EL2HLT", "level 2 halted"},
++ {45, "EDEADLK", "resource deadlock avoided"},
++ {46, "ENOLCK", "no locks available"},
++ {50, "EBADE", "invalid exchange"},
++ {51, "EBADR", "invalid request descriptor"},
++ {52, "EXFULL", "exchange full"},
++ {53, "ENOANO", "no anode"},
++ {54, "EBADRQC", "invalid request code"},
++ {55, "EBADSLT", "invalid slot"},
++ {56, "EDEADLOCK", "file locking deadlock error"},
++ {59, "EBFONT", "bad font file format"},
++ {60, "ENOSTR", "device not a stream"},
++ {61, "ENODATA", "no data available"},
++ {62, "ETIME", "timer expired"},
++ {63, "ENOSR", "out of streams resources"},
++ {64, "ENONET", "machine is not on the network"},
++ {65, "ENOPKG", "package not installed"},
++ {66, "EREMOTE", "object is remote"},
++ {67, "ENOLINK", "link has been severed"},
++ {68, "EADV", "advertise error"},
++ {69, "ESRMNT", "srmount error"},
++ {70, "ECOMM", "communication error on send"},
++ {71, "EPROTO", "protocol error"},
++ {73, "EDOTDOT", "RFS specific error"},
++ {74, "EMULTIHOP", "multihop attempted"},
++ {77, "EBADMSG", "bad message"},
++ {78, "ENAMETOOLONG", "file name too long"},
++ {79, "EOVERFLOW", "value too large for defined data type"},
++ {80, "ENOTUNIQ", "name not unique on network"},
++ {81, "EBADFD", "file descriptor in bad state"},
++ {82, "EREMCHG", "remote address changed"},
++ {83, "ELIBACC", "can not access a needed shared library"},
++ {84, "ELIBBAD", "accessing a corrupted shared library"},
++ {85, "ELIBSCN", ".lib section in a.out corrupted"},
++ {86, "ELIBMAX", "attempting to link in too many shared libraries"},
++ {87, "ELIBEXEC", "cannot exec a shared library directly"},
++ {88, "EILSEQ", "invalid or incomplete multibyte or wide character"},
++ {89, "ENOSYS", "function not implemented"},
++ {90, "ELOOP", "too many levels of symbolic links"},
++ {91, "ERESTART", "interrupted system call should be restarted"},
++ {92, "ESTRPIPE", "streams pipe error"},
++ {93, "ENOTEMPTY", "directory not empty"},
++ {94, "EUSERS", "too many users"},
++ {95, "ENOTSOCK", "socket operation on non-socket"},
++ {96, "EDESTADDRREQ", "destination address required"},
++ {97, "EMSGSIZE", "message too long"},
++ {98, "EPROTOTYPE", "protocol wrong type for socket"},
++ {99, "ENOPROTOOPT", "protocol not available"},
++ {120, "EPROTONOSUPPORT", "protocol not supported"},
++ {121, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {122, "ENOTSUP", "operation not supported"},
++ {123, "EPFNOSUPPORT", "protocol family not supported"},
++ {124, "EAFNOSUPPORT", "address family not supported by protocol"},
++ {125, "EADDRINUSE", "address already in use"},
++ {126, "EADDRNOTAVAIL", "cannot assign requested address"},
++ {127, "ENETDOWN", "network is down"},
++ {128, "ENETUNREACH", "network is unreachable"},
++ {129, "ENETRESET", "network dropped connection on reset"},
++ {130, "ECONNABORTED", "software caused connection abort"},
++ {131, "ECONNRESET", "connection reset by peer"},
++ {132, "ENOBUFS", "no buffer space available"},
++ {133, "EISCONN", "transport endpoint is already connected"},
++ {134, "ENOTCONN", "transport endpoint is not connected"},
++ {135, "EUCLEAN", "structure needs cleaning"},
++ {137, "ENOTNAM", "not a XENIX named type file"},
++ {138, "ENAVAIL", "no XENIX semaphores available"},
++ {139, "EISNAM", "is a named type file"},
++ {140, "EREMOTEIO", "remote I/O error"},
++ {141, "EINIT", "unknown error 141"},
++ {142, "EREMDEV", "unknown error 142"},
++ {143, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
++ {144, "ETOOMANYREFS", "too many references: cannot splice"},
++ {145, "ETIMEDOUT", "connection timed out"},
++ {146, "ECONNREFUSED", "connection refused"},
++ {147, "EHOSTDOWN", "host is down"},
++ {148, "EHOSTUNREACH", "no route to host"},
++ {149, "EALREADY", "operation already in progress"},
++ {150, "EINPROGRESS", "operation now in progress"},
++ {151, "ESTALE", "stale file handle"},
++ {158, "ECANCELED", "operation canceled"},
++ {159, "ENOMEDIUM", "no medium found"},
++ {160, "EMEDIUMTYPE", "wrong medium type"},
++ {161, "ENOKEY", "required key not available"},
++ {162, "EKEYEXPIRED", "key has expired"},
++ {163, "EKEYREVOKED", "key has been revoked"},
++ {164, "EKEYREJECTED", "key was rejected by service"},
++ {165, "EOWNERDEAD", "owner died"},
++ {166, "ENOTRECOVERABLE", "state not recoverable"},
++ {167, "ERFKILL", "operation not possible due to RF-kill"},
++ {168, "EHWPOISON", "memory page has hardware error"},
++ {1133, "EDQUOT", "disk quota exceeded"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/breakpoint trap",
+- 6: "aborted",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "user defined signal 1",
+- 17: "user defined signal 2",
+- 18: "child exited",
+- 19: "power failure",
+- 20: "window changed",
+- 21: "urgent I/O condition",
+- 22: "I/O possible",
+- 23: "stopped (signal)",
+- 24: "stopped",
+- 25: "continued",
+- 26: "stopped (tty input)",
+- 27: "stopped (tty output)",
+- 28: "virtual timer expired",
+- 29: "profiling timer expired",
+- 30: "CPU time limit exceeded",
+- 31: "file size limit exceeded",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/breakpoint trap"},
++ {6, "SIGABRT", "aborted"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGUSR1", "user defined signal 1"},
++ {17, "SIGUSR2", "user defined signal 2"},
++ {18, "SIGCHLD", "child exited"},
++ {19, "SIGPWR", "power failure"},
++ {20, "SIGWINCH", "window changed"},
++ {21, "SIGURG", "urgent I/O condition"},
++ {22, "SIGIO", "I/O possible"},
++ {23, "SIGSTOP", "stopped (signal)"},
++ {24, "SIGTSTP", "stopped"},
++ {25, "SIGCONT", "continued"},
++ {26, "SIGTTIN", "stopped (tty input)"},
++ {27, "SIGTTOU", "stopped (tty output)"},
++ {28, "SIGVTALRM", "virtual timer expired"},
++ {29, "SIGPROF", "profiling timer expired"},
++ {30, "SIGXCPU", "CPU time limit exceeded"},
++ {31, "SIGXFSZ", "file size limit exceeded"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go
+index 4148f277..2346dc55 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go
+@@ -3,7 +3,7 @@
+
+ // +build mips64,linux
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
+
+ package unix
+@@ -11,1873 +11,489 @@ package unix
+ import "syscall"
+
+ const (
+- AF_ALG = 0x26
+- AF_APPLETALK = 0x5
+- AF_ASH = 0x12
+- AF_ATMPVC = 0x8
+- AF_ATMSVC = 0x14
+- AF_AX25 = 0x3
+- AF_BLUETOOTH = 0x1f
+- AF_BRIDGE = 0x7
+- AF_CAIF = 0x25
+- AF_CAN = 0x1d
+- AF_DECnet = 0xc
+- AF_ECONET = 0x13
+- AF_FILE = 0x1
+- AF_IB = 0x1b
+- AF_IEEE802154 = 0x24
+- AF_INET = 0x2
+- AF_INET6 = 0xa
+- AF_IPX = 0x4
+- AF_IRDA = 0x17
+- AF_ISDN = 0x22
+- AF_IUCV = 0x20
+- AF_KCM = 0x29
+- AF_KEY = 0xf
+- AF_LLC = 0x1a
+- AF_LOCAL = 0x1
+- AF_MAX = 0x2b
+- AF_MPLS = 0x1c
+- AF_NETBEUI = 0xd
+- AF_NETLINK = 0x10
+- AF_NETROM = 0x6
+- AF_NFC = 0x27
+- AF_PACKET = 0x11
+- AF_PHONET = 0x23
+- AF_PPPOX = 0x18
+- AF_QIPCRTR = 0x2a
+- AF_RDS = 0x15
+- AF_ROSE = 0xb
+- AF_ROUTE = 0x10
+- AF_RXRPC = 0x21
+- AF_SECURITY = 0xe
+- AF_SNA = 0x16
+- AF_TIPC = 0x1e
+- AF_UNIX = 0x1
+- AF_UNSPEC = 0x0
+- AF_VSOCK = 0x28
+- AF_WANPIPE = 0x19
+- AF_X25 = 0x9
+- ALG_OP_DECRYPT = 0x0
+- ALG_OP_ENCRYPT = 0x1
+- ALG_SET_AEAD_ASSOCLEN = 0x4
+- ALG_SET_AEAD_AUTHSIZE = 0x5
+- ALG_SET_IV = 0x2
+- ALG_SET_KEY = 0x1
+- ALG_SET_OP = 0x3
+- ARPHRD_6LOWPAN = 0x339
+- ARPHRD_ADAPT = 0x108
+- ARPHRD_APPLETLK = 0x8
+- ARPHRD_ARCNET = 0x7
+- ARPHRD_ASH = 0x30d
+- ARPHRD_ATM = 0x13
+- ARPHRD_AX25 = 0x3
+- ARPHRD_BIF = 0x307
+- ARPHRD_CAIF = 0x336
+- ARPHRD_CAN = 0x118
+- ARPHRD_CHAOS = 0x5
+- ARPHRD_CISCO = 0x201
+- ARPHRD_CSLIP = 0x101
+- ARPHRD_CSLIP6 = 0x103
+- ARPHRD_DDCMP = 0x205
+- ARPHRD_DLCI = 0xf
+- ARPHRD_ECONET = 0x30e
+- ARPHRD_EETHER = 0x2
+- ARPHRD_ETHER = 0x1
+- ARPHRD_EUI64 = 0x1b
+- ARPHRD_FCAL = 0x311
+- ARPHRD_FCFABRIC = 0x313
+- ARPHRD_FCPL = 0x312
+- ARPHRD_FCPP = 0x310
+- ARPHRD_FDDI = 0x306
+- ARPHRD_FRAD = 0x302
+- ARPHRD_HDLC = 0x201
+- ARPHRD_HIPPI = 0x30c
+- ARPHRD_HWX25 = 0x110
+- ARPHRD_IEEE1394 = 0x18
+- ARPHRD_IEEE802 = 0x6
+- ARPHRD_IEEE80211 = 0x321
+- ARPHRD_IEEE80211_PRISM = 0x322
+- ARPHRD_IEEE80211_RADIOTAP = 0x323
+- ARPHRD_IEEE802154 = 0x324
+- ARPHRD_IEEE802154_MONITOR = 0x325
+- ARPHRD_IEEE802_TR = 0x320
+- ARPHRD_INFINIBAND = 0x20
+- ARPHRD_IP6GRE = 0x337
+- ARPHRD_IPDDP = 0x309
+- ARPHRD_IPGRE = 0x30a
+- ARPHRD_IRDA = 0x30f
+- ARPHRD_LAPB = 0x204
+- ARPHRD_LOCALTLK = 0x305
+- ARPHRD_LOOPBACK = 0x304
+- ARPHRD_METRICOM = 0x17
+- ARPHRD_NETLINK = 0x338
+- ARPHRD_NETROM = 0x0
+- ARPHRD_NONE = 0xfffe
+- ARPHRD_PHONET = 0x334
+- ARPHRD_PHONET_PIPE = 0x335
+- ARPHRD_PIMREG = 0x30b
+- ARPHRD_PPP = 0x200
+- ARPHRD_PRONET = 0x4
+- ARPHRD_RAWHDLC = 0x206
+- ARPHRD_ROSE = 0x10e
+- ARPHRD_RSRVD = 0x104
+- ARPHRD_SIT = 0x308
+- ARPHRD_SKIP = 0x303
+- ARPHRD_SLIP = 0x100
+- ARPHRD_SLIP6 = 0x102
+- ARPHRD_TUNNEL = 0x300
+- ARPHRD_TUNNEL6 = 0x301
+- ARPHRD_VOID = 0xffff
+- ARPHRD_X25 = 0x10f
+- B0 = 0x0
+- B1000000 = 0x1008
+- B110 = 0x3
+- B115200 = 0x1002
+- B1152000 = 0x1009
+- B1200 = 0x9
+- B134 = 0x4
+- B150 = 0x5
+- B1500000 = 0x100a
+- B1800 = 0xa
+- B19200 = 0xe
+- B200 = 0x6
+- B2000000 = 0x100b
+- B230400 = 0x1003
+- B2400 = 0xb
+- B2500000 = 0x100c
+- B300 = 0x7
+- B3000000 = 0x100d
+- B3500000 = 0x100e
+- B38400 = 0xf
+- B4000000 = 0x100f
+- B460800 = 0x1004
+- B4800 = 0xc
+- B50 = 0x1
+- B500000 = 0x1005
+- B57600 = 0x1001
+- B576000 = 0x1006
+- B600 = 0x8
+- B75 = 0x2
+- B921600 = 0x1007
+- B9600 = 0xd
+- BLKBSZGET = 0x40081270
+- BLKBSZSET = 0x80081271
+- BLKFLSBUF = 0x20001261
+- BLKFRAGET = 0x20001265
+- BLKFRASET = 0x20001264
+- BLKGETSIZE = 0x20001260
+- BLKGETSIZE64 = 0x40081272
+- BLKPBSZGET = 0x2000127b
+- BLKRAGET = 0x20001263
+- BLKRASET = 0x20001262
+- BLKROGET = 0x2000125e
+- BLKROSET = 0x2000125d
+- BLKRRPART = 0x2000125f
+- BLKSECTGET = 0x20001267
+- BLKSECTSET = 0x20001266
+- BLKSSZGET = 0x20001268
+- BOTHER = 0x1000
+- BPF_A = 0x10
+- BPF_ABS = 0x20
+- BPF_ADD = 0x0
+- BPF_ALU = 0x4
+- BPF_AND = 0x50
+- BPF_B = 0x10
+- BPF_DIV = 0x30
+- BPF_H = 0x8
+- BPF_IMM = 0x0
+- BPF_IND = 0x40
+- BPF_JA = 0x0
+- BPF_JEQ = 0x10
+- BPF_JGE = 0x30
+- BPF_JGT = 0x20
+- BPF_JMP = 0x5
+- BPF_JSET = 0x40
+- BPF_K = 0x0
+- BPF_LD = 0x0
+- BPF_LDX = 0x1
+- BPF_LEN = 0x80
+- BPF_LL_OFF = -0x200000
+- BPF_LSH = 0x60
+- BPF_MAJOR_VERSION = 0x1
+- BPF_MAXINSNS = 0x1000
+- BPF_MEM = 0x60
+- BPF_MEMWORDS = 0x10
+- BPF_MINOR_VERSION = 0x1
+- BPF_MISC = 0x7
+- BPF_MOD = 0x90
+- BPF_MSH = 0xa0
+- BPF_MUL = 0x20
+- BPF_NEG = 0x80
+- BPF_NET_OFF = -0x100000
+- BPF_OR = 0x40
+- BPF_RET = 0x6
+- BPF_RSH = 0x70
+- BPF_ST = 0x2
+- BPF_STX = 0x3
+- BPF_SUB = 0x10
+- BPF_TAX = 0x0
+- BPF_TXA = 0x80
+- BPF_W = 0x0
+- BPF_X = 0x8
+- BPF_XOR = 0xa0
+- BRKINT = 0x2
+- BS0 = 0x0
+- BS1 = 0x2000
+- BSDLY = 0x2000
+- CAN_BCM = 0x2
+- CAN_EFF_FLAG = 0x80000000
+- CAN_EFF_ID_BITS = 0x1d
+- CAN_EFF_MASK = 0x1fffffff
+- CAN_ERR_FLAG = 0x20000000
+- CAN_ERR_MASK = 0x1fffffff
+- CAN_INV_FILTER = 0x20000000
+- CAN_ISOTP = 0x6
+- CAN_MAX_DLC = 0x8
+- CAN_MAX_DLEN = 0x8
+- CAN_MCNET = 0x5
+- CAN_MTU = 0x10
+- CAN_NPROTO = 0x7
+- CAN_RAW = 0x1
+- CAN_RAW_FILTER_MAX = 0x200
+- CAN_RTR_FLAG = 0x40000000
+- CAN_SFF_ID_BITS = 0xb
+- CAN_SFF_MASK = 0x7ff
+- CAN_TP16 = 0x3
+- CAN_TP20 = 0x4
+- CBAUD = 0x100f
+- CBAUDEX = 0x1000
+- CFLUSH = 0xf
+- CIBAUD = 0x100f0000
+- CLOCAL = 0x800
+- CLOCK_BOOTTIME = 0x7
+- CLOCK_BOOTTIME_ALARM = 0x9
+- CLOCK_DEFAULT = 0x0
+- CLOCK_EXT = 0x1
+- CLOCK_INT = 0x2
+- CLOCK_MONOTONIC = 0x1
+- CLOCK_MONOTONIC_COARSE = 0x6
+- CLOCK_MONOTONIC_RAW = 0x4
+- CLOCK_PROCESS_CPUTIME_ID = 0x2
+- CLOCK_REALTIME = 0x0
+- CLOCK_REALTIME_ALARM = 0x8
+- CLOCK_REALTIME_COARSE = 0x5
+- CLOCK_TAI = 0xb
+- CLOCK_THREAD_CPUTIME_ID = 0x3
+- CLOCK_TXFROMRX = 0x4
+- CLOCK_TXINT = 0x3
+- CLONE_CHILD_CLEARTID = 0x200000
+- CLONE_CHILD_SETTID = 0x1000000
+- CLONE_DETACHED = 0x400000
+- CLONE_FILES = 0x400
+- CLONE_FS = 0x200
+- CLONE_IO = 0x80000000
+- CLONE_NEWCGROUP = 0x2000000
+- CLONE_NEWIPC = 0x8000000
+- CLONE_NEWNET = 0x40000000
+- CLONE_NEWNS = 0x20000
+- CLONE_NEWPID = 0x20000000
+- CLONE_NEWUSER = 0x10000000
+- CLONE_NEWUTS = 0x4000000
+- CLONE_PARENT = 0x8000
+- CLONE_PARENT_SETTID = 0x100000
+- CLONE_PTRACE = 0x2000
+- CLONE_SETTLS = 0x80000
+- CLONE_SIGHAND = 0x800
+- CLONE_SYSVSEM = 0x40000
+- CLONE_THREAD = 0x10000
+- CLONE_UNTRACED = 0x800000
+- CLONE_VFORK = 0x4000
+- CLONE_VM = 0x100
+- CMSPAR = 0x40000000
+- CR0 = 0x0
+- CR1 = 0x200
+- CR2 = 0x400
+- CR3 = 0x600
+- CRDLY = 0x600
+- CREAD = 0x80
+- CRTSCTS = 0x80000000
+- CS5 = 0x0
+- CS6 = 0x10
+- CS7 = 0x20
+- CS8 = 0x30
+- CSIGNAL = 0xff
+- CSIZE = 0x30
+- CSTART = 0x11
+- CSTATUS = 0x0
+- CSTOP = 0x13
+- CSTOPB = 0x40
+- CSUSP = 0x1a
+- DT_BLK = 0x6
+- DT_CHR = 0x2
+- DT_DIR = 0x4
+- DT_FIFO = 0x1
+- DT_LNK = 0xa
+- DT_REG = 0x8
+- DT_SOCK = 0xc
+- DT_UNKNOWN = 0x0
+- DT_WHT = 0xe
+- ECHO = 0x8
+- ECHOCTL = 0x200
+- ECHOE = 0x10
+- ECHOK = 0x20
+- ECHOKE = 0x800
+- ECHONL = 0x40
+- ECHOPRT = 0x400
+- EFD_CLOEXEC = 0x80000
+- EFD_NONBLOCK = 0x80
+- EFD_SEMAPHORE = 0x1
+- ENCODING_DEFAULT = 0x0
+- ENCODING_FM_MARK = 0x3
+- ENCODING_FM_SPACE = 0x4
+- ENCODING_MANCHESTER = 0x5
+- ENCODING_NRZ = 0x1
+- ENCODING_NRZI = 0x2
+- EPOLLERR = 0x8
+- EPOLLET = 0x80000000
+- EPOLLEXCLUSIVE = 0x10000000
+- EPOLLHUP = 0x10
+- EPOLLIN = 0x1
+- EPOLLMSG = 0x400
+- EPOLLONESHOT = 0x40000000
+- EPOLLOUT = 0x4
+- EPOLLPRI = 0x2
+- EPOLLRDBAND = 0x80
+- EPOLLRDHUP = 0x2000
+- EPOLLRDNORM = 0x40
+- EPOLLWAKEUP = 0x20000000
+- EPOLLWRBAND = 0x200
+- EPOLLWRNORM = 0x100
+- EPOLL_CLOEXEC = 0x80000
+- EPOLL_CTL_ADD = 0x1
+- EPOLL_CTL_DEL = 0x2
+- EPOLL_CTL_MOD = 0x3
+- ETH_P_1588 = 0x88f7
+- ETH_P_8021AD = 0x88a8
+- ETH_P_8021AH = 0x88e7
+- ETH_P_8021Q = 0x8100
+- ETH_P_80221 = 0x8917
+- ETH_P_802_2 = 0x4
+- ETH_P_802_3 = 0x1
+- ETH_P_802_3_MIN = 0x600
+- ETH_P_802_EX1 = 0x88b5
+- ETH_P_AARP = 0x80f3
+- ETH_P_AF_IUCV = 0xfbfb
+- ETH_P_ALL = 0x3
+- ETH_P_AOE = 0x88a2
+- ETH_P_ARCNET = 0x1a
+- ETH_P_ARP = 0x806
+- ETH_P_ATALK = 0x809b
+- ETH_P_ATMFATE = 0x8884
+- ETH_P_ATMMPOA = 0x884c
+- ETH_P_AX25 = 0x2
+- ETH_P_BATMAN = 0x4305
+- ETH_P_BPQ = 0x8ff
+- ETH_P_CAIF = 0xf7
+- ETH_P_CAN = 0xc
+- ETH_P_CANFD = 0xd
+- ETH_P_CONTROL = 0x16
+- ETH_P_CUST = 0x6006
+- ETH_P_DDCMP = 0x6
+- ETH_P_DEC = 0x6000
+- ETH_P_DIAG = 0x6005
+- ETH_P_DNA_DL = 0x6001
+- ETH_P_DNA_RC = 0x6002
+- ETH_P_DNA_RT = 0x6003
+- ETH_P_DSA = 0x1b
+- ETH_P_ECONET = 0x18
+- ETH_P_EDSA = 0xdada
+- ETH_P_FCOE = 0x8906
+- ETH_P_FIP = 0x8914
+- ETH_P_HDLC = 0x19
+- ETH_P_HSR = 0x892f
+- ETH_P_IEEE802154 = 0xf6
+- ETH_P_IEEEPUP = 0xa00
+- ETH_P_IEEEPUPAT = 0xa01
+- ETH_P_IP = 0x800
+- ETH_P_IPV6 = 0x86dd
+- ETH_P_IPX = 0x8137
+- ETH_P_IRDA = 0x17
+- ETH_P_LAT = 0x6004
+- ETH_P_LINK_CTL = 0x886c
+- ETH_P_LOCALTALK = 0x9
+- ETH_P_LOOP = 0x60
+- ETH_P_LOOPBACK = 0x9000
+- ETH_P_MACSEC = 0x88e5
+- ETH_P_MOBITEX = 0x15
+- ETH_P_MPLS_MC = 0x8848
+- ETH_P_MPLS_UC = 0x8847
+- ETH_P_MVRP = 0x88f5
+- ETH_P_NCSI = 0x88f8
+- ETH_P_PAE = 0x888e
+- ETH_P_PAUSE = 0x8808
+- ETH_P_PHONET = 0xf5
+- ETH_P_PPPTALK = 0x10
+- ETH_P_PPP_DISC = 0x8863
+- ETH_P_PPP_MP = 0x8
+- ETH_P_PPP_SES = 0x8864
+- ETH_P_PRP = 0x88fb
+- ETH_P_PUP = 0x200
+- ETH_P_PUPAT = 0x201
+- ETH_P_QINQ1 = 0x9100
+- ETH_P_QINQ2 = 0x9200
+- ETH_P_QINQ3 = 0x9300
+- ETH_P_RARP = 0x8035
+- ETH_P_SCA = 0x6007
+- ETH_P_SLOW = 0x8809
+- ETH_P_SNAP = 0x5
+- ETH_P_TDLS = 0x890d
+- ETH_P_TEB = 0x6558
+- ETH_P_TIPC = 0x88ca
+- ETH_P_TRAILER = 0x1c
+- ETH_P_TR_802_2 = 0x11
+- ETH_P_TSN = 0x22f0
+- ETH_P_WAN_PPP = 0x7
+- ETH_P_WCCP = 0x883e
+- ETH_P_X25 = 0x805
+- ETH_P_XDSA = 0xf8
+- EXTA = 0xe
+- EXTB = 0xf
+- EXTPROC = 0x10000
+- FALLOC_FL_COLLAPSE_RANGE = 0x8
+- FALLOC_FL_INSERT_RANGE = 0x20
+- FALLOC_FL_KEEP_SIZE = 0x1
+- FALLOC_FL_NO_HIDE_STALE = 0x4
+- FALLOC_FL_PUNCH_HOLE = 0x2
+- FALLOC_FL_UNSHARE_RANGE = 0x40
+- FALLOC_FL_ZERO_RANGE = 0x10
+- FD_CLOEXEC = 0x1
+- FD_SETSIZE = 0x400
+- FF0 = 0x0
+- FF1 = 0x8000
+- FFDLY = 0x8000
+- FLUSHO = 0x2000
+- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
+- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
+- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
+- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
+- FS_ENCRYPTION_MODE_INVALID = 0x0
+- FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
+- FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
+- FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
+- FS_KEY_DESCRIPTOR_SIZE = 0x8
+- FS_KEY_DESC_PREFIX = "fscrypt:"
+- FS_KEY_DESC_PREFIX_SIZE = 0x8
+- FS_MAX_KEY_SIZE = 0x40
+- FS_POLICY_FLAGS_PAD_16 = 0x2
+- FS_POLICY_FLAGS_PAD_32 = 0x3
+- FS_POLICY_FLAGS_PAD_4 = 0x0
+- FS_POLICY_FLAGS_PAD_8 = 0x1
+- FS_POLICY_FLAGS_PAD_MASK = 0x3
+- FS_POLICY_FLAGS_VALID = 0x3
+- F_DUPFD = 0x0
+- F_DUPFD_CLOEXEC = 0x406
+- F_EXLCK = 0x4
+- F_GETFD = 0x1
+- F_GETFL = 0x3
+- F_GETLEASE = 0x401
+- F_GETLK = 0xe
+- F_GETLK64 = 0xe
+- F_GETOWN = 0x17
+- F_GETOWN_EX = 0x10
+- F_GETPIPE_SZ = 0x408
+- F_GETSIG = 0xb
+- F_LOCK = 0x1
+- F_NOTIFY = 0x402
+- F_OFD_GETLK = 0x24
+- F_OFD_SETLK = 0x25
+- F_OFD_SETLKW = 0x26
+- F_OK = 0x0
+- F_RDLCK = 0x0
+- F_SETFD = 0x2
+- F_SETFL = 0x4
+- F_SETLEASE = 0x400
+- F_SETLK = 0x6
+- F_SETLK64 = 0x6
+- F_SETLKW = 0x7
+- F_SETLKW64 = 0x7
+- F_SETOWN = 0x18
+- F_SETOWN_EX = 0xf
+- F_SETPIPE_SZ = 0x407
+- F_SETSIG = 0xa
+- F_SHLCK = 0x8
+- F_TEST = 0x3
+- F_TLOCK = 0x2
+- F_ULOCK = 0x0
+- F_UNLCK = 0x2
+- F_WRLCK = 0x1
+- GENL_ADMIN_PERM = 0x1
+- GENL_CMD_CAP_DO = 0x2
+- GENL_CMD_CAP_DUMP = 0x4
+- GENL_CMD_CAP_HASPOL = 0x8
+- GENL_HDRLEN = 0x4
+- GENL_ID_CTRL = 0x10
+- GENL_ID_PMCRAID = 0x12
+- GENL_ID_VFS_DQUOT = 0x11
+- GENL_MAX_ID = 0x3ff
+- GENL_MIN_ID = 0x10
+- GENL_NAMSIZ = 0x10
+- GENL_START_ALLOC = 0x13
+- GENL_UNS_ADMIN_PERM = 0x10
+- GRND_NONBLOCK = 0x1
+- GRND_RANDOM = 0x2
+- HUPCL = 0x400
+- IBSHIFT = 0x10
+- ICANON = 0x2
+- ICMPV6_FILTER = 0x1
+- ICRNL = 0x100
+- IEXTEN = 0x100
+- IFA_F_DADFAILED = 0x8
+- IFA_F_DEPRECATED = 0x20
+- IFA_F_HOMEADDRESS = 0x10
+- IFA_F_MANAGETEMPADDR = 0x100
+- IFA_F_MCAUTOJOIN = 0x400
+- IFA_F_NODAD = 0x2
+- IFA_F_NOPREFIXROUTE = 0x200
+- IFA_F_OPTIMISTIC = 0x4
+- IFA_F_PERMANENT = 0x80
+- IFA_F_SECONDARY = 0x1
+- IFA_F_STABLE_PRIVACY = 0x800
+- IFA_F_TEMPORARY = 0x1
+- IFA_F_TENTATIVE = 0x40
+- IFA_MAX = 0x8
+- IFF_ALLMULTI = 0x200
+- IFF_ATTACH_QUEUE = 0x200
+- IFF_AUTOMEDIA = 0x4000
+- IFF_BROADCAST = 0x2
+- IFF_DEBUG = 0x4
+- IFF_DETACH_QUEUE = 0x400
+- IFF_DORMANT = 0x20000
+- IFF_DYNAMIC = 0x8000
+- IFF_ECHO = 0x40000
+- IFF_LOOPBACK = 0x8
+- IFF_LOWER_UP = 0x10000
+- IFF_MASTER = 0x400
+- IFF_MULTICAST = 0x1000
+- IFF_MULTI_QUEUE = 0x100
+- IFF_NOARP = 0x80
+- IFF_NOFILTER = 0x1000
+- IFF_NOTRAILERS = 0x20
+- IFF_NO_PI = 0x1000
+- IFF_ONE_QUEUE = 0x2000
+- IFF_PERSIST = 0x800
+- IFF_POINTOPOINT = 0x10
+- IFF_PORTSEL = 0x2000
+- IFF_PROMISC = 0x100
+- IFF_RUNNING = 0x40
+- IFF_SLAVE = 0x800
+- IFF_TAP = 0x2
+- IFF_TUN = 0x1
+- IFF_TUN_EXCL = 0x8000
+- IFF_UP = 0x1
+- IFF_VNET_HDR = 0x4000
+- IFF_VOLATILE = 0x70c5a
+- IFNAMSIZ = 0x10
+- IGNBRK = 0x1
+- IGNCR = 0x80
+- IGNPAR = 0x4
+- IMAXBEL = 0x2000
+- INLCR = 0x40
+- INPCK = 0x10
+- IN_ACCESS = 0x1
+- IN_ALL_EVENTS = 0xfff
+- IN_ATTRIB = 0x4
+- IN_CLASSA_HOST = 0xffffff
+- IN_CLASSA_MAX = 0x80
+- IN_CLASSA_NET = 0xff000000
+- IN_CLASSA_NSHIFT = 0x18
+- IN_CLASSB_HOST = 0xffff
+- IN_CLASSB_MAX = 0x10000
+- IN_CLASSB_NET = 0xffff0000
+- IN_CLASSB_NSHIFT = 0x10
+- IN_CLASSC_HOST = 0xff
+- IN_CLASSC_NET = 0xffffff00
+- IN_CLASSC_NSHIFT = 0x8
+- IN_CLOEXEC = 0x80000
+- IN_CLOSE = 0x18
+- IN_CLOSE_NOWRITE = 0x10
+- IN_CLOSE_WRITE = 0x8
+- IN_CREATE = 0x100
+- IN_DELETE = 0x200
+- IN_DELETE_SELF = 0x400
+- IN_DONT_FOLLOW = 0x2000000
+- IN_EXCL_UNLINK = 0x4000000
+- IN_IGNORED = 0x8000
+- IN_ISDIR = 0x40000000
+- IN_LOOPBACKNET = 0x7f
+- IN_MASK_ADD = 0x20000000
+- IN_MODIFY = 0x2
+- IN_MOVE = 0xc0
+- IN_MOVED_FROM = 0x40
+- IN_MOVED_TO = 0x80
+- IN_MOVE_SELF = 0x800
+- IN_NONBLOCK = 0x80
+- IN_ONESHOT = 0x80000000
+- IN_ONLYDIR = 0x1000000
+- IN_OPEN = 0x20
+- IN_Q_OVERFLOW = 0x4000
+- IN_UNMOUNT = 0x2000
+- IPPROTO_AH = 0x33
+- IPPROTO_BEETPH = 0x5e
+- IPPROTO_COMP = 0x6c
+- IPPROTO_DCCP = 0x21
+- IPPROTO_DSTOPTS = 0x3c
+- IPPROTO_EGP = 0x8
+- IPPROTO_ENCAP = 0x62
+- IPPROTO_ESP = 0x32
+- IPPROTO_FRAGMENT = 0x2c
+- IPPROTO_GRE = 0x2f
+- IPPROTO_HOPOPTS = 0x0
+- IPPROTO_ICMP = 0x1
+- IPPROTO_ICMPV6 = 0x3a
+- IPPROTO_IDP = 0x16
+- IPPROTO_IGMP = 0x2
+- IPPROTO_IP = 0x0
+- IPPROTO_IPIP = 0x4
+- IPPROTO_IPV6 = 0x29
+- IPPROTO_MH = 0x87
+- IPPROTO_MPLS = 0x89
+- IPPROTO_MTP = 0x5c
+- IPPROTO_NONE = 0x3b
+- IPPROTO_PIM = 0x67
+- IPPROTO_PUP = 0xc
+- IPPROTO_RAW = 0xff
+- IPPROTO_ROUTING = 0x2b
+- IPPROTO_RSVP = 0x2e
+- IPPROTO_SCTP = 0x84
+- IPPROTO_TCP = 0x6
+- IPPROTO_TP = 0x1d
+- IPPROTO_UDP = 0x11
+- IPPROTO_UDPLITE = 0x88
+- IPV6_2292DSTOPTS = 0x4
+- IPV6_2292HOPLIMIT = 0x8
+- IPV6_2292HOPOPTS = 0x3
+- IPV6_2292PKTINFO = 0x2
+- IPV6_2292PKTOPTIONS = 0x6
+- IPV6_2292RTHDR = 0x5
+- IPV6_ADDRFORM = 0x1
+- IPV6_ADD_MEMBERSHIP = 0x14
+- IPV6_AUTHHDR = 0xa
+- IPV6_CHECKSUM = 0x7
+- IPV6_DONTFRAG = 0x3e
+- IPV6_DROP_MEMBERSHIP = 0x15
+- IPV6_DSTOPTS = 0x3b
+- IPV6_HDRINCL = 0x24
+- IPV6_HOPLIMIT = 0x34
+- IPV6_HOPOPTS = 0x36
+- IPV6_IPSEC_POLICY = 0x22
+- IPV6_JOIN_ANYCAST = 0x1b
+- IPV6_JOIN_GROUP = 0x14
+- IPV6_LEAVE_ANYCAST = 0x1c
+- IPV6_LEAVE_GROUP = 0x15
+- IPV6_MTU = 0x18
+- IPV6_MTU_DISCOVER = 0x17
+- IPV6_MULTICAST_HOPS = 0x12
+- IPV6_MULTICAST_IF = 0x11
+- IPV6_MULTICAST_LOOP = 0x13
+- IPV6_NEXTHOP = 0x9
+- IPV6_PATHMTU = 0x3d
+- IPV6_PKTINFO = 0x32
+- IPV6_PMTUDISC_DO = 0x2
+- IPV6_PMTUDISC_DONT = 0x0
+- IPV6_PMTUDISC_INTERFACE = 0x4
+- IPV6_PMTUDISC_OMIT = 0x5
+- IPV6_PMTUDISC_PROBE = 0x3
+- IPV6_PMTUDISC_WANT = 0x1
+- IPV6_RECVDSTOPTS = 0x3a
+- IPV6_RECVERR = 0x19
+- IPV6_RECVHOPLIMIT = 0x33
+- IPV6_RECVHOPOPTS = 0x35
+- IPV6_RECVPATHMTU = 0x3c
+- IPV6_RECVPKTINFO = 0x31
+- IPV6_RECVRTHDR = 0x38
+- IPV6_RECVTCLASS = 0x42
+- IPV6_ROUTER_ALERT = 0x16
+- IPV6_RTHDR = 0x39
+- IPV6_RTHDRDSTOPTS = 0x37
+- IPV6_RTHDR_LOOSE = 0x0
+- IPV6_RTHDR_STRICT = 0x1
+- IPV6_RTHDR_TYPE_0 = 0x0
+- IPV6_RXDSTOPTS = 0x3b
+- IPV6_RXHOPOPTS = 0x36
+- IPV6_TCLASS = 0x43
+- IPV6_UNICAST_HOPS = 0x10
+- IPV6_V6ONLY = 0x1a
+- IPV6_XFRM_POLICY = 0x23
+- IP_ADD_MEMBERSHIP = 0x23
+- IP_ADD_SOURCE_MEMBERSHIP = 0x27
+- IP_BIND_ADDRESS_NO_PORT = 0x18
+- IP_BLOCK_SOURCE = 0x26
+- IP_CHECKSUM = 0x17
+- IP_DEFAULT_MULTICAST_LOOP = 0x1
+- IP_DEFAULT_MULTICAST_TTL = 0x1
+- IP_DF = 0x4000
+- IP_DROP_MEMBERSHIP = 0x24
+- IP_DROP_SOURCE_MEMBERSHIP = 0x28
+- IP_FREEBIND = 0xf
+- IP_HDRINCL = 0x3
+- IP_IPSEC_POLICY = 0x10
+- IP_MAXPACKET = 0xffff
+- IP_MAX_MEMBERSHIPS = 0x14
+- IP_MF = 0x2000
+- IP_MINTTL = 0x15
+- IP_MSFILTER = 0x29
+- IP_MSS = 0x240
+- IP_MTU = 0xe
+- IP_MTU_DISCOVER = 0xa
+- IP_MULTICAST_ALL = 0x31
+- IP_MULTICAST_IF = 0x20
+- IP_MULTICAST_LOOP = 0x22
+- IP_MULTICAST_TTL = 0x21
+- IP_NODEFRAG = 0x16
+- IP_OFFMASK = 0x1fff
+- IP_OPTIONS = 0x4
+- IP_ORIGDSTADDR = 0x14
+- IP_PASSSEC = 0x12
+- IP_PKTINFO = 0x8
+- IP_PKTOPTIONS = 0x9
+- IP_PMTUDISC = 0xa
+- IP_PMTUDISC_DO = 0x2
+- IP_PMTUDISC_DONT = 0x0
+- IP_PMTUDISC_INTERFACE = 0x4
+- IP_PMTUDISC_OMIT = 0x5
+- IP_PMTUDISC_PROBE = 0x3
+- IP_PMTUDISC_WANT = 0x1
+- IP_RECVERR = 0xb
+- IP_RECVOPTS = 0x6
+- IP_RECVORIGDSTADDR = 0x14
+- IP_RECVRETOPTS = 0x7
+- IP_RECVTOS = 0xd
+- IP_RECVTTL = 0xc
+- IP_RETOPTS = 0x7
+- IP_RF = 0x8000
+- IP_ROUTER_ALERT = 0x5
+- IP_TOS = 0x1
+- IP_TRANSPARENT = 0x13
+- IP_TTL = 0x2
+- IP_UNBLOCK_SOURCE = 0x25
+- IP_UNICAST_IF = 0x32
+- IP_XFRM_POLICY = 0x11
+- ISIG = 0x1
+- ISTRIP = 0x20
+- IUCLC = 0x200
+- IUTF8 = 0x4000
+- IXANY = 0x800
+- IXOFF = 0x1000
+- IXON = 0x400
+- KEYCTL_ASSUME_AUTHORITY = 0x10
+- KEYCTL_CHOWN = 0x4
+- KEYCTL_CLEAR = 0x7
+- KEYCTL_DESCRIBE = 0x6
+- KEYCTL_DH_COMPUTE = 0x17
+- KEYCTL_GET_KEYRING_ID = 0x0
+- KEYCTL_GET_PERSISTENT = 0x16
+- KEYCTL_GET_SECURITY = 0x11
+- KEYCTL_INSTANTIATE = 0xc
+- KEYCTL_INSTANTIATE_IOV = 0x14
+- KEYCTL_INVALIDATE = 0x15
+- KEYCTL_JOIN_SESSION_KEYRING = 0x1
+- KEYCTL_LINK = 0x8
+- KEYCTL_NEGATE = 0xd
+- KEYCTL_READ = 0xb
+- KEYCTL_REJECT = 0x13
+- KEYCTL_REVOKE = 0x3
+- KEYCTL_SEARCH = 0xa
+- KEYCTL_SESSION_TO_PARENT = 0x12
+- KEYCTL_SETPERM = 0x5
+- KEYCTL_SET_REQKEY_KEYRING = 0xe
+- KEYCTL_SET_TIMEOUT = 0xf
+- KEYCTL_UNLINK = 0x9
+- KEYCTL_UPDATE = 0x2
+- KEY_REQKEY_DEFL_DEFAULT = 0x0
+- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
+- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
+- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
+- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
+- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
+- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
+- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
+- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
+- KEY_SPEC_GROUP_KEYRING = -0x6
+- KEY_SPEC_PROCESS_KEYRING = -0x2
+- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
+- KEY_SPEC_REQUESTOR_KEYRING = -0x8
+- KEY_SPEC_SESSION_KEYRING = -0x3
+- KEY_SPEC_THREAD_KEYRING = -0x1
+- KEY_SPEC_USER_KEYRING = -0x4
+- KEY_SPEC_USER_SESSION_KEYRING = -0x5
+- LINUX_REBOOT_CMD_CAD_OFF = 0x0
+- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
+- LINUX_REBOOT_CMD_HALT = 0xcdef0123
+- LINUX_REBOOT_CMD_KEXEC = 0x45584543
+- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
+- LINUX_REBOOT_CMD_RESTART = 0x1234567
+- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
+- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
+- LINUX_REBOOT_MAGIC1 = 0xfee1dead
+- LINUX_REBOOT_MAGIC2 = 0x28121969
+- LOCK_EX = 0x2
+- LOCK_NB = 0x4
+- LOCK_SH = 0x1
+- LOCK_UN = 0x8
+- MADV_DODUMP = 0x11
+- MADV_DOFORK = 0xb
+- MADV_DONTDUMP = 0x10
+- MADV_DONTFORK = 0xa
+- MADV_DONTNEED = 0x4
+- MADV_FREE = 0x8
+- MADV_HUGEPAGE = 0xe
+- MADV_HWPOISON = 0x64
+- MADV_MERGEABLE = 0xc
+- MADV_NOHUGEPAGE = 0xf
+- MADV_NORMAL = 0x0
+- MADV_RANDOM = 0x1
+- MADV_REMOVE = 0x9
+- MADV_SEQUENTIAL = 0x2
+- MADV_UNMERGEABLE = 0xd
+- MADV_WILLNEED = 0x3
+- MAP_ANON = 0x800
+- MAP_ANONYMOUS = 0x800
+- MAP_DENYWRITE = 0x2000
+- MAP_EXECUTABLE = 0x4000
+- MAP_FILE = 0x0
+- MAP_FIXED = 0x10
+- MAP_GROWSDOWN = 0x1000
+- MAP_HUGETLB = 0x80000
+- MAP_HUGE_MASK = 0x3f
+- MAP_HUGE_SHIFT = 0x1a
+- MAP_LOCKED = 0x8000
+- MAP_NONBLOCK = 0x20000
+- MAP_NORESERVE = 0x400
+- MAP_POPULATE = 0x10000
+- MAP_PRIVATE = 0x2
+- MAP_RENAME = 0x800
+- MAP_SHARED = 0x1
+- MAP_STACK = 0x40000
+- MAP_TYPE = 0xf
+- MCL_CURRENT = 0x1
+- MCL_FUTURE = 0x2
+- MCL_ONFAULT = 0x4
+- MNT_DETACH = 0x2
+- MNT_EXPIRE = 0x4
+- MNT_FORCE = 0x1
+- MSG_BATCH = 0x40000
+- MSG_CMSG_CLOEXEC = 0x40000000
+- MSG_CONFIRM = 0x800
+- MSG_CTRUNC = 0x8
+- MSG_DONTROUTE = 0x4
+- MSG_DONTWAIT = 0x40
+- MSG_EOR = 0x80
+- MSG_ERRQUEUE = 0x2000
+- MSG_FASTOPEN = 0x20000000
+- MSG_FIN = 0x200
+- MSG_MORE = 0x8000
+- MSG_NOSIGNAL = 0x4000
+- MSG_OOB = 0x1
+- MSG_PEEK = 0x2
+- MSG_PROXY = 0x10
+- MSG_RST = 0x1000
+- MSG_SYN = 0x400
+- MSG_TRUNC = 0x20
+- MSG_TRYHARD = 0x4
+- MSG_WAITALL = 0x100
+- MSG_WAITFORONE = 0x10000
+- MS_ACTIVE = 0x40000000
+- MS_ASYNC = 0x1
+- MS_BIND = 0x1000
+- MS_BORN = 0x20000000
+- MS_DIRSYNC = 0x80
+- MS_INVALIDATE = 0x2
+- MS_I_VERSION = 0x800000
+- MS_KERNMOUNT = 0x400000
+- MS_LAZYTIME = 0x2000000
+- MS_MANDLOCK = 0x40
+- MS_MGC_MSK = 0xffff0000
+- MS_MGC_VAL = 0xc0ed0000
+- MS_MOVE = 0x2000
+- MS_NOATIME = 0x400
+- MS_NODEV = 0x4
+- MS_NODIRATIME = 0x800
+- MS_NOEXEC = 0x8
+- MS_NOREMOTELOCK = 0x8000000
+- MS_NOSEC = 0x10000000
+- MS_NOSUID = 0x2
+- MS_NOUSER = -0x80000000
+- MS_POSIXACL = 0x10000
+- MS_PRIVATE = 0x40000
+- MS_RDONLY = 0x1
+- MS_REC = 0x4000
+- MS_RELATIME = 0x200000
+- MS_REMOUNT = 0x20
+- MS_RMT_MASK = 0x2800051
+- MS_SHARED = 0x100000
+- MS_SILENT = 0x8000
+- MS_SLAVE = 0x80000
+- MS_STRICTATIME = 0x1000000
+- MS_SYNC = 0x4
+- MS_SYNCHRONOUS = 0x10
+- MS_UNBINDABLE = 0x20000
+- MS_VERBOSE = 0x8000
+- NAME_MAX = 0xff
+- NETLINK_ADD_MEMBERSHIP = 0x1
+- NETLINK_AUDIT = 0x9
+- NETLINK_BROADCAST_ERROR = 0x4
+- NETLINK_CAP_ACK = 0xa
+- NETLINK_CONNECTOR = 0xb
+- NETLINK_CRYPTO = 0x15
+- NETLINK_DNRTMSG = 0xe
+- NETLINK_DROP_MEMBERSHIP = 0x2
+- NETLINK_ECRYPTFS = 0x13
+- NETLINK_FIB_LOOKUP = 0xa
+- NETLINK_FIREWALL = 0x3
+- NETLINK_GENERIC = 0x10
+- NETLINK_INET_DIAG = 0x4
+- NETLINK_IP6_FW = 0xd
+- NETLINK_ISCSI = 0x8
+- NETLINK_KOBJECT_UEVENT = 0xf
+- NETLINK_LISTEN_ALL_NSID = 0x8
+- NETLINK_LIST_MEMBERSHIPS = 0x9
+- NETLINK_NETFILTER = 0xc
+- NETLINK_NFLOG = 0x5
+- NETLINK_NO_ENOBUFS = 0x5
+- NETLINK_PKTINFO = 0x3
+- NETLINK_RDMA = 0x14
+- NETLINK_ROUTE = 0x0
+- NETLINK_RX_RING = 0x6
+- NETLINK_SCSITRANSPORT = 0x12
+- NETLINK_SELINUX = 0x7
+- NETLINK_SOCK_DIAG = 0x4
+- NETLINK_TX_RING = 0x7
+- NETLINK_UNUSED = 0x1
+- NETLINK_USERSOCK = 0x2
+- NETLINK_XFRM = 0x6
+- NL0 = 0x0
+- NL1 = 0x100
+- NLA_ALIGNTO = 0x4
+- NLA_F_NESTED = 0x8000
+- NLA_F_NET_BYTEORDER = 0x4000
+- NLA_HDRLEN = 0x4
+- NLDLY = 0x100
+- NLMSG_ALIGNTO = 0x4
+- NLMSG_DONE = 0x3
+- NLMSG_ERROR = 0x2
+- NLMSG_HDRLEN = 0x10
+- NLMSG_MIN_TYPE = 0x10
+- NLMSG_NOOP = 0x1
+- NLMSG_OVERRUN = 0x4
+- NLM_F_ACK = 0x4
+- NLM_F_APPEND = 0x800
+- NLM_F_ATOMIC = 0x400
+- NLM_F_CREATE = 0x400
+- NLM_F_DUMP = 0x300
+- NLM_F_DUMP_FILTERED = 0x20
+- NLM_F_DUMP_INTR = 0x10
+- NLM_F_ECHO = 0x8
+- NLM_F_EXCL = 0x200
+- NLM_F_MATCH = 0x200
+- NLM_F_MULTI = 0x2
+- NLM_F_REPLACE = 0x100
+- NLM_F_REQUEST = 0x1
+- NLM_F_ROOT = 0x100
+- NOFLSH = 0x80
+- OCRNL = 0x8
+- OFDEL = 0x80
+- OFILL = 0x40
+- OLCUC = 0x2
+- ONLCR = 0x4
+- ONLRET = 0x20
+- ONOCR = 0x10
+- OPOST = 0x1
+- O_ACCMODE = 0x3
+- O_APPEND = 0x8
+- O_ASYNC = 0x1000
+- O_CLOEXEC = 0x80000
+- O_CREAT = 0x100
+- O_DIRECT = 0x8000
+- O_DIRECTORY = 0x10000
+- O_DSYNC = 0x10
+- O_EXCL = 0x400
+- O_FSYNC = 0x4010
+- O_LARGEFILE = 0x0
+- O_NDELAY = 0x80
+- O_NOATIME = 0x40000
+- O_NOCTTY = 0x800
+- O_NOFOLLOW = 0x20000
+- O_NONBLOCK = 0x80
+- O_PATH = 0x200000
+- O_RDONLY = 0x0
+- O_RDWR = 0x2
+- O_RSYNC = 0x4010
+- O_SYNC = 0x4010
+- O_TMPFILE = 0x410000
+- O_TRUNC = 0x200
+- O_WRONLY = 0x1
+- PACKET_ADD_MEMBERSHIP = 0x1
+- PACKET_AUXDATA = 0x8
+- PACKET_BROADCAST = 0x1
+- PACKET_COPY_THRESH = 0x7
+- PACKET_DROP_MEMBERSHIP = 0x2
+- PACKET_FANOUT = 0x12
+- PACKET_FANOUT_CBPF = 0x6
+- PACKET_FANOUT_CPU = 0x2
+- PACKET_FANOUT_DATA = 0x16
+- PACKET_FANOUT_EBPF = 0x7
+- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
+- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
+- PACKET_FANOUT_HASH = 0x0
+- PACKET_FANOUT_LB = 0x1
+- PACKET_FANOUT_QM = 0x5
+- PACKET_FANOUT_RND = 0x4
+- PACKET_FANOUT_ROLLOVER = 0x3
+- PACKET_FASTROUTE = 0x6
+- PACKET_HDRLEN = 0xb
+- PACKET_HOST = 0x0
+- PACKET_KERNEL = 0x7
+- PACKET_LOOPBACK = 0x5
+- PACKET_LOSS = 0xe
+- PACKET_MR_ALLMULTI = 0x2
+- PACKET_MR_MULTICAST = 0x0
+- PACKET_MR_PROMISC = 0x1
+- PACKET_MR_UNICAST = 0x3
+- PACKET_MULTICAST = 0x2
+- PACKET_ORIGDEV = 0x9
+- PACKET_OTHERHOST = 0x3
+- PACKET_OUTGOING = 0x4
+- PACKET_QDISC_BYPASS = 0x14
+- PACKET_RECV_OUTPUT = 0x3
+- PACKET_RESERVE = 0xc
+- PACKET_ROLLOVER_STATS = 0x15
+- PACKET_RX_RING = 0x5
+- PACKET_STATISTICS = 0x6
+- PACKET_TIMESTAMP = 0x11
+- PACKET_TX_HAS_OFF = 0x13
+- PACKET_TX_RING = 0xd
+- PACKET_TX_TIMESTAMP = 0x10
+- PACKET_USER = 0x6
+- PACKET_VERSION = 0xa
+- PACKET_VNET_HDR = 0xf
+- PARENB = 0x100
+- PARITY_CRC16_PR0 = 0x2
+- PARITY_CRC16_PR0_CCITT = 0x4
+- PARITY_CRC16_PR1 = 0x3
+- PARITY_CRC16_PR1_CCITT = 0x5
+- PARITY_CRC32_PR0_CCITT = 0x6
+- PARITY_CRC32_PR1_CCITT = 0x7
+- PARITY_DEFAULT = 0x0
+- PARITY_NONE = 0x1
+- PARMRK = 0x8
+- PARODD = 0x200
+- PENDIN = 0x4000
+- PERF_EVENT_IOC_DISABLE = 0x20002401
+- PERF_EVENT_IOC_ENABLE = 0x20002400
+- PERF_EVENT_IOC_ID = 0x40082407
+- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
+- PERF_EVENT_IOC_PERIOD = 0x80082404
+- PERF_EVENT_IOC_REFRESH = 0x20002402
+- PERF_EVENT_IOC_RESET = 0x20002403
+- PERF_EVENT_IOC_SET_BPF = 0x80042408
+- PERF_EVENT_IOC_SET_FILTER = 0x80082406
+- PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
+- PRIO_PGRP = 0x1
+- PRIO_PROCESS = 0x0
+- PRIO_USER = 0x2
+- PROT_EXEC = 0x4
+- PROT_GROWSDOWN = 0x1000000
+- PROT_GROWSUP = 0x2000000
+- PROT_NONE = 0x0
+- PROT_READ = 0x1
+- PROT_WRITE = 0x2
+- PR_CAPBSET_DROP = 0x18
+- PR_CAPBSET_READ = 0x17
+- PR_CAP_AMBIENT = 0x2f
+- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
+- PR_CAP_AMBIENT_IS_SET = 0x1
+- PR_CAP_AMBIENT_LOWER = 0x3
+- PR_CAP_AMBIENT_RAISE = 0x2
+- PR_ENDIAN_BIG = 0x0
+- PR_ENDIAN_LITTLE = 0x1
+- PR_ENDIAN_PPC_LITTLE = 0x2
+- PR_FPEMU_NOPRINT = 0x1
+- PR_FPEMU_SIGFPE = 0x2
+- PR_FP_EXC_ASYNC = 0x2
+- PR_FP_EXC_DISABLED = 0x0
+- PR_FP_EXC_DIV = 0x10000
+- PR_FP_EXC_INV = 0x100000
+- PR_FP_EXC_NONRECOV = 0x1
+- PR_FP_EXC_OVF = 0x20000
+- PR_FP_EXC_PRECISE = 0x3
+- PR_FP_EXC_RES = 0x80000
+- PR_FP_EXC_SW_ENABLE = 0x80
+- PR_FP_EXC_UND = 0x40000
+- PR_FP_MODE_FR = 0x1
+- PR_FP_MODE_FRE = 0x2
+- PR_GET_CHILD_SUBREAPER = 0x25
+- PR_GET_DUMPABLE = 0x3
+- PR_GET_ENDIAN = 0x13
+- PR_GET_FPEMU = 0x9
+- PR_GET_FPEXC = 0xb
+- PR_GET_FP_MODE = 0x2e
+- PR_GET_KEEPCAPS = 0x7
+- PR_GET_NAME = 0x10
+- PR_GET_NO_NEW_PRIVS = 0x27
+- PR_GET_PDEATHSIG = 0x2
+- PR_GET_SECCOMP = 0x15
+- PR_GET_SECUREBITS = 0x1b
+- PR_GET_THP_DISABLE = 0x2a
+- PR_GET_TID_ADDRESS = 0x28
+- PR_GET_TIMERSLACK = 0x1e
+- PR_GET_TIMING = 0xd
+- PR_GET_TSC = 0x19
+- PR_GET_UNALIGN = 0x5
+- PR_MCE_KILL = 0x21
+- PR_MCE_KILL_CLEAR = 0x0
+- PR_MCE_KILL_DEFAULT = 0x2
+- PR_MCE_KILL_EARLY = 0x1
+- PR_MCE_KILL_GET = 0x22
+- PR_MCE_KILL_LATE = 0x0
+- PR_MCE_KILL_SET = 0x1
+- PR_MPX_DISABLE_MANAGEMENT = 0x2c
+- PR_MPX_ENABLE_MANAGEMENT = 0x2b
+- PR_SET_CHILD_SUBREAPER = 0x24
+- PR_SET_DUMPABLE = 0x4
+- PR_SET_ENDIAN = 0x14
+- PR_SET_FPEMU = 0xa
+- PR_SET_FPEXC = 0xc
+- PR_SET_FP_MODE = 0x2d
+- PR_SET_KEEPCAPS = 0x8
+- PR_SET_MM = 0x23
+- PR_SET_MM_ARG_END = 0x9
+- PR_SET_MM_ARG_START = 0x8
+- PR_SET_MM_AUXV = 0xc
+- PR_SET_MM_BRK = 0x7
+- PR_SET_MM_END_CODE = 0x2
+- PR_SET_MM_END_DATA = 0x4
+- PR_SET_MM_ENV_END = 0xb
+- PR_SET_MM_ENV_START = 0xa
+- PR_SET_MM_EXE_FILE = 0xd
+- PR_SET_MM_MAP = 0xe
+- PR_SET_MM_MAP_SIZE = 0xf
+- PR_SET_MM_START_BRK = 0x6
+- PR_SET_MM_START_CODE = 0x1
+- PR_SET_MM_START_DATA = 0x3
+- PR_SET_MM_START_STACK = 0x5
+- PR_SET_NAME = 0xf
+- PR_SET_NO_NEW_PRIVS = 0x26
+- PR_SET_PDEATHSIG = 0x1
+- PR_SET_PTRACER = 0x59616d61
+- PR_SET_PTRACER_ANY = -0x1
+- PR_SET_SECCOMP = 0x16
+- PR_SET_SECUREBITS = 0x1c
+- PR_SET_THP_DISABLE = 0x29
+- PR_SET_TIMERSLACK = 0x1d
+- PR_SET_TIMING = 0xe
+- PR_SET_TSC = 0x1a
+- PR_SET_UNALIGN = 0x6
+- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
+- PR_TASK_PERF_EVENTS_ENABLE = 0x20
+- PR_TIMING_STATISTICAL = 0x0
+- PR_TIMING_TIMESTAMP = 0x1
+- PR_TSC_ENABLE = 0x1
+- PR_TSC_SIGSEGV = 0x2
+- PR_UNALIGN_NOPRINT = 0x1
+- PR_UNALIGN_SIGBUS = 0x2
+- PTRACE_ATTACH = 0x10
+- PTRACE_CONT = 0x7
+- PTRACE_DETACH = 0x11
+- PTRACE_EVENT_CLONE = 0x3
+- PTRACE_EVENT_EXEC = 0x4
+- PTRACE_EVENT_EXIT = 0x6
+- PTRACE_EVENT_FORK = 0x1
+- PTRACE_EVENT_SECCOMP = 0x7
+- PTRACE_EVENT_STOP = 0x80
+- PTRACE_EVENT_VFORK = 0x2
+- PTRACE_EVENT_VFORK_DONE = 0x5
+- PTRACE_GETEVENTMSG = 0x4201
+- PTRACE_GETFPREGS = 0xe
+- PTRACE_GETREGS = 0xc
+- PTRACE_GETREGSET = 0x4204
+- PTRACE_GETSIGINFO = 0x4202
+- PTRACE_GETSIGMASK = 0x420a
+- PTRACE_GET_THREAD_AREA = 0x19
+- PTRACE_GET_THREAD_AREA_3264 = 0xc4
+- PTRACE_GET_WATCH_REGS = 0xd0
+- PTRACE_INTERRUPT = 0x4207
+- PTRACE_KILL = 0x8
+- PTRACE_LISTEN = 0x4208
+- PTRACE_OLDSETOPTIONS = 0x15
+- PTRACE_O_EXITKILL = 0x100000
+- PTRACE_O_MASK = 0x3000ff
+- PTRACE_O_SUSPEND_SECCOMP = 0x200000
+- PTRACE_O_TRACECLONE = 0x8
+- PTRACE_O_TRACEEXEC = 0x10
+- PTRACE_O_TRACEEXIT = 0x40
+- PTRACE_O_TRACEFORK = 0x2
+- PTRACE_O_TRACESECCOMP = 0x80
+- PTRACE_O_TRACESYSGOOD = 0x1
+- PTRACE_O_TRACEVFORK = 0x4
+- PTRACE_O_TRACEVFORKDONE = 0x20
+- PTRACE_PEEKDATA = 0x2
+- PTRACE_PEEKDATA_3264 = 0xc1
+- PTRACE_PEEKSIGINFO = 0x4209
+- PTRACE_PEEKSIGINFO_SHARED = 0x1
+- PTRACE_PEEKTEXT = 0x1
+- PTRACE_PEEKTEXT_3264 = 0xc0
+- PTRACE_PEEKUSR = 0x3
+- PTRACE_POKEDATA = 0x5
+- PTRACE_POKEDATA_3264 = 0xc3
+- PTRACE_POKETEXT = 0x4
+- PTRACE_POKETEXT_3264 = 0xc2
+- PTRACE_POKEUSR = 0x6
+- PTRACE_SECCOMP_GET_FILTER = 0x420c
+- PTRACE_SEIZE = 0x4206
+- PTRACE_SETFPREGS = 0xf
+- PTRACE_SETOPTIONS = 0x4200
+- PTRACE_SETREGS = 0xd
+- PTRACE_SETREGSET = 0x4205
+- PTRACE_SETSIGINFO = 0x4203
+- PTRACE_SETSIGMASK = 0x420b
+- PTRACE_SET_THREAD_AREA = 0x1a
+- PTRACE_SET_WATCH_REGS = 0xd1
+- PTRACE_SINGLESTEP = 0x9
+- PTRACE_SYSCALL = 0x18
+- PTRACE_TRACEME = 0x0
+- RLIMIT_AS = 0x6
+- RLIMIT_CORE = 0x4
+- RLIMIT_CPU = 0x0
+- RLIMIT_DATA = 0x2
+- RLIMIT_FSIZE = 0x1
+- RLIMIT_LOCKS = 0xa
+- RLIMIT_MEMLOCK = 0x9
+- RLIMIT_MSGQUEUE = 0xc
+- RLIMIT_NICE = 0xd
+- RLIMIT_NOFILE = 0x5
+- RLIMIT_NPROC = 0x8
+- RLIMIT_RSS = 0x7
+- RLIMIT_RTPRIO = 0xe
+- RLIMIT_RTTIME = 0xf
+- RLIMIT_SIGPENDING = 0xb
+- RLIMIT_STACK = 0x3
+- RLIM_INFINITY = -0x1
+- RTAX_ADVMSS = 0x8
+- RTAX_CC_ALGO = 0x10
+- RTAX_CWND = 0x7
+- RTAX_FEATURES = 0xc
+- RTAX_FEATURE_ALLFRAG = 0x8
+- RTAX_FEATURE_ECN = 0x1
+- RTAX_FEATURE_MASK = 0xf
+- RTAX_FEATURE_SACK = 0x2
+- RTAX_FEATURE_TIMESTAMP = 0x4
+- RTAX_HOPLIMIT = 0xa
+- RTAX_INITCWND = 0xb
+- RTAX_INITRWND = 0xe
+- RTAX_LOCK = 0x1
+- RTAX_MAX = 0x10
+- RTAX_MTU = 0x2
+- RTAX_QUICKACK = 0xf
+- RTAX_REORDERING = 0x9
+- RTAX_RTO_MIN = 0xd
+- RTAX_RTT = 0x4
+- RTAX_RTTVAR = 0x5
+- RTAX_SSTHRESH = 0x6
+- RTAX_UNSPEC = 0x0
+- RTAX_WINDOW = 0x3
+- RTA_ALIGNTO = 0x4
+- RTA_MAX = 0x19
+- RTCF_DIRECTSRC = 0x4000000
+- RTCF_DOREDIRECT = 0x1000000
+- RTCF_LOG = 0x2000000
+- RTCF_MASQ = 0x400000
+- RTCF_NAT = 0x800000
+- RTCF_VALVE = 0x200000
+- RTF_ADDRCLASSMASK = 0xf8000000
+- RTF_ADDRCONF = 0x40000
+- RTF_ALLONLINK = 0x20000
+- RTF_BROADCAST = 0x10000000
+- RTF_CACHE = 0x1000000
+- RTF_DEFAULT = 0x10000
+- RTF_DYNAMIC = 0x10
+- RTF_FLOW = 0x2000000
+- RTF_GATEWAY = 0x2
+- RTF_HOST = 0x4
+- RTF_INTERFACE = 0x40000000
+- RTF_IRTT = 0x100
+- RTF_LINKRT = 0x100000
+- RTF_LOCAL = 0x80000000
+- RTF_MODIFIED = 0x20
+- RTF_MSS = 0x40
+- RTF_MTU = 0x40
+- RTF_MULTICAST = 0x20000000
+- RTF_NAT = 0x8000000
+- RTF_NOFORWARD = 0x1000
+- RTF_NONEXTHOP = 0x200000
+- RTF_NOPMTUDISC = 0x4000
+- RTF_POLICY = 0x4000000
+- RTF_REINSTATE = 0x8
+- RTF_REJECT = 0x200
+- RTF_STATIC = 0x400
+- RTF_THROW = 0x2000
+- RTF_UP = 0x1
+- RTF_WINDOW = 0x80
+- RTF_XRESOLVE = 0x800
+- RTM_BASE = 0x10
+- RTM_DELACTION = 0x31
+- RTM_DELADDR = 0x15
+- RTM_DELADDRLABEL = 0x49
+- RTM_DELLINK = 0x11
+- RTM_DELMDB = 0x55
+- RTM_DELNEIGH = 0x1d
+- RTM_DELNSID = 0x59
+- RTM_DELQDISC = 0x25
+- RTM_DELROUTE = 0x19
+- RTM_DELRULE = 0x21
+- RTM_DELTCLASS = 0x29
+- RTM_DELTFILTER = 0x2d
+- RTM_F_CLONED = 0x200
+- RTM_F_EQUALIZE = 0x400
+- RTM_F_LOOKUP_TABLE = 0x1000
+- RTM_F_NOTIFY = 0x100
+- RTM_F_PREFIX = 0x800
+- RTM_GETACTION = 0x32
+- RTM_GETADDR = 0x16
+- RTM_GETADDRLABEL = 0x4a
+- RTM_GETANYCAST = 0x3e
+- RTM_GETDCB = 0x4e
+- RTM_GETLINK = 0x12
+- RTM_GETMDB = 0x56
+- RTM_GETMULTICAST = 0x3a
+- RTM_GETNEIGH = 0x1e
+- RTM_GETNEIGHTBL = 0x42
+- RTM_GETNETCONF = 0x52
+- RTM_GETNSID = 0x5a
+- RTM_GETQDISC = 0x26
+- RTM_GETROUTE = 0x1a
+- RTM_GETRULE = 0x22
+- RTM_GETSTATS = 0x5e
+- RTM_GETTCLASS = 0x2a
+- RTM_GETTFILTER = 0x2e
+- RTM_MAX = 0x5f
+- RTM_NEWACTION = 0x30
+- RTM_NEWADDR = 0x14
+- RTM_NEWADDRLABEL = 0x48
+- RTM_NEWLINK = 0x10
+- RTM_NEWMDB = 0x54
+- RTM_NEWNDUSEROPT = 0x44
+- RTM_NEWNEIGH = 0x1c
+- RTM_NEWNEIGHTBL = 0x40
+- RTM_NEWNETCONF = 0x50
+- RTM_NEWNSID = 0x58
+- RTM_NEWPREFIX = 0x34
+- RTM_NEWQDISC = 0x24
+- RTM_NEWROUTE = 0x18
+- RTM_NEWRULE = 0x20
+- RTM_NEWSTATS = 0x5c
+- RTM_NEWTCLASS = 0x28
+- RTM_NEWTFILTER = 0x2c
+- RTM_NR_FAMILIES = 0x14
+- RTM_NR_MSGTYPES = 0x50
+- RTM_SETDCB = 0x4f
+- RTM_SETLINK = 0x13
+- RTM_SETNEIGHTBL = 0x43
+- RTNH_ALIGNTO = 0x4
+- RTNH_COMPARE_MASK = 0x19
+- RTNH_F_DEAD = 0x1
+- RTNH_F_LINKDOWN = 0x10
+- RTNH_F_OFFLOAD = 0x8
+- RTNH_F_ONLINK = 0x4
+- RTNH_F_PERVASIVE = 0x2
+- RTN_MAX = 0xb
+- RTPROT_BABEL = 0x2a
+- RTPROT_BIRD = 0xc
+- RTPROT_BOOT = 0x3
+- RTPROT_DHCP = 0x10
+- RTPROT_DNROUTED = 0xd
+- RTPROT_GATED = 0x8
+- RTPROT_KERNEL = 0x2
+- RTPROT_MROUTED = 0x11
+- RTPROT_MRT = 0xa
+- RTPROT_NTK = 0xf
+- RTPROT_RA = 0x9
+- RTPROT_REDIRECT = 0x1
+- RTPROT_STATIC = 0x4
+- RTPROT_UNSPEC = 0x0
+- RTPROT_XORP = 0xe
+- RTPROT_ZEBRA = 0xb
+- RT_CLASS_DEFAULT = 0xfd
+- RT_CLASS_LOCAL = 0xff
+- RT_CLASS_MAIN = 0xfe
+- RT_CLASS_MAX = 0xff
+- RT_CLASS_UNSPEC = 0x0
+- RUSAGE_CHILDREN = -0x1
+- RUSAGE_SELF = 0x0
+- RUSAGE_THREAD = 0x1
+- SCM_CREDENTIALS = 0x2
+- SCM_RIGHTS = 0x1
+- SCM_TIMESTAMP = 0x1d
+- SCM_TIMESTAMPING = 0x25
+- SCM_TIMESTAMPING_OPT_STATS = 0x36
+- SCM_TIMESTAMPNS = 0x23
+- SCM_WIFI_STATUS = 0x29
+- SECCOMP_MODE_DISABLED = 0x0
+- SECCOMP_MODE_FILTER = 0x2
+- SECCOMP_MODE_STRICT = 0x1
+- SHUT_RD = 0x0
+- SHUT_RDWR = 0x2
+- SHUT_WR = 0x1
+- SIOCADDDLCI = 0x8980
+- SIOCADDMULTI = 0x8931
+- SIOCADDRT = 0x890b
+- SIOCATMARK = 0x40047307
+- SIOCBONDCHANGEACTIVE = 0x8995
+- SIOCBONDENSLAVE = 0x8990
+- SIOCBONDINFOQUERY = 0x8994
+- SIOCBONDRELEASE = 0x8991
+- SIOCBONDSETHWADDR = 0x8992
+- SIOCBONDSLAVEINFOQUERY = 0x8993
+- SIOCBRADDBR = 0x89a0
+- SIOCBRADDIF = 0x89a2
+- SIOCBRDELBR = 0x89a1
+- SIOCBRDELIF = 0x89a3
+- SIOCDARP = 0x8953
+- SIOCDELDLCI = 0x8981
+- SIOCDELMULTI = 0x8932
+- SIOCDELRT = 0x890c
+- SIOCDEVPRIVATE = 0x89f0
+- SIOCDIFADDR = 0x8936
+- SIOCDRARP = 0x8960
+- SIOCETHTOOL = 0x8946
+- SIOCGARP = 0x8954
+- SIOCGHWTSTAMP = 0x89b1
+- SIOCGIFADDR = 0x8915
+- SIOCGIFBR = 0x8940
+- SIOCGIFBRDADDR = 0x8919
+- SIOCGIFCONF = 0x8912
+- SIOCGIFCOUNT = 0x8938
+- SIOCGIFDSTADDR = 0x8917
+- SIOCGIFENCAP = 0x8925
+- SIOCGIFFLAGS = 0x8913
+- SIOCGIFHWADDR = 0x8927
+- SIOCGIFINDEX = 0x8933
+- SIOCGIFMAP = 0x8970
+- SIOCGIFMEM = 0x891f
+- SIOCGIFMETRIC = 0x891d
+- SIOCGIFMTU = 0x8921
+- SIOCGIFNAME = 0x8910
+- SIOCGIFNETMASK = 0x891b
+- SIOCGIFPFLAGS = 0x8935
+- SIOCGIFSLAVE = 0x8929
+- SIOCGIFTXQLEN = 0x8942
+- SIOCGIFVLAN = 0x8982
+- SIOCGMIIPHY = 0x8947
+- SIOCGMIIREG = 0x8948
+- SIOCGPGRP = 0x40047309
+- SIOCGRARP = 0x8961
+- SIOCGSKNS = 0x894c
+- SIOCGSTAMP = 0x8906
+- SIOCGSTAMPNS = 0x8907
+- SIOCINQ = 0x467f
+- SIOCOUTQ = 0x7472
+- SIOCOUTQNSD = 0x894b
+- SIOCPROTOPRIVATE = 0x89e0
+- SIOCRTMSG = 0x890d
+- SIOCSARP = 0x8955
+- SIOCSHWTSTAMP = 0x89b0
+- SIOCSIFADDR = 0x8916
+- SIOCSIFBR = 0x8941
+- SIOCSIFBRDADDR = 0x891a
+- SIOCSIFDSTADDR = 0x8918
+- SIOCSIFENCAP = 0x8926
+- SIOCSIFFLAGS = 0x8914
+- SIOCSIFHWADDR = 0x8924
+- SIOCSIFHWBROADCAST = 0x8937
+- SIOCSIFLINK = 0x8911
+- SIOCSIFMAP = 0x8971
+- SIOCSIFMEM = 0x8920
+- SIOCSIFMETRIC = 0x891e
+- SIOCSIFMTU = 0x8922
+- SIOCSIFNAME = 0x8923
+- SIOCSIFNETMASK = 0x891c
+- SIOCSIFPFLAGS = 0x8934
+- SIOCSIFSLAVE = 0x8930
+- SIOCSIFTXQLEN = 0x8943
+- SIOCSIFVLAN = 0x8983
+- SIOCSMIIREG = 0x8949
+- SIOCSPGRP = 0x80047308
+- SIOCSRARP = 0x8962
+- SIOCWANDEV = 0x894a
+- SOCK_CLOEXEC = 0x80000
+- SOCK_DCCP = 0x6
+- SOCK_DGRAM = 0x1
+- SOCK_IOC_TYPE = 0x89
+- SOCK_NONBLOCK = 0x80
+- SOCK_PACKET = 0xa
+- SOCK_RAW = 0x3
+- SOCK_RDM = 0x4
+- SOCK_SEQPACKET = 0x5
+- SOCK_STREAM = 0x2
+- SOL_AAL = 0x109
+- SOL_ALG = 0x117
+- SOL_ATM = 0x108
+- SOL_CAIF = 0x116
+- SOL_CAN_BASE = 0x64
+- SOL_DCCP = 0x10d
+- SOL_DECNET = 0x105
+- SOL_ICMPV6 = 0x3a
+- SOL_IP = 0x0
+- SOL_IPV6 = 0x29
+- SOL_IRDA = 0x10a
+- SOL_IUCV = 0x115
+- SOL_KCM = 0x119
+- SOL_LLC = 0x10c
+- SOL_NETBEUI = 0x10b
+- SOL_NETLINK = 0x10e
+- SOL_NFC = 0x118
+- SOL_PACKET = 0x107
+- SOL_PNPIPE = 0x113
+- SOL_PPPOL2TP = 0x111
+- SOL_RAW = 0xff
+- SOL_RDS = 0x114
+- SOL_RXRPC = 0x110
+- SOL_SOCKET = 0xffff
+- SOL_TCP = 0x6
+- SOL_TIPC = 0x10f
+- SOL_X25 = 0x106
+- SOMAXCONN = 0x80
+- SO_ACCEPTCONN = 0x1009
+- SO_ATTACH_BPF = 0x32
+- SO_ATTACH_FILTER = 0x1a
+- SO_ATTACH_REUSEPORT_CBPF = 0x33
+- SO_ATTACH_REUSEPORT_EBPF = 0x34
+- SO_BINDTODEVICE = 0x19
+- SO_BPF_EXTENSIONS = 0x30
+- SO_BROADCAST = 0x20
+- SO_BSDCOMPAT = 0xe
+- SO_BUSY_POLL = 0x2e
+- SO_CNX_ADVICE = 0x35
+- SO_DEBUG = 0x1
+- SO_DETACH_BPF = 0x1b
+- SO_DETACH_FILTER = 0x1b
+- SO_DOMAIN = 0x1029
+- SO_DONTROUTE = 0x10
+- SO_ERROR = 0x1007
+- SO_GET_FILTER = 0x1a
+- SO_INCOMING_CPU = 0x31
+- SO_KEEPALIVE = 0x8
+- SO_LINGER = 0x80
+- SO_LOCK_FILTER = 0x2c
+- SO_MARK = 0x24
+- SO_MAX_PACING_RATE = 0x2f
+- SO_NOFCS = 0x2b
+- SO_NO_CHECK = 0xb
+- SO_OOBINLINE = 0x100
+- SO_PASSCRED = 0x11
+- SO_PASSSEC = 0x22
+- SO_PEEK_OFF = 0x2a
+- SO_PEERCRED = 0x12
+- SO_PEERNAME = 0x1c
+- SO_PEERSEC = 0x1e
+- SO_PRIORITY = 0xc
+- SO_PROTOCOL = 0x1028
+- SO_RCVBUF = 0x1002
+- SO_RCVBUFFORCE = 0x21
+- SO_RCVLOWAT = 0x1004
+- SO_RCVTIMEO = 0x1006
+- SO_REUSEADDR = 0x4
+- SO_REUSEPORT = 0x200
+- SO_RXQ_OVFL = 0x28
+- SO_SECURITY_AUTHENTICATION = 0x16
+- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
+- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
+- SO_SELECT_ERR_QUEUE = 0x2d
+- SO_SNDBUF = 0x1001
+- SO_SNDBUFFORCE = 0x1f
+- SO_SNDLOWAT = 0x1003
+- SO_SNDTIMEO = 0x1005
+- SO_STYLE = 0x1008
+- SO_TIMESTAMP = 0x1d
+- SO_TIMESTAMPING = 0x25
+- SO_TIMESTAMPNS = 0x23
+- SO_TYPE = 0x1008
+- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
+- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
+- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
+- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
+- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
+- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
+- SO_VM_SOCKETS_TRUSTED = 0x5
+- SO_WIFI_STATUS = 0x29
+- SPLICE_F_GIFT = 0x8
+- SPLICE_F_MORE = 0x4
+- SPLICE_F_MOVE = 0x1
+- SPLICE_F_NONBLOCK = 0x2
+- S_BLKSIZE = 0x200
+- S_IEXEC = 0x40
+- S_IFBLK = 0x6000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFIFO = 0x1000
+- S_IFLNK = 0xa000
+- S_IFMT = 0xf000
+- S_IFREG = 0x8000
+- S_IFSOCK = 0xc000
+- S_IREAD = 0x100
+- S_IRGRP = 0x20
+- S_IROTH = 0x4
+- S_IRUSR = 0x100
+- S_IRWXG = 0x38
+- S_IRWXO = 0x7
+- S_IRWXU = 0x1c0
+- S_ISGID = 0x400
+- S_ISUID = 0x800
+- S_ISVTX = 0x200
+- S_IWGRP = 0x10
+- S_IWOTH = 0x2
+- S_IWRITE = 0x80
+- S_IWUSR = 0x80
+- S_IXGRP = 0x8
+- S_IXOTH = 0x1
+- S_IXUSR = 0x40
+- TAB0 = 0x0
+- TAB1 = 0x800
+- TAB2 = 0x1000
+- TAB3 = 0x1800
+- TABDLY = 0x1800
+- TASKSTATS_CMD_ATTR_MAX = 0x4
+- TASKSTATS_CMD_MAX = 0x2
+- TASKSTATS_GENL_NAME = "TASKSTATS"
+- TASKSTATS_GENL_VERSION = 0x1
+- TASKSTATS_TYPE_MAX = 0x6
+- TASKSTATS_VERSION = 0x8
+- TCFLSH = 0x5407
+- TCGETA = 0x5401
+- TCGETS = 0x540d
+- TCGETS2 = 0x4030542a
+- TCIFLUSH = 0x0
+- TCIOFF = 0x2
+- TCIOFLUSH = 0x2
+- TCION = 0x3
+- TCOFLUSH = 0x1
+- TCOOFF = 0x0
+- TCOON = 0x1
+- TCP_CC_INFO = 0x1a
+- TCP_CONGESTION = 0xd
+- TCP_COOKIE_IN_ALWAYS = 0x1
+- TCP_COOKIE_MAX = 0x10
+- TCP_COOKIE_MIN = 0x8
+- TCP_COOKIE_OUT_NEVER = 0x2
+- TCP_COOKIE_PAIR_SIZE = 0x20
+- TCP_COOKIE_TRANSACTIONS = 0xf
+- TCP_CORK = 0x3
+- TCP_DEFER_ACCEPT = 0x9
+- TCP_FASTOPEN = 0x17
+- TCP_INFO = 0xb
+- TCP_KEEPCNT = 0x6
+- TCP_KEEPIDLE = 0x4
+- TCP_KEEPINTVL = 0x5
+- TCP_LINGER2 = 0x8
+- TCP_MAXSEG = 0x2
+- TCP_MAXWIN = 0xffff
+- TCP_MAX_WINSHIFT = 0xe
+- TCP_MD5SIG = 0xe
+- TCP_MD5SIG_MAXKEYLEN = 0x50
+- TCP_MSS = 0x200
+- TCP_MSS_DEFAULT = 0x218
+- TCP_MSS_DESIRED = 0x4c4
+- TCP_NODELAY = 0x1
+- TCP_NOTSENT_LOWAT = 0x19
+- TCP_QUEUE_SEQ = 0x15
+- TCP_QUICKACK = 0xc
+- TCP_REPAIR = 0x13
+- TCP_REPAIR_OPTIONS = 0x16
+- TCP_REPAIR_QUEUE = 0x14
+- TCP_REPAIR_WINDOW = 0x1d
+- TCP_SAVED_SYN = 0x1c
+- TCP_SAVE_SYN = 0x1b
+- TCP_SYNCNT = 0x7
+- TCP_S_DATA_IN = 0x4
+- TCP_S_DATA_OUT = 0x8
+- TCP_THIN_DUPACK = 0x11
+- TCP_THIN_LINEAR_TIMEOUTS = 0x10
+- TCP_TIMESTAMP = 0x18
+- TCP_USER_TIMEOUT = 0x12
+- TCP_WINDOW_CLAMP = 0xa
+- TCSAFLUSH = 0x5410
+- TCSBRK = 0x5405
+- TCSBRKP = 0x5486
+- TCSETA = 0x5402
+- TCSETAF = 0x5404
+- TCSETAW = 0x5403
+- TCSETS = 0x540e
+- TCSETS2 = 0x8030542b
+- TCSETSF = 0x5410
+- TCSETSF2 = 0x8030542d
+- TCSETSW = 0x540f
+- TCSETSW2 = 0x8030542c
+- TCXONC = 0x5406
+- TIOCCBRK = 0x5428
+- TIOCCONS = 0x80047478
+- TIOCEXCL = 0x740d
+- TIOCGDEV = 0x40045432
+- TIOCGETD = 0x7400
+- TIOCGETP = 0x7408
+- TIOCGEXCL = 0x40045440
+- TIOCGICOUNT = 0x5492
+- TIOCGLCKTRMIOS = 0x548b
+- TIOCGLTC = 0x7474
+- TIOCGPGRP = 0x40047477
+- TIOCGPKT = 0x40045438
+- TIOCGPTLCK = 0x40045439
+- TIOCGPTN = 0x40045430
+- TIOCGRS485 = 0x4020542e
+- TIOCGSERIAL = 0x5484
+- TIOCGSID = 0x7416
+- TIOCGSOFTCAR = 0x5481
+- TIOCGWINSZ = 0x40087468
+- TIOCINQ = 0x467f
+- TIOCLINUX = 0x5483
+- TIOCMBIC = 0x741c
+- TIOCMBIS = 0x741b
+- TIOCMGET = 0x741d
+- TIOCMIWAIT = 0x5491
+- TIOCMSET = 0x741a
+- TIOCM_CAR = 0x100
+- TIOCM_CD = 0x100
+- TIOCM_CTS = 0x40
+- TIOCM_DSR = 0x400
+- TIOCM_DTR = 0x2
+- TIOCM_LE = 0x1
+- TIOCM_RI = 0x200
+- TIOCM_RNG = 0x200
+- TIOCM_RTS = 0x4
+- TIOCM_SR = 0x20
+- TIOCM_ST = 0x10
+- TIOCNOTTY = 0x5471
+- TIOCNXCL = 0x740e
+- TIOCOUTQ = 0x7472
+- TIOCPKT = 0x5470
+- TIOCPKT_DATA = 0x0
+- TIOCPKT_DOSTOP = 0x20
+- TIOCPKT_FLUSHREAD = 0x1
+- TIOCPKT_FLUSHWRITE = 0x2
+- TIOCPKT_IOCTL = 0x40
+- TIOCPKT_NOSTOP = 0x10
+- TIOCPKT_START = 0x8
+- TIOCPKT_STOP = 0x4
+- TIOCSBRK = 0x5427
+- TIOCSCTTY = 0x5480
+- TIOCSERCONFIG = 0x5488
+- TIOCSERGETLSR = 0x548e
+- TIOCSERGETMULTI = 0x548f
+- TIOCSERGSTRUCT = 0x548d
+- TIOCSERGWILD = 0x5489
+- TIOCSERSETMULTI = 0x5490
+- TIOCSERSWILD = 0x548a
+- TIOCSER_TEMT = 0x1
+- TIOCSETD = 0x7401
+- TIOCSETN = 0x740a
+- TIOCSETP = 0x7409
+- TIOCSIG = 0x80045436
+- TIOCSLCKTRMIOS = 0x548c
+- TIOCSLTC = 0x7475
+- TIOCSPGRP = 0x80047476
+- TIOCSPTLCK = 0x80045431
+- TIOCSRS485 = 0xc020542f
+- TIOCSSERIAL = 0x5485
+- TIOCSSOFTCAR = 0x5482
+- TIOCSTI = 0x5472
+- TIOCSWINSZ = 0x80087467
+- TIOCVHANGUP = 0x5437
+- TOSTOP = 0x8000
+- TS_COMM_LEN = 0x20
+- TUNATTACHFILTER = 0x801054d5
+- TUNDETACHFILTER = 0x801054d6
+- TUNGETFEATURES = 0x400454cf
+- TUNGETFILTER = 0x401054db
+- TUNGETIFF = 0x400454d2
+- TUNGETSNDBUF = 0x400454d3
+- TUNGETVNETBE = 0x400454df
+- TUNGETVNETHDRSZ = 0x400454d7
+- TUNGETVNETLE = 0x400454dd
+- TUNSETDEBUG = 0x800454c9
+- TUNSETGROUP = 0x800454ce
+- TUNSETIFF = 0x800454ca
+- TUNSETIFINDEX = 0x800454da
+- TUNSETLINK = 0x800454cd
+- TUNSETNOCSUM = 0x800454c8
+- TUNSETOFFLOAD = 0x800454d0
+- TUNSETOWNER = 0x800454cc
+- TUNSETPERSIST = 0x800454cb
+- TUNSETQUEUE = 0x800454d9
+- TUNSETSNDBUF = 0x800454d4
+- TUNSETTXFILTER = 0x800454d1
+- TUNSETVNETBE = 0x800454de
+- TUNSETVNETHDRSZ = 0x800454d8
+- TUNSETVNETLE = 0x800454dc
+- UMOUNT_NOFOLLOW = 0x8
+- VDISCARD = 0xd
+- VEOF = 0x10
+- VEOL = 0x11
+- VEOL2 = 0x6
+- VERASE = 0x2
+- VINTR = 0x0
+- VKILL = 0x3
+- VLNEXT = 0xf
+- VMADDR_CID_ANY = 0xffffffff
+- VMADDR_CID_HOST = 0x2
+- VMADDR_CID_HYPERVISOR = 0x0
+- VMADDR_CID_RESERVED = 0x1
+- VMADDR_PORT_ANY = 0xffffffff
+- VMIN = 0x4
+- VM_SOCKETS_INVALID_VERSION = 0xffffffff
+- VQUIT = 0x1
+- VREPRINT = 0xc
+- VSTART = 0x8
+- VSTOP = 0x9
+- VSUSP = 0xa
+- VSWTC = 0x7
+- VSWTCH = 0x7
+- VT0 = 0x0
+- VT1 = 0x4000
+- VTDLY = 0x4000
+- VTIME = 0x5
+- VWERASE = 0xe
+- WALL = 0x40000000
+- WCLONE = 0x80000000
+- WCONTINUED = 0x8
+- WEXITED = 0x4
+- WNOHANG = 0x1
+- WNOTHREAD = 0x20000000
+- WNOWAIT = 0x1000000
+- WORDSIZE = 0x40
+- WSTOPPED = 0x2
+- WUNTRACED = 0x2
+- XATTR_CREATE = 0x1
+- XATTR_REPLACE = 0x2
+- XCASE = 0x4
+- XTABS = 0x1800
++ B1000000 = 0x1008
++ B115200 = 0x1002
++ B1152000 = 0x1009
++ B1500000 = 0x100a
++ B2000000 = 0x100b
++ B230400 = 0x1003
++ B2500000 = 0x100c
++ B3000000 = 0x100d
++ B3500000 = 0x100e
++ B4000000 = 0x100f
++ B460800 = 0x1004
++ B500000 = 0x1005
++ B57600 = 0x1001
++ B576000 = 0x1006
++ B921600 = 0x1007
++ BLKBSZGET = 0x40081270
++ BLKBSZSET = 0x80081271
++ BLKFLSBUF = 0x20001261
++ BLKFRAGET = 0x20001265
++ BLKFRASET = 0x20001264
++ BLKGETSIZE = 0x20001260
++ BLKGETSIZE64 = 0x40081272
++ BLKPBSZGET = 0x2000127b
++ BLKRAGET = 0x20001263
++ BLKRASET = 0x20001262
++ BLKROGET = 0x2000125e
++ BLKROSET = 0x2000125d
++ BLKRRPART = 0x2000125f
++ BLKSECTGET = 0x20001267
++ BLKSECTSET = 0x20001266
++ BLKSSZGET = 0x20001268
++ BOTHER = 0x1000
++ BS1 = 0x2000
++ BSDLY = 0x2000
++ CBAUD = 0x100f
++ CBAUDEX = 0x1000
++ CIBAUD = 0x100f0000
++ CLOCAL = 0x800
++ CR1 = 0x200
++ CR2 = 0x400
++ CR3 = 0x600
++ CRDLY = 0x600
++ CREAD = 0x80
++ CS6 = 0x10
++ CS7 = 0x20
++ CS8 = 0x30
++ CSIZE = 0x30
++ CSTOPB = 0x40
++ ECHOCTL = 0x200
++ ECHOE = 0x10
++ ECHOK = 0x20
++ ECHOKE = 0x800
++ ECHONL = 0x40
++ ECHOPRT = 0x400
++ EFD_CLOEXEC = 0x80000
++ EFD_NONBLOCK = 0x80
++ EPOLL_CLOEXEC = 0x80000
++ EXTPROC = 0x10000
++ FF1 = 0x8000
++ FFDLY = 0x8000
++ FLUSHO = 0x2000
++ FS_IOC_ENABLE_VERITY = 0x80806685
++ FS_IOC_GETFLAGS = 0x40086601
++ FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
++ FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
++ FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
++ F_GETLK = 0xe
++ F_GETLK64 = 0xe
++ F_GETOWN = 0x17
++ F_RDLCK = 0x0
++ F_SETLK = 0x6
++ F_SETLK64 = 0x6
++ F_SETLKW = 0x7
++ F_SETLKW64 = 0x7
++ F_SETOWN = 0x18
++ F_UNLCK = 0x2
++ F_WRLCK = 0x1
++ HUPCL = 0x400
++ ICANON = 0x2
++ IEXTEN = 0x100
++ IN_CLOEXEC = 0x80000
++ IN_NONBLOCK = 0x80
++ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x200007b9
++ ISIG = 0x1
++ IUCLC = 0x200
++ IXOFF = 0x1000
++ IXON = 0x400
++ MAP_ANON = 0x800
++ MAP_ANONYMOUS = 0x800
++ MAP_DENYWRITE = 0x2000
++ MAP_EXECUTABLE = 0x4000
++ MAP_GROWSDOWN = 0x1000
++ MAP_HUGETLB = 0x80000
++ MAP_LOCKED = 0x8000
++ MAP_NONBLOCK = 0x20000
++ MAP_NORESERVE = 0x400
++ MAP_POPULATE = 0x10000
++ MAP_RENAME = 0x800
++ MAP_STACK = 0x40000
++ MCL_CURRENT = 0x1
++ MCL_FUTURE = 0x2
++ MCL_ONFAULT = 0x4
++ NFDBITS = 0x40
++ NLDLY = 0x100
++ NOFLSH = 0x80
++ NS_GET_NSTYPE = 0x2000b703
++ NS_GET_OWNER_UID = 0x2000b704
++ NS_GET_PARENT = 0x2000b702
++ NS_GET_USERNS = 0x2000b701
++ OLCUC = 0x2
++ ONLCR = 0x4
++ O_APPEND = 0x8
++ O_ASYNC = 0x1000
++ O_CLOEXEC = 0x80000
++ O_CREAT = 0x100
++ O_DIRECT = 0x8000
++ O_DIRECTORY = 0x10000
++ O_DSYNC = 0x10
++ O_EXCL = 0x400
++ O_FSYNC = 0x4010
++ O_LARGEFILE = 0x0
++ O_NDELAY = 0x80
++ O_NOATIME = 0x40000
++ O_NOCTTY = 0x800
++ O_NOFOLLOW = 0x20000
++ O_NONBLOCK = 0x80
++ O_PATH = 0x200000
++ O_RSYNC = 0x4010
++ O_SYNC = 0x4010
++ O_TMPFILE = 0x410000
++ O_TRUNC = 0x200
++ PARENB = 0x100
++ PARODD = 0x200
++ PENDIN = 0x4000
++ PERF_EVENT_IOC_DISABLE = 0x20002401
++ PERF_EVENT_IOC_ENABLE = 0x20002400
++ PERF_EVENT_IOC_ID = 0x40082407
++ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8008240b
++ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
++ PERF_EVENT_IOC_PERIOD = 0x80082404
++ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
++ PERF_EVENT_IOC_REFRESH = 0x20002402
++ PERF_EVENT_IOC_RESET = 0x20002403
++ PERF_EVENT_IOC_SET_BPF = 0x80042408
++ PERF_EVENT_IOC_SET_FILTER = 0x80082406
++ PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
++ PPPIOCATTACH = 0x8004743d
++ PPPIOCATTCHAN = 0x80047438
++ PPPIOCCONNECT = 0x8004743a
++ PPPIOCDETACH = 0x8004743c
++ PPPIOCDISCONN = 0x20007439
++ PPPIOCGASYNCMAP = 0x40047458
++ PPPIOCGCHAN = 0x40047437
++ PPPIOCGDEBUG = 0x40047441
++ PPPIOCGFLAGS = 0x4004745a
++ PPPIOCGIDLE = 0x4010743f
++ PPPIOCGIDLE32 = 0x4008743f
++ PPPIOCGIDLE64 = 0x4010743f
++ PPPIOCGL2TPSTATS = 0x40487436
++ PPPIOCGMRU = 0x40047453
++ PPPIOCGRASYNCMAP = 0x40047455
++ PPPIOCGUNIT = 0x40047456
++ PPPIOCGXASYNCMAP = 0x40207450
++ PPPIOCSACTIVE = 0x80107446
++ PPPIOCSASYNCMAP = 0x80047457
++ PPPIOCSCOMPRESS = 0x8010744d
++ PPPIOCSDEBUG = 0x80047440
++ PPPIOCSFLAGS = 0x80047459
++ PPPIOCSMAXCID = 0x80047451
++ PPPIOCSMRRU = 0x8004743b
++ PPPIOCSMRU = 0x80047452
++ PPPIOCSNPMODE = 0x8008744b
++ PPPIOCSPASS = 0x80107447
++ PPPIOCSRASYNCMAP = 0x80047454
++ PPPIOCSXASYNCMAP = 0x8020744f
++ PPPIOCXFERUNIT = 0x2000744e
++ PR_SET_PTRACER_ANY = 0xffffffffffffffff
++ PTRACE_GETFPREGS = 0xe
++ PTRACE_GET_THREAD_AREA = 0x19
++ PTRACE_GET_THREAD_AREA_3264 = 0xc4
++ PTRACE_GET_WATCH_REGS = 0xd0
++ PTRACE_OLDSETOPTIONS = 0x15
++ PTRACE_PEEKDATA_3264 = 0xc1
++ PTRACE_PEEKTEXT_3264 = 0xc0
++ PTRACE_POKEDATA_3264 = 0xc3
++ PTRACE_POKETEXT_3264 = 0xc2
++ PTRACE_SETFPREGS = 0xf
++ PTRACE_SET_THREAD_AREA = 0x1a
++ PTRACE_SET_WATCH_REGS = 0xd1
++ RLIMIT_AS = 0x6
++ RLIMIT_MEMLOCK = 0x9
++ RLIMIT_NOFILE = 0x5
++ RLIMIT_NPROC = 0x8
++ RLIMIT_RSS = 0x7
++ RNDADDENTROPY = 0x80085203
++ RNDADDTOENTCNT = 0x80045201
++ RNDCLEARPOOL = 0x20005206
++ RNDGETENTCNT = 0x40045200
++ RNDGETPOOL = 0x40085202
++ RNDRESEEDCRNG = 0x20005207
++ RNDZAPENTCNT = 0x20005204
++ RTC_AIE_OFF = 0x20007002
++ RTC_AIE_ON = 0x20007001
++ RTC_ALM_READ = 0x40247008
++ RTC_ALM_SET = 0x80247007
++ RTC_EPOCH_READ = 0x4008700d
++ RTC_EPOCH_SET = 0x8008700e
++ RTC_IRQP_READ = 0x4008700b
++ RTC_IRQP_SET = 0x8008700c
++ RTC_PIE_OFF = 0x20007006
++ RTC_PIE_ON = 0x20007005
++ RTC_PLL_GET = 0x40207011
++ RTC_PLL_SET = 0x80207012
++ RTC_RD_TIME = 0x40247009
++ RTC_SET_TIME = 0x8024700a
++ RTC_UIE_OFF = 0x20007004
++ RTC_UIE_ON = 0x20007003
++ RTC_VL_CLR = 0x20007014
++ RTC_VL_READ = 0x40047013
++ RTC_WIE_OFF = 0x20007010
++ RTC_WIE_ON = 0x2000700f
++ RTC_WKALM_RD = 0x40287010
++ RTC_WKALM_SET = 0x8028700f
++ SCM_TIMESTAMPING = 0x25
++ SCM_TIMESTAMPING_OPT_STATS = 0x36
++ SCM_TIMESTAMPING_PKTINFO = 0x3a
++ SCM_TIMESTAMPNS = 0x23
++ SCM_TXTIME = 0x3d
++ SCM_WIFI_STATUS = 0x29
++ SFD_CLOEXEC = 0x80000
++ SFD_NONBLOCK = 0x80
++ SIOCATMARK = 0x40047307
++ SIOCGPGRP = 0x40047309
++ SIOCGSTAMPNS_NEW = 0x40108907
++ SIOCGSTAMP_NEW = 0x40108906
++ SIOCINQ = 0x467f
++ SIOCOUTQ = 0x7472
++ SIOCSPGRP = 0x80047308
++ SOCK_CLOEXEC = 0x80000
++ SOCK_DGRAM = 0x1
++ SOCK_NONBLOCK = 0x80
++ SOCK_STREAM = 0x2
++ SOL_SOCKET = 0xffff
++ SO_ACCEPTCONN = 0x1009
++ SO_ATTACH_BPF = 0x32
++ SO_ATTACH_REUSEPORT_CBPF = 0x33
++ SO_ATTACH_REUSEPORT_EBPF = 0x34
++ SO_BINDTODEVICE = 0x19
++ SO_BINDTOIFINDEX = 0x3e
++ SO_BPF_EXTENSIONS = 0x30
++ SO_BROADCAST = 0x20
++ SO_BSDCOMPAT = 0xe
++ SO_BUSY_POLL = 0x2e
++ SO_CNX_ADVICE = 0x35
++ SO_COOKIE = 0x39
++ SO_DETACH_REUSEPORT_BPF = 0x44
++ SO_DOMAIN = 0x1029
++ SO_DONTROUTE = 0x10
++ SO_ERROR = 0x1007
++ SO_INCOMING_CPU = 0x31
++ SO_INCOMING_NAPI_ID = 0x38
++ SO_KEEPALIVE = 0x8
++ SO_LINGER = 0x80
++ SO_LOCK_FILTER = 0x2c
++ SO_MARK = 0x24
++ SO_MAX_PACING_RATE = 0x2f
++ SO_MEMINFO = 0x37
++ SO_NOFCS = 0x2b
++ SO_OOBINLINE = 0x100
++ SO_PASSCRED = 0x11
++ SO_PASSSEC = 0x22
++ SO_PEEK_OFF = 0x2a
++ SO_PEERCRED = 0x12
++ SO_PEERGROUPS = 0x3b
++ SO_PEERSEC = 0x1e
++ SO_PROTOCOL = 0x1028
++ SO_RCVBUF = 0x1002
++ SO_RCVBUFFORCE = 0x21
++ SO_RCVLOWAT = 0x1004
++ SO_RCVTIMEO = 0x1006
++ SO_RCVTIMEO_NEW = 0x42
++ SO_RCVTIMEO_OLD = 0x1006
++ SO_REUSEADDR = 0x4
++ SO_REUSEPORT = 0x200
++ SO_RXQ_OVFL = 0x28
++ SO_SECURITY_AUTHENTICATION = 0x16
++ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
++ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
++ SO_SELECT_ERR_QUEUE = 0x2d
++ SO_SNDBUF = 0x1001
++ SO_SNDBUFFORCE = 0x1f
++ SO_SNDLOWAT = 0x1003
++ SO_SNDTIMEO = 0x1005
++ SO_SNDTIMEO_NEW = 0x43
++ SO_SNDTIMEO_OLD = 0x1005
++ SO_STYLE = 0x1008
++ SO_TIMESTAMPING = 0x25
++ SO_TIMESTAMPING_NEW = 0x41
++ SO_TIMESTAMPING_OLD = 0x25
++ SO_TIMESTAMPNS = 0x23
++ SO_TIMESTAMPNS_NEW = 0x40
++ SO_TIMESTAMPNS_OLD = 0x23
++ SO_TIMESTAMP_NEW = 0x3f
++ SO_TXTIME = 0x3d
++ SO_TYPE = 0x1008
++ SO_WIFI_STATUS = 0x29
++ SO_ZEROCOPY = 0x3c
++ TAB1 = 0x800
++ TAB2 = 0x1000
++ TAB3 = 0x1800
++ TABDLY = 0x1800
++ TCFLSH = 0x5407
++ TCGETA = 0x5401
++ TCGETS = 0x540d
++ TCGETS2 = 0x4030542a
++ TCSAFLUSH = 0x5410
++ TCSBRK = 0x5405
++ TCSBRKP = 0x5486
++ TCSETA = 0x5402
++ TCSETAF = 0x5404
++ TCSETAW = 0x5403
++ TCSETS = 0x540e
++ TCSETS2 = 0x8030542b
++ TCSETSF = 0x5410
++ TCSETSF2 = 0x8030542d
++ TCSETSW = 0x540f
++ TCSETSW2 = 0x8030542c
++ TCXONC = 0x5406
++ TIOCCBRK = 0x5428
++ TIOCCONS = 0x80047478
++ TIOCEXCL = 0x740d
++ TIOCGDEV = 0x40045432
++ TIOCGETD = 0x7400
++ TIOCGETP = 0x7408
++ TIOCGEXCL = 0x40045440
++ TIOCGICOUNT = 0x5492
++ TIOCGISO7816 = 0x40285442
++ TIOCGLCKTRMIOS = 0x548b
++ TIOCGLTC = 0x7474
++ TIOCGPGRP = 0x40047477
++ TIOCGPKT = 0x40045438
++ TIOCGPTLCK = 0x40045439
++ TIOCGPTN = 0x40045430
++ TIOCGPTPEER = 0x20005441
++ TIOCGRS485 = 0x4020542e
++ TIOCGSERIAL = 0x5484
++ TIOCGSID = 0x7416
++ TIOCGSOFTCAR = 0x5481
++ TIOCGWINSZ = 0x40087468
++ TIOCINQ = 0x467f
++ TIOCLINUX = 0x5483
++ TIOCMBIC = 0x741c
++ TIOCMBIS = 0x741b
++ TIOCMGET = 0x741d
++ TIOCMIWAIT = 0x5491
++ TIOCMSET = 0x741a
++ TIOCM_CAR = 0x100
++ TIOCM_CD = 0x100
++ TIOCM_CTS = 0x40
++ TIOCM_DSR = 0x400
++ TIOCM_RI = 0x200
++ TIOCM_RNG = 0x200
++ TIOCM_SR = 0x20
++ TIOCM_ST = 0x10
++ TIOCNOTTY = 0x5471
++ TIOCNXCL = 0x740e
++ TIOCOUTQ = 0x7472
++ TIOCPKT = 0x5470
++ TIOCSBRK = 0x5427
++ TIOCSCTTY = 0x5480
++ TIOCSERCONFIG = 0x5488
++ TIOCSERGETLSR = 0x548e
++ TIOCSERGETMULTI = 0x548f
++ TIOCSERGSTRUCT = 0x548d
++ TIOCSERGWILD = 0x5489
++ TIOCSERSETMULTI = 0x5490
++ TIOCSERSWILD = 0x548a
++ TIOCSER_TEMT = 0x1
++ TIOCSETD = 0x7401
++ TIOCSETN = 0x740a
++ TIOCSETP = 0x7409
++ TIOCSIG = 0x80045436
++ TIOCSISO7816 = 0xc0285443
++ TIOCSLCKTRMIOS = 0x548c
++ TIOCSLTC = 0x7475
++ TIOCSPGRP = 0x80047476
++ TIOCSPTLCK = 0x80045431
++ TIOCSRS485 = 0xc020542f
++ TIOCSSERIAL = 0x5485
++ TIOCSSOFTCAR = 0x5482
++ TIOCSTI = 0x5472
++ TIOCSWINSZ = 0x80087467
++ TIOCVHANGUP = 0x5437
++ TOSTOP = 0x8000
++ TUNATTACHFILTER = 0x801054d5
++ TUNDETACHFILTER = 0x801054d6
++ TUNGETDEVNETNS = 0x200054e3
++ TUNGETFEATURES = 0x400454cf
++ TUNGETFILTER = 0x401054db
++ TUNGETIFF = 0x400454d2
++ TUNGETSNDBUF = 0x400454d3
++ TUNGETVNETBE = 0x400454df
++ TUNGETVNETHDRSZ = 0x400454d7
++ TUNGETVNETLE = 0x400454dd
++ TUNSETCARRIER = 0x800454e2
++ TUNSETDEBUG = 0x800454c9
++ TUNSETFILTEREBPF = 0x400454e1
++ TUNSETGROUP = 0x800454ce
++ TUNSETIFF = 0x800454ca
++ TUNSETIFINDEX = 0x800454da
++ TUNSETLINK = 0x800454cd
++ TUNSETNOCSUM = 0x800454c8
++ TUNSETOFFLOAD = 0x800454d0
++ TUNSETOWNER = 0x800454cc
++ TUNSETPERSIST = 0x800454cb
++ TUNSETQUEUE = 0x800454d9
++ TUNSETSNDBUF = 0x800454d4
++ TUNSETSTEERINGEBPF = 0x400454e0
++ TUNSETTXFILTER = 0x800454d1
++ TUNSETVNETBE = 0x800454de
++ TUNSETVNETHDRSZ = 0x800454d8
++ TUNSETVNETLE = 0x800454dc
++ UBI_IOCATT = 0x80186f40
++ UBI_IOCDET = 0x80046f41
++ UBI_IOCEBCH = 0x80044f02
++ UBI_IOCEBER = 0x80044f01
++ UBI_IOCEBISMAP = 0x40044f05
++ UBI_IOCEBMAP = 0x80084f03
++ UBI_IOCEBUNMAP = 0x80044f04
++ UBI_IOCMKVOL = 0x80986f00
++ UBI_IOCRMVOL = 0x80046f01
++ UBI_IOCRNVOL = 0x91106f03
++ UBI_IOCRPEB = 0x80046f04
++ UBI_IOCRSVOL = 0x800c6f02
++ UBI_IOCSETVOLPROP = 0x80104f06
++ UBI_IOCSPEB = 0x80046f05
++ UBI_IOCVOLCRBLK = 0x80804f07
++ UBI_IOCVOLRMBLK = 0x20004f08
++ UBI_IOCVOLUP = 0x80084f00
++ VDISCARD = 0xd
++ VEOF = 0x10
++ VEOL = 0x11
++ VEOL2 = 0x6
++ VMIN = 0x4
++ VREPRINT = 0xc
++ VSTART = 0x8
++ VSTOP = 0x9
++ VSUSP = 0xa
++ VSWTC = 0x7
++ VSWTCH = 0x7
++ VT1 = 0x4000
++ VTDLY = 0x4000
++ VTIME = 0x5
++ VWERASE = 0xe
++ WDIOC_GETBOOTSTATUS = 0x40045702
++ WDIOC_GETPRETIMEOUT = 0x40045709
++ WDIOC_GETSTATUS = 0x40045701
++ WDIOC_GETSUPPORT = 0x40285700
++ WDIOC_GETTEMP = 0x40045703
++ WDIOC_GETTIMELEFT = 0x4004570a
++ WDIOC_GETTIMEOUT = 0x40045707
++ WDIOC_KEEPALIVE = 0x40045705
++ WDIOC_SETOPTIONS = 0x40045704
++ WORDSIZE = 0x40
++ XCASE = 0x4
++ XTABS = 0x1800
+ )
+
+ // Errors
+ const (
+- E2BIG = syscall.Errno(0x7)
+- EACCES = syscall.Errno(0xd)
+ EADDRINUSE = syscall.Errno(0x7d)
+ EADDRNOTAVAIL = syscall.Errno(0x7e)
+ EADV = syscall.Errno(0x44)
+ EAFNOSUPPORT = syscall.Errno(0x7c)
+- EAGAIN = syscall.Errno(0xb)
+ EALREADY = syscall.Errno(0x95)
+ EBADE = syscall.Errno(0x32)
+- EBADF = syscall.Errno(0x9)
+ EBADFD = syscall.Errno(0x51)
+ EBADMSG = syscall.Errno(0x4d)
+ EBADR = syscall.Errno(0x33)
+ EBADRQC = syscall.Errno(0x36)
+ EBADSLT = syscall.Errno(0x37)
+ EBFONT = syscall.Errno(0x3b)
+- EBUSY = syscall.Errno(0x10)
+ ECANCELED = syscall.Errno(0x9e)
+- ECHILD = syscall.Errno(0xa)
+ ECHRNG = syscall.Errno(0x25)
+ ECOMM = syscall.Errno(0x46)
+ ECONNABORTED = syscall.Errno(0x82)
+@@ -1886,12 +502,8 @@ const (
+ EDEADLK = syscall.Errno(0x2d)
+ EDEADLOCK = syscall.Errno(0x38)
+ EDESTADDRREQ = syscall.Errno(0x60)
+- EDOM = syscall.Errno(0x21)
+ EDOTDOT = syscall.Errno(0x49)
+ EDQUOT = syscall.Errno(0x46d)
+- EEXIST = syscall.Errno(0x11)
+- EFAULT = syscall.Errno(0xe)
+- EFBIG = syscall.Errno(0x1b)
+ EHOSTDOWN = syscall.Errno(0x93)
+ EHOSTUNREACH = syscall.Errno(0x94)
+ EHWPOISON = syscall.Errno(0xa8)
+@@ -1899,11 +511,7 @@ const (
+ EILSEQ = syscall.Errno(0x58)
+ EINIT = syscall.Errno(0x8d)
+ EINPROGRESS = syscall.Errno(0x96)
+- EINTR = syscall.Errno(0x4)
+- EINVAL = syscall.Errno(0x16)
+- EIO = syscall.Errno(0x5)
+ EISCONN = syscall.Errno(0x85)
+- EISDIR = syscall.Errno(0x15)
+ EISNAM = syscall.Errno(0x8b)
+ EKEYEXPIRED = syscall.Errno(0xa2)
+ EKEYREJECTED = syscall.Errno(0xa4)
+@@ -1920,8 +528,6 @@ const (
+ ELNRNG = syscall.Errno(0x29)
+ ELOOP = syscall.Errno(0x5a)
+ EMEDIUMTYPE = syscall.Errno(0xa0)
+- EMFILE = syscall.Errno(0x18)
+- EMLINK = syscall.Errno(0x1f)
+ EMSGSIZE = syscall.Errno(0x61)
+ EMULTIHOP = syscall.Errno(0x4a)
+ ENAMETOOLONG = syscall.Errno(0x4e)
+@@ -1929,100 +535,68 @@ const (
+ ENETDOWN = syscall.Errno(0x7f)
+ ENETRESET = syscall.Errno(0x81)
+ ENETUNREACH = syscall.Errno(0x80)
+- ENFILE = syscall.Errno(0x17)
+ ENOANO = syscall.Errno(0x35)
+ ENOBUFS = syscall.Errno(0x84)
+ ENOCSI = syscall.Errno(0x2b)
+ ENODATA = syscall.Errno(0x3d)
+- ENODEV = syscall.Errno(0x13)
+- ENOENT = syscall.Errno(0x2)
+- ENOEXEC = syscall.Errno(0x8)
+ ENOKEY = syscall.Errno(0xa1)
+ ENOLCK = syscall.Errno(0x2e)
+ ENOLINK = syscall.Errno(0x43)
+ ENOMEDIUM = syscall.Errno(0x9f)
+- ENOMEM = syscall.Errno(0xc)
+ ENOMSG = syscall.Errno(0x23)
+ ENONET = syscall.Errno(0x40)
+ ENOPKG = syscall.Errno(0x41)
+ ENOPROTOOPT = syscall.Errno(0x63)
+- ENOSPC = syscall.Errno(0x1c)
+ ENOSR = syscall.Errno(0x3f)
+ ENOSTR = syscall.Errno(0x3c)
+ ENOSYS = syscall.Errno(0x59)
+- ENOTBLK = syscall.Errno(0xf)
+ ENOTCONN = syscall.Errno(0x86)
+- ENOTDIR = syscall.Errno(0x14)
+ ENOTEMPTY = syscall.Errno(0x5d)
+ ENOTNAM = syscall.Errno(0x89)
+ ENOTRECOVERABLE = syscall.Errno(0xa6)
+ ENOTSOCK = syscall.Errno(0x5f)
+ ENOTSUP = syscall.Errno(0x7a)
+- ENOTTY = syscall.Errno(0x19)
+ ENOTUNIQ = syscall.Errno(0x50)
+- ENXIO = syscall.Errno(0x6)
+ EOPNOTSUPP = syscall.Errno(0x7a)
+ EOVERFLOW = syscall.Errno(0x4f)
+ EOWNERDEAD = syscall.Errno(0xa5)
+- EPERM = syscall.Errno(0x1)
+ EPFNOSUPPORT = syscall.Errno(0x7b)
+- EPIPE = syscall.Errno(0x20)
+ EPROTO = syscall.Errno(0x47)
+ EPROTONOSUPPORT = syscall.Errno(0x78)
+ EPROTOTYPE = syscall.Errno(0x62)
+- ERANGE = syscall.Errno(0x22)
+ EREMCHG = syscall.Errno(0x52)
+ EREMDEV = syscall.Errno(0x8e)
+ EREMOTE = syscall.Errno(0x42)
+ EREMOTEIO = syscall.Errno(0x8c)
+ ERESTART = syscall.Errno(0x5b)
+ ERFKILL = syscall.Errno(0xa7)
+- EROFS = syscall.Errno(0x1e)
+ ESHUTDOWN = syscall.Errno(0x8f)
+ ESOCKTNOSUPPORT = syscall.Errno(0x79)
+- ESPIPE = syscall.Errno(0x1d)
+- ESRCH = syscall.Errno(0x3)
+ ESRMNT = syscall.Errno(0x45)
+ ESTALE = syscall.Errno(0x97)
+ ESTRPIPE = syscall.Errno(0x5c)
+ ETIME = syscall.Errno(0x3e)
+ ETIMEDOUT = syscall.Errno(0x91)
+ ETOOMANYREFS = syscall.Errno(0x90)
+- ETXTBSY = syscall.Errno(0x1a)
+ EUCLEAN = syscall.Errno(0x87)
+ EUNATCH = syscall.Errno(0x2a)
+ EUSERS = syscall.Errno(0x5e)
+- EWOULDBLOCK = syscall.Errno(0xb)
+- EXDEV = syscall.Errno(0x12)
+ EXFULL = syscall.Errno(0x34)
+ )
+
+ // Signals
+ const (
+- SIGABRT = syscall.Signal(0x6)
+- SIGALRM = syscall.Signal(0xe)
+ SIGBUS = syscall.Signal(0xa)
+ SIGCHLD = syscall.Signal(0x12)
+ SIGCLD = syscall.Signal(0x12)
+ SIGCONT = syscall.Signal(0x19)
+ SIGEMT = syscall.Signal(0x7)
+- SIGFPE = syscall.Signal(0x8)
+- SIGHUP = syscall.Signal(0x1)
+- SIGILL = syscall.Signal(0x4)
+- SIGINT = syscall.Signal(0x2)
+ SIGIO = syscall.Signal(0x16)
+- SIGIOT = syscall.Signal(0x6)
+- SIGKILL = syscall.Signal(0x9)
+- SIGPIPE = syscall.Signal(0xd)
+ SIGPOLL = syscall.Signal(0x16)
+ SIGPROF = syscall.Signal(0x1d)
+ SIGPWR = syscall.Signal(0x13)
+- SIGQUIT = syscall.Signal(0x3)
+- SIGSEGV = syscall.Signal(0xb)
+ SIGSTOP = syscall.Signal(0x17)
+ SIGSYS = syscall.Signal(0xc)
+- SIGTERM = syscall.Signal(0xf)
+- SIGTRAP = syscall.Signal(0x5)
+ SIGTSTP = syscall.Signal(0x18)
+ SIGTTIN = syscall.Signal(0x1a)
+ SIGTTOU = syscall.Signal(0x1b)
+@@ -2036,174 +610,182 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "no such device or address",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource temporarily unavailable",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device or resource busy",
+- 17: "file exists",
+- 18: "invalid cross-device link",
+- 19: "no such device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "numerical result out of range",
+- 35: "no message of desired type",
+- 36: "identifier removed",
+- 37: "channel number out of range",
+- 38: "level 2 not synchronized",
+- 39: "level 3 halted",
+- 40: "level 3 reset",
+- 41: "link number out of range",
+- 42: "protocol driver not attached",
+- 43: "no CSI structure available",
+- 44: "level 2 halted",
+- 45: "resource deadlock avoided",
+- 46: "no locks available",
+- 50: "invalid exchange",
+- 51: "invalid request descriptor",
+- 52: "exchange full",
+- 53: "no anode",
+- 54: "invalid request code",
+- 55: "invalid slot",
+- 56: "file locking deadlock error",
+- 59: "bad font file format",
+- 60: "device not a stream",
+- 61: "no data available",
+- 62: "timer expired",
+- 63: "out of streams resources",
+- 64: "machine is not on the network",
+- 65: "package not installed",
+- 66: "object is remote",
+- 67: "link has been severed",
+- 68: "advertise error",
+- 69: "srmount error",
+- 70: "communication error on send",
+- 71: "protocol error",
+- 73: "RFS specific error",
+- 74: "multihop attempted",
+- 77: "bad message",
+- 78: "file name too long",
+- 79: "value too large for defined data type",
+- 80: "name not unique on network",
+- 81: "file descriptor in bad state",
+- 82: "remote address changed",
+- 83: "can not access a needed shared library",
+- 84: "accessing a corrupted shared library",
+- 85: ".lib section in a.out corrupted",
+- 86: "attempting to link in too many shared libraries",
+- 87: "cannot exec a shared library directly",
+- 88: "invalid or incomplete multibyte or wide character",
+- 89: "function not implemented",
+- 90: "too many levels of symbolic links",
+- 91: "interrupted system call should be restarted",
+- 92: "streams pipe error",
+- 93: "directory not empty",
+- 94: "too many users",
+- 95: "socket operation on non-socket",
+- 96: "destination address required",
+- 97: "message too long",
+- 98: "protocol wrong type for socket",
+- 99: "protocol not available",
+- 120: "protocol not supported",
+- 121: "socket type not supported",
+- 122: "operation not supported",
+- 123: "protocol family not supported",
+- 124: "address family not supported by protocol",
+- 125: "address already in use",
+- 126: "cannot assign requested address",
+- 127: "network is down",
+- 128: "network is unreachable",
+- 129: "network dropped connection on reset",
+- 130: "software caused connection abort",
+- 131: "connection reset by peer",
+- 132: "no buffer space available",
+- 133: "transport endpoint is already connected",
+- 134: "transport endpoint is not connected",
+- 135: "structure needs cleaning",
+- 137: "not a XENIX named type file",
+- 138: "no XENIX semaphores available",
+- 139: "is a named type file",
+- 140: "remote I/O error",
+- 141: "unknown error 141",
+- 142: "unknown error 142",
+- 143: "cannot send after transport endpoint shutdown",
+- 144: "too many references: cannot splice",
+- 145: "connection timed out",
+- 146: "connection refused",
+- 147: "host is down",
+- 148: "no route to host",
+- 149: "operation already in progress",
+- 150: "operation now in progress",
+- 151: "stale file handle",
+- 158: "operation canceled",
+- 159: "no medium found",
+- 160: "wrong medium type",
+- 161: "required key not available",
+- 162: "key has expired",
+- 163: "key has been revoked",
+- 164: "key was rejected by service",
+- 165: "owner died",
+- 166: "state not recoverable",
+- 167: "operation not possible due to RF-kill",
+- 168: "memory page has hardware error",
+- 1133: "disk quota exceeded",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "no such device or address"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EAGAIN", "resource temporarily unavailable"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device or resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "invalid cross-device link"},
++ {19, "ENODEV", "no such device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "numerical result out of range"},
++ {35, "ENOMSG", "no message of desired type"},
++ {36, "EIDRM", "identifier removed"},
++ {37, "ECHRNG", "channel number out of range"},
++ {38, "EL2NSYNC", "level 2 not synchronized"},
++ {39, "EL3HLT", "level 3 halted"},
++ {40, "EL3RST", "level 3 reset"},
++ {41, "ELNRNG", "link number out of range"},
++ {42, "EUNATCH", "protocol driver not attached"},
++ {43, "ENOCSI", "no CSI structure available"},
++ {44, "EL2HLT", "level 2 halted"},
++ {45, "EDEADLK", "resource deadlock avoided"},
++ {46, "ENOLCK", "no locks available"},
++ {50, "EBADE", "invalid exchange"},
++ {51, "EBADR", "invalid request descriptor"},
++ {52, "EXFULL", "exchange full"},
++ {53, "ENOANO", "no anode"},
++ {54, "EBADRQC", "invalid request code"},
++ {55, "EBADSLT", "invalid slot"},
++ {56, "EDEADLOCK", "file locking deadlock error"},
++ {59, "EBFONT", "bad font file format"},
++ {60, "ENOSTR", "device not a stream"},
++ {61, "ENODATA", "no data available"},
++ {62, "ETIME", "timer expired"},
++ {63, "ENOSR", "out of streams resources"},
++ {64, "ENONET", "machine is not on the network"},
++ {65, "ENOPKG", "package not installed"},
++ {66, "EREMOTE", "object is remote"},
++ {67, "ENOLINK", "link has been severed"},
++ {68, "EADV", "advertise error"},
++ {69, "ESRMNT", "srmount error"},
++ {70, "ECOMM", "communication error on send"},
++ {71, "EPROTO", "protocol error"},
++ {73, "EDOTDOT", "RFS specific error"},
++ {74, "EMULTIHOP", "multihop attempted"},
++ {77, "EBADMSG", "bad message"},
++ {78, "ENAMETOOLONG", "file name too long"},
++ {79, "EOVERFLOW", "value too large for defined data type"},
++ {80, "ENOTUNIQ", "name not unique on network"},
++ {81, "EBADFD", "file descriptor in bad state"},
++ {82, "EREMCHG", "remote address changed"},
++ {83, "ELIBACC", "can not access a needed shared library"},
++ {84, "ELIBBAD", "accessing a corrupted shared library"},
++ {85, "ELIBSCN", ".lib section in a.out corrupted"},
++ {86, "ELIBMAX", "attempting to link in too many shared libraries"},
++ {87, "ELIBEXEC", "cannot exec a shared library directly"},
++ {88, "EILSEQ", "invalid or incomplete multibyte or wide character"},
++ {89, "ENOSYS", "function not implemented"},
++ {90, "ELOOP", "too many levels of symbolic links"},
++ {91, "ERESTART", "interrupted system call should be restarted"},
++ {92, "ESTRPIPE", "streams pipe error"},
++ {93, "ENOTEMPTY", "directory not empty"},
++ {94, "EUSERS", "too many users"},
++ {95, "ENOTSOCK", "socket operation on non-socket"},
++ {96, "EDESTADDRREQ", "destination address required"},
++ {97, "EMSGSIZE", "message too long"},
++ {98, "EPROTOTYPE", "protocol wrong type for socket"},
++ {99, "ENOPROTOOPT", "protocol not available"},
++ {120, "EPROTONOSUPPORT", "protocol not supported"},
++ {121, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {122, "ENOTSUP", "operation not supported"},
++ {123, "EPFNOSUPPORT", "protocol family not supported"},
++ {124, "EAFNOSUPPORT", "address family not supported by protocol"},
++ {125, "EADDRINUSE", "address already in use"},
++ {126, "EADDRNOTAVAIL", "cannot assign requested address"},
++ {127, "ENETDOWN", "network is down"},
++ {128, "ENETUNREACH", "network is unreachable"},
++ {129, "ENETRESET", "network dropped connection on reset"},
++ {130, "ECONNABORTED", "software caused connection abort"},
++ {131, "ECONNRESET", "connection reset by peer"},
++ {132, "ENOBUFS", "no buffer space available"},
++ {133, "EISCONN", "transport endpoint is already connected"},
++ {134, "ENOTCONN", "transport endpoint is not connected"},
++ {135, "EUCLEAN", "structure needs cleaning"},
++ {137, "ENOTNAM", "not a XENIX named type file"},
++ {138, "ENAVAIL", "no XENIX semaphores available"},
++ {139, "EISNAM", "is a named type file"},
++ {140, "EREMOTEIO", "remote I/O error"},
++ {141, "EINIT", "unknown error 141"},
++ {142, "EREMDEV", "unknown error 142"},
++ {143, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
++ {144, "ETOOMANYREFS", "too many references: cannot splice"},
++ {145, "ETIMEDOUT", "connection timed out"},
++ {146, "ECONNREFUSED", "connection refused"},
++ {147, "EHOSTDOWN", "host is down"},
++ {148, "EHOSTUNREACH", "no route to host"},
++ {149, "EALREADY", "operation already in progress"},
++ {150, "EINPROGRESS", "operation now in progress"},
++ {151, "ESTALE", "stale file handle"},
++ {158, "ECANCELED", "operation canceled"},
++ {159, "ENOMEDIUM", "no medium found"},
++ {160, "EMEDIUMTYPE", "wrong medium type"},
++ {161, "ENOKEY", "required key not available"},
++ {162, "EKEYEXPIRED", "key has expired"},
++ {163, "EKEYREVOKED", "key has been revoked"},
++ {164, "EKEYREJECTED", "key was rejected by service"},
++ {165, "EOWNERDEAD", "owner died"},
++ {166, "ENOTRECOVERABLE", "state not recoverable"},
++ {167, "ERFKILL", "operation not possible due to RF-kill"},
++ {168, "EHWPOISON", "memory page has hardware error"},
++ {1133, "EDQUOT", "disk quota exceeded"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/breakpoint trap",
+- 6: "aborted",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "user defined signal 1",
+- 17: "user defined signal 2",
+- 18: "child exited",
+- 19: "power failure",
+- 20: "window changed",
+- 21: "urgent I/O condition",
+- 22: "I/O possible",
+- 23: "stopped (signal)",
+- 24: "stopped",
+- 25: "continued",
+- 26: "stopped (tty input)",
+- 27: "stopped (tty output)",
+- 28: "virtual timer expired",
+- 29: "profiling timer expired",
+- 30: "CPU time limit exceeded",
+- 31: "file size limit exceeded",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/breakpoint trap"},
++ {6, "SIGABRT", "aborted"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGUSR1", "user defined signal 1"},
++ {17, "SIGUSR2", "user defined signal 2"},
++ {18, "SIGCHLD", "child exited"},
++ {19, "SIGPWR", "power failure"},
++ {20, "SIGWINCH", "window changed"},
++ {21, "SIGURG", "urgent I/O condition"},
++ {22, "SIGIO", "I/O possible"},
++ {23, "SIGSTOP", "stopped (signal)"},
++ {24, "SIGTSTP", "stopped"},
++ {25, "SIGCONT", "continued"},
++ {26, "SIGTTIN", "stopped (tty input)"},
++ {27, "SIGTTOU", "stopped (tty output)"},
++ {28, "SIGVTALRM", "virtual timer expired"},
++ {29, "SIGPROF", "profiling timer expired"},
++ {30, "SIGXCPU", "CPU time limit exceeded"},
++ {31, "SIGXFSZ", "file size limit exceeded"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go
+index 2310beeb..e758b61e 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go
+@@ -3,7 +3,7 @@
+
+ // +build mips64le,linux
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
+
+ package unix
+@@ -11,1873 +11,489 @@ package unix
+ import "syscall"
+
+ const (
+- AF_ALG = 0x26
+- AF_APPLETALK = 0x5
+- AF_ASH = 0x12
+- AF_ATMPVC = 0x8
+- AF_ATMSVC = 0x14
+- AF_AX25 = 0x3
+- AF_BLUETOOTH = 0x1f
+- AF_BRIDGE = 0x7
+- AF_CAIF = 0x25
+- AF_CAN = 0x1d
+- AF_DECnet = 0xc
+- AF_ECONET = 0x13
+- AF_FILE = 0x1
+- AF_IB = 0x1b
+- AF_IEEE802154 = 0x24
+- AF_INET = 0x2
+- AF_INET6 = 0xa
+- AF_IPX = 0x4
+- AF_IRDA = 0x17
+- AF_ISDN = 0x22
+- AF_IUCV = 0x20
+- AF_KCM = 0x29
+- AF_KEY = 0xf
+- AF_LLC = 0x1a
+- AF_LOCAL = 0x1
+- AF_MAX = 0x2b
+- AF_MPLS = 0x1c
+- AF_NETBEUI = 0xd
+- AF_NETLINK = 0x10
+- AF_NETROM = 0x6
+- AF_NFC = 0x27
+- AF_PACKET = 0x11
+- AF_PHONET = 0x23
+- AF_PPPOX = 0x18
+- AF_QIPCRTR = 0x2a
+- AF_RDS = 0x15
+- AF_ROSE = 0xb
+- AF_ROUTE = 0x10
+- AF_RXRPC = 0x21
+- AF_SECURITY = 0xe
+- AF_SNA = 0x16
+- AF_TIPC = 0x1e
+- AF_UNIX = 0x1
+- AF_UNSPEC = 0x0
+- AF_VSOCK = 0x28
+- AF_WANPIPE = 0x19
+- AF_X25 = 0x9
+- ALG_OP_DECRYPT = 0x0
+- ALG_OP_ENCRYPT = 0x1
+- ALG_SET_AEAD_ASSOCLEN = 0x4
+- ALG_SET_AEAD_AUTHSIZE = 0x5
+- ALG_SET_IV = 0x2
+- ALG_SET_KEY = 0x1
+- ALG_SET_OP = 0x3
+- ARPHRD_6LOWPAN = 0x339
+- ARPHRD_ADAPT = 0x108
+- ARPHRD_APPLETLK = 0x8
+- ARPHRD_ARCNET = 0x7
+- ARPHRD_ASH = 0x30d
+- ARPHRD_ATM = 0x13
+- ARPHRD_AX25 = 0x3
+- ARPHRD_BIF = 0x307
+- ARPHRD_CAIF = 0x336
+- ARPHRD_CAN = 0x118
+- ARPHRD_CHAOS = 0x5
+- ARPHRD_CISCO = 0x201
+- ARPHRD_CSLIP = 0x101
+- ARPHRD_CSLIP6 = 0x103
+- ARPHRD_DDCMP = 0x205
+- ARPHRD_DLCI = 0xf
+- ARPHRD_ECONET = 0x30e
+- ARPHRD_EETHER = 0x2
+- ARPHRD_ETHER = 0x1
+- ARPHRD_EUI64 = 0x1b
+- ARPHRD_FCAL = 0x311
+- ARPHRD_FCFABRIC = 0x313
+- ARPHRD_FCPL = 0x312
+- ARPHRD_FCPP = 0x310
+- ARPHRD_FDDI = 0x306
+- ARPHRD_FRAD = 0x302
+- ARPHRD_HDLC = 0x201
+- ARPHRD_HIPPI = 0x30c
+- ARPHRD_HWX25 = 0x110
+- ARPHRD_IEEE1394 = 0x18
+- ARPHRD_IEEE802 = 0x6
+- ARPHRD_IEEE80211 = 0x321
+- ARPHRD_IEEE80211_PRISM = 0x322
+- ARPHRD_IEEE80211_RADIOTAP = 0x323
+- ARPHRD_IEEE802154 = 0x324
+- ARPHRD_IEEE802154_MONITOR = 0x325
+- ARPHRD_IEEE802_TR = 0x320
+- ARPHRD_INFINIBAND = 0x20
+- ARPHRD_IP6GRE = 0x337
+- ARPHRD_IPDDP = 0x309
+- ARPHRD_IPGRE = 0x30a
+- ARPHRD_IRDA = 0x30f
+- ARPHRD_LAPB = 0x204
+- ARPHRD_LOCALTLK = 0x305
+- ARPHRD_LOOPBACK = 0x304
+- ARPHRD_METRICOM = 0x17
+- ARPHRD_NETLINK = 0x338
+- ARPHRD_NETROM = 0x0
+- ARPHRD_NONE = 0xfffe
+- ARPHRD_PHONET = 0x334
+- ARPHRD_PHONET_PIPE = 0x335
+- ARPHRD_PIMREG = 0x30b
+- ARPHRD_PPP = 0x200
+- ARPHRD_PRONET = 0x4
+- ARPHRD_RAWHDLC = 0x206
+- ARPHRD_ROSE = 0x10e
+- ARPHRD_RSRVD = 0x104
+- ARPHRD_SIT = 0x308
+- ARPHRD_SKIP = 0x303
+- ARPHRD_SLIP = 0x100
+- ARPHRD_SLIP6 = 0x102
+- ARPHRD_TUNNEL = 0x300
+- ARPHRD_TUNNEL6 = 0x301
+- ARPHRD_VOID = 0xffff
+- ARPHRD_X25 = 0x10f
+- B0 = 0x0
+- B1000000 = 0x1008
+- B110 = 0x3
+- B115200 = 0x1002
+- B1152000 = 0x1009
+- B1200 = 0x9
+- B134 = 0x4
+- B150 = 0x5
+- B1500000 = 0x100a
+- B1800 = 0xa
+- B19200 = 0xe
+- B200 = 0x6
+- B2000000 = 0x100b
+- B230400 = 0x1003
+- B2400 = 0xb
+- B2500000 = 0x100c
+- B300 = 0x7
+- B3000000 = 0x100d
+- B3500000 = 0x100e
+- B38400 = 0xf
+- B4000000 = 0x100f
+- B460800 = 0x1004
+- B4800 = 0xc
+- B50 = 0x1
+- B500000 = 0x1005
+- B57600 = 0x1001
+- B576000 = 0x1006
+- B600 = 0x8
+- B75 = 0x2
+- B921600 = 0x1007
+- B9600 = 0xd
+- BLKBSZGET = 0x40081270
+- BLKBSZSET = 0x80081271
+- BLKFLSBUF = 0x20001261
+- BLKFRAGET = 0x20001265
+- BLKFRASET = 0x20001264
+- BLKGETSIZE = 0x20001260
+- BLKGETSIZE64 = 0x40081272
+- BLKPBSZGET = 0x2000127b
+- BLKRAGET = 0x20001263
+- BLKRASET = 0x20001262
+- BLKROGET = 0x2000125e
+- BLKROSET = 0x2000125d
+- BLKRRPART = 0x2000125f
+- BLKSECTGET = 0x20001267
+- BLKSECTSET = 0x20001266
+- BLKSSZGET = 0x20001268
+- BOTHER = 0x1000
+- BPF_A = 0x10
+- BPF_ABS = 0x20
+- BPF_ADD = 0x0
+- BPF_ALU = 0x4
+- BPF_AND = 0x50
+- BPF_B = 0x10
+- BPF_DIV = 0x30
+- BPF_H = 0x8
+- BPF_IMM = 0x0
+- BPF_IND = 0x40
+- BPF_JA = 0x0
+- BPF_JEQ = 0x10
+- BPF_JGE = 0x30
+- BPF_JGT = 0x20
+- BPF_JMP = 0x5
+- BPF_JSET = 0x40
+- BPF_K = 0x0
+- BPF_LD = 0x0
+- BPF_LDX = 0x1
+- BPF_LEN = 0x80
+- BPF_LL_OFF = -0x200000
+- BPF_LSH = 0x60
+- BPF_MAJOR_VERSION = 0x1
+- BPF_MAXINSNS = 0x1000
+- BPF_MEM = 0x60
+- BPF_MEMWORDS = 0x10
+- BPF_MINOR_VERSION = 0x1
+- BPF_MISC = 0x7
+- BPF_MOD = 0x90
+- BPF_MSH = 0xa0
+- BPF_MUL = 0x20
+- BPF_NEG = 0x80
+- BPF_NET_OFF = -0x100000
+- BPF_OR = 0x40
+- BPF_RET = 0x6
+- BPF_RSH = 0x70
+- BPF_ST = 0x2
+- BPF_STX = 0x3
+- BPF_SUB = 0x10
+- BPF_TAX = 0x0
+- BPF_TXA = 0x80
+- BPF_W = 0x0
+- BPF_X = 0x8
+- BPF_XOR = 0xa0
+- BRKINT = 0x2
+- BS0 = 0x0
+- BS1 = 0x2000
+- BSDLY = 0x2000
+- CAN_BCM = 0x2
+- CAN_EFF_FLAG = 0x80000000
+- CAN_EFF_ID_BITS = 0x1d
+- CAN_EFF_MASK = 0x1fffffff
+- CAN_ERR_FLAG = 0x20000000
+- CAN_ERR_MASK = 0x1fffffff
+- CAN_INV_FILTER = 0x20000000
+- CAN_ISOTP = 0x6
+- CAN_MAX_DLC = 0x8
+- CAN_MAX_DLEN = 0x8
+- CAN_MCNET = 0x5
+- CAN_MTU = 0x10
+- CAN_NPROTO = 0x7
+- CAN_RAW = 0x1
+- CAN_RAW_FILTER_MAX = 0x200
+- CAN_RTR_FLAG = 0x40000000
+- CAN_SFF_ID_BITS = 0xb
+- CAN_SFF_MASK = 0x7ff
+- CAN_TP16 = 0x3
+- CAN_TP20 = 0x4
+- CBAUD = 0x100f
+- CBAUDEX = 0x1000
+- CFLUSH = 0xf
+- CIBAUD = 0x100f0000
+- CLOCAL = 0x800
+- CLOCK_BOOTTIME = 0x7
+- CLOCK_BOOTTIME_ALARM = 0x9
+- CLOCK_DEFAULT = 0x0
+- CLOCK_EXT = 0x1
+- CLOCK_INT = 0x2
+- CLOCK_MONOTONIC = 0x1
+- CLOCK_MONOTONIC_COARSE = 0x6
+- CLOCK_MONOTONIC_RAW = 0x4
+- CLOCK_PROCESS_CPUTIME_ID = 0x2
+- CLOCK_REALTIME = 0x0
+- CLOCK_REALTIME_ALARM = 0x8
+- CLOCK_REALTIME_COARSE = 0x5
+- CLOCK_TAI = 0xb
+- CLOCK_THREAD_CPUTIME_ID = 0x3
+- CLOCK_TXFROMRX = 0x4
+- CLOCK_TXINT = 0x3
+- CLONE_CHILD_CLEARTID = 0x200000
+- CLONE_CHILD_SETTID = 0x1000000
+- CLONE_DETACHED = 0x400000
+- CLONE_FILES = 0x400
+- CLONE_FS = 0x200
+- CLONE_IO = 0x80000000
+- CLONE_NEWCGROUP = 0x2000000
+- CLONE_NEWIPC = 0x8000000
+- CLONE_NEWNET = 0x40000000
+- CLONE_NEWNS = 0x20000
+- CLONE_NEWPID = 0x20000000
+- CLONE_NEWUSER = 0x10000000
+- CLONE_NEWUTS = 0x4000000
+- CLONE_PARENT = 0x8000
+- CLONE_PARENT_SETTID = 0x100000
+- CLONE_PTRACE = 0x2000
+- CLONE_SETTLS = 0x80000
+- CLONE_SIGHAND = 0x800
+- CLONE_SYSVSEM = 0x40000
+- CLONE_THREAD = 0x10000
+- CLONE_UNTRACED = 0x800000
+- CLONE_VFORK = 0x4000
+- CLONE_VM = 0x100
+- CMSPAR = 0x40000000
+- CR0 = 0x0
+- CR1 = 0x200
+- CR2 = 0x400
+- CR3 = 0x600
+- CRDLY = 0x600
+- CREAD = 0x80
+- CRTSCTS = 0x80000000
+- CS5 = 0x0
+- CS6 = 0x10
+- CS7 = 0x20
+- CS8 = 0x30
+- CSIGNAL = 0xff
+- CSIZE = 0x30
+- CSTART = 0x11
+- CSTATUS = 0x0
+- CSTOP = 0x13
+- CSTOPB = 0x40
+- CSUSP = 0x1a
+- DT_BLK = 0x6
+- DT_CHR = 0x2
+- DT_DIR = 0x4
+- DT_FIFO = 0x1
+- DT_LNK = 0xa
+- DT_REG = 0x8
+- DT_SOCK = 0xc
+- DT_UNKNOWN = 0x0
+- DT_WHT = 0xe
+- ECHO = 0x8
+- ECHOCTL = 0x200
+- ECHOE = 0x10
+- ECHOK = 0x20
+- ECHOKE = 0x800
+- ECHONL = 0x40
+- ECHOPRT = 0x400
+- EFD_CLOEXEC = 0x80000
+- EFD_NONBLOCK = 0x80
+- EFD_SEMAPHORE = 0x1
+- ENCODING_DEFAULT = 0x0
+- ENCODING_FM_MARK = 0x3
+- ENCODING_FM_SPACE = 0x4
+- ENCODING_MANCHESTER = 0x5
+- ENCODING_NRZ = 0x1
+- ENCODING_NRZI = 0x2
+- EPOLLERR = 0x8
+- EPOLLET = 0x80000000
+- EPOLLEXCLUSIVE = 0x10000000
+- EPOLLHUP = 0x10
+- EPOLLIN = 0x1
+- EPOLLMSG = 0x400
+- EPOLLONESHOT = 0x40000000
+- EPOLLOUT = 0x4
+- EPOLLPRI = 0x2
+- EPOLLRDBAND = 0x80
+- EPOLLRDHUP = 0x2000
+- EPOLLRDNORM = 0x40
+- EPOLLWAKEUP = 0x20000000
+- EPOLLWRBAND = 0x200
+- EPOLLWRNORM = 0x100
+- EPOLL_CLOEXEC = 0x80000
+- EPOLL_CTL_ADD = 0x1
+- EPOLL_CTL_DEL = 0x2
+- EPOLL_CTL_MOD = 0x3
+- ETH_P_1588 = 0x88f7
+- ETH_P_8021AD = 0x88a8
+- ETH_P_8021AH = 0x88e7
+- ETH_P_8021Q = 0x8100
+- ETH_P_80221 = 0x8917
+- ETH_P_802_2 = 0x4
+- ETH_P_802_3 = 0x1
+- ETH_P_802_3_MIN = 0x600
+- ETH_P_802_EX1 = 0x88b5
+- ETH_P_AARP = 0x80f3
+- ETH_P_AF_IUCV = 0xfbfb
+- ETH_P_ALL = 0x3
+- ETH_P_AOE = 0x88a2
+- ETH_P_ARCNET = 0x1a
+- ETH_P_ARP = 0x806
+- ETH_P_ATALK = 0x809b
+- ETH_P_ATMFATE = 0x8884
+- ETH_P_ATMMPOA = 0x884c
+- ETH_P_AX25 = 0x2
+- ETH_P_BATMAN = 0x4305
+- ETH_P_BPQ = 0x8ff
+- ETH_P_CAIF = 0xf7
+- ETH_P_CAN = 0xc
+- ETH_P_CANFD = 0xd
+- ETH_P_CONTROL = 0x16
+- ETH_P_CUST = 0x6006
+- ETH_P_DDCMP = 0x6
+- ETH_P_DEC = 0x6000
+- ETH_P_DIAG = 0x6005
+- ETH_P_DNA_DL = 0x6001
+- ETH_P_DNA_RC = 0x6002
+- ETH_P_DNA_RT = 0x6003
+- ETH_P_DSA = 0x1b
+- ETH_P_ECONET = 0x18
+- ETH_P_EDSA = 0xdada
+- ETH_P_FCOE = 0x8906
+- ETH_P_FIP = 0x8914
+- ETH_P_HDLC = 0x19
+- ETH_P_HSR = 0x892f
+- ETH_P_IEEE802154 = 0xf6
+- ETH_P_IEEEPUP = 0xa00
+- ETH_P_IEEEPUPAT = 0xa01
+- ETH_P_IP = 0x800
+- ETH_P_IPV6 = 0x86dd
+- ETH_P_IPX = 0x8137
+- ETH_P_IRDA = 0x17
+- ETH_P_LAT = 0x6004
+- ETH_P_LINK_CTL = 0x886c
+- ETH_P_LOCALTALK = 0x9
+- ETH_P_LOOP = 0x60
+- ETH_P_LOOPBACK = 0x9000
+- ETH_P_MACSEC = 0x88e5
+- ETH_P_MOBITEX = 0x15
+- ETH_P_MPLS_MC = 0x8848
+- ETH_P_MPLS_UC = 0x8847
+- ETH_P_MVRP = 0x88f5
+- ETH_P_NCSI = 0x88f8
+- ETH_P_PAE = 0x888e
+- ETH_P_PAUSE = 0x8808
+- ETH_P_PHONET = 0xf5
+- ETH_P_PPPTALK = 0x10
+- ETH_P_PPP_DISC = 0x8863
+- ETH_P_PPP_MP = 0x8
+- ETH_P_PPP_SES = 0x8864
+- ETH_P_PRP = 0x88fb
+- ETH_P_PUP = 0x200
+- ETH_P_PUPAT = 0x201
+- ETH_P_QINQ1 = 0x9100
+- ETH_P_QINQ2 = 0x9200
+- ETH_P_QINQ3 = 0x9300
+- ETH_P_RARP = 0x8035
+- ETH_P_SCA = 0x6007
+- ETH_P_SLOW = 0x8809
+- ETH_P_SNAP = 0x5
+- ETH_P_TDLS = 0x890d
+- ETH_P_TEB = 0x6558
+- ETH_P_TIPC = 0x88ca
+- ETH_P_TRAILER = 0x1c
+- ETH_P_TR_802_2 = 0x11
+- ETH_P_TSN = 0x22f0
+- ETH_P_WAN_PPP = 0x7
+- ETH_P_WCCP = 0x883e
+- ETH_P_X25 = 0x805
+- ETH_P_XDSA = 0xf8
+- EXTA = 0xe
+- EXTB = 0xf
+- EXTPROC = 0x10000
+- FALLOC_FL_COLLAPSE_RANGE = 0x8
+- FALLOC_FL_INSERT_RANGE = 0x20
+- FALLOC_FL_KEEP_SIZE = 0x1
+- FALLOC_FL_NO_HIDE_STALE = 0x4
+- FALLOC_FL_PUNCH_HOLE = 0x2
+- FALLOC_FL_UNSHARE_RANGE = 0x40
+- FALLOC_FL_ZERO_RANGE = 0x10
+- FD_CLOEXEC = 0x1
+- FD_SETSIZE = 0x400
+- FF0 = 0x0
+- FF1 = 0x8000
+- FFDLY = 0x8000
+- FLUSHO = 0x2000
+- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
+- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
+- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
+- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
+- FS_ENCRYPTION_MODE_INVALID = 0x0
+- FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
+- FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
+- FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
+- FS_KEY_DESCRIPTOR_SIZE = 0x8
+- FS_KEY_DESC_PREFIX = "fscrypt:"
+- FS_KEY_DESC_PREFIX_SIZE = 0x8
+- FS_MAX_KEY_SIZE = 0x40
+- FS_POLICY_FLAGS_PAD_16 = 0x2
+- FS_POLICY_FLAGS_PAD_32 = 0x3
+- FS_POLICY_FLAGS_PAD_4 = 0x0
+- FS_POLICY_FLAGS_PAD_8 = 0x1
+- FS_POLICY_FLAGS_PAD_MASK = 0x3
+- FS_POLICY_FLAGS_VALID = 0x3
+- F_DUPFD = 0x0
+- F_DUPFD_CLOEXEC = 0x406
+- F_EXLCK = 0x4
+- F_GETFD = 0x1
+- F_GETFL = 0x3
+- F_GETLEASE = 0x401
+- F_GETLK = 0xe
+- F_GETLK64 = 0xe
+- F_GETOWN = 0x17
+- F_GETOWN_EX = 0x10
+- F_GETPIPE_SZ = 0x408
+- F_GETSIG = 0xb
+- F_LOCK = 0x1
+- F_NOTIFY = 0x402
+- F_OFD_GETLK = 0x24
+- F_OFD_SETLK = 0x25
+- F_OFD_SETLKW = 0x26
+- F_OK = 0x0
+- F_RDLCK = 0x0
+- F_SETFD = 0x2
+- F_SETFL = 0x4
+- F_SETLEASE = 0x400
+- F_SETLK = 0x6
+- F_SETLK64 = 0x6
+- F_SETLKW = 0x7
+- F_SETLKW64 = 0x7
+- F_SETOWN = 0x18
+- F_SETOWN_EX = 0xf
+- F_SETPIPE_SZ = 0x407
+- F_SETSIG = 0xa
+- F_SHLCK = 0x8
+- F_TEST = 0x3
+- F_TLOCK = 0x2
+- F_ULOCK = 0x0
+- F_UNLCK = 0x2
+- F_WRLCK = 0x1
+- GENL_ADMIN_PERM = 0x1
+- GENL_CMD_CAP_DO = 0x2
+- GENL_CMD_CAP_DUMP = 0x4
+- GENL_CMD_CAP_HASPOL = 0x8
+- GENL_HDRLEN = 0x4
+- GENL_ID_CTRL = 0x10
+- GENL_ID_PMCRAID = 0x12
+- GENL_ID_VFS_DQUOT = 0x11
+- GENL_MAX_ID = 0x3ff
+- GENL_MIN_ID = 0x10
+- GENL_NAMSIZ = 0x10
+- GENL_START_ALLOC = 0x13
+- GENL_UNS_ADMIN_PERM = 0x10
+- GRND_NONBLOCK = 0x1
+- GRND_RANDOM = 0x2
+- HUPCL = 0x400
+- IBSHIFT = 0x10
+- ICANON = 0x2
+- ICMPV6_FILTER = 0x1
+- ICRNL = 0x100
+- IEXTEN = 0x100
+- IFA_F_DADFAILED = 0x8
+- IFA_F_DEPRECATED = 0x20
+- IFA_F_HOMEADDRESS = 0x10
+- IFA_F_MANAGETEMPADDR = 0x100
+- IFA_F_MCAUTOJOIN = 0x400
+- IFA_F_NODAD = 0x2
+- IFA_F_NOPREFIXROUTE = 0x200
+- IFA_F_OPTIMISTIC = 0x4
+- IFA_F_PERMANENT = 0x80
+- IFA_F_SECONDARY = 0x1
+- IFA_F_STABLE_PRIVACY = 0x800
+- IFA_F_TEMPORARY = 0x1
+- IFA_F_TENTATIVE = 0x40
+- IFA_MAX = 0x8
+- IFF_ALLMULTI = 0x200
+- IFF_ATTACH_QUEUE = 0x200
+- IFF_AUTOMEDIA = 0x4000
+- IFF_BROADCAST = 0x2
+- IFF_DEBUG = 0x4
+- IFF_DETACH_QUEUE = 0x400
+- IFF_DORMANT = 0x20000
+- IFF_DYNAMIC = 0x8000
+- IFF_ECHO = 0x40000
+- IFF_LOOPBACK = 0x8
+- IFF_LOWER_UP = 0x10000
+- IFF_MASTER = 0x400
+- IFF_MULTICAST = 0x1000
+- IFF_MULTI_QUEUE = 0x100
+- IFF_NOARP = 0x80
+- IFF_NOFILTER = 0x1000
+- IFF_NOTRAILERS = 0x20
+- IFF_NO_PI = 0x1000
+- IFF_ONE_QUEUE = 0x2000
+- IFF_PERSIST = 0x800
+- IFF_POINTOPOINT = 0x10
+- IFF_PORTSEL = 0x2000
+- IFF_PROMISC = 0x100
+- IFF_RUNNING = 0x40
+- IFF_SLAVE = 0x800
+- IFF_TAP = 0x2
+- IFF_TUN = 0x1
+- IFF_TUN_EXCL = 0x8000
+- IFF_UP = 0x1
+- IFF_VNET_HDR = 0x4000
+- IFF_VOLATILE = 0x70c5a
+- IFNAMSIZ = 0x10
+- IGNBRK = 0x1
+- IGNCR = 0x80
+- IGNPAR = 0x4
+- IMAXBEL = 0x2000
+- INLCR = 0x40
+- INPCK = 0x10
+- IN_ACCESS = 0x1
+- IN_ALL_EVENTS = 0xfff
+- IN_ATTRIB = 0x4
+- IN_CLASSA_HOST = 0xffffff
+- IN_CLASSA_MAX = 0x80
+- IN_CLASSA_NET = 0xff000000
+- IN_CLASSA_NSHIFT = 0x18
+- IN_CLASSB_HOST = 0xffff
+- IN_CLASSB_MAX = 0x10000
+- IN_CLASSB_NET = 0xffff0000
+- IN_CLASSB_NSHIFT = 0x10
+- IN_CLASSC_HOST = 0xff
+- IN_CLASSC_NET = 0xffffff00
+- IN_CLASSC_NSHIFT = 0x8
+- IN_CLOEXEC = 0x80000
+- IN_CLOSE = 0x18
+- IN_CLOSE_NOWRITE = 0x10
+- IN_CLOSE_WRITE = 0x8
+- IN_CREATE = 0x100
+- IN_DELETE = 0x200
+- IN_DELETE_SELF = 0x400
+- IN_DONT_FOLLOW = 0x2000000
+- IN_EXCL_UNLINK = 0x4000000
+- IN_IGNORED = 0x8000
+- IN_ISDIR = 0x40000000
+- IN_LOOPBACKNET = 0x7f
+- IN_MASK_ADD = 0x20000000
+- IN_MODIFY = 0x2
+- IN_MOVE = 0xc0
+- IN_MOVED_FROM = 0x40
+- IN_MOVED_TO = 0x80
+- IN_MOVE_SELF = 0x800
+- IN_NONBLOCK = 0x80
+- IN_ONESHOT = 0x80000000
+- IN_ONLYDIR = 0x1000000
+- IN_OPEN = 0x20
+- IN_Q_OVERFLOW = 0x4000
+- IN_UNMOUNT = 0x2000
+- IPPROTO_AH = 0x33
+- IPPROTO_BEETPH = 0x5e
+- IPPROTO_COMP = 0x6c
+- IPPROTO_DCCP = 0x21
+- IPPROTO_DSTOPTS = 0x3c
+- IPPROTO_EGP = 0x8
+- IPPROTO_ENCAP = 0x62
+- IPPROTO_ESP = 0x32
+- IPPROTO_FRAGMENT = 0x2c
+- IPPROTO_GRE = 0x2f
+- IPPROTO_HOPOPTS = 0x0
+- IPPROTO_ICMP = 0x1
+- IPPROTO_ICMPV6 = 0x3a
+- IPPROTO_IDP = 0x16
+- IPPROTO_IGMP = 0x2
+- IPPROTO_IP = 0x0
+- IPPROTO_IPIP = 0x4
+- IPPROTO_IPV6 = 0x29
+- IPPROTO_MH = 0x87
+- IPPROTO_MPLS = 0x89
+- IPPROTO_MTP = 0x5c
+- IPPROTO_NONE = 0x3b
+- IPPROTO_PIM = 0x67
+- IPPROTO_PUP = 0xc
+- IPPROTO_RAW = 0xff
+- IPPROTO_ROUTING = 0x2b
+- IPPROTO_RSVP = 0x2e
+- IPPROTO_SCTP = 0x84
+- IPPROTO_TCP = 0x6
+- IPPROTO_TP = 0x1d
+- IPPROTO_UDP = 0x11
+- IPPROTO_UDPLITE = 0x88
+- IPV6_2292DSTOPTS = 0x4
+- IPV6_2292HOPLIMIT = 0x8
+- IPV6_2292HOPOPTS = 0x3
+- IPV6_2292PKTINFO = 0x2
+- IPV6_2292PKTOPTIONS = 0x6
+- IPV6_2292RTHDR = 0x5
+- IPV6_ADDRFORM = 0x1
+- IPV6_ADD_MEMBERSHIP = 0x14
+- IPV6_AUTHHDR = 0xa
+- IPV6_CHECKSUM = 0x7
+- IPV6_DONTFRAG = 0x3e
+- IPV6_DROP_MEMBERSHIP = 0x15
+- IPV6_DSTOPTS = 0x3b
+- IPV6_HDRINCL = 0x24
+- IPV6_HOPLIMIT = 0x34
+- IPV6_HOPOPTS = 0x36
+- IPV6_IPSEC_POLICY = 0x22
+- IPV6_JOIN_ANYCAST = 0x1b
+- IPV6_JOIN_GROUP = 0x14
+- IPV6_LEAVE_ANYCAST = 0x1c
+- IPV6_LEAVE_GROUP = 0x15
+- IPV6_MTU = 0x18
+- IPV6_MTU_DISCOVER = 0x17
+- IPV6_MULTICAST_HOPS = 0x12
+- IPV6_MULTICAST_IF = 0x11
+- IPV6_MULTICAST_LOOP = 0x13
+- IPV6_NEXTHOP = 0x9
+- IPV6_PATHMTU = 0x3d
+- IPV6_PKTINFO = 0x32
+- IPV6_PMTUDISC_DO = 0x2
+- IPV6_PMTUDISC_DONT = 0x0
+- IPV6_PMTUDISC_INTERFACE = 0x4
+- IPV6_PMTUDISC_OMIT = 0x5
+- IPV6_PMTUDISC_PROBE = 0x3
+- IPV6_PMTUDISC_WANT = 0x1
+- IPV6_RECVDSTOPTS = 0x3a
+- IPV6_RECVERR = 0x19
+- IPV6_RECVHOPLIMIT = 0x33
+- IPV6_RECVHOPOPTS = 0x35
+- IPV6_RECVPATHMTU = 0x3c
+- IPV6_RECVPKTINFO = 0x31
+- IPV6_RECVRTHDR = 0x38
+- IPV6_RECVTCLASS = 0x42
+- IPV6_ROUTER_ALERT = 0x16
+- IPV6_RTHDR = 0x39
+- IPV6_RTHDRDSTOPTS = 0x37
+- IPV6_RTHDR_LOOSE = 0x0
+- IPV6_RTHDR_STRICT = 0x1
+- IPV6_RTHDR_TYPE_0 = 0x0
+- IPV6_RXDSTOPTS = 0x3b
+- IPV6_RXHOPOPTS = 0x36
+- IPV6_TCLASS = 0x43
+- IPV6_UNICAST_HOPS = 0x10
+- IPV6_V6ONLY = 0x1a
+- IPV6_XFRM_POLICY = 0x23
+- IP_ADD_MEMBERSHIP = 0x23
+- IP_ADD_SOURCE_MEMBERSHIP = 0x27
+- IP_BIND_ADDRESS_NO_PORT = 0x18
+- IP_BLOCK_SOURCE = 0x26
+- IP_CHECKSUM = 0x17
+- IP_DEFAULT_MULTICAST_LOOP = 0x1
+- IP_DEFAULT_MULTICAST_TTL = 0x1
+- IP_DF = 0x4000
+- IP_DROP_MEMBERSHIP = 0x24
+- IP_DROP_SOURCE_MEMBERSHIP = 0x28
+- IP_FREEBIND = 0xf
+- IP_HDRINCL = 0x3
+- IP_IPSEC_POLICY = 0x10
+- IP_MAXPACKET = 0xffff
+- IP_MAX_MEMBERSHIPS = 0x14
+- IP_MF = 0x2000
+- IP_MINTTL = 0x15
+- IP_MSFILTER = 0x29
+- IP_MSS = 0x240
+- IP_MTU = 0xe
+- IP_MTU_DISCOVER = 0xa
+- IP_MULTICAST_ALL = 0x31
+- IP_MULTICAST_IF = 0x20
+- IP_MULTICAST_LOOP = 0x22
+- IP_MULTICAST_TTL = 0x21
+- IP_NODEFRAG = 0x16
+- IP_OFFMASK = 0x1fff
+- IP_OPTIONS = 0x4
+- IP_ORIGDSTADDR = 0x14
+- IP_PASSSEC = 0x12
+- IP_PKTINFO = 0x8
+- IP_PKTOPTIONS = 0x9
+- IP_PMTUDISC = 0xa
+- IP_PMTUDISC_DO = 0x2
+- IP_PMTUDISC_DONT = 0x0
+- IP_PMTUDISC_INTERFACE = 0x4
+- IP_PMTUDISC_OMIT = 0x5
+- IP_PMTUDISC_PROBE = 0x3
+- IP_PMTUDISC_WANT = 0x1
+- IP_RECVERR = 0xb
+- IP_RECVOPTS = 0x6
+- IP_RECVORIGDSTADDR = 0x14
+- IP_RECVRETOPTS = 0x7
+- IP_RECVTOS = 0xd
+- IP_RECVTTL = 0xc
+- IP_RETOPTS = 0x7
+- IP_RF = 0x8000
+- IP_ROUTER_ALERT = 0x5
+- IP_TOS = 0x1
+- IP_TRANSPARENT = 0x13
+- IP_TTL = 0x2
+- IP_UNBLOCK_SOURCE = 0x25
+- IP_UNICAST_IF = 0x32
+- IP_XFRM_POLICY = 0x11
+- ISIG = 0x1
+- ISTRIP = 0x20
+- IUCLC = 0x200
+- IUTF8 = 0x4000
+- IXANY = 0x800
+- IXOFF = 0x1000
+- IXON = 0x400
+- KEYCTL_ASSUME_AUTHORITY = 0x10
+- KEYCTL_CHOWN = 0x4
+- KEYCTL_CLEAR = 0x7
+- KEYCTL_DESCRIBE = 0x6
+- KEYCTL_DH_COMPUTE = 0x17
+- KEYCTL_GET_KEYRING_ID = 0x0
+- KEYCTL_GET_PERSISTENT = 0x16
+- KEYCTL_GET_SECURITY = 0x11
+- KEYCTL_INSTANTIATE = 0xc
+- KEYCTL_INSTANTIATE_IOV = 0x14
+- KEYCTL_INVALIDATE = 0x15
+- KEYCTL_JOIN_SESSION_KEYRING = 0x1
+- KEYCTL_LINK = 0x8
+- KEYCTL_NEGATE = 0xd
+- KEYCTL_READ = 0xb
+- KEYCTL_REJECT = 0x13
+- KEYCTL_REVOKE = 0x3
+- KEYCTL_SEARCH = 0xa
+- KEYCTL_SESSION_TO_PARENT = 0x12
+- KEYCTL_SETPERM = 0x5
+- KEYCTL_SET_REQKEY_KEYRING = 0xe
+- KEYCTL_SET_TIMEOUT = 0xf
+- KEYCTL_UNLINK = 0x9
+- KEYCTL_UPDATE = 0x2
+- KEY_REQKEY_DEFL_DEFAULT = 0x0
+- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
+- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
+- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
+- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
+- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
+- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
+- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
+- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
+- KEY_SPEC_GROUP_KEYRING = -0x6
+- KEY_SPEC_PROCESS_KEYRING = -0x2
+- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
+- KEY_SPEC_REQUESTOR_KEYRING = -0x8
+- KEY_SPEC_SESSION_KEYRING = -0x3
+- KEY_SPEC_THREAD_KEYRING = -0x1
+- KEY_SPEC_USER_KEYRING = -0x4
+- KEY_SPEC_USER_SESSION_KEYRING = -0x5
+- LINUX_REBOOT_CMD_CAD_OFF = 0x0
+- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
+- LINUX_REBOOT_CMD_HALT = 0xcdef0123
+- LINUX_REBOOT_CMD_KEXEC = 0x45584543
+- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
+- LINUX_REBOOT_CMD_RESTART = 0x1234567
+- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
+- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
+- LINUX_REBOOT_MAGIC1 = 0xfee1dead
+- LINUX_REBOOT_MAGIC2 = 0x28121969
+- LOCK_EX = 0x2
+- LOCK_NB = 0x4
+- LOCK_SH = 0x1
+- LOCK_UN = 0x8
+- MADV_DODUMP = 0x11
+- MADV_DOFORK = 0xb
+- MADV_DONTDUMP = 0x10
+- MADV_DONTFORK = 0xa
+- MADV_DONTNEED = 0x4
+- MADV_FREE = 0x8
+- MADV_HUGEPAGE = 0xe
+- MADV_HWPOISON = 0x64
+- MADV_MERGEABLE = 0xc
+- MADV_NOHUGEPAGE = 0xf
+- MADV_NORMAL = 0x0
+- MADV_RANDOM = 0x1
+- MADV_REMOVE = 0x9
+- MADV_SEQUENTIAL = 0x2
+- MADV_UNMERGEABLE = 0xd
+- MADV_WILLNEED = 0x3
+- MAP_ANON = 0x800
+- MAP_ANONYMOUS = 0x800
+- MAP_DENYWRITE = 0x2000
+- MAP_EXECUTABLE = 0x4000
+- MAP_FILE = 0x0
+- MAP_FIXED = 0x10
+- MAP_GROWSDOWN = 0x1000
+- MAP_HUGETLB = 0x80000
+- MAP_HUGE_MASK = 0x3f
+- MAP_HUGE_SHIFT = 0x1a
+- MAP_LOCKED = 0x8000
+- MAP_NONBLOCK = 0x20000
+- MAP_NORESERVE = 0x400
+- MAP_POPULATE = 0x10000
+- MAP_PRIVATE = 0x2
+- MAP_RENAME = 0x800
+- MAP_SHARED = 0x1
+- MAP_STACK = 0x40000
+- MAP_TYPE = 0xf
+- MCL_CURRENT = 0x1
+- MCL_FUTURE = 0x2
+- MCL_ONFAULT = 0x4
+- MNT_DETACH = 0x2
+- MNT_EXPIRE = 0x4
+- MNT_FORCE = 0x1
+- MSG_BATCH = 0x40000
+- MSG_CMSG_CLOEXEC = 0x40000000
+- MSG_CONFIRM = 0x800
+- MSG_CTRUNC = 0x8
+- MSG_DONTROUTE = 0x4
+- MSG_DONTWAIT = 0x40
+- MSG_EOR = 0x80
+- MSG_ERRQUEUE = 0x2000
+- MSG_FASTOPEN = 0x20000000
+- MSG_FIN = 0x200
+- MSG_MORE = 0x8000
+- MSG_NOSIGNAL = 0x4000
+- MSG_OOB = 0x1
+- MSG_PEEK = 0x2
+- MSG_PROXY = 0x10
+- MSG_RST = 0x1000
+- MSG_SYN = 0x400
+- MSG_TRUNC = 0x20
+- MSG_TRYHARD = 0x4
+- MSG_WAITALL = 0x100
+- MSG_WAITFORONE = 0x10000
+- MS_ACTIVE = 0x40000000
+- MS_ASYNC = 0x1
+- MS_BIND = 0x1000
+- MS_BORN = 0x20000000
+- MS_DIRSYNC = 0x80
+- MS_INVALIDATE = 0x2
+- MS_I_VERSION = 0x800000
+- MS_KERNMOUNT = 0x400000
+- MS_LAZYTIME = 0x2000000
+- MS_MANDLOCK = 0x40
+- MS_MGC_MSK = 0xffff0000
+- MS_MGC_VAL = 0xc0ed0000
+- MS_MOVE = 0x2000
+- MS_NOATIME = 0x400
+- MS_NODEV = 0x4
+- MS_NODIRATIME = 0x800
+- MS_NOEXEC = 0x8
+- MS_NOREMOTELOCK = 0x8000000
+- MS_NOSEC = 0x10000000
+- MS_NOSUID = 0x2
+- MS_NOUSER = -0x80000000
+- MS_POSIXACL = 0x10000
+- MS_PRIVATE = 0x40000
+- MS_RDONLY = 0x1
+- MS_REC = 0x4000
+- MS_RELATIME = 0x200000
+- MS_REMOUNT = 0x20
+- MS_RMT_MASK = 0x2800051
+- MS_SHARED = 0x100000
+- MS_SILENT = 0x8000
+- MS_SLAVE = 0x80000
+- MS_STRICTATIME = 0x1000000
+- MS_SYNC = 0x4
+- MS_SYNCHRONOUS = 0x10
+- MS_UNBINDABLE = 0x20000
+- MS_VERBOSE = 0x8000
+- NAME_MAX = 0xff
+- NETLINK_ADD_MEMBERSHIP = 0x1
+- NETLINK_AUDIT = 0x9
+- NETLINK_BROADCAST_ERROR = 0x4
+- NETLINK_CAP_ACK = 0xa
+- NETLINK_CONNECTOR = 0xb
+- NETLINK_CRYPTO = 0x15
+- NETLINK_DNRTMSG = 0xe
+- NETLINK_DROP_MEMBERSHIP = 0x2
+- NETLINK_ECRYPTFS = 0x13
+- NETLINK_FIB_LOOKUP = 0xa
+- NETLINK_FIREWALL = 0x3
+- NETLINK_GENERIC = 0x10
+- NETLINK_INET_DIAG = 0x4
+- NETLINK_IP6_FW = 0xd
+- NETLINK_ISCSI = 0x8
+- NETLINK_KOBJECT_UEVENT = 0xf
+- NETLINK_LISTEN_ALL_NSID = 0x8
+- NETLINK_LIST_MEMBERSHIPS = 0x9
+- NETLINK_NETFILTER = 0xc
+- NETLINK_NFLOG = 0x5
+- NETLINK_NO_ENOBUFS = 0x5
+- NETLINK_PKTINFO = 0x3
+- NETLINK_RDMA = 0x14
+- NETLINK_ROUTE = 0x0
+- NETLINK_RX_RING = 0x6
+- NETLINK_SCSITRANSPORT = 0x12
+- NETLINK_SELINUX = 0x7
+- NETLINK_SOCK_DIAG = 0x4
+- NETLINK_TX_RING = 0x7
+- NETLINK_UNUSED = 0x1
+- NETLINK_USERSOCK = 0x2
+- NETLINK_XFRM = 0x6
+- NL0 = 0x0
+- NL1 = 0x100
+- NLA_ALIGNTO = 0x4
+- NLA_F_NESTED = 0x8000
+- NLA_F_NET_BYTEORDER = 0x4000
+- NLA_HDRLEN = 0x4
+- NLDLY = 0x100
+- NLMSG_ALIGNTO = 0x4
+- NLMSG_DONE = 0x3
+- NLMSG_ERROR = 0x2
+- NLMSG_HDRLEN = 0x10
+- NLMSG_MIN_TYPE = 0x10
+- NLMSG_NOOP = 0x1
+- NLMSG_OVERRUN = 0x4
+- NLM_F_ACK = 0x4
+- NLM_F_APPEND = 0x800
+- NLM_F_ATOMIC = 0x400
+- NLM_F_CREATE = 0x400
+- NLM_F_DUMP = 0x300
+- NLM_F_DUMP_FILTERED = 0x20
+- NLM_F_DUMP_INTR = 0x10
+- NLM_F_ECHO = 0x8
+- NLM_F_EXCL = 0x200
+- NLM_F_MATCH = 0x200
+- NLM_F_MULTI = 0x2
+- NLM_F_REPLACE = 0x100
+- NLM_F_REQUEST = 0x1
+- NLM_F_ROOT = 0x100
+- NOFLSH = 0x80
+- OCRNL = 0x8
+- OFDEL = 0x80
+- OFILL = 0x40
+- OLCUC = 0x2
+- ONLCR = 0x4
+- ONLRET = 0x20
+- ONOCR = 0x10
+- OPOST = 0x1
+- O_ACCMODE = 0x3
+- O_APPEND = 0x8
+- O_ASYNC = 0x1000
+- O_CLOEXEC = 0x80000
+- O_CREAT = 0x100
+- O_DIRECT = 0x8000
+- O_DIRECTORY = 0x10000
+- O_DSYNC = 0x10
+- O_EXCL = 0x400
+- O_FSYNC = 0x4010
+- O_LARGEFILE = 0x0
+- O_NDELAY = 0x80
+- O_NOATIME = 0x40000
+- O_NOCTTY = 0x800
+- O_NOFOLLOW = 0x20000
+- O_NONBLOCK = 0x80
+- O_PATH = 0x200000
+- O_RDONLY = 0x0
+- O_RDWR = 0x2
+- O_RSYNC = 0x4010
+- O_SYNC = 0x4010
+- O_TMPFILE = 0x410000
+- O_TRUNC = 0x200
+- O_WRONLY = 0x1
+- PACKET_ADD_MEMBERSHIP = 0x1
+- PACKET_AUXDATA = 0x8
+- PACKET_BROADCAST = 0x1
+- PACKET_COPY_THRESH = 0x7
+- PACKET_DROP_MEMBERSHIP = 0x2
+- PACKET_FANOUT = 0x12
+- PACKET_FANOUT_CBPF = 0x6
+- PACKET_FANOUT_CPU = 0x2
+- PACKET_FANOUT_DATA = 0x16
+- PACKET_FANOUT_EBPF = 0x7
+- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
+- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
+- PACKET_FANOUT_HASH = 0x0
+- PACKET_FANOUT_LB = 0x1
+- PACKET_FANOUT_QM = 0x5
+- PACKET_FANOUT_RND = 0x4
+- PACKET_FANOUT_ROLLOVER = 0x3
+- PACKET_FASTROUTE = 0x6
+- PACKET_HDRLEN = 0xb
+- PACKET_HOST = 0x0
+- PACKET_KERNEL = 0x7
+- PACKET_LOOPBACK = 0x5
+- PACKET_LOSS = 0xe
+- PACKET_MR_ALLMULTI = 0x2
+- PACKET_MR_MULTICAST = 0x0
+- PACKET_MR_PROMISC = 0x1
+- PACKET_MR_UNICAST = 0x3
+- PACKET_MULTICAST = 0x2
+- PACKET_ORIGDEV = 0x9
+- PACKET_OTHERHOST = 0x3
+- PACKET_OUTGOING = 0x4
+- PACKET_QDISC_BYPASS = 0x14
+- PACKET_RECV_OUTPUT = 0x3
+- PACKET_RESERVE = 0xc
+- PACKET_ROLLOVER_STATS = 0x15
+- PACKET_RX_RING = 0x5
+- PACKET_STATISTICS = 0x6
+- PACKET_TIMESTAMP = 0x11
+- PACKET_TX_HAS_OFF = 0x13
+- PACKET_TX_RING = 0xd
+- PACKET_TX_TIMESTAMP = 0x10
+- PACKET_USER = 0x6
+- PACKET_VERSION = 0xa
+- PACKET_VNET_HDR = 0xf
+- PARENB = 0x100
+- PARITY_CRC16_PR0 = 0x2
+- PARITY_CRC16_PR0_CCITT = 0x4
+- PARITY_CRC16_PR1 = 0x3
+- PARITY_CRC16_PR1_CCITT = 0x5
+- PARITY_CRC32_PR0_CCITT = 0x6
+- PARITY_CRC32_PR1_CCITT = 0x7
+- PARITY_DEFAULT = 0x0
+- PARITY_NONE = 0x1
+- PARMRK = 0x8
+- PARODD = 0x200
+- PENDIN = 0x4000
+- PERF_EVENT_IOC_DISABLE = 0x20002401
+- PERF_EVENT_IOC_ENABLE = 0x20002400
+- PERF_EVENT_IOC_ID = 0x40082407
+- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
+- PERF_EVENT_IOC_PERIOD = 0x80082404
+- PERF_EVENT_IOC_REFRESH = 0x20002402
+- PERF_EVENT_IOC_RESET = 0x20002403
+- PERF_EVENT_IOC_SET_BPF = 0x80042408
+- PERF_EVENT_IOC_SET_FILTER = 0x80082406
+- PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
+- PRIO_PGRP = 0x1
+- PRIO_PROCESS = 0x0
+- PRIO_USER = 0x2
+- PROT_EXEC = 0x4
+- PROT_GROWSDOWN = 0x1000000
+- PROT_GROWSUP = 0x2000000
+- PROT_NONE = 0x0
+- PROT_READ = 0x1
+- PROT_WRITE = 0x2
+- PR_CAPBSET_DROP = 0x18
+- PR_CAPBSET_READ = 0x17
+- PR_CAP_AMBIENT = 0x2f
+- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
+- PR_CAP_AMBIENT_IS_SET = 0x1
+- PR_CAP_AMBIENT_LOWER = 0x3
+- PR_CAP_AMBIENT_RAISE = 0x2
+- PR_ENDIAN_BIG = 0x0
+- PR_ENDIAN_LITTLE = 0x1
+- PR_ENDIAN_PPC_LITTLE = 0x2
+- PR_FPEMU_NOPRINT = 0x1
+- PR_FPEMU_SIGFPE = 0x2
+- PR_FP_EXC_ASYNC = 0x2
+- PR_FP_EXC_DISABLED = 0x0
+- PR_FP_EXC_DIV = 0x10000
+- PR_FP_EXC_INV = 0x100000
+- PR_FP_EXC_NONRECOV = 0x1
+- PR_FP_EXC_OVF = 0x20000
+- PR_FP_EXC_PRECISE = 0x3
+- PR_FP_EXC_RES = 0x80000
+- PR_FP_EXC_SW_ENABLE = 0x80
+- PR_FP_EXC_UND = 0x40000
+- PR_FP_MODE_FR = 0x1
+- PR_FP_MODE_FRE = 0x2
+- PR_GET_CHILD_SUBREAPER = 0x25
+- PR_GET_DUMPABLE = 0x3
+- PR_GET_ENDIAN = 0x13
+- PR_GET_FPEMU = 0x9
+- PR_GET_FPEXC = 0xb
+- PR_GET_FP_MODE = 0x2e
+- PR_GET_KEEPCAPS = 0x7
+- PR_GET_NAME = 0x10
+- PR_GET_NO_NEW_PRIVS = 0x27
+- PR_GET_PDEATHSIG = 0x2
+- PR_GET_SECCOMP = 0x15
+- PR_GET_SECUREBITS = 0x1b
+- PR_GET_THP_DISABLE = 0x2a
+- PR_GET_TID_ADDRESS = 0x28
+- PR_GET_TIMERSLACK = 0x1e
+- PR_GET_TIMING = 0xd
+- PR_GET_TSC = 0x19
+- PR_GET_UNALIGN = 0x5
+- PR_MCE_KILL = 0x21
+- PR_MCE_KILL_CLEAR = 0x0
+- PR_MCE_KILL_DEFAULT = 0x2
+- PR_MCE_KILL_EARLY = 0x1
+- PR_MCE_KILL_GET = 0x22
+- PR_MCE_KILL_LATE = 0x0
+- PR_MCE_KILL_SET = 0x1
+- PR_MPX_DISABLE_MANAGEMENT = 0x2c
+- PR_MPX_ENABLE_MANAGEMENT = 0x2b
+- PR_SET_CHILD_SUBREAPER = 0x24
+- PR_SET_DUMPABLE = 0x4
+- PR_SET_ENDIAN = 0x14
+- PR_SET_FPEMU = 0xa
+- PR_SET_FPEXC = 0xc
+- PR_SET_FP_MODE = 0x2d
+- PR_SET_KEEPCAPS = 0x8
+- PR_SET_MM = 0x23
+- PR_SET_MM_ARG_END = 0x9
+- PR_SET_MM_ARG_START = 0x8
+- PR_SET_MM_AUXV = 0xc
+- PR_SET_MM_BRK = 0x7
+- PR_SET_MM_END_CODE = 0x2
+- PR_SET_MM_END_DATA = 0x4
+- PR_SET_MM_ENV_END = 0xb
+- PR_SET_MM_ENV_START = 0xa
+- PR_SET_MM_EXE_FILE = 0xd
+- PR_SET_MM_MAP = 0xe
+- PR_SET_MM_MAP_SIZE = 0xf
+- PR_SET_MM_START_BRK = 0x6
+- PR_SET_MM_START_CODE = 0x1
+- PR_SET_MM_START_DATA = 0x3
+- PR_SET_MM_START_STACK = 0x5
+- PR_SET_NAME = 0xf
+- PR_SET_NO_NEW_PRIVS = 0x26
+- PR_SET_PDEATHSIG = 0x1
+- PR_SET_PTRACER = 0x59616d61
+- PR_SET_PTRACER_ANY = -0x1
+- PR_SET_SECCOMP = 0x16
+- PR_SET_SECUREBITS = 0x1c
+- PR_SET_THP_DISABLE = 0x29
+- PR_SET_TIMERSLACK = 0x1d
+- PR_SET_TIMING = 0xe
+- PR_SET_TSC = 0x1a
+- PR_SET_UNALIGN = 0x6
+- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
+- PR_TASK_PERF_EVENTS_ENABLE = 0x20
+- PR_TIMING_STATISTICAL = 0x0
+- PR_TIMING_TIMESTAMP = 0x1
+- PR_TSC_ENABLE = 0x1
+- PR_TSC_SIGSEGV = 0x2
+- PR_UNALIGN_NOPRINT = 0x1
+- PR_UNALIGN_SIGBUS = 0x2
+- PTRACE_ATTACH = 0x10
+- PTRACE_CONT = 0x7
+- PTRACE_DETACH = 0x11
+- PTRACE_EVENT_CLONE = 0x3
+- PTRACE_EVENT_EXEC = 0x4
+- PTRACE_EVENT_EXIT = 0x6
+- PTRACE_EVENT_FORK = 0x1
+- PTRACE_EVENT_SECCOMP = 0x7
+- PTRACE_EVENT_STOP = 0x80
+- PTRACE_EVENT_VFORK = 0x2
+- PTRACE_EVENT_VFORK_DONE = 0x5
+- PTRACE_GETEVENTMSG = 0x4201
+- PTRACE_GETFPREGS = 0xe
+- PTRACE_GETREGS = 0xc
+- PTRACE_GETREGSET = 0x4204
+- PTRACE_GETSIGINFO = 0x4202
+- PTRACE_GETSIGMASK = 0x420a
+- PTRACE_GET_THREAD_AREA = 0x19
+- PTRACE_GET_THREAD_AREA_3264 = 0xc4
+- PTRACE_GET_WATCH_REGS = 0xd0
+- PTRACE_INTERRUPT = 0x4207
+- PTRACE_KILL = 0x8
+- PTRACE_LISTEN = 0x4208
+- PTRACE_OLDSETOPTIONS = 0x15
+- PTRACE_O_EXITKILL = 0x100000
+- PTRACE_O_MASK = 0x3000ff
+- PTRACE_O_SUSPEND_SECCOMP = 0x200000
+- PTRACE_O_TRACECLONE = 0x8
+- PTRACE_O_TRACEEXEC = 0x10
+- PTRACE_O_TRACEEXIT = 0x40
+- PTRACE_O_TRACEFORK = 0x2
+- PTRACE_O_TRACESECCOMP = 0x80
+- PTRACE_O_TRACESYSGOOD = 0x1
+- PTRACE_O_TRACEVFORK = 0x4
+- PTRACE_O_TRACEVFORKDONE = 0x20
+- PTRACE_PEEKDATA = 0x2
+- PTRACE_PEEKDATA_3264 = 0xc1
+- PTRACE_PEEKSIGINFO = 0x4209
+- PTRACE_PEEKSIGINFO_SHARED = 0x1
+- PTRACE_PEEKTEXT = 0x1
+- PTRACE_PEEKTEXT_3264 = 0xc0
+- PTRACE_PEEKUSR = 0x3
+- PTRACE_POKEDATA = 0x5
+- PTRACE_POKEDATA_3264 = 0xc3
+- PTRACE_POKETEXT = 0x4
+- PTRACE_POKETEXT_3264 = 0xc2
+- PTRACE_POKEUSR = 0x6
+- PTRACE_SECCOMP_GET_FILTER = 0x420c
+- PTRACE_SEIZE = 0x4206
+- PTRACE_SETFPREGS = 0xf
+- PTRACE_SETOPTIONS = 0x4200
+- PTRACE_SETREGS = 0xd
+- PTRACE_SETREGSET = 0x4205
+- PTRACE_SETSIGINFO = 0x4203
+- PTRACE_SETSIGMASK = 0x420b
+- PTRACE_SET_THREAD_AREA = 0x1a
+- PTRACE_SET_WATCH_REGS = 0xd1
+- PTRACE_SINGLESTEP = 0x9
+- PTRACE_SYSCALL = 0x18
+- PTRACE_TRACEME = 0x0
+- RLIMIT_AS = 0x6
+- RLIMIT_CORE = 0x4
+- RLIMIT_CPU = 0x0
+- RLIMIT_DATA = 0x2
+- RLIMIT_FSIZE = 0x1
+- RLIMIT_LOCKS = 0xa
+- RLIMIT_MEMLOCK = 0x9
+- RLIMIT_MSGQUEUE = 0xc
+- RLIMIT_NICE = 0xd
+- RLIMIT_NOFILE = 0x5
+- RLIMIT_NPROC = 0x8
+- RLIMIT_RSS = 0x7
+- RLIMIT_RTPRIO = 0xe
+- RLIMIT_RTTIME = 0xf
+- RLIMIT_SIGPENDING = 0xb
+- RLIMIT_STACK = 0x3
+- RLIM_INFINITY = -0x1
+- RTAX_ADVMSS = 0x8
+- RTAX_CC_ALGO = 0x10
+- RTAX_CWND = 0x7
+- RTAX_FEATURES = 0xc
+- RTAX_FEATURE_ALLFRAG = 0x8
+- RTAX_FEATURE_ECN = 0x1
+- RTAX_FEATURE_MASK = 0xf
+- RTAX_FEATURE_SACK = 0x2
+- RTAX_FEATURE_TIMESTAMP = 0x4
+- RTAX_HOPLIMIT = 0xa
+- RTAX_INITCWND = 0xb
+- RTAX_INITRWND = 0xe
+- RTAX_LOCK = 0x1
+- RTAX_MAX = 0x10
+- RTAX_MTU = 0x2
+- RTAX_QUICKACK = 0xf
+- RTAX_REORDERING = 0x9
+- RTAX_RTO_MIN = 0xd
+- RTAX_RTT = 0x4
+- RTAX_RTTVAR = 0x5
+- RTAX_SSTHRESH = 0x6
+- RTAX_UNSPEC = 0x0
+- RTAX_WINDOW = 0x3
+- RTA_ALIGNTO = 0x4
+- RTA_MAX = 0x19
+- RTCF_DIRECTSRC = 0x4000000
+- RTCF_DOREDIRECT = 0x1000000
+- RTCF_LOG = 0x2000000
+- RTCF_MASQ = 0x400000
+- RTCF_NAT = 0x800000
+- RTCF_VALVE = 0x200000
+- RTF_ADDRCLASSMASK = 0xf8000000
+- RTF_ADDRCONF = 0x40000
+- RTF_ALLONLINK = 0x20000
+- RTF_BROADCAST = 0x10000000
+- RTF_CACHE = 0x1000000
+- RTF_DEFAULT = 0x10000
+- RTF_DYNAMIC = 0x10
+- RTF_FLOW = 0x2000000
+- RTF_GATEWAY = 0x2
+- RTF_HOST = 0x4
+- RTF_INTERFACE = 0x40000000
+- RTF_IRTT = 0x100
+- RTF_LINKRT = 0x100000
+- RTF_LOCAL = 0x80000000
+- RTF_MODIFIED = 0x20
+- RTF_MSS = 0x40
+- RTF_MTU = 0x40
+- RTF_MULTICAST = 0x20000000
+- RTF_NAT = 0x8000000
+- RTF_NOFORWARD = 0x1000
+- RTF_NONEXTHOP = 0x200000
+- RTF_NOPMTUDISC = 0x4000
+- RTF_POLICY = 0x4000000
+- RTF_REINSTATE = 0x8
+- RTF_REJECT = 0x200
+- RTF_STATIC = 0x400
+- RTF_THROW = 0x2000
+- RTF_UP = 0x1
+- RTF_WINDOW = 0x80
+- RTF_XRESOLVE = 0x800
+- RTM_BASE = 0x10
+- RTM_DELACTION = 0x31
+- RTM_DELADDR = 0x15
+- RTM_DELADDRLABEL = 0x49
+- RTM_DELLINK = 0x11
+- RTM_DELMDB = 0x55
+- RTM_DELNEIGH = 0x1d
+- RTM_DELNSID = 0x59
+- RTM_DELQDISC = 0x25
+- RTM_DELROUTE = 0x19
+- RTM_DELRULE = 0x21
+- RTM_DELTCLASS = 0x29
+- RTM_DELTFILTER = 0x2d
+- RTM_F_CLONED = 0x200
+- RTM_F_EQUALIZE = 0x400
+- RTM_F_LOOKUP_TABLE = 0x1000
+- RTM_F_NOTIFY = 0x100
+- RTM_F_PREFIX = 0x800
+- RTM_GETACTION = 0x32
+- RTM_GETADDR = 0x16
+- RTM_GETADDRLABEL = 0x4a
+- RTM_GETANYCAST = 0x3e
+- RTM_GETDCB = 0x4e
+- RTM_GETLINK = 0x12
+- RTM_GETMDB = 0x56
+- RTM_GETMULTICAST = 0x3a
+- RTM_GETNEIGH = 0x1e
+- RTM_GETNEIGHTBL = 0x42
+- RTM_GETNETCONF = 0x52
+- RTM_GETNSID = 0x5a
+- RTM_GETQDISC = 0x26
+- RTM_GETROUTE = 0x1a
+- RTM_GETRULE = 0x22
+- RTM_GETSTATS = 0x5e
+- RTM_GETTCLASS = 0x2a
+- RTM_GETTFILTER = 0x2e
+- RTM_MAX = 0x5f
+- RTM_NEWACTION = 0x30
+- RTM_NEWADDR = 0x14
+- RTM_NEWADDRLABEL = 0x48
+- RTM_NEWLINK = 0x10
+- RTM_NEWMDB = 0x54
+- RTM_NEWNDUSEROPT = 0x44
+- RTM_NEWNEIGH = 0x1c
+- RTM_NEWNEIGHTBL = 0x40
+- RTM_NEWNETCONF = 0x50
+- RTM_NEWNSID = 0x58
+- RTM_NEWPREFIX = 0x34
+- RTM_NEWQDISC = 0x24
+- RTM_NEWROUTE = 0x18
+- RTM_NEWRULE = 0x20
+- RTM_NEWSTATS = 0x5c
+- RTM_NEWTCLASS = 0x28
+- RTM_NEWTFILTER = 0x2c
+- RTM_NR_FAMILIES = 0x14
+- RTM_NR_MSGTYPES = 0x50
+- RTM_SETDCB = 0x4f
+- RTM_SETLINK = 0x13
+- RTM_SETNEIGHTBL = 0x43
+- RTNH_ALIGNTO = 0x4
+- RTNH_COMPARE_MASK = 0x19
+- RTNH_F_DEAD = 0x1
+- RTNH_F_LINKDOWN = 0x10
+- RTNH_F_OFFLOAD = 0x8
+- RTNH_F_ONLINK = 0x4
+- RTNH_F_PERVASIVE = 0x2
+- RTN_MAX = 0xb
+- RTPROT_BABEL = 0x2a
+- RTPROT_BIRD = 0xc
+- RTPROT_BOOT = 0x3
+- RTPROT_DHCP = 0x10
+- RTPROT_DNROUTED = 0xd
+- RTPROT_GATED = 0x8
+- RTPROT_KERNEL = 0x2
+- RTPROT_MROUTED = 0x11
+- RTPROT_MRT = 0xa
+- RTPROT_NTK = 0xf
+- RTPROT_RA = 0x9
+- RTPROT_REDIRECT = 0x1
+- RTPROT_STATIC = 0x4
+- RTPROT_UNSPEC = 0x0
+- RTPROT_XORP = 0xe
+- RTPROT_ZEBRA = 0xb
+- RT_CLASS_DEFAULT = 0xfd
+- RT_CLASS_LOCAL = 0xff
+- RT_CLASS_MAIN = 0xfe
+- RT_CLASS_MAX = 0xff
+- RT_CLASS_UNSPEC = 0x0
+- RUSAGE_CHILDREN = -0x1
+- RUSAGE_SELF = 0x0
+- RUSAGE_THREAD = 0x1
+- SCM_CREDENTIALS = 0x2
+- SCM_RIGHTS = 0x1
+- SCM_TIMESTAMP = 0x1d
+- SCM_TIMESTAMPING = 0x25
+- SCM_TIMESTAMPING_OPT_STATS = 0x36
+- SCM_TIMESTAMPNS = 0x23
+- SCM_WIFI_STATUS = 0x29
+- SECCOMP_MODE_DISABLED = 0x0
+- SECCOMP_MODE_FILTER = 0x2
+- SECCOMP_MODE_STRICT = 0x1
+- SHUT_RD = 0x0
+- SHUT_RDWR = 0x2
+- SHUT_WR = 0x1
+- SIOCADDDLCI = 0x8980
+- SIOCADDMULTI = 0x8931
+- SIOCADDRT = 0x890b
+- SIOCATMARK = 0x40047307
+- SIOCBONDCHANGEACTIVE = 0x8995
+- SIOCBONDENSLAVE = 0x8990
+- SIOCBONDINFOQUERY = 0x8994
+- SIOCBONDRELEASE = 0x8991
+- SIOCBONDSETHWADDR = 0x8992
+- SIOCBONDSLAVEINFOQUERY = 0x8993
+- SIOCBRADDBR = 0x89a0
+- SIOCBRADDIF = 0x89a2
+- SIOCBRDELBR = 0x89a1
+- SIOCBRDELIF = 0x89a3
+- SIOCDARP = 0x8953
+- SIOCDELDLCI = 0x8981
+- SIOCDELMULTI = 0x8932
+- SIOCDELRT = 0x890c
+- SIOCDEVPRIVATE = 0x89f0
+- SIOCDIFADDR = 0x8936
+- SIOCDRARP = 0x8960
+- SIOCETHTOOL = 0x8946
+- SIOCGARP = 0x8954
+- SIOCGHWTSTAMP = 0x89b1
+- SIOCGIFADDR = 0x8915
+- SIOCGIFBR = 0x8940
+- SIOCGIFBRDADDR = 0x8919
+- SIOCGIFCONF = 0x8912
+- SIOCGIFCOUNT = 0x8938
+- SIOCGIFDSTADDR = 0x8917
+- SIOCGIFENCAP = 0x8925
+- SIOCGIFFLAGS = 0x8913
+- SIOCGIFHWADDR = 0x8927
+- SIOCGIFINDEX = 0x8933
+- SIOCGIFMAP = 0x8970
+- SIOCGIFMEM = 0x891f
+- SIOCGIFMETRIC = 0x891d
+- SIOCGIFMTU = 0x8921
+- SIOCGIFNAME = 0x8910
+- SIOCGIFNETMASK = 0x891b
+- SIOCGIFPFLAGS = 0x8935
+- SIOCGIFSLAVE = 0x8929
+- SIOCGIFTXQLEN = 0x8942
+- SIOCGIFVLAN = 0x8982
+- SIOCGMIIPHY = 0x8947
+- SIOCGMIIREG = 0x8948
+- SIOCGPGRP = 0x40047309
+- SIOCGRARP = 0x8961
+- SIOCGSKNS = 0x894c
+- SIOCGSTAMP = 0x8906
+- SIOCGSTAMPNS = 0x8907
+- SIOCINQ = 0x467f
+- SIOCOUTQ = 0x7472
+- SIOCOUTQNSD = 0x894b
+- SIOCPROTOPRIVATE = 0x89e0
+- SIOCRTMSG = 0x890d
+- SIOCSARP = 0x8955
+- SIOCSHWTSTAMP = 0x89b0
+- SIOCSIFADDR = 0x8916
+- SIOCSIFBR = 0x8941
+- SIOCSIFBRDADDR = 0x891a
+- SIOCSIFDSTADDR = 0x8918
+- SIOCSIFENCAP = 0x8926
+- SIOCSIFFLAGS = 0x8914
+- SIOCSIFHWADDR = 0x8924
+- SIOCSIFHWBROADCAST = 0x8937
+- SIOCSIFLINK = 0x8911
+- SIOCSIFMAP = 0x8971
+- SIOCSIFMEM = 0x8920
+- SIOCSIFMETRIC = 0x891e
+- SIOCSIFMTU = 0x8922
+- SIOCSIFNAME = 0x8923
+- SIOCSIFNETMASK = 0x891c
+- SIOCSIFPFLAGS = 0x8934
+- SIOCSIFSLAVE = 0x8930
+- SIOCSIFTXQLEN = 0x8943
+- SIOCSIFVLAN = 0x8983
+- SIOCSMIIREG = 0x8949
+- SIOCSPGRP = 0x80047308
+- SIOCSRARP = 0x8962
+- SIOCWANDEV = 0x894a
+- SOCK_CLOEXEC = 0x80000
+- SOCK_DCCP = 0x6
+- SOCK_DGRAM = 0x1
+- SOCK_IOC_TYPE = 0x89
+- SOCK_NONBLOCK = 0x80
+- SOCK_PACKET = 0xa
+- SOCK_RAW = 0x3
+- SOCK_RDM = 0x4
+- SOCK_SEQPACKET = 0x5
+- SOCK_STREAM = 0x2
+- SOL_AAL = 0x109
+- SOL_ALG = 0x117
+- SOL_ATM = 0x108
+- SOL_CAIF = 0x116
+- SOL_CAN_BASE = 0x64
+- SOL_DCCP = 0x10d
+- SOL_DECNET = 0x105
+- SOL_ICMPV6 = 0x3a
+- SOL_IP = 0x0
+- SOL_IPV6 = 0x29
+- SOL_IRDA = 0x10a
+- SOL_IUCV = 0x115
+- SOL_KCM = 0x119
+- SOL_LLC = 0x10c
+- SOL_NETBEUI = 0x10b
+- SOL_NETLINK = 0x10e
+- SOL_NFC = 0x118
+- SOL_PACKET = 0x107
+- SOL_PNPIPE = 0x113
+- SOL_PPPOL2TP = 0x111
+- SOL_RAW = 0xff
+- SOL_RDS = 0x114
+- SOL_RXRPC = 0x110
+- SOL_SOCKET = 0xffff
+- SOL_TCP = 0x6
+- SOL_TIPC = 0x10f
+- SOL_X25 = 0x106
+- SOMAXCONN = 0x80
+- SO_ACCEPTCONN = 0x1009
+- SO_ATTACH_BPF = 0x32
+- SO_ATTACH_FILTER = 0x1a
+- SO_ATTACH_REUSEPORT_CBPF = 0x33
+- SO_ATTACH_REUSEPORT_EBPF = 0x34
+- SO_BINDTODEVICE = 0x19
+- SO_BPF_EXTENSIONS = 0x30
+- SO_BROADCAST = 0x20
+- SO_BSDCOMPAT = 0xe
+- SO_BUSY_POLL = 0x2e
+- SO_CNX_ADVICE = 0x35
+- SO_DEBUG = 0x1
+- SO_DETACH_BPF = 0x1b
+- SO_DETACH_FILTER = 0x1b
+- SO_DOMAIN = 0x1029
+- SO_DONTROUTE = 0x10
+- SO_ERROR = 0x1007
+- SO_GET_FILTER = 0x1a
+- SO_INCOMING_CPU = 0x31
+- SO_KEEPALIVE = 0x8
+- SO_LINGER = 0x80
+- SO_LOCK_FILTER = 0x2c
+- SO_MARK = 0x24
+- SO_MAX_PACING_RATE = 0x2f
+- SO_NOFCS = 0x2b
+- SO_NO_CHECK = 0xb
+- SO_OOBINLINE = 0x100
+- SO_PASSCRED = 0x11
+- SO_PASSSEC = 0x22
+- SO_PEEK_OFF = 0x2a
+- SO_PEERCRED = 0x12
+- SO_PEERNAME = 0x1c
+- SO_PEERSEC = 0x1e
+- SO_PRIORITY = 0xc
+- SO_PROTOCOL = 0x1028
+- SO_RCVBUF = 0x1002
+- SO_RCVBUFFORCE = 0x21
+- SO_RCVLOWAT = 0x1004
+- SO_RCVTIMEO = 0x1006
+- SO_REUSEADDR = 0x4
+- SO_REUSEPORT = 0x200
+- SO_RXQ_OVFL = 0x28
+- SO_SECURITY_AUTHENTICATION = 0x16
+- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
+- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
+- SO_SELECT_ERR_QUEUE = 0x2d
+- SO_SNDBUF = 0x1001
+- SO_SNDBUFFORCE = 0x1f
+- SO_SNDLOWAT = 0x1003
+- SO_SNDTIMEO = 0x1005
+- SO_STYLE = 0x1008
+- SO_TIMESTAMP = 0x1d
+- SO_TIMESTAMPING = 0x25
+- SO_TIMESTAMPNS = 0x23
+- SO_TYPE = 0x1008
+- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
+- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
+- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
+- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
+- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
+- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
+- SO_VM_SOCKETS_TRUSTED = 0x5
+- SO_WIFI_STATUS = 0x29
+- SPLICE_F_GIFT = 0x8
+- SPLICE_F_MORE = 0x4
+- SPLICE_F_MOVE = 0x1
+- SPLICE_F_NONBLOCK = 0x2
+- S_BLKSIZE = 0x200
+- S_IEXEC = 0x40
+- S_IFBLK = 0x6000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFIFO = 0x1000
+- S_IFLNK = 0xa000
+- S_IFMT = 0xf000
+- S_IFREG = 0x8000
+- S_IFSOCK = 0xc000
+- S_IREAD = 0x100
+- S_IRGRP = 0x20
+- S_IROTH = 0x4
+- S_IRUSR = 0x100
+- S_IRWXG = 0x38
+- S_IRWXO = 0x7
+- S_IRWXU = 0x1c0
+- S_ISGID = 0x400
+- S_ISUID = 0x800
+- S_ISVTX = 0x200
+- S_IWGRP = 0x10
+- S_IWOTH = 0x2
+- S_IWRITE = 0x80
+- S_IWUSR = 0x80
+- S_IXGRP = 0x8
+- S_IXOTH = 0x1
+- S_IXUSR = 0x40
+- TAB0 = 0x0
+- TAB1 = 0x800
+- TAB2 = 0x1000
+- TAB3 = 0x1800
+- TABDLY = 0x1800
+- TASKSTATS_CMD_ATTR_MAX = 0x4
+- TASKSTATS_CMD_MAX = 0x2
+- TASKSTATS_GENL_NAME = "TASKSTATS"
+- TASKSTATS_GENL_VERSION = 0x1
+- TASKSTATS_TYPE_MAX = 0x6
+- TASKSTATS_VERSION = 0x8
+- TCFLSH = 0x5407
+- TCGETA = 0x5401
+- TCGETS = 0x540d
+- TCGETS2 = 0x4030542a
+- TCIFLUSH = 0x0
+- TCIOFF = 0x2
+- TCIOFLUSH = 0x2
+- TCION = 0x3
+- TCOFLUSH = 0x1
+- TCOOFF = 0x0
+- TCOON = 0x1
+- TCP_CC_INFO = 0x1a
+- TCP_CONGESTION = 0xd
+- TCP_COOKIE_IN_ALWAYS = 0x1
+- TCP_COOKIE_MAX = 0x10
+- TCP_COOKIE_MIN = 0x8
+- TCP_COOKIE_OUT_NEVER = 0x2
+- TCP_COOKIE_PAIR_SIZE = 0x20
+- TCP_COOKIE_TRANSACTIONS = 0xf
+- TCP_CORK = 0x3
+- TCP_DEFER_ACCEPT = 0x9
+- TCP_FASTOPEN = 0x17
+- TCP_INFO = 0xb
+- TCP_KEEPCNT = 0x6
+- TCP_KEEPIDLE = 0x4
+- TCP_KEEPINTVL = 0x5
+- TCP_LINGER2 = 0x8
+- TCP_MAXSEG = 0x2
+- TCP_MAXWIN = 0xffff
+- TCP_MAX_WINSHIFT = 0xe
+- TCP_MD5SIG = 0xe
+- TCP_MD5SIG_MAXKEYLEN = 0x50
+- TCP_MSS = 0x200
+- TCP_MSS_DEFAULT = 0x218
+- TCP_MSS_DESIRED = 0x4c4
+- TCP_NODELAY = 0x1
+- TCP_NOTSENT_LOWAT = 0x19
+- TCP_QUEUE_SEQ = 0x15
+- TCP_QUICKACK = 0xc
+- TCP_REPAIR = 0x13
+- TCP_REPAIR_OPTIONS = 0x16
+- TCP_REPAIR_QUEUE = 0x14
+- TCP_REPAIR_WINDOW = 0x1d
+- TCP_SAVED_SYN = 0x1c
+- TCP_SAVE_SYN = 0x1b
+- TCP_SYNCNT = 0x7
+- TCP_S_DATA_IN = 0x4
+- TCP_S_DATA_OUT = 0x8
+- TCP_THIN_DUPACK = 0x11
+- TCP_THIN_LINEAR_TIMEOUTS = 0x10
+- TCP_TIMESTAMP = 0x18
+- TCP_USER_TIMEOUT = 0x12
+- TCP_WINDOW_CLAMP = 0xa
+- TCSAFLUSH = 0x5410
+- TCSBRK = 0x5405
+- TCSBRKP = 0x5486
+- TCSETA = 0x5402
+- TCSETAF = 0x5404
+- TCSETAW = 0x5403
+- TCSETS = 0x540e
+- TCSETS2 = 0x8030542b
+- TCSETSF = 0x5410
+- TCSETSF2 = 0x8030542d
+- TCSETSW = 0x540f
+- TCSETSW2 = 0x8030542c
+- TCXONC = 0x5406
+- TIOCCBRK = 0x5428
+- TIOCCONS = 0x80047478
+- TIOCEXCL = 0x740d
+- TIOCGDEV = 0x40045432
+- TIOCGETD = 0x7400
+- TIOCGETP = 0x7408
+- TIOCGEXCL = 0x40045440
+- TIOCGICOUNT = 0x5492
+- TIOCGLCKTRMIOS = 0x548b
+- TIOCGLTC = 0x7474
+- TIOCGPGRP = 0x40047477
+- TIOCGPKT = 0x40045438
+- TIOCGPTLCK = 0x40045439
+- TIOCGPTN = 0x40045430
+- TIOCGRS485 = 0x4020542e
+- TIOCGSERIAL = 0x5484
+- TIOCGSID = 0x7416
+- TIOCGSOFTCAR = 0x5481
+- TIOCGWINSZ = 0x40087468
+- TIOCINQ = 0x467f
+- TIOCLINUX = 0x5483
+- TIOCMBIC = 0x741c
+- TIOCMBIS = 0x741b
+- TIOCMGET = 0x741d
+- TIOCMIWAIT = 0x5491
+- TIOCMSET = 0x741a
+- TIOCM_CAR = 0x100
+- TIOCM_CD = 0x100
+- TIOCM_CTS = 0x40
+- TIOCM_DSR = 0x400
+- TIOCM_DTR = 0x2
+- TIOCM_LE = 0x1
+- TIOCM_RI = 0x200
+- TIOCM_RNG = 0x200
+- TIOCM_RTS = 0x4
+- TIOCM_SR = 0x20
+- TIOCM_ST = 0x10
+- TIOCNOTTY = 0x5471
+- TIOCNXCL = 0x740e
+- TIOCOUTQ = 0x7472
+- TIOCPKT = 0x5470
+- TIOCPKT_DATA = 0x0
+- TIOCPKT_DOSTOP = 0x20
+- TIOCPKT_FLUSHREAD = 0x1
+- TIOCPKT_FLUSHWRITE = 0x2
+- TIOCPKT_IOCTL = 0x40
+- TIOCPKT_NOSTOP = 0x10
+- TIOCPKT_START = 0x8
+- TIOCPKT_STOP = 0x4
+- TIOCSBRK = 0x5427
+- TIOCSCTTY = 0x5480
+- TIOCSERCONFIG = 0x5488
+- TIOCSERGETLSR = 0x548e
+- TIOCSERGETMULTI = 0x548f
+- TIOCSERGSTRUCT = 0x548d
+- TIOCSERGWILD = 0x5489
+- TIOCSERSETMULTI = 0x5490
+- TIOCSERSWILD = 0x548a
+- TIOCSER_TEMT = 0x1
+- TIOCSETD = 0x7401
+- TIOCSETN = 0x740a
+- TIOCSETP = 0x7409
+- TIOCSIG = 0x80045436
+- TIOCSLCKTRMIOS = 0x548c
+- TIOCSLTC = 0x7475
+- TIOCSPGRP = 0x80047476
+- TIOCSPTLCK = 0x80045431
+- TIOCSRS485 = 0xc020542f
+- TIOCSSERIAL = 0x5485
+- TIOCSSOFTCAR = 0x5482
+- TIOCSTI = 0x5472
+- TIOCSWINSZ = 0x80087467
+- TIOCVHANGUP = 0x5437
+- TOSTOP = 0x8000
+- TS_COMM_LEN = 0x20
+- TUNATTACHFILTER = 0x801054d5
+- TUNDETACHFILTER = 0x801054d6
+- TUNGETFEATURES = 0x400454cf
+- TUNGETFILTER = 0x401054db
+- TUNGETIFF = 0x400454d2
+- TUNGETSNDBUF = 0x400454d3
+- TUNGETVNETBE = 0x400454df
+- TUNGETVNETHDRSZ = 0x400454d7
+- TUNGETVNETLE = 0x400454dd
+- TUNSETDEBUG = 0x800454c9
+- TUNSETGROUP = 0x800454ce
+- TUNSETIFF = 0x800454ca
+- TUNSETIFINDEX = 0x800454da
+- TUNSETLINK = 0x800454cd
+- TUNSETNOCSUM = 0x800454c8
+- TUNSETOFFLOAD = 0x800454d0
+- TUNSETOWNER = 0x800454cc
+- TUNSETPERSIST = 0x800454cb
+- TUNSETQUEUE = 0x800454d9
+- TUNSETSNDBUF = 0x800454d4
+- TUNSETTXFILTER = 0x800454d1
+- TUNSETVNETBE = 0x800454de
+- TUNSETVNETHDRSZ = 0x800454d8
+- TUNSETVNETLE = 0x800454dc
+- UMOUNT_NOFOLLOW = 0x8
+- VDISCARD = 0xd
+- VEOF = 0x10
+- VEOL = 0x11
+- VEOL2 = 0x6
+- VERASE = 0x2
+- VINTR = 0x0
+- VKILL = 0x3
+- VLNEXT = 0xf
+- VMADDR_CID_ANY = 0xffffffff
+- VMADDR_CID_HOST = 0x2
+- VMADDR_CID_HYPERVISOR = 0x0
+- VMADDR_CID_RESERVED = 0x1
+- VMADDR_PORT_ANY = 0xffffffff
+- VMIN = 0x4
+- VM_SOCKETS_INVALID_VERSION = 0xffffffff
+- VQUIT = 0x1
+- VREPRINT = 0xc
+- VSTART = 0x8
+- VSTOP = 0x9
+- VSUSP = 0xa
+- VSWTC = 0x7
+- VSWTCH = 0x7
+- VT0 = 0x0
+- VT1 = 0x4000
+- VTDLY = 0x4000
+- VTIME = 0x5
+- VWERASE = 0xe
+- WALL = 0x40000000
+- WCLONE = 0x80000000
+- WCONTINUED = 0x8
+- WEXITED = 0x4
+- WNOHANG = 0x1
+- WNOTHREAD = 0x20000000
+- WNOWAIT = 0x1000000
+- WORDSIZE = 0x40
+- WSTOPPED = 0x2
+- WUNTRACED = 0x2
+- XATTR_CREATE = 0x1
+- XATTR_REPLACE = 0x2
+- XCASE = 0x4
+- XTABS = 0x1800
++ B1000000 = 0x1008
++ B115200 = 0x1002
++ B1152000 = 0x1009
++ B1500000 = 0x100a
++ B2000000 = 0x100b
++ B230400 = 0x1003
++ B2500000 = 0x100c
++ B3000000 = 0x100d
++ B3500000 = 0x100e
++ B4000000 = 0x100f
++ B460800 = 0x1004
++ B500000 = 0x1005
++ B57600 = 0x1001
++ B576000 = 0x1006
++ B921600 = 0x1007
++ BLKBSZGET = 0x40081270
++ BLKBSZSET = 0x80081271
++ BLKFLSBUF = 0x20001261
++ BLKFRAGET = 0x20001265
++ BLKFRASET = 0x20001264
++ BLKGETSIZE = 0x20001260
++ BLKGETSIZE64 = 0x40081272
++ BLKPBSZGET = 0x2000127b
++ BLKRAGET = 0x20001263
++ BLKRASET = 0x20001262
++ BLKROGET = 0x2000125e
++ BLKROSET = 0x2000125d
++ BLKRRPART = 0x2000125f
++ BLKSECTGET = 0x20001267
++ BLKSECTSET = 0x20001266
++ BLKSSZGET = 0x20001268
++ BOTHER = 0x1000
++ BS1 = 0x2000
++ BSDLY = 0x2000
++ CBAUD = 0x100f
++ CBAUDEX = 0x1000
++ CIBAUD = 0x100f0000
++ CLOCAL = 0x800
++ CR1 = 0x200
++ CR2 = 0x400
++ CR3 = 0x600
++ CRDLY = 0x600
++ CREAD = 0x80
++ CS6 = 0x10
++ CS7 = 0x20
++ CS8 = 0x30
++ CSIZE = 0x30
++ CSTOPB = 0x40
++ ECHOCTL = 0x200
++ ECHOE = 0x10
++ ECHOK = 0x20
++ ECHOKE = 0x800
++ ECHONL = 0x40
++ ECHOPRT = 0x400
++ EFD_CLOEXEC = 0x80000
++ EFD_NONBLOCK = 0x80
++ EPOLL_CLOEXEC = 0x80000
++ EXTPROC = 0x10000
++ FF1 = 0x8000
++ FFDLY = 0x8000
++ FLUSHO = 0x2000
++ FS_IOC_ENABLE_VERITY = 0x80806685
++ FS_IOC_GETFLAGS = 0x40086601
++ FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
++ FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
++ FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
++ F_GETLK = 0xe
++ F_GETLK64 = 0xe
++ F_GETOWN = 0x17
++ F_RDLCK = 0x0
++ F_SETLK = 0x6
++ F_SETLK64 = 0x6
++ F_SETLKW = 0x7
++ F_SETLKW64 = 0x7
++ F_SETOWN = 0x18
++ F_UNLCK = 0x2
++ F_WRLCK = 0x1
++ HUPCL = 0x400
++ ICANON = 0x2
++ IEXTEN = 0x100
++ IN_CLOEXEC = 0x80000
++ IN_NONBLOCK = 0x80
++ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x200007b9
++ ISIG = 0x1
++ IUCLC = 0x200
++ IXOFF = 0x1000
++ IXON = 0x400
++ MAP_ANON = 0x800
++ MAP_ANONYMOUS = 0x800
++ MAP_DENYWRITE = 0x2000
++ MAP_EXECUTABLE = 0x4000
++ MAP_GROWSDOWN = 0x1000
++ MAP_HUGETLB = 0x80000
++ MAP_LOCKED = 0x8000
++ MAP_NONBLOCK = 0x20000
++ MAP_NORESERVE = 0x400
++ MAP_POPULATE = 0x10000
++ MAP_RENAME = 0x800
++ MAP_STACK = 0x40000
++ MCL_CURRENT = 0x1
++ MCL_FUTURE = 0x2
++ MCL_ONFAULT = 0x4
++ NFDBITS = 0x40
++ NLDLY = 0x100
++ NOFLSH = 0x80
++ NS_GET_NSTYPE = 0x2000b703
++ NS_GET_OWNER_UID = 0x2000b704
++ NS_GET_PARENT = 0x2000b702
++ NS_GET_USERNS = 0x2000b701
++ OLCUC = 0x2
++ ONLCR = 0x4
++ O_APPEND = 0x8
++ O_ASYNC = 0x1000
++ O_CLOEXEC = 0x80000
++ O_CREAT = 0x100
++ O_DIRECT = 0x8000
++ O_DIRECTORY = 0x10000
++ O_DSYNC = 0x10
++ O_EXCL = 0x400
++ O_FSYNC = 0x4010
++ O_LARGEFILE = 0x0
++ O_NDELAY = 0x80
++ O_NOATIME = 0x40000
++ O_NOCTTY = 0x800
++ O_NOFOLLOW = 0x20000
++ O_NONBLOCK = 0x80
++ O_PATH = 0x200000
++ O_RSYNC = 0x4010
++ O_SYNC = 0x4010
++ O_TMPFILE = 0x410000
++ O_TRUNC = 0x200
++ PARENB = 0x100
++ PARODD = 0x200
++ PENDIN = 0x4000
++ PERF_EVENT_IOC_DISABLE = 0x20002401
++ PERF_EVENT_IOC_ENABLE = 0x20002400
++ PERF_EVENT_IOC_ID = 0x40082407
++ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8008240b
++ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
++ PERF_EVENT_IOC_PERIOD = 0x80082404
++ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
++ PERF_EVENT_IOC_REFRESH = 0x20002402
++ PERF_EVENT_IOC_RESET = 0x20002403
++ PERF_EVENT_IOC_SET_BPF = 0x80042408
++ PERF_EVENT_IOC_SET_FILTER = 0x80082406
++ PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
++ PPPIOCATTACH = 0x8004743d
++ PPPIOCATTCHAN = 0x80047438
++ PPPIOCCONNECT = 0x8004743a
++ PPPIOCDETACH = 0x8004743c
++ PPPIOCDISCONN = 0x20007439
++ PPPIOCGASYNCMAP = 0x40047458
++ PPPIOCGCHAN = 0x40047437
++ PPPIOCGDEBUG = 0x40047441
++ PPPIOCGFLAGS = 0x4004745a
++ PPPIOCGIDLE = 0x4010743f
++ PPPIOCGIDLE32 = 0x4008743f
++ PPPIOCGIDLE64 = 0x4010743f
++ PPPIOCGL2TPSTATS = 0x40487436
++ PPPIOCGMRU = 0x40047453
++ PPPIOCGRASYNCMAP = 0x40047455
++ PPPIOCGUNIT = 0x40047456
++ PPPIOCGXASYNCMAP = 0x40207450
++ PPPIOCSACTIVE = 0x80107446
++ PPPIOCSASYNCMAP = 0x80047457
++ PPPIOCSCOMPRESS = 0x8010744d
++ PPPIOCSDEBUG = 0x80047440
++ PPPIOCSFLAGS = 0x80047459
++ PPPIOCSMAXCID = 0x80047451
++ PPPIOCSMRRU = 0x8004743b
++ PPPIOCSMRU = 0x80047452
++ PPPIOCSNPMODE = 0x8008744b
++ PPPIOCSPASS = 0x80107447
++ PPPIOCSRASYNCMAP = 0x80047454
++ PPPIOCSXASYNCMAP = 0x8020744f
++ PPPIOCXFERUNIT = 0x2000744e
++ PR_SET_PTRACER_ANY = 0xffffffffffffffff
++ PTRACE_GETFPREGS = 0xe
++ PTRACE_GET_THREAD_AREA = 0x19
++ PTRACE_GET_THREAD_AREA_3264 = 0xc4
++ PTRACE_GET_WATCH_REGS = 0xd0
++ PTRACE_OLDSETOPTIONS = 0x15
++ PTRACE_PEEKDATA_3264 = 0xc1
++ PTRACE_PEEKTEXT_3264 = 0xc0
++ PTRACE_POKEDATA_3264 = 0xc3
++ PTRACE_POKETEXT_3264 = 0xc2
++ PTRACE_SETFPREGS = 0xf
++ PTRACE_SET_THREAD_AREA = 0x1a
++ PTRACE_SET_WATCH_REGS = 0xd1
++ RLIMIT_AS = 0x6
++ RLIMIT_MEMLOCK = 0x9
++ RLIMIT_NOFILE = 0x5
++ RLIMIT_NPROC = 0x8
++ RLIMIT_RSS = 0x7
++ RNDADDENTROPY = 0x80085203
++ RNDADDTOENTCNT = 0x80045201
++ RNDCLEARPOOL = 0x20005206
++ RNDGETENTCNT = 0x40045200
++ RNDGETPOOL = 0x40085202
++ RNDRESEEDCRNG = 0x20005207
++ RNDZAPENTCNT = 0x20005204
++ RTC_AIE_OFF = 0x20007002
++ RTC_AIE_ON = 0x20007001
++ RTC_ALM_READ = 0x40247008
++ RTC_ALM_SET = 0x80247007
++ RTC_EPOCH_READ = 0x4008700d
++ RTC_EPOCH_SET = 0x8008700e
++ RTC_IRQP_READ = 0x4008700b
++ RTC_IRQP_SET = 0x8008700c
++ RTC_PIE_OFF = 0x20007006
++ RTC_PIE_ON = 0x20007005
++ RTC_PLL_GET = 0x40207011
++ RTC_PLL_SET = 0x80207012
++ RTC_RD_TIME = 0x40247009
++ RTC_SET_TIME = 0x8024700a
++ RTC_UIE_OFF = 0x20007004
++ RTC_UIE_ON = 0x20007003
++ RTC_VL_CLR = 0x20007014
++ RTC_VL_READ = 0x40047013
++ RTC_WIE_OFF = 0x20007010
++ RTC_WIE_ON = 0x2000700f
++ RTC_WKALM_RD = 0x40287010
++ RTC_WKALM_SET = 0x8028700f
++ SCM_TIMESTAMPING = 0x25
++ SCM_TIMESTAMPING_OPT_STATS = 0x36
++ SCM_TIMESTAMPING_PKTINFO = 0x3a
++ SCM_TIMESTAMPNS = 0x23
++ SCM_TXTIME = 0x3d
++ SCM_WIFI_STATUS = 0x29
++ SFD_CLOEXEC = 0x80000
++ SFD_NONBLOCK = 0x80
++ SIOCATMARK = 0x40047307
++ SIOCGPGRP = 0x40047309
++ SIOCGSTAMPNS_NEW = 0x40108907
++ SIOCGSTAMP_NEW = 0x40108906
++ SIOCINQ = 0x467f
++ SIOCOUTQ = 0x7472
++ SIOCSPGRP = 0x80047308
++ SOCK_CLOEXEC = 0x80000
++ SOCK_DGRAM = 0x1
++ SOCK_NONBLOCK = 0x80
++ SOCK_STREAM = 0x2
++ SOL_SOCKET = 0xffff
++ SO_ACCEPTCONN = 0x1009
++ SO_ATTACH_BPF = 0x32
++ SO_ATTACH_REUSEPORT_CBPF = 0x33
++ SO_ATTACH_REUSEPORT_EBPF = 0x34
++ SO_BINDTODEVICE = 0x19
++ SO_BINDTOIFINDEX = 0x3e
++ SO_BPF_EXTENSIONS = 0x30
++ SO_BROADCAST = 0x20
++ SO_BSDCOMPAT = 0xe
++ SO_BUSY_POLL = 0x2e
++ SO_CNX_ADVICE = 0x35
++ SO_COOKIE = 0x39
++ SO_DETACH_REUSEPORT_BPF = 0x44
++ SO_DOMAIN = 0x1029
++ SO_DONTROUTE = 0x10
++ SO_ERROR = 0x1007
++ SO_INCOMING_CPU = 0x31
++ SO_INCOMING_NAPI_ID = 0x38
++ SO_KEEPALIVE = 0x8
++ SO_LINGER = 0x80
++ SO_LOCK_FILTER = 0x2c
++ SO_MARK = 0x24
++ SO_MAX_PACING_RATE = 0x2f
++ SO_MEMINFO = 0x37
++ SO_NOFCS = 0x2b
++ SO_OOBINLINE = 0x100
++ SO_PASSCRED = 0x11
++ SO_PASSSEC = 0x22
++ SO_PEEK_OFF = 0x2a
++ SO_PEERCRED = 0x12
++ SO_PEERGROUPS = 0x3b
++ SO_PEERSEC = 0x1e
++ SO_PROTOCOL = 0x1028
++ SO_RCVBUF = 0x1002
++ SO_RCVBUFFORCE = 0x21
++ SO_RCVLOWAT = 0x1004
++ SO_RCVTIMEO = 0x1006
++ SO_RCVTIMEO_NEW = 0x42
++ SO_RCVTIMEO_OLD = 0x1006
++ SO_REUSEADDR = 0x4
++ SO_REUSEPORT = 0x200
++ SO_RXQ_OVFL = 0x28
++ SO_SECURITY_AUTHENTICATION = 0x16
++ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
++ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
++ SO_SELECT_ERR_QUEUE = 0x2d
++ SO_SNDBUF = 0x1001
++ SO_SNDBUFFORCE = 0x1f
++ SO_SNDLOWAT = 0x1003
++ SO_SNDTIMEO = 0x1005
++ SO_SNDTIMEO_NEW = 0x43
++ SO_SNDTIMEO_OLD = 0x1005
++ SO_STYLE = 0x1008
++ SO_TIMESTAMPING = 0x25
++ SO_TIMESTAMPING_NEW = 0x41
++ SO_TIMESTAMPING_OLD = 0x25
++ SO_TIMESTAMPNS = 0x23
++ SO_TIMESTAMPNS_NEW = 0x40
++ SO_TIMESTAMPNS_OLD = 0x23
++ SO_TIMESTAMP_NEW = 0x3f
++ SO_TXTIME = 0x3d
++ SO_TYPE = 0x1008
++ SO_WIFI_STATUS = 0x29
++ SO_ZEROCOPY = 0x3c
++ TAB1 = 0x800
++ TAB2 = 0x1000
++ TAB3 = 0x1800
++ TABDLY = 0x1800
++ TCFLSH = 0x5407
++ TCGETA = 0x5401
++ TCGETS = 0x540d
++ TCGETS2 = 0x4030542a
++ TCSAFLUSH = 0x5410
++ TCSBRK = 0x5405
++ TCSBRKP = 0x5486
++ TCSETA = 0x5402
++ TCSETAF = 0x5404
++ TCSETAW = 0x5403
++ TCSETS = 0x540e
++ TCSETS2 = 0x8030542b
++ TCSETSF = 0x5410
++ TCSETSF2 = 0x8030542d
++ TCSETSW = 0x540f
++ TCSETSW2 = 0x8030542c
++ TCXONC = 0x5406
++ TIOCCBRK = 0x5428
++ TIOCCONS = 0x80047478
++ TIOCEXCL = 0x740d
++ TIOCGDEV = 0x40045432
++ TIOCGETD = 0x7400
++ TIOCGETP = 0x7408
++ TIOCGEXCL = 0x40045440
++ TIOCGICOUNT = 0x5492
++ TIOCGISO7816 = 0x40285442
++ TIOCGLCKTRMIOS = 0x548b
++ TIOCGLTC = 0x7474
++ TIOCGPGRP = 0x40047477
++ TIOCGPKT = 0x40045438
++ TIOCGPTLCK = 0x40045439
++ TIOCGPTN = 0x40045430
++ TIOCGPTPEER = 0x20005441
++ TIOCGRS485 = 0x4020542e
++ TIOCGSERIAL = 0x5484
++ TIOCGSID = 0x7416
++ TIOCGSOFTCAR = 0x5481
++ TIOCGWINSZ = 0x40087468
++ TIOCINQ = 0x467f
++ TIOCLINUX = 0x5483
++ TIOCMBIC = 0x741c
++ TIOCMBIS = 0x741b
++ TIOCMGET = 0x741d
++ TIOCMIWAIT = 0x5491
++ TIOCMSET = 0x741a
++ TIOCM_CAR = 0x100
++ TIOCM_CD = 0x100
++ TIOCM_CTS = 0x40
++ TIOCM_DSR = 0x400
++ TIOCM_RI = 0x200
++ TIOCM_RNG = 0x200
++ TIOCM_SR = 0x20
++ TIOCM_ST = 0x10
++ TIOCNOTTY = 0x5471
++ TIOCNXCL = 0x740e
++ TIOCOUTQ = 0x7472
++ TIOCPKT = 0x5470
++ TIOCSBRK = 0x5427
++ TIOCSCTTY = 0x5480
++ TIOCSERCONFIG = 0x5488
++ TIOCSERGETLSR = 0x548e
++ TIOCSERGETMULTI = 0x548f
++ TIOCSERGSTRUCT = 0x548d
++ TIOCSERGWILD = 0x5489
++ TIOCSERSETMULTI = 0x5490
++ TIOCSERSWILD = 0x548a
++ TIOCSER_TEMT = 0x1
++ TIOCSETD = 0x7401
++ TIOCSETN = 0x740a
++ TIOCSETP = 0x7409
++ TIOCSIG = 0x80045436
++ TIOCSISO7816 = 0xc0285443
++ TIOCSLCKTRMIOS = 0x548c
++ TIOCSLTC = 0x7475
++ TIOCSPGRP = 0x80047476
++ TIOCSPTLCK = 0x80045431
++ TIOCSRS485 = 0xc020542f
++ TIOCSSERIAL = 0x5485
++ TIOCSSOFTCAR = 0x5482
++ TIOCSTI = 0x5472
++ TIOCSWINSZ = 0x80087467
++ TIOCVHANGUP = 0x5437
++ TOSTOP = 0x8000
++ TUNATTACHFILTER = 0x801054d5
++ TUNDETACHFILTER = 0x801054d6
++ TUNGETDEVNETNS = 0x200054e3
++ TUNGETFEATURES = 0x400454cf
++ TUNGETFILTER = 0x401054db
++ TUNGETIFF = 0x400454d2
++ TUNGETSNDBUF = 0x400454d3
++ TUNGETVNETBE = 0x400454df
++ TUNGETVNETHDRSZ = 0x400454d7
++ TUNGETVNETLE = 0x400454dd
++ TUNSETCARRIER = 0x800454e2
++ TUNSETDEBUG = 0x800454c9
++ TUNSETFILTEREBPF = 0x400454e1
++ TUNSETGROUP = 0x800454ce
++ TUNSETIFF = 0x800454ca
++ TUNSETIFINDEX = 0x800454da
++ TUNSETLINK = 0x800454cd
++ TUNSETNOCSUM = 0x800454c8
++ TUNSETOFFLOAD = 0x800454d0
++ TUNSETOWNER = 0x800454cc
++ TUNSETPERSIST = 0x800454cb
++ TUNSETQUEUE = 0x800454d9
++ TUNSETSNDBUF = 0x800454d4
++ TUNSETSTEERINGEBPF = 0x400454e0
++ TUNSETTXFILTER = 0x800454d1
++ TUNSETVNETBE = 0x800454de
++ TUNSETVNETHDRSZ = 0x800454d8
++ TUNSETVNETLE = 0x800454dc
++ UBI_IOCATT = 0x80186f40
++ UBI_IOCDET = 0x80046f41
++ UBI_IOCEBCH = 0x80044f02
++ UBI_IOCEBER = 0x80044f01
++ UBI_IOCEBISMAP = 0x40044f05
++ UBI_IOCEBMAP = 0x80084f03
++ UBI_IOCEBUNMAP = 0x80044f04
++ UBI_IOCMKVOL = 0x80986f00
++ UBI_IOCRMVOL = 0x80046f01
++ UBI_IOCRNVOL = 0x91106f03
++ UBI_IOCRPEB = 0x80046f04
++ UBI_IOCRSVOL = 0x800c6f02
++ UBI_IOCSETVOLPROP = 0x80104f06
++ UBI_IOCSPEB = 0x80046f05
++ UBI_IOCVOLCRBLK = 0x80804f07
++ UBI_IOCVOLRMBLK = 0x20004f08
++ UBI_IOCVOLUP = 0x80084f00
++ VDISCARD = 0xd
++ VEOF = 0x10
++ VEOL = 0x11
++ VEOL2 = 0x6
++ VMIN = 0x4
++ VREPRINT = 0xc
++ VSTART = 0x8
++ VSTOP = 0x9
++ VSUSP = 0xa
++ VSWTC = 0x7
++ VSWTCH = 0x7
++ VT1 = 0x4000
++ VTDLY = 0x4000
++ VTIME = 0x5
++ VWERASE = 0xe
++ WDIOC_GETBOOTSTATUS = 0x40045702
++ WDIOC_GETPRETIMEOUT = 0x40045709
++ WDIOC_GETSTATUS = 0x40045701
++ WDIOC_GETSUPPORT = 0x40285700
++ WDIOC_GETTEMP = 0x40045703
++ WDIOC_GETTIMELEFT = 0x4004570a
++ WDIOC_GETTIMEOUT = 0x40045707
++ WDIOC_KEEPALIVE = 0x40045705
++ WDIOC_SETOPTIONS = 0x40045704
++ WORDSIZE = 0x40
++ XCASE = 0x4
++ XTABS = 0x1800
+ )
+
+ // Errors
+ const (
+- E2BIG = syscall.Errno(0x7)
+- EACCES = syscall.Errno(0xd)
+ EADDRINUSE = syscall.Errno(0x7d)
+ EADDRNOTAVAIL = syscall.Errno(0x7e)
+ EADV = syscall.Errno(0x44)
+ EAFNOSUPPORT = syscall.Errno(0x7c)
+- EAGAIN = syscall.Errno(0xb)
+ EALREADY = syscall.Errno(0x95)
+ EBADE = syscall.Errno(0x32)
+- EBADF = syscall.Errno(0x9)
+ EBADFD = syscall.Errno(0x51)
+ EBADMSG = syscall.Errno(0x4d)
+ EBADR = syscall.Errno(0x33)
+ EBADRQC = syscall.Errno(0x36)
+ EBADSLT = syscall.Errno(0x37)
+ EBFONT = syscall.Errno(0x3b)
+- EBUSY = syscall.Errno(0x10)
+ ECANCELED = syscall.Errno(0x9e)
+- ECHILD = syscall.Errno(0xa)
+ ECHRNG = syscall.Errno(0x25)
+ ECOMM = syscall.Errno(0x46)
+ ECONNABORTED = syscall.Errno(0x82)
+@@ -1886,12 +502,8 @@ const (
+ EDEADLK = syscall.Errno(0x2d)
+ EDEADLOCK = syscall.Errno(0x38)
+ EDESTADDRREQ = syscall.Errno(0x60)
+- EDOM = syscall.Errno(0x21)
+ EDOTDOT = syscall.Errno(0x49)
+ EDQUOT = syscall.Errno(0x46d)
+- EEXIST = syscall.Errno(0x11)
+- EFAULT = syscall.Errno(0xe)
+- EFBIG = syscall.Errno(0x1b)
+ EHOSTDOWN = syscall.Errno(0x93)
+ EHOSTUNREACH = syscall.Errno(0x94)
+ EHWPOISON = syscall.Errno(0xa8)
+@@ -1899,11 +511,7 @@ const (
+ EILSEQ = syscall.Errno(0x58)
+ EINIT = syscall.Errno(0x8d)
+ EINPROGRESS = syscall.Errno(0x96)
+- EINTR = syscall.Errno(0x4)
+- EINVAL = syscall.Errno(0x16)
+- EIO = syscall.Errno(0x5)
+ EISCONN = syscall.Errno(0x85)
+- EISDIR = syscall.Errno(0x15)
+ EISNAM = syscall.Errno(0x8b)
+ EKEYEXPIRED = syscall.Errno(0xa2)
+ EKEYREJECTED = syscall.Errno(0xa4)
+@@ -1920,8 +528,6 @@ const (
+ ELNRNG = syscall.Errno(0x29)
+ ELOOP = syscall.Errno(0x5a)
+ EMEDIUMTYPE = syscall.Errno(0xa0)
+- EMFILE = syscall.Errno(0x18)
+- EMLINK = syscall.Errno(0x1f)
+ EMSGSIZE = syscall.Errno(0x61)
+ EMULTIHOP = syscall.Errno(0x4a)
+ ENAMETOOLONG = syscall.Errno(0x4e)
+@@ -1929,100 +535,68 @@ const (
+ ENETDOWN = syscall.Errno(0x7f)
+ ENETRESET = syscall.Errno(0x81)
+ ENETUNREACH = syscall.Errno(0x80)
+- ENFILE = syscall.Errno(0x17)
+ ENOANO = syscall.Errno(0x35)
+ ENOBUFS = syscall.Errno(0x84)
+ ENOCSI = syscall.Errno(0x2b)
+ ENODATA = syscall.Errno(0x3d)
+- ENODEV = syscall.Errno(0x13)
+- ENOENT = syscall.Errno(0x2)
+- ENOEXEC = syscall.Errno(0x8)
+ ENOKEY = syscall.Errno(0xa1)
+ ENOLCK = syscall.Errno(0x2e)
+ ENOLINK = syscall.Errno(0x43)
+ ENOMEDIUM = syscall.Errno(0x9f)
+- ENOMEM = syscall.Errno(0xc)
+ ENOMSG = syscall.Errno(0x23)
+ ENONET = syscall.Errno(0x40)
+ ENOPKG = syscall.Errno(0x41)
+ ENOPROTOOPT = syscall.Errno(0x63)
+- ENOSPC = syscall.Errno(0x1c)
+ ENOSR = syscall.Errno(0x3f)
+ ENOSTR = syscall.Errno(0x3c)
+ ENOSYS = syscall.Errno(0x59)
+- ENOTBLK = syscall.Errno(0xf)
+ ENOTCONN = syscall.Errno(0x86)
+- ENOTDIR = syscall.Errno(0x14)
+ ENOTEMPTY = syscall.Errno(0x5d)
+ ENOTNAM = syscall.Errno(0x89)
+ ENOTRECOVERABLE = syscall.Errno(0xa6)
+ ENOTSOCK = syscall.Errno(0x5f)
+ ENOTSUP = syscall.Errno(0x7a)
+- ENOTTY = syscall.Errno(0x19)
+ ENOTUNIQ = syscall.Errno(0x50)
+- ENXIO = syscall.Errno(0x6)
+ EOPNOTSUPP = syscall.Errno(0x7a)
+ EOVERFLOW = syscall.Errno(0x4f)
+ EOWNERDEAD = syscall.Errno(0xa5)
+- EPERM = syscall.Errno(0x1)
+ EPFNOSUPPORT = syscall.Errno(0x7b)
+- EPIPE = syscall.Errno(0x20)
+ EPROTO = syscall.Errno(0x47)
+ EPROTONOSUPPORT = syscall.Errno(0x78)
+ EPROTOTYPE = syscall.Errno(0x62)
+- ERANGE = syscall.Errno(0x22)
+ EREMCHG = syscall.Errno(0x52)
+ EREMDEV = syscall.Errno(0x8e)
+ EREMOTE = syscall.Errno(0x42)
+ EREMOTEIO = syscall.Errno(0x8c)
+ ERESTART = syscall.Errno(0x5b)
+ ERFKILL = syscall.Errno(0xa7)
+- EROFS = syscall.Errno(0x1e)
+ ESHUTDOWN = syscall.Errno(0x8f)
+ ESOCKTNOSUPPORT = syscall.Errno(0x79)
+- ESPIPE = syscall.Errno(0x1d)
+- ESRCH = syscall.Errno(0x3)
+ ESRMNT = syscall.Errno(0x45)
+ ESTALE = syscall.Errno(0x97)
+ ESTRPIPE = syscall.Errno(0x5c)
+ ETIME = syscall.Errno(0x3e)
+ ETIMEDOUT = syscall.Errno(0x91)
+ ETOOMANYREFS = syscall.Errno(0x90)
+- ETXTBSY = syscall.Errno(0x1a)
+ EUCLEAN = syscall.Errno(0x87)
+ EUNATCH = syscall.Errno(0x2a)
+ EUSERS = syscall.Errno(0x5e)
+- EWOULDBLOCK = syscall.Errno(0xb)
+- EXDEV = syscall.Errno(0x12)
+ EXFULL = syscall.Errno(0x34)
+ )
+
+ // Signals
+ const (
+- SIGABRT = syscall.Signal(0x6)
+- SIGALRM = syscall.Signal(0xe)
+ SIGBUS = syscall.Signal(0xa)
+ SIGCHLD = syscall.Signal(0x12)
+ SIGCLD = syscall.Signal(0x12)
+ SIGCONT = syscall.Signal(0x19)
+ SIGEMT = syscall.Signal(0x7)
+- SIGFPE = syscall.Signal(0x8)
+- SIGHUP = syscall.Signal(0x1)
+- SIGILL = syscall.Signal(0x4)
+- SIGINT = syscall.Signal(0x2)
+ SIGIO = syscall.Signal(0x16)
+- SIGIOT = syscall.Signal(0x6)
+- SIGKILL = syscall.Signal(0x9)
+- SIGPIPE = syscall.Signal(0xd)
+ SIGPOLL = syscall.Signal(0x16)
+ SIGPROF = syscall.Signal(0x1d)
+ SIGPWR = syscall.Signal(0x13)
+- SIGQUIT = syscall.Signal(0x3)
+- SIGSEGV = syscall.Signal(0xb)
+ SIGSTOP = syscall.Signal(0x17)
+ SIGSYS = syscall.Signal(0xc)
+- SIGTERM = syscall.Signal(0xf)
+- SIGTRAP = syscall.Signal(0x5)
+ SIGTSTP = syscall.Signal(0x18)
+ SIGTTIN = syscall.Signal(0x1a)
+ SIGTTOU = syscall.Signal(0x1b)
+@@ -2036,174 +610,182 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "no such device or address",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource temporarily unavailable",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device or resource busy",
+- 17: "file exists",
+- 18: "invalid cross-device link",
+- 19: "no such device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "numerical result out of range",
+- 35: "no message of desired type",
+- 36: "identifier removed",
+- 37: "channel number out of range",
+- 38: "level 2 not synchronized",
+- 39: "level 3 halted",
+- 40: "level 3 reset",
+- 41: "link number out of range",
+- 42: "protocol driver not attached",
+- 43: "no CSI structure available",
+- 44: "level 2 halted",
+- 45: "resource deadlock avoided",
+- 46: "no locks available",
+- 50: "invalid exchange",
+- 51: "invalid request descriptor",
+- 52: "exchange full",
+- 53: "no anode",
+- 54: "invalid request code",
+- 55: "invalid slot",
+- 56: "file locking deadlock error",
+- 59: "bad font file format",
+- 60: "device not a stream",
+- 61: "no data available",
+- 62: "timer expired",
+- 63: "out of streams resources",
+- 64: "machine is not on the network",
+- 65: "package not installed",
+- 66: "object is remote",
+- 67: "link has been severed",
+- 68: "advertise error",
+- 69: "srmount error",
+- 70: "communication error on send",
+- 71: "protocol error",
+- 73: "RFS specific error",
+- 74: "multihop attempted",
+- 77: "bad message",
+- 78: "file name too long",
+- 79: "value too large for defined data type",
+- 80: "name not unique on network",
+- 81: "file descriptor in bad state",
+- 82: "remote address changed",
+- 83: "can not access a needed shared library",
+- 84: "accessing a corrupted shared library",
+- 85: ".lib section in a.out corrupted",
+- 86: "attempting to link in too many shared libraries",
+- 87: "cannot exec a shared library directly",
+- 88: "invalid or incomplete multibyte or wide character",
+- 89: "function not implemented",
+- 90: "too many levels of symbolic links",
+- 91: "interrupted system call should be restarted",
+- 92: "streams pipe error",
+- 93: "directory not empty",
+- 94: "too many users",
+- 95: "socket operation on non-socket",
+- 96: "destination address required",
+- 97: "message too long",
+- 98: "protocol wrong type for socket",
+- 99: "protocol not available",
+- 120: "protocol not supported",
+- 121: "socket type not supported",
+- 122: "operation not supported",
+- 123: "protocol family not supported",
+- 124: "address family not supported by protocol",
+- 125: "address already in use",
+- 126: "cannot assign requested address",
+- 127: "network is down",
+- 128: "network is unreachable",
+- 129: "network dropped connection on reset",
+- 130: "software caused connection abort",
+- 131: "connection reset by peer",
+- 132: "no buffer space available",
+- 133: "transport endpoint is already connected",
+- 134: "transport endpoint is not connected",
+- 135: "structure needs cleaning",
+- 137: "not a XENIX named type file",
+- 138: "no XENIX semaphores available",
+- 139: "is a named type file",
+- 140: "remote I/O error",
+- 141: "unknown error 141",
+- 142: "unknown error 142",
+- 143: "cannot send after transport endpoint shutdown",
+- 144: "too many references: cannot splice",
+- 145: "connection timed out",
+- 146: "connection refused",
+- 147: "host is down",
+- 148: "no route to host",
+- 149: "operation already in progress",
+- 150: "operation now in progress",
+- 151: "stale file handle",
+- 158: "operation canceled",
+- 159: "no medium found",
+- 160: "wrong medium type",
+- 161: "required key not available",
+- 162: "key has expired",
+- 163: "key has been revoked",
+- 164: "key was rejected by service",
+- 165: "owner died",
+- 166: "state not recoverable",
+- 167: "operation not possible due to RF-kill",
+- 168: "memory page has hardware error",
+- 1133: "disk quota exceeded",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "no such device or address"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EAGAIN", "resource temporarily unavailable"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device or resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "invalid cross-device link"},
++ {19, "ENODEV", "no such device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "numerical result out of range"},
++ {35, "ENOMSG", "no message of desired type"},
++ {36, "EIDRM", "identifier removed"},
++ {37, "ECHRNG", "channel number out of range"},
++ {38, "EL2NSYNC", "level 2 not synchronized"},
++ {39, "EL3HLT", "level 3 halted"},
++ {40, "EL3RST", "level 3 reset"},
++ {41, "ELNRNG", "link number out of range"},
++ {42, "EUNATCH", "protocol driver not attached"},
++ {43, "ENOCSI", "no CSI structure available"},
++ {44, "EL2HLT", "level 2 halted"},
++ {45, "EDEADLK", "resource deadlock avoided"},
++ {46, "ENOLCK", "no locks available"},
++ {50, "EBADE", "invalid exchange"},
++ {51, "EBADR", "invalid request descriptor"},
++ {52, "EXFULL", "exchange full"},
++ {53, "ENOANO", "no anode"},
++ {54, "EBADRQC", "invalid request code"},
++ {55, "EBADSLT", "invalid slot"},
++ {56, "EDEADLOCK", "file locking deadlock error"},
++ {59, "EBFONT", "bad font file format"},
++ {60, "ENOSTR", "device not a stream"},
++ {61, "ENODATA", "no data available"},
++ {62, "ETIME", "timer expired"},
++ {63, "ENOSR", "out of streams resources"},
++ {64, "ENONET", "machine is not on the network"},
++ {65, "ENOPKG", "package not installed"},
++ {66, "EREMOTE", "object is remote"},
++ {67, "ENOLINK", "link has been severed"},
++ {68, "EADV", "advertise error"},
++ {69, "ESRMNT", "srmount error"},
++ {70, "ECOMM", "communication error on send"},
++ {71, "EPROTO", "protocol error"},
++ {73, "EDOTDOT", "RFS specific error"},
++ {74, "EMULTIHOP", "multihop attempted"},
++ {77, "EBADMSG", "bad message"},
++ {78, "ENAMETOOLONG", "file name too long"},
++ {79, "EOVERFLOW", "value too large for defined data type"},
++ {80, "ENOTUNIQ", "name not unique on network"},
++ {81, "EBADFD", "file descriptor in bad state"},
++ {82, "EREMCHG", "remote address changed"},
++ {83, "ELIBACC", "can not access a needed shared library"},
++ {84, "ELIBBAD", "accessing a corrupted shared library"},
++ {85, "ELIBSCN", ".lib section in a.out corrupted"},
++ {86, "ELIBMAX", "attempting to link in too many shared libraries"},
++ {87, "ELIBEXEC", "cannot exec a shared library directly"},
++ {88, "EILSEQ", "invalid or incomplete multibyte or wide character"},
++ {89, "ENOSYS", "function not implemented"},
++ {90, "ELOOP", "too many levels of symbolic links"},
++ {91, "ERESTART", "interrupted system call should be restarted"},
++ {92, "ESTRPIPE", "streams pipe error"},
++ {93, "ENOTEMPTY", "directory not empty"},
++ {94, "EUSERS", "too many users"},
++ {95, "ENOTSOCK", "socket operation on non-socket"},
++ {96, "EDESTADDRREQ", "destination address required"},
++ {97, "EMSGSIZE", "message too long"},
++ {98, "EPROTOTYPE", "protocol wrong type for socket"},
++ {99, "ENOPROTOOPT", "protocol not available"},
++ {120, "EPROTONOSUPPORT", "protocol not supported"},
++ {121, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {122, "ENOTSUP", "operation not supported"},
++ {123, "EPFNOSUPPORT", "protocol family not supported"},
++ {124, "EAFNOSUPPORT", "address family not supported by protocol"},
++ {125, "EADDRINUSE", "address already in use"},
++ {126, "EADDRNOTAVAIL", "cannot assign requested address"},
++ {127, "ENETDOWN", "network is down"},
++ {128, "ENETUNREACH", "network is unreachable"},
++ {129, "ENETRESET", "network dropped connection on reset"},
++ {130, "ECONNABORTED", "software caused connection abort"},
++ {131, "ECONNRESET", "connection reset by peer"},
++ {132, "ENOBUFS", "no buffer space available"},
++ {133, "EISCONN", "transport endpoint is already connected"},
++ {134, "ENOTCONN", "transport endpoint is not connected"},
++ {135, "EUCLEAN", "structure needs cleaning"},
++ {137, "ENOTNAM", "not a XENIX named type file"},
++ {138, "ENAVAIL", "no XENIX semaphores available"},
++ {139, "EISNAM", "is a named type file"},
++ {140, "EREMOTEIO", "remote I/O error"},
++ {141, "EINIT", "unknown error 141"},
++ {142, "EREMDEV", "unknown error 142"},
++ {143, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
++ {144, "ETOOMANYREFS", "too many references: cannot splice"},
++ {145, "ETIMEDOUT", "connection timed out"},
++ {146, "ECONNREFUSED", "connection refused"},
++ {147, "EHOSTDOWN", "host is down"},
++ {148, "EHOSTUNREACH", "no route to host"},
++ {149, "EALREADY", "operation already in progress"},
++ {150, "EINPROGRESS", "operation now in progress"},
++ {151, "ESTALE", "stale file handle"},
++ {158, "ECANCELED", "operation canceled"},
++ {159, "ENOMEDIUM", "no medium found"},
++ {160, "EMEDIUMTYPE", "wrong medium type"},
++ {161, "ENOKEY", "required key not available"},
++ {162, "EKEYEXPIRED", "key has expired"},
++ {163, "EKEYREVOKED", "key has been revoked"},
++ {164, "EKEYREJECTED", "key was rejected by service"},
++ {165, "EOWNERDEAD", "owner died"},
++ {166, "ENOTRECOVERABLE", "state not recoverable"},
++ {167, "ERFKILL", "operation not possible due to RF-kill"},
++ {168, "EHWPOISON", "memory page has hardware error"},
++ {1133, "EDQUOT", "disk quota exceeded"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/breakpoint trap",
+- 6: "aborted",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "user defined signal 1",
+- 17: "user defined signal 2",
+- 18: "child exited",
+- 19: "power failure",
+- 20: "window changed",
+- 21: "urgent I/O condition",
+- 22: "I/O possible",
+- 23: "stopped (signal)",
+- 24: "stopped",
+- 25: "continued",
+- 26: "stopped (tty input)",
+- 27: "stopped (tty output)",
+- 28: "virtual timer expired",
+- 29: "profiling timer expired",
+- 30: "CPU time limit exceeded",
+- 31: "file size limit exceeded",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/breakpoint trap"},
++ {6, "SIGABRT", "aborted"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGUSR1", "user defined signal 1"},
++ {17, "SIGUSR2", "user defined signal 2"},
++ {18, "SIGCHLD", "child exited"},
++ {19, "SIGPWR", "power failure"},
++ {20, "SIGWINCH", "window changed"},
++ {21, "SIGURG", "urgent I/O condition"},
++ {22, "SIGIO", "I/O possible"},
++ {23, "SIGSTOP", "stopped (signal)"},
++ {24, "SIGTSTP", "stopped"},
++ {25, "SIGCONT", "continued"},
++ {26, "SIGTTIN", "stopped (tty input)"},
++ {27, "SIGTTOU", "stopped (tty output)"},
++ {28, "SIGVTALRM", "virtual timer expired"},
++ {29, "SIGPROF", "profiling timer expired"},
++ {30, "SIGXCPU", "CPU time limit exceeded"},
++ {31, "SIGXFSZ", "file size limit exceeded"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go b/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go
+index 44191b0c..2dfe6bba 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go
+@@ -3,7 +3,7 @@
+
+ // +build mipsle,linux
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
+
+ package unix
+@@ -11,1873 +11,489 @@ package unix
+ import "syscall"
+
+ const (
+- AF_ALG = 0x26
+- AF_APPLETALK = 0x5
+- AF_ASH = 0x12
+- AF_ATMPVC = 0x8
+- AF_ATMSVC = 0x14
+- AF_AX25 = 0x3
+- AF_BLUETOOTH = 0x1f
+- AF_BRIDGE = 0x7
+- AF_CAIF = 0x25
+- AF_CAN = 0x1d
+- AF_DECnet = 0xc
+- AF_ECONET = 0x13
+- AF_FILE = 0x1
+- AF_IB = 0x1b
+- AF_IEEE802154 = 0x24
+- AF_INET = 0x2
+- AF_INET6 = 0xa
+- AF_IPX = 0x4
+- AF_IRDA = 0x17
+- AF_ISDN = 0x22
+- AF_IUCV = 0x20
+- AF_KCM = 0x29
+- AF_KEY = 0xf
+- AF_LLC = 0x1a
+- AF_LOCAL = 0x1
+- AF_MAX = 0x2b
+- AF_MPLS = 0x1c
+- AF_NETBEUI = 0xd
+- AF_NETLINK = 0x10
+- AF_NETROM = 0x6
+- AF_NFC = 0x27
+- AF_PACKET = 0x11
+- AF_PHONET = 0x23
+- AF_PPPOX = 0x18
+- AF_QIPCRTR = 0x2a
+- AF_RDS = 0x15
+- AF_ROSE = 0xb
+- AF_ROUTE = 0x10
+- AF_RXRPC = 0x21
+- AF_SECURITY = 0xe
+- AF_SNA = 0x16
+- AF_TIPC = 0x1e
+- AF_UNIX = 0x1
+- AF_UNSPEC = 0x0
+- AF_VSOCK = 0x28
+- AF_WANPIPE = 0x19
+- AF_X25 = 0x9
+- ALG_OP_DECRYPT = 0x0
+- ALG_OP_ENCRYPT = 0x1
+- ALG_SET_AEAD_ASSOCLEN = 0x4
+- ALG_SET_AEAD_AUTHSIZE = 0x5
+- ALG_SET_IV = 0x2
+- ALG_SET_KEY = 0x1
+- ALG_SET_OP = 0x3
+- ARPHRD_6LOWPAN = 0x339
+- ARPHRD_ADAPT = 0x108
+- ARPHRD_APPLETLK = 0x8
+- ARPHRD_ARCNET = 0x7
+- ARPHRD_ASH = 0x30d
+- ARPHRD_ATM = 0x13
+- ARPHRD_AX25 = 0x3
+- ARPHRD_BIF = 0x307
+- ARPHRD_CAIF = 0x336
+- ARPHRD_CAN = 0x118
+- ARPHRD_CHAOS = 0x5
+- ARPHRD_CISCO = 0x201
+- ARPHRD_CSLIP = 0x101
+- ARPHRD_CSLIP6 = 0x103
+- ARPHRD_DDCMP = 0x205
+- ARPHRD_DLCI = 0xf
+- ARPHRD_ECONET = 0x30e
+- ARPHRD_EETHER = 0x2
+- ARPHRD_ETHER = 0x1
+- ARPHRD_EUI64 = 0x1b
+- ARPHRD_FCAL = 0x311
+- ARPHRD_FCFABRIC = 0x313
+- ARPHRD_FCPL = 0x312
+- ARPHRD_FCPP = 0x310
+- ARPHRD_FDDI = 0x306
+- ARPHRD_FRAD = 0x302
+- ARPHRD_HDLC = 0x201
+- ARPHRD_HIPPI = 0x30c
+- ARPHRD_HWX25 = 0x110
+- ARPHRD_IEEE1394 = 0x18
+- ARPHRD_IEEE802 = 0x6
+- ARPHRD_IEEE80211 = 0x321
+- ARPHRD_IEEE80211_PRISM = 0x322
+- ARPHRD_IEEE80211_RADIOTAP = 0x323
+- ARPHRD_IEEE802154 = 0x324
+- ARPHRD_IEEE802154_MONITOR = 0x325
+- ARPHRD_IEEE802_TR = 0x320
+- ARPHRD_INFINIBAND = 0x20
+- ARPHRD_IP6GRE = 0x337
+- ARPHRD_IPDDP = 0x309
+- ARPHRD_IPGRE = 0x30a
+- ARPHRD_IRDA = 0x30f
+- ARPHRD_LAPB = 0x204
+- ARPHRD_LOCALTLK = 0x305
+- ARPHRD_LOOPBACK = 0x304
+- ARPHRD_METRICOM = 0x17
+- ARPHRD_NETLINK = 0x338
+- ARPHRD_NETROM = 0x0
+- ARPHRD_NONE = 0xfffe
+- ARPHRD_PHONET = 0x334
+- ARPHRD_PHONET_PIPE = 0x335
+- ARPHRD_PIMREG = 0x30b
+- ARPHRD_PPP = 0x200
+- ARPHRD_PRONET = 0x4
+- ARPHRD_RAWHDLC = 0x206
+- ARPHRD_ROSE = 0x10e
+- ARPHRD_RSRVD = 0x104
+- ARPHRD_SIT = 0x308
+- ARPHRD_SKIP = 0x303
+- ARPHRD_SLIP = 0x100
+- ARPHRD_SLIP6 = 0x102
+- ARPHRD_TUNNEL = 0x300
+- ARPHRD_TUNNEL6 = 0x301
+- ARPHRD_VOID = 0xffff
+- ARPHRD_X25 = 0x10f
+- B0 = 0x0
+- B1000000 = 0x1008
+- B110 = 0x3
+- B115200 = 0x1002
+- B1152000 = 0x1009
+- B1200 = 0x9
+- B134 = 0x4
+- B150 = 0x5
+- B1500000 = 0x100a
+- B1800 = 0xa
+- B19200 = 0xe
+- B200 = 0x6
+- B2000000 = 0x100b
+- B230400 = 0x1003
+- B2400 = 0xb
+- B2500000 = 0x100c
+- B300 = 0x7
+- B3000000 = 0x100d
+- B3500000 = 0x100e
+- B38400 = 0xf
+- B4000000 = 0x100f
+- B460800 = 0x1004
+- B4800 = 0xc
+- B50 = 0x1
+- B500000 = 0x1005
+- B57600 = 0x1001
+- B576000 = 0x1006
+- B600 = 0x8
+- B75 = 0x2
+- B921600 = 0x1007
+- B9600 = 0xd
+- BLKBSZGET = 0x40041270
+- BLKBSZSET = 0x80041271
+- BLKFLSBUF = 0x20001261
+- BLKFRAGET = 0x20001265
+- BLKFRASET = 0x20001264
+- BLKGETSIZE = 0x20001260
+- BLKGETSIZE64 = 0x40041272
+- BLKPBSZGET = 0x2000127b
+- BLKRAGET = 0x20001263
+- BLKRASET = 0x20001262
+- BLKROGET = 0x2000125e
+- BLKROSET = 0x2000125d
+- BLKRRPART = 0x2000125f
+- BLKSECTGET = 0x20001267
+- BLKSECTSET = 0x20001266
+- BLKSSZGET = 0x20001268
+- BOTHER = 0x1000
+- BPF_A = 0x10
+- BPF_ABS = 0x20
+- BPF_ADD = 0x0
+- BPF_ALU = 0x4
+- BPF_AND = 0x50
+- BPF_B = 0x10
+- BPF_DIV = 0x30
+- BPF_H = 0x8
+- BPF_IMM = 0x0
+- BPF_IND = 0x40
+- BPF_JA = 0x0
+- BPF_JEQ = 0x10
+- BPF_JGE = 0x30
+- BPF_JGT = 0x20
+- BPF_JMP = 0x5
+- BPF_JSET = 0x40
+- BPF_K = 0x0
+- BPF_LD = 0x0
+- BPF_LDX = 0x1
+- BPF_LEN = 0x80
+- BPF_LL_OFF = -0x200000
+- BPF_LSH = 0x60
+- BPF_MAJOR_VERSION = 0x1
+- BPF_MAXINSNS = 0x1000
+- BPF_MEM = 0x60
+- BPF_MEMWORDS = 0x10
+- BPF_MINOR_VERSION = 0x1
+- BPF_MISC = 0x7
+- BPF_MOD = 0x90
+- BPF_MSH = 0xa0
+- BPF_MUL = 0x20
+- BPF_NEG = 0x80
+- BPF_NET_OFF = -0x100000
+- BPF_OR = 0x40
+- BPF_RET = 0x6
+- BPF_RSH = 0x70
+- BPF_ST = 0x2
+- BPF_STX = 0x3
+- BPF_SUB = 0x10
+- BPF_TAX = 0x0
+- BPF_TXA = 0x80
+- BPF_W = 0x0
+- BPF_X = 0x8
+- BPF_XOR = 0xa0
+- BRKINT = 0x2
+- BS0 = 0x0
+- BS1 = 0x2000
+- BSDLY = 0x2000
+- CAN_BCM = 0x2
+- CAN_EFF_FLAG = 0x80000000
+- CAN_EFF_ID_BITS = 0x1d
+- CAN_EFF_MASK = 0x1fffffff
+- CAN_ERR_FLAG = 0x20000000
+- CAN_ERR_MASK = 0x1fffffff
+- CAN_INV_FILTER = 0x20000000
+- CAN_ISOTP = 0x6
+- CAN_MAX_DLC = 0x8
+- CAN_MAX_DLEN = 0x8
+- CAN_MCNET = 0x5
+- CAN_MTU = 0x10
+- CAN_NPROTO = 0x7
+- CAN_RAW = 0x1
+- CAN_RAW_FILTER_MAX = 0x200
+- CAN_RTR_FLAG = 0x40000000
+- CAN_SFF_ID_BITS = 0xb
+- CAN_SFF_MASK = 0x7ff
+- CAN_TP16 = 0x3
+- CAN_TP20 = 0x4
+- CBAUD = 0x100f
+- CBAUDEX = 0x1000
+- CFLUSH = 0xf
+- CIBAUD = 0x100f0000
+- CLOCAL = 0x800
+- CLOCK_BOOTTIME = 0x7
+- CLOCK_BOOTTIME_ALARM = 0x9
+- CLOCK_DEFAULT = 0x0
+- CLOCK_EXT = 0x1
+- CLOCK_INT = 0x2
+- CLOCK_MONOTONIC = 0x1
+- CLOCK_MONOTONIC_COARSE = 0x6
+- CLOCK_MONOTONIC_RAW = 0x4
+- CLOCK_PROCESS_CPUTIME_ID = 0x2
+- CLOCK_REALTIME = 0x0
+- CLOCK_REALTIME_ALARM = 0x8
+- CLOCK_REALTIME_COARSE = 0x5
+- CLOCK_TAI = 0xb
+- CLOCK_THREAD_CPUTIME_ID = 0x3
+- CLOCK_TXFROMRX = 0x4
+- CLOCK_TXINT = 0x3
+- CLONE_CHILD_CLEARTID = 0x200000
+- CLONE_CHILD_SETTID = 0x1000000
+- CLONE_DETACHED = 0x400000
+- CLONE_FILES = 0x400
+- CLONE_FS = 0x200
+- CLONE_IO = 0x80000000
+- CLONE_NEWCGROUP = 0x2000000
+- CLONE_NEWIPC = 0x8000000
+- CLONE_NEWNET = 0x40000000
+- CLONE_NEWNS = 0x20000
+- CLONE_NEWPID = 0x20000000
+- CLONE_NEWUSER = 0x10000000
+- CLONE_NEWUTS = 0x4000000
+- CLONE_PARENT = 0x8000
+- CLONE_PARENT_SETTID = 0x100000
+- CLONE_PTRACE = 0x2000
+- CLONE_SETTLS = 0x80000
+- CLONE_SIGHAND = 0x800
+- CLONE_SYSVSEM = 0x40000
+- CLONE_THREAD = 0x10000
+- CLONE_UNTRACED = 0x800000
+- CLONE_VFORK = 0x4000
+- CLONE_VM = 0x100
+- CMSPAR = 0x40000000
+- CR0 = 0x0
+- CR1 = 0x200
+- CR2 = 0x400
+- CR3 = 0x600
+- CRDLY = 0x600
+- CREAD = 0x80
+- CRTSCTS = 0x80000000
+- CS5 = 0x0
+- CS6 = 0x10
+- CS7 = 0x20
+- CS8 = 0x30
+- CSIGNAL = 0xff
+- CSIZE = 0x30
+- CSTART = 0x11
+- CSTATUS = 0x0
+- CSTOP = 0x13
+- CSTOPB = 0x40
+- CSUSP = 0x1a
+- DT_BLK = 0x6
+- DT_CHR = 0x2
+- DT_DIR = 0x4
+- DT_FIFO = 0x1
+- DT_LNK = 0xa
+- DT_REG = 0x8
+- DT_SOCK = 0xc
+- DT_UNKNOWN = 0x0
+- DT_WHT = 0xe
+- ECHO = 0x8
+- ECHOCTL = 0x200
+- ECHOE = 0x10
+- ECHOK = 0x20
+- ECHOKE = 0x800
+- ECHONL = 0x40
+- ECHOPRT = 0x400
+- EFD_CLOEXEC = 0x80000
+- EFD_NONBLOCK = 0x80
+- EFD_SEMAPHORE = 0x1
+- ENCODING_DEFAULT = 0x0
+- ENCODING_FM_MARK = 0x3
+- ENCODING_FM_SPACE = 0x4
+- ENCODING_MANCHESTER = 0x5
+- ENCODING_NRZ = 0x1
+- ENCODING_NRZI = 0x2
+- EPOLLERR = 0x8
+- EPOLLET = 0x80000000
+- EPOLLEXCLUSIVE = 0x10000000
+- EPOLLHUP = 0x10
+- EPOLLIN = 0x1
+- EPOLLMSG = 0x400
+- EPOLLONESHOT = 0x40000000
+- EPOLLOUT = 0x4
+- EPOLLPRI = 0x2
+- EPOLLRDBAND = 0x80
+- EPOLLRDHUP = 0x2000
+- EPOLLRDNORM = 0x40
+- EPOLLWAKEUP = 0x20000000
+- EPOLLWRBAND = 0x200
+- EPOLLWRNORM = 0x100
+- EPOLL_CLOEXEC = 0x80000
+- EPOLL_CTL_ADD = 0x1
+- EPOLL_CTL_DEL = 0x2
+- EPOLL_CTL_MOD = 0x3
+- ETH_P_1588 = 0x88f7
+- ETH_P_8021AD = 0x88a8
+- ETH_P_8021AH = 0x88e7
+- ETH_P_8021Q = 0x8100
+- ETH_P_80221 = 0x8917
+- ETH_P_802_2 = 0x4
+- ETH_P_802_3 = 0x1
+- ETH_P_802_3_MIN = 0x600
+- ETH_P_802_EX1 = 0x88b5
+- ETH_P_AARP = 0x80f3
+- ETH_P_AF_IUCV = 0xfbfb
+- ETH_P_ALL = 0x3
+- ETH_P_AOE = 0x88a2
+- ETH_P_ARCNET = 0x1a
+- ETH_P_ARP = 0x806
+- ETH_P_ATALK = 0x809b
+- ETH_P_ATMFATE = 0x8884
+- ETH_P_ATMMPOA = 0x884c
+- ETH_P_AX25 = 0x2
+- ETH_P_BATMAN = 0x4305
+- ETH_P_BPQ = 0x8ff
+- ETH_P_CAIF = 0xf7
+- ETH_P_CAN = 0xc
+- ETH_P_CANFD = 0xd
+- ETH_P_CONTROL = 0x16
+- ETH_P_CUST = 0x6006
+- ETH_P_DDCMP = 0x6
+- ETH_P_DEC = 0x6000
+- ETH_P_DIAG = 0x6005
+- ETH_P_DNA_DL = 0x6001
+- ETH_P_DNA_RC = 0x6002
+- ETH_P_DNA_RT = 0x6003
+- ETH_P_DSA = 0x1b
+- ETH_P_ECONET = 0x18
+- ETH_P_EDSA = 0xdada
+- ETH_P_FCOE = 0x8906
+- ETH_P_FIP = 0x8914
+- ETH_P_HDLC = 0x19
+- ETH_P_HSR = 0x892f
+- ETH_P_IEEE802154 = 0xf6
+- ETH_P_IEEEPUP = 0xa00
+- ETH_P_IEEEPUPAT = 0xa01
+- ETH_P_IP = 0x800
+- ETH_P_IPV6 = 0x86dd
+- ETH_P_IPX = 0x8137
+- ETH_P_IRDA = 0x17
+- ETH_P_LAT = 0x6004
+- ETH_P_LINK_CTL = 0x886c
+- ETH_P_LOCALTALK = 0x9
+- ETH_P_LOOP = 0x60
+- ETH_P_LOOPBACK = 0x9000
+- ETH_P_MACSEC = 0x88e5
+- ETH_P_MOBITEX = 0x15
+- ETH_P_MPLS_MC = 0x8848
+- ETH_P_MPLS_UC = 0x8847
+- ETH_P_MVRP = 0x88f5
+- ETH_P_NCSI = 0x88f8
+- ETH_P_PAE = 0x888e
+- ETH_P_PAUSE = 0x8808
+- ETH_P_PHONET = 0xf5
+- ETH_P_PPPTALK = 0x10
+- ETH_P_PPP_DISC = 0x8863
+- ETH_P_PPP_MP = 0x8
+- ETH_P_PPP_SES = 0x8864
+- ETH_P_PRP = 0x88fb
+- ETH_P_PUP = 0x200
+- ETH_P_PUPAT = 0x201
+- ETH_P_QINQ1 = 0x9100
+- ETH_P_QINQ2 = 0x9200
+- ETH_P_QINQ3 = 0x9300
+- ETH_P_RARP = 0x8035
+- ETH_P_SCA = 0x6007
+- ETH_P_SLOW = 0x8809
+- ETH_P_SNAP = 0x5
+- ETH_P_TDLS = 0x890d
+- ETH_P_TEB = 0x6558
+- ETH_P_TIPC = 0x88ca
+- ETH_P_TRAILER = 0x1c
+- ETH_P_TR_802_2 = 0x11
+- ETH_P_TSN = 0x22f0
+- ETH_P_WAN_PPP = 0x7
+- ETH_P_WCCP = 0x883e
+- ETH_P_X25 = 0x805
+- ETH_P_XDSA = 0xf8
+- EXTA = 0xe
+- EXTB = 0xf
+- EXTPROC = 0x10000
+- FALLOC_FL_COLLAPSE_RANGE = 0x8
+- FALLOC_FL_INSERT_RANGE = 0x20
+- FALLOC_FL_KEEP_SIZE = 0x1
+- FALLOC_FL_NO_HIDE_STALE = 0x4
+- FALLOC_FL_PUNCH_HOLE = 0x2
+- FALLOC_FL_UNSHARE_RANGE = 0x40
+- FALLOC_FL_ZERO_RANGE = 0x10
+- FD_CLOEXEC = 0x1
+- FD_SETSIZE = 0x400
+- FF0 = 0x0
+- FF1 = 0x8000
+- FFDLY = 0x8000
+- FLUSHO = 0x2000
+- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
+- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
+- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
+- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
+- FS_ENCRYPTION_MODE_INVALID = 0x0
+- FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
+- FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
+- FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
+- FS_KEY_DESCRIPTOR_SIZE = 0x8
+- FS_KEY_DESC_PREFIX = "fscrypt:"
+- FS_KEY_DESC_PREFIX_SIZE = 0x8
+- FS_MAX_KEY_SIZE = 0x40
+- FS_POLICY_FLAGS_PAD_16 = 0x2
+- FS_POLICY_FLAGS_PAD_32 = 0x3
+- FS_POLICY_FLAGS_PAD_4 = 0x0
+- FS_POLICY_FLAGS_PAD_8 = 0x1
+- FS_POLICY_FLAGS_PAD_MASK = 0x3
+- FS_POLICY_FLAGS_VALID = 0x3
+- F_DUPFD = 0x0
+- F_DUPFD_CLOEXEC = 0x406
+- F_EXLCK = 0x4
+- F_GETFD = 0x1
+- F_GETFL = 0x3
+- F_GETLEASE = 0x401
+- F_GETLK = 0x21
+- F_GETLK64 = 0x21
+- F_GETOWN = 0x17
+- F_GETOWN_EX = 0x10
+- F_GETPIPE_SZ = 0x408
+- F_GETSIG = 0xb
+- F_LOCK = 0x1
+- F_NOTIFY = 0x402
+- F_OFD_GETLK = 0x24
+- F_OFD_SETLK = 0x25
+- F_OFD_SETLKW = 0x26
+- F_OK = 0x0
+- F_RDLCK = 0x0
+- F_SETFD = 0x2
+- F_SETFL = 0x4
+- F_SETLEASE = 0x400
+- F_SETLK = 0x22
+- F_SETLK64 = 0x22
+- F_SETLKW = 0x23
+- F_SETLKW64 = 0x23
+- F_SETOWN = 0x18
+- F_SETOWN_EX = 0xf
+- F_SETPIPE_SZ = 0x407
+- F_SETSIG = 0xa
+- F_SHLCK = 0x8
+- F_TEST = 0x3
+- F_TLOCK = 0x2
+- F_ULOCK = 0x0
+- F_UNLCK = 0x2
+- F_WRLCK = 0x1
+- GENL_ADMIN_PERM = 0x1
+- GENL_CMD_CAP_DO = 0x2
+- GENL_CMD_CAP_DUMP = 0x4
+- GENL_CMD_CAP_HASPOL = 0x8
+- GENL_HDRLEN = 0x4
+- GENL_ID_CTRL = 0x10
+- GENL_ID_PMCRAID = 0x12
+- GENL_ID_VFS_DQUOT = 0x11
+- GENL_MAX_ID = 0x3ff
+- GENL_MIN_ID = 0x10
+- GENL_NAMSIZ = 0x10
+- GENL_START_ALLOC = 0x13
+- GENL_UNS_ADMIN_PERM = 0x10
+- GRND_NONBLOCK = 0x1
+- GRND_RANDOM = 0x2
+- HUPCL = 0x400
+- IBSHIFT = 0x10
+- ICANON = 0x2
+- ICMPV6_FILTER = 0x1
+- ICRNL = 0x100
+- IEXTEN = 0x100
+- IFA_F_DADFAILED = 0x8
+- IFA_F_DEPRECATED = 0x20
+- IFA_F_HOMEADDRESS = 0x10
+- IFA_F_MANAGETEMPADDR = 0x100
+- IFA_F_MCAUTOJOIN = 0x400
+- IFA_F_NODAD = 0x2
+- IFA_F_NOPREFIXROUTE = 0x200
+- IFA_F_OPTIMISTIC = 0x4
+- IFA_F_PERMANENT = 0x80
+- IFA_F_SECONDARY = 0x1
+- IFA_F_STABLE_PRIVACY = 0x800
+- IFA_F_TEMPORARY = 0x1
+- IFA_F_TENTATIVE = 0x40
+- IFA_MAX = 0x8
+- IFF_ALLMULTI = 0x200
+- IFF_ATTACH_QUEUE = 0x200
+- IFF_AUTOMEDIA = 0x4000
+- IFF_BROADCAST = 0x2
+- IFF_DEBUG = 0x4
+- IFF_DETACH_QUEUE = 0x400
+- IFF_DORMANT = 0x20000
+- IFF_DYNAMIC = 0x8000
+- IFF_ECHO = 0x40000
+- IFF_LOOPBACK = 0x8
+- IFF_LOWER_UP = 0x10000
+- IFF_MASTER = 0x400
+- IFF_MULTICAST = 0x1000
+- IFF_MULTI_QUEUE = 0x100
+- IFF_NOARP = 0x80
+- IFF_NOFILTER = 0x1000
+- IFF_NOTRAILERS = 0x20
+- IFF_NO_PI = 0x1000
+- IFF_ONE_QUEUE = 0x2000
+- IFF_PERSIST = 0x800
+- IFF_POINTOPOINT = 0x10
+- IFF_PORTSEL = 0x2000
+- IFF_PROMISC = 0x100
+- IFF_RUNNING = 0x40
+- IFF_SLAVE = 0x800
+- IFF_TAP = 0x2
+- IFF_TUN = 0x1
+- IFF_TUN_EXCL = 0x8000
+- IFF_UP = 0x1
+- IFF_VNET_HDR = 0x4000
+- IFF_VOLATILE = 0x70c5a
+- IFNAMSIZ = 0x10
+- IGNBRK = 0x1
+- IGNCR = 0x80
+- IGNPAR = 0x4
+- IMAXBEL = 0x2000
+- INLCR = 0x40
+- INPCK = 0x10
+- IN_ACCESS = 0x1
+- IN_ALL_EVENTS = 0xfff
+- IN_ATTRIB = 0x4
+- IN_CLASSA_HOST = 0xffffff
+- IN_CLASSA_MAX = 0x80
+- IN_CLASSA_NET = 0xff000000
+- IN_CLASSA_NSHIFT = 0x18
+- IN_CLASSB_HOST = 0xffff
+- IN_CLASSB_MAX = 0x10000
+- IN_CLASSB_NET = 0xffff0000
+- IN_CLASSB_NSHIFT = 0x10
+- IN_CLASSC_HOST = 0xff
+- IN_CLASSC_NET = 0xffffff00
+- IN_CLASSC_NSHIFT = 0x8
+- IN_CLOEXEC = 0x80000
+- IN_CLOSE = 0x18
+- IN_CLOSE_NOWRITE = 0x10
+- IN_CLOSE_WRITE = 0x8
+- IN_CREATE = 0x100
+- IN_DELETE = 0x200
+- IN_DELETE_SELF = 0x400
+- IN_DONT_FOLLOW = 0x2000000
+- IN_EXCL_UNLINK = 0x4000000
+- IN_IGNORED = 0x8000
+- IN_ISDIR = 0x40000000
+- IN_LOOPBACKNET = 0x7f
+- IN_MASK_ADD = 0x20000000
+- IN_MODIFY = 0x2
+- IN_MOVE = 0xc0
+- IN_MOVED_FROM = 0x40
+- IN_MOVED_TO = 0x80
+- IN_MOVE_SELF = 0x800
+- IN_NONBLOCK = 0x80
+- IN_ONESHOT = 0x80000000
+- IN_ONLYDIR = 0x1000000
+- IN_OPEN = 0x20
+- IN_Q_OVERFLOW = 0x4000
+- IN_UNMOUNT = 0x2000
+- IPPROTO_AH = 0x33
+- IPPROTO_BEETPH = 0x5e
+- IPPROTO_COMP = 0x6c
+- IPPROTO_DCCP = 0x21
+- IPPROTO_DSTOPTS = 0x3c
+- IPPROTO_EGP = 0x8
+- IPPROTO_ENCAP = 0x62
+- IPPROTO_ESP = 0x32
+- IPPROTO_FRAGMENT = 0x2c
+- IPPROTO_GRE = 0x2f
+- IPPROTO_HOPOPTS = 0x0
+- IPPROTO_ICMP = 0x1
+- IPPROTO_ICMPV6 = 0x3a
+- IPPROTO_IDP = 0x16
+- IPPROTO_IGMP = 0x2
+- IPPROTO_IP = 0x0
+- IPPROTO_IPIP = 0x4
+- IPPROTO_IPV6 = 0x29
+- IPPROTO_MH = 0x87
+- IPPROTO_MPLS = 0x89
+- IPPROTO_MTP = 0x5c
+- IPPROTO_NONE = 0x3b
+- IPPROTO_PIM = 0x67
+- IPPROTO_PUP = 0xc
+- IPPROTO_RAW = 0xff
+- IPPROTO_ROUTING = 0x2b
+- IPPROTO_RSVP = 0x2e
+- IPPROTO_SCTP = 0x84
+- IPPROTO_TCP = 0x6
+- IPPROTO_TP = 0x1d
+- IPPROTO_UDP = 0x11
+- IPPROTO_UDPLITE = 0x88
+- IPV6_2292DSTOPTS = 0x4
+- IPV6_2292HOPLIMIT = 0x8
+- IPV6_2292HOPOPTS = 0x3
+- IPV6_2292PKTINFO = 0x2
+- IPV6_2292PKTOPTIONS = 0x6
+- IPV6_2292RTHDR = 0x5
+- IPV6_ADDRFORM = 0x1
+- IPV6_ADD_MEMBERSHIP = 0x14
+- IPV6_AUTHHDR = 0xa
+- IPV6_CHECKSUM = 0x7
+- IPV6_DONTFRAG = 0x3e
+- IPV6_DROP_MEMBERSHIP = 0x15
+- IPV6_DSTOPTS = 0x3b
+- IPV6_HDRINCL = 0x24
+- IPV6_HOPLIMIT = 0x34
+- IPV6_HOPOPTS = 0x36
+- IPV6_IPSEC_POLICY = 0x22
+- IPV6_JOIN_ANYCAST = 0x1b
+- IPV6_JOIN_GROUP = 0x14
+- IPV6_LEAVE_ANYCAST = 0x1c
+- IPV6_LEAVE_GROUP = 0x15
+- IPV6_MTU = 0x18
+- IPV6_MTU_DISCOVER = 0x17
+- IPV6_MULTICAST_HOPS = 0x12
+- IPV6_MULTICAST_IF = 0x11
+- IPV6_MULTICAST_LOOP = 0x13
+- IPV6_NEXTHOP = 0x9
+- IPV6_PATHMTU = 0x3d
+- IPV6_PKTINFO = 0x32
+- IPV6_PMTUDISC_DO = 0x2
+- IPV6_PMTUDISC_DONT = 0x0
+- IPV6_PMTUDISC_INTERFACE = 0x4
+- IPV6_PMTUDISC_OMIT = 0x5
+- IPV6_PMTUDISC_PROBE = 0x3
+- IPV6_PMTUDISC_WANT = 0x1
+- IPV6_RECVDSTOPTS = 0x3a
+- IPV6_RECVERR = 0x19
+- IPV6_RECVHOPLIMIT = 0x33
+- IPV6_RECVHOPOPTS = 0x35
+- IPV6_RECVPATHMTU = 0x3c
+- IPV6_RECVPKTINFO = 0x31
+- IPV6_RECVRTHDR = 0x38
+- IPV6_RECVTCLASS = 0x42
+- IPV6_ROUTER_ALERT = 0x16
+- IPV6_RTHDR = 0x39
+- IPV6_RTHDRDSTOPTS = 0x37
+- IPV6_RTHDR_LOOSE = 0x0
+- IPV6_RTHDR_STRICT = 0x1
+- IPV6_RTHDR_TYPE_0 = 0x0
+- IPV6_RXDSTOPTS = 0x3b
+- IPV6_RXHOPOPTS = 0x36
+- IPV6_TCLASS = 0x43
+- IPV6_UNICAST_HOPS = 0x10
+- IPV6_V6ONLY = 0x1a
+- IPV6_XFRM_POLICY = 0x23
+- IP_ADD_MEMBERSHIP = 0x23
+- IP_ADD_SOURCE_MEMBERSHIP = 0x27
+- IP_BIND_ADDRESS_NO_PORT = 0x18
+- IP_BLOCK_SOURCE = 0x26
+- IP_CHECKSUM = 0x17
+- IP_DEFAULT_MULTICAST_LOOP = 0x1
+- IP_DEFAULT_MULTICAST_TTL = 0x1
+- IP_DF = 0x4000
+- IP_DROP_MEMBERSHIP = 0x24
+- IP_DROP_SOURCE_MEMBERSHIP = 0x28
+- IP_FREEBIND = 0xf
+- IP_HDRINCL = 0x3
+- IP_IPSEC_POLICY = 0x10
+- IP_MAXPACKET = 0xffff
+- IP_MAX_MEMBERSHIPS = 0x14
+- IP_MF = 0x2000
+- IP_MINTTL = 0x15
+- IP_MSFILTER = 0x29
+- IP_MSS = 0x240
+- IP_MTU = 0xe
+- IP_MTU_DISCOVER = 0xa
+- IP_MULTICAST_ALL = 0x31
+- IP_MULTICAST_IF = 0x20
+- IP_MULTICAST_LOOP = 0x22
+- IP_MULTICAST_TTL = 0x21
+- IP_NODEFRAG = 0x16
+- IP_OFFMASK = 0x1fff
+- IP_OPTIONS = 0x4
+- IP_ORIGDSTADDR = 0x14
+- IP_PASSSEC = 0x12
+- IP_PKTINFO = 0x8
+- IP_PKTOPTIONS = 0x9
+- IP_PMTUDISC = 0xa
+- IP_PMTUDISC_DO = 0x2
+- IP_PMTUDISC_DONT = 0x0
+- IP_PMTUDISC_INTERFACE = 0x4
+- IP_PMTUDISC_OMIT = 0x5
+- IP_PMTUDISC_PROBE = 0x3
+- IP_PMTUDISC_WANT = 0x1
+- IP_RECVERR = 0xb
+- IP_RECVOPTS = 0x6
+- IP_RECVORIGDSTADDR = 0x14
+- IP_RECVRETOPTS = 0x7
+- IP_RECVTOS = 0xd
+- IP_RECVTTL = 0xc
+- IP_RETOPTS = 0x7
+- IP_RF = 0x8000
+- IP_ROUTER_ALERT = 0x5
+- IP_TOS = 0x1
+- IP_TRANSPARENT = 0x13
+- IP_TTL = 0x2
+- IP_UNBLOCK_SOURCE = 0x25
+- IP_UNICAST_IF = 0x32
+- IP_XFRM_POLICY = 0x11
+- ISIG = 0x1
+- ISTRIP = 0x20
+- IUCLC = 0x200
+- IUTF8 = 0x4000
+- IXANY = 0x800
+- IXOFF = 0x1000
+- IXON = 0x400
+- KEYCTL_ASSUME_AUTHORITY = 0x10
+- KEYCTL_CHOWN = 0x4
+- KEYCTL_CLEAR = 0x7
+- KEYCTL_DESCRIBE = 0x6
+- KEYCTL_DH_COMPUTE = 0x17
+- KEYCTL_GET_KEYRING_ID = 0x0
+- KEYCTL_GET_PERSISTENT = 0x16
+- KEYCTL_GET_SECURITY = 0x11
+- KEYCTL_INSTANTIATE = 0xc
+- KEYCTL_INSTANTIATE_IOV = 0x14
+- KEYCTL_INVALIDATE = 0x15
+- KEYCTL_JOIN_SESSION_KEYRING = 0x1
+- KEYCTL_LINK = 0x8
+- KEYCTL_NEGATE = 0xd
+- KEYCTL_READ = 0xb
+- KEYCTL_REJECT = 0x13
+- KEYCTL_REVOKE = 0x3
+- KEYCTL_SEARCH = 0xa
+- KEYCTL_SESSION_TO_PARENT = 0x12
+- KEYCTL_SETPERM = 0x5
+- KEYCTL_SET_REQKEY_KEYRING = 0xe
+- KEYCTL_SET_TIMEOUT = 0xf
+- KEYCTL_UNLINK = 0x9
+- KEYCTL_UPDATE = 0x2
+- KEY_REQKEY_DEFL_DEFAULT = 0x0
+- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
+- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
+- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
+- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
+- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
+- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
+- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
+- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
+- KEY_SPEC_GROUP_KEYRING = -0x6
+- KEY_SPEC_PROCESS_KEYRING = -0x2
+- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
+- KEY_SPEC_REQUESTOR_KEYRING = -0x8
+- KEY_SPEC_SESSION_KEYRING = -0x3
+- KEY_SPEC_THREAD_KEYRING = -0x1
+- KEY_SPEC_USER_KEYRING = -0x4
+- KEY_SPEC_USER_SESSION_KEYRING = -0x5
+- LINUX_REBOOT_CMD_CAD_OFF = 0x0
+- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
+- LINUX_REBOOT_CMD_HALT = 0xcdef0123
+- LINUX_REBOOT_CMD_KEXEC = 0x45584543
+- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
+- LINUX_REBOOT_CMD_RESTART = 0x1234567
+- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
+- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
+- LINUX_REBOOT_MAGIC1 = 0xfee1dead
+- LINUX_REBOOT_MAGIC2 = 0x28121969
+- LOCK_EX = 0x2
+- LOCK_NB = 0x4
+- LOCK_SH = 0x1
+- LOCK_UN = 0x8
+- MADV_DODUMP = 0x11
+- MADV_DOFORK = 0xb
+- MADV_DONTDUMP = 0x10
+- MADV_DONTFORK = 0xa
+- MADV_DONTNEED = 0x4
+- MADV_FREE = 0x8
+- MADV_HUGEPAGE = 0xe
+- MADV_HWPOISON = 0x64
+- MADV_MERGEABLE = 0xc
+- MADV_NOHUGEPAGE = 0xf
+- MADV_NORMAL = 0x0
+- MADV_RANDOM = 0x1
+- MADV_REMOVE = 0x9
+- MADV_SEQUENTIAL = 0x2
+- MADV_UNMERGEABLE = 0xd
+- MADV_WILLNEED = 0x3
+- MAP_ANON = 0x800
+- MAP_ANONYMOUS = 0x800
+- MAP_DENYWRITE = 0x2000
+- MAP_EXECUTABLE = 0x4000
+- MAP_FILE = 0x0
+- MAP_FIXED = 0x10
+- MAP_GROWSDOWN = 0x1000
+- MAP_HUGETLB = 0x80000
+- MAP_HUGE_MASK = 0x3f
+- MAP_HUGE_SHIFT = 0x1a
+- MAP_LOCKED = 0x8000
+- MAP_NONBLOCK = 0x20000
+- MAP_NORESERVE = 0x400
+- MAP_POPULATE = 0x10000
+- MAP_PRIVATE = 0x2
+- MAP_RENAME = 0x800
+- MAP_SHARED = 0x1
+- MAP_STACK = 0x40000
+- MAP_TYPE = 0xf
+- MCL_CURRENT = 0x1
+- MCL_FUTURE = 0x2
+- MCL_ONFAULT = 0x4
+- MNT_DETACH = 0x2
+- MNT_EXPIRE = 0x4
+- MNT_FORCE = 0x1
+- MSG_BATCH = 0x40000
+- MSG_CMSG_CLOEXEC = 0x40000000
+- MSG_CONFIRM = 0x800
+- MSG_CTRUNC = 0x8
+- MSG_DONTROUTE = 0x4
+- MSG_DONTWAIT = 0x40
+- MSG_EOR = 0x80
+- MSG_ERRQUEUE = 0x2000
+- MSG_FASTOPEN = 0x20000000
+- MSG_FIN = 0x200
+- MSG_MORE = 0x8000
+- MSG_NOSIGNAL = 0x4000
+- MSG_OOB = 0x1
+- MSG_PEEK = 0x2
+- MSG_PROXY = 0x10
+- MSG_RST = 0x1000
+- MSG_SYN = 0x400
+- MSG_TRUNC = 0x20
+- MSG_TRYHARD = 0x4
+- MSG_WAITALL = 0x100
+- MSG_WAITFORONE = 0x10000
+- MS_ACTIVE = 0x40000000
+- MS_ASYNC = 0x1
+- MS_BIND = 0x1000
+- MS_BORN = 0x20000000
+- MS_DIRSYNC = 0x80
+- MS_INVALIDATE = 0x2
+- MS_I_VERSION = 0x800000
+- MS_KERNMOUNT = 0x400000
+- MS_LAZYTIME = 0x2000000
+- MS_MANDLOCK = 0x40
+- MS_MGC_MSK = 0xffff0000
+- MS_MGC_VAL = 0xc0ed0000
+- MS_MOVE = 0x2000
+- MS_NOATIME = 0x400
+- MS_NODEV = 0x4
+- MS_NODIRATIME = 0x800
+- MS_NOEXEC = 0x8
+- MS_NOREMOTELOCK = 0x8000000
+- MS_NOSEC = 0x10000000
+- MS_NOSUID = 0x2
+- MS_NOUSER = -0x80000000
+- MS_POSIXACL = 0x10000
+- MS_PRIVATE = 0x40000
+- MS_RDONLY = 0x1
+- MS_REC = 0x4000
+- MS_RELATIME = 0x200000
+- MS_REMOUNT = 0x20
+- MS_RMT_MASK = 0x2800051
+- MS_SHARED = 0x100000
+- MS_SILENT = 0x8000
+- MS_SLAVE = 0x80000
+- MS_STRICTATIME = 0x1000000
+- MS_SYNC = 0x4
+- MS_SYNCHRONOUS = 0x10
+- MS_UNBINDABLE = 0x20000
+- MS_VERBOSE = 0x8000
+- NAME_MAX = 0xff
+- NETLINK_ADD_MEMBERSHIP = 0x1
+- NETLINK_AUDIT = 0x9
+- NETLINK_BROADCAST_ERROR = 0x4
+- NETLINK_CAP_ACK = 0xa
+- NETLINK_CONNECTOR = 0xb
+- NETLINK_CRYPTO = 0x15
+- NETLINK_DNRTMSG = 0xe
+- NETLINK_DROP_MEMBERSHIP = 0x2
+- NETLINK_ECRYPTFS = 0x13
+- NETLINK_FIB_LOOKUP = 0xa
+- NETLINK_FIREWALL = 0x3
+- NETLINK_GENERIC = 0x10
+- NETLINK_INET_DIAG = 0x4
+- NETLINK_IP6_FW = 0xd
+- NETLINK_ISCSI = 0x8
+- NETLINK_KOBJECT_UEVENT = 0xf
+- NETLINK_LISTEN_ALL_NSID = 0x8
+- NETLINK_LIST_MEMBERSHIPS = 0x9
+- NETLINK_NETFILTER = 0xc
+- NETLINK_NFLOG = 0x5
+- NETLINK_NO_ENOBUFS = 0x5
+- NETLINK_PKTINFO = 0x3
+- NETLINK_RDMA = 0x14
+- NETLINK_ROUTE = 0x0
+- NETLINK_RX_RING = 0x6
+- NETLINK_SCSITRANSPORT = 0x12
+- NETLINK_SELINUX = 0x7
+- NETLINK_SOCK_DIAG = 0x4
+- NETLINK_TX_RING = 0x7
+- NETLINK_UNUSED = 0x1
+- NETLINK_USERSOCK = 0x2
+- NETLINK_XFRM = 0x6
+- NL0 = 0x0
+- NL1 = 0x100
+- NLA_ALIGNTO = 0x4
+- NLA_F_NESTED = 0x8000
+- NLA_F_NET_BYTEORDER = 0x4000
+- NLA_HDRLEN = 0x4
+- NLDLY = 0x100
+- NLMSG_ALIGNTO = 0x4
+- NLMSG_DONE = 0x3
+- NLMSG_ERROR = 0x2
+- NLMSG_HDRLEN = 0x10
+- NLMSG_MIN_TYPE = 0x10
+- NLMSG_NOOP = 0x1
+- NLMSG_OVERRUN = 0x4
+- NLM_F_ACK = 0x4
+- NLM_F_APPEND = 0x800
+- NLM_F_ATOMIC = 0x400
+- NLM_F_CREATE = 0x400
+- NLM_F_DUMP = 0x300
+- NLM_F_DUMP_FILTERED = 0x20
+- NLM_F_DUMP_INTR = 0x10
+- NLM_F_ECHO = 0x8
+- NLM_F_EXCL = 0x200
+- NLM_F_MATCH = 0x200
+- NLM_F_MULTI = 0x2
+- NLM_F_REPLACE = 0x100
+- NLM_F_REQUEST = 0x1
+- NLM_F_ROOT = 0x100
+- NOFLSH = 0x80
+- OCRNL = 0x8
+- OFDEL = 0x80
+- OFILL = 0x40
+- OLCUC = 0x2
+- ONLCR = 0x4
+- ONLRET = 0x20
+- ONOCR = 0x10
+- OPOST = 0x1
+- O_ACCMODE = 0x3
+- O_APPEND = 0x8
+- O_ASYNC = 0x1000
+- O_CLOEXEC = 0x80000
+- O_CREAT = 0x100
+- O_DIRECT = 0x8000
+- O_DIRECTORY = 0x10000
+- O_DSYNC = 0x10
+- O_EXCL = 0x400
+- O_FSYNC = 0x4010
+- O_LARGEFILE = 0x2000
+- O_NDELAY = 0x80
+- O_NOATIME = 0x40000
+- O_NOCTTY = 0x800
+- O_NOFOLLOW = 0x20000
+- O_NONBLOCK = 0x80
+- O_PATH = 0x200000
+- O_RDONLY = 0x0
+- O_RDWR = 0x2
+- O_RSYNC = 0x4010
+- O_SYNC = 0x4010
+- O_TMPFILE = 0x410000
+- O_TRUNC = 0x200
+- O_WRONLY = 0x1
+- PACKET_ADD_MEMBERSHIP = 0x1
+- PACKET_AUXDATA = 0x8
+- PACKET_BROADCAST = 0x1
+- PACKET_COPY_THRESH = 0x7
+- PACKET_DROP_MEMBERSHIP = 0x2
+- PACKET_FANOUT = 0x12
+- PACKET_FANOUT_CBPF = 0x6
+- PACKET_FANOUT_CPU = 0x2
+- PACKET_FANOUT_DATA = 0x16
+- PACKET_FANOUT_EBPF = 0x7
+- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
+- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
+- PACKET_FANOUT_HASH = 0x0
+- PACKET_FANOUT_LB = 0x1
+- PACKET_FANOUT_QM = 0x5
+- PACKET_FANOUT_RND = 0x4
+- PACKET_FANOUT_ROLLOVER = 0x3
+- PACKET_FASTROUTE = 0x6
+- PACKET_HDRLEN = 0xb
+- PACKET_HOST = 0x0
+- PACKET_KERNEL = 0x7
+- PACKET_LOOPBACK = 0x5
+- PACKET_LOSS = 0xe
+- PACKET_MR_ALLMULTI = 0x2
+- PACKET_MR_MULTICAST = 0x0
+- PACKET_MR_PROMISC = 0x1
+- PACKET_MR_UNICAST = 0x3
+- PACKET_MULTICAST = 0x2
+- PACKET_ORIGDEV = 0x9
+- PACKET_OTHERHOST = 0x3
+- PACKET_OUTGOING = 0x4
+- PACKET_QDISC_BYPASS = 0x14
+- PACKET_RECV_OUTPUT = 0x3
+- PACKET_RESERVE = 0xc
+- PACKET_ROLLOVER_STATS = 0x15
+- PACKET_RX_RING = 0x5
+- PACKET_STATISTICS = 0x6
+- PACKET_TIMESTAMP = 0x11
+- PACKET_TX_HAS_OFF = 0x13
+- PACKET_TX_RING = 0xd
+- PACKET_TX_TIMESTAMP = 0x10
+- PACKET_USER = 0x6
+- PACKET_VERSION = 0xa
+- PACKET_VNET_HDR = 0xf
+- PARENB = 0x100
+- PARITY_CRC16_PR0 = 0x2
+- PARITY_CRC16_PR0_CCITT = 0x4
+- PARITY_CRC16_PR1 = 0x3
+- PARITY_CRC16_PR1_CCITT = 0x5
+- PARITY_CRC32_PR0_CCITT = 0x6
+- PARITY_CRC32_PR1_CCITT = 0x7
+- PARITY_DEFAULT = 0x0
+- PARITY_NONE = 0x1
+- PARMRK = 0x8
+- PARODD = 0x200
+- PENDIN = 0x4000
+- PERF_EVENT_IOC_DISABLE = 0x20002401
+- PERF_EVENT_IOC_ENABLE = 0x20002400
+- PERF_EVENT_IOC_ID = 0x40042407
+- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
+- PERF_EVENT_IOC_PERIOD = 0x80082404
+- PERF_EVENT_IOC_REFRESH = 0x20002402
+- PERF_EVENT_IOC_RESET = 0x20002403
+- PERF_EVENT_IOC_SET_BPF = 0x80042408
+- PERF_EVENT_IOC_SET_FILTER = 0x80042406
+- PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
+- PRIO_PGRP = 0x1
+- PRIO_PROCESS = 0x0
+- PRIO_USER = 0x2
+- PROT_EXEC = 0x4
+- PROT_GROWSDOWN = 0x1000000
+- PROT_GROWSUP = 0x2000000
+- PROT_NONE = 0x0
+- PROT_READ = 0x1
+- PROT_WRITE = 0x2
+- PR_CAPBSET_DROP = 0x18
+- PR_CAPBSET_READ = 0x17
+- PR_CAP_AMBIENT = 0x2f
+- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
+- PR_CAP_AMBIENT_IS_SET = 0x1
+- PR_CAP_AMBIENT_LOWER = 0x3
+- PR_CAP_AMBIENT_RAISE = 0x2
+- PR_ENDIAN_BIG = 0x0
+- PR_ENDIAN_LITTLE = 0x1
+- PR_ENDIAN_PPC_LITTLE = 0x2
+- PR_FPEMU_NOPRINT = 0x1
+- PR_FPEMU_SIGFPE = 0x2
+- PR_FP_EXC_ASYNC = 0x2
+- PR_FP_EXC_DISABLED = 0x0
+- PR_FP_EXC_DIV = 0x10000
+- PR_FP_EXC_INV = 0x100000
+- PR_FP_EXC_NONRECOV = 0x1
+- PR_FP_EXC_OVF = 0x20000
+- PR_FP_EXC_PRECISE = 0x3
+- PR_FP_EXC_RES = 0x80000
+- PR_FP_EXC_SW_ENABLE = 0x80
+- PR_FP_EXC_UND = 0x40000
+- PR_FP_MODE_FR = 0x1
+- PR_FP_MODE_FRE = 0x2
+- PR_GET_CHILD_SUBREAPER = 0x25
+- PR_GET_DUMPABLE = 0x3
+- PR_GET_ENDIAN = 0x13
+- PR_GET_FPEMU = 0x9
+- PR_GET_FPEXC = 0xb
+- PR_GET_FP_MODE = 0x2e
+- PR_GET_KEEPCAPS = 0x7
+- PR_GET_NAME = 0x10
+- PR_GET_NO_NEW_PRIVS = 0x27
+- PR_GET_PDEATHSIG = 0x2
+- PR_GET_SECCOMP = 0x15
+- PR_GET_SECUREBITS = 0x1b
+- PR_GET_THP_DISABLE = 0x2a
+- PR_GET_TID_ADDRESS = 0x28
+- PR_GET_TIMERSLACK = 0x1e
+- PR_GET_TIMING = 0xd
+- PR_GET_TSC = 0x19
+- PR_GET_UNALIGN = 0x5
+- PR_MCE_KILL = 0x21
+- PR_MCE_KILL_CLEAR = 0x0
+- PR_MCE_KILL_DEFAULT = 0x2
+- PR_MCE_KILL_EARLY = 0x1
+- PR_MCE_KILL_GET = 0x22
+- PR_MCE_KILL_LATE = 0x0
+- PR_MCE_KILL_SET = 0x1
+- PR_MPX_DISABLE_MANAGEMENT = 0x2c
+- PR_MPX_ENABLE_MANAGEMENT = 0x2b
+- PR_SET_CHILD_SUBREAPER = 0x24
+- PR_SET_DUMPABLE = 0x4
+- PR_SET_ENDIAN = 0x14
+- PR_SET_FPEMU = 0xa
+- PR_SET_FPEXC = 0xc
+- PR_SET_FP_MODE = 0x2d
+- PR_SET_KEEPCAPS = 0x8
+- PR_SET_MM = 0x23
+- PR_SET_MM_ARG_END = 0x9
+- PR_SET_MM_ARG_START = 0x8
+- PR_SET_MM_AUXV = 0xc
+- PR_SET_MM_BRK = 0x7
+- PR_SET_MM_END_CODE = 0x2
+- PR_SET_MM_END_DATA = 0x4
+- PR_SET_MM_ENV_END = 0xb
+- PR_SET_MM_ENV_START = 0xa
+- PR_SET_MM_EXE_FILE = 0xd
+- PR_SET_MM_MAP = 0xe
+- PR_SET_MM_MAP_SIZE = 0xf
+- PR_SET_MM_START_BRK = 0x6
+- PR_SET_MM_START_CODE = 0x1
+- PR_SET_MM_START_DATA = 0x3
+- PR_SET_MM_START_STACK = 0x5
+- PR_SET_NAME = 0xf
+- PR_SET_NO_NEW_PRIVS = 0x26
+- PR_SET_PDEATHSIG = 0x1
+- PR_SET_PTRACER = 0x59616d61
+- PR_SET_PTRACER_ANY = 0xffffffff
+- PR_SET_SECCOMP = 0x16
+- PR_SET_SECUREBITS = 0x1c
+- PR_SET_THP_DISABLE = 0x29
+- PR_SET_TIMERSLACK = 0x1d
+- PR_SET_TIMING = 0xe
+- PR_SET_TSC = 0x1a
+- PR_SET_UNALIGN = 0x6
+- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
+- PR_TASK_PERF_EVENTS_ENABLE = 0x20
+- PR_TIMING_STATISTICAL = 0x0
+- PR_TIMING_TIMESTAMP = 0x1
+- PR_TSC_ENABLE = 0x1
+- PR_TSC_SIGSEGV = 0x2
+- PR_UNALIGN_NOPRINT = 0x1
+- PR_UNALIGN_SIGBUS = 0x2
+- PTRACE_ATTACH = 0x10
+- PTRACE_CONT = 0x7
+- PTRACE_DETACH = 0x11
+- PTRACE_EVENT_CLONE = 0x3
+- PTRACE_EVENT_EXEC = 0x4
+- PTRACE_EVENT_EXIT = 0x6
+- PTRACE_EVENT_FORK = 0x1
+- PTRACE_EVENT_SECCOMP = 0x7
+- PTRACE_EVENT_STOP = 0x80
+- PTRACE_EVENT_VFORK = 0x2
+- PTRACE_EVENT_VFORK_DONE = 0x5
+- PTRACE_GETEVENTMSG = 0x4201
+- PTRACE_GETFPREGS = 0xe
+- PTRACE_GETREGS = 0xc
+- PTRACE_GETREGSET = 0x4204
+- PTRACE_GETSIGINFO = 0x4202
+- PTRACE_GETSIGMASK = 0x420a
+- PTRACE_GET_THREAD_AREA = 0x19
+- PTRACE_GET_THREAD_AREA_3264 = 0xc4
+- PTRACE_GET_WATCH_REGS = 0xd0
+- PTRACE_INTERRUPT = 0x4207
+- PTRACE_KILL = 0x8
+- PTRACE_LISTEN = 0x4208
+- PTRACE_OLDSETOPTIONS = 0x15
+- PTRACE_O_EXITKILL = 0x100000
+- PTRACE_O_MASK = 0x3000ff
+- PTRACE_O_SUSPEND_SECCOMP = 0x200000
+- PTRACE_O_TRACECLONE = 0x8
+- PTRACE_O_TRACEEXEC = 0x10
+- PTRACE_O_TRACEEXIT = 0x40
+- PTRACE_O_TRACEFORK = 0x2
+- PTRACE_O_TRACESECCOMP = 0x80
+- PTRACE_O_TRACESYSGOOD = 0x1
+- PTRACE_O_TRACEVFORK = 0x4
+- PTRACE_O_TRACEVFORKDONE = 0x20
+- PTRACE_PEEKDATA = 0x2
+- PTRACE_PEEKDATA_3264 = 0xc1
+- PTRACE_PEEKSIGINFO = 0x4209
+- PTRACE_PEEKSIGINFO_SHARED = 0x1
+- PTRACE_PEEKTEXT = 0x1
+- PTRACE_PEEKTEXT_3264 = 0xc0
+- PTRACE_PEEKUSR = 0x3
+- PTRACE_POKEDATA = 0x5
+- PTRACE_POKEDATA_3264 = 0xc3
+- PTRACE_POKETEXT = 0x4
+- PTRACE_POKETEXT_3264 = 0xc2
+- PTRACE_POKEUSR = 0x6
+- PTRACE_SECCOMP_GET_FILTER = 0x420c
+- PTRACE_SEIZE = 0x4206
+- PTRACE_SETFPREGS = 0xf
+- PTRACE_SETOPTIONS = 0x4200
+- PTRACE_SETREGS = 0xd
+- PTRACE_SETREGSET = 0x4205
+- PTRACE_SETSIGINFO = 0x4203
+- PTRACE_SETSIGMASK = 0x420b
+- PTRACE_SET_THREAD_AREA = 0x1a
+- PTRACE_SET_WATCH_REGS = 0xd1
+- PTRACE_SINGLESTEP = 0x9
+- PTRACE_SYSCALL = 0x18
+- PTRACE_TRACEME = 0x0
+- RLIMIT_AS = 0x6
+- RLIMIT_CORE = 0x4
+- RLIMIT_CPU = 0x0
+- RLIMIT_DATA = 0x2
+- RLIMIT_FSIZE = 0x1
+- RLIMIT_LOCKS = 0xa
+- RLIMIT_MEMLOCK = 0x9
+- RLIMIT_MSGQUEUE = 0xc
+- RLIMIT_NICE = 0xd
+- RLIMIT_NOFILE = 0x5
+- RLIMIT_NPROC = 0x8
+- RLIMIT_RSS = 0x7
+- RLIMIT_RTPRIO = 0xe
+- RLIMIT_RTTIME = 0xf
+- RLIMIT_SIGPENDING = 0xb
+- RLIMIT_STACK = 0x3
+- RLIM_INFINITY = -0x1
+- RTAX_ADVMSS = 0x8
+- RTAX_CC_ALGO = 0x10
+- RTAX_CWND = 0x7
+- RTAX_FEATURES = 0xc
+- RTAX_FEATURE_ALLFRAG = 0x8
+- RTAX_FEATURE_ECN = 0x1
+- RTAX_FEATURE_MASK = 0xf
+- RTAX_FEATURE_SACK = 0x2
+- RTAX_FEATURE_TIMESTAMP = 0x4
+- RTAX_HOPLIMIT = 0xa
+- RTAX_INITCWND = 0xb
+- RTAX_INITRWND = 0xe
+- RTAX_LOCK = 0x1
+- RTAX_MAX = 0x10
+- RTAX_MTU = 0x2
+- RTAX_QUICKACK = 0xf
+- RTAX_REORDERING = 0x9
+- RTAX_RTO_MIN = 0xd
+- RTAX_RTT = 0x4
+- RTAX_RTTVAR = 0x5
+- RTAX_SSTHRESH = 0x6
+- RTAX_UNSPEC = 0x0
+- RTAX_WINDOW = 0x3
+- RTA_ALIGNTO = 0x4
+- RTA_MAX = 0x19
+- RTCF_DIRECTSRC = 0x4000000
+- RTCF_DOREDIRECT = 0x1000000
+- RTCF_LOG = 0x2000000
+- RTCF_MASQ = 0x400000
+- RTCF_NAT = 0x800000
+- RTCF_VALVE = 0x200000
+- RTF_ADDRCLASSMASK = 0xf8000000
+- RTF_ADDRCONF = 0x40000
+- RTF_ALLONLINK = 0x20000
+- RTF_BROADCAST = 0x10000000
+- RTF_CACHE = 0x1000000
+- RTF_DEFAULT = 0x10000
+- RTF_DYNAMIC = 0x10
+- RTF_FLOW = 0x2000000
+- RTF_GATEWAY = 0x2
+- RTF_HOST = 0x4
+- RTF_INTERFACE = 0x40000000
+- RTF_IRTT = 0x100
+- RTF_LINKRT = 0x100000
+- RTF_LOCAL = 0x80000000
+- RTF_MODIFIED = 0x20
+- RTF_MSS = 0x40
+- RTF_MTU = 0x40
+- RTF_MULTICAST = 0x20000000
+- RTF_NAT = 0x8000000
+- RTF_NOFORWARD = 0x1000
+- RTF_NONEXTHOP = 0x200000
+- RTF_NOPMTUDISC = 0x4000
+- RTF_POLICY = 0x4000000
+- RTF_REINSTATE = 0x8
+- RTF_REJECT = 0x200
+- RTF_STATIC = 0x400
+- RTF_THROW = 0x2000
+- RTF_UP = 0x1
+- RTF_WINDOW = 0x80
+- RTF_XRESOLVE = 0x800
+- RTM_BASE = 0x10
+- RTM_DELACTION = 0x31
+- RTM_DELADDR = 0x15
+- RTM_DELADDRLABEL = 0x49
+- RTM_DELLINK = 0x11
+- RTM_DELMDB = 0x55
+- RTM_DELNEIGH = 0x1d
+- RTM_DELNSID = 0x59
+- RTM_DELQDISC = 0x25
+- RTM_DELROUTE = 0x19
+- RTM_DELRULE = 0x21
+- RTM_DELTCLASS = 0x29
+- RTM_DELTFILTER = 0x2d
+- RTM_F_CLONED = 0x200
+- RTM_F_EQUALIZE = 0x400
+- RTM_F_LOOKUP_TABLE = 0x1000
+- RTM_F_NOTIFY = 0x100
+- RTM_F_PREFIX = 0x800
+- RTM_GETACTION = 0x32
+- RTM_GETADDR = 0x16
+- RTM_GETADDRLABEL = 0x4a
+- RTM_GETANYCAST = 0x3e
+- RTM_GETDCB = 0x4e
+- RTM_GETLINK = 0x12
+- RTM_GETMDB = 0x56
+- RTM_GETMULTICAST = 0x3a
+- RTM_GETNEIGH = 0x1e
+- RTM_GETNEIGHTBL = 0x42
+- RTM_GETNETCONF = 0x52
+- RTM_GETNSID = 0x5a
+- RTM_GETQDISC = 0x26
+- RTM_GETROUTE = 0x1a
+- RTM_GETRULE = 0x22
+- RTM_GETSTATS = 0x5e
+- RTM_GETTCLASS = 0x2a
+- RTM_GETTFILTER = 0x2e
+- RTM_MAX = 0x5f
+- RTM_NEWACTION = 0x30
+- RTM_NEWADDR = 0x14
+- RTM_NEWADDRLABEL = 0x48
+- RTM_NEWLINK = 0x10
+- RTM_NEWMDB = 0x54
+- RTM_NEWNDUSEROPT = 0x44
+- RTM_NEWNEIGH = 0x1c
+- RTM_NEWNEIGHTBL = 0x40
+- RTM_NEWNETCONF = 0x50
+- RTM_NEWNSID = 0x58
+- RTM_NEWPREFIX = 0x34
+- RTM_NEWQDISC = 0x24
+- RTM_NEWROUTE = 0x18
+- RTM_NEWRULE = 0x20
+- RTM_NEWSTATS = 0x5c
+- RTM_NEWTCLASS = 0x28
+- RTM_NEWTFILTER = 0x2c
+- RTM_NR_FAMILIES = 0x14
+- RTM_NR_MSGTYPES = 0x50
+- RTM_SETDCB = 0x4f
+- RTM_SETLINK = 0x13
+- RTM_SETNEIGHTBL = 0x43
+- RTNH_ALIGNTO = 0x4
+- RTNH_COMPARE_MASK = 0x19
+- RTNH_F_DEAD = 0x1
+- RTNH_F_LINKDOWN = 0x10
+- RTNH_F_OFFLOAD = 0x8
+- RTNH_F_ONLINK = 0x4
+- RTNH_F_PERVASIVE = 0x2
+- RTN_MAX = 0xb
+- RTPROT_BABEL = 0x2a
+- RTPROT_BIRD = 0xc
+- RTPROT_BOOT = 0x3
+- RTPROT_DHCP = 0x10
+- RTPROT_DNROUTED = 0xd
+- RTPROT_GATED = 0x8
+- RTPROT_KERNEL = 0x2
+- RTPROT_MROUTED = 0x11
+- RTPROT_MRT = 0xa
+- RTPROT_NTK = 0xf
+- RTPROT_RA = 0x9
+- RTPROT_REDIRECT = 0x1
+- RTPROT_STATIC = 0x4
+- RTPROT_UNSPEC = 0x0
+- RTPROT_XORP = 0xe
+- RTPROT_ZEBRA = 0xb
+- RT_CLASS_DEFAULT = 0xfd
+- RT_CLASS_LOCAL = 0xff
+- RT_CLASS_MAIN = 0xfe
+- RT_CLASS_MAX = 0xff
+- RT_CLASS_UNSPEC = 0x0
+- RUSAGE_CHILDREN = -0x1
+- RUSAGE_SELF = 0x0
+- RUSAGE_THREAD = 0x1
+- SCM_CREDENTIALS = 0x2
+- SCM_RIGHTS = 0x1
+- SCM_TIMESTAMP = 0x1d
+- SCM_TIMESTAMPING = 0x25
+- SCM_TIMESTAMPING_OPT_STATS = 0x36
+- SCM_TIMESTAMPNS = 0x23
+- SCM_WIFI_STATUS = 0x29
+- SECCOMP_MODE_DISABLED = 0x0
+- SECCOMP_MODE_FILTER = 0x2
+- SECCOMP_MODE_STRICT = 0x1
+- SHUT_RD = 0x0
+- SHUT_RDWR = 0x2
+- SHUT_WR = 0x1
+- SIOCADDDLCI = 0x8980
+- SIOCADDMULTI = 0x8931
+- SIOCADDRT = 0x890b
+- SIOCATMARK = 0x40047307
+- SIOCBONDCHANGEACTIVE = 0x8995
+- SIOCBONDENSLAVE = 0x8990
+- SIOCBONDINFOQUERY = 0x8994
+- SIOCBONDRELEASE = 0x8991
+- SIOCBONDSETHWADDR = 0x8992
+- SIOCBONDSLAVEINFOQUERY = 0x8993
+- SIOCBRADDBR = 0x89a0
+- SIOCBRADDIF = 0x89a2
+- SIOCBRDELBR = 0x89a1
+- SIOCBRDELIF = 0x89a3
+- SIOCDARP = 0x8953
+- SIOCDELDLCI = 0x8981
+- SIOCDELMULTI = 0x8932
+- SIOCDELRT = 0x890c
+- SIOCDEVPRIVATE = 0x89f0
+- SIOCDIFADDR = 0x8936
+- SIOCDRARP = 0x8960
+- SIOCETHTOOL = 0x8946
+- SIOCGARP = 0x8954
+- SIOCGHWTSTAMP = 0x89b1
+- SIOCGIFADDR = 0x8915
+- SIOCGIFBR = 0x8940
+- SIOCGIFBRDADDR = 0x8919
+- SIOCGIFCONF = 0x8912
+- SIOCGIFCOUNT = 0x8938
+- SIOCGIFDSTADDR = 0x8917
+- SIOCGIFENCAP = 0x8925
+- SIOCGIFFLAGS = 0x8913
+- SIOCGIFHWADDR = 0x8927
+- SIOCGIFINDEX = 0x8933
+- SIOCGIFMAP = 0x8970
+- SIOCGIFMEM = 0x891f
+- SIOCGIFMETRIC = 0x891d
+- SIOCGIFMTU = 0x8921
+- SIOCGIFNAME = 0x8910
+- SIOCGIFNETMASK = 0x891b
+- SIOCGIFPFLAGS = 0x8935
+- SIOCGIFSLAVE = 0x8929
+- SIOCGIFTXQLEN = 0x8942
+- SIOCGIFVLAN = 0x8982
+- SIOCGMIIPHY = 0x8947
+- SIOCGMIIREG = 0x8948
+- SIOCGPGRP = 0x40047309
+- SIOCGRARP = 0x8961
+- SIOCGSKNS = 0x894c
+- SIOCGSTAMP = 0x8906
+- SIOCGSTAMPNS = 0x8907
+- SIOCINQ = 0x467f
+- SIOCOUTQ = 0x7472
+- SIOCOUTQNSD = 0x894b
+- SIOCPROTOPRIVATE = 0x89e0
+- SIOCRTMSG = 0x890d
+- SIOCSARP = 0x8955
+- SIOCSHWTSTAMP = 0x89b0
+- SIOCSIFADDR = 0x8916
+- SIOCSIFBR = 0x8941
+- SIOCSIFBRDADDR = 0x891a
+- SIOCSIFDSTADDR = 0x8918
+- SIOCSIFENCAP = 0x8926
+- SIOCSIFFLAGS = 0x8914
+- SIOCSIFHWADDR = 0x8924
+- SIOCSIFHWBROADCAST = 0x8937
+- SIOCSIFLINK = 0x8911
+- SIOCSIFMAP = 0x8971
+- SIOCSIFMEM = 0x8920
+- SIOCSIFMETRIC = 0x891e
+- SIOCSIFMTU = 0x8922
+- SIOCSIFNAME = 0x8923
+- SIOCSIFNETMASK = 0x891c
+- SIOCSIFPFLAGS = 0x8934
+- SIOCSIFSLAVE = 0x8930
+- SIOCSIFTXQLEN = 0x8943
+- SIOCSIFVLAN = 0x8983
+- SIOCSMIIREG = 0x8949
+- SIOCSPGRP = 0x80047308
+- SIOCSRARP = 0x8962
+- SIOCWANDEV = 0x894a
+- SOCK_CLOEXEC = 0x80000
+- SOCK_DCCP = 0x6
+- SOCK_DGRAM = 0x1
+- SOCK_IOC_TYPE = 0x89
+- SOCK_NONBLOCK = 0x80
+- SOCK_PACKET = 0xa
+- SOCK_RAW = 0x3
+- SOCK_RDM = 0x4
+- SOCK_SEQPACKET = 0x5
+- SOCK_STREAM = 0x2
+- SOL_AAL = 0x109
+- SOL_ALG = 0x117
+- SOL_ATM = 0x108
+- SOL_CAIF = 0x116
+- SOL_CAN_BASE = 0x64
+- SOL_DCCP = 0x10d
+- SOL_DECNET = 0x105
+- SOL_ICMPV6 = 0x3a
+- SOL_IP = 0x0
+- SOL_IPV6 = 0x29
+- SOL_IRDA = 0x10a
+- SOL_IUCV = 0x115
+- SOL_KCM = 0x119
+- SOL_LLC = 0x10c
+- SOL_NETBEUI = 0x10b
+- SOL_NETLINK = 0x10e
+- SOL_NFC = 0x118
+- SOL_PACKET = 0x107
+- SOL_PNPIPE = 0x113
+- SOL_PPPOL2TP = 0x111
+- SOL_RAW = 0xff
+- SOL_RDS = 0x114
+- SOL_RXRPC = 0x110
+- SOL_SOCKET = 0xffff
+- SOL_TCP = 0x6
+- SOL_TIPC = 0x10f
+- SOL_X25 = 0x106
+- SOMAXCONN = 0x80
+- SO_ACCEPTCONN = 0x1009
+- SO_ATTACH_BPF = 0x32
+- SO_ATTACH_FILTER = 0x1a
+- SO_ATTACH_REUSEPORT_CBPF = 0x33
+- SO_ATTACH_REUSEPORT_EBPF = 0x34
+- SO_BINDTODEVICE = 0x19
+- SO_BPF_EXTENSIONS = 0x30
+- SO_BROADCAST = 0x20
+- SO_BSDCOMPAT = 0xe
+- SO_BUSY_POLL = 0x2e
+- SO_CNX_ADVICE = 0x35
+- SO_DEBUG = 0x1
+- SO_DETACH_BPF = 0x1b
+- SO_DETACH_FILTER = 0x1b
+- SO_DOMAIN = 0x1029
+- SO_DONTROUTE = 0x10
+- SO_ERROR = 0x1007
+- SO_GET_FILTER = 0x1a
+- SO_INCOMING_CPU = 0x31
+- SO_KEEPALIVE = 0x8
+- SO_LINGER = 0x80
+- SO_LOCK_FILTER = 0x2c
+- SO_MARK = 0x24
+- SO_MAX_PACING_RATE = 0x2f
+- SO_NOFCS = 0x2b
+- SO_NO_CHECK = 0xb
+- SO_OOBINLINE = 0x100
+- SO_PASSCRED = 0x11
+- SO_PASSSEC = 0x22
+- SO_PEEK_OFF = 0x2a
+- SO_PEERCRED = 0x12
+- SO_PEERNAME = 0x1c
+- SO_PEERSEC = 0x1e
+- SO_PRIORITY = 0xc
+- SO_PROTOCOL = 0x1028
+- SO_RCVBUF = 0x1002
+- SO_RCVBUFFORCE = 0x21
+- SO_RCVLOWAT = 0x1004
+- SO_RCVTIMEO = 0x1006
+- SO_REUSEADDR = 0x4
+- SO_REUSEPORT = 0x200
+- SO_RXQ_OVFL = 0x28
+- SO_SECURITY_AUTHENTICATION = 0x16
+- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
+- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
+- SO_SELECT_ERR_QUEUE = 0x2d
+- SO_SNDBUF = 0x1001
+- SO_SNDBUFFORCE = 0x1f
+- SO_SNDLOWAT = 0x1003
+- SO_SNDTIMEO = 0x1005
+- SO_STYLE = 0x1008
+- SO_TIMESTAMP = 0x1d
+- SO_TIMESTAMPING = 0x25
+- SO_TIMESTAMPNS = 0x23
+- SO_TYPE = 0x1008
+- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
+- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
+- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
+- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
+- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
+- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
+- SO_VM_SOCKETS_TRUSTED = 0x5
+- SO_WIFI_STATUS = 0x29
+- SPLICE_F_GIFT = 0x8
+- SPLICE_F_MORE = 0x4
+- SPLICE_F_MOVE = 0x1
+- SPLICE_F_NONBLOCK = 0x2
+- S_BLKSIZE = 0x200
+- S_IEXEC = 0x40
+- S_IFBLK = 0x6000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFIFO = 0x1000
+- S_IFLNK = 0xa000
+- S_IFMT = 0xf000
+- S_IFREG = 0x8000
+- S_IFSOCK = 0xc000
+- S_IREAD = 0x100
+- S_IRGRP = 0x20
+- S_IROTH = 0x4
+- S_IRUSR = 0x100
+- S_IRWXG = 0x38
+- S_IRWXO = 0x7
+- S_IRWXU = 0x1c0
+- S_ISGID = 0x400
+- S_ISUID = 0x800
+- S_ISVTX = 0x200
+- S_IWGRP = 0x10
+- S_IWOTH = 0x2
+- S_IWRITE = 0x80
+- S_IWUSR = 0x80
+- S_IXGRP = 0x8
+- S_IXOTH = 0x1
+- S_IXUSR = 0x40
+- TAB0 = 0x0
+- TAB1 = 0x800
+- TAB2 = 0x1000
+- TAB3 = 0x1800
+- TABDLY = 0x1800
+- TASKSTATS_CMD_ATTR_MAX = 0x4
+- TASKSTATS_CMD_MAX = 0x2
+- TASKSTATS_GENL_NAME = "TASKSTATS"
+- TASKSTATS_GENL_VERSION = 0x1
+- TASKSTATS_TYPE_MAX = 0x6
+- TASKSTATS_VERSION = 0x8
+- TCFLSH = 0x5407
+- TCGETA = 0x5401
+- TCGETS = 0x540d
+- TCGETS2 = 0x4030542a
+- TCIFLUSH = 0x0
+- TCIOFF = 0x2
+- TCIOFLUSH = 0x2
+- TCION = 0x3
+- TCOFLUSH = 0x1
+- TCOOFF = 0x0
+- TCOON = 0x1
+- TCP_CC_INFO = 0x1a
+- TCP_CONGESTION = 0xd
+- TCP_COOKIE_IN_ALWAYS = 0x1
+- TCP_COOKIE_MAX = 0x10
+- TCP_COOKIE_MIN = 0x8
+- TCP_COOKIE_OUT_NEVER = 0x2
+- TCP_COOKIE_PAIR_SIZE = 0x20
+- TCP_COOKIE_TRANSACTIONS = 0xf
+- TCP_CORK = 0x3
+- TCP_DEFER_ACCEPT = 0x9
+- TCP_FASTOPEN = 0x17
+- TCP_INFO = 0xb
+- TCP_KEEPCNT = 0x6
+- TCP_KEEPIDLE = 0x4
+- TCP_KEEPINTVL = 0x5
+- TCP_LINGER2 = 0x8
+- TCP_MAXSEG = 0x2
+- TCP_MAXWIN = 0xffff
+- TCP_MAX_WINSHIFT = 0xe
+- TCP_MD5SIG = 0xe
+- TCP_MD5SIG_MAXKEYLEN = 0x50
+- TCP_MSS = 0x200
+- TCP_MSS_DEFAULT = 0x218
+- TCP_MSS_DESIRED = 0x4c4
+- TCP_NODELAY = 0x1
+- TCP_NOTSENT_LOWAT = 0x19
+- TCP_QUEUE_SEQ = 0x15
+- TCP_QUICKACK = 0xc
+- TCP_REPAIR = 0x13
+- TCP_REPAIR_OPTIONS = 0x16
+- TCP_REPAIR_QUEUE = 0x14
+- TCP_REPAIR_WINDOW = 0x1d
+- TCP_SAVED_SYN = 0x1c
+- TCP_SAVE_SYN = 0x1b
+- TCP_SYNCNT = 0x7
+- TCP_S_DATA_IN = 0x4
+- TCP_S_DATA_OUT = 0x8
+- TCP_THIN_DUPACK = 0x11
+- TCP_THIN_LINEAR_TIMEOUTS = 0x10
+- TCP_TIMESTAMP = 0x18
+- TCP_USER_TIMEOUT = 0x12
+- TCP_WINDOW_CLAMP = 0xa
+- TCSAFLUSH = 0x5410
+- TCSBRK = 0x5405
+- TCSBRKP = 0x5486
+- TCSETA = 0x5402
+- TCSETAF = 0x5404
+- TCSETAW = 0x5403
+- TCSETS = 0x540e
+- TCSETS2 = 0x8030542b
+- TCSETSF = 0x5410
+- TCSETSF2 = 0x8030542d
+- TCSETSW = 0x540f
+- TCSETSW2 = 0x8030542c
+- TCXONC = 0x5406
+- TIOCCBRK = 0x5428
+- TIOCCONS = 0x80047478
+- TIOCEXCL = 0x740d
+- TIOCGDEV = 0x40045432
+- TIOCGETD = 0x7400
+- TIOCGETP = 0x7408
+- TIOCGEXCL = 0x40045440
+- TIOCGICOUNT = 0x5492
+- TIOCGLCKTRMIOS = 0x548b
+- TIOCGLTC = 0x7474
+- TIOCGPGRP = 0x40047477
+- TIOCGPKT = 0x40045438
+- TIOCGPTLCK = 0x40045439
+- TIOCGPTN = 0x40045430
+- TIOCGRS485 = 0x4020542e
+- TIOCGSERIAL = 0x5484
+- TIOCGSID = 0x7416
+- TIOCGSOFTCAR = 0x5481
+- TIOCGWINSZ = 0x40087468
+- TIOCINQ = 0x467f
+- TIOCLINUX = 0x5483
+- TIOCMBIC = 0x741c
+- TIOCMBIS = 0x741b
+- TIOCMGET = 0x741d
+- TIOCMIWAIT = 0x5491
+- TIOCMSET = 0x741a
+- TIOCM_CAR = 0x100
+- TIOCM_CD = 0x100
+- TIOCM_CTS = 0x40
+- TIOCM_DSR = 0x400
+- TIOCM_DTR = 0x2
+- TIOCM_LE = 0x1
+- TIOCM_RI = 0x200
+- TIOCM_RNG = 0x200
+- TIOCM_RTS = 0x4
+- TIOCM_SR = 0x20
+- TIOCM_ST = 0x10
+- TIOCNOTTY = 0x5471
+- TIOCNXCL = 0x740e
+- TIOCOUTQ = 0x7472
+- TIOCPKT = 0x5470
+- TIOCPKT_DATA = 0x0
+- TIOCPKT_DOSTOP = 0x20
+- TIOCPKT_FLUSHREAD = 0x1
+- TIOCPKT_FLUSHWRITE = 0x2
+- TIOCPKT_IOCTL = 0x40
+- TIOCPKT_NOSTOP = 0x10
+- TIOCPKT_START = 0x8
+- TIOCPKT_STOP = 0x4
+- TIOCSBRK = 0x5427
+- TIOCSCTTY = 0x5480
+- TIOCSERCONFIG = 0x5488
+- TIOCSERGETLSR = 0x548e
+- TIOCSERGETMULTI = 0x548f
+- TIOCSERGSTRUCT = 0x548d
+- TIOCSERGWILD = 0x5489
+- TIOCSERSETMULTI = 0x5490
+- TIOCSERSWILD = 0x548a
+- TIOCSER_TEMT = 0x1
+- TIOCSETD = 0x7401
+- TIOCSETN = 0x740a
+- TIOCSETP = 0x7409
+- TIOCSIG = 0x80045436
+- TIOCSLCKTRMIOS = 0x548c
+- TIOCSLTC = 0x7475
+- TIOCSPGRP = 0x80047476
+- TIOCSPTLCK = 0x80045431
+- TIOCSRS485 = 0xc020542f
+- TIOCSSERIAL = 0x5485
+- TIOCSSOFTCAR = 0x5482
+- TIOCSTI = 0x5472
+- TIOCSWINSZ = 0x80087467
+- TIOCVHANGUP = 0x5437
+- TOSTOP = 0x8000
+- TS_COMM_LEN = 0x20
+- TUNATTACHFILTER = 0x800854d5
+- TUNDETACHFILTER = 0x800854d6
+- TUNGETFEATURES = 0x400454cf
+- TUNGETFILTER = 0x400854db
+- TUNGETIFF = 0x400454d2
+- TUNGETSNDBUF = 0x400454d3
+- TUNGETVNETBE = 0x400454df
+- TUNGETVNETHDRSZ = 0x400454d7
+- TUNGETVNETLE = 0x400454dd
+- TUNSETDEBUG = 0x800454c9
+- TUNSETGROUP = 0x800454ce
+- TUNSETIFF = 0x800454ca
+- TUNSETIFINDEX = 0x800454da
+- TUNSETLINK = 0x800454cd
+- TUNSETNOCSUM = 0x800454c8
+- TUNSETOFFLOAD = 0x800454d0
+- TUNSETOWNER = 0x800454cc
+- TUNSETPERSIST = 0x800454cb
+- TUNSETQUEUE = 0x800454d9
+- TUNSETSNDBUF = 0x800454d4
+- TUNSETTXFILTER = 0x800454d1
+- TUNSETVNETBE = 0x800454de
+- TUNSETVNETHDRSZ = 0x800454d8
+- TUNSETVNETLE = 0x800454dc
+- UMOUNT_NOFOLLOW = 0x8
+- VDISCARD = 0xd
+- VEOF = 0x10
+- VEOL = 0x11
+- VEOL2 = 0x6
+- VERASE = 0x2
+- VINTR = 0x0
+- VKILL = 0x3
+- VLNEXT = 0xf
+- VMADDR_CID_ANY = 0xffffffff
+- VMADDR_CID_HOST = 0x2
+- VMADDR_CID_HYPERVISOR = 0x0
+- VMADDR_CID_RESERVED = 0x1
+- VMADDR_PORT_ANY = 0xffffffff
+- VMIN = 0x4
+- VM_SOCKETS_INVALID_VERSION = 0xffffffff
+- VQUIT = 0x1
+- VREPRINT = 0xc
+- VSTART = 0x8
+- VSTOP = 0x9
+- VSUSP = 0xa
+- VSWTC = 0x7
+- VSWTCH = 0x7
+- VT0 = 0x0
+- VT1 = 0x4000
+- VTDLY = 0x4000
+- VTIME = 0x5
+- VWERASE = 0xe
+- WALL = 0x40000000
+- WCLONE = 0x80000000
+- WCONTINUED = 0x8
+- WEXITED = 0x4
+- WNOHANG = 0x1
+- WNOTHREAD = 0x20000000
+- WNOWAIT = 0x1000000
+- WORDSIZE = 0x20
+- WSTOPPED = 0x2
+- WUNTRACED = 0x2
+- XATTR_CREATE = 0x1
+- XATTR_REPLACE = 0x2
+- XCASE = 0x4
+- XTABS = 0x1800
++ B1000000 = 0x1008
++ B115200 = 0x1002
++ B1152000 = 0x1009
++ B1500000 = 0x100a
++ B2000000 = 0x100b
++ B230400 = 0x1003
++ B2500000 = 0x100c
++ B3000000 = 0x100d
++ B3500000 = 0x100e
++ B4000000 = 0x100f
++ B460800 = 0x1004
++ B500000 = 0x1005
++ B57600 = 0x1001
++ B576000 = 0x1006
++ B921600 = 0x1007
++ BLKBSZGET = 0x40041270
++ BLKBSZSET = 0x80041271
++ BLKFLSBUF = 0x20001261
++ BLKFRAGET = 0x20001265
++ BLKFRASET = 0x20001264
++ BLKGETSIZE = 0x20001260
++ BLKGETSIZE64 = 0x40041272
++ BLKPBSZGET = 0x2000127b
++ BLKRAGET = 0x20001263
++ BLKRASET = 0x20001262
++ BLKROGET = 0x2000125e
++ BLKROSET = 0x2000125d
++ BLKRRPART = 0x2000125f
++ BLKSECTGET = 0x20001267
++ BLKSECTSET = 0x20001266
++ BLKSSZGET = 0x20001268
++ BOTHER = 0x1000
++ BS1 = 0x2000
++ BSDLY = 0x2000
++ CBAUD = 0x100f
++ CBAUDEX = 0x1000
++ CIBAUD = 0x100f0000
++ CLOCAL = 0x800
++ CR1 = 0x200
++ CR2 = 0x400
++ CR3 = 0x600
++ CRDLY = 0x600
++ CREAD = 0x80
++ CS6 = 0x10
++ CS7 = 0x20
++ CS8 = 0x30
++ CSIZE = 0x30
++ CSTOPB = 0x40
++ ECHOCTL = 0x200
++ ECHOE = 0x10
++ ECHOK = 0x20
++ ECHOKE = 0x800
++ ECHONL = 0x40
++ ECHOPRT = 0x400
++ EFD_CLOEXEC = 0x80000
++ EFD_NONBLOCK = 0x80
++ EPOLL_CLOEXEC = 0x80000
++ EXTPROC = 0x10000
++ FF1 = 0x8000
++ FFDLY = 0x8000
++ FLUSHO = 0x2000
++ FS_IOC_ENABLE_VERITY = 0x80806685
++ FS_IOC_GETFLAGS = 0x40046601
++ FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
++ FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
++ FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
++ F_GETLK = 0x21
++ F_GETLK64 = 0x21
++ F_GETOWN = 0x17
++ F_RDLCK = 0x0
++ F_SETLK = 0x22
++ F_SETLK64 = 0x22
++ F_SETLKW = 0x23
++ F_SETLKW64 = 0x23
++ F_SETOWN = 0x18
++ F_UNLCK = 0x2
++ F_WRLCK = 0x1
++ HUPCL = 0x400
++ ICANON = 0x2
++ IEXTEN = 0x100
++ IN_CLOEXEC = 0x80000
++ IN_NONBLOCK = 0x80
++ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x200007b9
++ ISIG = 0x1
++ IUCLC = 0x200
++ IXOFF = 0x1000
++ IXON = 0x400
++ MAP_ANON = 0x800
++ MAP_ANONYMOUS = 0x800
++ MAP_DENYWRITE = 0x2000
++ MAP_EXECUTABLE = 0x4000
++ MAP_GROWSDOWN = 0x1000
++ MAP_HUGETLB = 0x80000
++ MAP_LOCKED = 0x8000
++ MAP_NONBLOCK = 0x20000
++ MAP_NORESERVE = 0x400
++ MAP_POPULATE = 0x10000
++ MAP_RENAME = 0x800
++ MAP_STACK = 0x40000
++ MCL_CURRENT = 0x1
++ MCL_FUTURE = 0x2
++ MCL_ONFAULT = 0x4
++ NFDBITS = 0x20
++ NLDLY = 0x100
++ NOFLSH = 0x80
++ NS_GET_NSTYPE = 0x2000b703
++ NS_GET_OWNER_UID = 0x2000b704
++ NS_GET_PARENT = 0x2000b702
++ NS_GET_USERNS = 0x2000b701
++ OLCUC = 0x2
++ ONLCR = 0x4
++ O_APPEND = 0x8
++ O_ASYNC = 0x1000
++ O_CLOEXEC = 0x80000
++ O_CREAT = 0x100
++ O_DIRECT = 0x8000
++ O_DIRECTORY = 0x10000
++ O_DSYNC = 0x10
++ O_EXCL = 0x400
++ O_FSYNC = 0x4010
++ O_LARGEFILE = 0x2000
++ O_NDELAY = 0x80
++ O_NOATIME = 0x40000
++ O_NOCTTY = 0x800
++ O_NOFOLLOW = 0x20000
++ O_NONBLOCK = 0x80
++ O_PATH = 0x200000
++ O_RSYNC = 0x4010
++ O_SYNC = 0x4010
++ O_TMPFILE = 0x410000
++ O_TRUNC = 0x200
++ PARENB = 0x100
++ PARODD = 0x200
++ PENDIN = 0x4000
++ PERF_EVENT_IOC_DISABLE = 0x20002401
++ PERF_EVENT_IOC_ENABLE = 0x20002400
++ PERF_EVENT_IOC_ID = 0x40042407
++ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8004240b
++ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
++ PERF_EVENT_IOC_PERIOD = 0x80082404
++ PERF_EVENT_IOC_QUERY_BPF = 0xc004240a
++ PERF_EVENT_IOC_REFRESH = 0x20002402
++ PERF_EVENT_IOC_RESET = 0x20002403
++ PERF_EVENT_IOC_SET_BPF = 0x80042408
++ PERF_EVENT_IOC_SET_FILTER = 0x80042406
++ PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
++ PPPIOCATTACH = 0x8004743d
++ PPPIOCATTCHAN = 0x80047438
++ PPPIOCCONNECT = 0x8004743a
++ PPPIOCDETACH = 0x8004743c
++ PPPIOCDISCONN = 0x20007439
++ PPPIOCGASYNCMAP = 0x40047458
++ PPPIOCGCHAN = 0x40047437
++ PPPIOCGDEBUG = 0x40047441
++ PPPIOCGFLAGS = 0x4004745a
++ PPPIOCGIDLE = 0x4008743f
++ PPPIOCGIDLE32 = 0x4008743f
++ PPPIOCGIDLE64 = 0x4010743f
++ PPPIOCGL2TPSTATS = 0x40487436
++ PPPIOCGMRU = 0x40047453
++ PPPIOCGRASYNCMAP = 0x40047455
++ PPPIOCGUNIT = 0x40047456
++ PPPIOCGXASYNCMAP = 0x40207450
++ PPPIOCSACTIVE = 0x80087446
++ PPPIOCSASYNCMAP = 0x80047457
++ PPPIOCSCOMPRESS = 0x800c744d
++ PPPIOCSDEBUG = 0x80047440
++ PPPIOCSFLAGS = 0x80047459
++ PPPIOCSMAXCID = 0x80047451
++ PPPIOCSMRRU = 0x8004743b
++ PPPIOCSMRU = 0x80047452
++ PPPIOCSNPMODE = 0x8008744b
++ PPPIOCSPASS = 0x80087447
++ PPPIOCSRASYNCMAP = 0x80047454
++ PPPIOCSXASYNCMAP = 0x8020744f
++ PPPIOCXFERUNIT = 0x2000744e
++ PR_SET_PTRACER_ANY = 0xffffffff
++ PTRACE_GETFPREGS = 0xe
++ PTRACE_GET_THREAD_AREA = 0x19
++ PTRACE_GET_THREAD_AREA_3264 = 0xc4
++ PTRACE_GET_WATCH_REGS = 0xd0
++ PTRACE_OLDSETOPTIONS = 0x15
++ PTRACE_PEEKDATA_3264 = 0xc1
++ PTRACE_PEEKTEXT_3264 = 0xc0
++ PTRACE_POKEDATA_3264 = 0xc3
++ PTRACE_POKETEXT_3264 = 0xc2
++ PTRACE_SETFPREGS = 0xf
++ PTRACE_SET_THREAD_AREA = 0x1a
++ PTRACE_SET_WATCH_REGS = 0xd1
++ RLIMIT_AS = 0x6
++ RLIMIT_MEMLOCK = 0x9
++ RLIMIT_NOFILE = 0x5
++ RLIMIT_NPROC = 0x8
++ RLIMIT_RSS = 0x7
++ RNDADDENTROPY = 0x80085203
++ RNDADDTOENTCNT = 0x80045201
++ RNDCLEARPOOL = 0x20005206
++ RNDGETENTCNT = 0x40045200
++ RNDGETPOOL = 0x40085202
++ RNDRESEEDCRNG = 0x20005207
++ RNDZAPENTCNT = 0x20005204
++ RTC_AIE_OFF = 0x20007002
++ RTC_AIE_ON = 0x20007001
++ RTC_ALM_READ = 0x40247008
++ RTC_ALM_SET = 0x80247007
++ RTC_EPOCH_READ = 0x4004700d
++ RTC_EPOCH_SET = 0x8004700e
++ RTC_IRQP_READ = 0x4004700b
++ RTC_IRQP_SET = 0x8004700c
++ RTC_PIE_OFF = 0x20007006
++ RTC_PIE_ON = 0x20007005
++ RTC_PLL_GET = 0x401c7011
++ RTC_PLL_SET = 0x801c7012
++ RTC_RD_TIME = 0x40247009
++ RTC_SET_TIME = 0x8024700a
++ RTC_UIE_OFF = 0x20007004
++ RTC_UIE_ON = 0x20007003
++ RTC_VL_CLR = 0x20007014
++ RTC_VL_READ = 0x40047013
++ RTC_WIE_OFF = 0x20007010
++ RTC_WIE_ON = 0x2000700f
++ RTC_WKALM_RD = 0x40287010
++ RTC_WKALM_SET = 0x8028700f
++ SCM_TIMESTAMPING = 0x25
++ SCM_TIMESTAMPING_OPT_STATS = 0x36
++ SCM_TIMESTAMPING_PKTINFO = 0x3a
++ SCM_TIMESTAMPNS = 0x23
++ SCM_TXTIME = 0x3d
++ SCM_WIFI_STATUS = 0x29
++ SFD_CLOEXEC = 0x80000
++ SFD_NONBLOCK = 0x80
++ SIOCATMARK = 0x40047307
++ SIOCGPGRP = 0x40047309
++ SIOCGSTAMPNS_NEW = 0x40108907
++ SIOCGSTAMP_NEW = 0x40108906
++ SIOCINQ = 0x467f
++ SIOCOUTQ = 0x7472
++ SIOCSPGRP = 0x80047308
++ SOCK_CLOEXEC = 0x80000
++ SOCK_DGRAM = 0x1
++ SOCK_NONBLOCK = 0x80
++ SOCK_STREAM = 0x2
++ SOL_SOCKET = 0xffff
++ SO_ACCEPTCONN = 0x1009
++ SO_ATTACH_BPF = 0x32
++ SO_ATTACH_REUSEPORT_CBPF = 0x33
++ SO_ATTACH_REUSEPORT_EBPF = 0x34
++ SO_BINDTODEVICE = 0x19
++ SO_BINDTOIFINDEX = 0x3e
++ SO_BPF_EXTENSIONS = 0x30
++ SO_BROADCAST = 0x20
++ SO_BSDCOMPAT = 0xe
++ SO_BUSY_POLL = 0x2e
++ SO_CNX_ADVICE = 0x35
++ SO_COOKIE = 0x39
++ SO_DETACH_REUSEPORT_BPF = 0x44
++ SO_DOMAIN = 0x1029
++ SO_DONTROUTE = 0x10
++ SO_ERROR = 0x1007
++ SO_INCOMING_CPU = 0x31
++ SO_INCOMING_NAPI_ID = 0x38
++ SO_KEEPALIVE = 0x8
++ SO_LINGER = 0x80
++ SO_LOCK_FILTER = 0x2c
++ SO_MARK = 0x24
++ SO_MAX_PACING_RATE = 0x2f
++ SO_MEMINFO = 0x37
++ SO_NOFCS = 0x2b
++ SO_OOBINLINE = 0x100
++ SO_PASSCRED = 0x11
++ SO_PASSSEC = 0x22
++ SO_PEEK_OFF = 0x2a
++ SO_PEERCRED = 0x12
++ SO_PEERGROUPS = 0x3b
++ SO_PEERSEC = 0x1e
++ SO_PROTOCOL = 0x1028
++ SO_RCVBUF = 0x1002
++ SO_RCVBUFFORCE = 0x21
++ SO_RCVLOWAT = 0x1004
++ SO_RCVTIMEO = 0x1006
++ SO_RCVTIMEO_NEW = 0x42
++ SO_RCVTIMEO_OLD = 0x1006
++ SO_REUSEADDR = 0x4
++ SO_REUSEPORT = 0x200
++ SO_RXQ_OVFL = 0x28
++ SO_SECURITY_AUTHENTICATION = 0x16
++ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
++ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
++ SO_SELECT_ERR_QUEUE = 0x2d
++ SO_SNDBUF = 0x1001
++ SO_SNDBUFFORCE = 0x1f
++ SO_SNDLOWAT = 0x1003
++ SO_SNDTIMEO = 0x1005
++ SO_SNDTIMEO_NEW = 0x43
++ SO_SNDTIMEO_OLD = 0x1005
++ SO_STYLE = 0x1008
++ SO_TIMESTAMPING = 0x25
++ SO_TIMESTAMPING_NEW = 0x41
++ SO_TIMESTAMPING_OLD = 0x25
++ SO_TIMESTAMPNS = 0x23
++ SO_TIMESTAMPNS_NEW = 0x40
++ SO_TIMESTAMPNS_OLD = 0x23
++ SO_TIMESTAMP_NEW = 0x3f
++ SO_TXTIME = 0x3d
++ SO_TYPE = 0x1008
++ SO_WIFI_STATUS = 0x29
++ SO_ZEROCOPY = 0x3c
++ TAB1 = 0x800
++ TAB2 = 0x1000
++ TAB3 = 0x1800
++ TABDLY = 0x1800
++ TCFLSH = 0x5407
++ TCGETA = 0x5401
++ TCGETS = 0x540d
++ TCGETS2 = 0x4030542a
++ TCSAFLUSH = 0x5410
++ TCSBRK = 0x5405
++ TCSBRKP = 0x5486
++ TCSETA = 0x5402
++ TCSETAF = 0x5404
++ TCSETAW = 0x5403
++ TCSETS = 0x540e
++ TCSETS2 = 0x8030542b
++ TCSETSF = 0x5410
++ TCSETSF2 = 0x8030542d
++ TCSETSW = 0x540f
++ TCSETSW2 = 0x8030542c
++ TCXONC = 0x5406
++ TIOCCBRK = 0x5428
++ TIOCCONS = 0x80047478
++ TIOCEXCL = 0x740d
++ TIOCGDEV = 0x40045432
++ TIOCGETD = 0x7400
++ TIOCGETP = 0x7408
++ TIOCGEXCL = 0x40045440
++ TIOCGICOUNT = 0x5492
++ TIOCGISO7816 = 0x40285442
++ TIOCGLCKTRMIOS = 0x548b
++ TIOCGLTC = 0x7474
++ TIOCGPGRP = 0x40047477
++ TIOCGPKT = 0x40045438
++ TIOCGPTLCK = 0x40045439
++ TIOCGPTN = 0x40045430
++ TIOCGPTPEER = 0x20005441
++ TIOCGRS485 = 0x4020542e
++ TIOCGSERIAL = 0x5484
++ TIOCGSID = 0x7416
++ TIOCGSOFTCAR = 0x5481
++ TIOCGWINSZ = 0x40087468
++ TIOCINQ = 0x467f
++ TIOCLINUX = 0x5483
++ TIOCMBIC = 0x741c
++ TIOCMBIS = 0x741b
++ TIOCMGET = 0x741d
++ TIOCMIWAIT = 0x5491
++ TIOCMSET = 0x741a
++ TIOCM_CAR = 0x100
++ TIOCM_CD = 0x100
++ TIOCM_CTS = 0x40
++ TIOCM_DSR = 0x400
++ TIOCM_RI = 0x200
++ TIOCM_RNG = 0x200
++ TIOCM_SR = 0x20
++ TIOCM_ST = 0x10
++ TIOCNOTTY = 0x5471
++ TIOCNXCL = 0x740e
++ TIOCOUTQ = 0x7472
++ TIOCPKT = 0x5470
++ TIOCSBRK = 0x5427
++ TIOCSCTTY = 0x5480
++ TIOCSERCONFIG = 0x5488
++ TIOCSERGETLSR = 0x548e
++ TIOCSERGETMULTI = 0x548f
++ TIOCSERGSTRUCT = 0x548d
++ TIOCSERGWILD = 0x5489
++ TIOCSERSETMULTI = 0x5490
++ TIOCSERSWILD = 0x548a
++ TIOCSER_TEMT = 0x1
++ TIOCSETD = 0x7401
++ TIOCSETN = 0x740a
++ TIOCSETP = 0x7409
++ TIOCSIG = 0x80045436
++ TIOCSISO7816 = 0xc0285443
++ TIOCSLCKTRMIOS = 0x548c
++ TIOCSLTC = 0x7475
++ TIOCSPGRP = 0x80047476
++ TIOCSPTLCK = 0x80045431
++ TIOCSRS485 = 0xc020542f
++ TIOCSSERIAL = 0x5485
++ TIOCSSOFTCAR = 0x5482
++ TIOCSTI = 0x5472
++ TIOCSWINSZ = 0x80087467
++ TIOCVHANGUP = 0x5437
++ TOSTOP = 0x8000
++ TUNATTACHFILTER = 0x800854d5
++ TUNDETACHFILTER = 0x800854d6
++ TUNGETDEVNETNS = 0x200054e3
++ TUNGETFEATURES = 0x400454cf
++ TUNGETFILTER = 0x400854db
++ TUNGETIFF = 0x400454d2
++ TUNGETSNDBUF = 0x400454d3
++ TUNGETVNETBE = 0x400454df
++ TUNGETVNETHDRSZ = 0x400454d7
++ TUNGETVNETLE = 0x400454dd
++ TUNSETCARRIER = 0x800454e2
++ TUNSETDEBUG = 0x800454c9
++ TUNSETFILTEREBPF = 0x400454e1
++ TUNSETGROUP = 0x800454ce
++ TUNSETIFF = 0x800454ca
++ TUNSETIFINDEX = 0x800454da
++ TUNSETLINK = 0x800454cd
++ TUNSETNOCSUM = 0x800454c8
++ TUNSETOFFLOAD = 0x800454d0
++ TUNSETOWNER = 0x800454cc
++ TUNSETPERSIST = 0x800454cb
++ TUNSETQUEUE = 0x800454d9
++ TUNSETSNDBUF = 0x800454d4
++ TUNSETSTEERINGEBPF = 0x400454e0
++ TUNSETTXFILTER = 0x800454d1
++ TUNSETVNETBE = 0x800454de
++ TUNSETVNETHDRSZ = 0x800454d8
++ TUNSETVNETLE = 0x800454dc
++ UBI_IOCATT = 0x80186f40
++ UBI_IOCDET = 0x80046f41
++ UBI_IOCEBCH = 0x80044f02
++ UBI_IOCEBER = 0x80044f01
++ UBI_IOCEBISMAP = 0x40044f05
++ UBI_IOCEBMAP = 0x80084f03
++ UBI_IOCEBUNMAP = 0x80044f04
++ UBI_IOCMKVOL = 0x80986f00
++ UBI_IOCRMVOL = 0x80046f01
++ UBI_IOCRNVOL = 0x91106f03
++ UBI_IOCRPEB = 0x80046f04
++ UBI_IOCRSVOL = 0x800c6f02
++ UBI_IOCSETVOLPROP = 0x80104f06
++ UBI_IOCSPEB = 0x80046f05
++ UBI_IOCVOLCRBLK = 0x80804f07
++ UBI_IOCVOLRMBLK = 0x20004f08
++ UBI_IOCVOLUP = 0x80084f00
++ VDISCARD = 0xd
++ VEOF = 0x10
++ VEOL = 0x11
++ VEOL2 = 0x6
++ VMIN = 0x4
++ VREPRINT = 0xc
++ VSTART = 0x8
++ VSTOP = 0x9
++ VSUSP = 0xa
++ VSWTC = 0x7
++ VSWTCH = 0x7
++ VT1 = 0x4000
++ VTDLY = 0x4000
++ VTIME = 0x5
++ VWERASE = 0xe
++ WDIOC_GETBOOTSTATUS = 0x40045702
++ WDIOC_GETPRETIMEOUT = 0x40045709
++ WDIOC_GETSTATUS = 0x40045701
++ WDIOC_GETSUPPORT = 0x40285700
++ WDIOC_GETTEMP = 0x40045703
++ WDIOC_GETTIMELEFT = 0x4004570a
++ WDIOC_GETTIMEOUT = 0x40045707
++ WDIOC_KEEPALIVE = 0x40045705
++ WDIOC_SETOPTIONS = 0x40045704
++ WORDSIZE = 0x20
++ XCASE = 0x4
++ XTABS = 0x1800
+ )
+
+ // Errors
+ const (
+- E2BIG = syscall.Errno(0x7)
+- EACCES = syscall.Errno(0xd)
+ EADDRINUSE = syscall.Errno(0x7d)
+ EADDRNOTAVAIL = syscall.Errno(0x7e)
+ EADV = syscall.Errno(0x44)
+ EAFNOSUPPORT = syscall.Errno(0x7c)
+- EAGAIN = syscall.Errno(0xb)
+ EALREADY = syscall.Errno(0x95)
+ EBADE = syscall.Errno(0x32)
+- EBADF = syscall.Errno(0x9)
+ EBADFD = syscall.Errno(0x51)
+ EBADMSG = syscall.Errno(0x4d)
+ EBADR = syscall.Errno(0x33)
+ EBADRQC = syscall.Errno(0x36)
+ EBADSLT = syscall.Errno(0x37)
+ EBFONT = syscall.Errno(0x3b)
+- EBUSY = syscall.Errno(0x10)
+ ECANCELED = syscall.Errno(0x9e)
+- ECHILD = syscall.Errno(0xa)
+ ECHRNG = syscall.Errno(0x25)
+ ECOMM = syscall.Errno(0x46)
+ ECONNABORTED = syscall.Errno(0x82)
+@@ -1886,12 +502,8 @@ const (
+ EDEADLK = syscall.Errno(0x2d)
+ EDEADLOCK = syscall.Errno(0x38)
+ EDESTADDRREQ = syscall.Errno(0x60)
+- EDOM = syscall.Errno(0x21)
+ EDOTDOT = syscall.Errno(0x49)
+ EDQUOT = syscall.Errno(0x46d)
+- EEXIST = syscall.Errno(0x11)
+- EFAULT = syscall.Errno(0xe)
+- EFBIG = syscall.Errno(0x1b)
+ EHOSTDOWN = syscall.Errno(0x93)
+ EHOSTUNREACH = syscall.Errno(0x94)
+ EHWPOISON = syscall.Errno(0xa8)
+@@ -1899,11 +511,7 @@ const (
+ EILSEQ = syscall.Errno(0x58)
+ EINIT = syscall.Errno(0x8d)
+ EINPROGRESS = syscall.Errno(0x96)
+- EINTR = syscall.Errno(0x4)
+- EINVAL = syscall.Errno(0x16)
+- EIO = syscall.Errno(0x5)
+ EISCONN = syscall.Errno(0x85)
+- EISDIR = syscall.Errno(0x15)
+ EISNAM = syscall.Errno(0x8b)
+ EKEYEXPIRED = syscall.Errno(0xa2)
+ EKEYREJECTED = syscall.Errno(0xa4)
+@@ -1920,8 +528,6 @@ const (
+ ELNRNG = syscall.Errno(0x29)
+ ELOOP = syscall.Errno(0x5a)
+ EMEDIUMTYPE = syscall.Errno(0xa0)
+- EMFILE = syscall.Errno(0x18)
+- EMLINK = syscall.Errno(0x1f)
+ EMSGSIZE = syscall.Errno(0x61)
+ EMULTIHOP = syscall.Errno(0x4a)
+ ENAMETOOLONG = syscall.Errno(0x4e)
+@@ -1929,100 +535,68 @@ const (
+ ENETDOWN = syscall.Errno(0x7f)
+ ENETRESET = syscall.Errno(0x81)
+ ENETUNREACH = syscall.Errno(0x80)
+- ENFILE = syscall.Errno(0x17)
+ ENOANO = syscall.Errno(0x35)
+ ENOBUFS = syscall.Errno(0x84)
+ ENOCSI = syscall.Errno(0x2b)
+ ENODATA = syscall.Errno(0x3d)
+- ENODEV = syscall.Errno(0x13)
+- ENOENT = syscall.Errno(0x2)
+- ENOEXEC = syscall.Errno(0x8)
+ ENOKEY = syscall.Errno(0xa1)
+ ENOLCK = syscall.Errno(0x2e)
+ ENOLINK = syscall.Errno(0x43)
+ ENOMEDIUM = syscall.Errno(0x9f)
+- ENOMEM = syscall.Errno(0xc)
+ ENOMSG = syscall.Errno(0x23)
+ ENONET = syscall.Errno(0x40)
+ ENOPKG = syscall.Errno(0x41)
+ ENOPROTOOPT = syscall.Errno(0x63)
+- ENOSPC = syscall.Errno(0x1c)
+ ENOSR = syscall.Errno(0x3f)
+ ENOSTR = syscall.Errno(0x3c)
+ ENOSYS = syscall.Errno(0x59)
+- ENOTBLK = syscall.Errno(0xf)
+ ENOTCONN = syscall.Errno(0x86)
+- ENOTDIR = syscall.Errno(0x14)
+ ENOTEMPTY = syscall.Errno(0x5d)
+ ENOTNAM = syscall.Errno(0x89)
+ ENOTRECOVERABLE = syscall.Errno(0xa6)
+ ENOTSOCK = syscall.Errno(0x5f)
+ ENOTSUP = syscall.Errno(0x7a)
+- ENOTTY = syscall.Errno(0x19)
+ ENOTUNIQ = syscall.Errno(0x50)
+- ENXIO = syscall.Errno(0x6)
+ EOPNOTSUPP = syscall.Errno(0x7a)
+ EOVERFLOW = syscall.Errno(0x4f)
+ EOWNERDEAD = syscall.Errno(0xa5)
+- EPERM = syscall.Errno(0x1)
+ EPFNOSUPPORT = syscall.Errno(0x7b)
+- EPIPE = syscall.Errno(0x20)
+ EPROTO = syscall.Errno(0x47)
+ EPROTONOSUPPORT = syscall.Errno(0x78)
+ EPROTOTYPE = syscall.Errno(0x62)
+- ERANGE = syscall.Errno(0x22)
+ EREMCHG = syscall.Errno(0x52)
+ EREMDEV = syscall.Errno(0x8e)
+ EREMOTE = syscall.Errno(0x42)
+ EREMOTEIO = syscall.Errno(0x8c)
+ ERESTART = syscall.Errno(0x5b)
+ ERFKILL = syscall.Errno(0xa7)
+- EROFS = syscall.Errno(0x1e)
+ ESHUTDOWN = syscall.Errno(0x8f)
+ ESOCKTNOSUPPORT = syscall.Errno(0x79)
+- ESPIPE = syscall.Errno(0x1d)
+- ESRCH = syscall.Errno(0x3)
+ ESRMNT = syscall.Errno(0x45)
+ ESTALE = syscall.Errno(0x97)
+ ESTRPIPE = syscall.Errno(0x5c)
+ ETIME = syscall.Errno(0x3e)
+ ETIMEDOUT = syscall.Errno(0x91)
+ ETOOMANYREFS = syscall.Errno(0x90)
+- ETXTBSY = syscall.Errno(0x1a)
+ EUCLEAN = syscall.Errno(0x87)
+ EUNATCH = syscall.Errno(0x2a)
+ EUSERS = syscall.Errno(0x5e)
+- EWOULDBLOCK = syscall.Errno(0xb)
+- EXDEV = syscall.Errno(0x12)
+ EXFULL = syscall.Errno(0x34)
+ )
+
+ // Signals
+ const (
+- SIGABRT = syscall.Signal(0x6)
+- SIGALRM = syscall.Signal(0xe)
+ SIGBUS = syscall.Signal(0xa)
+ SIGCHLD = syscall.Signal(0x12)
+ SIGCLD = syscall.Signal(0x12)
+ SIGCONT = syscall.Signal(0x19)
+ SIGEMT = syscall.Signal(0x7)
+- SIGFPE = syscall.Signal(0x8)
+- SIGHUP = syscall.Signal(0x1)
+- SIGILL = syscall.Signal(0x4)
+- SIGINT = syscall.Signal(0x2)
+ SIGIO = syscall.Signal(0x16)
+- SIGIOT = syscall.Signal(0x6)
+- SIGKILL = syscall.Signal(0x9)
+- SIGPIPE = syscall.Signal(0xd)
+ SIGPOLL = syscall.Signal(0x16)
+ SIGPROF = syscall.Signal(0x1d)
+ SIGPWR = syscall.Signal(0x13)
+- SIGQUIT = syscall.Signal(0x3)
+- SIGSEGV = syscall.Signal(0xb)
+ SIGSTOP = syscall.Signal(0x17)
+ SIGSYS = syscall.Signal(0xc)
+- SIGTERM = syscall.Signal(0xf)
+- SIGTRAP = syscall.Signal(0x5)
+ SIGTSTP = syscall.Signal(0x18)
+ SIGTTIN = syscall.Signal(0x1a)
+ SIGTTOU = syscall.Signal(0x1b)
+@@ -2036,174 +610,182 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "no such device or address",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource temporarily unavailable",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device or resource busy",
+- 17: "file exists",
+- 18: "invalid cross-device link",
+- 19: "no such device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "numerical result out of range",
+- 35: "no message of desired type",
+- 36: "identifier removed",
+- 37: "channel number out of range",
+- 38: "level 2 not synchronized",
+- 39: "level 3 halted",
+- 40: "level 3 reset",
+- 41: "link number out of range",
+- 42: "protocol driver not attached",
+- 43: "no CSI structure available",
+- 44: "level 2 halted",
+- 45: "resource deadlock avoided",
+- 46: "no locks available",
+- 50: "invalid exchange",
+- 51: "invalid request descriptor",
+- 52: "exchange full",
+- 53: "no anode",
+- 54: "invalid request code",
+- 55: "invalid slot",
+- 56: "file locking deadlock error",
+- 59: "bad font file format",
+- 60: "device not a stream",
+- 61: "no data available",
+- 62: "timer expired",
+- 63: "out of streams resources",
+- 64: "machine is not on the network",
+- 65: "package not installed",
+- 66: "object is remote",
+- 67: "link has been severed",
+- 68: "advertise error",
+- 69: "srmount error",
+- 70: "communication error on send",
+- 71: "protocol error",
+- 73: "RFS specific error",
+- 74: "multihop attempted",
+- 77: "bad message",
+- 78: "file name too long",
+- 79: "value too large for defined data type",
+- 80: "name not unique on network",
+- 81: "file descriptor in bad state",
+- 82: "remote address changed",
+- 83: "can not access a needed shared library",
+- 84: "accessing a corrupted shared library",
+- 85: ".lib section in a.out corrupted",
+- 86: "attempting to link in too many shared libraries",
+- 87: "cannot exec a shared library directly",
+- 88: "invalid or incomplete multibyte or wide character",
+- 89: "function not implemented",
+- 90: "too many levels of symbolic links",
+- 91: "interrupted system call should be restarted",
+- 92: "streams pipe error",
+- 93: "directory not empty",
+- 94: "too many users",
+- 95: "socket operation on non-socket",
+- 96: "destination address required",
+- 97: "message too long",
+- 98: "protocol wrong type for socket",
+- 99: "protocol not available",
+- 120: "protocol not supported",
+- 121: "socket type not supported",
+- 122: "operation not supported",
+- 123: "protocol family not supported",
+- 124: "address family not supported by protocol",
+- 125: "address already in use",
+- 126: "cannot assign requested address",
+- 127: "network is down",
+- 128: "network is unreachable",
+- 129: "network dropped connection on reset",
+- 130: "software caused connection abort",
+- 131: "connection reset by peer",
+- 132: "no buffer space available",
+- 133: "transport endpoint is already connected",
+- 134: "transport endpoint is not connected",
+- 135: "structure needs cleaning",
+- 137: "not a XENIX named type file",
+- 138: "no XENIX semaphores available",
+- 139: "is a named type file",
+- 140: "remote I/O error",
+- 141: "unknown error 141",
+- 142: "unknown error 142",
+- 143: "cannot send after transport endpoint shutdown",
+- 144: "too many references: cannot splice",
+- 145: "connection timed out",
+- 146: "connection refused",
+- 147: "host is down",
+- 148: "no route to host",
+- 149: "operation already in progress",
+- 150: "operation now in progress",
+- 151: "stale file handle",
+- 158: "operation canceled",
+- 159: "no medium found",
+- 160: "wrong medium type",
+- 161: "required key not available",
+- 162: "key has expired",
+- 163: "key has been revoked",
+- 164: "key was rejected by service",
+- 165: "owner died",
+- 166: "state not recoverable",
+- 167: "operation not possible due to RF-kill",
+- 168: "memory page has hardware error",
+- 1133: "disk quota exceeded",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "no such device or address"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EAGAIN", "resource temporarily unavailable"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device or resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "invalid cross-device link"},
++ {19, "ENODEV", "no such device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "numerical result out of range"},
++ {35, "ENOMSG", "no message of desired type"},
++ {36, "EIDRM", "identifier removed"},
++ {37, "ECHRNG", "channel number out of range"},
++ {38, "EL2NSYNC", "level 2 not synchronized"},
++ {39, "EL3HLT", "level 3 halted"},
++ {40, "EL3RST", "level 3 reset"},
++ {41, "ELNRNG", "link number out of range"},
++ {42, "EUNATCH", "protocol driver not attached"},
++ {43, "ENOCSI", "no CSI structure available"},
++ {44, "EL2HLT", "level 2 halted"},
++ {45, "EDEADLK", "resource deadlock avoided"},
++ {46, "ENOLCK", "no locks available"},
++ {50, "EBADE", "invalid exchange"},
++ {51, "EBADR", "invalid request descriptor"},
++ {52, "EXFULL", "exchange full"},
++ {53, "ENOANO", "no anode"},
++ {54, "EBADRQC", "invalid request code"},
++ {55, "EBADSLT", "invalid slot"},
++ {56, "EDEADLOCK", "file locking deadlock error"},
++ {59, "EBFONT", "bad font file format"},
++ {60, "ENOSTR", "device not a stream"},
++ {61, "ENODATA", "no data available"},
++ {62, "ETIME", "timer expired"},
++ {63, "ENOSR", "out of streams resources"},
++ {64, "ENONET", "machine is not on the network"},
++ {65, "ENOPKG", "package not installed"},
++ {66, "EREMOTE", "object is remote"},
++ {67, "ENOLINK", "link has been severed"},
++ {68, "EADV", "advertise error"},
++ {69, "ESRMNT", "srmount error"},
++ {70, "ECOMM", "communication error on send"},
++ {71, "EPROTO", "protocol error"},
++ {73, "EDOTDOT", "RFS specific error"},
++ {74, "EMULTIHOP", "multihop attempted"},
++ {77, "EBADMSG", "bad message"},
++ {78, "ENAMETOOLONG", "file name too long"},
++ {79, "EOVERFLOW", "value too large for defined data type"},
++ {80, "ENOTUNIQ", "name not unique on network"},
++ {81, "EBADFD", "file descriptor in bad state"},
++ {82, "EREMCHG", "remote address changed"},
++ {83, "ELIBACC", "can not access a needed shared library"},
++ {84, "ELIBBAD", "accessing a corrupted shared library"},
++ {85, "ELIBSCN", ".lib section in a.out corrupted"},
++ {86, "ELIBMAX", "attempting to link in too many shared libraries"},
++ {87, "ELIBEXEC", "cannot exec a shared library directly"},
++ {88, "EILSEQ", "invalid or incomplete multibyte or wide character"},
++ {89, "ENOSYS", "function not implemented"},
++ {90, "ELOOP", "too many levels of symbolic links"},
++ {91, "ERESTART", "interrupted system call should be restarted"},
++ {92, "ESTRPIPE", "streams pipe error"},
++ {93, "ENOTEMPTY", "directory not empty"},
++ {94, "EUSERS", "too many users"},
++ {95, "ENOTSOCK", "socket operation on non-socket"},
++ {96, "EDESTADDRREQ", "destination address required"},
++ {97, "EMSGSIZE", "message too long"},
++ {98, "EPROTOTYPE", "protocol wrong type for socket"},
++ {99, "ENOPROTOOPT", "protocol not available"},
++ {120, "EPROTONOSUPPORT", "protocol not supported"},
++ {121, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {122, "ENOTSUP", "operation not supported"},
++ {123, "EPFNOSUPPORT", "protocol family not supported"},
++ {124, "EAFNOSUPPORT", "address family not supported by protocol"},
++ {125, "EADDRINUSE", "address already in use"},
++ {126, "EADDRNOTAVAIL", "cannot assign requested address"},
++ {127, "ENETDOWN", "network is down"},
++ {128, "ENETUNREACH", "network is unreachable"},
++ {129, "ENETRESET", "network dropped connection on reset"},
++ {130, "ECONNABORTED", "software caused connection abort"},
++ {131, "ECONNRESET", "connection reset by peer"},
++ {132, "ENOBUFS", "no buffer space available"},
++ {133, "EISCONN", "transport endpoint is already connected"},
++ {134, "ENOTCONN", "transport endpoint is not connected"},
++ {135, "EUCLEAN", "structure needs cleaning"},
++ {137, "ENOTNAM", "not a XENIX named type file"},
++ {138, "ENAVAIL", "no XENIX semaphores available"},
++ {139, "EISNAM", "is a named type file"},
++ {140, "EREMOTEIO", "remote I/O error"},
++ {141, "EINIT", "unknown error 141"},
++ {142, "EREMDEV", "unknown error 142"},
++ {143, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
++ {144, "ETOOMANYREFS", "too many references: cannot splice"},
++ {145, "ETIMEDOUT", "connection timed out"},
++ {146, "ECONNREFUSED", "connection refused"},
++ {147, "EHOSTDOWN", "host is down"},
++ {148, "EHOSTUNREACH", "no route to host"},
++ {149, "EALREADY", "operation already in progress"},
++ {150, "EINPROGRESS", "operation now in progress"},
++ {151, "ESTALE", "stale file handle"},
++ {158, "ECANCELED", "operation canceled"},
++ {159, "ENOMEDIUM", "no medium found"},
++ {160, "EMEDIUMTYPE", "wrong medium type"},
++ {161, "ENOKEY", "required key not available"},
++ {162, "EKEYEXPIRED", "key has expired"},
++ {163, "EKEYREVOKED", "key has been revoked"},
++ {164, "EKEYREJECTED", "key was rejected by service"},
++ {165, "EOWNERDEAD", "owner died"},
++ {166, "ENOTRECOVERABLE", "state not recoverable"},
++ {167, "ERFKILL", "operation not possible due to RF-kill"},
++ {168, "EHWPOISON", "memory page has hardware error"},
++ {1133, "EDQUOT", "disk quota exceeded"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/breakpoint trap",
+- 6: "aborted",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "user defined signal 1",
+- 17: "user defined signal 2",
+- 18: "child exited",
+- 19: "power failure",
+- 20: "window changed",
+- 21: "urgent I/O condition",
+- 22: "I/O possible",
+- 23: "stopped (signal)",
+- 24: "stopped",
+- 25: "continued",
+- 26: "stopped (tty input)",
+- 27: "stopped (tty output)",
+- 28: "virtual timer expired",
+- 29: "profiling timer expired",
+- 30: "CPU time limit exceeded",
+- 31: "file size limit exceeded",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/breakpoint trap"},
++ {6, "SIGABRT", "aborted"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGUSR1", "user defined signal 1"},
++ {17, "SIGUSR2", "user defined signal 2"},
++ {18, "SIGCHLD", "child exited"},
++ {19, "SIGPWR", "power failure"},
++ {20, "SIGWINCH", "window changed"},
++ {21, "SIGURG", "urgent I/O condition"},
++ {22, "SIGIO", "I/O possible"},
++ {23, "SIGSTOP", "stopped (signal)"},
++ {24, "SIGTSTP", "stopped"},
++ {25, "SIGCONT", "continued"},
++ {26, "SIGTTIN", "stopped (tty input)"},
++ {27, "SIGTTOU", "stopped (tty output)"},
++ {28, "SIGVTALRM", "virtual timer expired"},
++ {29, "SIGPROF", "profiling timer expired"},
++ {30, "SIGXCPU", "CPU time limit exceeded"},
++ {31, "SIGXFSZ", "file size limit exceeded"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go
+index 6772a59b..51858667 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go
+@@ -3,7 +3,7 @@
+
+ // +build ppc64,linux
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
+
+ package unix
+@@ -11,1930 +11,549 @@ package unix
+ import "syscall"
+
+ const (
+- AF_ALG = 0x26
+- AF_APPLETALK = 0x5
+- AF_ASH = 0x12
+- AF_ATMPVC = 0x8
+- AF_ATMSVC = 0x14
+- AF_AX25 = 0x3
+- AF_BLUETOOTH = 0x1f
+- AF_BRIDGE = 0x7
+- AF_CAIF = 0x25
+- AF_CAN = 0x1d
+- AF_DECnet = 0xc
+- AF_ECONET = 0x13
+- AF_FILE = 0x1
+- AF_IB = 0x1b
+- AF_IEEE802154 = 0x24
+- AF_INET = 0x2
+- AF_INET6 = 0xa
+- AF_IPX = 0x4
+- AF_IRDA = 0x17
+- AF_ISDN = 0x22
+- AF_IUCV = 0x20
+- AF_KCM = 0x29
+- AF_KEY = 0xf
+- AF_LLC = 0x1a
+- AF_LOCAL = 0x1
+- AF_MAX = 0x2b
+- AF_MPLS = 0x1c
+- AF_NETBEUI = 0xd
+- AF_NETLINK = 0x10
+- AF_NETROM = 0x6
+- AF_NFC = 0x27
+- AF_PACKET = 0x11
+- AF_PHONET = 0x23
+- AF_PPPOX = 0x18
+- AF_QIPCRTR = 0x2a
+- AF_RDS = 0x15
+- AF_ROSE = 0xb
+- AF_ROUTE = 0x10
+- AF_RXRPC = 0x21
+- AF_SECURITY = 0xe
+- AF_SNA = 0x16
+- AF_TIPC = 0x1e
+- AF_UNIX = 0x1
+- AF_UNSPEC = 0x0
+- AF_VSOCK = 0x28
+- AF_WANPIPE = 0x19
+- AF_X25 = 0x9
+- ALG_OP_DECRYPT = 0x0
+- ALG_OP_ENCRYPT = 0x1
+- ALG_SET_AEAD_ASSOCLEN = 0x4
+- ALG_SET_AEAD_AUTHSIZE = 0x5
+- ALG_SET_IV = 0x2
+- ALG_SET_KEY = 0x1
+- ALG_SET_OP = 0x3
+- ARPHRD_6LOWPAN = 0x339
+- ARPHRD_ADAPT = 0x108
+- ARPHRD_APPLETLK = 0x8
+- ARPHRD_ARCNET = 0x7
+- ARPHRD_ASH = 0x30d
+- ARPHRD_ATM = 0x13
+- ARPHRD_AX25 = 0x3
+- ARPHRD_BIF = 0x307
+- ARPHRD_CAIF = 0x336
+- ARPHRD_CAN = 0x118
+- ARPHRD_CHAOS = 0x5
+- ARPHRD_CISCO = 0x201
+- ARPHRD_CSLIP = 0x101
+- ARPHRD_CSLIP6 = 0x103
+- ARPHRD_DDCMP = 0x205
+- ARPHRD_DLCI = 0xf
+- ARPHRD_ECONET = 0x30e
+- ARPHRD_EETHER = 0x2
+- ARPHRD_ETHER = 0x1
+- ARPHRD_EUI64 = 0x1b
+- ARPHRD_FCAL = 0x311
+- ARPHRD_FCFABRIC = 0x313
+- ARPHRD_FCPL = 0x312
+- ARPHRD_FCPP = 0x310
+- ARPHRD_FDDI = 0x306
+- ARPHRD_FRAD = 0x302
+- ARPHRD_HDLC = 0x201
+- ARPHRD_HIPPI = 0x30c
+- ARPHRD_HWX25 = 0x110
+- ARPHRD_IEEE1394 = 0x18
+- ARPHRD_IEEE802 = 0x6
+- ARPHRD_IEEE80211 = 0x321
+- ARPHRD_IEEE80211_PRISM = 0x322
+- ARPHRD_IEEE80211_RADIOTAP = 0x323
+- ARPHRD_IEEE802154 = 0x324
+- ARPHRD_IEEE802154_MONITOR = 0x325
+- ARPHRD_IEEE802_TR = 0x320
+- ARPHRD_INFINIBAND = 0x20
+- ARPHRD_IP6GRE = 0x337
+- ARPHRD_IPDDP = 0x309
+- ARPHRD_IPGRE = 0x30a
+- ARPHRD_IRDA = 0x30f
+- ARPHRD_LAPB = 0x204
+- ARPHRD_LOCALTLK = 0x305
+- ARPHRD_LOOPBACK = 0x304
+- ARPHRD_METRICOM = 0x17
+- ARPHRD_NETLINK = 0x338
+- ARPHRD_NETROM = 0x0
+- ARPHRD_NONE = 0xfffe
+- ARPHRD_PHONET = 0x334
+- ARPHRD_PHONET_PIPE = 0x335
+- ARPHRD_PIMREG = 0x30b
+- ARPHRD_PPP = 0x200
+- ARPHRD_PRONET = 0x4
+- ARPHRD_RAWHDLC = 0x206
+- ARPHRD_ROSE = 0x10e
+- ARPHRD_RSRVD = 0x104
+- ARPHRD_SIT = 0x308
+- ARPHRD_SKIP = 0x303
+- ARPHRD_SLIP = 0x100
+- ARPHRD_SLIP6 = 0x102
+- ARPHRD_TUNNEL = 0x300
+- ARPHRD_TUNNEL6 = 0x301
+- ARPHRD_VOID = 0xffff
+- ARPHRD_X25 = 0x10f
+- B0 = 0x0
+- B1000000 = 0x17
+- B110 = 0x3
+- B115200 = 0x11
+- B1152000 = 0x18
+- B1200 = 0x9
+- B134 = 0x4
+- B150 = 0x5
+- B1500000 = 0x19
+- B1800 = 0xa
+- B19200 = 0xe
+- B200 = 0x6
+- B2000000 = 0x1a
+- B230400 = 0x12
+- B2400 = 0xb
+- B2500000 = 0x1b
+- B300 = 0x7
+- B3000000 = 0x1c
+- B3500000 = 0x1d
+- B38400 = 0xf
+- B4000000 = 0x1e
+- B460800 = 0x13
+- B4800 = 0xc
+- B50 = 0x1
+- B500000 = 0x14
+- B57600 = 0x10
+- B576000 = 0x15
+- B600 = 0x8
+- B75 = 0x2
+- B921600 = 0x16
+- B9600 = 0xd
+- BLKBSZGET = 0x40081270
+- BLKBSZSET = 0x80081271
+- BLKFLSBUF = 0x20001261
+- BLKFRAGET = 0x20001265
+- BLKFRASET = 0x20001264
+- BLKGETSIZE = 0x20001260
+- BLKGETSIZE64 = 0x40081272
+- BLKPBSZGET = 0x2000127b
+- BLKRAGET = 0x20001263
+- BLKRASET = 0x20001262
+- BLKROGET = 0x2000125e
+- BLKROSET = 0x2000125d
+- BLKRRPART = 0x2000125f
+- BLKSECTGET = 0x20001267
+- BLKSECTSET = 0x20001266
+- BLKSSZGET = 0x20001268
+- BOTHER = 0x1f
+- BPF_A = 0x10
+- BPF_ABS = 0x20
+- BPF_ADD = 0x0
+- BPF_ALU = 0x4
+- BPF_AND = 0x50
+- BPF_B = 0x10
+- BPF_DIV = 0x30
+- BPF_H = 0x8
+- BPF_IMM = 0x0
+- BPF_IND = 0x40
+- BPF_JA = 0x0
+- BPF_JEQ = 0x10
+- BPF_JGE = 0x30
+- BPF_JGT = 0x20
+- BPF_JMP = 0x5
+- BPF_JSET = 0x40
+- BPF_K = 0x0
+- BPF_LD = 0x0
+- BPF_LDX = 0x1
+- BPF_LEN = 0x80
+- BPF_LL_OFF = -0x200000
+- BPF_LSH = 0x60
+- BPF_MAJOR_VERSION = 0x1
+- BPF_MAXINSNS = 0x1000
+- BPF_MEM = 0x60
+- BPF_MEMWORDS = 0x10
+- BPF_MINOR_VERSION = 0x1
+- BPF_MISC = 0x7
+- BPF_MOD = 0x90
+- BPF_MSH = 0xa0
+- BPF_MUL = 0x20
+- BPF_NEG = 0x80
+- BPF_NET_OFF = -0x100000
+- BPF_OR = 0x40
+- BPF_RET = 0x6
+- BPF_RSH = 0x70
+- BPF_ST = 0x2
+- BPF_STX = 0x3
+- BPF_SUB = 0x10
+- BPF_TAX = 0x0
+- BPF_TXA = 0x80
+- BPF_W = 0x0
+- BPF_X = 0x8
+- BPF_XOR = 0xa0
+- BRKINT = 0x2
+- BS0 = 0x0
+- BS1 = 0x8000
+- BSDLY = 0x8000
+- CAN_BCM = 0x2
+- CAN_EFF_FLAG = 0x80000000
+- CAN_EFF_ID_BITS = 0x1d
+- CAN_EFF_MASK = 0x1fffffff
+- CAN_ERR_FLAG = 0x20000000
+- CAN_ERR_MASK = 0x1fffffff
+- CAN_INV_FILTER = 0x20000000
+- CAN_ISOTP = 0x6
+- CAN_MAX_DLC = 0x8
+- CAN_MAX_DLEN = 0x8
+- CAN_MCNET = 0x5
+- CAN_MTU = 0x10
+- CAN_NPROTO = 0x7
+- CAN_RAW = 0x1
+- CAN_RAW_FILTER_MAX = 0x200
+- CAN_RTR_FLAG = 0x40000000
+- CAN_SFF_ID_BITS = 0xb
+- CAN_SFF_MASK = 0x7ff
+- CAN_TP16 = 0x3
+- CAN_TP20 = 0x4
+- CBAUD = 0xff
+- CBAUDEX = 0x0
+- CFLUSH = 0xf
+- CIBAUD = 0xff0000
+- CLOCAL = 0x8000
+- CLOCK_BOOTTIME = 0x7
+- CLOCK_BOOTTIME_ALARM = 0x9
+- CLOCK_DEFAULT = 0x0
+- CLOCK_EXT = 0x1
+- CLOCK_INT = 0x2
+- CLOCK_MONOTONIC = 0x1
+- CLOCK_MONOTONIC_COARSE = 0x6
+- CLOCK_MONOTONIC_RAW = 0x4
+- CLOCK_PROCESS_CPUTIME_ID = 0x2
+- CLOCK_REALTIME = 0x0
+- CLOCK_REALTIME_ALARM = 0x8
+- CLOCK_REALTIME_COARSE = 0x5
+- CLOCK_TAI = 0xb
+- CLOCK_THREAD_CPUTIME_ID = 0x3
+- CLOCK_TXFROMRX = 0x4
+- CLOCK_TXINT = 0x3
+- CLONE_CHILD_CLEARTID = 0x200000
+- CLONE_CHILD_SETTID = 0x1000000
+- CLONE_DETACHED = 0x400000
+- CLONE_FILES = 0x400
+- CLONE_FS = 0x200
+- CLONE_IO = 0x80000000
+- CLONE_NEWCGROUP = 0x2000000
+- CLONE_NEWIPC = 0x8000000
+- CLONE_NEWNET = 0x40000000
+- CLONE_NEWNS = 0x20000
+- CLONE_NEWPID = 0x20000000
+- CLONE_NEWUSER = 0x10000000
+- CLONE_NEWUTS = 0x4000000
+- CLONE_PARENT = 0x8000
+- CLONE_PARENT_SETTID = 0x100000
+- CLONE_PTRACE = 0x2000
+- CLONE_SETTLS = 0x80000
+- CLONE_SIGHAND = 0x800
+- CLONE_SYSVSEM = 0x40000
+- CLONE_THREAD = 0x10000
+- CLONE_UNTRACED = 0x800000
+- CLONE_VFORK = 0x4000
+- CLONE_VM = 0x100
+- CMSPAR = 0x40000000
+- CR0 = 0x0
+- CR1 = 0x1000
+- CR2 = 0x2000
+- CR3 = 0x3000
+- CRDLY = 0x3000
+- CREAD = 0x800
+- CRTSCTS = 0x80000000
+- CS5 = 0x0
+- CS6 = 0x100
+- CS7 = 0x200
+- CS8 = 0x300
+- CSIGNAL = 0xff
+- CSIZE = 0x300
+- CSTART = 0x11
+- CSTATUS = 0x0
+- CSTOP = 0x13
+- CSTOPB = 0x400
+- CSUSP = 0x1a
+- DT_BLK = 0x6
+- DT_CHR = 0x2
+- DT_DIR = 0x4
+- DT_FIFO = 0x1
+- DT_LNK = 0xa
+- DT_REG = 0x8
+- DT_SOCK = 0xc
+- DT_UNKNOWN = 0x0
+- DT_WHT = 0xe
+- ECHO = 0x8
+- ECHOCTL = 0x40
+- ECHOE = 0x2
+- ECHOK = 0x4
+- ECHOKE = 0x1
+- ECHONL = 0x10
+- ECHOPRT = 0x20
+- EFD_CLOEXEC = 0x80000
+- EFD_NONBLOCK = 0x800
+- EFD_SEMAPHORE = 0x1
+- ENCODING_DEFAULT = 0x0
+- ENCODING_FM_MARK = 0x3
+- ENCODING_FM_SPACE = 0x4
+- ENCODING_MANCHESTER = 0x5
+- ENCODING_NRZ = 0x1
+- ENCODING_NRZI = 0x2
+- EPOLLERR = 0x8
+- EPOLLET = 0x80000000
+- EPOLLEXCLUSIVE = 0x10000000
+- EPOLLHUP = 0x10
+- EPOLLIN = 0x1
+- EPOLLMSG = 0x400
+- EPOLLONESHOT = 0x40000000
+- EPOLLOUT = 0x4
+- EPOLLPRI = 0x2
+- EPOLLRDBAND = 0x80
+- EPOLLRDHUP = 0x2000
+- EPOLLRDNORM = 0x40
+- EPOLLWAKEUP = 0x20000000
+- EPOLLWRBAND = 0x200
+- EPOLLWRNORM = 0x100
+- EPOLL_CLOEXEC = 0x80000
+- EPOLL_CTL_ADD = 0x1
+- EPOLL_CTL_DEL = 0x2
+- EPOLL_CTL_MOD = 0x3
+- ETH_P_1588 = 0x88f7
+- ETH_P_8021AD = 0x88a8
+- ETH_P_8021AH = 0x88e7
+- ETH_P_8021Q = 0x8100
+- ETH_P_80221 = 0x8917
+- ETH_P_802_2 = 0x4
+- ETH_P_802_3 = 0x1
+- ETH_P_802_3_MIN = 0x600
+- ETH_P_802_EX1 = 0x88b5
+- ETH_P_AARP = 0x80f3
+- ETH_P_AF_IUCV = 0xfbfb
+- ETH_P_ALL = 0x3
+- ETH_P_AOE = 0x88a2
+- ETH_P_ARCNET = 0x1a
+- ETH_P_ARP = 0x806
+- ETH_P_ATALK = 0x809b
+- ETH_P_ATMFATE = 0x8884
+- ETH_P_ATMMPOA = 0x884c
+- ETH_P_AX25 = 0x2
+- ETH_P_BATMAN = 0x4305
+- ETH_P_BPQ = 0x8ff
+- ETH_P_CAIF = 0xf7
+- ETH_P_CAN = 0xc
+- ETH_P_CANFD = 0xd
+- ETH_P_CONTROL = 0x16
+- ETH_P_CUST = 0x6006
+- ETH_P_DDCMP = 0x6
+- ETH_P_DEC = 0x6000
+- ETH_P_DIAG = 0x6005
+- ETH_P_DNA_DL = 0x6001
+- ETH_P_DNA_RC = 0x6002
+- ETH_P_DNA_RT = 0x6003
+- ETH_P_DSA = 0x1b
+- ETH_P_ECONET = 0x18
+- ETH_P_EDSA = 0xdada
+- ETH_P_FCOE = 0x8906
+- ETH_P_FIP = 0x8914
+- ETH_P_HDLC = 0x19
+- ETH_P_HSR = 0x892f
+- ETH_P_IEEE802154 = 0xf6
+- ETH_P_IEEEPUP = 0xa00
+- ETH_P_IEEEPUPAT = 0xa01
+- ETH_P_IP = 0x800
+- ETH_P_IPV6 = 0x86dd
+- ETH_P_IPX = 0x8137
+- ETH_P_IRDA = 0x17
+- ETH_P_LAT = 0x6004
+- ETH_P_LINK_CTL = 0x886c
+- ETH_P_LOCALTALK = 0x9
+- ETH_P_LOOP = 0x60
+- ETH_P_LOOPBACK = 0x9000
+- ETH_P_MACSEC = 0x88e5
+- ETH_P_MOBITEX = 0x15
+- ETH_P_MPLS_MC = 0x8848
+- ETH_P_MPLS_UC = 0x8847
+- ETH_P_MVRP = 0x88f5
+- ETH_P_NCSI = 0x88f8
+- ETH_P_PAE = 0x888e
+- ETH_P_PAUSE = 0x8808
+- ETH_P_PHONET = 0xf5
+- ETH_P_PPPTALK = 0x10
+- ETH_P_PPP_DISC = 0x8863
+- ETH_P_PPP_MP = 0x8
+- ETH_P_PPP_SES = 0x8864
+- ETH_P_PRP = 0x88fb
+- ETH_P_PUP = 0x200
+- ETH_P_PUPAT = 0x201
+- ETH_P_QINQ1 = 0x9100
+- ETH_P_QINQ2 = 0x9200
+- ETH_P_QINQ3 = 0x9300
+- ETH_P_RARP = 0x8035
+- ETH_P_SCA = 0x6007
+- ETH_P_SLOW = 0x8809
+- ETH_P_SNAP = 0x5
+- ETH_P_TDLS = 0x890d
+- ETH_P_TEB = 0x6558
+- ETH_P_TIPC = 0x88ca
+- ETH_P_TRAILER = 0x1c
+- ETH_P_TR_802_2 = 0x11
+- ETH_P_TSN = 0x22f0
+- ETH_P_WAN_PPP = 0x7
+- ETH_P_WCCP = 0x883e
+- ETH_P_X25 = 0x805
+- ETH_P_XDSA = 0xf8
+- EXTA = 0xe
+- EXTB = 0xf
+- EXTPROC = 0x10000000
+- FALLOC_FL_COLLAPSE_RANGE = 0x8
+- FALLOC_FL_INSERT_RANGE = 0x20
+- FALLOC_FL_KEEP_SIZE = 0x1
+- FALLOC_FL_NO_HIDE_STALE = 0x4
+- FALLOC_FL_PUNCH_HOLE = 0x2
+- FALLOC_FL_UNSHARE_RANGE = 0x40
+- FALLOC_FL_ZERO_RANGE = 0x10
+- FD_CLOEXEC = 0x1
+- FD_SETSIZE = 0x400
+- FF0 = 0x0
+- FF1 = 0x4000
+- FFDLY = 0x4000
+- FLUSHO = 0x800000
+- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
+- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
+- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
+- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
+- FS_ENCRYPTION_MODE_INVALID = 0x0
+- FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
+- FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
+- FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
+- FS_KEY_DESCRIPTOR_SIZE = 0x8
+- FS_KEY_DESC_PREFIX = "fscrypt:"
+- FS_KEY_DESC_PREFIX_SIZE = 0x8
+- FS_MAX_KEY_SIZE = 0x40
+- FS_POLICY_FLAGS_PAD_16 = 0x2
+- FS_POLICY_FLAGS_PAD_32 = 0x3
+- FS_POLICY_FLAGS_PAD_4 = 0x0
+- FS_POLICY_FLAGS_PAD_8 = 0x1
+- FS_POLICY_FLAGS_PAD_MASK = 0x3
+- FS_POLICY_FLAGS_VALID = 0x3
+- F_DUPFD = 0x0
+- F_DUPFD_CLOEXEC = 0x406
+- F_EXLCK = 0x4
+- F_GETFD = 0x1
+- F_GETFL = 0x3
+- F_GETLEASE = 0x401
+- F_GETLK = 0x5
+- F_GETLK64 = 0xc
+- F_GETOWN = 0x9
+- F_GETOWN_EX = 0x10
+- F_GETPIPE_SZ = 0x408
+- F_GETSIG = 0xb
+- F_LOCK = 0x1
+- F_NOTIFY = 0x402
+- F_OFD_GETLK = 0x24
+- F_OFD_SETLK = 0x25
+- F_OFD_SETLKW = 0x26
+- F_OK = 0x0
+- F_RDLCK = 0x0
+- F_SETFD = 0x2
+- F_SETFL = 0x4
+- F_SETLEASE = 0x400
+- F_SETLK = 0x6
+- F_SETLK64 = 0xd
+- F_SETLKW = 0x7
+- F_SETLKW64 = 0xe
+- F_SETOWN = 0x8
+- F_SETOWN_EX = 0xf
+- F_SETPIPE_SZ = 0x407
+- F_SETSIG = 0xa
+- F_SHLCK = 0x8
+- F_TEST = 0x3
+- F_TLOCK = 0x2
+- F_ULOCK = 0x0
+- F_UNLCK = 0x2
+- F_WRLCK = 0x1
+- GENL_ADMIN_PERM = 0x1
+- GENL_CMD_CAP_DO = 0x2
+- GENL_CMD_CAP_DUMP = 0x4
+- GENL_CMD_CAP_HASPOL = 0x8
+- GENL_HDRLEN = 0x4
+- GENL_ID_CTRL = 0x10
+- GENL_ID_PMCRAID = 0x12
+- GENL_ID_VFS_DQUOT = 0x11
+- GENL_MAX_ID = 0x3ff
+- GENL_MIN_ID = 0x10
+- GENL_NAMSIZ = 0x10
+- GENL_START_ALLOC = 0x13
+- GENL_UNS_ADMIN_PERM = 0x10
+- GRND_NONBLOCK = 0x1
+- GRND_RANDOM = 0x2
+- HUPCL = 0x4000
+- IBSHIFT = 0x10
+- ICANON = 0x100
+- ICMPV6_FILTER = 0x1
+- ICRNL = 0x100
+- IEXTEN = 0x400
+- IFA_F_DADFAILED = 0x8
+- IFA_F_DEPRECATED = 0x20
+- IFA_F_HOMEADDRESS = 0x10
+- IFA_F_MANAGETEMPADDR = 0x100
+- IFA_F_MCAUTOJOIN = 0x400
+- IFA_F_NODAD = 0x2
+- IFA_F_NOPREFIXROUTE = 0x200
+- IFA_F_OPTIMISTIC = 0x4
+- IFA_F_PERMANENT = 0x80
+- IFA_F_SECONDARY = 0x1
+- IFA_F_STABLE_PRIVACY = 0x800
+- IFA_F_TEMPORARY = 0x1
+- IFA_F_TENTATIVE = 0x40
+- IFA_MAX = 0x8
+- IFF_ALLMULTI = 0x200
+- IFF_ATTACH_QUEUE = 0x200
+- IFF_AUTOMEDIA = 0x4000
+- IFF_BROADCAST = 0x2
+- IFF_DEBUG = 0x4
+- IFF_DETACH_QUEUE = 0x400
+- IFF_DORMANT = 0x20000
+- IFF_DYNAMIC = 0x8000
+- IFF_ECHO = 0x40000
+- IFF_LOOPBACK = 0x8
+- IFF_LOWER_UP = 0x10000
+- IFF_MASTER = 0x400
+- IFF_MULTICAST = 0x1000
+- IFF_MULTI_QUEUE = 0x100
+- IFF_NOARP = 0x80
+- IFF_NOFILTER = 0x1000
+- IFF_NOTRAILERS = 0x20
+- IFF_NO_PI = 0x1000
+- IFF_ONE_QUEUE = 0x2000
+- IFF_PERSIST = 0x800
+- IFF_POINTOPOINT = 0x10
+- IFF_PORTSEL = 0x2000
+- IFF_PROMISC = 0x100
+- IFF_RUNNING = 0x40
+- IFF_SLAVE = 0x800
+- IFF_TAP = 0x2
+- IFF_TUN = 0x1
+- IFF_TUN_EXCL = 0x8000
+- IFF_UP = 0x1
+- IFF_VNET_HDR = 0x4000
+- IFF_VOLATILE = 0x70c5a
+- IFNAMSIZ = 0x10
+- IGNBRK = 0x1
+- IGNCR = 0x80
+- IGNPAR = 0x4
+- IMAXBEL = 0x2000
+- INLCR = 0x40
+- INPCK = 0x10
+- IN_ACCESS = 0x1
+- IN_ALL_EVENTS = 0xfff
+- IN_ATTRIB = 0x4
+- IN_CLASSA_HOST = 0xffffff
+- IN_CLASSA_MAX = 0x80
+- IN_CLASSA_NET = 0xff000000
+- IN_CLASSA_NSHIFT = 0x18
+- IN_CLASSB_HOST = 0xffff
+- IN_CLASSB_MAX = 0x10000
+- IN_CLASSB_NET = 0xffff0000
+- IN_CLASSB_NSHIFT = 0x10
+- IN_CLASSC_HOST = 0xff
+- IN_CLASSC_NET = 0xffffff00
+- IN_CLASSC_NSHIFT = 0x8
+- IN_CLOEXEC = 0x80000
+- IN_CLOSE = 0x18
+- IN_CLOSE_NOWRITE = 0x10
+- IN_CLOSE_WRITE = 0x8
+- IN_CREATE = 0x100
+- IN_DELETE = 0x200
+- IN_DELETE_SELF = 0x400
+- IN_DONT_FOLLOW = 0x2000000
+- IN_EXCL_UNLINK = 0x4000000
+- IN_IGNORED = 0x8000
+- IN_ISDIR = 0x40000000
+- IN_LOOPBACKNET = 0x7f
+- IN_MASK_ADD = 0x20000000
+- IN_MODIFY = 0x2
+- IN_MOVE = 0xc0
+- IN_MOVED_FROM = 0x40
+- IN_MOVED_TO = 0x80
+- IN_MOVE_SELF = 0x800
+- IN_NONBLOCK = 0x800
+- IN_ONESHOT = 0x80000000
+- IN_ONLYDIR = 0x1000000
+- IN_OPEN = 0x20
+- IN_Q_OVERFLOW = 0x4000
+- IN_UNMOUNT = 0x2000
+- IPPROTO_AH = 0x33
+- IPPROTO_BEETPH = 0x5e
+- IPPROTO_COMP = 0x6c
+- IPPROTO_DCCP = 0x21
+- IPPROTO_DSTOPTS = 0x3c
+- IPPROTO_EGP = 0x8
+- IPPROTO_ENCAP = 0x62
+- IPPROTO_ESP = 0x32
+- IPPROTO_FRAGMENT = 0x2c
+- IPPROTO_GRE = 0x2f
+- IPPROTO_HOPOPTS = 0x0
+- IPPROTO_ICMP = 0x1
+- IPPROTO_ICMPV6 = 0x3a
+- IPPROTO_IDP = 0x16
+- IPPROTO_IGMP = 0x2
+- IPPROTO_IP = 0x0
+- IPPROTO_IPIP = 0x4
+- IPPROTO_IPV6 = 0x29
+- IPPROTO_MH = 0x87
+- IPPROTO_MPLS = 0x89
+- IPPROTO_MTP = 0x5c
+- IPPROTO_NONE = 0x3b
+- IPPROTO_PIM = 0x67
+- IPPROTO_PUP = 0xc
+- IPPROTO_RAW = 0xff
+- IPPROTO_ROUTING = 0x2b
+- IPPROTO_RSVP = 0x2e
+- IPPROTO_SCTP = 0x84
+- IPPROTO_TCP = 0x6
+- IPPROTO_TP = 0x1d
+- IPPROTO_UDP = 0x11
+- IPPROTO_UDPLITE = 0x88
+- IPV6_2292DSTOPTS = 0x4
+- IPV6_2292HOPLIMIT = 0x8
+- IPV6_2292HOPOPTS = 0x3
+- IPV6_2292PKTINFO = 0x2
+- IPV6_2292PKTOPTIONS = 0x6
+- IPV6_2292RTHDR = 0x5
+- IPV6_ADDRFORM = 0x1
+- IPV6_ADD_MEMBERSHIP = 0x14
+- IPV6_AUTHHDR = 0xa
+- IPV6_CHECKSUM = 0x7
+- IPV6_DONTFRAG = 0x3e
+- IPV6_DROP_MEMBERSHIP = 0x15
+- IPV6_DSTOPTS = 0x3b
+- IPV6_HDRINCL = 0x24
+- IPV6_HOPLIMIT = 0x34
+- IPV6_HOPOPTS = 0x36
+- IPV6_IPSEC_POLICY = 0x22
+- IPV6_JOIN_ANYCAST = 0x1b
+- IPV6_JOIN_GROUP = 0x14
+- IPV6_LEAVE_ANYCAST = 0x1c
+- IPV6_LEAVE_GROUP = 0x15
+- IPV6_MTU = 0x18
+- IPV6_MTU_DISCOVER = 0x17
+- IPV6_MULTICAST_HOPS = 0x12
+- IPV6_MULTICAST_IF = 0x11
+- IPV6_MULTICAST_LOOP = 0x13
+- IPV6_NEXTHOP = 0x9
+- IPV6_PATHMTU = 0x3d
+- IPV6_PKTINFO = 0x32
+- IPV6_PMTUDISC_DO = 0x2
+- IPV6_PMTUDISC_DONT = 0x0
+- IPV6_PMTUDISC_INTERFACE = 0x4
+- IPV6_PMTUDISC_OMIT = 0x5
+- IPV6_PMTUDISC_PROBE = 0x3
+- IPV6_PMTUDISC_WANT = 0x1
+- IPV6_RECVDSTOPTS = 0x3a
+- IPV6_RECVERR = 0x19
+- IPV6_RECVHOPLIMIT = 0x33
+- IPV6_RECVHOPOPTS = 0x35
+- IPV6_RECVPATHMTU = 0x3c
+- IPV6_RECVPKTINFO = 0x31
+- IPV6_RECVRTHDR = 0x38
+- IPV6_RECVTCLASS = 0x42
+- IPV6_ROUTER_ALERT = 0x16
+- IPV6_RTHDR = 0x39
+- IPV6_RTHDRDSTOPTS = 0x37
+- IPV6_RTHDR_LOOSE = 0x0
+- IPV6_RTHDR_STRICT = 0x1
+- IPV6_RTHDR_TYPE_0 = 0x0
+- IPV6_RXDSTOPTS = 0x3b
+- IPV6_RXHOPOPTS = 0x36
+- IPV6_TCLASS = 0x43
+- IPV6_UNICAST_HOPS = 0x10
+- IPV6_V6ONLY = 0x1a
+- IPV6_XFRM_POLICY = 0x23
+- IP_ADD_MEMBERSHIP = 0x23
+- IP_ADD_SOURCE_MEMBERSHIP = 0x27
+- IP_BIND_ADDRESS_NO_PORT = 0x18
+- IP_BLOCK_SOURCE = 0x26
+- IP_CHECKSUM = 0x17
+- IP_DEFAULT_MULTICAST_LOOP = 0x1
+- IP_DEFAULT_MULTICAST_TTL = 0x1
+- IP_DF = 0x4000
+- IP_DROP_MEMBERSHIP = 0x24
+- IP_DROP_SOURCE_MEMBERSHIP = 0x28
+- IP_FREEBIND = 0xf
+- IP_HDRINCL = 0x3
+- IP_IPSEC_POLICY = 0x10
+- IP_MAXPACKET = 0xffff
+- IP_MAX_MEMBERSHIPS = 0x14
+- IP_MF = 0x2000
+- IP_MINTTL = 0x15
+- IP_MSFILTER = 0x29
+- IP_MSS = 0x240
+- IP_MTU = 0xe
+- IP_MTU_DISCOVER = 0xa
+- IP_MULTICAST_ALL = 0x31
+- IP_MULTICAST_IF = 0x20
+- IP_MULTICAST_LOOP = 0x22
+- IP_MULTICAST_TTL = 0x21
+- IP_NODEFRAG = 0x16
+- IP_OFFMASK = 0x1fff
+- IP_OPTIONS = 0x4
+- IP_ORIGDSTADDR = 0x14
+- IP_PASSSEC = 0x12
+- IP_PKTINFO = 0x8
+- IP_PKTOPTIONS = 0x9
+- IP_PMTUDISC = 0xa
+- IP_PMTUDISC_DO = 0x2
+- IP_PMTUDISC_DONT = 0x0
+- IP_PMTUDISC_INTERFACE = 0x4
+- IP_PMTUDISC_OMIT = 0x5
+- IP_PMTUDISC_PROBE = 0x3
+- IP_PMTUDISC_WANT = 0x1
+- IP_RECVERR = 0xb
+- IP_RECVOPTS = 0x6
+- IP_RECVORIGDSTADDR = 0x14
+- IP_RECVRETOPTS = 0x7
+- IP_RECVTOS = 0xd
+- IP_RECVTTL = 0xc
+- IP_RETOPTS = 0x7
+- IP_RF = 0x8000
+- IP_ROUTER_ALERT = 0x5
+- IP_TOS = 0x1
+- IP_TRANSPARENT = 0x13
+- IP_TTL = 0x2
+- IP_UNBLOCK_SOURCE = 0x25
+- IP_UNICAST_IF = 0x32
+- IP_XFRM_POLICY = 0x11
+- ISIG = 0x80
+- ISTRIP = 0x20
+- IUCLC = 0x1000
+- IUTF8 = 0x4000
+- IXANY = 0x800
+- IXOFF = 0x400
+- IXON = 0x200
+- KEYCTL_ASSUME_AUTHORITY = 0x10
+- KEYCTL_CHOWN = 0x4
+- KEYCTL_CLEAR = 0x7
+- KEYCTL_DESCRIBE = 0x6
+- KEYCTL_DH_COMPUTE = 0x17
+- KEYCTL_GET_KEYRING_ID = 0x0
+- KEYCTL_GET_PERSISTENT = 0x16
+- KEYCTL_GET_SECURITY = 0x11
+- KEYCTL_INSTANTIATE = 0xc
+- KEYCTL_INSTANTIATE_IOV = 0x14
+- KEYCTL_INVALIDATE = 0x15
+- KEYCTL_JOIN_SESSION_KEYRING = 0x1
+- KEYCTL_LINK = 0x8
+- KEYCTL_NEGATE = 0xd
+- KEYCTL_READ = 0xb
+- KEYCTL_REJECT = 0x13
+- KEYCTL_REVOKE = 0x3
+- KEYCTL_SEARCH = 0xa
+- KEYCTL_SESSION_TO_PARENT = 0x12
+- KEYCTL_SETPERM = 0x5
+- KEYCTL_SET_REQKEY_KEYRING = 0xe
+- KEYCTL_SET_TIMEOUT = 0xf
+- KEYCTL_UNLINK = 0x9
+- KEYCTL_UPDATE = 0x2
+- KEY_REQKEY_DEFL_DEFAULT = 0x0
+- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
+- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
+- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
+- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
+- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
+- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
+- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
+- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
+- KEY_SPEC_GROUP_KEYRING = -0x6
+- KEY_SPEC_PROCESS_KEYRING = -0x2
+- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
+- KEY_SPEC_REQUESTOR_KEYRING = -0x8
+- KEY_SPEC_SESSION_KEYRING = -0x3
+- KEY_SPEC_THREAD_KEYRING = -0x1
+- KEY_SPEC_USER_KEYRING = -0x4
+- KEY_SPEC_USER_SESSION_KEYRING = -0x5
+- LINUX_REBOOT_CMD_CAD_OFF = 0x0
+- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
+- LINUX_REBOOT_CMD_HALT = 0xcdef0123
+- LINUX_REBOOT_CMD_KEXEC = 0x45584543
+- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
+- LINUX_REBOOT_CMD_RESTART = 0x1234567
+- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
+- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
+- LINUX_REBOOT_MAGIC1 = 0xfee1dead
+- LINUX_REBOOT_MAGIC2 = 0x28121969
+- LOCK_EX = 0x2
+- LOCK_NB = 0x4
+- LOCK_SH = 0x1
+- LOCK_UN = 0x8
+- MADV_DODUMP = 0x11
+- MADV_DOFORK = 0xb
+- MADV_DONTDUMP = 0x10
+- MADV_DONTFORK = 0xa
+- MADV_DONTNEED = 0x4
+- MADV_FREE = 0x8
+- MADV_HUGEPAGE = 0xe
+- MADV_HWPOISON = 0x64
+- MADV_MERGEABLE = 0xc
+- MADV_NOHUGEPAGE = 0xf
+- MADV_NORMAL = 0x0
+- MADV_RANDOM = 0x1
+- MADV_REMOVE = 0x9
+- MADV_SEQUENTIAL = 0x2
+- MADV_UNMERGEABLE = 0xd
+- MADV_WILLNEED = 0x3
+- MAP_ANON = 0x20
+- MAP_ANONYMOUS = 0x20
+- MAP_DENYWRITE = 0x800
+- MAP_EXECUTABLE = 0x1000
+- MAP_FILE = 0x0
+- MAP_FIXED = 0x10
+- MAP_GROWSDOWN = 0x100
+- MAP_HUGETLB = 0x40000
+- MAP_HUGE_MASK = 0x3f
+- MAP_HUGE_SHIFT = 0x1a
+- MAP_LOCKED = 0x80
+- MAP_NONBLOCK = 0x10000
+- MAP_NORESERVE = 0x40
+- MAP_POPULATE = 0x8000
+- MAP_PRIVATE = 0x2
+- MAP_SHARED = 0x1
+- MAP_STACK = 0x20000
+- MAP_TYPE = 0xf
+- MCL_CURRENT = 0x2000
+- MCL_FUTURE = 0x4000
+- MCL_ONFAULT = 0x8000
+- MNT_DETACH = 0x2
+- MNT_EXPIRE = 0x4
+- MNT_FORCE = 0x1
+- MSG_BATCH = 0x40000
+- MSG_CMSG_CLOEXEC = 0x40000000
+- MSG_CONFIRM = 0x800
+- MSG_CTRUNC = 0x8
+- MSG_DONTROUTE = 0x4
+- MSG_DONTWAIT = 0x40
+- MSG_EOR = 0x80
+- MSG_ERRQUEUE = 0x2000
+- MSG_FASTOPEN = 0x20000000
+- MSG_FIN = 0x200
+- MSG_MORE = 0x8000
+- MSG_NOSIGNAL = 0x4000
+- MSG_OOB = 0x1
+- MSG_PEEK = 0x2
+- MSG_PROXY = 0x10
+- MSG_RST = 0x1000
+- MSG_SYN = 0x400
+- MSG_TRUNC = 0x20
+- MSG_TRYHARD = 0x4
+- MSG_WAITALL = 0x100
+- MSG_WAITFORONE = 0x10000
+- MS_ACTIVE = 0x40000000
+- MS_ASYNC = 0x1
+- MS_BIND = 0x1000
+- MS_BORN = 0x20000000
+- MS_DIRSYNC = 0x80
+- MS_INVALIDATE = 0x2
+- MS_I_VERSION = 0x800000
+- MS_KERNMOUNT = 0x400000
+- MS_LAZYTIME = 0x2000000
+- MS_MANDLOCK = 0x40
+- MS_MGC_MSK = 0xffff0000
+- MS_MGC_VAL = 0xc0ed0000
+- MS_MOVE = 0x2000
+- MS_NOATIME = 0x400
+- MS_NODEV = 0x4
+- MS_NODIRATIME = 0x800
+- MS_NOEXEC = 0x8
+- MS_NOREMOTELOCK = 0x8000000
+- MS_NOSEC = 0x10000000
+- MS_NOSUID = 0x2
+- MS_NOUSER = -0x80000000
+- MS_POSIXACL = 0x10000
+- MS_PRIVATE = 0x40000
+- MS_RDONLY = 0x1
+- MS_REC = 0x4000
+- MS_RELATIME = 0x200000
+- MS_REMOUNT = 0x20
+- MS_RMT_MASK = 0x2800051
+- MS_SHARED = 0x100000
+- MS_SILENT = 0x8000
+- MS_SLAVE = 0x80000
+- MS_STRICTATIME = 0x1000000
+- MS_SYNC = 0x4
+- MS_SYNCHRONOUS = 0x10
+- MS_UNBINDABLE = 0x20000
+- MS_VERBOSE = 0x8000
+- NAME_MAX = 0xff
+- NETLINK_ADD_MEMBERSHIP = 0x1
+- NETLINK_AUDIT = 0x9
+- NETLINK_BROADCAST_ERROR = 0x4
+- NETLINK_CAP_ACK = 0xa
+- NETLINK_CONNECTOR = 0xb
+- NETLINK_CRYPTO = 0x15
+- NETLINK_DNRTMSG = 0xe
+- NETLINK_DROP_MEMBERSHIP = 0x2
+- NETLINK_ECRYPTFS = 0x13
+- NETLINK_FIB_LOOKUP = 0xa
+- NETLINK_FIREWALL = 0x3
+- NETLINK_GENERIC = 0x10
+- NETLINK_INET_DIAG = 0x4
+- NETLINK_IP6_FW = 0xd
+- NETLINK_ISCSI = 0x8
+- NETLINK_KOBJECT_UEVENT = 0xf
+- NETLINK_LISTEN_ALL_NSID = 0x8
+- NETLINK_LIST_MEMBERSHIPS = 0x9
+- NETLINK_NETFILTER = 0xc
+- NETLINK_NFLOG = 0x5
+- NETLINK_NO_ENOBUFS = 0x5
+- NETLINK_PKTINFO = 0x3
+- NETLINK_RDMA = 0x14
+- NETLINK_ROUTE = 0x0
+- NETLINK_RX_RING = 0x6
+- NETLINK_SCSITRANSPORT = 0x12
+- NETLINK_SELINUX = 0x7
+- NETLINK_SOCK_DIAG = 0x4
+- NETLINK_TX_RING = 0x7
+- NETLINK_UNUSED = 0x1
+- NETLINK_USERSOCK = 0x2
+- NETLINK_XFRM = 0x6
+- NL0 = 0x0
+- NL1 = 0x100
+- NL2 = 0x200
+- NL3 = 0x300
+- NLA_ALIGNTO = 0x4
+- NLA_F_NESTED = 0x8000
+- NLA_F_NET_BYTEORDER = 0x4000
+- NLA_HDRLEN = 0x4
+- NLDLY = 0x300
+- NLMSG_ALIGNTO = 0x4
+- NLMSG_DONE = 0x3
+- NLMSG_ERROR = 0x2
+- NLMSG_HDRLEN = 0x10
+- NLMSG_MIN_TYPE = 0x10
+- NLMSG_NOOP = 0x1
+- NLMSG_OVERRUN = 0x4
+- NLM_F_ACK = 0x4
+- NLM_F_APPEND = 0x800
+- NLM_F_ATOMIC = 0x400
+- NLM_F_CREATE = 0x400
+- NLM_F_DUMP = 0x300
+- NLM_F_DUMP_FILTERED = 0x20
+- NLM_F_DUMP_INTR = 0x10
+- NLM_F_ECHO = 0x8
+- NLM_F_EXCL = 0x200
+- NLM_F_MATCH = 0x200
+- NLM_F_MULTI = 0x2
+- NLM_F_REPLACE = 0x100
+- NLM_F_REQUEST = 0x1
+- NLM_F_ROOT = 0x100
+- NOFLSH = 0x80000000
+- OCRNL = 0x8
+- OFDEL = 0x80
+- OFILL = 0x40
+- OLCUC = 0x4
+- ONLCR = 0x2
+- ONLRET = 0x20
+- ONOCR = 0x10
+- OPOST = 0x1
+- O_ACCMODE = 0x3
+- O_APPEND = 0x400
+- O_ASYNC = 0x2000
+- O_CLOEXEC = 0x80000
+- O_CREAT = 0x40
+- O_DIRECT = 0x20000
+- O_DIRECTORY = 0x4000
+- O_DSYNC = 0x1000
+- O_EXCL = 0x80
+- O_FSYNC = 0x101000
+- O_LARGEFILE = 0x0
+- O_NDELAY = 0x800
+- O_NOATIME = 0x40000
+- O_NOCTTY = 0x100
+- O_NOFOLLOW = 0x8000
+- O_NONBLOCK = 0x800
+- O_PATH = 0x200000
+- O_RDONLY = 0x0
+- O_RDWR = 0x2
+- O_RSYNC = 0x101000
+- O_SYNC = 0x101000
+- O_TMPFILE = 0x404000
+- O_TRUNC = 0x200
+- O_WRONLY = 0x1
+- PACKET_ADD_MEMBERSHIP = 0x1
+- PACKET_AUXDATA = 0x8
+- PACKET_BROADCAST = 0x1
+- PACKET_COPY_THRESH = 0x7
+- PACKET_DROP_MEMBERSHIP = 0x2
+- PACKET_FANOUT = 0x12
+- PACKET_FANOUT_CBPF = 0x6
+- PACKET_FANOUT_CPU = 0x2
+- PACKET_FANOUT_DATA = 0x16
+- PACKET_FANOUT_EBPF = 0x7
+- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
+- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
+- PACKET_FANOUT_HASH = 0x0
+- PACKET_FANOUT_LB = 0x1
+- PACKET_FANOUT_QM = 0x5
+- PACKET_FANOUT_RND = 0x4
+- PACKET_FANOUT_ROLLOVER = 0x3
+- PACKET_FASTROUTE = 0x6
+- PACKET_HDRLEN = 0xb
+- PACKET_HOST = 0x0
+- PACKET_KERNEL = 0x7
+- PACKET_LOOPBACK = 0x5
+- PACKET_LOSS = 0xe
+- PACKET_MR_ALLMULTI = 0x2
+- PACKET_MR_MULTICAST = 0x0
+- PACKET_MR_PROMISC = 0x1
+- PACKET_MR_UNICAST = 0x3
+- PACKET_MULTICAST = 0x2
+- PACKET_ORIGDEV = 0x9
+- PACKET_OTHERHOST = 0x3
+- PACKET_OUTGOING = 0x4
+- PACKET_QDISC_BYPASS = 0x14
+- PACKET_RECV_OUTPUT = 0x3
+- PACKET_RESERVE = 0xc
+- PACKET_ROLLOVER_STATS = 0x15
+- PACKET_RX_RING = 0x5
+- PACKET_STATISTICS = 0x6
+- PACKET_TIMESTAMP = 0x11
+- PACKET_TX_HAS_OFF = 0x13
+- PACKET_TX_RING = 0xd
+- PACKET_TX_TIMESTAMP = 0x10
+- PACKET_USER = 0x6
+- PACKET_VERSION = 0xa
+- PACKET_VNET_HDR = 0xf
+- PARENB = 0x1000
+- PARITY_CRC16_PR0 = 0x2
+- PARITY_CRC16_PR0_CCITT = 0x4
+- PARITY_CRC16_PR1 = 0x3
+- PARITY_CRC16_PR1_CCITT = 0x5
+- PARITY_CRC32_PR0_CCITT = 0x6
+- PARITY_CRC32_PR1_CCITT = 0x7
+- PARITY_DEFAULT = 0x0
+- PARITY_NONE = 0x1
+- PARMRK = 0x8
+- PARODD = 0x2000
+- PENDIN = 0x20000000
+- PERF_EVENT_IOC_DISABLE = 0x20002401
+- PERF_EVENT_IOC_ENABLE = 0x20002400
+- PERF_EVENT_IOC_ID = 0x40082407
+- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
+- PERF_EVENT_IOC_PERIOD = 0x80082404
+- PERF_EVENT_IOC_REFRESH = 0x20002402
+- PERF_EVENT_IOC_RESET = 0x20002403
+- PERF_EVENT_IOC_SET_BPF = 0x80042408
+- PERF_EVENT_IOC_SET_FILTER = 0x80082406
+- PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
+- PRIO_PGRP = 0x1
+- PRIO_PROCESS = 0x0
+- PRIO_USER = 0x2
+- PROT_EXEC = 0x4
+- PROT_GROWSDOWN = 0x1000000
+- PROT_GROWSUP = 0x2000000
+- PROT_NONE = 0x0
+- PROT_READ = 0x1
+- PROT_SAO = 0x10
+- PROT_WRITE = 0x2
+- PR_CAPBSET_DROP = 0x18
+- PR_CAPBSET_READ = 0x17
+- PR_CAP_AMBIENT = 0x2f
+- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
+- PR_CAP_AMBIENT_IS_SET = 0x1
+- PR_CAP_AMBIENT_LOWER = 0x3
+- PR_CAP_AMBIENT_RAISE = 0x2
+- PR_ENDIAN_BIG = 0x0
+- PR_ENDIAN_LITTLE = 0x1
+- PR_ENDIAN_PPC_LITTLE = 0x2
+- PR_FPEMU_NOPRINT = 0x1
+- PR_FPEMU_SIGFPE = 0x2
+- PR_FP_EXC_ASYNC = 0x2
+- PR_FP_EXC_DISABLED = 0x0
+- PR_FP_EXC_DIV = 0x10000
+- PR_FP_EXC_INV = 0x100000
+- PR_FP_EXC_NONRECOV = 0x1
+- PR_FP_EXC_OVF = 0x20000
+- PR_FP_EXC_PRECISE = 0x3
+- PR_FP_EXC_RES = 0x80000
+- PR_FP_EXC_SW_ENABLE = 0x80
+- PR_FP_EXC_UND = 0x40000
+- PR_FP_MODE_FR = 0x1
+- PR_FP_MODE_FRE = 0x2
+- PR_GET_CHILD_SUBREAPER = 0x25
+- PR_GET_DUMPABLE = 0x3
+- PR_GET_ENDIAN = 0x13
+- PR_GET_FPEMU = 0x9
+- PR_GET_FPEXC = 0xb
+- PR_GET_FP_MODE = 0x2e
+- PR_GET_KEEPCAPS = 0x7
+- PR_GET_NAME = 0x10
+- PR_GET_NO_NEW_PRIVS = 0x27
+- PR_GET_PDEATHSIG = 0x2
+- PR_GET_SECCOMP = 0x15
+- PR_GET_SECUREBITS = 0x1b
+- PR_GET_THP_DISABLE = 0x2a
+- PR_GET_TID_ADDRESS = 0x28
+- PR_GET_TIMERSLACK = 0x1e
+- PR_GET_TIMING = 0xd
+- PR_GET_TSC = 0x19
+- PR_GET_UNALIGN = 0x5
+- PR_MCE_KILL = 0x21
+- PR_MCE_KILL_CLEAR = 0x0
+- PR_MCE_KILL_DEFAULT = 0x2
+- PR_MCE_KILL_EARLY = 0x1
+- PR_MCE_KILL_GET = 0x22
+- PR_MCE_KILL_LATE = 0x0
+- PR_MCE_KILL_SET = 0x1
+- PR_MPX_DISABLE_MANAGEMENT = 0x2c
+- PR_MPX_ENABLE_MANAGEMENT = 0x2b
+- PR_SET_CHILD_SUBREAPER = 0x24
+- PR_SET_DUMPABLE = 0x4
+- PR_SET_ENDIAN = 0x14
+- PR_SET_FPEMU = 0xa
+- PR_SET_FPEXC = 0xc
+- PR_SET_FP_MODE = 0x2d
+- PR_SET_KEEPCAPS = 0x8
+- PR_SET_MM = 0x23
+- PR_SET_MM_ARG_END = 0x9
+- PR_SET_MM_ARG_START = 0x8
+- PR_SET_MM_AUXV = 0xc
+- PR_SET_MM_BRK = 0x7
+- PR_SET_MM_END_CODE = 0x2
+- PR_SET_MM_END_DATA = 0x4
+- PR_SET_MM_ENV_END = 0xb
+- PR_SET_MM_ENV_START = 0xa
+- PR_SET_MM_EXE_FILE = 0xd
+- PR_SET_MM_MAP = 0xe
+- PR_SET_MM_MAP_SIZE = 0xf
+- PR_SET_MM_START_BRK = 0x6
+- PR_SET_MM_START_CODE = 0x1
+- PR_SET_MM_START_DATA = 0x3
+- PR_SET_MM_START_STACK = 0x5
+- PR_SET_NAME = 0xf
+- PR_SET_NO_NEW_PRIVS = 0x26
+- PR_SET_PDEATHSIG = 0x1
+- PR_SET_PTRACER = 0x59616d61
+- PR_SET_PTRACER_ANY = -0x1
+- PR_SET_SECCOMP = 0x16
+- PR_SET_SECUREBITS = 0x1c
+- PR_SET_THP_DISABLE = 0x29
+- PR_SET_TIMERSLACK = 0x1d
+- PR_SET_TIMING = 0xe
+- PR_SET_TSC = 0x1a
+- PR_SET_UNALIGN = 0x6
+- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
+- PR_TASK_PERF_EVENTS_ENABLE = 0x20
+- PR_TIMING_STATISTICAL = 0x0
+- PR_TIMING_TIMESTAMP = 0x1
+- PR_TSC_ENABLE = 0x1
+- PR_TSC_SIGSEGV = 0x2
+- PR_UNALIGN_NOPRINT = 0x1
+- PR_UNALIGN_SIGBUS = 0x2
+- PTRACE_ATTACH = 0x10
+- PTRACE_CONT = 0x7
+- PTRACE_DETACH = 0x11
+- PTRACE_EVENT_CLONE = 0x3
+- PTRACE_EVENT_EXEC = 0x4
+- PTRACE_EVENT_EXIT = 0x6
+- PTRACE_EVENT_FORK = 0x1
+- PTRACE_EVENT_SECCOMP = 0x7
+- PTRACE_EVENT_STOP = 0x80
+- PTRACE_EVENT_VFORK = 0x2
+- PTRACE_EVENT_VFORK_DONE = 0x5
+- PTRACE_GETEVENTMSG = 0x4201
+- PTRACE_GETEVRREGS = 0x14
+- PTRACE_GETFPREGS = 0xe
+- PTRACE_GETREGS = 0xc
+- PTRACE_GETREGS64 = 0x16
+- PTRACE_GETREGSET = 0x4204
+- PTRACE_GETSIGINFO = 0x4202
+- PTRACE_GETSIGMASK = 0x420a
+- PTRACE_GETVRREGS = 0x12
+- PTRACE_GETVSRREGS = 0x1b
+- PTRACE_GET_DEBUGREG = 0x19
+- PTRACE_INTERRUPT = 0x4207
+- PTRACE_KILL = 0x8
+- PTRACE_LISTEN = 0x4208
+- PTRACE_O_EXITKILL = 0x100000
+- PTRACE_O_MASK = 0x3000ff
+- PTRACE_O_SUSPEND_SECCOMP = 0x200000
+- PTRACE_O_TRACECLONE = 0x8
+- PTRACE_O_TRACEEXEC = 0x10
+- PTRACE_O_TRACEEXIT = 0x40
+- PTRACE_O_TRACEFORK = 0x2
+- PTRACE_O_TRACESECCOMP = 0x80
+- PTRACE_O_TRACESYSGOOD = 0x1
+- PTRACE_O_TRACEVFORK = 0x4
+- PTRACE_O_TRACEVFORKDONE = 0x20
+- PTRACE_PEEKDATA = 0x2
+- PTRACE_PEEKSIGINFO = 0x4209
+- PTRACE_PEEKSIGINFO_SHARED = 0x1
+- PTRACE_PEEKTEXT = 0x1
+- PTRACE_PEEKUSR = 0x3
+- PTRACE_POKEDATA = 0x5
+- PTRACE_POKETEXT = 0x4
+- PTRACE_POKEUSR = 0x6
+- PTRACE_SECCOMP_GET_FILTER = 0x420c
+- PTRACE_SEIZE = 0x4206
+- PTRACE_SETEVRREGS = 0x15
+- PTRACE_SETFPREGS = 0xf
+- PTRACE_SETOPTIONS = 0x4200
+- PTRACE_SETREGS = 0xd
+- PTRACE_SETREGS64 = 0x17
+- PTRACE_SETREGSET = 0x4205
+- PTRACE_SETSIGINFO = 0x4203
+- PTRACE_SETSIGMASK = 0x420b
+- PTRACE_SETVRREGS = 0x13
+- PTRACE_SETVSRREGS = 0x1c
+- PTRACE_SET_DEBUGREG = 0x1a
+- PTRACE_SINGLEBLOCK = 0x100
+- PTRACE_SINGLESTEP = 0x9
+- PTRACE_SYSCALL = 0x18
+- PTRACE_TRACEME = 0x0
+- PT_CCR = 0x26
+- PT_CTR = 0x23
+- PT_DAR = 0x29
+- PT_DSCR = 0x2c
+- PT_DSISR = 0x2a
+- PT_FPR0 = 0x30
+- PT_FPSCR = 0x50
+- PT_LNK = 0x24
+- PT_MSR = 0x21
+- PT_NIP = 0x20
+- PT_ORIG_R3 = 0x22
+- PT_R0 = 0x0
+- PT_R1 = 0x1
+- PT_R10 = 0xa
+- PT_R11 = 0xb
+- PT_R12 = 0xc
+- PT_R13 = 0xd
+- PT_R14 = 0xe
+- PT_R15 = 0xf
+- PT_R16 = 0x10
+- PT_R17 = 0x11
+- PT_R18 = 0x12
+- PT_R19 = 0x13
+- PT_R2 = 0x2
+- PT_R20 = 0x14
+- PT_R21 = 0x15
+- PT_R22 = 0x16
+- PT_R23 = 0x17
+- PT_R24 = 0x18
+- PT_R25 = 0x19
+- PT_R26 = 0x1a
+- PT_R27 = 0x1b
+- PT_R28 = 0x1c
+- PT_R29 = 0x1d
+- PT_R3 = 0x3
+- PT_R30 = 0x1e
+- PT_R31 = 0x1f
+- PT_R4 = 0x4
+- PT_R5 = 0x5
+- PT_R6 = 0x6
+- PT_R7 = 0x7
+- PT_R8 = 0x8
+- PT_R9 = 0x9
+- PT_REGS_COUNT = 0x2c
+- PT_RESULT = 0x2b
+- PT_SOFTE = 0x27
+- PT_TRAP = 0x28
+- PT_VR0 = 0x52
+- PT_VRSAVE = 0x94
+- PT_VSCR = 0x93
+- PT_VSR0 = 0x96
+- PT_VSR31 = 0xd4
+- PT_XER = 0x25
+- RLIMIT_AS = 0x9
+- RLIMIT_CORE = 0x4
+- RLIMIT_CPU = 0x0
+- RLIMIT_DATA = 0x2
+- RLIMIT_FSIZE = 0x1
+- RLIMIT_LOCKS = 0xa
+- RLIMIT_MEMLOCK = 0x8
+- RLIMIT_MSGQUEUE = 0xc
+- RLIMIT_NICE = 0xd
+- RLIMIT_NOFILE = 0x7
+- RLIMIT_NPROC = 0x6
+- RLIMIT_RSS = 0x5
+- RLIMIT_RTPRIO = 0xe
+- RLIMIT_RTTIME = 0xf
+- RLIMIT_SIGPENDING = 0xb
+- RLIMIT_STACK = 0x3
+- RLIM_INFINITY = -0x1
+- RTAX_ADVMSS = 0x8
+- RTAX_CC_ALGO = 0x10
+- RTAX_CWND = 0x7
+- RTAX_FEATURES = 0xc
+- RTAX_FEATURE_ALLFRAG = 0x8
+- RTAX_FEATURE_ECN = 0x1
+- RTAX_FEATURE_MASK = 0xf
+- RTAX_FEATURE_SACK = 0x2
+- RTAX_FEATURE_TIMESTAMP = 0x4
+- RTAX_HOPLIMIT = 0xa
+- RTAX_INITCWND = 0xb
+- RTAX_INITRWND = 0xe
+- RTAX_LOCK = 0x1
+- RTAX_MAX = 0x10
+- RTAX_MTU = 0x2
+- RTAX_QUICKACK = 0xf
+- RTAX_REORDERING = 0x9
+- RTAX_RTO_MIN = 0xd
+- RTAX_RTT = 0x4
+- RTAX_RTTVAR = 0x5
+- RTAX_SSTHRESH = 0x6
+- RTAX_UNSPEC = 0x0
+- RTAX_WINDOW = 0x3
+- RTA_ALIGNTO = 0x4
+- RTA_MAX = 0x19
+- RTCF_DIRECTSRC = 0x4000000
+- RTCF_DOREDIRECT = 0x1000000
+- RTCF_LOG = 0x2000000
+- RTCF_MASQ = 0x400000
+- RTCF_NAT = 0x800000
+- RTCF_VALVE = 0x200000
+- RTF_ADDRCLASSMASK = 0xf8000000
+- RTF_ADDRCONF = 0x40000
+- RTF_ALLONLINK = 0x20000
+- RTF_BROADCAST = 0x10000000
+- RTF_CACHE = 0x1000000
+- RTF_DEFAULT = 0x10000
+- RTF_DYNAMIC = 0x10
+- RTF_FLOW = 0x2000000
+- RTF_GATEWAY = 0x2
+- RTF_HOST = 0x4
+- RTF_INTERFACE = 0x40000000
+- RTF_IRTT = 0x100
+- RTF_LINKRT = 0x100000
+- RTF_LOCAL = 0x80000000
+- RTF_MODIFIED = 0x20
+- RTF_MSS = 0x40
+- RTF_MTU = 0x40
+- RTF_MULTICAST = 0x20000000
+- RTF_NAT = 0x8000000
+- RTF_NOFORWARD = 0x1000
+- RTF_NONEXTHOP = 0x200000
+- RTF_NOPMTUDISC = 0x4000
+- RTF_POLICY = 0x4000000
+- RTF_REINSTATE = 0x8
+- RTF_REJECT = 0x200
+- RTF_STATIC = 0x400
+- RTF_THROW = 0x2000
+- RTF_UP = 0x1
+- RTF_WINDOW = 0x80
+- RTF_XRESOLVE = 0x800
+- RTM_BASE = 0x10
+- RTM_DELACTION = 0x31
+- RTM_DELADDR = 0x15
+- RTM_DELADDRLABEL = 0x49
+- RTM_DELLINK = 0x11
+- RTM_DELMDB = 0x55
+- RTM_DELNEIGH = 0x1d
+- RTM_DELNSID = 0x59
+- RTM_DELQDISC = 0x25
+- RTM_DELROUTE = 0x19
+- RTM_DELRULE = 0x21
+- RTM_DELTCLASS = 0x29
+- RTM_DELTFILTER = 0x2d
+- RTM_F_CLONED = 0x200
+- RTM_F_EQUALIZE = 0x400
+- RTM_F_LOOKUP_TABLE = 0x1000
+- RTM_F_NOTIFY = 0x100
+- RTM_F_PREFIX = 0x800
+- RTM_GETACTION = 0x32
+- RTM_GETADDR = 0x16
+- RTM_GETADDRLABEL = 0x4a
+- RTM_GETANYCAST = 0x3e
+- RTM_GETDCB = 0x4e
+- RTM_GETLINK = 0x12
+- RTM_GETMDB = 0x56
+- RTM_GETMULTICAST = 0x3a
+- RTM_GETNEIGH = 0x1e
+- RTM_GETNEIGHTBL = 0x42
+- RTM_GETNETCONF = 0x52
+- RTM_GETNSID = 0x5a
+- RTM_GETQDISC = 0x26
+- RTM_GETROUTE = 0x1a
+- RTM_GETRULE = 0x22
+- RTM_GETSTATS = 0x5e
+- RTM_GETTCLASS = 0x2a
+- RTM_GETTFILTER = 0x2e
+- RTM_MAX = 0x5f
+- RTM_NEWACTION = 0x30
+- RTM_NEWADDR = 0x14
+- RTM_NEWADDRLABEL = 0x48
+- RTM_NEWLINK = 0x10
+- RTM_NEWMDB = 0x54
+- RTM_NEWNDUSEROPT = 0x44
+- RTM_NEWNEIGH = 0x1c
+- RTM_NEWNEIGHTBL = 0x40
+- RTM_NEWNETCONF = 0x50
+- RTM_NEWNSID = 0x58
+- RTM_NEWPREFIX = 0x34
+- RTM_NEWQDISC = 0x24
+- RTM_NEWROUTE = 0x18
+- RTM_NEWRULE = 0x20
+- RTM_NEWSTATS = 0x5c
+- RTM_NEWTCLASS = 0x28
+- RTM_NEWTFILTER = 0x2c
+- RTM_NR_FAMILIES = 0x14
+- RTM_NR_MSGTYPES = 0x50
+- RTM_SETDCB = 0x4f
+- RTM_SETLINK = 0x13
+- RTM_SETNEIGHTBL = 0x43
+- RTNH_ALIGNTO = 0x4
+- RTNH_COMPARE_MASK = 0x19
+- RTNH_F_DEAD = 0x1
+- RTNH_F_LINKDOWN = 0x10
+- RTNH_F_OFFLOAD = 0x8
+- RTNH_F_ONLINK = 0x4
+- RTNH_F_PERVASIVE = 0x2
+- RTN_MAX = 0xb
+- RTPROT_BABEL = 0x2a
+- RTPROT_BIRD = 0xc
+- RTPROT_BOOT = 0x3
+- RTPROT_DHCP = 0x10
+- RTPROT_DNROUTED = 0xd
+- RTPROT_GATED = 0x8
+- RTPROT_KERNEL = 0x2
+- RTPROT_MROUTED = 0x11
+- RTPROT_MRT = 0xa
+- RTPROT_NTK = 0xf
+- RTPROT_RA = 0x9
+- RTPROT_REDIRECT = 0x1
+- RTPROT_STATIC = 0x4
+- RTPROT_UNSPEC = 0x0
+- RTPROT_XORP = 0xe
+- RTPROT_ZEBRA = 0xb
+- RT_CLASS_DEFAULT = 0xfd
+- RT_CLASS_LOCAL = 0xff
+- RT_CLASS_MAIN = 0xfe
+- RT_CLASS_MAX = 0xff
+- RT_CLASS_UNSPEC = 0x0
+- RUSAGE_CHILDREN = -0x1
+- RUSAGE_SELF = 0x0
+- RUSAGE_THREAD = 0x1
+- SCM_CREDENTIALS = 0x2
+- SCM_RIGHTS = 0x1
+- SCM_TIMESTAMP = 0x1d
+- SCM_TIMESTAMPING = 0x25
+- SCM_TIMESTAMPING_OPT_STATS = 0x36
+- SCM_TIMESTAMPNS = 0x23
+- SCM_WIFI_STATUS = 0x29
+- SECCOMP_MODE_DISABLED = 0x0
+- SECCOMP_MODE_FILTER = 0x2
+- SECCOMP_MODE_STRICT = 0x1
+- SHUT_RD = 0x0
+- SHUT_RDWR = 0x2
+- SHUT_WR = 0x1
+- SIOCADDDLCI = 0x8980
+- SIOCADDMULTI = 0x8931
+- SIOCADDRT = 0x890b
+- SIOCATMARK = 0x8905
+- SIOCBONDCHANGEACTIVE = 0x8995
+- SIOCBONDENSLAVE = 0x8990
+- SIOCBONDINFOQUERY = 0x8994
+- SIOCBONDRELEASE = 0x8991
+- SIOCBONDSETHWADDR = 0x8992
+- SIOCBONDSLAVEINFOQUERY = 0x8993
+- SIOCBRADDBR = 0x89a0
+- SIOCBRADDIF = 0x89a2
+- SIOCBRDELBR = 0x89a1
+- SIOCBRDELIF = 0x89a3
+- SIOCDARP = 0x8953
+- SIOCDELDLCI = 0x8981
+- SIOCDELMULTI = 0x8932
+- SIOCDELRT = 0x890c
+- SIOCDEVPRIVATE = 0x89f0
+- SIOCDIFADDR = 0x8936
+- SIOCDRARP = 0x8960
+- SIOCETHTOOL = 0x8946
+- SIOCGARP = 0x8954
+- SIOCGHWTSTAMP = 0x89b1
+- SIOCGIFADDR = 0x8915
+- SIOCGIFBR = 0x8940
+- SIOCGIFBRDADDR = 0x8919
+- SIOCGIFCONF = 0x8912
+- SIOCGIFCOUNT = 0x8938
+- SIOCGIFDSTADDR = 0x8917
+- SIOCGIFENCAP = 0x8925
+- SIOCGIFFLAGS = 0x8913
+- SIOCGIFHWADDR = 0x8927
+- SIOCGIFINDEX = 0x8933
+- SIOCGIFMAP = 0x8970
+- SIOCGIFMEM = 0x891f
+- SIOCGIFMETRIC = 0x891d
+- SIOCGIFMTU = 0x8921
+- SIOCGIFNAME = 0x8910
+- SIOCGIFNETMASK = 0x891b
+- SIOCGIFPFLAGS = 0x8935
+- SIOCGIFSLAVE = 0x8929
+- SIOCGIFTXQLEN = 0x8942
+- SIOCGIFVLAN = 0x8982
+- SIOCGMIIPHY = 0x8947
+- SIOCGMIIREG = 0x8948
+- SIOCGPGRP = 0x8904
+- SIOCGRARP = 0x8961
+- SIOCGSKNS = 0x894c
+- SIOCGSTAMP = 0x8906
+- SIOCGSTAMPNS = 0x8907
+- SIOCINQ = 0x4004667f
+- SIOCOUTQ = 0x40047473
+- SIOCOUTQNSD = 0x894b
+- SIOCPROTOPRIVATE = 0x89e0
+- SIOCRTMSG = 0x890d
+- SIOCSARP = 0x8955
+- SIOCSHWTSTAMP = 0x89b0
+- SIOCSIFADDR = 0x8916
+- SIOCSIFBR = 0x8941
+- SIOCSIFBRDADDR = 0x891a
+- SIOCSIFDSTADDR = 0x8918
+- SIOCSIFENCAP = 0x8926
+- SIOCSIFFLAGS = 0x8914
+- SIOCSIFHWADDR = 0x8924
+- SIOCSIFHWBROADCAST = 0x8937
+- SIOCSIFLINK = 0x8911
+- SIOCSIFMAP = 0x8971
+- SIOCSIFMEM = 0x8920
+- SIOCSIFMETRIC = 0x891e
+- SIOCSIFMTU = 0x8922
+- SIOCSIFNAME = 0x8923
+- SIOCSIFNETMASK = 0x891c
+- SIOCSIFPFLAGS = 0x8934
+- SIOCSIFSLAVE = 0x8930
+- SIOCSIFTXQLEN = 0x8943
+- SIOCSIFVLAN = 0x8983
+- SIOCSMIIREG = 0x8949
+- SIOCSPGRP = 0x8902
+- SIOCSRARP = 0x8962
+- SIOCWANDEV = 0x894a
+- SOCK_CLOEXEC = 0x80000
+- SOCK_DCCP = 0x6
+- SOCK_DGRAM = 0x2
+- SOCK_IOC_TYPE = 0x89
+- SOCK_NONBLOCK = 0x800
+- SOCK_PACKET = 0xa
+- SOCK_RAW = 0x3
+- SOCK_RDM = 0x4
+- SOCK_SEQPACKET = 0x5
+- SOCK_STREAM = 0x1
+- SOL_AAL = 0x109
+- SOL_ALG = 0x117
+- SOL_ATM = 0x108
+- SOL_CAIF = 0x116
+- SOL_CAN_BASE = 0x64
+- SOL_DCCP = 0x10d
+- SOL_DECNET = 0x105
+- SOL_ICMPV6 = 0x3a
+- SOL_IP = 0x0
+- SOL_IPV6 = 0x29
+- SOL_IRDA = 0x10a
+- SOL_IUCV = 0x115
+- SOL_KCM = 0x119
+- SOL_LLC = 0x10c
+- SOL_NETBEUI = 0x10b
+- SOL_NETLINK = 0x10e
+- SOL_NFC = 0x118
+- SOL_PACKET = 0x107
+- SOL_PNPIPE = 0x113
+- SOL_PPPOL2TP = 0x111
+- SOL_RAW = 0xff
+- SOL_RDS = 0x114
+- SOL_RXRPC = 0x110
+- SOL_SOCKET = 0x1
+- SOL_TCP = 0x6
+- SOL_TIPC = 0x10f
+- SOL_X25 = 0x106
+- SOMAXCONN = 0x80
+- SO_ACCEPTCONN = 0x1e
+- SO_ATTACH_BPF = 0x32
+- SO_ATTACH_FILTER = 0x1a
+- SO_ATTACH_REUSEPORT_CBPF = 0x33
+- SO_ATTACH_REUSEPORT_EBPF = 0x34
+- SO_BINDTODEVICE = 0x19
+- SO_BPF_EXTENSIONS = 0x30
+- SO_BROADCAST = 0x6
+- SO_BSDCOMPAT = 0xe
+- SO_BUSY_POLL = 0x2e
+- SO_CNX_ADVICE = 0x35
+- SO_DEBUG = 0x1
+- SO_DETACH_BPF = 0x1b
+- SO_DETACH_FILTER = 0x1b
+- SO_DOMAIN = 0x27
+- SO_DONTROUTE = 0x5
+- SO_ERROR = 0x4
+- SO_GET_FILTER = 0x1a
+- SO_INCOMING_CPU = 0x31
+- SO_KEEPALIVE = 0x9
+- SO_LINGER = 0xd
+- SO_LOCK_FILTER = 0x2c
+- SO_MARK = 0x24
+- SO_MAX_PACING_RATE = 0x2f
+- SO_NOFCS = 0x2b
+- SO_NO_CHECK = 0xb
+- SO_OOBINLINE = 0xa
+- SO_PASSCRED = 0x14
+- SO_PASSSEC = 0x22
+- SO_PEEK_OFF = 0x2a
+- SO_PEERCRED = 0x15
+- SO_PEERNAME = 0x1c
+- SO_PEERSEC = 0x1f
+- SO_PRIORITY = 0xc
+- SO_PROTOCOL = 0x26
+- SO_RCVBUF = 0x8
+- SO_RCVBUFFORCE = 0x21
+- SO_RCVLOWAT = 0x10
+- SO_RCVTIMEO = 0x12
+- SO_REUSEADDR = 0x2
+- SO_REUSEPORT = 0xf
+- SO_RXQ_OVFL = 0x28
+- SO_SECURITY_AUTHENTICATION = 0x16
+- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
+- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
+- SO_SELECT_ERR_QUEUE = 0x2d
+- SO_SNDBUF = 0x7
+- SO_SNDBUFFORCE = 0x20
+- SO_SNDLOWAT = 0x11
+- SO_SNDTIMEO = 0x13
+- SO_TIMESTAMP = 0x1d
+- SO_TIMESTAMPING = 0x25
+- SO_TIMESTAMPNS = 0x23
+- SO_TYPE = 0x3
+- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
+- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
+- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
+- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
+- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
+- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
+- SO_VM_SOCKETS_TRUSTED = 0x5
+- SO_WIFI_STATUS = 0x29
+- SPLICE_F_GIFT = 0x8
+- SPLICE_F_MORE = 0x4
+- SPLICE_F_MOVE = 0x1
+- SPLICE_F_NONBLOCK = 0x2
+- S_BLKSIZE = 0x200
+- S_IEXEC = 0x40
+- S_IFBLK = 0x6000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFIFO = 0x1000
+- S_IFLNK = 0xa000
+- S_IFMT = 0xf000
+- S_IFREG = 0x8000
+- S_IFSOCK = 0xc000
+- S_IREAD = 0x100
+- S_IRGRP = 0x20
+- S_IROTH = 0x4
+- S_IRUSR = 0x100
+- S_IRWXG = 0x38
+- S_IRWXO = 0x7
+- S_IRWXU = 0x1c0
+- S_ISGID = 0x400
+- S_ISUID = 0x800
+- S_ISVTX = 0x200
+- S_IWGRP = 0x10
+- S_IWOTH = 0x2
+- S_IWRITE = 0x80
+- S_IWUSR = 0x80
+- S_IXGRP = 0x8
+- S_IXOTH = 0x1
+- S_IXUSR = 0x40
+- TAB0 = 0x0
+- TAB1 = 0x400
+- TAB2 = 0x800
+- TAB3 = 0xc00
+- TABDLY = 0xc00
+- TASKSTATS_CMD_ATTR_MAX = 0x4
+- TASKSTATS_CMD_MAX = 0x2
+- TASKSTATS_GENL_NAME = "TASKSTATS"
+- TASKSTATS_GENL_VERSION = 0x1
+- TASKSTATS_TYPE_MAX = 0x6
+- TASKSTATS_VERSION = 0x8
+- TCFLSH = 0x2000741f
+- TCGETA = 0x40147417
+- TCGETS = 0x402c7413
+- TCIFLUSH = 0x0
+- TCIOFF = 0x2
+- TCIOFLUSH = 0x2
+- TCION = 0x3
+- TCOFLUSH = 0x1
+- TCOOFF = 0x0
+- TCOON = 0x1
+- TCP_CC_INFO = 0x1a
+- TCP_CONGESTION = 0xd
+- TCP_COOKIE_IN_ALWAYS = 0x1
+- TCP_COOKIE_MAX = 0x10
+- TCP_COOKIE_MIN = 0x8
+- TCP_COOKIE_OUT_NEVER = 0x2
+- TCP_COOKIE_PAIR_SIZE = 0x20
+- TCP_COOKIE_TRANSACTIONS = 0xf
+- TCP_CORK = 0x3
+- TCP_DEFER_ACCEPT = 0x9
+- TCP_FASTOPEN = 0x17
+- TCP_INFO = 0xb
+- TCP_KEEPCNT = 0x6
+- TCP_KEEPIDLE = 0x4
+- TCP_KEEPINTVL = 0x5
+- TCP_LINGER2 = 0x8
+- TCP_MAXSEG = 0x2
+- TCP_MAXWIN = 0xffff
+- TCP_MAX_WINSHIFT = 0xe
+- TCP_MD5SIG = 0xe
+- TCP_MD5SIG_MAXKEYLEN = 0x50
+- TCP_MSS = 0x200
+- TCP_MSS_DEFAULT = 0x218
+- TCP_MSS_DESIRED = 0x4c4
+- TCP_NODELAY = 0x1
+- TCP_NOTSENT_LOWAT = 0x19
+- TCP_QUEUE_SEQ = 0x15
+- TCP_QUICKACK = 0xc
+- TCP_REPAIR = 0x13
+- TCP_REPAIR_OPTIONS = 0x16
+- TCP_REPAIR_QUEUE = 0x14
+- TCP_REPAIR_WINDOW = 0x1d
+- TCP_SAVED_SYN = 0x1c
+- TCP_SAVE_SYN = 0x1b
+- TCP_SYNCNT = 0x7
+- TCP_S_DATA_IN = 0x4
+- TCP_S_DATA_OUT = 0x8
+- TCP_THIN_DUPACK = 0x11
+- TCP_THIN_LINEAR_TIMEOUTS = 0x10
+- TCP_TIMESTAMP = 0x18
+- TCP_USER_TIMEOUT = 0x12
+- TCP_WINDOW_CLAMP = 0xa
+- TCSAFLUSH = 0x2
+- TCSBRK = 0x2000741d
+- TCSBRKP = 0x5425
+- TCSETA = 0x80147418
+- TCSETAF = 0x8014741c
+- TCSETAW = 0x80147419
+- TCSETS = 0x802c7414
+- TCSETSF = 0x802c7416
+- TCSETSW = 0x802c7415
+- TCXONC = 0x2000741e
+- TIOCCBRK = 0x5428
+- TIOCCONS = 0x541d
+- TIOCEXCL = 0x540c
+- TIOCGDEV = 0x40045432
+- TIOCGETC = 0x40067412
+- TIOCGETD = 0x5424
+- TIOCGETP = 0x40067408
+- TIOCGEXCL = 0x40045440
+- TIOCGICOUNT = 0x545d
+- TIOCGLCKTRMIOS = 0x5456
+- TIOCGLTC = 0x40067474
+- TIOCGPGRP = 0x40047477
+- TIOCGPKT = 0x40045438
+- TIOCGPTLCK = 0x40045439
+- TIOCGPTN = 0x40045430
+- TIOCGRS485 = 0x542e
+- TIOCGSERIAL = 0x541e
+- TIOCGSID = 0x5429
+- TIOCGSOFTCAR = 0x5419
+- TIOCGWINSZ = 0x40087468
+- TIOCINQ = 0x4004667f
+- TIOCLINUX = 0x541c
+- TIOCMBIC = 0x5417
+- TIOCMBIS = 0x5416
+- TIOCMGET = 0x5415
+- TIOCMIWAIT = 0x545c
+- TIOCMSET = 0x5418
+- TIOCM_CAR = 0x40
+- TIOCM_CD = 0x40
+- TIOCM_CTS = 0x20
+- TIOCM_DSR = 0x100
+- TIOCM_DTR = 0x2
+- TIOCM_LE = 0x1
+- TIOCM_LOOP = 0x8000
+- TIOCM_OUT1 = 0x2000
+- TIOCM_OUT2 = 0x4000
+- TIOCM_RI = 0x80
+- TIOCM_RNG = 0x80
+- TIOCM_RTS = 0x4
+- TIOCM_SR = 0x10
+- TIOCM_ST = 0x8
+- TIOCNOTTY = 0x5422
+- TIOCNXCL = 0x540d
+- TIOCOUTQ = 0x40047473
+- TIOCPKT = 0x5420
+- TIOCPKT_DATA = 0x0
+- TIOCPKT_DOSTOP = 0x20
+- TIOCPKT_FLUSHREAD = 0x1
+- TIOCPKT_FLUSHWRITE = 0x2
+- TIOCPKT_IOCTL = 0x40
+- TIOCPKT_NOSTOP = 0x10
+- TIOCPKT_START = 0x8
+- TIOCPKT_STOP = 0x4
+- TIOCSBRK = 0x5427
+- TIOCSCTTY = 0x540e
+- TIOCSERCONFIG = 0x5453
+- TIOCSERGETLSR = 0x5459
+- TIOCSERGETMULTI = 0x545a
+- TIOCSERGSTRUCT = 0x5458
+- TIOCSERGWILD = 0x5454
+- TIOCSERSETMULTI = 0x545b
+- TIOCSERSWILD = 0x5455
+- TIOCSER_TEMT = 0x1
+- TIOCSETC = 0x80067411
+- TIOCSETD = 0x5423
+- TIOCSETN = 0x8006740a
+- TIOCSETP = 0x80067409
+- TIOCSIG = 0x80045436
+- TIOCSLCKTRMIOS = 0x5457
+- TIOCSLTC = 0x80067475
+- TIOCSPGRP = 0x80047476
+- TIOCSPTLCK = 0x80045431
+- TIOCSRS485 = 0x542f
+- TIOCSSERIAL = 0x541f
+- TIOCSSOFTCAR = 0x541a
+- TIOCSTART = 0x2000746e
+- TIOCSTI = 0x5412
+- TIOCSTOP = 0x2000746f
+- TIOCSWINSZ = 0x80087467
+- TIOCVHANGUP = 0x5437
+- TOSTOP = 0x400000
+- TS_COMM_LEN = 0x20
+- TUNATTACHFILTER = 0x801054d5
+- TUNDETACHFILTER = 0x801054d6
+- TUNGETFEATURES = 0x400454cf
+- TUNGETFILTER = 0x401054db
+- TUNGETIFF = 0x400454d2
+- TUNGETSNDBUF = 0x400454d3
+- TUNGETVNETBE = 0x400454df
+- TUNGETVNETHDRSZ = 0x400454d7
+- TUNGETVNETLE = 0x400454dd
+- TUNSETDEBUG = 0x800454c9
+- TUNSETGROUP = 0x800454ce
+- TUNSETIFF = 0x800454ca
+- TUNSETIFINDEX = 0x800454da
+- TUNSETLINK = 0x800454cd
+- TUNSETNOCSUM = 0x800454c8
+- TUNSETOFFLOAD = 0x800454d0
+- TUNSETOWNER = 0x800454cc
+- TUNSETPERSIST = 0x800454cb
+- TUNSETQUEUE = 0x800454d9
+- TUNSETSNDBUF = 0x800454d4
+- TUNSETTXFILTER = 0x800454d1
+- TUNSETVNETBE = 0x800454de
+- TUNSETVNETHDRSZ = 0x800454d8
+- TUNSETVNETLE = 0x800454dc
+- UMOUNT_NOFOLLOW = 0x8
+- VDISCARD = 0x10
+- VEOF = 0x4
+- VEOL = 0x6
+- VEOL2 = 0x8
+- VERASE = 0x2
+- VINTR = 0x0
+- VKILL = 0x3
+- VLNEXT = 0xf
+- VMADDR_CID_ANY = 0xffffffff
+- VMADDR_CID_HOST = 0x2
+- VMADDR_CID_HYPERVISOR = 0x0
+- VMADDR_CID_RESERVED = 0x1
+- VMADDR_PORT_ANY = 0xffffffff
+- VMIN = 0x5
+- VM_SOCKETS_INVALID_VERSION = 0xffffffff
+- VQUIT = 0x1
+- VREPRINT = 0xb
+- VSTART = 0xd
+- VSTOP = 0xe
+- VSUSP = 0xc
+- VSWTC = 0x9
+- VT0 = 0x0
+- VT1 = 0x10000
+- VTDLY = 0x10000
+- VTIME = 0x7
+- VWERASE = 0xa
+- WALL = 0x40000000
+- WCLONE = 0x80000000
+- WCONTINUED = 0x8
+- WEXITED = 0x4
+- WNOHANG = 0x1
+- WNOTHREAD = 0x20000000
+- WNOWAIT = 0x1000000
+- WORDSIZE = 0x40
+- WSTOPPED = 0x2
+- WUNTRACED = 0x2
+- XATTR_CREATE = 0x1
+- XATTR_REPLACE = 0x2
+- XCASE = 0x4000
+- XTABS = 0xc00
++ B1000000 = 0x17
++ B115200 = 0x11
++ B1152000 = 0x18
++ B1500000 = 0x19
++ B2000000 = 0x1a
++ B230400 = 0x12
++ B2500000 = 0x1b
++ B3000000 = 0x1c
++ B3500000 = 0x1d
++ B4000000 = 0x1e
++ B460800 = 0x13
++ B500000 = 0x14
++ B57600 = 0x10
++ B576000 = 0x15
++ B921600 = 0x16
++ BLKBSZGET = 0x40081270
++ BLKBSZSET = 0x80081271
++ BLKFLSBUF = 0x20001261
++ BLKFRAGET = 0x20001265
++ BLKFRASET = 0x20001264
++ BLKGETSIZE = 0x20001260
++ BLKGETSIZE64 = 0x40081272
++ BLKPBSZGET = 0x2000127b
++ BLKRAGET = 0x20001263
++ BLKRASET = 0x20001262
++ BLKROGET = 0x2000125e
++ BLKROSET = 0x2000125d
++ BLKRRPART = 0x2000125f
++ BLKSECTGET = 0x20001267
++ BLKSECTSET = 0x20001266
++ BLKSSZGET = 0x20001268
++ BOTHER = 0x1f
++ BS1 = 0x8000
++ BSDLY = 0x8000
++ CBAUD = 0xff
++ CBAUDEX = 0x0
++ CIBAUD = 0xff0000
++ CLOCAL = 0x8000
++ CR1 = 0x1000
++ CR2 = 0x2000
++ CR3 = 0x3000
++ CRDLY = 0x3000
++ CREAD = 0x800
++ CS6 = 0x100
++ CS7 = 0x200
++ CS8 = 0x300
++ CSIZE = 0x300
++ CSTOPB = 0x400
++ ECHOCTL = 0x40
++ ECHOE = 0x2
++ ECHOK = 0x4
++ ECHOKE = 0x1
++ ECHONL = 0x10
++ ECHOPRT = 0x20
++ EFD_CLOEXEC = 0x80000
++ EFD_NONBLOCK = 0x800
++ EPOLL_CLOEXEC = 0x80000
++ EXTPROC = 0x10000000
++ FF1 = 0x4000
++ FFDLY = 0x4000
++ FLUSHO = 0x800000
++ FS_IOC_ENABLE_VERITY = 0x80806685
++ FS_IOC_GETFLAGS = 0x40086601
++ FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
++ FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
++ FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
++ F_GETLK = 0x5
++ F_GETLK64 = 0xc
++ F_GETOWN = 0x9
++ F_RDLCK = 0x0
++ F_SETLK = 0x6
++ F_SETLK64 = 0xd
++ F_SETLKW = 0x7
++ F_SETLKW64 = 0xe
++ F_SETOWN = 0x8
++ F_UNLCK = 0x2
++ F_WRLCK = 0x1
++ HUPCL = 0x4000
++ ICANON = 0x100
++ IEXTEN = 0x400
++ IN_CLOEXEC = 0x80000
++ IN_NONBLOCK = 0x800
++ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x200007b9
++ ISIG = 0x80
++ IUCLC = 0x1000
++ IXOFF = 0x400
++ IXON = 0x200
++ MAP_ANON = 0x20
++ MAP_ANONYMOUS = 0x20
++ MAP_DENYWRITE = 0x800
++ MAP_EXECUTABLE = 0x1000
++ MAP_GROWSDOWN = 0x100
++ MAP_HUGETLB = 0x40000
++ MAP_LOCKED = 0x80
++ MAP_NONBLOCK = 0x10000
++ MAP_NORESERVE = 0x40
++ MAP_POPULATE = 0x8000
++ MAP_STACK = 0x20000
++ MAP_SYNC = 0x80000
++ MCL_CURRENT = 0x2000
++ MCL_FUTURE = 0x4000
++ MCL_ONFAULT = 0x8000
++ NFDBITS = 0x40
++ NL2 = 0x200
++ NL3 = 0x300
++ NLDLY = 0x300
++ NOFLSH = 0x80000000
++ NS_GET_NSTYPE = 0x2000b703
++ NS_GET_OWNER_UID = 0x2000b704
++ NS_GET_PARENT = 0x2000b702
++ NS_GET_USERNS = 0x2000b701
++ OLCUC = 0x4
++ ONLCR = 0x2
++ O_APPEND = 0x400
++ O_ASYNC = 0x2000
++ O_CLOEXEC = 0x80000
++ O_CREAT = 0x40
++ O_DIRECT = 0x20000
++ O_DIRECTORY = 0x4000
++ O_DSYNC = 0x1000
++ O_EXCL = 0x80
++ O_FSYNC = 0x101000
++ O_LARGEFILE = 0x0
++ O_NDELAY = 0x800
++ O_NOATIME = 0x40000
++ O_NOCTTY = 0x100
++ O_NOFOLLOW = 0x8000
++ O_NONBLOCK = 0x800
++ O_PATH = 0x200000
++ O_RSYNC = 0x101000
++ O_SYNC = 0x101000
++ O_TMPFILE = 0x404000
++ O_TRUNC = 0x200
++ PARENB = 0x1000
++ PARODD = 0x2000
++ PENDIN = 0x20000000
++ PERF_EVENT_IOC_DISABLE = 0x20002401
++ PERF_EVENT_IOC_ENABLE = 0x20002400
++ PERF_EVENT_IOC_ID = 0x40082407
++ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8008240b
++ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
++ PERF_EVENT_IOC_PERIOD = 0x80082404
++ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
++ PERF_EVENT_IOC_REFRESH = 0x20002402
++ PERF_EVENT_IOC_RESET = 0x20002403
++ PERF_EVENT_IOC_SET_BPF = 0x80042408
++ PERF_EVENT_IOC_SET_FILTER = 0x80082406
++ PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
++ PPPIOCATTACH = 0x8004743d
++ PPPIOCATTCHAN = 0x80047438
++ PPPIOCCONNECT = 0x8004743a
++ PPPIOCDETACH = 0x8004743c
++ PPPIOCDISCONN = 0x20007439
++ PPPIOCGASYNCMAP = 0x40047458
++ PPPIOCGCHAN = 0x40047437
++ PPPIOCGDEBUG = 0x40047441
++ PPPIOCGFLAGS = 0x4004745a
++ PPPIOCGIDLE = 0x4010743f
++ PPPIOCGIDLE32 = 0x4008743f
++ PPPIOCGIDLE64 = 0x4010743f
++ PPPIOCGL2TPSTATS = 0x40487436
++ PPPIOCGMRU = 0x40047453
++ PPPIOCGRASYNCMAP = 0x40047455
++ PPPIOCGUNIT = 0x40047456
++ PPPIOCGXASYNCMAP = 0x40207450
++ PPPIOCSACTIVE = 0x80107446
++ PPPIOCSASYNCMAP = 0x80047457
++ PPPIOCSCOMPRESS = 0x8010744d
++ PPPIOCSDEBUG = 0x80047440
++ PPPIOCSFLAGS = 0x80047459
++ PPPIOCSMAXCID = 0x80047451
++ PPPIOCSMRRU = 0x8004743b
++ PPPIOCSMRU = 0x80047452
++ PPPIOCSNPMODE = 0x8008744b
++ PPPIOCSPASS = 0x80107447
++ PPPIOCSRASYNCMAP = 0x80047454
++ PPPIOCSXASYNCMAP = 0x8020744f
++ PPPIOCXFERUNIT = 0x2000744e
++ PROT_SAO = 0x10
++ PR_SET_PTRACER_ANY = 0xffffffffffffffff
++ PTRACE_GETEVRREGS = 0x14
++ PTRACE_GETFPREGS = 0xe
++ PTRACE_GETREGS64 = 0x16
++ PTRACE_GETVRREGS = 0x12
++ PTRACE_GETVSRREGS = 0x1b
++ PTRACE_GET_DEBUGREG = 0x19
++ PTRACE_SETEVRREGS = 0x15
++ PTRACE_SETFPREGS = 0xf
++ PTRACE_SETREGS64 = 0x17
++ PTRACE_SETVRREGS = 0x13
++ PTRACE_SETVSRREGS = 0x1c
++ PTRACE_SET_DEBUGREG = 0x1a
++ PTRACE_SINGLEBLOCK = 0x100
++ PTRACE_SYSEMU = 0x1d
++ PTRACE_SYSEMU_SINGLESTEP = 0x1e
++ PT_CCR = 0x26
++ PT_CTR = 0x23
++ PT_DAR = 0x29
++ PT_DSCR = 0x2c
++ PT_DSISR = 0x2a
++ PT_FPR0 = 0x30
++ PT_FPSCR = 0x50
++ PT_LNK = 0x24
++ PT_MSR = 0x21
++ PT_NIP = 0x20
++ PT_ORIG_R3 = 0x22
++ PT_R0 = 0x0
++ PT_R1 = 0x1
++ PT_R10 = 0xa
++ PT_R11 = 0xb
++ PT_R12 = 0xc
++ PT_R13 = 0xd
++ PT_R14 = 0xe
++ PT_R15 = 0xf
++ PT_R16 = 0x10
++ PT_R17 = 0x11
++ PT_R18 = 0x12
++ PT_R19 = 0x13
++ PT_R2 = 0x2
++ PT_R20 = 0x14
++ PT_R21 = 0x15
++ PT_R22 = 0x16
++ PT_R23 = 0x17
++ PT_R24 = 0x18
++ PT_R25 = 0x19
++ PT_R26 = 0x1a
++ PT_R27 = 0x1b
++ PT_R28 = 0x1c
++ PT_R29 = 0x1d
++ PT_R3 = 0x3
++ PT_R30 = 0x1e
++ PT_R31 = 0x1f
++ PT_R4 = 0x4
++ PT_R5 = 0x5
++ PT_R6 = 0x6
++ PT_R7 = 0x7
++ PT_R8 = 0x8
++ PT_R9 = 0x9
++ PT_REGS_COUNT = 0x2c
++ PT_RESULT = 0x2b
++ PT_SOFTE = 0x27
++ PT_TRAP = 0x28
++ PT_VR0 = 0x52
++ PT_VRSAVE = 0x94
++ PT_VSCR = 0x93
++ PT_VSR0 = 0x96
++ PT_VSR31 = 0xd4
++ PT_XER = 0x25
++ RLIMIT_AS = 0x9
++ RLIMIT_MEMLOCK = 0x8
++ RLIMIT_NOFILE = 0x7
++ RLIMIT_NPROC = 0x6
++ RLIMIT_RSS = 0x5
++ RNDADDENTROPY = 0x80085203
++ RNDADDTOENTCNT = 0x80045201
++ RNDCLEARPOOL = 0x20005206
++ RNDGETENTCNT = 0x40045200
++ RNDGETPOOL = 0x40085202
++ RNDRESEEDCRNG = 0x20005207
++ RNDZAPENTCNT = 0x20005204
++ RTC_AIE_OFF = 0x20007002
++ RTC_AIE_ON = 0x20007001
++ RTC_ALM_READ = 0x40247008
++ RTC_ALM_SET = 0x80247007
++ RTC_EPOCH_READ = 0x4008700d
++ RTC_EPOCH_SET = 0x8008700e
++ RTC_IRQP_READ = 0x4008700b
++ RTC_IRQP_SET = 0x8008700c
++ RTC_PIE_OFF = 0x20007006
++ RTC_PIE_ON = 0x20007005
++ RTC_PLL_GET = 0x40207011
++ RTC_PLL_SET = 0x80207012
++ RTC_RD_TIME = 0x40247009
++ RTC_SET_TIME = 0x8024700a
++ RTC_UIE_OFF = 0x20007004
++ RTC_UIE_ON = 0x20007003
++ RTC_VL_CLR = 0x20007014
++ RTC_VL_READ = 0x40047013
++ RTC_WIE_OFF = 0x20007010
++ RTC_WIE_ON = 0x2000700f
++ RTC_WKALM_RD = 0x40287010
++ RTC_WKALM_SET = 0x8028700f
++ SCM_TIMESTAMPING = 0x25
++ SCM_TIMESTAMPING_OPT_STATS = 0x36
++ SCM_TIMESTAMPING_PKTINFO = 0x3a
++ SCM_TIMESTAMPNS = 0x23
++ SCM_TXTIME = 0x3d
++ SCM_WIFI_STATUS = 0x29
++ SFD_CLOEXEC = 0x80000
++ SFD_NONBLOCK = 0x800
++ SIOCATMARK = 0x8905
++ SIOCGPGRP = 0x8904
++ SIOCGSTAMPNS_NEW = 0x40108907
++ SIOCGSTAMP_NEW = 0x40108906
++ SIOCINQ = 0x4004667f
++ SIOCOUTQ = 0x40047473
++ SIOCSPGRP = 0x8902
++ SOCK_CLOEXEC = 0x80000
++ SOCK_DGRAM = 0x2
++ SOCK_NONBLOCK = 0x800
++ SOCK_STREAM = 0x1
++ SOL_SOCKET = 0x1
++ SO_ACCEPTCONN = 0x1e
++ SO_ATTACH_BPF = 0x32
++ SO_ATTACH_REUSEPORT_CBPF = 0x33
++ SO_ATTACH_REUSEPORT_EBPF = 0x34
++ SO_BINDTODEVICE = 0x19
++ SO_BINDTOIFINDEX = 0x3e
++ SO_BPF_EXTENSIONS = 0x30
++ SO_BROADCAST = 0x6
++ SO_BSDCOMPAT = 0xe
++ SO_BUSY_POLL = 0x2e
++ SO_CNX_ADVICE = 0x35
++ SO_COOKIE = 0x39
++ SO_DETACH_REUSEPORT_BPF = 0x44
++ SO_DOMAIN = 0x27
++ SO_DONTROUTE = 0x5
++ SO_ERROR = 0x4
++ SO_INCOMING_CPU = 0x31
++ SO_INCOMING_NAPI_ID = 0x38
++ SO_KEEPALIVE = 0x9
++ SO_LINGER = 0xd
++ SO_LOCK_FILTER = 0x2c
++ SO_MARK = 0x24
++ SO_MAX_PACING_RATE = 0x2f
++ SO_MEMINFO = 0x37
++ SO_NOFCS = 0x2b
++ SO_OOBINLINE = 0xa
++ SO_PASSCRED = 0x14
++ SO_PASSSEC = 0x22
++ SO_PEEK_OFF = 0x2a
++ SO_PEERCRED = 0x15
++ SO_PEERGROUPS = 0x3b
++ SO_PEERSEC = 0x1f
++ SO_PROTOCOL = 0x26
++ SO_RCVBUF = 0x8
++ SO_RCVBUFFORCE = 0x21
++ SO_RCVLOWAT = 0x10
++ SO_RCVTIMEO = 0x12
++ SO_RCVTIMEO_NEW = 0x42
++ SO_RCVTIMEO_OLD = 0x12
++ SO_REUSEADDR = 0x2
++ SO_REUSEPORT = 0xf
++ SO_RXQ_OVFL = 0x28
++ SO_SECURITY_AUTHENTICATION = 0x16
++ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
++ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
++ SO_SELECT_ERR_QUEUE = 0x2d
++ SO_SNDBUF = 0x7
++ SO_SNDBUFFORCE = 0x20
++ SO_SNDLOWAT = 0x11
++ SO_SNDTIMEO = 0x13
++ SO_SNDTIMEO_NEW = 0x43
++ SO_SNDTIMEO_OLD = 0x13
++ SO_TIMESTAMPING = 0x25
++ SO_TIMESTAMPING_NEW = 0x41
++ SO_TIMESTAMPING_OLD = 0x25
++ SO_TIMESTAMPNS = 0x23
++ SO_TIMESTAMPNS_NEW = 0x40
++ SO_TIMESTAMPNS_OLD = 0x23
++ SO_TIMESTAMP_NEW = 0x3f
++ SO_TXTIME = 0x3d
++ SO_TYPE = 0x3
++ SO_WIFI_STATUS = 0x29
++ SO_ZEROCOPY = 0x3c
++ TAB1 = 0x400
++ TAB2 = 0x800
++ TAB3 = 0xc00
++ TABDLY = 0xc00
++ TCFLSH = 0x2000741f
++ TCGETA = 0x40147417
++ TCGETS = 0x402c7413
++ TCSAFLUSH = 0x2
++ TCSBRK = 0x2000741d
++ TCSBRKP = 0x5425
++ TCSETA = 0x80147418
++ TCSETAF = 0x8014741c
++ TCSETAW = 0x80147419
++ TCSETS = 0x802c7414
++ TCSETSF = 0x802c7416
++ TCSETSW = 0x802c7415
++ TCXONC = 0x2000741e
++ TIOCCBRK = 0x5428
++ TIOCCONS = 0x541d
++ TIOCEXCL = 0x540c
++ TIOCGDEV = 0x40045432
++ TIOCGETC = 0x40067412
++ TIOCGETD = 0x5424
++ TIOCGETP = 0x40067408
++ TIOCGEXCL = 0x40045440
++ TIOCGICOUNT = 0x545d
++ TIOCGISO7816 = 0x40285442
++ TIOCGLCKTRMIOS = 0x5456
++ TIOCGLTC = 0x40067474
++ TIOCGPGRP = 0x40047477
++ TIOCGPKT = 0x40045438
++ TIOCGPTLCK = 0x40045439
++ TIOCGPTN = 0x40045430
++ TIOCGPTPEER = 0x20005441
++ TIOCGRS485 = 0x542e
++ TIOCGSERIAL = 0x541e
++ TIOCGSID = 0x5429
++ TIOCGSOFTCAR = 0x5419
++ TIOCGWINSZ = 0x40087468
++ TIOCINQ = 0x4004667f
++ TIOCLINUX = 0x541c
++ TIOCMBIC = 0x5417
++ TIOCMBIS = 0x5416
++ TIOCMGET = 0x5415
++ TIOCMIWAIT = 0x545c
++ TIOCMSET = 0x5418
++ TIOCM_CAR = 0x40
++ TIOCM_CD = 0x40
++ TIOCM_CTS = 0x20
++ TIOCM_DSR = 0x100
++ TIOCM_LOOP = 0x8000
++ TIOCM_OUT1 = 0x2000
++ TIOCM_OUT2 = 0x4000
++ TIOCM_RI = 0x80
++ TIOCM_RNG = 0x80
++ TIOCM_SR = 0x10
++ TIOCM_ST = 0x8
++ TIOCNOTTY = 0x5422
++ TIOCNXCL = 0x540d
++ TIOCOUTQ = 0x40047473
++ TIOCPKT = 0x5420
++ TIOCSBRK = 0x5427
++ TIOCSCTTY = 0x540e
++ TIOCSERCONFIG = 0x5453
++ TIOCSERGETLSR = 0x5459
++ TIOCSERGETMULTI = 0x545a
++ TIOCSERGSTRUCT = 0x5458
++ TIOCSERGWILD = 0x5454
++ TIOCSERSETMULTI = 0x545b
++ TIOCSERSWILD = 0x5455
++ TIOCSER_TEMT = 0x1
++ TIOCSETC = 0x80067411
++ TIOCSETD = 0x5423
++ TIOCSETN = 0x8006740a
++ TIOCSETP = 0x80067409
++ TIOCSIG = 0x80045436
++ TIOCSISO7816 = 0xc0285443
++ TIOCSLCKTRMIOS = 0x5457
++ TIOCSLTC = 0x80067475
++ TIOCSPGRP = 0x80047476
++ TIOCSPTLCK = 0x80045431
++ TIOCSRS485 = 0x542f
++ TIOCSSERIAL = 0x541f
++ TIOCSSOFTCAR = 0x541a
++ TIOCSTART = 0x2000746e
++ TIOCSTI = 0x5412
++ TIOCSTOP = 0x2000746f
++ TIOCSWINSZ = 0x80087467
++ TIOCVHANGUP = 0x5437
++ TOSTOP = 0x400000
++ TUNATTACHFILTER = 0x801054d5
++ TUNDETACHFILTER = 0x801054d6
++ TUNGETDEVNETNS = 0x200054e3
++ TUNGETFEATURES = 0x400454cf
++ TUNGETFILTER = 0x401054db
++ TUNGETIFF = 0x400454d2
++ TUNGETSNDBUF = 0x400454d3
++ TUNGETVNETBE = 0x400454df
++ TUNGETVNETHDRSZ = 0x400454d7
++ TUNGETVNETLE = 0x400454dd
++ TUNSETCARRIER = 0x800454e2
++ TUNSETDEBUG = 0x800454c9
++ TUNSETFILTEREBPF = 0x400454e1
++ TUNSETGROUP = 0x800454ce
++ TUNSETIFF = 0x800454ca
++ TUNSETIFINDEX = 0x800454da
++ TUNSETLINK = 0x800454cd
++ TUNSETNOCSUM = 0x800454c8
++ TUNSETOFFLOAD = 0x800454d0
++ TUNSETOWNER = 0x800454cc
++ TUNSETPERSIST = 0x800454cb
++ TUNSETQUEUE = 0x800454d9
++ TUNSETSNDBUF = 0x800454d4
++ TUNSETSTEERINGEBPF = 0x400454e0
++ TUNSETTXFILTER = 0x800454d1
++ TUNSETVNETBE = 0x800454de
++ TUNSETVNETHDRSZ = 0x800454d8
++ TUNSETVNETLE = 0x800454dc
++ UBI_IOCATT = 0x80186f40
++ UBI_IOCDET = 0x80046f41
++ UBI_IOCEBCH = 0x80044f02
++ UBI_IOCEBER = 0x80044f01
++ UBI_IOCEBISMAP = 0x40044f05
++ UBI_IOCEBMAP = 0x80084f03
++ UBI_IOCEBUNMAP = 0x80044f04
++ UBI_IOCMKVOL = 0x80986f00
++ UBI_IOCRMVOL = 0x80046f01
++ UBI_IOCRNVOL = 0x91106f03
++ UBI_IOCRPEB = 0x80046f04
++ UBI_IOCRSVOL = 0x800c6f02
++ UBI_IOCSETVOLPROP = 0x80104f06
++ UBI_IOCSPEB = 0x80046f05
++ UBI_IOCVOLCRBLK = 0x80804f07
++ UBI_IOCVOLRMBLK = 0x20004f08
++ UBI_IOCVOLUP = 0x80084f00
++ VDISCARD = 0x10
++ VEOF = 0x4
++ VEOL = 0x6
++ VEOL2 = 0x8
++ VMIN = 0x5
++ VREPRINT = 0xb
++ VSTART = 0xd
++ VSTOP = 0xe
++ VSUSP = 0xc
++ VSWTC = 0x9
++ VT1 = 0x10000
++ VTDLY = 0x10000
++ VTIME = 0x7
++ VWERASE = 0xa
++ WDIOC_GETBOOTSTATUS = 0x40045702
++ WDIOC_GETPRETIMEOUT = 0x40045709
++ WDIOC_GETSTATUS = 0x40045701
++ WDIOC_GETSUPPORT = 0x40285700
++ WDIOC_GETTEMP = 0x40045703
++ WDIOC_GETTIMELEFT = 0x4004570a
++ WDIOC_GETTIMEOUT = 0x40045707
++ WDIOC_KEEPALIVE = 0x40045705
++ WDIOC_SETOPTIONS = 0x40045704
++ WORDSIZE = 0x40
++ XCASE = 0x4000
++ XTABS = 0xc00
+ )
+
+ // Errors
+ const (
+- E2BIG = syscall.Errno(0x7)
+- EACCES = syscall.Errno(0xd)
+ EADDRINUSE = syscall.Errno(0x62)
+ EADDRNOTAVAIL = syscall.Errno(0x63)
+ EADV = syscall.Errno(0x44)
+ EAFNOSUPPORT = syscall.Errno(0x61)
+- EAGAIN = syscall.Errno(0xb)
+ EALREADY = syscall.Errno(0x72)
+ EBADE = syscall.Errno(0x34)
+- EBADF = syscall.Errno(0x9)
+ EBADFD = syscall.Errno(0x4d)
+ EBADMSG = syscall.Errno(0x4a)
+ EBADR = syscall.Errno(0x35)
+ EBADRQC = syscall.Errno(0x38)
+ EBADSLT = syscall.Errno(0x39)
+ EBFONT = syscall.Errno(0x3b)
+- EBUSY = syscall.Errno(0x10)
+ ECANCELED = syscall.Errno(0x7d)
+- ECHILD = syscall.Errno(0xa)
+ ECHRNG = syscall.Errno(0x2c)
+ ECOMM = syscall.Errno(0x46)
+ ECONNABORTED = syscall.Errno(0x67)
+@@ -1943,23 +562,15 @@ const (
+ EDEADLK = syscall.Errno(0x23)
+ EDEADLOCK = syscall.Errno(0x3a)
+ EDESTADDRREQ = syscall.Errno(0x59)
+- EDOM = syscall.Errno(0x21)
+ EDOTDOT = syscall.Errno(0x49)
+ EDQUOT = syscall.Errno(0x7a)
+- EEXIST = syscall.Errno(0x11)
+- EFAULT = syscall.Errno(0xe)
+- EFBIG = syscall.Errno(0x1b)
+ EHOSTDOWN = syscall.Errno(0x70)
+ EHOSTUNREACH = syscall.Errno(0x71)
+ EHWPOISON = syscall.Errno(0x85)
+ EIDRM = syscall.Errno(0x2b)
+ EILSEQ = syscall.Errno(0x54)
+ EINPROGRESS = syscall.Errno(0x73)
+- EINTR = syscall.Errno(0x4)
+- EINVAL = syscall.Errno(0x16)
+- EIO = syscall.Errno(0x5)
+ EISCONN = syscall.Errno(0x6a)
+- EISDIR = syscall.Errno(0x15)
+ EISNAM = syscall.Errno(0x78)
+ EKEYEXPIRED = syscall.Errno(0x7f)
+ EKEYREJECTED = syscall.Errno(0x81)
+@@ -1976,8 +587,6 @@ const (
+ ELNRNG = syscall.Errno(0x30)
+ ELOOP = syscall.Errno(0x28)
+ EMEDIUMTYPE = syscall.Errno(0x7c)
+- EMFILE = syscall.Errno(0x18)
+- EMLINK = syscall.Errno(0x1f)
+ EMSGSIZE = syscall.Errno(0x5a)
+ EMULTIHOP = syscall.Errno(0x48)
+ ENAMETOOLONG = syscall.Errno(0x24)
+@@ -1985,103 +594,70 @@ const (
+ ENETDOWN = syscall.Errno(0x64)
+ ENETRESET = syscall.Errno(0x66)
+ ENETUNREACH = syscall.Errno(0x65)
+- ENFILE = syscall.Errno(0x17)
+ ENOANO = syscall.Errno(0x37)
+ ENOBUFS = syscall.Errno(0x69)
+ ENOCSI = syscall.Errno(0x32)
+ ENODATA = syscall.Errno(0x3d)
+- ENODEV = syscall.Errno(0x13)
+- ENOENT = syscall.Errno(0x2)
+- ENOEXEC = syscall.Errno(0x8)
+ ENOKEY = syscall.Errno(0x7e)
+ ENOLCK = syscall.Errno(0x25)
+ ENOLINK = syscall.Errno(0x43)
+ ENOMEDIUM = syscall.Errno(0x7b)
+- ENOMEM = syscall.Errno(0xc)
+ ENOMSG = syscall.Errno(0x2a)
+ ENONET = syscall.Errno(0x40)
+ ENOPKG = syscall.Errno(0x41)
+ ENOPROTOOPT = syscall.Errno(0x5c)
+- ENOSPC = syscall.Errno(0x1c)
+ ENOSR = syscall.Errno(0x3f)
+ ENOSTR = syscall.Errno(0x3c)
+ ENOSYS = syscall.Errno(0x26)
+- ENOTBLK = syscall.Errno(0xf)
+ ENOTCONN = syscall.Errno(0x6b)
+- ENOTDIR = syscall.Errno(0x14)
+ ENOTEMPTY = syscall.Errno(0x27)
+ ENOTNAM = syscall.Errno(0x76)
+ ENOTRECOVERABLE = syscall.Errno(0x83)
+ ENOTSOCK = syscall.Errno(0x58)
+ ENOTSUP = syscall.Errno(0x5f)
+- ENOTTY = syscall.Errno(0x19)
+ ENOTUNIQ = syscall.Errno(0x4c)
+- ENXIO = syscall.Errno(0x6)
+ EOPNOTSUPP = syscall.Errno(0x5f)
+ EOVERFLOW = syscall.Errno(0x4b)
+ EOWNERDEAD = syscall.Errno(0x82)
+- EPERM = syscall.Errno(0x1)
+ EPFNOSUPPORT = syscall.Errno(0x60)
+- EPIPE = syscall.Errno(0x20)
+ EPROTO = syscall.Errno(0x47)
+ EPROTONOSUPPORT = syscall.Errno(0x5d)
+ EPROTOTYPE = syscall.Errno(0x5b)
+- ERANGE = syscall.Errno(0x22)
+ EREMCHG = syscall.Errno(0x4e)
+ EREMOTE = syscall.Errno(0x42)
+ EREMOTEIO = syscall.Errno(0x79)
+ ERESTART = syscall.Errno(0x55)
+ ERFKILL = syscall.Errno(0x84)
+- EROFS = syscall.Errno(0x1e)
+ ESHUTDOWN = syscall.Errno(0x6c)
+ ESOCKTNOSUPPORT = syscall.Errno(0x5e)
+- ESPIPE = syscall.Errno(0x1d)
+- ESRCH = syscall.Errno(0x3)
+ ESRMNT = syscall.Errno(0x45)
+ ESTALE = syscall.Errno(0x74)
+ ESTRPIPE = syscall.Errno(0x56)
+ ETIME = syscall.Errno(0x3e)
+ ETIMEDOUT = syscall.Errno(0x6e)
+ ETOOMANYREFS = syscall.Errno(0x6d)
+- ETXTBSY = syscall.Errno(0x1a)
+ EUCLEAN = syscall.Errno(0x75)
+ EUNATCH = syscall.Errno(0x31)
+ EUSERS = syscall.Errno(0x57)
+- EWOULDBLOCK = syscall.Errno(0xb)
+- EXDEV = syscall.Errno(0x12)
+ EXFULL = syscall.Errno(0x36)
+ )
+
+ // Signals
+ const (
+- SIGABRT = syscall.Signal(0x6)
+- SIGALRM = syscall.Signal(0xe)
+ SIGBUS = syscall.Signal(0x7)
+ SIGCHLD = syscall.Signal(0x11)
+ SIGCLD = syscall.Signal(0x11)
+ SIGCONT = syscall.Signal(0x12)
+- SIGFPE = syscall.Signal(0x8)
+- SIGHUP = syscall.Signal(0x1)
+- SIGILL = syscall.Signal(0x4)
+- SIGINT = syscall.Signal(0x2)
+ SIGIO = syscall.Signal(0x1d)
+- SIGIOT = syscall.Signal(0x6)
+- SIGKILL = syscall.Signal(0x9)
+- SIGPIPE = syscall.Signal(0xd)
+ SIGPOLL = syscall.Signal(0x1d)
+ SIGPROF = syscall.Signal(0x1b)
+ SIGPWR = syscall.Signal(0x1e)
+- SIGQUIT = syscall.Signal(0x3)
+- SIGSEGV = syscall.Signal(0xb)
+ SIGSTKFLT = syscall.Signal(0x10)
+ SIGSTOP = syscall.Signal(0x13)
+ SIGSYS = syscall.Signal(0x1f)
+- SIGTERM = syscall.Signal(0xf)
+- SIGTRAP = syscall.Signal(0x5)
+ SIGTSTP = syscall.Signal(0x14)
+ SIGTTIN = syscall.Signal(0x15)
+ SIGTTOU = syscall.Signal(0x16)
+- SIGUNUSED = syscall.Signal(0x1f)
+ SIGURG = syscall.Signal(0x17)
+ SIGUSR1 = syscall.Signal(0xa)
+ SIGUSR2 = syscall.Signal(0xc)
+@@ -2092,172 +668,180 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "no such device or address",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource temporarily unavailable",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device or resource busy",
+- 17: "file exists",
+- 18: "invalid cross-device link",
+- 19: "no such device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "numerical result out of range",
+- 35: "resource deadlock avoided",
+- 36: "file name too long",
+- 37: "no locks available",
+- 38: "function not implemented",
+- 39: "directory not empty",
+- 40: "too many levels of symbolic links",
+- 42: "no message of desired type",
+- 43: "identifier removed",
+- 44: "channel number out of range",
+- 45: "level 2 not synchronized",
+- 46: "level 3 halted",
+- 47: "level 3 reset",
+- 48: "link number out of range",
+- 49: "protocol driver not attached",
+- 50: "no CSI structure available",
+- 51: "level 2 halted",
+- 52: "invalid exchange",
+- 53: "invalid request descriptor",
+- 54: "exchange full",
+- 55: "no anode",
+- 56: "invalid request code",
+- 57: "invalid slot",
+- 58: "file locking deadlock error",
+- 59: "bad font file format",
+- 60: "device not a stream",
+- 61: "no data available",
+- 62: "timer expired",
+- 63: "out of streams resources",
+- 64: "machine is not on the network",
+- 65: "package not installed",
+- 66: "object is remote",
+- 67: "link has been severed",
+- 68: "advertise error",
+- 69: "srmount error",
+- 70: "communication error on send",
+- 71: "protocol error",
+- 72: "multihop attempted",
+- 73: "RFS specific error",
+- 74: "bad message",
+- 75: "value too large for defined data type",
+- 76: "name not unique on network",
+- 77: "file descriptor in bad state",
+- 78: "remote address changed",
+- 79: "can not access a needed shared library",
+- 80: "accessing a corrupted shared library",
+- 81: ".lib section in a.out corrupted",
+- 82: "attempting to link in too many shared libraries",
+- 83: "cannot exec a shared library directly",
+- 84: "invalid or incomplete multibyte or wide character",
+- 85: "interrupted system call should be restarted",
+- 86: "streams pipe error",
+- 87: "too many users",
+- 88: "socket operation on non-socket",
+- 89: "destination address required",
+- 90: "message too long",
+- 91: "protocol wrong type for socket",
+- 92: "protocol not available",
+- 93: "protocol not supported",
+- 94: "socket type not supported",
+- 95: "operation not supported",
+- 96: "protocol family not supported",
+- 97: "address family not supported by protocol",
+- 98: "address already in use",
+- 99: "cannot assign requested address",
+- 100: "network is down",
+- 101: "network is unreachable",
+- 102: "network dropped connection on reset",
+- 103: "software caused connection abort",
+- 104: "connection reset by peer",
+- 105: "no buffer space available",
+- 106: "transport endpoint is already connected",
+- 107: "transport endpoint is not connected",
+- 108: "cannot send after transport endpoint shutdown",
+- 109: "too many references: cannot splice",
+- 110: "connection timed out",
+- 111: "connection refused",
+- 112: "host is down",
+- 113: "no route to host",
+- 114: "operation already in progress",
+- 115: "operation now in progress",
+- 116: "stale file handle",
+- 117: "structure needs cleaning",
+- 118: "not a XENIX named type file",
+- 119: "no XENIX semaphores available",
+- 120: "is a named type file",
+- 121: "remote I/O error",
+- 122: "disk quota exceeded",
+- 123: "no medium found",
+- 124: "wrong medium type",
+- 125: "operation canceled",
+- 126: "required key not available",
+- 127: "key has expired",
+- 128: "key has been revoked",
+- 129: "key was rejected by service",
+- 130: "owner died",
+- 131: "state not recoverable",
+- 132: "operation not possible due to RF-kill",
+- 133: "memory page has hardware error",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "no such device or address"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EAGAIN", "resource temporarily unavailable"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device or resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "invalid cross-device link"},
++ {19, "ENODEV", "no such device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "numerical result out of range"},
++ {35, "EDEADLK", "resource deadlock avoided"},
++ {36, "ENAMETOOLONG", "file name too long"},
++ {37, "ENOLCK", "no locks available"},
++ {38, "ENOSYS", "function not implemented"},
++ {39, "ENOTEMPTY", "directory not empty"},
++ {40, "ELOOP", "too many levels of symbolic links"},
++ {42, "ENOMSG", "no message of desired type"},
++ {43, "EIDRM", "identifier removed"},
++ {44, "ECHRNG", "channel number out of range"},
++ {45, "EL2NSYNC", "level 2 not synchronized"},
++ {46, "EL3HLT", "level 3 halted"},
++ {47, "EL3RST", "level 3 reset"},
++ {48, "ELNRNG", "link number out of range"},
++ {49, "EUNATCH", "protocol driver not attached"},
++ {50, "ENOCSI", "no CSI structure available"},
++ {51, "EL2HLT", "level 2 halted"},
++ {52, "EBADE", "invalid exchange"},
++ {53, "EBADR", "invalid request descriptor"},
++ {54, "EXFULL", "exchange full"},
++ {55, "ENOANO", "no anode"},
++ {56, "EBADRQC", "invalid request code"},
++ {57, "EBADSLT", "invalid slot"},
++ {58, "EDEADLOCK", "file locking deadlock error"},
++ {59, "EBFONT", "bad font file format"},
++ {60, "ENOSTR", "device not a stream"},
++ {61, "ENODATA", "no data available"},
++ {62, "ETIME", "timer expired"},
++ {63, "ENOSR", "out of streams resources"},
++ {64, "ENONET", "machine is not on the network"},
++ {65, "ENOPKG", "package not installed"},
++ {66, "EREMOTE", "object is remote"},
++ {67, "ENOLINK", "link has been severed"},
++ {68, "EADV", "advertise error"},
++ {69, "ESRMNT", "srmount error"},
++ {70, "ECOMM", "communication error on send"},
++ {71, "EPROTO", "protocol error"},
++ {72, "EMULTIHOP", "multihop attempted"},
++ {73, "EDOTDOT", "RFS specific error"},
++ {74, "EBADMSG", "bad message"},
++ {75, "EOVERFLOW", "value too large for defined data type"},
++ {76, "ENOTUNIQ", "name not unique on network"},
++ {77, "EBADFD", "file descriptor in bad state"},
++ {78, "EREMCHG", "remote address changed"},
++ {79, "ELIBACC", "can not access a needed shared library"},
++ {80, "ELIBBAD", "accessing a corrupted shared library"},
++ {81, "ELIBSCN", ".lib section in a.out corrupted"},
++ {82, "ELIBMAX", "attempting to link in too many shared libraries"},
++ {83, "ELIBEXEC", "cannot exec a shared library directly"},
++ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"},
++ {85, "ERESTART", "interrupted system call should be restarted"},
++ {86, "ESTRPIPE", "streams pipe error"},
++ {87, "EUSERS", "too many users"},
++ {88, "ENOTSOCK", "socket operation on non-socket"},
++ {89, "EDESTADDRREQ", "destination address required"},
++ {90, "EMSGSIZE", "message too long"},
++ {91, "EPROTOTYPE", "protocol wrong type for socket"},
++ {92, "ENOPROTOOPT", "protocol not available"},
++ {93, "EPROTONOSUPPORT", "protocol not supported"},
++ {94, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {95, "ENOTSUP", "operation not supported"},
++ {96, "EPFNOSUPPORT", "protocol family not supported"},
++ {97, "EAFNOSUPPORT", "address family not supported by protocol"},
++ {98, "EADDRINUSE", "address already in use"},
++ {99, "EADDRNOTAVAIL", "cannot assign requested address"},
++ {100, "ENETDOWN", "network is down"},
++ {101, "ENETUNREACH", "network is unreachable"},
++ {102, "ENETRESET", "network dropped connection on reset"},
++ {103, "ECONNABORTED", "software caused connection abort"},
++ {104, "ECONNRESET", "connection reset by peer"},
++ {105, "ENOBUFS", "no buffer space available"},
++ {106, "EISCONN", "transport endpoint is already connected"},
++ {107, "ENOTCONN", "transport endpoint is not connected"},
++ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
++ {109, "ETOOMANYREFS", "too many references: cannot splice"},
++ {110, "ETIMEDOUT", "connection timed out"},
++ {111, "ECONNREFUSED", "connection refused"},
++ {112, "EHOSTDOWN", "host is down"},
++ {113, "EHOSTUNREACH", "no route to host"},
++ {114, "EALREADY", "operation already in progress"},
++ {115, "EINPROGRESS", "operation now in progress"},
++ {116, "ESTALE", "stale file handle"},
++ {117, "EUCLEAN", "structure needs cleaning"},
++ {118, "ENOTNAM", "not a XENIX named type file"},
++ {119, "ENAVAIL", "no XENIX semaphores available"},
++ {120, "EISNAM", "is a named type file"},
++ {121, "EREMOTEIO", "remote I/O error"},
++ {122, "EDQUOT", "disk quota exceeded"},
++ {123, "ENOMEDIUM", "no medium found"},
++ {124, "EMEDIUMTYPE", "wrong medium type"},
++ {125, "ECANCELED", "operation canceled"},
++ {126, "ENOKEY", "required key not available"},
++ {127, "EKEYEXPIRED", "key has expired"},
++ {128, "EKEYREVOKED", "key has been revoked"},
++ {129, "EKEYREJECTED", "key was rejected by service"},
++ {130, "EOWNERDEAD", "owner died"},
++ {131, "ENOTRECOVERABLE", "state not recoverable"},
++ {132, "ERFKILL", "operation not possible due to RF-kill"},
++ {133, "EHWPOISON", "memory page has hardware error"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/breakpoint trap",
+- 6: "aborted",
+- 7: "bus error",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "user defined signal 1",
+- 11: "segmentation fault",
+- 12: "user defined signal 2",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "stack fault",
+- 17: "child exited",
+- 18: "continued",
+- 19: "stopped (signal)",
+- 20: "stopped",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "urgent I/O condition",
+- 24: "CPU time limit exceeded",
+- 25: "file size limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window changed",
+- 29: "I/O possible",
+- 30: "power failure",
+- 31: "bad system call",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/breakpoint trap"},
++ {6, "SIGABRT", "aborted"},
++ {7, "SIGBUS", "bus error"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGUSR1", "user defined signal 1"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGUSR2", "user defined signal 2"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGSTKFLT", "stack fault"},
++ {17, "SIGCHLD", "child exited"},
++ {18, "SIGCONT", "continued"},
++ {19, "SIGSTOP", "stopped (signal)"},
++ {20, "SIGTSTP", "stopped"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGURG", "urgent I/O condition"},
++ {24, "SIGXCPU", "CPU time limit exceeded"},
++ {25, "SIGXFSZ", "file size limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window changed"},
++ {29, "SIGIO", "I/O possible"},
++ {30, "SIGPWR", "power failure"},
++ {31, "SIGSYS", "bad system call"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
+index ad29c3d3..4231b20b 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
+@@ -3,7 +3,7 @@
+
+ // +build ppc64le,linux
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
+
+ package unix
+@@ -11,1930 +11,549 @@ package unix
+ import "syscall"
+
+ const (
+- AF_ALG = 0x26
+- AF_APPLETALK = 0x5
+- AF_ASH = 0x12
+- AF_ATMPVC = 0x8
+- AF_ATMSVC = 0x14
+- AF_AX25 = 0x3
+- AF_BLUETOOTH = 0x1f
+- AF_BRIDGE = 0x7
+- AF_CAIF = 0x25
+- AF_CAN = 0x1d
+- AF_DECnet = 0xc
+- AF_ECONET = 0x13
+- AF_FILE = 0x1
+- AF_IB = 0x1b
+- AF_IEEE802154 = 0x24
+- AF_INET = 0x2
+- AF_INET6 = 0xa
+- AF_IPX = 0x4
+- AF_IRDA = 0x17
+- AF_ISDN = 0x22
+- AF_IUCV = 0x20
+- AF_KCM = 0x29
+- AF_KEY = 0xf
+- AF_LLC = 0x1a
+- AF_LOCAL = 0x1
+- AF_MAX = 0x2b
+- AF_MPLS = 0x1c
+- AF_NETBEUI = 0xd
+- AF_NETLINK = 0x10
+- AF_NETROM = 0x6
+- AF_NFC = 0x27
+- AF_PACKET = 0x11
+- AF_PHONET = 0x23
+- AF_PPPOX = 0x18
+- AF_QIPCRTR = 0x2a
+- AF_RDS = 0x15
+- AF_ROSE = 0xb
+- AF_ROUTE = 0x10
+- AF_RXRPC = 0x21
+- AF_SECURITY = 0xe
+- AF_SNA = 0x16
+- AF_TIPC = 0x1e
+- AF_UNIX = 0x1
+- AF_UNSPEC = 0x0
+- AF_VSOCK = 0x28
+- AF_WANPIPE = 0x19
+- AF_X25 = 0x9
+- ALG_OP_DECRYPT = 0x0
+- ALG_OP_ENCRYPT = 0x1
+- ALG_SET_AEAD_ASSOCLEN = 0x4
+- ALG_SET_AEAD_AUTHSIZE = 0x5
+- ALG_SET_IV = 0x2
+- ALG_SET_KEY = 0x1
+- ALG_SET_OP = 0x3
+- ARPHRD_6LOWPAN = 0x339
+- ARPHRD_ADAPT = 0x108
+- ARPHRD_APPLETLK = 0x8
+- ARPHRD_ARCNET = 0x7
+- ARPHRD_ASH = 0x30d
+- ARPHRD_ATM = 0x13
+- ARPHRD_AX25 = 0x3
+- ARPHRD_BIF = 0x307
+- ARPHRD_CAIF = 0x336
+- ARPHRD_CAN = 0x118
+- ARPHRD_CHAOS = 0x5
+- ARPHRD_CISCO = 0x201
+- ARPHRD_CSLIP = 0x101
+- ARPHRD_CSLIP6 = 0x103
+- ARPHRD_DDCMP = 0x205
+- ARPHRD_DLCI = 0xf
+- ARPHRD_ECONET = 0x30e
+- ARPHRD_EETHER = 0x2
+- ARPHRD_ETHER = 0x1
+- ARPHRD_EUI64 = 0x1b
+- ARPHRD_FCAL = 0x311
+- ARPHRD_FCFABRIC = 0x313
+- ARPHRD_FCPL = 0x312
+- ARPHRD_FCPP = 0x310
+- ARPHRD_FDDI = 0x306
+- ARPHRD_FRAD = 0x302
+- ARPHRD_HDLC = 0x201
+- ARPHRD_HIPPI = 0x30c
+- ARPHRD_HWX25 = 0x110
+- ARPHRD_IEEE1394 = 0x18
+- ARPHRD_IEEE802 = 0x6
+- ARPHRD_IEEE80211 = 0x321
+- ARPHRD_IEEE80211_PRISM = 0x322
+- ARPHRD_IEEE80211_RADIOTAP = 0x323
+- ARPHRD_IEEE802154 = 0x324
+- ARPHRD_IEEE802154_MONITOR = 0x325
+- ARPHRD_IEEE802_TR = 0x320
+- ARPHRD_INFINIBAND = 0x20
+- ARPHRD_IP6GRE = 0x337
+- ARPHRD_IPDDP = 0x309
+- ARPHRD_IPGRE = 0x30a
+- ARPHRD_IRDA = 0x30f
+- ARPHRD_LAPB = 0x204
+- ARPHRD_LOCALTLK = 0x305
+- ARPHRD_LOOPBACK = 0x304
+- ARPHRD_METRICOM = 0x17
+- ARPHRD_NETLINK = 0x338
+- ARPHRD_NETROM = 0x0
+- ARPHRD_NONE = 0xfffe
+- ARPHRD_PHONET = 0x334
+- ARPHRD_PHONET_PIPE = 0x335
+- ARPHRD_PIMREG = 0x30b
+- ARPHRD_PPP = 0x200
+- ARPHRD_PRONET = 0x4
+- ARPHRD_RAWHDLC = 0x206
+- ARPHRD_ROSE = 0x10e
+- ARPHRD_RSRVD = 0x104
+- ARPHRD_SIT = 0x308
+- ARPHRD_SKIP = 0x303
+- ARPHRD_SLIP = 0x100
+- ARPHRD_SLIP6 = 0x102
+- ARPHRD_TUNNEL = 0x300
+- ARPHRD_TUNNEL6 = 0x301
+- ARPHRD_VOID = 0xffff
+- ARPHRD_X25 = 0x10f
+- B0 = 0x0
+- B1000000 = 0x17
+- B110 = 0x3
+- B115200 = 0x11
+- B1152000 = 0x18
+- B1200 = 0x9
+- B134 = 0x4
+- B150 = 0x5
+- B1500000 = 0x19
+- B1800 = 0xa
+- B19200 = 0xe
+- B200 = 0x6
+- B2000000 = 0x1a
+- B230400 = 0x12
+- B2400 = 0xb
+- B2500000 = 0x1b
+- B300 = 0x7
+- B3000000 = 0x1c
+- B3500000 = 0x1d
+- B38400 = 0xf
+- B4000000 = 0x1e
+- B460800 = 0x13
+- B4800 = 0xc
+- B50 = 0x1
+- B500000 = 0x14
+- B57600 = 0x10
+- B576000 = 0x15
+- B600 = 0x8
+- B75 = 0x2
+- B921600 = 0x16
+- B9600 = 0xd
+- BLKBSZGET = 0x40081270
+- BLKBSZSET = 0x80081271
+- BLKFLSBUF = 0x20001261
+- BLKFRAGET = 0x20001265
+- BLKFRASET = 0x20001264
+- BLKGETSIZE = 0x20001260
+- BLKGETSIZE64 = 0x40081272
+- BLKPBSZGET = 0x2000127b
+- BLKRAGET = 0x20001263
+- BLKRASET = 0x20001262
+- BLKROGET = 0x2000125e
+- BLKROSET = 0x2000125d
+- BLKRRPART = 0x2000125f
+- BLKSECTGET = 0x20001267
+- BLKSECTSET = 0x20001266
+- BLKSSZGET = 0x20001268
+- BOTHER = 0x1f
+- BPF_A = 0x10
+- BPF_ABS = 0x20
+- BPF_ADD = 0x0
+- BPF_ALU = 0x4
+- BPF_AND = 0x50
+- BPF_B = 0x10
+- BPF_DIV = 0x30
+- BPF_H = 0x8
+- BPF_IMM = 0x0
+- BPF_IND = 0x40
+- BPF_JA = 0x0
+- BPF_JEQ = 0x10
+- BPF_JGE = 0x30
+- BPF_JGT = 0x20
+- BPF_JMP = 0x5
+- BPF_JSET = 0x40
+- BPF_K = 0x0
+- BPF_LD = 0x0
+- BPF_LDX = 0x1
+- BPF_LEN = 0x80
+- BPF_LL_OFF = -0x200000
+- BPF_LSH = 0x60
+- BPF_MAJOR_VERSION = 0x1
+- BPF_MAXINSNS = 0x1000
+- BPF_MEM = 0x60
+- BPF_MEMWORDS = 0x10
+- BPF_MINOR_VERSION = 0x1
+- BPF_MISC = 0x7
+- BPF_MOD = 0x90
+- BPF_MSH = 0xa0
+- BPF_MUL = 0x20
+- BPF_NEG = 0x80
+- BPF_NET_OFF = -0x100000
+- BPF_OR = 0x40
+- BPF_RET = 0x6
+- BPF_RSH = 0x70
+- BPF_ST = 0x2
+- BPF_STX = 0x3
+- BPF_SUB = 0x10
+- BPF_TAX = 0x0
+- BPF_TXA = 0x80
+- BPF_W = 0x0
+- BPF_X = 0x8
+- BPF_XOR = 0xa0
+- BRKINT = 0x2
+- BS0 = 0x0
+- BS1 = 0x8000
+- BSDLY = 0x8000
+- CAN_BCM = 0x2
+- CAN_EFF_FLAG = 0x80000000
+- CAN_EFF_ID_BITS = 0x1d
+- CAN_EFF_MASK = 0x1fffffff
+- CAN_ERR_FLAG = 0x20000000
+- CAN_ERR_MASK = 0x1fffffff
+- CAN_INV_FILTER = 0x20000000
+- CAN_ISOTP = 0x6
+- CAN_MAX_DLC = 0x8
+- CAN_MAX_DLEN = 0x8
+- CAN_MCNET = 0x5
+- CAN_MTU = 0x10
+- CAN_NPROTO = 0x7
+- CAN_RAW = 0x1
+- CAN_RAW_FILTER_MAX = 0x200
+- CAN_RTR_FLAG = 0x40000000
+- CAN_SFF_ID_BITS = 0xb
+- CAN_SFF_MASK = 0x7ff
+- CAN_TP16 = 0x3
+- CAN_TP20 = 0x4
+- CBAUD = 0xff
+- CBAUDEX = 0x0
+- CFLUSH = 0xf
+- CIBAUD = 0xff0000
+- CLOCAL = 0x8000
+- CLOCK_BOOTTIME = 0x7
+- CLOCK_BOOTTIME_ALARM = 0x9
+- CLOCK_DEFAULT = 0x0
+- CLOCK_EXT = 0x1
+- CLOCK_INT = 0x2
+- CLOCK_MONOTONIC = 0x1
+- CLOCK_MONOTONIC_COARSE = 0x6
+- CLOCK_MONOTONIC_RAW = 0x4
+- CLOCK_PROCESS_CPUTIME_ID = 0x2
+- CLOCK_REALTIME = 0x0
+- CLOCK_REALTIME_ALARM = 0x8
+- CLOCK_REALTIME_COARSE = 0x5
+- CLOCK_TAI = 0xb
+- CLOCK_THREAD_CPUTIME_ID = 0x3
+- CLOCK_TXFROMRX = 0x4
+- CLOCK_TXINT = 0x3
+- CLONE_CHILD_CLEARTID = 0x200000
+- CLONE_CHILD_SETTID = 0x1000000
+- CLONE_DETACHED = 0x400000
+- CLONE_FILES = 0x400
+- CLONE_FS = 0x200
+- CLONE_IO = 0x80000000
+- CLONE_NEWCGROUP = 0x2000000
+- CLONE_NEWIPC = 0x8000000
+- CLONE_NEWNET = 0x40000000
+- CLONE_NEWNS = 0x20000
+- CLONE_NEWPID = 0x20000000
+- CLONE_NEWUSER = 0x10000000
+- CLONE_NEWUTS = 0x4000000
+- CLONE_PARENT = 0x8000
+- CLONE_PARENT_SETTID = 0x100000
+- CLONE_PTRACE = 0x2000
+- CLONE_SETTLS = 0x80000
+- CLONE_SIGHAND = 0x800
+- CLONE_SYSVSEM = 0x40000
+- CLONE_THREAD = 0x10000
+- CLONE_UNTRACED = 0x800000
+- CLONE_VFORK = 0x4000
+- CLONE_VM = 0x100
+- CMSPAR = 0x40000000
+- CR0 = 0x0
+- CR1 = 0x1000
+- CR2 = 0x2000
+- CR3 = 0x3000
+- CRDLY = 0x3000
+- CREAD = 0x800
+- CRTSCTS = 0x80000000
+- CS5 = 0x0
+- CS6 = 0x100
+- CS7 = 0x200
+- CS8 = 0x300
+- CSIGNAL = 0xff
+- CSIZE = 0x300
+- CSTART = 0x11
+- CSTATUS = 0x0
+- CSTOP = 0x13
+- CSTOPB = 0x400
+- CSUSP = 0x1a
+- DT_BLK = 0x6
+- DT_CHR = 0x2
+- DT_DIR = 0x4
+- DT_FIFO = 0x1
+- DT_LNK = 0xa
+- DT_REG = 0x8
+- DT_SOCK = 0xc
+- DT_UNKNOWN = 0x0
+- DT_WHT = 0xe
+- ECHO = 0x8
+- ECHOCTL = 0x40
+- ECHOE = 0x2
+- ECHOK = 0x4
+- ECHOKE = 0x1
+- ECHONL = 0x10
+- ECHOPRT = 0x20
+- EFD_CLOEXEC = 0x80000
+- EFD_NONBLOCK = 0x800
+- EFD_SEMAPHORE = 0x1
+- ENCODING_DEFAULT = 0x0
+- ENCODING_FM_MARK = 0x3
+- ENCODING_FM_SPACE = 0x4
+- ENCODING_MANCHESTER = 0x5
+- ENCODING_NRZ = 0x1
+- ENCODING_NRZI = 0x2
+- EPOLLERR = 0x8
+- EPOLLET = 0x80000000
+- EPOLLEXCLUSIVE = 0x10000000
+- EPOLLHUP = 0x10
+- EPOLLIN = 0x1
+- EPOLLMSG = 0x400
+- EPOLLONESHOT = 0x40000000
+- EPOLLOUT = 0x4
+- EPOLLPRI = 0x2
+- EPOLLRDBAND = 0x80
+- EPOLLRDHUP = 0x2000
+- EPOLLRDNORM = 0x40
+- EPOLLWAKEUP = 0x20000000
+- EPOLLWRBAND = 0x200
+- EPOLLWRNORM = 0x100
+- EPOLL_CLOEXEC = 0x80000
+- EPOLL_CTL_ADD = 0x1
+- EPOLL_CTL_DEL = 0x2
+- EPOLL_CTL_MOD = 0x3
+- ETH_P_1588 = 0x88f7
+- ETH_P_8021AD = 0x88a8
+- ETH_P_8021AH = 0x88e7
+- ETH_P_8021Q = 0x8100
+- ETH_P_80221 = 0x8917
+- ETH_P_802_2 = 0x4
+- ETH_P_802_3 = 0x1
+- ETH_P_802_3_MIN = 0x600
+- ETH_P_802_EX1 = 0x88b5
+- ETH_P_AARP = 0x80f3
+- ETH_P_AF_IUCV = 0xfbfb
+- ETH_P_ALL = 0x3
+- ETH_P_AOE = 0x88a2
+- ETH_P_ARCNET = 0x1a
+- ETH_P_ARP = 0x806
+- ETH_P_ATALK = 0x809b
+- ETH_P_ATMFATE = 0x8884
+- ETH_P_ATMMPOA = 0x884c
+- ETH_P_AX25 = 0x2
+- ETH_P_BATMAN = 0x4305
+- ETH_P_BPQ = 0x8ff
+- ETH_P_CAIF = 0xf7
+- ETH_P_CAN = 0xc
+- ETH_P_CANFD = 0xd
+- ETH_P_CONTROL = 0x16
+- ETH_P_CUST = 0x6006
+- ETH_P_DDCMP = 0x6
+- ETH_P_DEC = 0x6000
+- ETH_P_DIAG = 0x6005
+- ETH_P_DNA_DL = 0x6001
+- ETH_P_DNA_RC = 0x6002
+- ETH_P_DNA_RT = 0x6003
+- ETH_P_DSA = 0x1b
+- ETH_P_ECONET = 0x18
+- ETH_P_EDSA = 0xdada
+- ETH_P_FCOE = 0x8906
+- ETH_P_FIP = 0x8914
+- ETH_P_HDLC = 0x19
+- ETH_P_HSR = 0x892f
+- ETH_P_IEEE802154 = 0xf6
+- ETH_P_IEEEPUP = 0xa00
+- ETH_P_IEEEPUPAT = 0xa01
+- ETH_P_IP = 0x800
+- ETH_P_IPV6 = 0x86dd
+- ETH_P_IPX = 0x8137
+- ETH_P_IRDA = 0x17
+- ETH_P_LAT = 0x6004
+- ETH_P_LINK_CTL = 0x886c
+- ETH_P_LOCALTALK = 0x9
+- ETH_P_LOOP = 0x60
+- ETH_P_LOOPBACK = 0x9000
+- ETH_P_MACSEC = 0x88e5
+- ETH_P_MOBITEX = 0x15
+- ETH_P_MPLS_MC = 0x8848
+- ETH_P_MPLS_UC = 0x8847
+- ETH_P_MVRP = 0x88f5
+- ETH_P_NCSI = 0x88f8
+- ETH_P_PAE = 0x888e
+- ETH_P_PAUSE = 0x8808
+- ETH_P_PHONET = 0xf5
+- ETH_P_PPPTALK = 0x10
+- ETH_P_PPP_DISC = 0x8863
+- ETH_P_PPP_MP = 0x8
+- ETH_P_PPP_SES = 0x8864
+- ETH_P_PRP = 0x88fb
+- ETH_P_PUP = 0x200
+- ETH_P_PUPAT = 0x201
+- ETH_P_QINQ1 = 0x9100
+- ETH_P_QINQ2 = 0x9200
+- ETH_P_QINQ3 = 0x9300
+- ETH_P_RARP = 0x8035
+- ETH_P_SCA = 0x6007
+- ETH_P_SLOW = 0x8809
+- ETH_P_SNAP = 0x5
+- ETH_P_TDLS = 0x890d
+- ETH_P_TEB = 0x6558
+- ETH_P_TIPC = 0x88ca
+- ETH_P_TRAILER = 0x1c
+- ETH_P_TR_802_2 = 0x11
+- ETH_P_TSN = 0x22f0
+- ETH_P_WAN_PPP = 0x7
+- ETH_P_WCCP = 0x883e
+- ETH_P_X25 = 0x805
+- ETH_P_XDSA = 0xf8
+- EXTA = 0xe
+- EXTB = 0xf
+- EXTPROC = 0x10000000
+- FALLOC_FL_COLLAPSE_RANGE = 0x8
+- FALLOC_FL_INSERT_RANGE = 0x20
+- FALLOC_FL_KEEP_SIZE = 0x1
+- FALLOC_FL_NO_HIDE_STALE = 0x4
+- FALLOC_FL_PUNCH_HOLE = 0x2
+- FALLOC_FL_UNSHARE_RANGE = 0x40
+- FALLOC_FL_ZERO_RANGE = 0x10
+- FD_CLOEXEC = 0x1
+- FD_SETSIZE = 0x400
+- FF0 = 0x0
+- FF1 = 0x4000
+- FFDLY = 0x4000
+- FLUSHO = 0x800000
+- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
+- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
+- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
+- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
+- FS_ENCRYPTION_MODE_INVALID = 0x0
+- FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
+- FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
+- FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
+- FS_KEY_DESCRIPTOR_SIZE = 0x8
+- FS_KEY_DESC_PREFIX = "fscrypt:"
+- FS_KEY_DESC_PREFIX_SIZE = 0x8
+- FS_MAX_KEY_SIZE = 0x40
+- FS_POLICY_FLAGS_PAD_16 = 0x2
+- FS_POLICY_FLAGS_PAD_32 = 0x3
+- FS_POLICY_FLAGS_PAD_4 = 0x0
+- FS_POLICY_FLAGS_PAD_8 = 0x1
+- FS_POLICY_FLAGS_PAD_MASK = 0x3
+- FS_POLICY_FLAGS_VALID = 0x3
+- F_DUPFD = 0x0
+- F_DUPFD_CLOEXEC = 0x406
+- F_EXLCK = 0x4
+- F_GETFD = 0x1
+- F_GETFL = 0x3
+- F_GETLEASE = 0x401
+- F_GETLK = 0x5
+- F_GETLK64 = 0xc
+- F_GETOWN = 0x9
+- F_GETOWN_EX = 0x10
+- F_GETPIPE_SZ = 0x408
+- F_GETSIG = 0xb
+- F_LOCK = 0x1
+- F_NOTIFY = 0x402
+- F_OFD_GETLK = 0x24
+- F_OFD_SETLK = 0x25
+- F_OFD_SETLKW = 0x26
+- F_OK = 0x0
+- F_RDLCK = 0x0
+- F_SETFD = 0x2
+- F_SETFL = 0x4
+- F_SETLEASE = 0x400
+- F_SETLK = 0x6
+- F_SETLK64 = 0xd
+- F_SETLKW = 0x7
+- F_SETLKW64 = 0xe
+- F_SETOWN = 0x8
+- F_SETOWN_EX = 0xf
+- F_SETPIPE_SZ = 0x407
+- F_SETSIG = 0xa
+- F_SHLCK = 0x8
+- F_TEST = 0x3
+- F_TLOCK = 0x2
+- F_ULOCK = 0x0
+- F_UNLCK = 0x2
+- F_WRLCK = 0x1
+- GENL_ADMIN_PERM = 0x1
+- GENL_CMD_CAP_DO = 0x2
+- GENL_CMD_CAP_DUMP = 0x4
+- GENL_CMD_CAP_HASPOL = 0x8
+- GENL_HDRLEN = 0x4
+- GENL_ID_CTRL = 0x10
+- GENL_ID_PMCRAID = 0x12
+- GENL_ID_VFS_DQUOT = 0x11
+- GENL_MAX_ID = 0x3ff
+- GENL_MIN_ID = 0x10
+- GENL_NAMSIZ = 0x10
+- GENL_START_ALLOC = 0x13
+- GENL_UNS_ADMIN_PERM = 0x10
+- GRND_NONBLOCK = 0x1
+- GRND_RANDOM = 0x2
+- HUPCL = 0x4000
+- IBSHIFT = 0x10
+- ICANON = 0x100
+- ICMPV6_FILTER = 0x1
+- ICRNL = 0x100
+- IEXTEN = 0x400
+- IFA_F_DADFAILED = 0x8
+- IFA_F_DEPRECATED = 0x20
+- IFA_F_HOMEADDRESS = 0x10
+- IFA_F_MANAGETEMPADDR = 0x100
+- IFA_F_MCAUTOJOIN = 0x400
+- IFA_F_NODAD = 0x2
+- IFA_F_NOPREFIXROUTE = 0x200
+- IFA_F_OPTIMISTIC = 0x4
+- IFA_F_PERMANENT = 0x80
+- IFA_F_SECONDARY = 0x1
+- IFA_F_STABLE_PRIVACY = 0x800
+- IFA_F_TEMPORARY = 0x1
+- IFA_F_TENTATIVE = 0x40
+- IFA_MAX = 0x8
+- IFF_ALLMULTI = 0x200
+- IFF_ATTACH_QUEUE = 0x200
+- IFF_AUTOMEDIA = 0x4000
+- IFF_BROADCAST = 0x2
+- IFF_DEBUG = 0x4
+- IFF_DETACH_QUEUE = 0x400
+- IFF_DORMANT = 0x20000
+- IFF_DYNAMIC = 0x8000
+- IFF_ECHO = 0x40000
+- IFF_LOOPBACK = 0x8
+- IFF_LOWER_UP = 0x10000
+- IFF_MASTER = 0x400
+- IFF_MULTICAST = 0x1000
+- IFF_MULTI_QUEUE = 0x100
+- IFF_NOARP = 0x80
+- IFF_NOFILTER = 0x1000
+- IFF_NOTRAILERS = 0x20
+- IFF_NO_PI = 0x1000
+- IFF_ONE_QUEUE = 0x2000
+- IFF_PERSIST = 0x800
+- IFF_POINTOPOINT = 0x10
+- IFF_PORTSEL = 0x2000
+- IFF_PROMISC = 0x100
+- IFF_RUNNING = 0x40
+- IFF_SLAVE = 0x800
+- IFF_TAP = 0x2
+- IFF_TUN = 0x1
+- IFF_TUN_EXCL = 0x8000
+- IFF_UP = 0x1
+- IFF_VNET_HDR = 0x4000
+- IFF_VOLATILE = 0x70c5a
+- IFNAMSIZ = 0x10
+- IGNBRK = 0x1
+- IGNCR = 0x80
+- IGNPAR = 0x4
+- IMAXBEL = 0x2000
+- INLCR = 0x40
+- INPCK = 0x10
+- IN_ACCESS = 0x1
+- IN_ALL_EVENTS = 0xfff
+- IN_ATTRIB = 0x4
+- IN_CLASSA_HOST = 0xffffff
+- IN_CLASSA_MAX = 0x80
+- IN_CLASSA_NET = 0xff000000
+- IN_CLASSA_NSHIFT = 0x18
+- IN_CLASSB_HOST = 0xffff
+- IN_CLASSB_MAX = 0x10000
+- IN_CLASSB_NET = 0xffff0000
+- IN_CLASSB_NSHIFT = 0x10
+- IN_CLASSC_HOST = 0xff
+- IN_CLASSC_NET = 0xffffff00
+- IN_CLASSC_NSHIFT = 0x8
+- IN_CLOEXEC = 0x80000
+- IN_CLOSE = 0x18
+- IN_CLOSE_NOWRITE = 0x10
+- IN_CLOSE_WRITE = 0x8
+- IN_CREATE = 0x100
+- IN_DELETE = 0x200
+- IN_DELETE_SELF = 0x400
+- IN_DONT_FOLLOW = 0x2000000
+- IN_EXCL_UNLINK = 0x4000000
+- IN_IGNORED = 0x8000
+- IN_ISDIR = 0x40000000
+- IN_LOOPBACKNET = 0x7f
+- IN_MASK_ADD = 0x20000000
+- IN_MODIFY = 0x2
+- IN_MOVE = 0xc0
+- IN_MOVED_FROM = 0x40
+- IN_MOVED_TO = 0x80
+- IN_MOVE_SELF = 0x800
+- IN_NONBLOCK = 0x800
+- IN_ONESHOT = 0x80000000
+- IN_ONLYDIR = 0x1000000
+- IN_OPEN = 0x20
+- IN_Q_OVERFLOW = 0x4000
+- IN_UNMOUNT = 0x2000
+- IPPROTO_AH = 0x33
+- IPPROTO_BEETPH = 0x5e
+- IPPROTO_COMP = 0x6c
+- IPPROTO_DCCP = 0x21
+- IPPROTO_DSTOPTS = 0x3c
+- IPPROTO_EGP = 0x8
+- IPPROTO_ENCAP = 0x62
+- IPPROTO_ESP = 0x32
+- IPPROTO_FRAGMENT = 0x2c
+- IPPROTO_GRE = 0x2f
+- IPPROTO_HOPOPTS = 0x0
+- IPPROTO_ICMP = 0x1
+- IPPROTO_ICMPV6 = 0x3a
+- IPPROTO_IDP = 0x16
+- IPPROTO_IGMP = 0x2
+- IPPROTO_IP = 0x0
+- IPPROTO_IPIP = 0x4
+- IPPROTO_IPV6 = 0x29
+- IPPROTO_MH = 0x87
+- IPPROTO_MPLS = 0x89
+- IPPROTO_MTP = 0x5c
+- IPPROTO_NONE = 0x3b
+- IPPROTO_PIM = 0x67
+- IPPROTO_PUP = 0xc
+- IPPROTO_RAW = 0xff
+- IPPROTO_ROUTING = 0x2b
+- IPPROTO_RSVP = 0x2e
+- IPPROTO_SCTP = 0x84
+- IPPROTO_TCP = 0x6
+- IPPROTO_TP = 0x1d
+- IPPROTO_UDP = 0x11
+- IPPROTO_UDPLITE = 0x88
+- IPV6_2292DSTOPTS = 0x4
+- IPV6_2292HOPLIMIT = 0x8
+- IPV6_2292HOPOPTS = 0x3
+- IPV6_2292PKTINFO = 0x2
+- IPV6_2292PKTOPTIONS = 0x6
+- IPV6_2292RTHDR = 0x5
+- IPV6_ADDRFORM = 0x1
+- IPV6_ADD_MEMBERSHIP = 0x14
+- IPV6_AUTHHDR = 0xa
+- IPV6_CHECKSUM = 0x7
+- IPV6_DONTFRAG = 0x3e
+- IPV6_DROP_MEMBERSHIP = 0x15
+- IPV6_DSTOPTS = 0x3b
+- IPV6_HDRINCL = 0x24
+- IPV6_HOPLIMIT = 0x34
+- IPV6_HOPOPTS = 0x36
+- IPV6_IPSEC_POLICY = 0x22
+- IPV6_JOIN_ANYCAST = 0x1b
+- IPV6_JOIN_GROUP = 0x14
+- IPV6_LEAVE_ANYCAST = 0x1c
+- IPV6_LEAVE_GROUP = 0x15
+- IPV6_MTU = 0x18
+- IPV6_MTU_DISCOVER = 0x17
+- IPV6_MULTICAST_HOPS = 0x12
+- IPV6_MULTICAST_IF = 0x11
+- IPV6_MULTICAST_LOOP = 0x13
+- IPV6_NEXTHOP = 0x9
+- IPV6_PATHMTU = 0x3d
+- IPV6_PKTINFO = 0x32
+- IPV6_PMTUDISC_DO = 0x2
+- IPV6_PMTUDISC_DONT = 0x0
+- IPV6_PMTUDISC_INTERFACE = 0x4
+- IPV6_PMTUDISC_OMIT = 0x5
+- IPV6_PMTUDISC_PROBE = 0x3
+- IPV6_PMTUDISC_WANT = 0x1
+- IPV6_RECVDSTOPTS = 0x3a
+- IPV6_RECVERR = 0x19
+- IPV6_RECVHOPLIMIT = 0x33
+- IPV6_RECVHOPOPTS = 0x35
+- IPV6_RECVPATHMTU = 0x3c
+- IPV6_RECVPKTINFO = 0x31
+- IPV6_RECVRTHDR = 0x38
+- IPV6_RECVTCLASS = 0x42
+- IPV6_ROUTER_ALERT = 0x16
+- IPV6_RTHDR = 0x39
+- IPV6_RTHDRDSTOPTS = 0x37
+- IPV6_RTHDR_LOOSE = 0x0
+- IPV6_RTHDR_STRICT = 0x1
+- IPV6_RTHDR_TYPE_0 = 0x0
+- IPV6_RXDSTOPTS = 0x3b
+- IPV6_RXHOPOPTS = 0x36
+- IPV6_TCLASS = 0x43
+- IPV6_UNICAST_HOPS = 0x10
+- IPV6_V6ONLY = 0x1a
+- IPV6_XFRM_POLICY = 0x23
+- IP_ADD_MEMBERSHIP = 0x23
+- IP_ADD_SOURCE_MEMBERSHIP = 0x27
+- IP_BIND_ADDRESS_NO_PORT = 0x18
+- IP_BLOCK_SOURCE = 0x26
+- IP_CHECKSUM = 0x17
+- IP_DEFAULT_MULTICAST_LOOP = 0x1
+- IP_DEFAULT_MULTICAST_TTL = 0x1
+- IP_DF = 0x4000
+- IP_DROP_MEMBERSHIP = 0x24
+- IP_DROP_SOURCE_MEMBERSHIP = 0x28
+- IP_FREEBIND = 0xf
+- IP_HDRINCL = 0x3
+- IP_IPSEC_POLICY = 0x10
+- IP_MAXPACKET = 0xffff
+- IP_MAX_MEMBERSHIPS = 0x14
+- IP_MF = 0x2000
+- IP_MINTTL = 0x15
+- IP_MSFILTER = 0x29
+- IP_MSS = 0x240
+- IP_MTU = 0xe
+- IP_MTU_DISCOVER = 0xa
+- IP_MULTICAST_ALL = 0x31
+- IP_MULTICAST_IF = 0x20
+- IP_MULTICAST_LOOP = 0x22
+- IP_MULTICAST_TTL = 0x21
+- IP_NODEFRAG = 0x16
+- IP_OFFMASK = 0x1fff
+- IP_OPTIONS = 0x4
+- IP_ORIGDSTADDR = 0x14
+- IP_PASSSEC = 0x12
+- IP_PKTINFO = 0x8
+- IP_PKTOPTIONS = 0x9
+- IP_PMTUDISC = 0xa
+- IP_PMTUDISC_DO = 0x2
+- IP_PMTUDISC_DONT = 0x0
+- IP_PMTUDISC_INTERFACE = 0x4
+- IP_PMTUDISC_OMIT = 0x5
+- IP_PMTUDISC_PROBE = 0x3
+- IP_PMTUDISC_WANT = 0x1
+- IP_RECVERR = 0xb
+- IP_RECVOPTS = 0x6
+- IP_RECVORIGDSTADDR = 0x14
+- IP_RECVRETOPTS = 0x7
+- IP_RECVTOS = 0xd
+- IP_RECVTTL = 0xc
+- IP_RETOPTS = 0x7
+- IP_RF = 0x8000
+- IP_ROUTER_ALERT = 0x5
+- IP_TOS = 0x1
+- IP_TRANSPARENT = 0x13
+- IP_TTL = 0x2
+- IP_UNBLOCK_SOURCE = 0x25
+- IP_UNICAST_IF = 0x32
+- IP_XFRM_POLICY = 0x11
+- ISIG = 0x80
+- ISTRIP = 0x20
+- IUCLC = 0x1000
+- IUTF8 = 0x4000
+- IXANY = 0x800
+- IXOFF = 0x400
+- IXON = 0x200
+- KEYCTL_ASSUME_AUTHORITY = 0x10
+- KEYCTL_CHOWN = 0x4
+- KEYCTL_CLEAR = 0x7
+- KEYCTL_DESCRIBE = 0x6
+- KEYCTL_DH_COMPUTE = 0x17
+- KEYCTL_GET_KEYRING_ID = 0x0
+- KEYCTL_GET_PERSISTENT = 0x16
+- KEYCTL_GET_SECURITY = 0x11
+- KEYCTL_INSTANTIATE = 0xc
+- KEYCTL_INSTANTIATE_IOV = 0x14
+- KEYCTL_INVALIDATE = 0x15
+- KEYCTL_JOIN_SESSION_KEYRING = 0x1
+- KEYCTL_LINK = 0x8
+- KEYCTL_NEGATE = 0xd
+- KEYCTL_READ = 0xb
+- KEYCTL_REJECT = 0x13
+- KEYCTL_REVOKE = 0x3
+- KEYCTL_SEARCH = 0xa
+- KEYCTL_SESSION_TO_PARENT = 0x12
+- KEYCTL_SETPERM = 0x5
+- KEYCTL_SET_REQKEY_KEYRING = 0xe
+- KEYCTL_SET_TIMEOUT = 0xf
+- KEYCTL_UNLINK = 0x9
+- KEYCTL_UPDATE = 0x2
+- KEY_REQKEY_DEFL_DEFAULT = 0x0
+- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
+- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
+- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
+- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
+- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
+- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
+- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
+- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
+- KEY_SPEC_GROUP_KEYRING = -0x6
+- KEY_SPEC_PROCESS_KEYRING = -0x2
+- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
+- KEY_SPEC_REQUESTOR_KEYRING = -0x8
+- KEY_SPEC_SESSION_KEYRING = -0x3
+- KEY_SPEC_THREAD_KEYRING = -0x1
+- KEY_SPEC_USER_KEYRING = -0x4
+- KEY_SPEC_USER_SESSION_KEYRING = -0x5
+- LINUX_REBOOT_CMD_CAD_OFF = 0x0
+- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
+- LINUX_REBOOT_CMD_HALT = 0xcdef0123
+- LINUX_REBOOT_CMD_KEXEC = 0x45584543
+- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
+- LINUX_REBOOT_CMD_RESTART = 0x1234567
+- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
+- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
+- LINUX_REBOOT_MAGIC1 = 0xfee1dead
+- LINUX_REBOOT_MAGIC2 = 0x28121969
+- LOCK_EX = 0x2
+- LOCK_NB = 0x4
+- LOCK_SH = 0x1
+- LOCK_UN = 0x8
+- MADV_DODUMP = 0x11
+- MADV_DOFORK = 0xb
+- MADV_DONTDUMP = 0x10
+- MADV_DONTFORK = 0xa
+- MADV_DONTNEED = 0x4
+- MADV_FREE = 0x8
+- MADV_HUGEPAGE = 0xe
+- MADV_HWPOISON = 0x64
+- MADV_MERGEABLE = 0xc
+- MADV_NOHUGEPAGE = 0xf
+- MADV_NORMAL = 0x0
+- MADV_RANDOM = 0x1
+- MADV_REMOVE = 0x9
+- MADV_SEQUENTIAL = 0x2
+- MADV_UNMERGEABLE = 0xd
+- MADV_WILLNEED = 0x3
+- MAP_ANON = 0x20
+- MAP_ANONYMOUS = 0x20
+- MAP_DENYWRITE = 0x800
+- MAP_EXECUTABLE = 0x1000
+- MAP_FILE = 0x0
+- MAP_FIXED = 0x10
+- MAP_GROWSDOWN = 0x100
+- MAP_HUGETLB = 0x40000
+- MAP_HUGE_MASK = 0x3f
+- MAP_HUGE_SHIFT = 0x1a
+- MAP_LOCKED = 0x80
+- MAP_NONBLOCK = 0x10000
+- MAP_NORESERVE = 0x40
+- MAP_POPULATE = 0x8000
+- MAP_PRIVATE = 0x2
+- MAP_SHARED = 0x1
+- MAP_STACK = 0x20000
+- MAP_TYPE = 0xf
+- MCL_CURRENT = 0x2000
+- MCL_FUTURE = 0x4000
+- MCL_ONFAULT = 0x8000
+- MNT_DETACH = 0x2
+- MNT_EXPIRE = 0x4
+- MNT_FORCE = 0x1
+- MSG_BATCH = 0x40000
+- MSG_CMSG_CLOEXEC = 0x40000000
+- MSG_CONFIRM = 0x800
+- MSG_CTRUNC = 0x8
+- MSG_DONTROUTE = 0x4
+- MSG_DONTWAIT = 0x40
+- MSG_EOR = 0x80
+- MSG_ERRQUEUE = 0x2000
+- MSG_FASTOPEN = 0x20000000
+- MSG_FIN = 0x200
+- MSG_MORE = 0x8000
+- MSG_NOSIGNAL = 0x4000
+- MSG_OOB = 0x1
+- MSG_PEEK = 0x2
+- MSG_PROXY = 0x10
+- MSG_RST = 0x1000
+- MSG_SYN = 0x400
+- MSG_TRUNC = 0x20
+- MSG_TRYHARD = 0x4
+- MSG_WAITALL = 0x100
+- MSG_WAITFORONE = 0x10000
+- MS_ACTIVE = 0x40000000
+- MS_ASYNC = 0x1
+- MS_BIND = 0x1000
+- MS_BORN = 0x20000000
+- MS_DIRSYNC = 0x80
+- MS_INVALIDATE = 0x2
+- MS_I_VERSION = 0x800000
+- MS_KERNMOUNT = 0x400000
+- MS_LAZYTIME = 0x2000000
+- MS_MANDLOCK = 0x40
+- MS_MGC_MSK = 0xffff0000
+- MS_MGC_VAL = 0xc0ed0000
+- MS_MOVE = 0x2000
+- MS_NOATIME = 0x400
+- MS_NODEV = 0x4
+- MS_NODIRATIME = 0x800
+- MS_NOEXEC = 0x8
+- MS_NOREMOTELOCK = 0x8000000
+- MS_NOSEC = 0x10000000
+- MS_NOSUID = 0x2
+- MS_NOUSER = -0x80000000
+- MS_POSIXACL = 0x10000
+- MS_PRIVATE = 0x40000
+- MS_RDONLY = 0x1
+- MS_REC = 0x4000
+- MS_RELATIME = 0x200000
+- MS_REMOUNT = 0x20
+- MS_RMT_MASK = 0x2800051
+- MS_SHARED = 0x100000
+- MS_SILENT = 0x8000
+- MS_SLAVE = 0x80000
+- MS_STRICTATIME = 0x1000000
+- MS_SYNC = 0x4
+- MS_SYNCHRONOUS = 0x10
+- MS_UNBINDABLE = 0x20000
+- MS_VERBOSE = 0x8000
+- NAME_MAX = 0xff
+- NETLINK_ADD_MEMBERSHIP = 0x1
+- NETLINK_AUDIT = 0x9
+- NETLINK_BROADCAST_ERROR = 0x4
+- NETLINK_CAP_ACK = 0xa
+- NETLINK_CONNECTOR = 0xb
+- NETLINK_CRYPTO = 0x15
+- NETLINK_DNRTMSG = 0xe
+- NETLINK_DROP_MEMBERSHIP = 0x2
+- NETLINK_ECRYPTFS = 0x13
+- NETLINK_FIB_LOOKUP = 0xa
+- NETLINK_FIREWALL = 0x3
+- NETLINK_GENERIC = 0x10
+- NETLINK_INET_DIAG = 0x4
+- NETLINK_IP6_FW = 0xd
+- NETLINK_ISCSI = 0x8
+- NETLINK_KOBJECT_UEVENT = 0xf
+- NETLINK_LISTEN_ALL_NSID = 0x8
+- NETLINK_LIST_MEMBERSHIPS = 0x9
+- NETLINK_NETFILTER = 0xc
+- NETLINK_NFLOG = 0x5
+- NETLINK_NO_ENOBUFS = 0x5
+- NETLINK_PKTINFO = 0x3
+- NETLINK_RDMA = 0x14
+- NETLINK_ROUTE = 0x0
+- NETLINK_RX_RING = 0x6
+- NETLINK_SCSITRANSPORT = 0x12
+- NETLINK_SELINUX = 0x7
+- NETLINK_SOCK_DIAG = 0x4
+- NETLINK_TX_RING = 0x7
+- NETLINK_UNUSED = 0x1
+- NETLINK_USERSOCK = 0x2
+- NETLINK_XFRM = 0x6
+- NL0 = 0x0
+- NL1 = 0x100
+- NL2 = 0x200
+- NL3 = 0x300
+- NLA_ALIGNTO = 0x4
+- NLA_F_NESTED = 0x8000
+- NLA_F_NET_BYTEORDER = 0x4000
+- NLA_HDRLEN = 0x4
+- NLDLY = 0x300
+- NLMSG_ALIGNTO = 0x4
+- NLMSG_DONE = 0x3
+- NLMSG_ERROR = 0x2
+- NLMSG_HDRLEN = 0x10
+- NLMSG_MIN_TYPE = 0x10
+- NLMSG_NOOP = 0x1
+- NLMSG_OVERRUN = 0x4
+- NLM_F_ACK = 0x4
+- NLM_F_APPEND = 0x800
+- NLM_F_ATOMIC = 0x400
+- NLM_F_CREATE = 0x400
+- NLM_F_DUMP = 0x300
+- NLM_F_DUMP_FILTERED = 0x20
+- NLM_F_DUMP_INTR = 0x10
+- NLM_F_ECHO = 0x8
+- NLM_F_EXCL = 0x200
+- NLM_F_MATCH = 0x200
+- NLM_F_MULTI = 0x2
+- NLM_F_REPLACE = 0x100
+- NLM_F_REQUEST = 0x1
+- NLM_F_ROOT = 0x100
+- NOFLSH = 0x80000000
+- OCRNL = 0x8
+- OFDEL = 0x80
+- OFILL = 0x40
+- OLCUC = 0x4
+- ONLCR = 0x2
+- ONLRET = 0x20
+- ONOCR = 0x10
+- OPOST = 0x1
+- O_ACCMODE = 0x3
+- O_APPEND = 0x400
+- O_ASYNC = 0x2000
+- O_CLOEXEC = 0x80000
+- O_CREAT = 0x40
+- O_DIRECT = 0x20000
+- O_DIRECTORY = 0x4000
+- O_DSYNC = 0x1000
+- O_EXCL = 0x80
+- O_FSYNC = 0x101000
+- O_LARGEFILE = 0x0
+- O_NDELAY = 0x800
+- O_NOATIME = 0x40000
+- O_NOCTTY = 0x100
+- O_NOFOLLOW = 0x8000
+- O_NONBLOCK = 0x800
+- O_PATH = 0x200000
+- O_RDONLY = 0x0
+- O_RDWR = 0x2
+- O_RSYNC = 0x101000
+- O_SYNC = 0x101000
+- O_TMPFILE = 0x404000
+- O_TRUNC = 0x200
+- O_WRONLY = 0x1
+- PACKET_ADD_MEMBERSHIP = 0x1
+- PACKET_AUXDATA = 0x8
+- PACKET_BROADCAST = 0x1
+- PACKET_COPY_THRESH = 0x7
+- PACKET_DROP_MEMBERSHIP = 0x2
+- PACKET_FANOUT = 0x12
+- PACKET_FANOUT_CBPF = 0x6
+- PACKET_FANOUT_CPU = 0x2
+- PACKET_FANOUT_DATA = 0x16
+- PACKET_FANOUT_EBPF = 0x7
+- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
+- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
+- PACKET_FANOUT_HASH = 0x0
+- PACKET_FANOUT_LB = 0x1
+- PACKET_FANOUT_QM = 0x5
+- PACKET_FANOUT_RND = 0x4
+- PACKET_FANOUT_ROLLOVER = 0x3
+- PACKET_FASTROUTE = 0x6
+- PACKET_HDRLEN = 0xb
+- PACKET_HOST = 0x0
+- PACKET_KERNEL = 0x7
+- PACKET_LOOPBACK = 0x5
+- PACKET_LOSS = 0xe
+- PACKET_MR_ALLMULTI = 0x2
+- PACKET_MR_MULTICAST = 0x0
+- PACKET_MR_PROMISC = 0x1
+- PACKET_MR_UNICAST = 0x3
+- PACKET_MULTICAST = 0x2
+- PACKET_ORIGDEV = 0x9
+- PACKET_OTHERHOST = 0x3
+- PACKET_OUTGOING = 0x4
+- PACKET_QDISC_BYPASS = 0x14
+- PACKET_RECV_OUTPUT = 0x3
+- PACKET_RESERVE = 0xc
+- PACKET_ROLLOVER_STATS = 0x15
+- PACKET_RX_RING = 0x5
+- PACKET_STATISTICS = 0x6
+- PACKET_TIMESTAMP = 0x11
+- PACKET_TX_HAS_OFF = 0x13
+- PACKET_TX_RING = 0xd
+- PACKET_TX_TIMESTAMP = 0x10
+- PACKET_USER = 0x6
+- PACKET_VERSION = 0xa
+- PACKET_VNET_HDR = 0xf
+- PARENB = 0x1000
+- PARITY_CRC16_PR0 = 0x2
+- PARITY_CRC16_PR0_CCITT = 0x4
+- PARITY_CRC16_PR1 = 0x3
+- PARITY_CRC16_PR1_CCITT = 0x5
+- PARITY_CRC32_PR0_CCITT = 0x6
+- PARITY_CRC32_PR1_CCITT = 0x7
+- PARITY_DEFAULT = 0x0
+- PARITY_NONE = 0x1
+- PARMRK = 0x8
+- PARODD = 0x2000
+- PENDIN = 0x20000000
+- PERF_EVENT_IOC_DISABLE = 0x20002401
+- PERF_EVENT_IOC_ENABLE = 0x20002400
+- PERF_EVENT_IOC_ID = 0x40082407
+- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
+- PERF_EVENT_IOC_PERIOD = 0x80082404
+- PERF_EVENT_IOC_REFRESH = 0x20002402
+- PERF_EVENT_IOC_RESET = 0x20002403
+- PERF_EVENT_IOC_SET_BPF = 0x80042408
+- PERF_EVENT_IOC_SET_FILTER = 0x80082406
+- PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
+- PRIO_PGRP = 0x1
+- PRIO_PROCESS = 0x0
+- PRIO_USER = 0x2
+- PROT_EXEC = 0x4
+- PROT_GROWSDOWN = 0x1000000
+- PROT_GROWSUP = 0x2000000
+- PROT_NONE = 0x0
+- PROT_READ = 0x1
+- PROT_SAO = 0x10
+- PROT_WRITE = 0x2
+- PR_CAPBSET_DROP = 0x18
+- PR_CAPBSET_READ = 0x17
+- PR_CAP_AMBIENT = 0x2f
+- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
+- PR_CAP_AMBIENT_IS_SET = 0x1
+- PR_CAP_AMBIENT_LOWER = 0x3
+- PR_CAP_AMBIENT_RAISE = 0x2
+- PR_ENDIAN_BIG = 0x0
+- PR_ENDIAN_LITTLE = 0x1
+- PR_ENDIAN_PPC_LITTLE = 0x2
+- PR_FPEMU_NOPRINT = 0x1
+- PR_FPEMU_SIGFPE = 0x2
+- PR_FP_EXC_ASYNC = 0x2
+- PR_FP_EXC_DISABLED = 0x0
+- PR_FP_EXC_DIV = 0x10000
+- PR_FP_EXC_INV = 0x100000
+- PR_FP_EXC_NONRECOV = 0x1
+- PR_FP_EXC_OVF = 0x20000
+- PR_FP_EXC_PRECISE = 0x3
+- PR_FP_EXC_RES = 0x80000
+- PR_FP_EXC_SW_ENABLE = 0x80
+- PR_FP_EXC_UND = 0x40000
+- PR_FP_MODE_FR = 0x1
+- PR_FP_MODE_FRE = 0x2
+- PR_GET_CHILD_SUBREAPER = 0x25
+- PR_GET_DUMPABLE = 0x3
+- PR_GET_ENDIAN = 0x13
+- PR_GET_FPEMU = 0x9
+- PR_GET_FPEXC = 0xb
+- PR_GET_FP_MODE = 0x2e
+- PR_GET_KEEPCAPS = 0x7
+- PR_GET_NAME = 0x10
+- PR_GET_NO_NEW_PRIVS = 0x27
+- PR_GET_PDEATHSIG = 0x2
+- PR_GET_SECCOMP = 0x15
+- PR_GET_SECUREBITS = 0x1b
+- PR_GET_THP_DISABLE = 0x2a
+- PR_GET_TID_ADDRESS = 0x28
+- PR_GET_TIMERSLACK = 0x1e
+- PR_GET_TIMING = 0xd
+- PR_GET_TSC = 0x19
+- PR_GET_UNALIGN = 0x5
+- PR_MCE_KILL = 0x21
+- PR_MCE_KILL_CLEAR = 0x0
+- PR_MCE_KILL_DEFAULT = 0x2
+- PR_MCE_KILL_EARLY = 0x1
+- PR_MCE_KILL_GET = 0x22
+- PR_MCE_KILL_LATE = 0x0
+- PR_MCE_KILL_SET = 0x1
+- PR_MPX_DISABLE_MANAGEMENT = 0x2c
+- PR_MPX_ENABLE_MANAGEMENT = 0x2b
+- PR_SET_CHILD_SUBREAPER = 0x24
+- PR_SET_DUMPABLE = 0x4
+- PR_SET_ENDIAN = 0x14
+- PR_SET_FPEMU = 0xa
+- PR_SET_FPEXC = 0xc
+- PR_SET_FP_MODE = 0x2d
+- PR_SET_KEEPCAPS = 0x8
+- PR_SET_MM = 0x23
+- PR_SET_MM_ARG_END = 0x9
+- PR_SET_MM_ARG_START = 0x8
+- PR_SET_MM_AUXV = 0xc
+- PR_SET_MM_BRK = 0x7
+- PR_SET_MM_END_CODE = 0x2
+- PR_SET_MM_END_DATA = 0x4
+- PR_SET_MM_ENV_END = 0xb
+- PR_SET_MM_ENV_START = 0xa
+- PR_SET_MM_EXE_FILE = 0xd
+- PR_SET_MM_MAP = 0xe
+- PR_SET_MM_MAP_SIZE = 0xf
+- PR_SET_MM_START_BRK = 0x6
+- PR_SET_MM_START_CODE = 0x1
+- PR_SET_MM_START_DATA = 0x3
+- PR_SET_MM_START_STACK = 0x5
+- PR_SET_NAME = 0xf
+- PR_SET_NO_NEW_PRIVS = 0x26
+- PR_SET_PDEATHSIG = 0x1
+- PR_SET_PTRACER = 0x59616d61
+- PR_SET_PTRACER_ANY = -0x1
+- PR_SET_SECCOMP = 0x16
+- PR_SET_SECUREBITS = 0x1c
+- PR_SET_THP_DISABLE = 0x29
+- PR_SET_TIMERSLACK = 0x1d
+- PR_SET_TIMING = 0xe
+- PR_SET_TSC = 0x1a
+- PR_SET_UNALIGN = 0x6
+- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
+- PR_TASK_PERF_EVENTS_ENABLE = 0x20
+- PR_TIMING_STATISTICAL = 0x0
+- PR_TIMING_TIMESTAMP = 0x1
+- PR_TSC_ENABLE = 0x1
+- PR_TSC_SIGSEGV = 0x2
+- PR_UNALIGN_NOPRINT = 0x1
+- PR_UNALIGN_SIGBUS = 0x2
+- PTRACE_ATTACH = 0x10
+- PTRACE_CONT = 0x7
+- PTRACE_DETACH = 0x11
+- PTRACE_EVENT_CLONE = 0x3
+- PTRACE_EVENT_EXEC = 0x4
+- PTRACE_EVENT_EXIT = 0x6
+- PTRACE_EVENT_FORK = 0x1
+- PTRACE_EVENT_SECCOMP = 0x7
+- PTRACE_EVENT_STOP = 0x80
+- PTRACE_EVENT_VFORK = 0x2
+- PTRACE_EVENT_VFORK_DONE = 0x5
+- PTRACE_GETEVENTMSG = 0x4201
+- PTRACE_GETEVRREGS = 0x14
+- PTRACE_GETFPREGS = 0xe
+- PTRACE_GETREGS = 0xc
+- PTRACE_GETREGS64 = 0x16
+- PTRACE_GETREGSET = 0x4204
+- PTRACE_GETSIGINFO = 0x4202
+- PTRACE_GETSIGMASK = 0x420a
+- PTRACE_GETVRREGS = 0x12
+- PTRACE_GETVSRREGS = 0x1b
+- PTRACE_GET_DEBUGREG = 0x19
+- PTRACE_INTERRUPT = 0x4207
+- PTRACE_KILL = 0x8
+- PTRACE_LISTEN = 0x4208
+- PTRACE_O_EXITKILL = 0x100000
+- PTRACE_O_MASK = 0x3000ff
+- PTRACE_O_SUSPEND_SECCOMP = 0x200000
+- PTRACE_O_TRACECLONE = 0x8
+- PTRACE_O_TRACEEXEC = 0x10
+- PTRACE_O_TRACEEXIT = 0x40
+- PTRACE_O_TRACEFORK = 0x2
+- PTRACE_O_TRACESECCOMP = 0x80
+- PTRACE_O_TRACESYSGOOD = 0x1
+- PTRACE_O_TRACEVFORK = 0x4
+- PTRACE_O_TRACEVFORKDONE = 0x20
+- PTRACE_PEEKDATA = 0x2
+- PTRACE_PEEKSIGINFO = 0x4209
+- PTRACE_PEEKSIGINFO_SHARED = 0x1
+- PTRACE_PEEKTEXT = 0x1
+- PTRACE_PEEKUSR = 0x3
+- PTRACE_POKEDATA = 0x5
+- PTRACE_POKETEXT = 0x4
+- PTRACE_POKEUSR = 0x6
+- PTRACE_SECCOMP_GET_FILTER = 0x420c
+- PTRACE_SEIZE = 0x4206
+- PTRACE_SETEVRREGS = 0x15
+- PTRACE_SETFPREGS = 0xf
+- PTRACE_SETOPTIONS = 0x4200
+- PTRACE_SETREGS = 0xd
+- PTRACE_SETREGS64 = 0x17
+- PTRACE_SETREGSET = 0x4205
+- PTRACE_SETSIGINFO = 0x4203
+- PTRACE_SETSIGMASK = 0x420b
+- PTRACE_SETVRREGS = 0x13
+- PTRACE_SETVSRREGS = 0x1c
+- PTRACE_SET_DEBUGREG = 0x1a
+- PTRACE_SINGLEBLOCK = 0x100
+- PTRACE_SINGLESTEP = 0x9
+- PTRACE_SYSCALL = 0x18
+- PTRACE_TRACEME = 0x0
+- PT_CCR = 0x26
+- PT_CTR = 0x23
+- PT_DAR = 0x29
+- PT_DSCR = 0x2c
+- PT_DSISR = 0x2a
+- PT_FPR0 = 0x30
+- PT_FPSCR = 0x50
+- PT_LNK = 0x24
+- PT_MSR = 0x21
+- PT_NIP = 0x20
+- PT_ORIG_R3 = 0x22
+- PT_R0 = 0x0
+- PT_R1 = 0x1
+- PT_R10 = 0xa
+- PT_R11 = 0xb
+- PT_R12 = 0xc
+- PT_R13 = 0xd
+- PT_R14 = 0xe
+- PT_R15 = 0xf
+- PT_R16 = 0x10
+- PT_R17 = 0x11
+- PT_R18 = 0x12
+- PT_R19 = 0x13
+- PT_R2 = 0x2
+- PT_R20 = 0x14
+- PT_R21 = 0x15
+- PT_R22 = 0x16
+- PT_R23 = 0x17
+- PT_R24 = 0x18
+- PT_R25 = 0x19
+- PT_R26 = 0x1a
+- PT_R27 = 0x1b
+- PT_R28 = 0x1c
+- PT_R29 = 0x1d
+- PT_R3 = 0x3
+- PT_R30 = 0x1e
+- PT_R31 = 0x1f
+- PT_R4 = 0x4
+- PT_R5 = 0x5
+- PT_R6 = 0x6
+- PT_R7 = 0x7
+- PT_R8 = 0x8
+- PT_R9 = 0x9
+- PT_REGS_COUNT = 0x2c
+- PT_RESULT = 0x2b
+- PT_SOFTE = 0x27
+- PT_TRAP = 0x28
+- PT_VR0 = 0x52
+- PT_VRSAVE = 0x94
+- PT_VSCR = 0x93
+- PT_VSR0 = 0x96
+- PT_VSR31 = 0xd4
+- PT_XER = 0x25
+- RLIMIT_AS = 0x9
+- RLIMIT_CORE = 0x4
+- RLIMIT_CPU = 0x0
+- RLIMIT_DATA = 0x2
+- RLIMIT_FSIZE = 0x1
+- RLIMIT_LOCKS = 0xa
+- RLIMIT_MEMLOCK = 0x8
+- RLIMIT_MSGQUEUE = 0xc
+- RLIMIT_NICE = 0xd
+- RLIMIT_NOFILE = 0x7
+- RLIMIT_NPROC = 0x6
+- RLIMIT_RSS = 0x5
+- RLIMIT_RTPRIO = 0xe
+- RLIMIT_RTTIME = 0xf
+- RLIMIT_SIGPENDING = 0xb
+- RLIMIT_STACK = 0x3
+- RLIM_INFINITY = -0x1
+- RTAX_ADVMSS = 0x8
+- RTAX_CC_ALGO = 0x10
+- RTAX_CWND = 0x7
+- RTAX_FEATURES = 0xc
+- RTAX_FEATURE_ALLFRAG = 0x8
+- RTAX_FEATURE_ECN = 0x1
+- RTAX_FEATURE_MASK = 0xf
+- RTAX_FEATURE_SACK = 0x2
+- RTAX_FEATURE_TIMESTAMP = 0x4
+- RTAX_HOPLIMIT = 0xa
+- RTAX_INITCWND = 0xb
+- RTAX_INITRWND = 0xe
+- RTAX_LOCK = 0x1
+- RTAX_MAX = 0x10
+- RTAX_MTU = 0x2
+- RTAX_QUICKACK = 0xf
+- RTAX_REORDERING = 0x9
+- RTAX_RTO_MIN = 0xd
+- RTAX_RTT = 0x4
+- RTAX_RTTVAR = 0x5
+- RTAX_SSTHRESH = 0x6
+- RTAX_UNSPEC = 0x0
+- RTAX_WINDOW = 0x3
+- RTA_ALIGNTO = 0x4
+- RTA_MAX = 0x19
+- RTCF_DIRECTSRC = 0x4000000
+- RTCF_DOREDIRECT = 0x1000000
+- RTCF_LOG = 0x2000000
+- RTCF_MASQ = 0x400000
+- RTCF_NAT = 0x800000
+- RTCF_VALVE = 0x200000
+- RTF_ADDRCLASSMASK = 0xf8000000
+- RTF_ADDRCONF = 0x40000
+- RTF_ALLONLINK = 0x20000
+- RTF_BROADCAST = 0x10000000
+- RTF_CACHE = 0x1000000
+- RTF_DEFAULT = 0x10000
+- RTF_DYNAMIC = 0x10
+- RTF_FLOW = 0x2000000
+- RTF_GATEWAY = 0x2
+- RTF_HOST = 0x4
+- RTF_INTERFACE = 0x40000000
+- RTF_IRTT = 0x100
+- RTF_LINKRT = 0x100000
+- RTF_LOCAL = 0x80000000
+- RTF_MODIFIED = 0x20
+- RTF_MSS = 0x40
+- RTF_MTU = 0x40
+- RTF_MULTICAST = 0x20000000
+- RTF_NAT = 0x8000000
+- RTF_NOFORWARD = 0x1000
+- RTF_NONEXTHOP = 0x200000
+- RTF_NOPMTUDISC = 0x4000
+- RTF_POLICY = 0x4000000
+- RTF_REINSTATE = 0x8
+- RTF_REJECT = 0x200
+- RTF_STATIC = 0x400
+- RTF_THROW = 0x2000
+- RTF_UP = 0x1
+- RTF_WINDOW = 0x80
+- RTF_XRESOLVE = 0x800
+- RTM_BASE = 0x10
+- RTM_DELACTION = 0x31
+- RTM_DELADDR = 0x15
+- RTM_DELADDRLABEL = 0x49
+- RTM_DELLINK = 0x11
+- RTM_DELMDB = 0x55
+- RTM_DELNEIGH = 0x1d
+- RTM_DELNSID = 0x59
+- RTM_DELQDISC = 0x25
+- RTM_DELROUTE = 0x19
+- RTM_DELRULE = 0x21
+- RTM_DELTCLASS = 0x29
+- RTM_DELTFILTER = 0x2d
+- RTM_F_CLONED = 0x200
+- RTM_F_EQUALIZE = 0x400
+- RTM_F_LOOKUP_TABLE = 0x1000
+- RTM_F_NOTIFY = 0x100
+- RTM_F_PREFIX = 0x800
+- RTM_GETACTION = 0x32
+- RTM_GETADDR = 0x16
+- RTM_GETADDRLABEL = 0x4a
+- RTM_GETANYCAST = 0x3e
+- RTM_GETDCB = 0x4e
+- RTM_GETLINK = 0x12
+- RTM_GETMDB = 0x56
+- RTM_GETMULTICAST = 0x3a
+- RTM_GETNEIGH = 0x1e
+- RTM_GETNEIGHTBL = 0x42
+- RTM_GETNETCONF = 0x52
+- RTM_GETNSID = 0x5a
+- RTM_GETQDISC = 0x26
+- RTM_GETROUTE = 0x1a
+- RTM_GETRULE = 0x22
+- RTM_GETSTATS = 0x5e
+- RTM_GETTCLASS = 0x2a
+- RTM_GETTFILTER = 0x2e
+- RTM_MAX = 0x5f
+- RTM_NEWACTION = 0x30
+- RTM_NEWADDR = 0x14
+- RTM_NEWADDRLABEL = 0x48
+- RTM_NEWLINK = 0x10
+- RTM_NEWMDB = 0x54
+- RTM_NEWNDUSEROPT = 0x44
+- RTM_NEWNEIGH = 0x1c
+- RTM_NEWNEIGHTBL = 0x40
+- RTM_NEWNETCONF = 0x50
+- RTM_NEWNSID = 0x58
+- RTM_NEWPREFIX = 0x34
+- RTM_NEWQDISC = 0x24
+- RTM_NEWROUTE = 0x18
+- RTM_NEWRULE = 0x20
+- RTM_NEWSTATS = 0x5c
+- RTM_NEWTCLASS = 0x28
+- RTM_NEWTFILTER = 0x2c
+- RTM_NR_FAMILIES = 0x14
+- RTM_NR_MSGTYPES = 0x50
+- RTM_SETDCB = 0x4f
+- RTM_SETLINK = 0x13
+- RTM_SETNEIGHTBL = 0x43
+- RTNH_ALIGNTO = 0x4
+- RTNH_COMPARE_MASK = 0x19
+- RTNH_F_DEAD = 0x1
+- RTNH_F_LINKDOWN = 0x10
+- RTNH_F_OFFLOAD = 0x8
+- RTNH_F_ONLINK = 0x4
+- RTNH_F_PERVASIVE = 0x2
+- RTN_MAX = 0xb
+- RTPROT_BABEL = 0x2a
+- RTPROT_BIRD = 0xc
+- RTPROT_BOOT = 0x3
+- RTPROT_DHCP = 0x10
+- RTPROT_DNROUTED = 0xd
+- RTPROT_GATED = 0x8
+- RTPROT_KERNEL = 0x2
+- RTPROT_MROUTED = 0x11
+- RTPROT_MRT = 0xa
+- RTPROT_NTK = 0xf
+- RTPROT_RA = 0x9
+- RTPROT_REDIRECT = 0x1
+- RTPROT_STATIC = 0x4
+- RTPROT_UNSPEC = 0x0
+- RTPROT_XORP = 0xe
+- RTPROT_ZEBRA = 0xb
+- RT_CLASS_DEFAULT = 0xfd
+- RT_CLASS_LOCAL = 0xff
+- RT_CLASS_MAIN = 0xfe
+- RT_CLASS_MAX = 0xff
+- RT_CLASS_UNSPEC = 0x0
+- RUSAGE_CHILDREN = -0x1
+- RUSAGE_SELF = 0x0
+- RUSAGE_THREAD = 0x1
+- SCM_CREDENTIALS = 0x2
+- SCM_RIGHTS = 0x1
+- SCM_TIMESTAMP = 0x1d
+- SCM_TIMESTAMPING = 0x25
+- SCM_TIMESTAMPING_OPT_STATS = 0x36
+- SCM_TIMESTAMPNS = 0x23
+- SCM_WIFI_STATUS = 0x29
+- SECCOMP_MODE_DISABLED = 0x0
+- SECCOMP_MODE_FILTER = 0x2
+- SECCOMP_MODE_STRICT = 0x1
+- SHUT_RD = 0x0
+- SHUT_RDWR = 0x2
+- SHUT_WR = 0x1
+- SIOCADDDLCI = 0x8980
+- SIOCADDMULTI = 0x8931
+- SIOCADDRT = 0x890b
+- SIOCATMARK = 0x8905
+- SIOCBONDCHANGEACTIVE = 0x8995
+- SIOCBONDENSLAVE = 0x8990
+- SIOCBONDINFOQUERY = 0x8994
+- SIOCBONDRELEASE = 0x8991
+- SIOCBONDSETHWADDR = 0x8992
+- SIOCBONDSLAVEINFOQUERY = 0x8993
+- SIOCBRADDBR = 0x89a0
+- SIOCBRADDIF = 0x89a2
+- SIOCBRDELBR = 0x89a1
+- SIOCBRDELIF = 0x89a3
+- SIOCDARP = 0x8953
+- SIOCDELDLCI = 0x8981
+- SIOCDELMULTI = 0x8932
+- SIOCDELRT = 0x890c
+- SIOCDEVPRIVATE = 0x89f0
+- SIOCDIFADDR = 0x8936
+- SIOCDRARP = 0x8960
+- SIOCETHTOOL = 0x8946
+- SIOCGARP = 0x8954
+- SIOCGHWTSTAMP = 0x89b1
+- SIOCGIFADDR = 0x8915
+- SIOCGIFBR = 0x8940
+- SIOCGIFBRDADDR = 0x8919
+- SIOCGIFCONF = 0x8912
+- SIOCGIFCOUNT = 0x8938
+- SIOCGIFDSTADDR = 0x8917
+- SIOCGIFENCAP = 0x8925
+- SIOCGIFFLAGS = 0x8913
+- SIOCGIFHWADDR = 0x8927
+- SIOCGIFINDEX = 0x8933
+- SIOCGIFMAP = 0x8970
+- SIOCGIFMEM = 0x891f
+- SIOCGIFMETRIC = 0x891d
+- SIOCGIFMTU = 0x8921
+- SIOCGIFNAME = 0x8910
+- SIOCGIFNETMASK = 0x891b
+- SIOCGIFPFLAGS = 0x8935
+- SIOCGIFSLAVE = 0x8929
+- SIOCGIFTXQLEN = 0x8942
+- SIOCGIFVLAN = 0x8982
+- SIOCGMIIPHY = 0x8947
+- SIOCGMIIREG = 0x8948
+- SIOCGPGRP = 0x8904
+- SIOCGRARP = 0x8961
+- SIOCGSKNS = 0x894c
+- SIOCGSTAMP = 0x8906
+- SIOCGSTAMPNS = 0x8907
+- SIOCINQ = 0x4004667f
+- SIOCOUTQ = 0x40047473
+- SIOCOUTQNSD = 0x894b
+- SIOCPROTOPRIVATE = 0x89e0
+- SIOCRTMSG = 0x890d
+- SIOCSARP = 0x8955
+- SIOCSHWTSTAMP = 0x89b0
+- SIOCSIFADDR = 0x8916
+- SIOCSIFBR = 0x8941
+- SIOCSIFBRDADDR = 0x891a
+- SIOCSIFDSTADDR = 0x8918
+- SIOCSIFENCAP = 0x8926
+- SIOCSIFFLAGS = 0x8914
+- SIOCSIFHWADDR = 0x8924
+- SIOCSIFHWBROADCAST = 0x8937
+- SIOCSIFLINK = 0x8911
+- SIOCSIFMAP = 0x8971
+- SIOCSIFMEM = 0x8920
+- SIOCSIFMETRIC = 0x891e
+- SIOCSIFMTU = 0x8922
+- SIOCSIFNAME = 0x8923
+- SIOCSIFNETMASK = 0x891c
+- SIOCSIFPFLAGS = 0x8934
+- SIOCSIFSLAVE = 0x8930
+- SIOCSIFTXQLEN = 0x8943
+- SIOCSIFVLAN = 0x8983
+- SIOCSMIIREG = 0x8949
+- SIOCSPGRP = 0x8902
+- SIOCSRARP = 0x8962
+- SIOCWANDEV = 0x894a
+- SOCK_CLOEXEC = 0x80000
+- SOCK_DCCP = 0x6
+- SOCK_DGRAM = 0x2
+- SOCK_IOC_TYPE = 0x89
+- SOCK_NONBLOCK = 0x800
+- SOCK_PACKET = 0xa
+- SOCK_RAW = 0x3
+- SOCK_RDM = 0x4
+- SOCK_SEQPACKET = 0x5
+- SOCK_STREAM = 0x1
+- SOL_AAL = 0x109
+- SOL_ALG = 0x117
+- SOL_ATM = 0x108
+- SOL_CAIF = 0x116
+- SOL_CAN_BASE = 0x64
+- SOL_DCCP = 0x10d
+- SOL_DECNET = 0x105
+- SOL_ICMPV6 = 0x3a
+- SOL_IP = 0x0
+- SOL_IPV6 = 0x29
+- SOL_IRDA = 0x10a
+- SOL_IUCV = 0x115
+- SOL_KCM = 0x119
+- SOL_LLC = 0x10c
+- SOL_NETBEUI = 0x10b
+- SOL_NETLINK = 0x10e
+- SOL_NFC = 0x118
+- SOL_PACKET = 0x107
+- SOL_PNPIPE = 0x113
+- SOL_PPPOL2TP = 0x111
+- SOL_RAW = 0xff
+- SOL_RDS = 0x114
+- SOL_RXRPC = 0x110
+- SOL_SOCKET = 0x1
+- SOL_TCP = 0x6
+- SOL_TIPC = 0x10f
+- SOL_X25 = 0x106
+- SOMAXCONN = 0x80
+- SO_ACCEPTCONN = 0x1e
+- SO_ATTACH_BPF = 0x32
+- SO_ATTACH_FILTER = 0x1a
+- SO_ATTACH_REUSEPORT_CBPF = 0x33
+- SO_ATTACH_REUSEPORT_EBPF = 0x34
+- SO_BINDTODEVICE = 0x19
+- SO_BPF_EXTENSIONS = 0x30
+- SO_BROADCAST = 0x6
+- SO_BSDCOMPAT = 0xe
+- SO_BUSY_POLL = 0x2e
+- SO_CNX_ADVICE = 0x35
+- SO_DEBUG = 0x1
+- SO_DETACH_BPF = 0x1b
+- SO_DETACH_FILTER = 0x1b
+- SO_DOMAIN = 0x27
+- SO_DONTROUTE = 0x5
+- SO_ERROR = 0x4
+- SO_GET_FILTER = 0x1a
+- SO_INCOMING_CPU = 0x31
+- SO_KEEPALIVE = 0x9
+- SO_LINGER = 0xd
+- SO_LOCK_FILTER = 0x2c
+- SO_MARK = 0x24
+- SO_MAX_PACING_RATE = 0x2f
+- SO_NOFCS = 0x2b
+- SO_NO_CHECK = 0xb
+- SO_OOBINLINE = 0xa
+- SO_PASSCRED = 0x14
+- SO_PASSSEC = 0x22
+- SO_PEEK_OFF = 0x2a
+- SO_PEERCRED = 0x15
+- SO_PEERNAME = 0x1c
+- SO_PEERSEC = 0x1f
+- SO_PRIORITY = 0xc
+- SO_PROTOCOL = 0x26
+- SO_RCVBUF = 0x8
+- SO_RCVBUFFORCE = 0x21
+- SO_RCVLOWAT = 0x10
+- SO_RCVTIMEO = 0x12
+- SO_REUSEADDR = 0x2
+- SO_REUSEPORT = 0xf
+- SO_RXQ_OVFL = 0x28
+- SO_SECURITY_AUTHENTICATION = 0x16
+- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
+- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
+- SO_SELECT_ERR_QUEUE = 0x2d
+- SO_SNDBUF = 0x7
+- SO_SNDBUFFORCE = 0x20
+- SO_SNDLOWAT = 0x11
+- SO_SNDTIMEO = 0x13
+- SO_TIMESTAMP = 0x1d
+- SO_TIMESTAMPING = 0x25
+- SO_TIMESTAMPNS = 0x23
+- SO_TYPE = 0x3
+- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
+- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
+- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
+- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
+- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
+- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
+- SO_VM_SOCKETS_TRUSTED = 0x5
+- SO_WIFI_STATUS = 0x29
+- SPLICE_F_GIFT = 0x8
+- SPLICE_F_MORE = 0x4
+- SPLICE_F_MOVE = 0x1
+- SPLICE_F_NONBLOCK = 0x2
+- S_BLKSIZE = 0x200
+- S_IEXEC = 0x40
+- S_IFBLK = 0x6000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFIFO = 0x1000
+- S_IFLNK = 0xa000
+- S_IFMT = 0xf000
+- S_IFREG = 0x8000
+- S_IFSOCK = 0xc000
+- S_IREAD = 0x100
+- S_IRGRP = 0x20
+- S_IROTH = 0x4
+- S_IRUSR = 0x100
+- S_IRWXG = 0x38
+- S_IRWXO = 0x7
+- S_IRWXU = 0x1c0
+- S_ISGID = 0x400
+- S_ISUID = 0x800
+- S_ISVTX = 0x200
+- S_IWGRP = 0x10
+- S_IWOTH = 0x2
+- S_IWRITE = 0x80
+- S_IWUSR = 0x80
+- S_IXGRP = 0x8
+- S_IXOTH = 0x1
+- S_IXUSR = 0x40
+- TAB0 = 0x0
+- TAB1 = 0x400
+- TAB2 = 0x800
+- TAB3 = 0xc00
+- TABDLY = 0xc00
+- TASKSTATS_CMD_ATTR_MAX = 0x4
+- TASKSTATS_CMD_MAX = 0x2
+- TASKSTATS_GENL_NAME = "TASKSTATS"
+- TASKSTATS_GENL_VERSION = 0x1
+- TASKSTATS_TYPE_MAX = 0x6
+- TASKSTATS_VERSION = 0x8
+- TCFLSH = 0x2000741f
+- TCGETA = 0x40147417
+- TCGETS = 0x402c7413
+- TCIFLUSH = 0x0
+- TCIOFF = 0x2
+- TCIOFLUSH = 0x2
+- TCION = 0x3
+- TCOFLUSH = 0x1
+- TCOOFF = 0x0
+- TCOON = 0x1
+- TCP_CC_INFO = 0x1a
+- TCP_CONGESTION = 0xd
+- TCP_COOKIE_IN_ALWAYS = 0x1
+- TCP_COOKIE_MAX = 0x10
+- TCP_COOKIE_MIN = 0x8
+- TCP_COOKIE_OUT_NEVER = 0x2
+- TCP_COOKIE_PAIR_SIZE = 0x20
+- TCP_COOKIE_TRANSACTIONS = 0xf
+- TCP_CORK = 0x3
+- TCP_DEFER_ACCEPT = 0x9
+- TCP_FASTOPEN = 0x17
+- TCP_INFO = 0xb
+- TCP_KEEPCNT = 0x6
+- TCP_KEEPIDLE = 0x4
+- TCP_KEEPINTVL = 0x5
+- TCP_LINGER2 = 0x8
+- TCP_MAXSEG = 0x2
+- TCP_MAXWIN = 0xffff
+- TCP_MAX_WINSHIFT = 0xe
+- TCP_MD5SIG = 0xe
+- TCP_MD5SIG_MAXKEYLEN = 0x50
+- TCP_MSS = 0x200
+- TCP_MSS_DEFAULT = 0x218
+- TCP_MSS_DESIRED = 0x4c4
+- TCP_NODELAY = 0x1
+- TCP_NOTSENT_LOWAT = 0x19
+- TCP_QUEUE_SEQ = 0x15
+- TCP_QUICKACK = 0xc
+- TCP_REPAIR = 0x13
+- TCP_REPAIR_OPTIONS = 0x16
+- TCP_REPAIR_QUEUE = 0x14
+- TCP_REPAIR_WINDOW = 0x1d
+- TCP_SAVED_SYN = 0x1c
+- TCP_SAVE_SYN = 0x1b
+- TCP_SYNCNT = 0x7
+- TCP_S_DATA_IN = 0x4
+- TCP_S_DATA_OUT = 0x8
+- TCP_THIN_DUPACK = 0x11
+- TCP_THIN_LINEAR_TIMEOUTS = 0x10
+- TCP_TIMESTAMP = 0x18
+- TCP_USER_TIMEOUT = 0x12
+- TCP_WINDOW_CLAMP = 0xa
+- TCSAFLUSH = 0x2
+- TCSBRK = 0x2000741d
+- TCSBRKP = 0x5425
+- TCSETA = 0x80147418
+- TCSETAF = 0x8014741c
+- TCSETAW = 0x80147419
+- TCSETS = 0x802c7414
+- TCSETSF = 0x802c7416
+- TCSETSW = 0x802c7415
+- TCXONC = 0x2000741e
+- TIOCCBRK = 0x5428
+- TIOCCONS = 0x541d
+- TIOCEXCL = 0x540c
+- TIOCGDEV = 0x40045432
+- TIOCGETC = 0x40067412
+- TIOCGETD = 0x5424
+- TIOCGETP = 0x40067408
+- TIOCGEXCL = 0x40045440
+- TIOCGICOUNT = 0x545d
+- TIOCGLCKTRMIOS = 0x5456
+- TIOCGLTC = 0x40067474
+- TIOCGPGRP = 0x40047477
+- TIOCGPKT = 0x40045438
+- TIOCGPTLCK = 0x40045439
+- TIOCGPTN = 0x40045430
+- TIOCGRS485 = 0x542e
+- TIOCGSERIAL = 0x541e
+- TIOCGSID = 0x5429
+- TIOCGSOFTCAR = 0x5419
+- TIOCGWINSZ = 0x40087468
+- TIOCINQ = 0x4004667f
+- TIOCLINUX = 0x541c
+- TIOCMBIC = 0x5417
+- TIOCMBIS = 0x5416
+- TIOCMGET = 0x5415
+- TIOCMIWAIT = 0x545c
+- TIOCMSET = 0x5418
+- TIOCM_CAR = 0x40
+- TIOCM_CD = 0x40
+- TIOCM_CTS = 0x20
+- TIOCM_DSR = 0x100
+- TIOCM_DTR = 0x2
+- TIOCM_LE = 0x1
+- TIOCM_LOOP = 0x8000
+- TIOCM_OUT1 = 0x2000
+- TIOCM_OUT2 = 0x4000
+- TIOCM_RI = 0x80
+- TIOCM_RNG = 0x80
+- TIOCM_RTS = 0x4
+- TIOCM_SR = 0x10
+- TIOCM_ST = 0x8
+- TIOCNOTTY = 0x5422
+- TIOCNXCL = 0x540d
+- TIOCOUTQ = 0x40047473
+- TIOCPKT = 0x5420
+- TIOCPKT_DATA = 0x0
+- TIOCPKT_DOSTOP = 0x20
+- TIOCPKT_FLUSHREAD = 0x1
+- TIOCPKT_FLUSHWRITE = 0x2
+- TIOCPKT_IOCTL = 0x40
+- TIOCPKT_NOSTOP = 0x10
+- TIOCPKT_START = 0x8
+- TIOCPKT_STOP = 0x4
+- TIOCSBRK = 0x5427
+- TIOCSCTTY = 0x540e
+- TIOCSERCONFIG = 0x5453
+- TIOCSERGETLSR = 0x5459
+- TIOCSERGETMULTI = 0x545a
+- TIOCSERGSTRUCT = 0x5458
+- TIOCSERGWILD = 0x5454
+- TIOCSERSETMULTI = 0x545b
+- TIOCSERSWILD = 0x5455
+- TIOCSER_TEMT = 0x1
+- TIOCSETC = 0x80067411
+- TIOCSETD = 0x5423
+- TIOCSETN = 0x8006740a
+- TIOCSETP = 0x80067409
+- TIOCSIG = 0x80045436
+- TIOCSLCKTRMIOS = 0x5457
+- TIOCSLTC = 0x80067475
+- TIOCSPGRP = 0x80047476
+- TIOCSPTLCK = 0x80045431
+- TIOCSRS485 = 0x542f
+- TIOCSSERIAL = 0x541f
+- TIOCSSOFTCAR = 0x541a
+- TIOCSTART = 0x2000746e
+- TIOCSTI = 0x5412
+- TIOCSTOP = 0x2000746f
+- TIOCSWINSZ = 0x80087467
+- TIOCVHANGUP = 0x5437
+- TOSTOP = 0x400000
+- TS_COMM_LEN = 0x20
+- TUNATTACHFILTER = 0x801054d5
+- TUNDETACHFILTER = 0x801054d6
+- TUNGETFEATURES = 0x400454cf
+- TUNGETFILTER = 0x401054db
+- TUNGETIFF = 0x400454d2
+- TUNGETSNDBUF = 0x400454d3
+- TUNGETVNETBE = 0x400454df
+- TUNGETVNETHDRSZ = 0x400454d7
+- TUNGETVNETLE = 0x400454dd
+- TUNSETDEBUG = 0x800454c9
+- TUNSETGROUP = 0x800454ce
+- TUNSETIFF = 0x800454ca
+- TUNSETIFINDEX = 0x800454da
+- TUNSETLINK = 0x800454cd
+- TUNSETNOCSUM = 0x800454c8
+- TUNSETOFFLOAD = 0x800454d0
+- TUNSETOWNER = 0x800454cc
+- TUNSETPERSIST = 0x800454cb
+- TUNSETQUEUE = 0x800454d9
+- TUNSETSNDBUF = 0x800454d4
+- TUNSETTXFILTER = 0x800454d1
+- TUNSETVNETBE = 0x800454de
+- TUNSETVNETHDRSZ = 0x800454d8
+- TUNSETVNETLE = 0x800454dc
+- UMOUNT_NOFOLLOW = 0x8
+- VDISCARD = 0x10
+- VEOF = 0x4
+- VEOL = 0x6
+- VEOL2 = 0x8
+- VERASE = 0x2
+- VINTR = 0x0
+- VKILL = 0x3
+- VLNEXT = 0xf
+- VMADDR_CID_ANY = 0xffffffff
+- VMADDR_CID_HOST = 0x2
+- VMADDR_CID_HYPERVISOR = 0x0
+- VMADDR_CID_RESERVED = 0x1
+- VMADDR_PORT_ANY = 0xffffffff
+- VMIN = 0x5
+- VM_SOCKETS_INVALID_VERSION = 0xffffffff
+- VQUIT = 0x1
+- VREPRINT = 0xb
+- VSTART = 0xd
+- VSTOP = 0xe
+- VSUSP = 0xc
+- VSWTC = 0x9
+- VT0 = 0x0
+- VT1 = 0x10000
+- VTDLY = 0x10000
+- VTIME = 0x7
+- VWERASE = 0xa
+- WALL = 0x40000000
+- WCLONE = 0x80000000
+- WCONTINUED = 0x8
+- WEXITED = 0x4
+- WNOHANG = 0x1
+- WNOTHREAD = 0x20000000
+- WNOWAIT = 0x1000000
+- WORDSIZE = 0x40
+- WSTOPPED = 0x2
+- WUNTRACED = 0x2
+- XATTR_CREATE = 0x1
+- XATTR_REPLACE = 0x2
+- XCASE = 0x4000
+- XTABS = 0xc00
++ B1000000 = 0x17
++ B115200 = 0x11
++ B1152000 = 0x18
++ B1500000 = 0x19
++ B2000000 = 0x1a
++ B230400 = 0x12
++ B2500000 = 0x1b
++ B3000000 = 0x1c
++ B3500000 = 0x1d
++ B4000000 = 0x1e
++ B460800 = 0x13
++ B500000 = 0x14
++ B57600 = 0x10
++ B576000 = 0x15
++ B921600 = 0x16
++ BLKBSZGET = 0x40081270
++ BLKBSZSET = 0x80081271
++ BLKFLSBUF = 0x20001261
++ BLKFRAGET = 0x20001265
++ BLKFRASET = 0x20001264
++ BLKGETSIZE = 0x20001260
++ BLKGETSIZE64 = 0x40081272
++ BLKPBSZGET = 0x2000127b
++ BLKRAGET = 0x20001263
++ BLKRASET = 0x20001262
++ BLKROGET = 0x2000125e
++ BLKROSET = 0x2000125d
++ BLKRRPART = 0x2000125f
++ BLKSECTGET = 0x20001267
++ BLKSECTSET = 0x20001266
++ BLKSSZGET = 0x20001268
++ BOTHER = 0x1f
++ BS1 = 0x8000
++ BSDLY = 0x8000
++ CBAUD = 0xff
++ CBAUDEX = 0x0
++ CIBAUD = 0xff0000
++ CLOCAL = 0x8000
++ CR1 = 0x1000
++ CR2 = 0x2000
++ CR3 = 0x3000
++ CRDLY = 0x3000
++ CREAD = 0x800
++ CS6 = 0x100
++ CS7 = 0x200
++ CS8 = 0x300
++ CSIZE = 0x300
++ CSTOPB = 0x400
++ ECHOCTL = 0x40
++ ECHOE = 0x2
++ ECHOK = 0x4
++ ECHOKE = 0x1
++ ECHONL = 0x10
++ ECHOPRT = 0x20
++ EFD_CLOEXEC = 0x80000
++ EFD_NONBLOCK = 0x800
++ EPOLL_CLOEXEC = 0x80000
++ EXTPROC = 0x10000000
++ FF1 = 0x4000
++ FFDLY = 0x4000
++ FLUSHO = 0x800000
++ FS_IOC_ENABLE_VERITY = 0x80806685
++ FS_IOC_GETFLAGS = 0x40086601
++ FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
++ FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
++ FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
++ F_GETLK = 0x5
++ F_GETLK64 = 0xc
++ F_GETOWN = 0x9
++ F_RDLCK = 0x0
++ F_SETLK = 0x6
++ F_SETLK64 = 0xd
++ F_SETLKW = 0x7
++ F_SETLKW64 = 0xe
++ F_SETOWN = 0x8
++ F_UNLCK = 0x2
++ F_WRLCK = 0x1
++ HUPCL = 0x4000
++ ICANON = 0x100
++ IEXTEN = 0x400
++ IN_CLOEXEC = 0x80000
++ IN_NONBLOCK = 0x800
++ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x200007b9
++ ISIG = 0x80
++ IUCLC = 0x1000
++ IXOFF = 0x400
++ IXON = 0x200
++ MAP_ANON = 0x20
++ MAP_ANONYMOUS = 0x20
++ MAP_DENYWRITE = 0x800
++ MAP_EXECUTABLE = 0x1000
++ MAP_GROWSDOWN = 0x100
++ MAP_HUGETLB = 0x40000
++ MAP_LOCKED = 0x80
++ MAP_NONBLOCK = 0x10000
++ MAP_NORESERVE = 0x40
++ MAP_POPULATE = 0x8000
++ MAP_STACK = 0x20000
++ MAP_SYNC = 0x80000
++ MCL_CURRENT = 0x2000
++ MCL_FUTURE = 0x4000
++ MCL_ONFAULT = 0x8000
++ NFDBITS = 0x40
++ NL2 = 0x200
++ NL3 = 0x300
++ NLDLY = 0x300
++ NOFLSH = 0x80000000
++ NS_GET_NSTYPE = 0x2000b703
++ NS_GET_OWNER_UID = 0x2000b704
++ NS_GET_PARENT = 0x2000b702
++ NS_GET_USERNS = 0x2000b701
++ OLCUC = 0x4
++ ONLCR = 0x2
++ O_APPEND = 0x400
++ O_ASYNC = 0x2000
++ O_CLOEXEC = 0x80000
++ O_CREAT = 0x40
++ O_DIRECT = 0x20000
++ O_DIRECTORY = 0x4000
++ O_DSYNC = 0x1000
++ O_EXCL = 0x80
++ O_FSYNC = 0x101000
++ O_LARGEFILE = 0x0
++ O_NDELAY = 0x800
++ O_NOATIME = 0x40000
++ O_NOCTTY = 0x100
++ O_NOFOLLOW = 0x8000
++ O_NONBLOCK = 0x800
++ O_PATH = 0x200000
++ O_RSYNC = 0x101000
++ O_SYNC = 0x101000
++ O_TMPFILE = 0x404000
++ O_TRUNC = 0x200
++ PARENB = 0x1000
++ PARODD = 0x2000
++ PENDIN = 0x20000000
++ PERF_EVENT_IOC_DISABLE = 0x20002401
++ PERF_EVENT_IOC_ENABLE = 0x20002400
++ PERF_EVENT_IOC_ID = 0x40082407
++ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8008240b
++ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
++ PERF_EVENT_IOC_PERIOD = 0x80082404
++ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
++ PERF_EVENT_IOC_REFRESH = 0x20002402
++ PERF_EVENT_IOC_RESET = 0x20002403
++ PERF_EVENT_IOC_SET_BPF = 0x80042408
++ PERF_EVENT_IOC_SET_FILTER = 0x80082406
++ PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
++ PPPIOCATTACH = 0x8004743d
++ PPPIOCATTCHAN = 0x80047438
++ PPPIOCCONNECT = 0x8004743a
++ PPPIOCDETACH = 0x8004743c
++ PPPIOCDISCONN = 0x20007439
++ PPPIOCGASYNCMAP = 0x40047458
++ PPPIOCGCHAN = 0x40047437
++ PPPIOCGDEBUG = 0x40047441
++ PPPIOCGFLAGS = 0x4004745a
++ PPPIOCGIDLE = 0x4010743f
++ PPPIOCGIDLE32 = 0x4008743f
++ PPPIOCGIDLE64 = 0x4010743f
++ PPPIOCGL2TPSTATS = 0x40487436
++ PPPIOCGMRU = 0x40047453
++ PPPIOCGRASYNCMAP = 0x40047455
++ PPPIOCGUNIT = 0x40047456
++ PPPIOCGXASYNCMAP = 0x40207450
++ PPPIOCSACTIVE = 0x80107446
++ PPPIOCSASYNCMAP = 0x80047457
++ PPPIOCSCOMPRESS = 0x8010744d
++ PPPIOCSDEBUG = 0x80047440
++ PPPIOCSFLAGS = 0x80047459
++ PPPIOCSMAXCID = 0x80047451
++ PPPIOCSMRRU = 0x8004743b
++ PPPIOCSMRU = 0x80047452
++ PPPIOCSNPMODE = 0x8008744b
++ PPPIOCSPASS = 0x80107447
++ PPPIOCSRASYNCMAP = 0x80047454
++ PPPIOCSXASYNCMAP = 0x8020744f
++ PPPIOCXFERUNIT = 0x2000744e
++ PROT_SAO = 0x10
++ PR_SET_PTRACER_ANY = 0xffffffffffffffff
++ PTRACE_GETEVRREGS = 0x14
++ PTRACE_GETFPREGS = 0xe
++ PTRACE_GETREGS64 = 0x16
++ PTRACE_GETVRREGS = 0x12
++ PTRACE_GETVSRREGS = 0x1b
++ PTRACE_GET_DEBUGREG = 0x19
++ PTRACE_SETEVRREGS = 0x15
++ PTRACE_SETFPREGS = 0xf
++ PTRACE_SETREGS64 = 0x17
++ PTRACE_SETVRREGS = 0x13
++ PTRACE_SETVSRREGS = 0x1c
++ PTRACE_SET_DEBUGREG = 0x1a
++ PTRACE_SINGLEBLOCK = 0x100
++ PTRACE_SYSEMU = 0x1d
++ PTRACE_SYSEMU_SINGLESTEP = 0x1e
++ PT_CCR = 0x26
++ PT_CTR = 0x23
++ PT_DAR = 0x29
++ PT_DSCR = 0x2c
++ PT_DSISR = 0x2a
++ PT_FPR0 = 0x30
++ PT_FPSCR = 0x50
++ PT_LNK = 0x24
++ PT_MSR = 0x21
++ PT_NIP = 0x20
++ PT_ORIG_R3 = 0x22
++ PT_R0 = 0x0
++ PT_R1 = 0x1
++ PT_R10 = 0xa
++ PT_R11 = 0xb
++ PT_R12 = 0xc
++ PT_R13 = 0xd
++ PT_R14 = 0xe
++ PT_R15 = 0xf
++ PT_R16 = 0x10
++ PT_R17 = 0x11
++ PT_R18 = 0x12
++ PT_R19 = 0x13
++ PT_R2 = 0x2
++ PT_R20 = 0x14
++ PT_R21 = 0x15
++ PT_R22 = 0x16
++ PT_R23 = 0x17
++ PT_R24 = 0x18
++ PT_R25 = 0x19
++ PT_R26 = 0x1a
++ PT_R27 = 0x1b
++ PT_R28 = 0x1c
++ PT_R29 = 0x1d
++ PT_R3 = 0x3
++ PT_R30 = 0x1e
++ PT_R31 = 0x1f
++ PT_R4 = 0x4
++ PT_R5 = 0x5
++ PT_R6 = 0x6
++ PT_R7 = 0x7
++ PT_R8 = 0x8
++ PT_R9 = 0x9
++ PT_REGS_COUNT = 0x2c
++ PT_RESULT = 0x2b
++ PT_SOFTE = 0x27
++ PT_TRAP = 0x28
++ PT_VR0 = 0x52
++ PT_VRSAVE = 0x94
++ PT_VSCR = 0x93
++ PT_VSR0 = 0x96
++ PT_VSR31 = 0xd4
++ PT_XER = 0x25
++ RLIMIT_AS = 0x9
++ RLIMIT_MEMLOCK = 0x8
++ RLIMIT_NOFILE = 0x7
++ RLIMIT_NPROC = 0x6
++ RLIMIT_RSS = 0x5
++ RNDADDENTROPY = 0x80085203
++ RNDADDTOENTCNT = 0x80045201
++ RNDCLEARPOOL = 0x20005206
++ RNDGETENTCNT = 0x40045200
++ RNDGETPOOL = 0x40085202
++ RNDRESEEDCRNG = 0x20005207
++ RNDZAPENTCNT = 0x20005204
++ RTC_AIE_OFF = 0x20007002
++ RTC_AIE_ON = 0x20007001
++ RTC_ALM_READ = 0x40247008
++ RTC_ALM_SET = 0x80247007
++ RTC_EPOCH_READ = 0x4008700d
++ RTC_EPOCH_SET = 0x8008700e
++ RTC_IRQP_READ = 0x4008700b
++ RTC_IRQP_SET = 0x8008700c
++ RTC_PIE_OFF = 0x20007006
++ RTC_PIE_ON = 0x20007005
++ RTC_PLL_GET = 0x40207011
++ RTC_PLL_SET = 0x80207012
++ RTC_RD_TIME = 0x40247009
++ RTC_SET_TIME = 0x8024700a
++ RTC_UIE_OFF = 0x20007004
++ RTC_UIE_ON = 0x20007003
++ RTC_VL_CLR = 0x20007014
++ RTC_VL_READ = 0x40047013
++ RTC_WIE_OFF = 0x20007010
++ RTC_WIE_ON = 0x2000700f
++ RTC_WKALM_RD = 0x40287010
++ RTC_WKALM_SET = 0x8028700f
++ SCM_TIMESTAMPING = 0x25
++ SCM_TIMESTAMPING_OPT_STATS = 0x36
++ SCM_TIMESTAMPING_PKTINFO = 0x3a
++ SCM_TIMESTAMPNS = 0x23
++ SCM_TXTIME = 0x3d
++ SCM_WIFI_STATUS = 0x29
++ SFD_CLOEXEC = 0x80000
++ SFD_NONBLOCK = 0x800
++ SIOCATMARK = 0x8905
++ SIOCGPGRP = 0x8904
++ SIOCGSTAMPNS_NEW = 0x40108907
++ SIOCGSTAMP_NEW = 0x40108906
++ SIOCINQ = 0x4004667f
++ SIOCOUTQ = 0x40047473
++ SIOCSPGRP = 0x8902
++ SOCK_CLOEXEC = 0x80000
++ SOCK_DGRAM = 0x2
++ SOCK_NONBLOCK = 0x800
++ SOCK_STREAM = 0x1
++ SOL_SOCKET = 0x1
++ SO_ACCEPTCONN = 0x1e
++ SO_ATTACH_BPF = 0x32
++ SO_ATTACH_REUSEPORT_CBPF = 0x33
++ SO_ATTACH_REUSEPORT_EBPF = 0x34
++ SO_BINDTODEVICE = 0x19
++ SO_BINDTOIFINDEX = 0x3e
++ SO_BPF_EXTENSIONS = 0x30
++ SO_BROADCAST = 0x6
++ SO_BSDCOMPAT = 0xe
++ SO_BUSY_POLL = 0x2e
++ SO_CNX_ADVICE = 0x35
++ SO_COOKIE = 0x39
++ SO_DETACH_REUSEPORT_BPF = 0x44
++ SO_DOMAIN = 0x27
++ SO_DONTROUTE = 0x5
++ SO_ERROR = 0x4
++ SO_INCOMING_CPU = 0x31
++ SO_INCOMING_NAPI_ID = 0x38
++ SO_KEEPALIVE = 0x9
++ SO_LINGER = 0xd
++ SO_LOCK_FILTER = 0x2c
++ SO_MARK = 0x24
++ SO_MAX_PACING_RATE = 0x2f
++ SO_MEMINFO = 0x37
++ SO_NOFCS = 0x2b
++ SO_OOBINLINE = 0xa
++ SO_PASSCRED = 0x14
++ SO_PASSSEC = 0x22
++ SO_PEEK_OFF = 0x2a
++ SO_PEERCRED = 0x15
++ SO_PEERGROUPS = 0x3b
++ SO_PEERSEC = 0x1f
++ SO_PROTOCOL = 0x26
++ SO_RCVBUF = 0x8
++ SO_RCVBUFFORCE = 0x21
++ SO_RCVLOWAT = 0x10
++ SO_RCVTIMEO = 0x12
++ SO_RCVTIMEO_NEW = 0x42
++ SO_RCVTIMEO_OLD = 0x12
++ SO_REUSEADDR = 0x2
++ SO_REUSEPORT = 0xf
++ SO_RXQ_OVFL = 0x28
++ SO_SECURITY_AUTHENTICATION = 0x16
++ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
++ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
++ SO_SELECT_ERR_QUEUE = 0x2d
++ SO_SNDBUF = 0x7
++ SO_SNDBUFFORCE = 0x20
++ SO_SNDLOWAT = 0x11
++ SO_SNDTIMEO = 0x13
++ SO_SNDTIMEO_NEW = 0x43
++ SO_SNDTIMEO_OLD = 0x13
++ SO_TIMESTAMPING = 0x25
++ SO_TIMESTAMPING_NEW = 0x41
++ SO_TIMESTAMPING_OLD = 0x25
++ SO_TIMESTAMPNS = 0x23
++ SO_TIMESTAMPNS_NEW = 0x40
++ SO_TIMESTAMPNS_OLD = 0x23
++ SO_TIMESTAMP_NEW = 0x3f
++ SO_TXTIME = 0x3d
++ SO_TYPE = 0x3
++ SO_WIFI_STATUS = 0x29
++ SO_ZEROCOPY = 0x3c
++ TAB1 = 0x400
++ TAB2 = 0x800
++ TAB3 = 0xc00
++ TABDLY = 0xc00
++ TCFLSH = 0x2000741f
++ TCGETA = 0x40147417
++ TCGETS = 0x402c7413
++ TCSAFLUSH = 0x2
++ TCSBRK = 0x2000741d
++ TCSBRKP = 0x5425
++ TCSETA = 0x80147418
++ TCSETAF = 0x8014741c
++ TCSETAW = 0x80147419
++ TCSETS = 0x802c7414
++ TCSETSF = 0x802c7416
++ TCSETSW = 0x802c7415
++ TCXONC = 0x2000741e
++ TIOCCBRK = 0x5428
++ TIOCCONS = 0x541d
++ TIOCEXCL = 0x540c
++ TIOCGDEV = 0x40045432
++ TIOCGETC = 0x40067412
++ TIOCGETD = 0x5424
++ TIOCGETP = 0x40067408
++ TIOCGEXCL = 0x40045440
++ TIOCGICOUNT = 0x545d
++ TIOCGISO7816 = 0x40285442
++ TIOCGLCKTRMIOS = 0x5456
++ TIOCGLTC = 0x40067474
++ TIOCGPGRP = 0x40047477
++ TIOCGPKT = 0x40045438
++ TIOCGPTLCK = 0x40045439
++ TIOCGPTN = 0x40045430
++ TIOCGPTPEER = 0x20005441
++ TIOCGRS485 = 0x542e
++ TIOCGSERIAL = 0x541e
++ TIOCGSID = 0x5429
++ TIOCGSOFTCAR = 0x5419
++ TIOCGWINSZ = 0x40087468
++ TIOCINQ = 0x4004667f
++ TIOCLINUX = 0x541c
++ TIOCMBIC = 0x5417
++ TIOCMBIS = 0x5416
++ TIOCMGET = 0x5415
++ TIOCMIWAIT = 0x545c
++ TIOCMSET = 0x5418
++ TIOCM_CAR = 0x40
++ TIOCM_CD = 0x40
++ TIOCM_CTS = 0x20
++ TIOCM_DSR = 0x100
++ TIOCM_LOOP = 0x8000
++ TIOCM_OUT1 = 0x2000
++ TIOCM_OUT2 = 0x4000
++ TIOCM_RI = 0x80
++ TIOCM_RNG = 0x80
++ TIOCM_SR = 0x10
++ TIOCM_ST = 0x8
++ TIOCNOTTY = 0x5422
++ TIOCNXCL = 0x540d
++ TIOCOUTQ = 0x40047473
++ TIOCPKT = 0x5420
++ TIOCSBRK = 0x5427
++ TIOCSCTTY = 0x540e
++ TIOCSERCONFIG = 0x5453
++ TIOCSERGETLSR = 0x5459
++ TIOCSERGETMULTI = 0x545a
++ TIOCSERGSTRUCT = 0x5458
++ TIOCSERGWILD = 0x5454
++ TIOCSERSETMULTI = 0x545b
++ TIOCSERSWILD = 0x5455
++ TIOCSER_TEMT = 0x1
++ TIOCSETC = 0x80067411
++ TIOCSETD = 0x5423
++ TIOCSETN = 0x8006740a
++ TIOCSETP = 0x80067409
++ TIOCSIG = 0x80045436
++ TIOCSISO7816 = 0xc0285443
++ TIOCSLCKTRMIOS = 0x5457
++ TIOCSLTC = 0x80067475
++ TIOCSPGRP = 0x80047476
++ TIOCSPTLCK = 0x80045431
++ TIOCSRS485 = 0x542f
++ TIOCSSERIAL = 0x541f
++ TIOCSSOFTCAR = 0x541a
++ TIOCSTART = 0x2000746e
++ TIOCSTI = 0x5412
++ TIOCSTOP = 0x2000746f
++ TIOCSWINSZ = 0x80087467
++ TIOCVHANGUP = 0x5437
++ TOSTOP = 0x400000
++ TUNATTACHFILTER = 0x801054d5
++ TUNDETACHFILTER = 0x801054d6
++ TUNGETDEVNETNS = 0x200054e3
++ TUNGETFEATURES = 0x400454cf
++ TUNGETFILTER = 0x401054db
++ TUNGETIFF = 0x400454d2
++ TUNGETSNDBUF = 0x400454d3
++ TUNGETVNETBE = 0x400454df
++ TUNGETVNETHDRSZ = 0x400454d7
++ TUNGETVNETLE = 0x400454dd
++ TUNSETCARRIER = 0x800454e2
++ TUNSETDEBUG = 0x800454c9
++ TUNSETFILTEREBPF = 0x400454e1
++ TUNSETGROUP = 0x800454ce
++ TUNSETIFF = 0x800454ca
++ TUNSETIFINDEX = 0x800454da
++ TUNSETLINK = 0x800454cd
++ TUNSETNOCSUM = 0x800454c8
++ TUNSETOFFLOAD = 0x800454d0
++ TUNSETOWNER = 0x800454cc
++ TUNSETPERSIST = 0x800454cb
++ TUNSETQUEUE = 0x800454d9
++ TUNSETSNDBUF = 0x800454d4
++ TUNSETSTEERINGEBPF = 0x400454e0
++ TUNSETTXFILTER = 0x800454d1
++ TUNSETVNETBE = 0x800454de
++ TUNSETVNETHDRSZ = 0x800454d8
++ TUNSETVNETLE = 0x800454dc
++ UBI_IOCATT = 0x80186f40
++ UBI_IOCDET = 0x80046f41
++ UBI_IOCEBCH = 0x80044f02
++ UBI_IOCEBER = 0x80044f01
++ UBI_IOCEBISMAP = 0x40044f05
++ UBI_IOCEBMAP = 0x80084f03
++ UBI_IOCEBUNMAP = 0x80044f04
++ UBI_IOCMKVOL = 0x80986f00
++ UBI_IOCRMVOL = 0x80046f01
++ UBI_IOCRNVOL = 0x91106f03
++ UBI_IOCRPEB = 0x80046f04
++ UBI_IOCRSVOL = 0x800c6f02
++ UBI_IOCSETVOLPROP = 0x80104f06
++ UBI_IOCSPEB = 0x80046f05
++ UBI_IOCVOLCRBLK = 0x80804f07
++ UBI_IOCVOLRMBLK = 0x20004f08
++ UBI_IOCVOLUP = 0x80084f00
++ VDISCARD = 0x10
++ VEOF = 0x4
++ VEOL = 0x6
++ VEOL2 = 0x8
++ VMIN = 0x5
++ VREPRINT = 0xb
++ VSTART = 0xd
++ VSTOP = 0xe
++ VSUSP = 0xc
++ VSWTC = 0x9
++ VT1 = 0x10000
++ VTDLY = 0x10000
++ VTIME = 0x7
++ VWERASE = 0xa
++ WDIOC_GETBOOTSTATUS = 0x40045702
++ WDIOC_GETPRETIMEOUT = 0x40045709
++ WDIOC_GETSTATUS = 0x40045701
++ WDIOC_GETSUPPORT = 0x40285700
++ WDIOC_GETTEMP = 0x40045703
++ WDIOC_GETTIMELEFT = 0x4004570a
++ WDIOC_GETTIMEOUT = 0x40045707
++ WDIOC_KEEPALIVE = 0x40045705
++ WDIOC_SETOPTIONS = 0x40045704
++ WORDSIZE = 0x40
++ XCASE = 0x4000
++ XTABS = 0xc00
+ )
+
+ // Errors
+ const (
+- E2BIG = syscall.Errno(0x7)
+- EACCES = syscall.Errno(0xd)
+ EADDRINUSE = syscall.Errno(0x62)
+ EADDRNOTAVAIL = syscall.Errno(0x63)
+ EADV = syscall.Errno(0x44)
+ EAFNOSUPPORT = syscall.Errno(0x61)
+- EAGAIN = syscall.Errno(0xb)
+ EALREADY = syscall.Errno(0x72)
+ EBADE = syscall.Errno(0x34)
+- EBADF = syscall.Errno(0x9)
+ EBADFD = syscall.Errno(0x4d)
+ EBADMSG = syscall.Errno(0x4a)
+ EBADR = syscall.Errno(0x35)
+ EBADRQC = syscall.Errno(0x38)
+ EBADSLT = syscall.Errno(0x39)
+ EBFONT = syscall.Errno(0x3b)
+- EBUSY = syscall.Errno(0x10)
+ ECANCELED = syscall.Errno(0x7d)
+- ECHILD = syscall.Errno(0xa)
+ ECHRNG = syscall.Errno(0x2c)
+ ECOMM = syscall.Errno(0x46)
+ ECONNABORTED = syscall.Errno(0x67)
+@@ -1943,23 +562,15 @@ const (
+ EDEADLK = syscall.Errno(0x23)
+ EDEADLOCK = syscall.Errno(0x3a)
+ EDESTADDRREQ = syscall.Errno(0x59)
+- EDOM = syscall.Errno(0x21)
+ EDOTDOT = syscall.Errno(0x49)
+ EDQUOT = syscall.Errno(0x7a)
+- EEXIST = syscall.Errno(0x11)
+- EFAULT = syscall.Errno(0xe)
+- EFBIG = syscall.Errno(0x1b)
+ EHOSTDOWN = syscall.Errno(0x70)
+ EHOSTUNREACH = syscall.Errno(0x71)
+ EHWPOISON = syscall.Errno(0x85)
+ EIDRM = syscall.Errno(0x2b)
+ EILSEQ = syscall.Errno(0x54)
+ EINPROGRESS = syscall.Errno(0x73)
+- EINTR = syscall.Errno(0x4)
+- EINVAL = syscall.Errno(0x16)
+- EIO = syscall.Errno(0x5)
+ EISCONN = syscall.Errno(0x6a)
+- EISDIR = syscall.Errno(0x15)
+ EISNAM = syscall.Errno(0x78)
+ EKEYEXPIRED = syscall.Errno(0x7f)
+ EKEYREJECTED = syscall.Errno(0x81)
+@@ -1976,8 +587,6 @@ const (
+ ELNRNG = syscall.Errno(0x30)
+ ELOOP = syscall.Errno(0x28)
+ EMEDIUMTYPE = syscall.Errno(0x7c)
+- EMFILE = syscall.Errno(0x18)
+- EMLINK = syscall.Errno(0x1f)
+ EMSGSIZE = syscall.Errno(0x5a)
+ EMULTIHOP = syscall.Errno(0x48)
+ ENAMETOOLONG = syscall.Errno(0x24)
+@@ -1985,103 +594,70 @@ const (
+ ENETDOWN = syscall.Errno(0x64)
+ ENETRESET = syscall.Errno(0x66)
+ ENETUNREACH = syscall.Errno(0x65)
+- ENFILE = syscall.Errno(0x17)
+ ENOANO = syscall.Errno(0x37)
+ ENOBUFS = syscall.Errno(0x69)
+ ENOCSI = syscall.Errno(0x32)
+ ENODATA = syscall.Errno(0x3d)
+- ENODEV = syscall.Errno(0x13)
+- ENOENT = syscall.Errno(0x2)
+- ENOEXEC = syscall.Errno(0x8)
+ ENOKEY = syscall.Errno(0x7e)
+ ENOLCK = syscall.Errno(0x25)
+ ENOLINK = syscall.Errno(0x43)
+ ENOMEDIUM = syscall.Errno(0x7b)
+- ENOMEM = syscall.Errno(0xc)
+ ENOMSG = syscall.Errno(0x2a)
+ ENONET = syscall.Errno(0x40)
+ ENOPKG = syscall.Errno(0x41)
+ ENOPROTOOPT = syscall.Errno(0x5c)
+- ENOSPC = syscall.Errno(0x1c)
+ ENOSR = syscall.Errno(0x3f)
+ ENOSTR = syscall.Errno(0x3c)
+ ENOSYS = syscall.Errno(0x26)
+- ENOTBLK = syscall.Errno(0xf)
+ ENOTCONN = syscall.Errno(0x6b)
+- ENOTDIR = syscall.Errno(0x14)
+ ENOTEMPTY = syscall.Errno(0x27)
+ ENOTNAM = syscall.Errno(0x76)
+ ENOTRECOVERABLE = syscall.Errno(0x83)
+ ENOTSOCK = syscall.Errno(0x58)
+ ENOTSUP = syscall.Errno(0x5f)
+- ENOTTY = syscall.Errno(0x19)
+ ENOTUNIQ = syscall.Errno(0x4c)
+- ENXIO = syscall.Errno(0x6)
+ EOPNOTSUPP = syscall.Errno(0x5f)
+ EOVERFLOW = syscall.Errno(0x4b)
+ EOWNERDEAD = syscall.Errno(0x82)
+- EPERM = syscall.Errno(0x1)
+ EPFNOSUPPORT = syscall.Errno(0x60)
+- EPIPE = syscall.Errno(0x20)
+ EPROTO = syscall.Errno(0x47)
+ EPROTONOSUPPORT = syscall.Errno(0x5d)
+ EPROTOTYPE = syscall.Errno(0x5b)
+- ERANGE = syscall.Errno(0x22)
+ EREMCHG = syscall.Errno(0x4e)
+ EREMOTE = syscall.Errno(0x42)
+ EREMOTEIO = syscall.Errno(0x79)
+ ERESTART = syscall.Errno(0x55)
+ ERFKILL = syscall.Errno(0x84)
+- EROFS = syscall.Errno(0x1e)
+ ESHUTDOWN = syscall.Errno(0x6c)
+ ESOCKTNOSUPPORT = syscall.Errno(0x5e)
+- ESPIPE = syscall.Errno(0x1d)
+- ESRCH = syscall.Errno(0x3)
+ ESRMNT = syscall.Errno(0x45)
+ ESTALE = syscall.Errno(0x74)
+ ESTRPIPE = syscall.Errno(0x56)
+ ETIME = syscall.Errno(0x3e)
+ ETIMEDOUT = syscall.Errno(0x6e)
+ ETOOMANYREFS = syscall.Errno(0x6d)
+- ETXTBSY = syscall.Errno(0x1a)
+ EUCLEAN = syscall.Errno(0x75)
+ EUNATCH = syscall.Errno(0x31)
+ EUSERS = syscall.Errno(0x57)
+- EWOULDBLOCK = syscall.Errno(0xb)
+- EXDEV = syscall.Errno(0x12)
+ EXFULL = syscall.Errno(0x36)
+ )
+
+ // Signals
+ const (
+- SIGABRT = syscall.Signal(0x6)
+- SIGALRM = syscall.Signal(0xe)
+ SIGBUS = syscall.Signal(0x7)
+ SIGCHLD = syscall.Signal(0x11)
+ SIGCLD = syscall.Signal(0x11)
+ SIGCONT = syscall.Signal(0x12)
+- SIGFPE = syscall.Signal(0x8)
+- SIGHUP = syscall.Signal(0x1)
+- SIGILL = syscall.Signal(0x4)
+- SIGINT = syscall.Signal(0x2)
+ SIGIO = syscall.Signal(0x1d)
+- SIGIOT = syscall.Signal(0x6)
+- SIGKILL = syscall.Signal(0x9)
+- SIGPIPE = syscall.Signal(0xd)
+ SIGPOLL = syscall.Signal(0x1d)
+ SIGPROF = syscall.Signal(0x1b)
+ SIGPWR = syscall.Signal(0x1e)
+- SIGQUIT = syscall.Signal(0x3)
+- SIGSEGV = syscall.Signal(0xb)
+ SIGSTKFLT = syscall.Signal(0x10)
+ SIGSTOP = syscall.Signal(0x13)
+ SIGSYS = syscall.Signal(0x1f)
+- SIGTERM = syscall.Signal(0xf)
+- SIGTRAP = syscall.Signal(0x5)
+ SIGTSTP = syscall.Signal(0x14)
+ SIGTTIN = syscall.Signal(0x15)
+ SIGTTOU = syscall.Signal(0x16)
+- SIGUNUSED = syscall.Signal(0x1f)
+ SIGURG = syscall.Signal(0x17)
+ SIGUSR1 = syscall.Signal(0xa)
+ SIGUSR2 = syscall.Signal(0xc)
+@@ -2092,172 +668,180 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "no such device or address",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource temporarily unavailable",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device or resource busy",
+- 17: "file exists",
+- 18: "invalid cross-device link",
+- 19: "no such device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "numerical result out of range",
+- 35: "resource deadlock avoided",
+- 36: "file name too long",
+- 37: "no locks available",
+- 38: "function not implemented",
+- 39: "directory not empty",
+- 40: "too many levels of symbolic links",
+- 42: "no message of desired type",
+- 43: "identifier removed",
+- 44: "channel number out of range",
+- 45: "level 2 not synchronized",
+- 46: "level 3 halted",
+- 47: "level 3 reset",
+- 48: "link number out of range",
+- 49: "protocol driver not attached",
+- 50: "no CSI structure available",
+- 51: "level 2 halted",
+- 52: "invalid exchange",
+- 53: "invalid request descriptor",
+- 54: "exchange full",
+- 55: "no anode",
+- 56: "invalid request code",
+- 57: "invalid slot",
+- 58: "file locking deadlock error",
+- 59: "bad font file format",
+- 60: "device not a stream",
+- 61: "no data available",
+- 62: "timer expired",
+- 63: "out of streams resources",
+- 64: "machine is not on the network",
+- 65: "package not installed",
+- 66: "object is remote",
+- 67: "link has been severed",
+- 68: "advertise error",
+- 69: "srmount error",
+- 70: "communication error on send",
+- 71: "protocol error",
+- 72: "multihop attempted",
+- 73: "RFS specific error",
+- 74: "bad message",
+- 75: "value too large for defined data type",
+- 76: "name not unique on network",
+- 77: "file descriptor in bad state",
+- 78: "remote address changed",
+- 79: "can not access a needed shared library",
+- 80: "accessing a corrupted shared library",
+- 81: ".lib section in a.out corrupted",
+- 82: "attempting to link in too many shared libraries",
+- 83: "cannot exec a shared library directly",
+- 84: "invalid or incomplete multibyte or wide character",
+- 85: "interrupted system call should be restarted",
+- 86: "streams pipe error",
+- 87: "too many users",
+- 88: "socket operation on non-socket",
+- 89: "destination address required",
+- 90: "message too long",
+- 91: "protocol wrong type for socket",
+- 92: "protocol not available",
+- 93: "protocol not supported",
+- 94: "socket type not supported",
+- 95: "operation not supported",
+- 96: "protocol family not supported",
+- 97: "address family not supported by protocol",
+- 98: "address already in use",
+- 99: "cannot assign requested address",
+- 100: "network is down",
+- 101: "network is unreachable",
+- 102: "network dropped connection on reset",
+- 103: "software caused connection abort",
+- 104: "connection reset by peer",
+- 105: "no buffer space available",
+- 106: "transport endpoint is already connected",
+- 107: "transport endpoint is not connected",
+- 108: "cannot send after transport endpoint shutdown",
+- 109: "too many references: cannot splice",
+- 110: "connection timed out",
+- 111: "connection refused",
+- 112: "host is down",
+- 113: "no route to host",
+- 114: "operation already in progress",
+- 115: "operation now in progress",
+- 116: "stale file handle",
+- 117: "structure needs cleaning",
+- 118: "not a XENIX named type file",
+- 119: "no XENIX semaphores available",
+- 120: "is a named type file",
+- 121: "remote I/O error",
+- 122: "disk quota exceeded",
+- 123: "no medium found",
+- 124: "wrong medium type",
+- 125: "operation canceled",
+- 126: "required key not available",
+- 127: "key has expired",
+- 128: "key has been revoked",
+- 129: "key was rejected by service",
+- 130: "owner died",
+- 131: "state not recoverable",
+- 132: "operation not possible due to RF-kill",
+- 133: "memory page has hardware error",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "no such device or address"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EAGAIN", "resource temporarily unavailable"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device or resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "invalid cross-device link"},
++ {19, "ENODEV", "no such device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "numerical result out of range"},
++ {35, "EDEADLK", "resource deadlock avoided"},
++ {36, "ENAMETOOLONG", "file name too long"},
++ {37, "ENOLCK", "no locks available"},
++ {38, "ENOSYS", "function not implemented"},
++ {39, "ENOTEMPTY", "directory not empty"},
++ {40, "ELOOP", "too many levels of symbolic links"},
++ {42, "ENOMSG", "no message of desired type"},
++ {43, "EIDRM", "identifier removed"},
++ {44, "ECHRNG", "channel number out of range"},
++ {45, "EL2NSYNC", "level 2 not synchronized"},
++ {46, "EL3HLT", "level 3 halted"},
++ {47, "EL3RST", "level 3 reset"},
++ {48, "ELNRNG", "link number out of range"},
++ {49, "EUNATCH", "protocol driver not attached"},
++ {50, "ENOCSI", "no CSI structure available"},
++ {51, "EL2HLT", "level 2 halted"},
++ {52, "EBADE", "invalid exchange"},
++ {53, "EBADR", "invalid request descriptor"},
++ {54, "EXFULL", "exchange full"},
++ {55, "ENOANO", "no anode"},
++ {56, "EBADRQC", "invalid request code"},
++ {57, "EBADSLT", "invalid slot"},
++ {58, "EDEADLOCK", "file locking deadlock error"},
++ {59, "EBFONT", "bad font file format"},
++ {60, "ENOSTR", "device not a stream"},
++ {61, "ENODATA", "no data available"},
++ {62, "ETIME", "timer expired"},
++ {63, "ENOSR", "out of streams resources"},
++ {64, "ENONET", "machine is not on the network"},
++ {65, "ENOPKG", "package not installed"},
++ {66, "EREMOTE", "object is remote"},
++ {67, "ENOLINK", "link has been severed"},
++ {68, "EADV", "advertise error"},
++ {69, "ESRMNT", "srmount error"},
++ {70, "ECOMM", "communication error on send"},
++ {71, "EPROTO", "protocol error"},
++ {72, "EMULTIHOP", "multihop attempted"},
++ {73, "EDOTDOT", "RFS specific error"},
++ {74, "EBADMSG", "bad message"},
++ {75, "EOVERFLOW", "value too large for defined data type"},
++ {76, "ENOTUNIQ", "name not unique on network"},
++ {77, "EBADFD", "file descriptor in bad state"},
++ {78, "EREMCHG", "remote address changed"},
++ {79, "ELIBACC", "can not access a needed shared library"},
++ {80, "ELIBBAD", "accessing a corrupted shared library"},
++ {81, "ELIBSCN", ".lib section in a.out corrupted"},
++ {82, "ELIBMAX", "attempting to link in too many shared libraries"},
++ {83, "ELIBEXEC", "cannot exec a shared library directly"},
++ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"},
++ {85, "ERESTART", "interrupted system call should be restarted"},
++ {86, "ESTRPIPE", "streams pipe error"},
++ {87, "EUSERS", "too many users"},
++ {88, "ENOTSOCK", "socket operation on non-socket"},
++ {89, "EDESTADDRREQ", "destination address required"},
++ {90, "EMSGSIZE", "message too long"},
++ {91, "EPROTOTYPE", "protocol wrong type for socket"},
++ {92, "ENOPROTOOPT", "protocol not available"},
++ {93, "EPROTONOSUPPORT", "protocol not supported"},
++ {94, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {95, "ENOTSUP", "operation not supported"},
++ {96, "EPFNOSUPPORT", "protocol family not supported"},
++ {97, "EAFNOSUPPORT", "address family not supported by protocol"},
++ {98, "EADDRINUSE", "address already in use"},
++ {99, "EADDRNOTAVAIL", "cannot assign requested address"},
++ {100, "ENETDOWN", "network is down"},
++ {101, "ENETUNREACH", "network is unreachable"},
++ {102, "ENETRESET", "network dropped connection on reset"},
++ {103, "ECONNABORTED", "software caused connection abort"},
++ {104, "ECONNRESET", "connection reset by peer"},
++ {105, "ENOBUFS", "no buffer space available"},
++ {106, "EISCONN", "transport endpoint is already connected"},
++ {107, "ENOTCONN", "transport endpoint is not connected"},
++ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
++ {109, "ETOOMANYREFS", "too many references: cannot splice"},
++ {110, "ETIMEDOUT", "connection timed out"},
++ {111, "ECONNREFUSED", "connection refused"},
++ {112, "EHOSTDOWN", "host is down"},
++ {113, "EHOSTUNREACH", "no route to host"},
++ {114, "EALREADY", "operation already in progress"},
++ {115, "EINPROGRESS", "operation now in progress"},
++ {116, "ESTALE", "stale file handle"},
++ {117, "EUCLEAN", "structure needs cleaning"},
++ {118, "ENOTNAM", "not a XENIX named type file"},
++ {119, "ENAVAIL", "no XENIX semaphores available"},
++ {120, "EISNAM", "is a named type file"},
++ {121, "EREMOTEIO", "remote I/O error"},
++ {122, "EDQUOT", "disk quota exceeded"},
++ {123, "ENOMEDIUM", "no medium found"},
++ {124, "EMEDIUMTYPE", "wrong medium type"},
++ {125, "ECANCELED", "operation canceled"},
++ {126, "ENOKEY", "required key not available"},
++ {127, "EKEYEXPIRED", "key has expired"},
++ {128, "EKEYREVOKED", "key has been revoked"},
++ {129, "EKEYREJECTED", "key was rejected by service"},
++ {130, "EOWNERDEAD", "owner died"},
++ {131, "ENOTRECOVERABLE", "state not recoverable"},
++ {132, "ERFKILL", "operation not possible due to RF-kill"},
++ {133, "EHWPOISON", "memory page has hardware error"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/breakpoint trap",
+- 6: "aborted",
+- 7: "bus error",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "user defined signal 1",
+- 11: "segmentation fault",
+- 12: "user defined signal 2",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "stack fault",
+- 17: "child exited",
+- 18: "continued",
+- 19: "stopped (signal)",
+- 20: "stopped",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "urgent I/O condition",
+- 24: "CPU time limit exceeded",
+- 25: "file size limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window changed",
+- 29: "I/O possible",
+- 30: "power failure",
+- 31: "bad system call",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/breakpoint trap"},
++ {6, "SIGABRT", "aborted"},
++ {7, "SIGBUS", "bus error"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGUSR1", "user defined signal 1"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGUSR2", "user defined signal 2"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGSTKFLT", "stack fault"},
++ {17, "SIGCHLD", "child exited"},
++ {18, "SIGCONT", "continued"},
++ {19, "SIGSTOP", "stopped (signal)"},
++ {20, "SIGTSTP", "stopped"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGURG", "urgent I/O condition"},
++ {24, "SIGXCPU", "CPU time limit exceeded"},
++ {25, "SIGXFSZ", "file size limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window changed"},
++ {29, "SIGIO", "I/O possible"},
++ {30, "SIGPWR", "power failure"},
++ {31, "SIGSYS", "bad system call"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go
+new file mode 100644
+index 00000000..6a0b2d29
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go
+@@ -0,0 +1,771 @@
++// mkerrors.sh -Wall -Werror -static -I/tmp/include
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build riscv64,linux
++
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
++// cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
++
++package unix
++
++import "syscall"
++
++const (
++ B1000000 = 0x1008
++ B115200 = 0x1002
++ B1152000 = 0x1009
++ B1500000 = 0x100a
++ B2000000 = 0x100b
++ B230400 = 0x1003
++ B2500000 = 0x100c
++ B3000000 = 0x100d
++ B3500000 = 0x100e
++ B4000000 = 0x100f
++ B460800 = 0x1004
++ B500000 = 0x1005
++ B57600 = 0x1001
++ B576000 = 0x1006
++ B921600 = 0x1007
++ BLKBSZGET = 0x80081270
++ BLKBSZSET = 0x40081271
++ BLKFLSBUF = 0x1261
++ BLKFRAGET = 0x1265
++ BLKFRASET = 0x1264
++ BLKGETSIZE = 0x1260
++ BLKGETSIZE64 = 0x80081272
++ BLKPBSZGET = 0x127b
++ BLKRAGET = 0x1263
++ BLKRASET = 0x1262
++ BLKROGET = 0x125e
++ BLKROSET = 0x125d
++ BLKRRPART = 0x125f
++ BLKSECTGET = 0x1267
++ BLKSECTSET = 0x1266
++ BLKSSZGET = 0x1268
++ BOTHER = 0x1000
++ BS1 = 0x2000
++ BSDLY = 0x2000
++ CBAUD = 0x100f
++ CBAUDEX = 0x1000
++ CIBAUD = 0x100f0000
++ CLOCAL = 0x800
++ CR1 = 0x200
++ CR2 = 0x400
++ CR3 = 0x600
++ CRDLY = 0x600
++ CREAD = 0x80
++ CS6 = 0x10
++ CS7 = 0x20
++ CS8 = 0x30
++ CSIZE = 0x30
++ CSTOPB = 0x40
++ ECHOCTL = 0x200
++ ECHOE = 0x10
++ ECHOK = 0x20
++ ECHOKE = 0x800
++ ECHONL = 0x40
++ ECHOPRT = 0x400
++ EFD_CLOEXEC = 0x80000
++ EFD_NONBLOCK = 0x800
++ EPOLL_CLOEXEC = 0x80000
++ EXTPROC = 0x10000
++ FF1 = 0x8000
++ FFDLY = 0x8000
++ FLUSHO = 0x1000
++ FS_IOC_ENABLE_VERITY = 0x40806685
++ FS_IOC_GETFLAGS = 0x80086601
++ FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
++ FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
++ FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
++ F_GETLK = 0x5
++ F_GETLK64 = 0x5
++ F_GETOWN = 0x9
++ F_RDLCK = 0x0
++ F_SETLK = 0x6
++ F_SETLK64 = 0x6
++ F_SETLKW = 0x7
++ F_SETLKW64 = 0x7
++ F_SETOWN = 0x8
++ F_UNLCK = 0x2
++ F_WRLCK = 0x1
++ HUPCL = 0x400
++ ICANON = 0x2
++ IEXTEN = 0x8000
++ IN_CLOEXEC = 0x80000
++ IN_NONBLOCK = 0x800
++ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x7b9
++ ISIG = 0x1
++ IUCLC = 0x200
++ IXOFF = 0x1000
++ IXON = 0x400
++ MAP_ANON = 0x20
++ MAP_ANONYMOUS = 0x20
++ MAP_DENYWRITE = 0x800
++ MAP_EXECUTABLE = 0x1000
++ MAP_GROWSDOWN = 0x100
++ MAP_HUGETLB = 0x40000
++ MAP_LOCKED = 0x2000
++ MAP_NONBLOCK = 0x10000
++ MAP_NORESERVE = 0x4000
++ MAP_POPULATE = 0x8000
++ MAP_STACK = 0x20000
++ MAP_SYNC = 0x80000
++ MCL_CURRENT = 0x1
++ MCL_FUTURE = 0x2
++ MCL_ONFAULT = 0x4
++ NFDBITS = 0x40
++ NLDLY = 0x100
++ NOFLSH = 0x80
++ NS_GET_NSTYPE = 0xb703
++ NS_GET_OWNER_UID = 0xb704
++ NS_GET_PARENT = 0xb702
++ NS_GET_USERNS = 0xb701
++ OLCUC = 0x2
++ ONLCR = 0x4
++ O_APPEND = 0x400
++ O_ASYNC = 0x2000
++ O_CLOEXEC = 0x80000
++ O_CREAT = 0x40
++ O_DIRECT = 0x4000
++ O_DIRECTORY = 0x10000
++ O_DSYNC = 0x1000
++ O_EXCL = 0x80
++ O_FSYNC = 0x101000
++ O_LARGEFILE = 0x0
++ O_NDELAY = 0x800
++ O_NOATIME = 0x40000
++ O_NOCTTY = 0x100
++ O_NOFOLLOW = 0x20000
++ O_NONBLOCK = 0x800
++ O_PATH = 0x200000
++ O_RSYNC = 0x101000
++ O_SYNC = 0x101000
++ O_TMPFILE = 0x410000
++ O_TRUNC = 0x200
++ PARENB = 0x100
++ PARODD = 0x200
++ PENDIN = 0x4000
++ PERF_EVENT_IOC_DISABLE = 0x2401
++ PERF_EVENT_IOC_ENABLE = 0x2400
++ PERF_EVENT_IOC_ID = 0x80082407
++ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x4008240b
++ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
++ PERF_EVENT_IOC_PERIOD = 0x40082404
++ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
++ PERF_EVENT_IOC_REFRESH = 0x2402
++ PERF_EVENT_IOC_RESET = 0x2403
++ PERF_EVENT_IOC_SET_BPF = 0x40042408
++ PERF_EVENT_IOC_SET_FILTER = 0x40082406
++ PERF_EVENT_IOC_SET_OUTPUT = 0x2405
++ PPPIOCATTACH = 0x4004743d
++ PPPIOCATTCHAN = 0x40047438
++ PPPIOCCONNECT = 0x4004743a
++ PPPIOCDETACH = 0x4004743c
++ PPPIOCDISCONN = 0x7439
++ PPPIOCGASYNCMAP = 0x80047458
++ PPPIOCGCHAN = 0x80047437
++ PPPIOCGDEBUG = 0x80047441
++ PPPIOCGFLAGS = 0x8004745a
++ PPPIOCGIDLE = 0x8010743f
++ PPPIOCGIDLE32 = 0x8008743f
++ PPPIOCGIDLE64 = 0x8010743f
++ PPPIOCGL2TPSTATS = 0x80487436
++ PPPIOCGMRU = 0x80047453
++ PPPIOCGRASYNCMAP = 0x80047455
++ PPPIOCGUNIT = 0x80047456
++ PPPIOCGXASYNCMAP = 0x80207450
++ PPPIOCSACTIVE = 0x40107446
++ PPPIOCSASYNCMAP = 0x40047457
++ PPPIOCSCOMPRESS = 0x4010744d
++ PPPIOCSDEBUG = 0x40047440
++ PPPIOCSFLAGS = 0x40047459
++ PPPIOCSMAXCID = 0x40047451
++ PPPIOCSMRRU = 0x4004743b
++ PPPIOCSMRU = 0x40047452
++ PPPIOCSNPMODE = 0x4008744b
++ PPPIOCSPASS = 0x40107447
++ PPPIOCSRASYNCMAP = 0x40047454
++ PPPIOCSXASYNCMAP = 0x4020744f
++ PPPIOCXFERUNIT = 0x744e
++ PR_SET_PTRACER_ANY = 0xffffffffffffffff
++ RLIMIT_AS = 0x9
++ RLIMIT_MEMLOCK = 0x8
++ RLIMIT_NOFILE = 0x7
++ RLIMIT_NPROC = 0x6
++ RLIMIT_RSS = 0x5
++ RNDADDENTROPY = 0x40085203
++ RNDADDTOENTCNT = 0x40045201
++ RNDCLEARPOOL = 0x5206
++ RNDGETENTCNT = 0x80045200
++ RNDGETPOOL = 0x80085202
++ RNDRESEEDCRNG = 0x5207
++ RNDZAPENTCNT = 0x5204
++ RTC_AIE_OFF = 0x7002
++ RTC_AIE_ON = 0x7001
++ RTC_ALM_READ = 0x80247008
++ RTC_ALM_SET = 0x40247007
++ RTC_EPOCH_READ = 0x8008700d
++ RTC_EPOCH_SET = 0x4008700e
++ RTC_IRQP_READ = 0x8008700b
++ RTC_IRQP_SET = 0x4008700c
++ RTC_PIE_OFF = 0x7006
++ RTC_PIE_ON = 0x7005
++ RTC_PLL_GET = 0x80207011
++ RTC_PLL_SET = 0x40207012
++ RTC_RD_TIME = 0x80247009
++ RTC_SET_TIME = 0x4024700a
++ RTC_UIE_OFF = 0x7004
++ RTC_UIE_ON = 0x7003
++ RTC_VL_CLR = 0x7014
++ RTC_VL_READ = 0x80047013
++ RTC_WIE_OFF = 0x7010
++ RTC_WIE_ON = 0x700f
++ RTC_WKALM_RD = 0x80287010
++ RTC_WKALM_SET = 0x4028700f
++ SCM_TIMESTAMPING = 0x25
++ SCM_TIMESTAMPING_OPT_STATS = 0x36
++ SCM_TIMESTAMPING_PKTINFO = 0x3a
++ SCM_TIMESTAMPNS = 0x23
++ SCM_TXTIME = 0x3d
++ SCM_WIFI_STATUS = 0x29
++ SFD_CLOEXEC = 0x80000
++ SFD_NONBLOCK = 0x800
++ SIOCATMARK = 0x8905
++ SIOCGPGRP = 0x8904
++ SIOCGSTAMPNS_NEW = 0x80108907
++ SIOCGSTAMP_NEW = 0x80108906
++ SIOCINQ = 0x541b
++ SIOCOUTQ = 0x5411
++ SIOCSPGRP = 0x8902
++ SOCK_CLOEXEC = 0x80000
++ SOCK_DGRAM = 0x2
++ SOCK_NONBLOCK = 0x800
++ SOCK_STREAM = 0x1
++ SOL_SOCKET = 0x1
++ SO_ACCEPTCONN = 0x1e
++ SO_ATTACH_BPF = 0x32
++ SO_ATTACH_REUSEPORT_CBPF = 0x33
++ SO_ATTACH_REUSEPORT_EBPF = 0x34
++ SO_BINDTODEVICE = 0x19
++ SO_BINDTOIFINDEX = 0x3e
++ SO_BPF_EXTENSIONS = 0x30
++ SO_BROADCAST = 0x6
++ SO_BSDCOMPAT = 0xe
++ SO_BUSY_POLL = 0x2e
++ SO_CNX_ADVICE = 0x35
++ SO_COOKIE = 0x39
++ SO_DETACH_REUSEPORT_BPF = 0x44
++ SO_DOMAIN = 0x27
++ SO_DONTROUTE = 0x5
++ SO_ERROR = 0x4
++ SO_INCOMING_CPU = 0x31
++ SO_INCOMING_NAPI_ID = 0x38
++ SO_KEEPALIVE = 0x9
++ SO_LINGER = 0xd
++ SO_LOCK_FILTER = 0x2c
++ SO_MARK = 0x24
++ SO_MAX_PACING_RATE = 0x2f
++ SO_MEMINFO = 0x37
++ SO_NOFCS = 0x2b
++ SO_OOBINLINE = 0xa
++ SO_PASSCRED = 0x10
++ SO_PASSSEC = 0x22
++ SO_PEEK_OFF = 0x2a
++ SO_PEERCRED = 0x11
++ SO_PEERGROUPS = 0x3b
++ SO_PEERSEC = 0x1f
++ SO_PROTOCOL = 0x26
++ SO_RCVBUF = 0x8
++ SO_RCVBUFFORCE = 0x21
++ SO_RCVLOWAT = 0x12
++ SO_RCVTIMEO = 0x14
++ SO_RCVTIMEO_NEW = 0x42
++ SO_RCVTIMEO_OLD = 0x14
++ SO_REUSEADDR = 0x2
++ SO_REUSEPORT = 0xf
++ SO_RXQ_OVFL = 0x28
++ SO_SECURITY_AUTHENTICATION = 0x16
++ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
++ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
++ SO_SELECT_ERR_QUEUE = 0x2d
++ SO_SNDBUF = 0x7
++ SO_SNDBUFFORCE = 0x20
++ SO_SNDLOWAT = 0x13
++ SO_SNDTIMEO = 0x15
++ SO_SNDTIMEO_NEW = 0x43
++ SO_SNDTIMEO_OLD = 0x15
++ SO_TIMESTAMPING = 0x25
++ SO_TIMESTAMPING_NEW = 0x41
++ SO_TIMESTAMPING_OLD = 0x25
++ SO_TIMESTAMPNS = 0x23
++ SO_TIMESTAMPNS_NEW = 0x40
++ SO_TIMESTAMPNS_OLD = 0x23
++ SO_TIMESTAMP_NEW = 0x3f
++ SO_TXTIME = 0x3d
++ SO_TYPE = 0x3
++ SO_WIFI_STATUS = 0x29
++ SO_ZEROCOPY = 0x3c
++ TAB1 = 0x800
++ TAB2 = 0x1000
++ TAB3 = 0x1800
++ TABDLY = 0x1800
++ TCFLSH = 0x540b
++ TCGETA = 0x5405
++ TCGETS = 0x5401
++ TCGETS2 = 0x802c542a
++ TCGETX = 0x5432
++ TCSAFLUSH = 0x2
++ TCSBRK = 0x5409
++ TCSBRKP = 0x5425
++ TCSETA = 0x5406
++ TCSETAF = 0x5408
++ TCSETAW = 0x5407
++ TCSETS = 0x5402
++ TCSETS2 = 0x402c542b
++ TCSETSF = 0x5404
++ TCSETSF2 = 0x402c542d
++ TCSETSW = 0x5403
++ TCSETSW2 = 0x402c542c
++ TCSETX = 0x5433
++ TCSETXF = 0x5434
++ TCSETXW = 0x5435
++ TCXONC = 0x540a
++ TIOCCBRK = 0x5428
++ TIOCCONS = 0x541d
++ TIOCEXCL = 0x540c
++ TIOCGDEV = 0x80045432
++ TIOCGETD = 0x5424
++ TIOCGEXCL = 0x80045440
++ TIOCGICOUNT = 0x545d
++ TIOCGISO7816 = 0x80285442
++ TIOCGLCKTRMIOS = 0x5456
++ TIOCGPGRP = 0x540f
++ TIOCGPKT = 0x80045438
++ TIOCGPTLCK = 0x80045439
++ TIOCGPTN = 0x80045430
++ TIOCGPTPEER = 0x5441
++ TIOCGRS485 = 0x542e
++ TIOCGSERIAL = 0x541e
++ TIOCGSID = 0x5429
++ TIOCGSOFTCAR = 0x5419
++ TIOCGWINSZ = 0x5413
++ TIOCINQ = 0x541b
++ TIOCLINUX = 0x541c
++ TIOCMBIC = 0x5417
++ TIOCMBIS = 0x5416
++ TIOCMGET = 0x5415
++ TIOCMIWAIT = 0x545c
++ TIOCMSET = 0x5418
++ TIOCM_CAR = 0x40
++ TIOCM_CD = 0x40
++ TIOCM_CTS = 0x20
++ TIOCM_DSR = 0x100
++ TIOCM_RI = 0x80
++ TIOCM_RNG = 0x80
++ TIOCM_SR = 0x10
++ TIOCM_ST = 0x8
++ TIOCNOTTY = 0x5422
++ TIOCNXCL = 0x540d
++ TIOCOUTQ = 0x5411
++ TIOCPKT = 0x5420
++ TIOCSBRK = 0x5427
++ TIOCSCTTY = 0x540e
++ TIOCSERCONFIG = 0x5453
++ TIOCSERGETLSR = 0x5459
++ TIOCSERGETMULTI = 0x545a
++ TIOCSERGSTRUCT = 0x5458
++ TIOCSERGWILD = 0x5454
++ TIOCSERSETMULTI = 0x545b
++ TIOCSERSWILD = 0x5455
++ TIOCSER_TEMT = 0x1
++ TIOCSETD = 0x5423
++ TIOCSIG = 0x40045436
++ TIOCSISO7816 = 0xc0285443
++ TIOCSLCKTRMIOS = 0x5457
++ TIOCSPGRP = 0x5410
++ TIOCSPTLCK = 0x40045431
++ TIOCSRS485 = 0x542f
++ TIOCSSERIAL = 0x541f
++ TIOCSSOFTCAR = 0x541a
++ TIOCSTI = 0x5412
++ TIOCSWINSZ = 0x5414
++ TIOCVHANGUP = 0x5437
++ TOSTOP = 0x100
++ TUNATTACHFILTER = 0x401054d5
++ TUNDETACHFILTER = 0x401054d6
++ TUNGETDEVNETNS = 0x54e3
++ TUNGETFEATURES = 0x800454cf
++ TUNGETFILTER = 0x801054db
++ TUNGETIFF = 0x800454d2
++ TUNGETSNDBUF = 0x800454d3
++ TUNGETVNETBE = 0x800454df
++ TUNGETVNETHDRSZ = 0x800454d7
++ TUNGETVNETLE = 0x800454dd
++ TUNSETCARRIER = 0x400454e2
++ TUNSETDEBUG = 0x400454c9
++ TUNSETFILTEREBPF = 0x800454e1
++ TUNSETGROUP = 0x400454ce
++ TUNSETIFF = 0x400454ca
++ TUNSETIFINDEX = 0x400454da
++ TUNSETLINK = 0x400454cd
++ TUNSETNOCSUM = 0x400454c8
++ TUNSETOFFLOAD = 0x400454d0
++ TUNSETOWNER = 0x400454cc
++ TUNSETPERSIST = 0x400454cb
++ TUNSETQUEUE = 0x400454d9
++ TUNSETSNDBUF = 0x400454d4
++ TUNSETSTEERINGEBPF = 0x800454e0
++ TUNSETTXFILTER = 0x400454d1
++ TUNSETVNETBE = 0x400454de
++ TUNSETVNETHDRSZ = 0x400454d8
++ TUNSETVNETLE = 0x400454dc
++ UBI_IOCATT = 0x40186f40
++ UBI_IOCDET = 0x40046f41
++ UBI_IOCEBCH = 0x40044f02
++ UBI_IOCEBER = 0x40044f01
++ UBI_IOCEBISMAP = 0x80044f05
++ UBI_IOCEBMAP = 0x40084f03
++ UBI_IOCEBUNMAP = 0x40044f04
++ UBI_IOCMKVOL = 0x40986f00
++ UBI_IOCRMVOL = 0x40046f01
++ UBI_IOCRNVOL = 0x51106f03
++ UBI_IOCRPEB = 0x40046f04
++ UBI_IOCRSVOL = 0x400c6f02
++ UBI_IOCSETVOLPROP = 0x40104f06
++ UBI_IOCSPEB = 0x40046f05
++ UBI_IOCVOLCRBLK = 0x40804f07
++ UBI_IOCVOLRMBLK = 0x4f08
++ UBI_IOCVOLUP = 0x40084f00
++ VDISCARD = 0xd
++ VEOF = 0x4
++ VEOL = 0xb
++ VEOL2 = 0x10
++ VMIN = 0x6
++ VREPRINT = 0xc
++ VSTART = 0x8
++ VSTOP = 0x9
++ VSUSP = 0xa
++ VSWTC = 0x7
++ VT1 = 0x4000
++ VTDLY = 0x4000
++ VTIME = 0x5
++ VWERASE = 0xe
++ WDIOC_GETBOOTSTATUS = 0x80045702
++ WDIOC_GETPRETIMEOUT = 0x80045709
++ WDIOC_GETSTATUS = 0x80045701
++ WDIOC_GETSUPPORT = 0x80285700
++ WDIOC_GETTEMP = 0x80045703
++ WDIOC_GETTIMELEFT = 0x8004570a
++ WDIOC_GETTIMEOUT = 0x80045707
++ WDIOC_KEEPALIVE = 0x80045705
++ WDIOC_SETOPTIONS = 0x80045704
++ WORDSIZE = 0x40
++ XCASE = 0x4
++ XTABS = 0x1800
++)
++
++// Errors
++const (
++ EADDRINUSE = syscall.Errno(0x62)
++ EADDRNOTAVAIL = syscall.Errno(0x63)
++ EADV = syscall.Errno(0x44)
++ EAFNOSUPPORT = syscall.Errno(0x61)
++ EALREADY = syscall.Errno(0x72)
++ EBADE = syscall.Errno(0x34)
++ EBADFD = syscall.Errno(0x4d)
++ EBADMSG = syscall.Errno(0x4a)
++ EBADR = syscall.Errno(0x35)
++ EBADRQC = syscall.Errno(0x38)
++ EBADSLT = syscall.Errno(0x39)
++ EBFONT = syscall.Errno(0x3b)
++ ECANCELED = syscall.Errno(0x7d)
++ ECHRNG = syscall.Errno(0x2c)
++ ECOMM = syscall.Errno(0x46)
++ ECONNABORTED = syscall.Errno(0x67)
++ ECONNREFUSED = syscall.Errno(0x6f)
++ ECONNRESET = syscall.Errno(0x68)
++ EDEADLK = syscall.Errno(0x23)
++ EDEADLOCK = syscall.Errno(0x23)
++ EDESTADDRREQ = syscall.Errno(0x59)
++ EDOTDOT = syscall.Errno(0x49)
++ EDQUOT = syscall.Errno(0x7a)
++ EHOSTDOWN = syscall.Errno(0x70)
++ EHOSTUNREACH = syscall.Errno(0x71)
++ EHWPOISON = syscall.Errno(0x85)
++ EIDRM = syscall.Errno(0x2b)
++ EILSEQ = syscall.Errno(0x54)
++ EINPROGRESS = syscall.Errno(0x73)
++ EISCONN = syscall.Errno(0x6a)
++ EISNAM = syscall.Errno(0x78)
++ EKEYEXPIRED = syscall.Errno(0x7f)
++ EKEYREJECTED = syscall.Errno(0x81)
++ EKEYREVOKED = syscall.Errno(0x80)
++ EL2HLT = syscall.Errno(0x33)
++ EL2NSYNC = syscall.Errno(0x2d)
++ EL3HLT = syscall.Errno(0x2e)
++ EL3RST = syscall.Errno(0x2f)
++ ELIBACC = syscall.Errno(0x4f)
++ ELIBBAD = syscall.Errno(0x50)
++ ELIBEXEC = syscall.Errno(0x53)
++ ELIBMAX = syscall.Errno(0x52)
++ ELIBSCN = syscall.Errno(0x51)
++ ELNRNG = syscall.Errno(0x30)
++ ELOOP = syscall.Errno(0x28)
++ EMEDIUMTYPE = syscall.Errno(0x7c)
++ EMSGSIZE = syscall.Errno(0x5a)
++ EMULTIHOP = syscall.Errno(0x48)
++ ENAMETOOLONG = syscall.Errno(0x24)
++ ENAVAIL = syscall.Errno(0x77)
++ ENETDOWN = syscall.Errno(0x64)
++ ENETRESET = syscall.Errno(0x66)
++ ENETUNREACH = syscall.Errno(0x65)
++ ENOANO = syscall.Errno(0x37)
++ ENOBUFS = syscall.Errno(0x69)
++ ENOCSI = syscall.Errno(0x32)
++ ENODATA = syscall.Errno(0x3d)
++ ENOKEY = syscall.Errno(0x7e)
++ ENOLCK = syscall.Errno(0x25)
++ ENOLINK = syscall.Errno(0x43)
++ ENOMEDIUM = syscall.Errno(0x7b)
++ ENOMSG = syscall.Errno(0x2a)
++ ENONET = syscall.Errno(0x40)
++ ENOPKG = syscall.Errno(0x41)
++ ENOPROTOOPT = syscall.Errno(0x5c)
++ ENOSR = syscall.Errno(0x3f)
++ ENOSTR = syscall.Errno(0x3c)
++ ENOSYS = syscall.Errno(0x26)
++ ENOTCONN = syscall.Errno(0x6b)
++ ENOTEMPTY = syscall.Errno(0x27)
++ ENOTNAM = syscall.Errno(0x76)
++ ENOTRECOVERABLE = syscall.Errno(0x83)
++ ENOTSOCK = syscall.Errno(0x58)
++ ENOTSUP = syscall.Errno(0x5f)
++ ENOTUNIQ = syscall.Errno(0x4c)
++ EOPNOTSUPP = syscall.Errno(0x5f)
++ EOVERFLOW = syscall.Errno(0x4b)
++ EOWNERDEAD = syscall.Errno(0x82)
++ EPFNOSUPPORT = syscall.Errno(0x60)
++ EPROTO = syscall.Errno(0x47)
++ EPROTONOSUPPORT = syscall.Errno(0x5d)
++ EPROTOTYPE = syscall.Errno(0x5b)
++ EREMCHG = syscall.Errno(0x4e)
++ EREMOTE = syscall.Errno(0x42)
++ EREMOTEIO = syscall.Errno(0x79)
++ ERESTART = syscall.Errno(0x55)
++ ERFKILL = syscall.Errno(0x84)
++ ESHUTDOWN = syscall.Errno(0x6c)
++ ESOCKTNOSUPPORT = syscall.Errno(0x5e)
++ ESRMNT = syscall.Errno(0x45)
++ ESTALE = syscall.Errno(0x74)
++ ESTRPIPE = syscall.Errno(0x56)
++ ETIME = syscall.Errno(0x3e)
++ ETIMEDOUT = syscall.Errno(0x6e)
++ ETOOMANYREFS = syscall.Errno(0x6d)
++ EUCLEAN = syscall.Errno(0x75)
++ EUNATCH = syscall.Errno(0x31)
++ EUSERS = syscall.Errno(0x57)
++ EXFULL = syscall.Errno(0x36)
++)
++
++// Signals
++const (
++ SIGBUS = syscall.Signal(0x7)
++ SIGCHLD = syscall.Signal(0x11)
++ SIGCLD = syscall.Signal(0x11)
++ SIGCONT = syscall.Signal(0x12)
++ SIGIO = syscall.Signal(0x1d)
++ SIGPOLL = syscall.Signal(0x1d)
++ SIGPROF = syscall.Signal(0x1b)
++ SIGPWR = syscall.Signal(0x1e)
++ SIGSTKFLT = syscall.Signal(0x10)
++ SIGSTOP = syscall.Signal(0x13)
++ SIGSYS = syscall.Signal(0x1f)
++ SIGTSTP = syscall.Signal(0x14)
++ SIGTTIN = syscall.Signal(0x15)
++ SIGTTOU = syscall.Signal(0x16)
++ SIGURG = syscall.Signal(0x17)
++ SIGUSR1 = syscall.Signal(0xa)
++ SIGUSR2 = syscall.Signal(0xc)
++ SIGVTALRM = syscall.Signal(0x1a)
++ SIGWINCH = syscall.Signal(0x1c)
++ SIGXCPU = syscall.Signal(0x18)
++ SIGXFSZ = syscall.Signal(0x19)
++)
++
++// Error table
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "no such device or address"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EAGAIN", "resource temporarily unavailable"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device or resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "invalid cross-device link"},
++ {19, "ENODEV", "no such device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "numerical result out of range"},
++ {35, "EDEADLK", "resource deadlock avoided"},
++ {36, "ENAMETOOLONG", "file name too long"},
++ {37, "ENOLCK", "no locks available"},
++ {38, "ENOSYS", "function not implemented"},
++ {39, "ENOTEMPTY", "directory not empty"},
++ {40, "ELOOP", "too many levels of symbolic links"},
++ {42, "ENOMSG", "no message of desired type"},
++ {43, "EIDRM", "identifier removed"},
++ {44, "ECHRNG", "channel number out of range"},
++ {45, "EL2NSYNC", "level 2 not synchronized"},
++ {46, "EL3HLT", "level 3 halted"},
++ {47, "EL3RST", "level 3 reset"},
++ {48, "ELNRNG", "link number out of range"},
++ {49, "EUNATCH", "protocol driver not attached"},
++ {50, "ENOCSI", "no CSI structure available"},
++ {51, "EL2HLT", "level 2 halted"},
++ {52, "EBADE", "invalid exchange"},
++ {53, "EBADR", "invalid request descriptor"},
++ {54, "EXFULL", "exchange full"},
++ {55, "ENOANO", "no anode"},
++ {56, "EBADRQC", "invalid request code"},
++ {57, "EBADSLT", "invalid slot"},
++ {59, "EBFONT", "bad font file format"},
++ {60, "ENOSTR", "device not a stream"},
++ {61, "ENODATA", "no data available"},
++ {62, "ETIME", "timer expired"},
++ {63, "ENOSR", "out of streams resources"},
++ {64, "ENONET", "machine is not on the network"},
++ {65, "ENOPKG", "package not installed"},
++ {66, "EREMOTE", "object is remote"},
++ {67, "ENOLINK", "link has been severed"},
++ {68, "EADV", "advertise error"},
++ {69, "ESRMNT", "srmount error"},
++ {70, "ECOMM", "communication error on send"},
++ {71, "EPROTO", "protocol error"},
++ {72, "EMULTIHOP", "multihop attempted"},
++ {73, "EDOTDOT", "RFS specific error"},
++ {74, "EBADMSG", "bad message"},
++ {75, "EOVERFLOW", "value too large for defined data type"},
++ {76, "ENOTUNIQ", "name not unique on network"},
++ {77, "EBADFD", "file descriptor in bad state"},
++ {78, "EREMCHG", "remote address changed"},
++ {79, "ELIBACC", "can not access a needed shared library"},
++ {80, "ELIBBAD", "accessing a corrupted shared library"},
++ {81, "ELIBSCN", ".lib section in a.out corrupted"},
++ {82, "ELIBMAX", "attempting to link in too many shared libraries"},
++ {83, "ELIBEXEC", "cannot exec a shared library directly"},
++ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"},
++ {85, "ERESTART", "interrupted system call should be restarted"},
++ {86, "ESTRPIPE", "streams pipe error"},
++ {87, "EUSERS", "too many users"},
++ {88, "ENOTSOCK", "socket operation on non-socket"},
++ {89, "EDESTADDRREQ", "destination address required"},
++ {90, "EMSGSIZE", "message too long"},
++ {91, "EPROTOTYPE", "protocol wrong type for socket"},
++ {92, "ENOPROTOOPT", "protocol not available"},
++ {93, "EPROTONOSUPPORT", "protocol not supported"},
++ {94, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {95, "ENOTSUP", "operation not supported"},
++ {96, "EPFNOSUPPORT", "protocol family not supported"},
++ {97, "EAFNOSUPPORT", "address family not supported by protocol"},
++ {98, "EADDRINUSE", "address already in use"},
++ {99, "EADDRNOTAVAIL", "cannot assign requested address"},
++ {100, "ENETDOWN", "network is down"},
++ {101, "ENETUNREACH", "network is unreachable"},
++ {102, "ENETRESET", "network dropped connection on reset"},
++ {103, "ECONNABORTED", "software caused connection abort"},
++ {104, "ECONNRESET", "connection reset by peer"},
++ {105, "ENOBUFS", "no buffer space available"},
++ {106, "EISCONN", "transport endpoint is already connected"},
++ {107, "ENOTCONN", "transport endpoint is not connected"},
++ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
++ {109, "ETOOMANYREFS", "too many references: cannot splice"},
++ {110, "ETIMEDOUT", "connection timed out"},
++ {111, "ECONNREFUSED", "connection refused"},
++ {112, "EHOSTDOWN", "host is down"},
++ {113, "EHOSTUNREACH", "no route to host"},
++ {114, "EALREADY", "operation already in progress"},
++ {115, "EINPROGRESS", "operation now in progress"},
++ {116, "ESTALE", "stale file handle"},
++ {117, "EUCLEAN", "structure needs cleaning"},
++ {118, "ENOTNAM", "not a XENIX named type file"},
++ {119, "ENAVAIL", "no XENIX semaphores available"},
++ {120, "EISNAM", "is a named type file"},
++ {121, "EREMOTEIO", "remote I/O error"},
++ {122, "EDQUOT", "disk quota exceeded"},
++ {123, "ENOMEDIUM", "no medium found"},
++ {124, "EMEDIUMTYPE", "wrong medium type"},
++ {125, "ECANCELED", "operation canceled"},
++ {126, "ENOKEY", "required key not available"},
++ {127, "EKEYEXPIRED", "key has expired"},
++ {128, "EKEYREVOKED", "key has been revoked"},
++ {129, "EKEYREJECTED", "key was rejected by service"},
++ {130, "EOWNERDEAD", "owner died"},
++ {131, "ENOTRECOVERABLE", "state not recoverable"},
++ {132, "ERFKILL", "operation not possible due to RF-kill"},
++ {133, "EHWPOISON", "memory page has hardware error"},
++}
++
++// Signal table
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/breakpoint trap"},
++ {6, "SIGABRT", "aborted"},
++ {7, "SIGBUS", "bus error"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGUSR1", "user defined signal 1"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGUSR2", "user defined signal 2"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGSTKFLT", "stack fault"},
++ {17, "SIGCHLD", "child exited"},
++ {18, "SIGCONT", "continued"},
++ {19, "SIGSTOP", "stopped (signal)"},
++ {20, "SIGTSTP", "stopped"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGURG", "urgent I/O condition"},
++ {24, "SIGXCPU", "CPU time limit exceeded"},
++ {25, "SIGXFSZ", "file size limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window changed"},
++ {29, "SIGIO", "I/O possible"},
++ {30, "SIGPWR", "power failure"},
++ {31, "SIGSYS", "bad system call"},
++}
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go b/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go
+index 3b570754..95e950fc 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go
+@@ -3,7 +3,7 @@
+
+ // +build s390x,linux
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/include -fsigned-char _const.go
+
+ package unix
+@@ -11,1930 +11,547 @@ package unix
+ import "syscall"
+
+ const (
+- AF_ALG = 0x26
+- AF_APPLETALK = 0x5
+- AF_ASH = 0x12
+- AF_ATMPVC = 0x8
+- AF_ATMSVC = 0x14
+- AF_AX25 = 0x3
+- AF_BLUETOOTH = 0x1f
+- AF_BRIDGE = 0x7
+- AF_CAIF = 0x25
+- AF_CAN = 0x1d
+- AF_DECnet = 0xc
+- AF_ECONET = 0x13
+- AF_FILE = 0x1
+- AF_IB = 0x1b
+- AF_IEEE802154 = 0x24
+- AF_INET = 0x2
+- AF_INET6 = 0xa
+- AF_IPX = 0x4
+- AF_IRDA = 0x17
+- AF_ISDN = 0x22
+- AF_IUCV = 0x20
+- AF_KCM = 0x29
+- AF_KEY = 0xf
+- AF_LLC = 0x1a
+- AF_LOCAL = 0x1
+- AF_MAX = 0x2b
+- AF_MPLS = 0x1c
+- AF_NETBEUI = 0xd
+- AF_NETLINK = 0x10
+- AF_NETROM = 0x6
+- AF_NFC = 0x27
+- AF_PACKET = 0x11
+- AF_PHONET = 0x23
+- AF_PPPOX = 0x18
+- AF_QIPCRTR = 0x2a
+- AF_RDS = 0x15
+- AF_ROSE = 0xb
+- AF_ROUTE = 0x10
+- AF_RXRPC = 0x21
+- AF_SECURITY = 0xe
+- AF_SNA = 0x16
+- AF_TIPC = 0x1e
+- AF_UNIX = 0x1
+- AF_UNSPEC = 0x0
+- AF_VSOCK = 0x28
+- AF_WANPIPE = 0x19
+- AF_X25 = 0x9
+- ALG_OP_DECRYPT = 0x0
+- ALG_OP_ENCRYPT = 0x1
+- ALG_SET_AEAD_ASSOCLEN = 0x4
+- ALG_SET_AEAD_AUTHSIZE = 0x5
+- ALG_SET_IV = 0x2
+- ALG_SET_KEY = 0x1
+- ALG_SET_OP = 0x3
+- ARPHRD_6LOWPAN = 0x339
+- ARPHRD_ADAPT = 0x108
+- ARPHRD_APPLETLK = 0x8
+- ARPHRD_ARCNET = 0x7
+- ARPHRD_ASH = 0x30d
+- ARPHRD_ATM = 0x13
+- ARPHRD_AX25 = 0x3
+- ARPHRD_BIF = 0x307
+- ARPHRD_CAIF = 0x336
+- ARPHRD_CAN = 0x118
+- ARPHRD_CHAOS = 0x5
+- ARPHRD_CISCO = 0x201
+- ARPHRD_CSLIP = 0x101
+- ARPHRD_CSLIP6 = 0x103
+- ARPHRD_DDCMP = 0x205
+- ARPHRD_DLCI = 0xf
+- ARPHRD_ECONET = 0x30e
+- ARPHRD_EETHER = 0x2
+- ARPHRD_ETHER = 0x1
+- ARPHRD_EUI64 = 0x1b
+- ARPHRD_FCAL = 0x311
+- ARPHRD_FCFABRIC = 0x313
+- ARPHRD_FCPL = 0x312
+- ARPHRD_FCPP = 0x310
+- ARPHRD_FDDI = 0x306
+- ARPHRD_FRAD = 0x302
+- ARPHRD_HDLC = 0x201
+- ARPHRD_HIPPI = 0x30c
+- ARPHRD_HWX25 = 0x110
+- ARPHRD_IEEE1394 = 0x18
+- ARPHRD_IEEE802 = 0x6
+- ARPHRD_IEEE80211 = 0x321
+- ARPHRD_IEEE80211_PRISM = 0x322
+- ARPHRD_IEEE80211_RADIOTAP = 0x323
+- ARPHRD_IEEE802154 = 0x324
+- ARPHRD_IEEE802154_MONITOR = 0x325
+- ARPHRD_IEEE802_TR = 0x320
+- ARPHRD_INFINIBAND = 0x20
+- ARPHRD_IP6GRE = 0x337
+- ARPHRD_IPDDP = 0x309
+- ARPHRD_IPGRE = 0x30a
+- ARPHRD_IRDA = 0x30f
+- ARPHRD_LAPB = 0x204
+- ARPHRD_LOCALTLK = 0x305
+- ARPHRD_LOOPBACK = 0x304
+- ARPHRD_METRICOM = 0x17
+- ARPHRD_NETLINK = 0x338
+- ARPHRD_NETROM = 0x0
+- ARPHRD_NONE = 0xfffe
+- ARPHRD_PHONET = 0x334
+- ARPHRD_PHONET_PIPE = 0x335
+- ARPHRD_PIMREG = 0x30b
+- ARPHRD_PPP = 0x200
+- ARPHRD_PRONET = 0x4
+- ARPHRD_RAWHDLC = 0x206
+- ARPHRD_ROSE = 0x10e
+- ARPHRD_RSRVD = 0x104
+- ARPHRD_SIT = 0x308
+- ARPHRD_SKIP = 0x303
+- ARPHRD_SLIP = 0x100
+- ARPHRD_SLIP6 = 0x102
+- ARPHRD_TUNNEL = 0x300
+- ARPHRD_TUNNEL6 = 0x301
+- ARPHRD_VOID = 0xffff
+- ARPHRD_X25 = 0x10f
+- B0 = 0x0
+- B1000000 = 0x1008
+- B110 = 0x3
+- B115200 = 0x1002
+- B1152000 = 0x1009
+- B1200 = 0x9
+- B134 = 0x4
+- B150 = 0x5
+- B1500000 = 0x100a
+- B1800 = 0xa
+- B19200 = 0xe
+- B200 = 0x6
+- B2000000 = 0x100b
+- B230400 = 0x1003
+- B2400 = 0xb
+- B2500000 = 0x100c
+- B300 = 0x7
+- B3000000 = 0x100d
+- B3500000 = 0x100e
+- B38400 = 0xf
+- B4000000 = 0x100f
+- B460800 = 0x1004
+- B4800 = 0xc
+- B50 = 0x1
+- B500000 = 0x1005
+- B57600 = 0x1001
+- B576000 = 0x1006
+- B600 = 0x8
+- B75 = 0x2
+- B921600 = 0x1007
+- B9600 = 0xd
+- BLKBSZGET = 0x80081270
+- BLKBSZSET = 0x40081271
+- BLKFLSBUF = 0x1261
+- BLKFRAGET = 0x1265
+- BLKFRASET = 0x1264
+- BLKGETSIZE = 0x1260
+- BLKGETSIZE64 = 0x80081272
+- BLKPBSZGET = 0x127b
+- BLKRAGET = 0x1263
+- BLKRASET = 0x1262
+- BLKROGET = 0x125e
+- BLKROSET = 0x125d
+- BLKRRPART = 0x125f
+- BLKSECTGET = 0x1267
+- BLKSECTSET = 0x1266
+- BLKSSZGET = 0x1268
+- BOTHER = 0x1000
+- BPF_A = 0x10
+- BPF_ABS = 0x20
+- BPF_ADD = 0x0
+- BPF_ALU = 0x4
+- BPF_AND = 0x50
+- BPF_B = 0x10
+- BPF_DIV = 0x30
+- BPF_H = 0x8
+- BPF_IMM = 0x0
+- BPF_IND = 0x40
+- BPF_JA = 0x0
+- BPF_JEQ = 0x10
+- BPF_JGE = 0x30
+- BPF_JGT = 0x20
+- BPF_JMP = 0x5
+- BPF_JSET = 0x40
+- BPF_K = 0x0
+- BPF_LD = 0x0
+- BPF_LDX = 0x1
+- BPF_LEN = 0x80
+- BPF_LL_OFF = -0x200000
+- BPF_LSH = 0x60
+- BPF_MAJOR_VERSION = 0x1
+- BPF_MAXINSNS = 0x1000
+- BPF_MEM = 0x60
+- BPF_MEMWORDS = 0x10
+- BPF_MINOR_VERSION = 0x1
+- BPF_MISC = 0x7
+- BPF_MOD = 0x90
+- BPF_MSH = 0xa0
+- BPF_MUL = 0x20
+- BPF_NEG = 0x80
+- BPF_NET_OFF = -0x100000
+- BPF_OR = 0x40
+- BPF_RET = 0x6
+- BPF_RSH = 0x70
+- BPF_ST = 0x2
+- BPF_STX = 0x3
+- BPF_SUB = 0x10
+- BPF_TAX = 0x0
+- BPF_TXA = 0x80
+- BPF_W = 0x0
+- BPF_X = 0x8
+- BPF_XOR = 0xa0
+- BRKINT = 0x2
+- BS0 = 0x0
+- BS1 = 0x2000
+- BSDLY = 0x2000
+- CAN_BCM = 0x2
+- CAN_EFF_FLAG = 0x80000000
+- CAN_EFF_ID_BITS = 0x1d
+- CAN_EFF_MASK = 0x1fffffff
+- CAN_ERR_FLAG = 0x20000000
+- CAN_ERR_MASK = 0x1fffffff
+- CAN_INV_FILTER = 0x20000000
+- CAN_ISOTP = 0x6
+- CAN_MAX_DLC = 0x8
+- CAN_MAX_DLEN = 0x8
+- CAN_MCNET = 0x5
+- CAN_MTU = 0x10
+- CAN_NPROTO = 0x7
+- CAN_RAW = 0x1
+- CAN_RAW_FILTER_MAX = 0x200
+- CAN_RTR_FLAG = 0x40000000
+- CAN_SFF_ID_BITS = 0xb
+- CAN_SFF_MASK = 0x7ff
+- CAN_TP16 = 0x3
+- CAN_TP20 = 0x4
+- CBAUD = 0x100f
+- CBAUDEX = 0x1000
+- CFLUSH = 0xf
+- CIBAUD = 0x100f0000
+- CLOCAL = 0x800
+- CLOCK_BOOTTIME = 0x7
+- CLOCK_BOOTTIME_ALARM = 0x9
+- CLOCK_DEFAULT = 0x0
+- CLOCK_EXT = 0x1
+- CLOCK_INT = 0x2
+- CLOCK_MONOTONIC = 0x1
+- CLOCK_MONOTONIC_COARSE = 0x6
+- CLOCK_MONOTONIC_RAW = 0x4
+- CLOCK_PROCESS_CPUTIME_ID = 0x2
+- CLOCK_REALTIME = 0x0
+- CLOCK_REALTIME_ALARM = 0x8
+- CLOCK_REALTIME_COARSE = 0x5
+- CLOCK_TAI = 0xb
+- CLOCK_THREAD_CPUTIME_ID = 0x3
+- CLOCK_TXFROMRX = 0x4
+- CLOCK_TXINT = 0x3
+- CLONE_CHILD_CLEARTID = 0x200000
+- CLONE_CHILD_SETTID = 0x1000000
+- CLONE_DETACHED = 0x400000
+- CLONE_FILES = 0x400
+- CLONE_FS = 0x200
+- CLONE_IO = 0x80000000
+- CLONE_NEWCGROUP = 0x2000000
+- CLONE_NEWIPC = 0x8000000
+- CLONE_NEWNET = 0x40000000
+- CLONE_NEWNS = 0x20000
+- CLONE_NEWPID = 0x20000000
+- CLONE_NEWUSER = 0x10000000
+- CLONE_NEWUTS = 0x4000000
+- CLONE_PARENT = 0x8000
+- CLONE_PARENT_SETTID = 0x100000
+- CLONE_PTRACE = 0x2000
+- CLONE_SETTLS = 0x80000
+- CLONE_SIGHAND = 0x800
+- CLONE_SYSVSEM = 0x40000
+- CLONE_THREAD = 0x10000
+- CLONE_UNTRACED = 0x800000
+- CLONE_VFORK = 0x4000
+- CLONE_VM = 0x100
+- CMSPAR = 0x40000000
+- CR0 = 0x0
+- CR1 = 0x200
+- CR2 = 0x400
+- CR3 = 0x600
+- CRDLY = 0x600
+- CREAD = 0x80
+- CRTSCTS = 0x80000000
+- CS5 = 0x0
+- CS6 = 0x10
+- CS7 = 0x20
+- CS8 = 0x30
+- CSIGNAL = 0xff
+- CSIZE = 0x30
+- CSTART = 0x11
+- CSTATUS = 0x0
+- CSTOP = 0x13
+- CSTOPB = 0x40
+- CSUSP = 0x1a
+- DT_BLK = 0x6
+- DT_CHR = 0x2
+- DT_DIR = 0x4
+- DT_FIFO = 0x1
+- DT_LNK = 0xa
+- DT_REG = 0x8
+- DT_SOCK = 0xc
+- DT_UNKNOWN = 0x0
+- DT_WHT = 0xe
+- ECHO = 0x8
+- ECHOCTL = 0x200
+- ECHOE = 0x10
+- ECHOK = 0x20
+- ECHOKE = 0x800
+- ECHONL = 0x40
+- ECHOPRT = 0x400
+- EFD_CLOEXEC = 0x80000
+- EFD_NONBLOCK = 0x800
+- EFD_SEMAPHORE = 0x1
+- ENCODING_DEFAULT = 0x0
+- ENCODING_FM_MARK = 0x3
+- ENCODING_FM_SPACE = 0x4
+- ENCODING_MANCHESTER = 0x5
+- ENCODING_NRZ = 0x1
+- ENCODING_NRZI = 0x2
+- EPOLLERR = 0x8
+- EPOLLET = 0x80000000
+- EPOLLEXCLUSIVE = 0x10000000
+- EPOLLHUP = 0x10
+- EPOLLIN = 0x1
+- EPOLLMSG = 0x400
+- EPOLLONESHOT = 0x40000000
+- EPOLLOUT = 0x4
+- EPOLLPRI = 0x2
+- EPOLLRDBAND = 0x80
+- EPOLLRDHUP = 0x2000
+- EPOLLRDNORM = 0x40
+- EPOLLWAKEUP = 0x20000000
+- EPOLLWRBAND = 0x200
+- EPOLLWRNORM = 0x100
+- EPOLL_CLOEXEC = 0x80000
+- EPOLL_CTL_ADD = 0x1
+- EPOLL_CTL_DEL = 0x2
+- EPOLL_CTL_MOD = 0x3
+- ETH_P_1588 = 0x88f7
+- ETH_P_8021AD = 0x88a8
+- ETH_P_8021AH = 0x88e7
+- ETH_P_8021Q = 0x8100
+- ETH_P_80221 = 0x8917
+- ETH_P_802_2 = 0x4
+- ETH_P_802_3 = 0x1
+- ETH_P_802_3_MIN = 0x600
+- ETH_P_802_EX1 = 0x88b5
+- ETH_P_AARP = 0x80f3
+- ETH_P_AF_IUCV = 0xfbfb
+- ETH_P_ALL = 0x3
+- ETH_P_AOE = 0x88a2
+- ETH_P_ARCNET = 0x1a
+- ETH_P_ARP = 0x806
+- ETH_P_ATALK = 0x809b
+- ETH_P_ATMFATE = 0x8884
+- ETH_P_ATMMPOA = 0x884c
+- ETH_P_AX25 = 0x2
+- ETH_P_BATMAN = 0x4305
+- ETH_P_BPQ = 0x8ff
+- ETH_P_CAIF = 0xf7
+- ETH_P_CAN = 0xc
+- ETH_P_CANFD = 0xd
+- ETH_P_CONTROL = 0x16
+- ETH_P_CUST = 0x6006
+- ETH_P_DDCMP = 0x6
+- ETH_P_DEC = 0x6000
+- ETH_P_DIAG = 0x6005
+- ETH_P_DNA_DL = 0x6001
+- ETH_P_DNA_RC = 0x6002
+- ETH_P_DNA_RT = 0x6003
+- ETH_P_DSA = 0x1b
+- ETH_P_ECONET = 0x18
+- ETH_P_EDSA = 0xdada
+- ETH_P_FCOE = 0x8906
+- ETH_P_FIP = 0x8914
+- ETH_P_HDLC = 0x19
+- ETH_P_HSR = 0x892f
+- ETH_P_IEEE802154 = 0xf6
+- ETH_P_IEEEPUP = 0xa00
+- ETH_P_IEEEPUPAT = 0xa01
+- ETH_P_IP = 0x800
+- ETH_P_IPV6 = 0x86dd
+- ETH_P_IPX = 0x8137
+- ETH_P_IRDA = 0x17
+- ETH_P_LAT = 0x6004
+- ETH_P_LINK_CTL = 0x886c
+- ETH_P_LOCALTALK = 0x9
+- ETH_P_LOOP = 0x60
+- ETH_P_LOOPBACK = 0x9000
+- ETH_P_MACSEC = 0x88e5
+- ETH_P_MOBITEX = 0x15
+- ETH_P_MPLS_MC = 0x8848
+- ETH_P_MPLS_UC = 0x8847
+- ETH_P_MVRP = 0x88f5
+- ETH_P_NCSI = 0x88f8
+- ETH_P_PAE = 0x888e
+- ETH_P_PAUSE = 0x8808
+- ETH_P_PHONET = 0xf5
+- ETH_P_PPPTALK = 0x10
+- ETH_P_PPP_DISC = 0x8863
+- ETH_P_PPP_MP = 0x8
+- ETH_P_PPP_SES = 0x8864
+- ETH_P_PRP = 0x88fb
+- ETH_P_PUP = 0x200
+- ETH_P_PUPAT = 0x201
+- ETH_P_QINQ1 = 0x9100
+- ETH_P_QINQ2 = 0x9200
+- ETH_P_QINQ3 = 0x9300
+- ETH_P_RARP = 0x8035
+- ETH_P_SCA = 0x6007
+- ETH_P_SLOW = 0x8809
+- ETH_P_SNAP = 0x5
+- ETH_P_TDLS = 0x890d
+- ETH_P_TEB = 0x6558
+- ETH_P_TIPC = 0x88ca
+- ETH_P_TRAILER = 0x1c
+- ETH_P_TR_802_2 = 0x11
+- ETH_P_TSN = 0x22f0
+- ETH_P_WAN_PPP = 0x7
+- ETH_P_WCCP = 0x883e
+- ETH_P_X25 = 0x805
+- ETH_P_XDSA = 0xf8
+- EXTA = 0xe
+- EXTB = 0xf
+- EXTPROC = 0x10000
+- FALLOC_FL_COLLAPSE_RANGE = 0x8
+- FALLOC_FL_INSERT_RANGE = 0x20
+- FALLOC_FL_KEEP_SIZE = 0x1
+- FALLOC_FL_NO_HIDE_STALE = 0x4
+- FALLOC_FL_PUNCH_HOLE = 0x2
+- FALLOC_FL_UNSHARE_RANGE = 0x40
+- FALLOC_FL_ZERO_RANGE = 0x10
+- FD_CLOEXEC = 0x1
+- FD_SETSIZE = 0x400
+- FF0 = 0x0
+- FF1 = 0x8000
+- FFDLY = 0x8000
+- FLUSHO = 0x1000
+- FS_ENCRYPTION_MODE_AES_256_CBC = 0x3
+- FS_ENCRYPTION_MODE_AES_256_CTS = 0x4
+- FS_ENCRYPTION_MODE_AES_256_GCM = 0x2
+- FS_ENCRYPTION_MODE_AES_256_XTS = 0x1
+- FS_ENCRYPTION_MODE_INVALID = 0x0
+- FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
+- FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
+- FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
+- FS_KEY_DESCRIPTOR_SIZE = 0x8
+- FS_KEY_DESC_PREFIX = "fscrypt:"
+- FS_KEY_DESC_PREFIX_SIZE = 0x8
+- FS_MAX_KEY_SIZE = 0x40
+- FS_POLICY_FLAGS_PAD_16 = 0x2
+- FS_POLICY_FLAGS_PAD_32 = 0x3
+- FS_POLICY_FLAGS_PAD_4 = 0x0
+- FS_POLICY_FLAGS_PAD_8 = 0x1
+- FS_POLICY_FLAGS_PAD_MASK = 0x3
+- FS_POLICY_FLAGS_VALID = 0x3
+- F_DUPFD = 0x0
+- F_DUPFD_CLOEXEC = 0x406
+- F_EXLCK = 0x4
+- F_GETFD = 0x1
+- F_GETFL = 0x3
+- F_GETLEASE = 0x401
+- F_GETLK = 0x5
+- F_GETLK64 = 0x5
+- F_GETOWN = 0x9
+- F_GETOWN_EX = 0x10
+- F_GETPIPE_SZ = 0x408
+- F_GETSIG = 0xb
+- F_LOCK = 0x1
+- F_NOTIFY = 0x402
+- F_OFD_GETLK = 0x24
+- F_OFD_SETLK = 0x25
+- F_OFD_SETLKW = 0x26
+- F_OK = 0x0
+- F_RDLCK = 0x0
+- F_SETFD = 0x2
+- F_SETFL = 0x4
+- F_SETLEASE = 0x400
+- F_SETLK = 0x6
+- F_SETLK64 = 0x6
+- F_SETLKW = 0x7
+- F_SETLKW64 = 0x7
+- F_SETOWN = 0x8
+- F_SETOWN_EX = 0xf
+- F_SETPIPE_SZ = 0x407
+- F_SETSIG = 0xa
+- F_SHLCK = 0x8
+- F_TEST = 0x3
+- F_TLOCK = 0x2
+- F_ULOCK = 0x0
+- F_UNLCK = 0x2
+- F_WRLCK = 0x1
+- GENL_ADMIN_PERM = 0x1
+- GENL_CMD_CAP_DO = 0x2
+- GENL_CMD_CAP_DUMP = 0x4
+- GENL_CMD_CAP_HASPOL = 0x8
+- GENL_HDRLEN = 0x4
+- GENL_ID_CTRL = 0x10
+- GENL_ID_PMCRAID = 0x12
+- GENL_ID_VFS_DQUOT = 0x11
+- GENL_MAX_ID = 0x3ff
+- GENL_MIN_ID = 0x10
+- GENL_NAMSIZ = 0x10
+- GENL_START_ALLOC = 0x13
+- GENL_UNS_ADMIN_PERM = 0x10
+- GRND_NONBLOCK = 0x1
+- GRND_RANDOM = 0x2
+- HUPCL = 0x400
+- IBSHIFT = 0x10
+- ICANON = 0x2
+- ICMPV6_FILTER = 0x1
+- ICRNL = 0x100
+- IEXTEN = 0x8000
+- IFA_F_DADFAILED = 0x8
+- IFA_F_DEPRECATED = 0x20
+- IFA_F_HOMEADDRESS = 0x10
+- IFA_F_MANAGETEMPADDR = 0x100
+- IFA_F_MCAUTOJOIN = 0x400
+- IFA_F_NODAD = 0x2
+- IFA_F_NOPREFIXROUTE = 0x200
+- IFA_F_OPTIMISTIC = 0x4
+- IFA_F_PERMANENT = 0x80
+- IFA_F_SECONDARY = 0x1
+- IFA_F_STABLE_PRIVACY = 0x800
+- IFA_F_TEMPORARY = 0x1
+- IFA_F_TENTATIVE = 0x40
+- IFA_MAX = 0x8
+- IFF_ALLMULTI = 0x200
+- IFF_ATTACH_QUEUE = 0x200
+- IFF_AUTOMEDIA = 0x4000
+- IFF_BROADCAST = 0x2
+- IFF_DEBUG = 0x4
+- IFF_DETACH_QUEUE = 0x400
+- IFF_DORMANT = 0x20000
+- IFF_DYNAMIC = 0x8000
+- IFF_ECHO = 0x40000
+- IFF_LOOPBACK = 0x8
+- IFF_LOWER_UP = 0x10000
+- IFF_MASTER = 0x400
+- IFF_MULTICAST = 0x1000
+- IFF_MULTI_QUEUE = 0x100
+- IFF_NOARP = 0x80
+- IFF_NOFILTER = 0x1000
+- IFF_NOTRAILERS = 0x20
+- IFF_NO_PI = 0x1000
+- IFF_ONE_QUEUE = 0x2000
+- IFF_PERSIST = 0x800
+- IFF_POINTOPOINT = 0x10
+- IFF_PORTSEL = 0x2000
+- IFF_PROMISC = 0x100
+- IFF_RUNNING = 0x40
+- IFF_SLAVE = 0x800
+- IFF_TAP = 0x2
+- IFF_TUN = 0x1
+- IFF_TUN_EXCL = 0x8000
+- IFF_UP = 0x1
+- IFF_VNET_HDR = 0x4000
+- IFF_VOLATILE = 0x70c5a
+- IFNAMSIZ = 0x10
+- IGNBRK = 0x1
+- IGNCR = 0x80
+- IGNPAR = 0x4
+- IMAXBEL = 0x2000
+- INLCR = 0x40
+- INPCK = 0x10
+- IN_ACCESS = 0x1
+- IN_ALL_EVENTS = 0xfff
+- IN_ATTRIB = 0x4
+- IN_CLASSA_HOST = 0xffffff
+- IN_CLASSA_MAX = 0x80
+- IN_CLASSA_NET = 0xff000000
+- IN_CLASSA_NSHIFT = 0x18
+- IN_CLASSB_HOST = 0xffff
+- IN_CLASSB_MAX = 0x10000
+- IN_CLASSB_NET = 0xffff0000
+- IN_CLASSB_NSHIFT = 0x10
+- IN_CLASSC_HOST = 0xff
+- IN_CLASSC_NET = 0xffffff00
+- IN_CLASSC_NSHIFT = 0x8
+- IN_CLOEXEC = 0x80000
+- IN_CLOSE = 0x18
+- IN_CLOSE_NOWRITE = 0x10
+- IN_CLOSE_WRITE = 0x8
+- IN_CREATE = 0x100
+- IN_DELETE = 0x200
+- IN_DELETE_SELF = 0x400
+- IN_DONT_FOLLOW = 0x2000000
+- IN_EXCL_UNLINK = 0x4000000
+- IN_IGNORED = 0x8000
+- IN_ISDIR = 0x40000000
+- IN_LOOPBACKNET = 0x7f
+- IN_MASK_ADD = 0x20000000
+- IN_MODIFY = 0x2
+- IN_MOVE = 0xc0
+- IN_MOVED_FROM = 0x40
+- IN_MOVED_TO = 0x80
+- IN_MOVE_SELF = 0x800
+- IN_NONBLOCK = 0x800
+- IN_ONESHOT = 0x80000000
+- IN_ONLYDIR = 0x1000000
+- IN_OPEN = 0x20
+- IN_Q_OVERFLOW = 0x4000
+- IN_UNMOUNT = 0x2000
+- IPPROTO_AH = 0x33
+- IPPROTO_BEETPH = 0x5e
+- IPPROTO_COMP = 0x6c
+- IPPROTO_DCCP = 0x21
+- IPPROTO_DSTOPTS = 0x3c
+- IPPROTO_EGP = 0x8
+- IPPROTO_ENCAP = 0x62
+- IPPROTO_ESP = 0x32
+- IPPROTO_FRAGMENT = 0x2c
+- IPPROTO_GRE = 0x2f
+- IPPROTO_HOPOPTS = 0x0
+- IPPROTO_ICMP = 0x1
+- IPPROTO_ICMPV6 = 0x3a
+- IPPROTO_IDP = 0x16
+- IPPROTO_IGMP = 0x2
+- IPPROTO_IP = 0x0
+- IPPROTO_IPIP = 0x4
+- IPPROTO_IPV6 = 0x29
+- IPPROTO_MH = 0x87
+- IPPROTO_MPLS = 0x89
+- IPPROTO_MTP = 0x5c
+- IPPROTO_NONE = 0x3b
+- IPPROTO_PIM = 0x67
+- IPPROTO_PUP = 0xc
+- IPPROTO_RAW = 0xff
+- IPPROTO_ROUTING = 0x2b
+- IPPROTO_RSVP = 0x2e
+- IPPROTO_SCTP = 0x84
+- IPPROTO_TCP = 0x6
+- IPPROTO_TP = 0x1d
+- IPPROTO_UDP = 0x11
+- IPPROTO_UDPLITE = 0x88
+- IPV6_2292DSTOPTS = 0x4
+- IPV6_2292HOPLIMIT = 0x8
+- IPV6_2292HOPOPTS = 0x3
+- IPV6_2292PKTINFO = 0x2
+- IPV6_2292PKTOPTIONS = 0x6
+- IPV6_2292RTHDR = 0x5
+- IPV6_ADDRFORM = 0x1
+- IPV6_ADD_MEMBERSHIP = 0x14
+- IPV6_AUTHHDR = 0xa
+- IPV6_CHECKSUM = 0x7
+- IPV6_DONTFRAG = 0x3e
+- IPV6_DROP_MEMBERSHIP = 0x15
+- IPV6_DSTOPTS = 0x3b
+- IPV6_HDRINCL = 0x24
+- IPV6_HOPLIMIT = 0x34
+- IPV6_HOPOPTS = 0x36
+- IPV6_IPSEC_POLICY = 0x22
+- IPV6_JOIN_ANYCAST = 0x1b
+- IPV6_JOIN_GROUP = 0x14
+- IPV6_LEAVE_ANYCAST = 0x1c
+- IPV6_LEAVE_GROUP = 0x15
+- IPV6_MTU = 0x18
+- IPV6_MTU_DISCOVER = 0x17
+- IPV6_MULTICAST_HOPS = 0x12
+- IPV6_MULTICAST_IF = 0x11
+- IPV6_MULTICAST_LOOP = 0x13
+- IPV6_NEXTHOP = 0x9
+- IPV6_PATHMTU = 0x3d
+- IPV6_PKTINFO = 0x32
+- IPV6_PMTUDISC_DO = 0x2
+- IPV6_PMTUDISC_DONT = 0x0
+- IPV6_PMTUDISC_INTERFACE = 0x4
+- IPV6_PMTUDISC_OMIT = 0x5
+- IPV6_PMTUDISC_PROBE = 0x3
+- IPV6_PMTUDISC_WANT = 0x1
+- IPV6_RECVDSTOPTS = 0x3a
+- IPV6_RECVERR = 0x19
+- IPV6_RECVHOPLIMIT = 0x33
+- IPV6_RECVHOPOPTS = 0x35
+- IPV6_RECVPATHMTU = 0x3c
+- IPV6_RECVPKTINFO = 0x31
+- IPV6_RECVRTHDR = 0x38
+- IPV6_RECVTCLASS = 0x42
+- IPV6_ROUTER_ALERT = 0x16
+- IPV6_RTHDR = 0x39
+- IPV6_RTHDRDSTOPTS = 0x37
+- IPV6_RTHDR_LOOSE = 0x0
+- IPV6_RTHDR_STRICT = 0x1
+- IPV6_RTHDR_TYPE_0 = 0x0
+- IPV6_RXDSTOPTS = 0x3b
+- IPV6_RXHOPOPTS = 0x36
+- IPV6_TCLASS = 0x43
+- IPV6_UNICAST_HOPS = 0x10
+- IPV6_V6ONLY = 0x1a
+- IPV6_XFRM_POLICY = 0x23
+- IP_ADD_MEMBERSHIP = 0x23
+- IP_ADD_SOURCE_MEMBERSHIP = 0x27
+- IP_BIND_ADDRESS_NO_PORT = 0x18
+- IP_BLOCK_SOURCE = 0x26
+- IP_CHECKSUM = 0x17
+- IP_DEFAULT_MULTICAST_LOOP = 0x1
+- IP_DEFAULT_MULTICAST_TTL = 0x1
+- IP_DF = 0x4000
+- IP_DROP_MEMBERSHIP = 0x24
+- IP_DROP_SOURCE_MEMBERSHIP = 0x28
+- IP_FREEBIND = 0xf
+- IP_HDRINCL = 0x3
+- IP_IPSEC_POLICY = 0x10
+- IP_MAXPACKET = 0xffff
+- IP_MAX_MEMBERSHIPS = 0x14
+- IP_MF = 0x2000
+- IP_MINTTL = 0x15
+- IP_MSFILTER = 0x29
+- IP_MSS = 0x240
+- IP_MTU = 0xe
+- IP_MTU_DISCOVER = 0xa
+- IP_MULTICAST_ALL = 0x31
+- IP_MULTICAST_IF = 0x20
+- IP_MULTICAST_LOOP = 0x22
+- IP_MULTICAST_TTL = 0x21
+- IP_NODEFRAG = 0x16
+- IP_OFFMASK = 0x1fff
+- IP_OPTIONS = 0x4
+- IP_ORIGDSTADDR = 0x14
+- IP_PASSSEC = 0x12
+- IP_PKTINFO = 0x8
+- IP_PKTOPTIONS = 0x9
+- IP_PMTUDISC = 0xa
+- IP_PMTUDISC_DO = 0x2
+- IP_PMTUDISC_DONT = 0x0
+- IP_PMTUDISC_INTERFACE = 0x4
+- IP_PMTUDISC_OMIT = 0x5
+- IP_PMTUDISC_PROBE = 0x3
+- IP_PMTUDISC_WANT = 0x1
+- IP_RECVERR = 0xb
+- IP_RECVOPTS = 0x6
+- IP_RECVORIGDSTADDR = 0x14
+- IP_RECVRETOPTS = 0x7
+- IP_RECVTOS = 0xd
+- IP_RECVTTL = 0xc
+- IP_RETOPTS = 0x7
+- IP_RF = 0x8000
+- IP_ROUTER_ALERT = 0x5
+- IP_TOS = 0x1
+- IP_TRANSPARENT = 0x13
+- IP_TTL = 0x2
+- IP_UNBLOCK_SOURCE = 0x25
+- IP_UNICAST_IF = 0x32
+- IP_XFRM_POLICY = 0x11
+- ISIG = 0x1
+- ISTRIP = 0x20
+- IUCLC = 0x200
+- IUTF8 = 0x4000
+- IXANY = 0x800
+- IXOFF = 0x1000
+- IXON = 0x400
+- KEYCTL_ASSUME_AUTHORITY = 0x10
+- KEYCTL_CHOWN = 0x4
+- KEYCTL_CLEAR = 0x7
+- KEYCTL_DESCRIBE = 0x6
+- KEYCTL_DH_COMPUTE = 0x17
+- KEYCTL_GET_KEYRING_ID = 0x0
+- KEYCTL_GET_PERSISTENT = 0x16
+- KEYCTL_GET_SECURITY = 0x11
+- KEYCTL_INSTANTIATE = 0xc
+- KEYCTL_INSTANTIATE_IOV = 0x14
+- KEYCTL_INVALIDATE = 0x15
+- KEYCTL_JOIN_SESSION_KEYRING = 0x1
+- KEYCTL_LINK = 0x8
+- KEYCTL_NEGATE = 0xd
+- KEYCTL_READ = 0xb
+- KEYCTL_REJECT = 0x13
+- KEYCTL_REVOKE = 0x3
+- KEYCTL_SEARCH = 0xa
+- KEYCTL_SESSION_TO_PARENT = 0x12
+- KEYCTL_SETPERM = 0x5
+- KEYCTL_SET_REQKEY_KEYRING = 0xe
+- KEYCTL_SET_TIMEOUT = 0xf
+- KEYCTL_UNLINK = 0x9
+- KEYCTL_UPDATE = 0x2
+- KEY_REQKEY_DEFL_DEFAULT = 0x0
+- KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6
+- KEY_REQKEY_DEFL_NO_CHANGE = -0x1
+- KEY_REQKEY_DEFL_PROCESS_KEYRING = 0x2
+- KEY_REQKEY_DEFL_REQUESTOR_KEYRING = 0x7
+- KEY_REQKEY_DEFL_SESSION_KEYRING = 0x3
+- KEY_REQKEY_DEFL_THREAD_KEYRING = 0x1
+- KEY_REQKEY_DEFL_USER_KEYRING = 0x4
+- KEY_REQKEY_DEFL_USER_SESSION_KEYRING = 0x5
+- KEY_SPEC_GROUP_KEYRING = -0x6
+- KEY_SPEC_PROCESS_KEYRING = -0x2
+- KEY_SPEC_REQKEY_AUTH_KEY = -0x7
+- KEY_SPEC_REQUESTOR_KEYRING = -0x8
+- KEY_SPEC_SESSION_KEYRING = -0x3
+- KEY_SPEC_THREAD_KEYRING = -0x1
+- KEY_SPEC_USER_KEYRING = -0x4
+- KEY_SPEC_USER_SESSION_KEYRING = -0x5
+- LINUX_REBOOT_CMD_CAD_OFF = 0x0
+- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
+- LINUX_REBOOT_CMD_HALT = 0xcdef0123
+- LINUX_REBOOT_CMD_KEXEC = 0x45584543
+- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
+- LINUX_REBOOT_CMD_RESTART = 0x1234567
+- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
+- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
+- LINUX_REBOOT_MAGIC1 = 0xfee1dead
+- LINUX_REBOOT_MAGIC2 = 0x28121969
+- LOCK_EX = 0x2
+- LOCK_NB = 0x4
+- LOCK_SH = 0x1
+- LOCK_UN = 0x8
+- MADV_DODUMP = 0x11
+- MADV_DOFORK = 0xb
+- MADV_DONTDUMP = 0x10
+- MADV_DONTFORK = 0xa
+- MADV_DONTNEED = 0x4
+- MADV_FREE = 0x8
+- MADV_HUGEPAGE = 0xe
+- MADV_HWPOISON = 0x64
+- MADV_MERGEABLE = 0xc
+- MADV_NOHUGEPAGE = 0xf
+- MADV_NORMAL = 0x0
+- MADV_RANDOM = 0x1
+- MADV_REMOVE = 0x9
+- MADV_SEQUENTIAL = 0x2
+- MADV_UNMERGEABLE = 0xd
+- MADV_WILLNEED = 0x3
+- MAP_ANON = 0x20
+- MAP_ANONYMOUS = 0x20
+- MAP_DENYWRITE = 0x800
+- MAP_EXECUTABLE = 0x1000
+- MAP_FILE = 0x0
+- MAP_FIXED = 0x10
+- MAP_GROWSDOWN = 0x100
+- MAP_HUGETLB = 0x40000
+- MAP_HUGE_MASK = 0x3f
+- MAP_HUGE_SHIFT = 0x1a
+- MAP_LOCKED = 0x2000
+- MAP_NONBLOCK = 0x10000
+- MAP_NORESERVE = 0x4000
+- MAP_POPULATE = 0x8000
+- MAP_PRIVATE = 0x2
+- MAP_SHARED = 0x1
+- MAP_STACK = 0x20000
+- MAP_TYPE = 0xf
+- MCL_CURRENT = 0x1
+- MCL_FUTURE = 0x2
+- MCL_ONFAULT = 0x4
+- MNT_DETACH = 0x2
+- MNT_EXPIRE = 0x4
+- MNT_FORCE = 0x1
+- MSG_BATCH = 0x40000
+- MSG_CMSG_CLOEXEC = 0x40000000
+- MSG_CONFIRM = 0x800
+- MSG_CTRUNC = 0x8
+- MSG_DONTROUTE = 0x4
+- MSG_DONTWAIT = 0x40
+- MSG_EOR = 0x80
+- MSG_ERRQUEUE = 0x2000
+- MSG_FASTOPEN = 0x20000000
+- MSG_FIN = 0x200
+- MSG_MORE = 0x8000
+- MSG_NOSIGNAL = 0x4000
+- MSG_OOB = 0x1
+- MSG_PEEK = 0x2
+- MSG_PROXY = 0x10
+- MSG_RST = 0x1000
+- MSG_SYN = 0x400
+- MSG_TRUNC = 0x20
+- MSG_TRYHARD = 0x4
+- MSG_WAITALL = 0x100
+- MSG_WAITFORONE = 0x10000
+- MS_ACTIVE = 0x40000000
+- MS_ASYNC = 0x1
+- MS_BIND = 0x1000
+- MS_BORN = 0x20000000
+- MS_DIRSYNC = 0x80
+- MS_INVALIDATE = 0x2
+- MS_I_VERSION = 0x800000
+- MS_KERNMOUNT = 0x400000
+- MS_LAZYTIME = 0x2000000
+- MS_MANDLOCK = 0x40
+- MS_MGC_MSK = 0xffff0000
+- MS_MGC_VAL = 0xc0ed0000
+- MS_MOVE = 0x2000
+- MS_NOATIME = 0x400
+- MS_NODEV = 0x4
+- MS_NODIRATIME = 0x800
+- MS_NOEXEC = 0x8
+- MS_NOREMOTELOCK = 0x8000000
+- MS_NOSEC = 0x10000000
+- MS_NOSUID = 0x2
+- MS_NOUSER = -0x80000000
+- MS_POSIXACL = 0x10000
+- MS_PRIVATE = 0x40000
+- MS_RDONLY = 0x1
+- MS_REC = 0x4000
+- MS_RELATIME = 0x200000
+- MS_REMOUNT = 0x20
+- MS_RMT_MASK = 0x2800051
+- MS_SHARED = 0x100000
+- MS_SILENT = 0x8000
+- MS_SLAVE = 0x80000
+- MS_STRICTATIME = 0x1000000
+- MS_SYNC = 0x4
+- MS_SYNCHRONOUS = 0x10
+- MS_UNBINDABLE = 0x20000
+- MS_VERBOSE = 0x8000
+- NAME_MAX = 0xff
+- NETLINK_ADD_MEMBERSHIP = 0x1
+- NETLINK_AUDIT = 0x9
+- NETLINK_BROADCAST_ERROR = 0x4
+- NETLINK_CAP_ACK = 0xa
+- NETLINK_CONNECTOR = 0xb
+- NETLINK_CRYPTO = 0x15
+- NETLINK_DNRTMSG = 0xe
+- NETLINK_DROP_MEMBERSHIP = 0x2
+- NETLINK_ECRYPTFS = 0x13
+- NETLINK_FIB_LOOKUP = 0xa
+- NETLINK_FIREWALL = 0x3
+- NETLINK_GENERIC = 0x10
+- NETLINK_INET_DIAG = 0x4
+- NETLINK_IP6_FW = 0xd
+- NETLINK_ISCSI = 0x8
+- NETLINK_KOBJECT_UEVENT = 0xf
+- NETLINK_LISTEN_ALL_NSID = 0x8
+- NETLINK_LIST_MEMBERSHIPS = 0x9
+- NETLINK_NETFILTER = 0xc
+- NETLINK_NFLOG = 0x5
+- NETLINK_NO_ENOBUFS = 0x5
+- NETLINK_PKTINFO = 0x3
+- NETLINK_RDMA = 0x14
+- NETLINK_ROUTE = 0x0
+- NETLINK_RX_RING = 0x6
+- NETLINK_SCSITRANSPORT = 0x12
+- NETLINK_SELINUX = 0x7
+- NETLINK_SOCK_DIAG = 0x4
+- NETLINK_TX_RING = 0x7
+- NETLINK_UNUSED = 0x1
+- NETLINK_USERSOCK = 0x2
+- NETLINK_XFRM = 0x6
+- NL0 = 0x0
+- NL1 = 0x100
+- NLA_ALIGNTO = 0x4
+- NLA_F_NESTED = 0x8000
+- NLA_F_NET_BYTEORDER = 0x4000
+- NLA_HDRLEN = 0x4
+- NLDLY = 0x100
+- NLMSG_ALIGNTO = 0x4
+- NLMSG_DONE = 0x3
+- NLMSG_ERROR = 0x2
+- NLMSG_HDRLEN = 0x10
+- NLMSG_MIN_TYPE = 0x10
+- NLMSG_NOOP = 0x1
+- NLMSG_OVERRUN = 0x4
+- NLM_F_ACK = 0x4
+- NLM_F_APPEND = 0x800
+- NLM_F_ATOMIC = 0x400
+- NLM_F_CREATE = 0x400
+- NLM_F_DUMP = 0x300
+- NLM_F_DUMP_FILTERED = 0x20
+- NLM_F_DUMP_INTR = 0x10
+- NLM_F_ECHO = 0x8
+- NLM_F_EXCL = 0x200
+- NLM_F_MATCH = 0x200
+- NLM_F_MULTI = 0x2
+- NLM_F_REPLACE = 0x100
+- NLM_F_REQUEST = 0x1
+- NLM_F_ROOT = 0x100
+- NOFLSH = 0x80
+- OCRNL = 0x8
+- OFDEL = 0x80
+- OFILL = 0x40
+- OLCUC = 0x2
+- ONLCR = 0x4
+- ONLRET = 0x20
+- ONOCR = 0x10
+- OPOST = 0x1
+- O_ACCMODE = 0x3
+- O_APPEND = 0x400
+- O_ASYNC = 0x2000
+- O_CLOEXEC = 0x80000
+- O_CREAT = 0x40
+- O_DIRECT = 0x4000
+- O_DIRECTORY = 0x10000
+- O_DSYNC = 0x1000
+- O_EXCL = 0x80
+- O_FSYNC = 0x101000
+- O_LARGEFILE = 0x0
+- O_NDELAY = 0x800
+- O_NOATIME = 0x40000
+- O_NOCTTY = 0x100
+- O_NOFOLLOW = 0x20000
+- O_NONBLOCK = 0x800
+- O_PATH = 0x200000
+- O_RDONLY = 0x0
+- O_RDWR = 0x2
+- O_RSYNC = 0x101000
+- O_SYNC = 0x101000
+- O_TMPFILE = 0x410000
+- O_TRUNC = 0x200
+- O_WRONLY = 0x1
+- PACKET_ADD_MEMBERSHIP = 0x1
+- PACKET_AUXDATA = 0x8
+- PACKET_BROADCAST = 0x1
+- PACKET_COPY_THRESH = 0x7
+- PACKET_DROP_MEMBERSHIP = 0x2
+- PACKET_FANOUT = 0x12
+- PACKET_FANOUT_CBPF = 0x6
+- PACKET_FANOUT_CPU = 0x2
+- PACKET_FANOUT_DATA = 0x16
+- PACKET_FANOUT_EBPF = 0x7
+- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
+- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
+- PACKET_FANOUT_HASH = 0x0
+- PACKET_FANOUT_LB = 0x1
+- PACKET_FANOUT_QM = 0x5
+- PACKET_FANOUT_RND = 0x4
+- PACKET_FANOUT_ROLLOVER = 0x3
+- PACKET_FASTROUTE = 0x6
+- PACKET_HDRLEN = 0xb
+- PACKET_HOST = 0x0
+- PACKET_KERNEL = 0x7
+- PACKET_LOOPBACK = 0x5
+- PACKET_LOSS = 0xe
+- PACKET_MR_ALLMULTI = 0x2
+- PACKET_MR_MULTICAST = 0x0
+- PACKET_MR_PROMISC = 0x1
+- PACKET_MR_UNICAST = 0x3
+- PACKET_MULTICAST = 0x2
+- PACKET_ORIGDEV = 0x9
+- PACKET_OTHERHOST = 0x3
+- PACKET_OUTGOING = 0x4
+- PACKET_QDISC_BYPASS = 0x14
+- PACKET_RECV_OUTPUT = 0x3
+- PACKET_RESERVE = 0xc
+- PACKET_ROLLOVER_STATS = 0x15
+- PACKET_RX_RING = 0x5
+- PACKET_STATISTICS = 0x6
+- PACKET_TIMESTAMP = 0x11
+- PACKET_TX_HAS_OFF = 0x13
+- PACKET_TX_RING = 0xd
+- PACKET_TX_TIMESTAMP = 0x10
+- PACKET_USER = 0x6
+- PACKET_VERSION = 0xa
+- PACKET_VNET_HDR = 0xf
+- PARENB = 0x100
+- PARITY_CRC16_PR0 = 0x2
+- PARITY_CRC16_PR0_CCITT = 0x4
+- PARITY_CRC16_PR1 = 0x3
+- PARITY_CRC16_PR1_CCITT = 0x5
+- PARITY_CRC32_PR0_CCITT = 0x6
+- PARITY_CRC32_PR1_CCITT = 0x7
+- PARITY_DEFAULT = 0x0
+- PARITY_NONE = 0x1
+- PARMRK = 0x8
+- PARODD = 0x200
+- PENDIN = 0x4000
+- PERF_EVENT_IOC_DISABLE = 0x2401
+- PERF_EVENT_IOC_ENABLE = 0x2400
+- PERF_EVENT_IOC_ID = 0x80082407
+- PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
+- PERF_EVENT_IOC_PERIOD = 0x40082404
+- PERF_EVENT_IOC_REFRESH = 0x2402
+- PERF_EVENT_IOC_RESET = 0x2403
+- PERF_EVENT_IOC_SET_BPF = 0x40042408
+- PERF_EVENT_IOC_SET_FILTER = 0x40082406
+- PERF_EVENT_IOC_SET_OUTPUT = 0x2405
+- PRIO_PGRP = 0x1
+- PRIO_PROCESS = 0x0
+- PRIO_USER = 0x2
+- PROT_EXEC = 0x4
+- PROT_GROWSDOWN = 0x1000000
+- PROT_GROWSUP = 0x2000000
+- PROT_NONE = 0x0
+- PROT_READ = 0x1
+- PROT_WRITE = 0x2
+- PR_CAPBSET_DROP = 0x18
+- PR_CAPBSET_READ = 0x17
+- PR_CAP_AMBIENT = 0x2f
+- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
+- PR_CAP_AMBIENT_IS_SET = 0x1
+- PR_CAP_AMBIENT_LOWER = 0x3
+- PR_CAP_AMBIENT_RAISE = 0x2
+- PR_ENDIAN_BIG = 0x0
+- PR_ENDIAN_LITTLE = 0x1
+- PR_ENDIAN_PPC_LITTLE = 0x2
+- PR_FPEMU_NOPRINT = 0x1
+- PR_FPEMU_SIGFPE = 0x2
+- PR_FP_EXC_ASYNC = 0x2
+- PR_FP_EXC_DISABLED = 0x0
+- PR_FP_EXC_DIV = 0x10000
+- PR_FP_EXC_INV = 0x100000
+- PR_FP_EXC_NONRECOV = 0x1
+- PR_FP_EXC_OVF = 0x20000
+- PR_FP_EXC_PRECISE = 0x3
+- PR_FP_EXC_RES = 0x80000
+- PR_FP_EXC_SW_ENABLE = 0x80
+- PR_FP_EXC_UND = 0x40000
+- PR_FP_MODE_FR = 0x1
+- PR_FP_MODE_FRE = 0x2
+- PR_GET_CHILD_SUBREAPER = 0x25
+- PR_GET_DUMPABLE = 0x3
+- PR_GET_ENDIAN = 0x13
+- PR_GET_FPEMU = 0x9
+- PR_GET_FPEXC = 0xb
+- PR_GET_FP_MODE = 0x2e
+- PR_GET_KEEPCAPS = 0x7
+- PR_GET_NAME = 0x10
+- PR_GET_NO_NEW_PRIVS = 0x27
+- PR_GET_PDEATHSIG = 0x2
+- PR_GET_SECCOMP = 0x15
+- PR_GET_SECUREBITS = 0x1b
+- PR_GET_THP_DISABLE = 0x2a
+- PR_GET_TID_ADDRESS = 0x28
+- PR_GET_TIMERSLACK = 0x1e
+- PR_GET_TIMING = 0xd
+- PR_GET_TSC = 0x19
+- PR_GET_UNALIGN = 0x5
+- PR_MCE_KILL = 0x21
+- PR_MCE_KILL_CLEAR = 0x0
+- PR_MCE_KILL_DEFAULT = 0x2
+- PR_MCE_KILL_EARLY = 0x1
+- PR_MCE_KILL_GET = 0x22
+- PR_MCE_KILL_LATE = 0x0
+- PR_MCE_KILL_SET = 0x1
+- PR_MPX_DISABLE_MANAGEMENT = 0x2c
+- PR_MPX_ENABLE_MANAGEMENT = 0x2b
+- PR_SET_CHILD_SUBREAPER = 0x24
+- PR_SET_DUMPABLE = 0x4
+- PR_SET_ENDIAN = 0x14
+- PR_SET_FPEMU = 0xa
+- PR_SET_FPEXC = 0xc
+- PR_SET_FP_MODE = 0x2d
+- PR_SET_KEEPCAPS = 0x8
+- PR_SET_MM = 0x23
+- PR_SET_MM_ARG_END = 0x9
+- PR_SET_MM_ARG_START = 0x8
+- PR_SET_MM_AUXV = 0xc
+- PR_SET_MM_BRK = 0x7
+- PR_SET_MM_END_CODE = 0x2
+- PR_SET_MM_END_DATA = 0x4
+- PR_SET_MM_ENV_END = 0xb
+- PR_SET_MM_ENV_START = 0xa
+- PR_SET_MM_EXE_FILE = 0xd
+- PR_SET_MM_MAP = 0xe
+- PR_SET_MM_MAP_SIZE = 0xf
+- PR_SET_MM_START_BRK = 0x6
+- PR_SET_MM_START_CODE = 0x1
+- PR_SET_MM_START_DATA = 0x3
+- PR_SET_MM_START_STACK = 0x5
+- PR_SET_NAME = 0xf
+- PR_SET_NO_NEW_PRIVS = 0x26
+- PR_SET_PDEATHSIG = 0x1
+- PR_SET_PTRACER = 0x59616d61
+- PR_SET_PTRACER_ANY = -0x1
+- PR_SET_SECCOMP = 0x16
+- PR_SET_SECUREBITS = 0x1c
+- PR_SET_THP_DISABLE = 0x29
+- PR_SET_TIMERSLACK = 0x1d
+- PR_SET_TIMING = 0xe
+- PR_SET_TSC = 0x1a
+- PR_SET_UNALIGN = 0x6
+- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
+- PR_TASK_PERF_EVENTS_ENABLE = 0x20
+- PR_TIMING_STATISTICAL = 0x0
+- PR_TIMING_TIMESTAMP = 0x1
+- PR_TSC_ENABLE = 0x1
+- PR_TSC_SIGSEGV = 0x2
+- PR_UNALIGN_NOPRINT = 0x1
+- PR_UNALIGN_SIGBUS = 0x2
+- PTRACE_ATTACH = 0x10
+- PTRACE_CONT = 0x7
+- PTRACE_DETACH = 0x11
+- PTRACE_DISABLE_TE = 0x5010
+- PTRACE_ENABLE_TE = 0x5009
+- PTRACE_EVENT_CLONE = 0x3
+- PTRACE_EVENT_EXEC = 0x4
+- PTRACE_EVENT_EXIT = 0x6
+- PTRACE_EVENT_FORK = 0x1
+- PTRACE_EVENT_SECCOMP = 0x7
+- PTRACE_EVENT_STOP = 0x80
+- PTRACE_EVENT_VFORK = 0x2
+- PTRACE_EVENT_VFORK_DONE = 0x5
+- PTRACE_GETEVENTMSG = 0x4201
+- PTRACE_GETREGS = 0xc
+- PTRACE_GETREGSET = 0x4204
+- PTRACE_GETSIGINFO = 0x4202
+- PTRACE_GETSIGMASK = 0x420a
+- PTRACE_GET_LAST_BREAK = 0x5006
+- PTRACE_INTERRUPT = 0x4207
+- PTRACE_KILL = 0x8
+- PTRACE_LISTEN = 0x4208
+- PTRACE_OLDSETOPTIONS = 0x15
+- PTRACE_O_EXITKILL = 0x100000
+- PTRACE_O_MASK = 0x3000ff
+- PTRACE_O_SUSPEND_SECCOMP = 0x200000
+- PTRACE_O_TRACECLONE = 0x8
+- PTRACE_O_TRACEEXEC = 0x10
+- PTRACE_O_TRACEEXIT = 0x40
+- PTRACE_O_TRACEFORK = 0x2
+- PTRACE_O_TRACESECCOMP = 0x80
+- PTRACE_O_TRACESYSGOOD = 0x1
+- PTRACE_O_TRACEVFORK = 0x4
+- PTRACE_O_TRACEVFORKDONE = 0x20
+- PTRACE_PEEKDATA = 0x2
+- PTRACE_PEEKDATA_AREA = 0x5003
+- PTRACE_PEEKSIGINFO = 0x4209
+- PTRACE_PEEKSIGINFO_SHARED = 0x1
+- PTRACE_PEEKTEXT = 0x1
+- PTRACE_PEEKTEXT_AREA = 0x5002
+- PTRACE_PEEKUSR = 0x3
+- PTRACE_PEEKUSR_AREA = 0x5000
+- PTRACE_PEEK_SYSTEM_CALL = 0x5007
+- PTRACE_POKEDATA = 0x5
+- PTRACE_POKEDATA_AREA = 0x5005
+- PTRACE_POKETEXT = 0x4
+- PTRACE_POKETEXT_AREA = 0x5004
+- PTRACE_POKEUSR = 0x6
+- PTRACE_POKEUSR_AREA = 0x5001
+- PTRACE_POKE_SYSTEM_CALL = 0x5008
+- PTRACE_PROT = 0x15
+- PTRACE_SECCOMP_GET_FILTER = 0x420c
+- PTRACE_SEIZE = 0x4206
+- PTRACE_SETOPTIONS = 0x4200
+- PTRACE_SETREGS = 0xd
+- PTRACE_SETREGSET = 0x4205
+- PTRACE_SETSIGINFO = 0x4203
+- PTRACE_SETSIGMASK = 0x420b
+- PTRACE_SINGLEBLOCK = 0xc
+- PTRACE_SINGLESTEP = 0x9
+- PTRACE_SYSCALL = 0x18
+- PTRACE_TE_ABORT_RAND = 0x5011
+- PTRACE_TRACEME = 0x0
+- PT_ACR0 = 0x90
+- PT_ACR1 = 0x94
+- PT_ACR10 = 0xb8
+- PT_ACR11 = 0xbc
+- PT_ACR12 = 0xc0
+- PT_ACR13 = 0xc4
+- PT_ACR14 = 0xc8
+- PT_ACR15 = 0xcc
+- PT_ACR2 = 0x98
+- PT_ACR3 = 0x9c
+- PT_ACR4 = 0xa0
+- PT_ACR5 = 0xa4
+- PT_ACR6 = 0xa8
+- PT_ACR7 = 0xac
+- PT_ACR8 = 0xb0
+- PT_ACR9 = 0xb4
+- PT_CR_10 = 0x168
+- PT_CR_11 = 0x170
+- PT_CR_9 = 0x160
+- PT_ENDREGS = 0x1af
+- PT_FPC = 0xd8
+- PT_FPR0 = 0xe0
+- PT_FPR1 = 0xe8
+- PT_FPR10 = 0x130
+- PT_FPR11 = 0x138
+- PT_FPR12 = 0x140
+- PT_FPR13 = 0x148
+- PT_FPR14 = 0x150
+- PT_FPR15 = 0x158
+- PT_FPR2 = 0xf0
+- PT_FPR3 = 0xf8
+- PT_FPR4 = 0x100
+- PT_FPR5 = 0x108
+- PT_FPR6 = 0x110
+- PT_FPR7 = 0x118
+- PT_FPR8 = 0x120
+- PT_FPR9 = 0x128
+- PT_GPR0 = 0x10
+- PT_GPR1 = 0x18
+- PT_GPR10 = 0x60
+- PT_GPR11 = 0x68
+- PT_GPR12 = 0x70
+- PT_GPR13 = 0x78
+- PT_GPR14 = 0x80
+- PT_GPR15 = 0x88
+- PT_GPR2 = 0x20
+- PT_GPR3 = 0x28
+- PT_GPR4 = 0x30
+- PT_GPR5 = 0x38
+- PT_GPR6 = 0x40
+- PT_GPR7 = 0x48
+- PT_GPR8 = 0x50
+- PT_GPR9 = 0x58
+- PT_IEEE_IP = 0x1a8
+- PT_LASTOFF = 0x1a8
+- PT_ORIGGPR2 = 0xd0
+- PT_PSWADDR = 0x8
+- PT_PSWMASK = 0x0
+- RLIMIT_AS = 0x9
+- RLIMIT_CORE = 0x4
+- RLIMIT_CPU = 0x0
+- RLIMIT_DATA = 0x2
+- RLIMIT_FSIZE = 0x1
+- RLIMIT_LOCKS = 0xa
+- RLIMIT_MEMLOCK = 0x8
+- RLIMIT_MSGQUEUE = 0xc
+- RLIMIT_NICE = 0xd
+- RLIMIT_NOFILE = 0x7
+- RLIMIT_NPROC = 0x6
+- RLIMIT_RSS = 0x5
+- RLIMIT_RTPRIO = 0xe
+- RLIMIT_RTTIME = 0xf
+- RLIMIT_SIGPENDING = 0xb
+- RLIMIT_STACK = 0x3
+- RLIM_INFINITY = -0x1
+- RTAX_ADVMSS = 0x8
+- RTAX_CC_ALGO = 0x10
+- RTAX_CWND = 0x7
+- RTAX_FEATURES = 0xc
+- RTAX_FEATURE_ALLFRAG = 0x8
+- RTAX_FEATURE_ECN = 0x1
+- RTAX_FEATURE_MASK = 0xf
+- RTAX_FEATURE_SACK = 0x2
+- RTAX_FEATURE_TIMESTAMP = 0x4
+- RTAX_HOPLIMIT = 0xa
+- RTAX_INITCWND = 0xb
+- RTAX_INITRWND = 0xe
+- RTAX_LOCK = 0x1
+- RTAX_MAX = 0x10
+- RTAX_MTU = 0x2
+- RTAX_QUICKACK = 0xf
+- RTAX_REORDERING = 0x9
+- RTAX_RTO_MIN = 0xd
+- RTAX_RTT = 0x4
+- RTAX_RTTVAR = 0x5
+- RTAX_SSTHRESH = 0x6
+- RTAX_UNSPEC = 0x0
+- RTAX_WINDOW = 0x3
+- RTA_ALIGNTO = 0x4
+- RTA_MAX = 0x19
+- RTCF_DIRECTSRC = 0x4000000
+- RTCF_DOREDIRECT = 0x1000000
+- RTCF_LOG = 0x2000000
+- RTCF_MASQ = 0x400000
+- RTCF_NAT = 0x800000
+- RTCF_VALVE = 0x200000
+- RTF_ADDRCLASSMASK = 0xf8000000
+- RTF_ADDRCONF = 0x40000
+- RTF_ALLONLINK = 0x20000
+- RTF_BROADCAST = 0x10000000
+- RTF_CACHE = 0x1000000
+- RTF_DEFAULT = 0x10000
+- RTF_DYNAMIC = 0x10
+- RTF_FLOW = 0x2000000
+- RTF_GATEWAY = 0x2
+- RTF_HOST = 0x4
+- RTF_INTERFACE = 0x40000000
+- RTF_IRTT = 0x100
+- RTF_LINKRT = 0x100000
+- RTF_LOCAL = 0x80000000
+- RTF_MODIFIED = 0x20
+- RTF_MSS = 0x40
+- RTF_MTU = 0x40
+- RTF_MULTICAST = 0x20000000
+- RTF_NAT = 0x8000000
+- RTF_NOFORWARD = 0x1000
+- RTF_NONEXTHOP = 0x200000
+- RTF_NOPMTUDISC = 0x4000
+- RTF_POLICY = 0x4000000
+- RTF_REINSTATE = 0x8
+- RTF_REJECT = 0x200
+- RTF_STATIC = 0x400
+- RTF_THROW = 0x2000
+- RTF_UP = 0x1
+- RTF_WINDOW = 0x80
+- RTF_XRESOLVE = 0x800
+- RTM_BASE = 0x10
+- RTM_DELACTION = 0x31
+- RTM_DELADDR = 0x15
+- RTM_DELADDRLABEL = 0x49
+- RTM_DELLINK = 0x11
+- RTM_DELMDB = 0x55
+- RTM_DELNEIGH = 0x1d
+- RTM_DELNSID = 0x59
+- RTM_DELQDISC = 0x25
+- RTM_DELROUTE = 0x19
+- RTM_DELRULE = 0x21
+- RTM_DELTCLASS = 0x29
+- RTM_DELTFILTER = 0x2d
+- RTM_F_CLONED = 0x200
+- RTM_F_EQUALIZE = 0x400
+- RTM_F_LOOKUP_TABLE = 0x1000
+- RTM_F_NOTIFY = 0x100
+- RTM_F_PREFIX = 0x800
+- RTM_GETACTION = 0x32
+- RTM_GETADDR = 0x16
+- RTM_GETADDRLABEL = 0x4a
+- RTM_GETANYCAST = 0x3e
+- RTM_GETDCB = 0x4e
+- RTM_GETLINK = 0x12
+- RTM_GETMDB = 0x56
+- RTM_GETMULTICAST = 0x3a
+- RTM_GETNEIGH = 0x1e
+- RTM_GETNEIGHTBL = 0x42
+- RTM_GETNETCONF = 0x52
+- RTM_GETNSID = 0x5a
+- RTM_GETQDISC = 0x26
+- RTM_GETROUTE = 0x1a
+- RTM_GETRULE = 0x22
+- RTM_GETSTATS = 0x5e
+- RTM_GETTCLASS = 0x2a
+- RTM_GETTFILTER = 0x2e
+- RTM_MAX = 0x5f
+- RTM_NEWACTION = 0x30
+- RTM_NEWADDR = 0x14
+- RTM_NEWADDRLABEL = 0x48
+- RTM_NEWLINK = 0x10
+- RTM_NEWMDB = 0x54
+- RTM_NEWNDUSEROPT = 0x44
+- RTM_NEWNEIGH = 0x1c
+- RTM_NEWNEIGHTBL = 0x40
+- RTM_NEWNETCONF = 0x50
+- RTM_NEWNSID = 0x58
+- RTM_NEWPREFIX = 0x34
+- RTM_NEWQDISC = 0x24
+- RTM_NEWROUTE = 0x18
+- RTM_NEWRULE = 0x20
+- RTM_NEWSTATS = 0x5c
+- RTM_NEWTCLASS = 0x28
+- RTM_NEWTFILTER = 0x2c
+- RTM_NR_FAMILIES = 0x14
+- RTM_NR_MSGTYPES = 0x50
+- RTM_SETDCB = 0x4f
+- RTM_SETLINK = 0x13
+- RTM_SETNEIGHTBL = 0x43
+- RTNH_ALIGNTO = 0x4
+- RTNH_COMPARE_MASK = 0x19
+- RTNH_F_DEAD = 0x1
+- RTNH_F_LINKDOWN = 0x10
+- RTNH_F_OFFLOAD = 0x8
+- RTNH_F_ONLINK = 0x4
+- RTNH_F_PERVASIVE = 0x2
+- RTN_MAX = 0xb
+- RTPROT_BABEL = 0x2a
+- RTPROT_BIRD = 0xc
+- RTPROT_BOOT = 0x3
+- RTPROT_DHCP = 0x10
+- RTPROT_DNROUTED = 0xd
+- RTPROT_GATED = 0x8
+- RTPROT_KERNEL = 0x2
+- RTPROT_MROUTED = 0x11
+- RTPROT_MRT = 0xa
+- RTPROT_NTK = 0xf
+- RTPROT_RA = 0x9
+- RTPROT_REDIRECT = 0x1
+- RTPROT_STATIC = 0x4
+- RTPROT_UNSPEC = 0x0
+- RTPROT_XORP = 0xe
+- RTPROT_ZEBRA = 0xb
+- RT_CLASS_DEFAULT = 0xfd
+- RT_CLASS_LOCAL = 0xff
+- RT_CLASS_MAIN = 0xfe
+- RT_CLASS_MAX = 0xff
+- RT_CLASS_UNSPEC = 0x0
+- RUSAGE_CHILDREN = -0x1
+- RUSAGE_SELF = 0x0
+- RUSAGE_THREAD = 0x1
+- SCM_CREDENTIALS = 0x2
+- SCM_RIGHTS = 0x1
+- SCM_TIMESTAMP = 0x1d
+- SCM_TIMESTAMPING = 0x25
+- SCM_TIMESTAMPING_OPT_STATS = 0x36
+- SCM_TIMESTAMPNS = 0x23
+- SCM_WIFI_STATUS = 0x29
+- SECCOMP_MODE_DISABLED = 0x0
+- SECCOMP_MODE_FILTER = 0x2
+- SECCOMP_MODE_STRICT = 0x1
+- SHUT_RD = 0x0
+- SHUT_RDWR = 0x2
+- SHUT_WR = 0x1
+- SIOCADDDLCI = 0x8980
+- SIOCADDMULTI = 0x8931
+- SIOCADDRT = 0x890b
+- SIOCATMARK = 0x8905
+- SIOCBONDCHANGEACTIVE = 0x8995
+- SIOCBONDENSLAVE = 0x8990
+- SIOCBONDINFOQUERY = 0x8994
+- SIOCBONDRELEASE = 0x8991
+- SIOCBONDSETHWADDR = 0x8992
+- SIOCBONDSLAVEINFOQUERY = 0x8993
+- SIOCBRADDBR = 0x89a0
+- SIOCBRADDIF = 0x89a2
+- SIOCBRDELBR = 0x89a1
+- SIOCBRDELIF = 0x89a3
+- SIOCDARP = 0x8953
+- SIOCDELDLCI = 0x8981
+- SIOCDELMULTI = 0x8932
+- SIOCDELRT = 0x890c
+- SIOCDEVPRIVATE = 0x89f0
+- SIOCDIFADDR = 0x8936
+- SIOCDRARP = 0x8960
+- SIOCETHTOOL = 0x8946
+- SIOCGARP = 0x8954
+- SIOCGHWTSTAMP = 0x89b1
+- SIOCGIFADDR = 0x8915
+- SIOCGIFBR = 0x8940
+- SIOCGIFBRDADDR = 0x8919
+- SIOCGIFCONF = 0x8912
+- SIOCGIFCOUNT = 0x8938
+- SIOCGIFDSTADDR = 0x8917
+- SIOCGIFENCAP = 0x8925
+- SIOCGIFFLAGS = 0x8913
+- SIOCGIFHWADDR = 0x8927
+- SIOCGIFINDEX = 0x8933
+- SIOCGIFMAP = 0x8970
+- SIOCGIFMEM = 0x891f
+- SIOCGIFMETRIC = 0x891d
+- SIOCGIFMTU = 0x8921
+- SIOCGIFNAME = 0x8910
+- SIOCGIFNETMASK = 0x891b
+- SIOCGIFPFLAGS = 0x8935
+- SIOCGIFSLAVE = 0x8929
+- SIOCGIFTXQLEN = 0x8942
+- SIOCGIFVLAN = 0x8982
+- SIOCGMIIPHY = 0x8947
+- SIOCGMIIREG = 0x8948
+- SIOCGPGRP = 0x8904
+- SIOCGRARP = 0x8961
+- SIOCGSKNS = 0x894c
+- SIOCGSTAMP = 0x8906
+- SIOCGSTAMPNS = 0x8907
+- SIOCINQ = 0x541b
+- SIOCOUTQ = 0x5411
+- SIOCOUTQNSD = 0x894b
+- SIOCPROTOPRIVATE = 0x89e0
+- SIOCRTMSG = 0x890d
+- SIOCSARP = 0x8955
+- SIOCSHWTSTAMP = 0x89b0
+- SIOCSIFADDR = 0x8916
+- SIOCSIFBR = 0x8941
+- SIOCSIFBRDADDR = 0x891a
+- SIOCSIFDSTADDR = 0x8918
+- SIOCSIFENCAP = 0x8926
+- SIOCSIFFLAGS = 0x8914
+- SIOCSIFHWADDR = 0x8924
+- SIOCSIFHWBROADCAST = 0x8937
+- SIOCSIFLINK = 0x8911
+- SIOCSIFMAP = 0x8971
+- SIOCSIFMEM = 0x8920
+- SIOCSIFMETRIC = 0x891e
+- SIOCSIFMTU = 0x8922
+- SIOCSIFNAME = 0x8923
+- SIOCSIFNETMASK = 0x891c
+- SIOCSIFPFLAGS = 0x8934
+- SIOCSIFSLAVE = 0x8930
+- SIOCSIFTXQLEN = 0x8943
+- SIOCSIFVLAN = 0x8983
+- SIOCSMIIREG = 0x8949
+- SIOCSPGRP = 0x8902
+- SIOCSRARP = 0x8962
+- SIOCWANDEV = 0x894a
+- SOCK_CLOEXEC = 0x80000
+- SOCK_DCCP = 0x6
+- SOCK_DGRAM = 0x2
+- SOCK_IOC_TYPE = 0x89
+- SOCK_NONBLOCK = 0x800
+- SOCK_PACKET = 0xa
+- SOCK_RAW = 0x3
+- SOCK_RDM = 0x4
+- SOCK_SEQPACKET = 0x5
+- SOCK_STREAM = 0x1
+- SOL_AAL = 0x109
+- SOL_ALG = 0x117
+- SOL_ATM = 0x108
+- SOL_CAIF = 0x116
+- SOL_CAN_BASE = 0x64
+- SOL_DCCP = 0x10d
+- SOL_DECNET = 0x105
+- SOL_ICMPV6 = 0x3a
+- SOL_IP = 0x0
+- SOL_IPV6 = 0x29
+- SOL_IRDA = 0x10a
+- SOL_IUCV = 0x115
+- SOL_KCM = 0x119
+- SOL_LLC = 0x10c
+- SOL_NETBEUI = 0x10b
+- SOL_NETLINK = 0x10e
+- SOL_NFC = 0x118
+- SOL_PACKET = 0x107
+- SOL_PNPIPE = 0x113
+- SOL_PPPOL2TP = 0x111
+- SOL_RAW = 0xff
+- SOL_RDS = 0x114
+- SOL_RXRPC = 0x110
+- SOL_SOCKET = 0x1
+- SOL_TCP = 0x6
+- SOL_TIPC = 0x10f
+- SOL_X25 = 0x106
+- SOMAXCONN = 0x80
+- SO_ACCEPTCONN = 0x1e
+- SO_ATTACH_BPF = 0x32
+- SO_ATTACH_FILTER = 0x1a
+- SO_ATTACH_REUSEPORT_CBPF = 0x33
+- SO_ATTACH_REUSEPORT_EBPF = 0x34
+- SO_BINDTODEVICE = 0x19
+- SO_BPF_EXTENSIONS = 0x30
+- SO_BROADCAST = 0x6
+- SO_BSDCOMPAT = 0xe
+- SO_BUSY_POLL = 0x2e
+- SO_CNX_ADVICE = 0x35
+- SO_DEBUG = 0x1
+- SO_DETACH_BPF = 0x1b
+- SO_DETACH_FILTER = 0x1b
+- SO_DOMAIN = 0x27
+- SO_DONTROUTE = 0x5
+- SO_ERROR = 0x4
+- SO_GET_FILTER = 0x1a
+- SO_INCOMING_CPU = 0x31
+- SO_KEEPALIVE = 0x9
+- SO_LINGER = 0xd
+- SO_LOCK_FILTER = 0x2c
+- SO_MARK = 0x24
+- SO_MAX_PACING_RATE = 0x2f
+- SO_NOFCS = 0x2b
+- SO_NO_CHECK = 0xb
+- SO_OOBINLINE = 0xa
+- SO_PASSCRED = 0x10
+- SO_PASSSEC = 0x22
+- SO_PEEK_OFF = 0x2a
+- SO_PEERCRED = 0x11
+- SO_PEERNAME = 0x1c
+- SO_PEERSEC = 0x1f
+- SO_PRIORITY = 0xc
+- SO_PROTOCOL = 0x26
+- SO_RCVBUF = 0x8
+- SO_RCVBUFFORCE = 0x21
+- SO_RCVLOWAT = 0x12
+- SO_RCVTIMEO = 0x14
+- SO_REUSEADDR = 0x2
+- SO_REUSEPORT = 0xf
+- SO_RXQ_OVFL = 0x28
+- SO_SECURITY_AUTHENTICATION = 0x16
+- SO_SECURITY_ENCRYPTION_NETWORK = 0x18
+- SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
+- SO_SELECT_ERR_QUEUE = 0x2d
+- SO_SNDBUF = 0x7
+- SO_SNDBUFFORCE = 0x20
+- SO_SNDLOWAT = 0x13
+- SO_SNDTIMEO = 0x15
+- SO_TIMESTAMP = 0x1d
+- SO_TIMESTAMPING = 0x25
+- SO_TIMESTAMPNS = 0x23
+- SO_TYPE = 0x3
+- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
+- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
+- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
+- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
+- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
+- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
+- SO_VM_SOCKETS_TRUSTED = 0x5
+- SO_WIFI_STATUS = 0x29
+- SPLICE_F_GIFT = 0x8
+- SPLICE_F_MORE = 0x4
+- SPLICE_F_MOVE = 0x1
+- SPLICE_F_NONBLOCK = 0x2
+- S_BLKSIZE = 0x200
+- S_IEXEC = 0x40
+- S_IFBLK = 0x6000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFIFO = 0x1000
+- S_IFLNK = 0xa000
+- S_IFMT = 0xf000
+- S_IFREG = 0x8000
+- S_IFSOCK = 0xc000
+- S_IREAD = 0x100
+- S_IRGRP = 0x20
+- S_IROTH = 0x4
+- S_IRUSR = 0x100
+- S_IRWXG = 0x38
+- S_IRWXO = 0x7
+- S_IRWXU = 0x1c0
+- S_ISGID = 0x400
+- S_ISUID = 0x800
+- S_ISVTX = 0x200
+- S_IWGRP = 0x10
+- S_IWOTH = 0x2
+- S_IWRITE = 0x80
+- S_IWUSR = 0x80
+- S_IXGRP = 0x8
+- S_IXOTH = 0x1
+- S_IXUSR = 0x40
+- TAB0 = 0x0
+- TAB1 = 0x800
+- TAB2 = 0x1000
+- TAB3 = 0x1800
+- TABDLY = 0x1800
+- TASKSTATS_CMD_ATTR_MAX = 0x4
+- TASKSTATS_CMD_MAX = 0x2
+- TASKSTATS_GENL_NAME = "TASKSTATS"
+- TASKSTATS_GENL_VERSION = 0x1
+- TASKSTATS_TYPE_MAX = 0x6
+- TASKSTATS_VERSION = 0x8
+- TCFLSH = 0x540b
+- TCGETA = 0x5405
+- TCGETS = 0x5401
+- TCGETS2 = 0x802c542a
+- TCGETX = 0x5432
+- TCIFLUSH = 0x0
+- TCIOFF = 0x2
+- TCIOFLUSH = 0x2
+- TCION = 0x3
+- TCOFLUSH = 0x1
+- TCOOFF = 0x0
+- TCOON = 0x1
+- TCP_CC_INFO = 0x1a
+- TCP_CONGESTION = 0xd
+- TCP_COOKIE_IN_ALWAYS = 0x1
+- TCP_COOKIE_MAX = 0x10
+- TCP_COOKIE_MIN = 0x8
+- TCP_COOKIE_OUT_NEVER = 0x2
+- TCP_COOKIE_PAIR_SIZE = 0x20
+- TCP_COOKIE_TRANSACTIONS = 0xf
+- TCP_CORK = 0x3
+- TCP_DEFER_ACCEPT = 0x9
+- TCP_FASTOPEN = 0x17
+- TCP_INFO = 0xb
+- TCP_KEEPCNT = 0x6
+- TCP_KEEPIDLE = 0x4
+- TCP_KEEPINTVL = 0x5
+- TCP_LINGER2 = 0x8
+- TCP_MAXSEG = 0x2
+- TCP_MAXWIN = 0xffff
+- TCP_MAX_WINSHIFT = 0xe
+- TCP_MD5SIG = 0xe
+- TCP_MD5SIG_MAXKEYLEN = 0x50
+- TCP_MSS = 0x200
+- TCP_MSS_DEFAULT = 0x218
+- TCP_MSS_DESIRED = 0x4c4
+- TCP_NODELAY = 0x1
+- TCP_NOTSENT_LOWAT = 0x19
+- TCP_QUEUE_SEQ = 0x15
+- TCP_QUICKACK = 0xc
+- TCP_REPAIR = 0x13
+- TCP_REPAIR_OPTIONS = 0x16
+- TCP_REPAIR_QUEUE = 0x14
+- TCP_REPAIR_WINDOW = 0x1d
+- TCP_SAVED_SYN = 0x1c
+- TCP_SAVE_SYN = 0x1b
+- TCP_SYNCNT = 0x7
+- TCP_S_DATA_IN = 0x4
+- TCP_S_DATA_OUT = 0x8
+- TCP_THIN_DUPACK = 0x11
+- TCP_THIN_LINEAR_TIMEOUTS = 0x10
+- TCP_TIMESTAMP = 0x18
+- TCP_USER_TIMEOUT = 0x12
+- TCP_WINDOW_CLAMP = 0xa
+- TCSAFLUSH = 0x2
+- TCSBRK = 0x5409
+- TCSBRKP = 0x5425
+- TCSETA = 0x5406
+- TCSETAF = 0x5408
+- TCSETAW = 0x5407
+- TCSETS = 0x5402
+- TCSETS2 = 0x402c542b
+- TCSETSF = 0x5404
+- TCSETSF2 = 0x402c542d
+- TCSETSW = 0x5403
+- TCSETSW2 = 0x402c542c
+- TCSETX = 0x5433
+- TCSETXF = 0x5434
+- TCSETXW = 0x5435
+- TCXONC = 0x540a
+- TIOCCBRK = 0x5428
+- TIOCCONS = 0x541d
+- TIOCEXCL = 0x540c
+- TIOCGDEV = 0x80045432
+- TIOCGETD = 0x5424
+- TIOCGEXCL = 0x80045440
+- TIOCGICOUNT = 0x545d
+- TIOCGLCKTRMIOS = 0x5456
+- TIOCGPGRP = 0x540f
+- TIOCGPKT = 0x80045438
+- TIOCGPTLCK = 0x80045439
+- TIOCGPTN = 0x80045430
+- TIOCGRS485 = 0x542e
+- TIOCGSERIAL = 0x541e
+- TIOCGSID = 0x5429
+- TIOCGSOFTCAR = 0x5419
+- TIOCGWINSZ = 0x5413
+- TIOCINQ = 0x541b
+- TIOCLINUX = 0x541c
+- TIOCMBIC = 0x5417
+- TIOCMBIS = 0x5416
+- TIOCMGET = 0x5415
+- TIOCMIWAIT = 0x545c
+- TIOCMSET = 0x5418
+- TIOCM_CAR = 0x40
+- TIOCM_CD = 0x40
+- TIOCM_CTS = 0x20
+- TIOCM_DSR = 0x100
+- TIOCM_DTR = 0x2
+- TIOCM_LE = 0x1
+- TIOCM_RI = 0x80
+- TIOCM_RNG = 0x80
+- TIOCM_RTS = 0x4
+- TIOCM_SR = 0x10
+- TIOCM_ST = 0x8
+- TIOCNOTTY = 0x5422
+- TIOCNXCL = 0x540d
+- TIOCOUTQ = 0x5411
+- TIOCPKT = 0x5420
+- TIOCPKT_DATA = 0x0
+- TIOCPKT_DOSTOP = 0x20
+- TIOCPKT_FLUSHREAD = 0x1
+- TIOCPKT_FLUSHWRITE = 0x2
+- TIOCPKT_IOCTL = 0x40
+- TIOCPKT_NOSTOP = 0x10
+- TIOCPKT_START = 0x8
+- TIOCPKT_STOP = 0x4
+- TIOCSBRK = 0x5427
+- TIOCSCTTY = 0x540e
+- TIOCSERCONFIG = 0x5453
+- TIOCSERGETLSR = 0x5459
+- TIOCSERGETMULTI = 0x545a
+- TIOCSERGSTRUCT = 0x5458
+- TIOCSERGWILD = 0x5454
+- TIOCSERSETMULTI = 0x545b
+- TIOCSERSWILD = 0x5455
+- TIOCSER_TEMT = 0x1
+- TIOCSETD = 0x5423
+- TIOCSIG = 0x40045436
+- TIOCSLCKTRMIOS = 0x5457
+- TIOCSPGRP = 0x5410
+- TIOCSPTLCK = 0x40045431
+- TIOCSRS485 = 0x542f
+- TIOCSSERIAL = 0x541f
+- TIOCSSOFTCAR = 0x541a
+- TIOCSTI = 0x5412
+- TIOCSWINSZ = 0x5414
+- TIOCVHANGUP = 0x5437
+- TOSTOP = 0x100
+- TS_COMM_LEN = 0x20
+- TUNATTACHFILTER = 0x401054d5
+- TUNDETACHFILTER = 0x401054d6
+- TUNGETFEATURES = 0x800454cf
+- TUNGETFILTER = 0x801054db
+- TUNGETIFF = 0x800454d2
+- TUNGETSNDBUF = 0x800454d3
+- TUNGETVNETBE = 0x800454df
+- TUNGETVNETHDRSZ = 0x800454d7
+- TUNGETVNETLE = 0x800454dd
+- TUNSETDEBUG = 0x400454c9
+- TUNSETGROUP = 0x400454ce
+- TUNSETIFF = 0x400454ca
+- TUNSETIFINDEX = 0x400454da
+- TUNSETLINK = 0x400454cd
+- TUNSETNOCSUM = 0x400454c8
+- TUNSETOFFLOAD = 0x400454d0
+- TUNSETOWNER = 0x400454cc
+- TUNSETPERSIST = 0x400454cb
+- TUNSETQUEUE = 0x400454d9
+- TUNSETSNDBUF = 0x400454d4
+- TUNSETTXFILTER = 0x400454d1
+- TUNSETVNETBE = 0x400454de
+- TUNSETVNETHDRSZ = 0x400454d8
+- TUNSETVNETLE = 0x400454dc
+- UMOUNT_NOFOLLOW = 0x8
+- VDISCARD = 0xd
+- VEOF = 0x4
+- VEOL = 0xb
+- VEOL2 = 0x10
+- VERASE = 0x2
+- VINTR = 0x0
+- VKILL = 0x3
+- VLNEXT = 0xf
+- VMADDR_CID_ANY = 0xffffffff
+- VMADDR_CID_HOST = 0x2
+- VMADDR_CID_HYPERVISOR = 0x0
+- VMADDR_CID_RESERVED = 0x1
+- VMADDR_PORT_ANY = 0xffffffff
+- VMIN = 0x6
+- VM_SOCKETS_INVALID_VERSION = 0xffffffff
+- VQUIT = 0x1
+- VREPRINT = 0xc
+- VSTART = 0x8
+- VSTOP = 0x9
+- VSUSP = 0xa
+- VSWTC = 0x7
+- VT0 = 0x0
+- VT1 = 0x4000
+- VTDLY = 0x4000
+- VTIME = 0x5
+- VWERASE = 0xe
+- WALL = 0x40000000
+- WCLONE = 0x80000000
+- WCONTINUED = 0x8
+- WEXITED = 0x4
+- WNOHANG = 0x1
+- WNOTHREAD = 0x20000000
+- WNOWAIT = 0x1000000
+- WORDSIZE = 0x40
+- WSTOPPED = 0x2
+- WUNTRACED = 0x2
+- XATTR_CREATE = 0x1
+- XATTR_REPLACE = 0x2
+- XCASE = 0x4
+- XTABS = 0x1800
++ B1000000 = 0x1008
++ B115200 = 0x1002
++ B1152000 = 0x1009
++ B1500000 = 0x100a
++ B2000000 = 0x100b
++ B230400 = 0x1003
++ B2500000 = 0x100c
++ B3000000 = 0x100d
++ B3500000 = 0x100e
++ B4000000 = 0x100f
++ B460800 = 0x1004
++ B500000 = 0x1005
++ B57600 = 0x1001
++ B576000 = 0x1006
++ B921600 = 0x1007
++ BLKBSZGET = 0x80081270
++ BLKBSZSET = 0x40081271
++ BLKFLSBUF = 0x1261
++ BLKFRAGET = 0x1265
++ BLKFRASET = 0x1264
++ BLKGETSIZE = 0x1260
++ BLKGETSIZE64 = 0x80081272
++ BLKPBSZGET = 0x127b
++ BLKRAGET = 0x1263
++ BLKRASET = 0x1262
++ BLKROGET = 0x125e
++ BLKROSET = 0x125d
++ BLKRRPART = 0x125f
++ BLKSECTGET = 0x1267
++ BLKSECTSET = 0x1266
++ BLKSSZGET = 0x1268
++ BOTHER = 0x1000
++ BS1 = 0x2000
++ BSDLY = 0x2000
++ CBAUD = 0x100f
++ CBAUDEX = 0x1000
++ CIBAUD = 0x100f0000
++ CLOCAL = 0x800
++ CR1 = 0x200
++ CR2 = 0x400
++ CR3 = 0x600
++ CRDLY = 0x600
++ CREAD = 0x80
++ CS6 = 0x10
++ CS7 = 0x20
++ CS8 = 0x30
++ CSIZE = 0x30
++ CSTOPB = 0x40
++ ECHOCTL = 0x200
++ ECHOE = 0x10
++ ECHOK = 0x20
++ ECHOKE = 0x800
++ ECHONL = 0x40
++ ECHOPRT = 0x400
++ EFD_CLOEXEC = 0x80000
++ EFD_NONBLOCK = 0x800
++ EPOLL_CLOEXEC = 0x80000
++ EXTPROC = 0x10000
++ FF1 = 0x8000
++ FFDLY = 0x8000
++ FLUSHO = 0x1000
++ FS_IOC_ENABLE_VERITY = 0x40806685
++ FS_IOC_GETFLAGS = 0x80086601
++ FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615
++ FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614
++ FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613
++ F_GETLK = 0x5
++ F_GETLK64 = 0x5
++ F_GETOWN = 0x9
++ F_RDLCK = 0x0
++ F_SETLK = 0x6
++ F_SETLK64 = 0x6
++ F_SETLKW = 0x7
++ F_SETLKW64 = 0x7
++ F_SETOWN = 0x8
++ F_UNLCK = 0x2
++ F_WRLCK = 0x1
++ HUPCL = 0x400
++ ICANON = 0x2
++ IEXTEN = 0x8000
++ IN_CLOEXEC = 0x80000
++ IN_NONBLOCK = 0x800
++ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x7b9
++ ISIG = 0x1
++ IUCLC = 0x200
++ IXOFF = 0x1000
++ IXON = 0x400
++ MAP_ANON = 0x20
++ MAP_ANONYMOUS = 0x20
++ MAP_DENYWRITE = 0x800
++ MAP_EXECUTABLE = 0x1000
++ MAP_GROWSDOWN = 0x100
++ MAP_HUGETLB = 0x40000
++ MAP_LOCKED = 0x2000
++ MAP_NONBLOCK = 0x10000
++ MAP_NORESERVE = 0x4000
++ MAP_POPULATE = 0x8000
++ MAP_STACK = 0x20000
++ MAP_SYNC = 0x80000
++ MCL_CURRENT = 0x1
++ MCL_FUTURE = 0x2
++ MCL_ONFAULT = 0x4
++ NFDBITS = 0x40
++ NLDLY = 0x100
++ NOFLSH = 0x80
++ NS_GET_NSTYPE = 0xb703
++ NS_GET_OWNER_UID = 0xb704
++ NS_GET_PARENT = 0xb702
++ NS_GET_USERNS = 0xb701
++ OLCUC = 0x2
++ ONLCR = 0x4
++ O_APPEND = 0x400
++ O_ASYNC = 0x2000
++ O_CLOEXEC = 0x80000
++ O_CREAT = 0x40
++ O_DIRECT = 0x4000
++ O_DIRECTORY = 0x10000
++ O_DSYNC = 0x1000
++ O_EXCL = 0x80
++ O_FSYNC = 0x101000
++ O_LARGEFILE = 0x0
++ O_NDELAY = 0x800
++ O_NOATIME = 0x40000
++ O_NOCTTY = 0x100
++ O_NOFOLLOW = 0x20000
++ O_NONBLOCK = 0x800
++ O_PATH = 0x200000
++ O_RSYNC = 0x101000
++ O_SYNC = 0x101000
++ O_TMPFILE = 0x410000
++ O_TRUNC = 0x200
++ PARENB = 0x100
++ PARODD = 0x200
++ PENDIN = 0x4000
++ PERF_EVENT_IOC_DISABLE = 0x2401
++ PERF_EVENT_IOC_ENABLE = 0x2400
++ PERF_EVENT_IOC_ID = 0x80082407
++ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x4008240b
++ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409
++ PERF_EVENT_IOC_PERIOD = 0x40082404
++ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
++ PERF_EVENT_IOC_REFRESH = 0x2402
++ PERF_EVENT_IOC_RESET = 0x2403
++ PERF_EVENT_IOC_SET_BPF = 0x40042408
++ PERF_EVENT_IOC_SET_FILTER = 0x40082406
++ PERF_EVENT_IOC_SET_OUTPUT = 0x2405
++ PPPIOCATTACH = 0x4004743d
++ PPPIOCATTCHAN = 0x40047438
++ PPPIOCCONNECT = 0x4004743a
++ PPPIOCDETACH = 0x4004743c
++ PPPIOCDISCONN = 0x7439
++ PPPIOCGASYNCMAP = 0x80047458
++ PPPIOCGCHAN = 0x80047437
++ PPPIOCGDEBUG = 0x80047441
++ PPPIOCGFLAGS = 0x8004745a
++ PPPIOCGIDLE = 0x8010743f
++ PPPIOCGIDLE32 = 0x8008743f
++ PPPIOCGIDLE64 = 0x8010743f
++ PPPIOCGL2TPSTATS = 0x80487436
++ PPPIOCGMRU = 0x80047453
++ PPPIOCGRASYNCMAP = 0x80047455
++ PPPIOCGUNIT = 0x80047456
++ PPPIOCGXASYNCMAP = 0x80207450
++ PPPIOCSACTIVE = 0x40107446
++ PPPIOCSASYNCMAP = 0x40047457
++ PPPIOCSCOMPRESS = 0x4010744d
++ PPPIOCSDEBUG = 0x40047440
++ PPPIOCSFLAGS = 0x40047459
++ PPPIOCSMAXCID = 0x40047451
++ PPPIOCSMRRU = 0x4004743b
++ PPPIOCSMRU = 0x40047452
++ PPPIOCSNPMODE = 0x4008744b
++ PPPIOCSPASS = 0x40107447
++ PPPIOCSRASYNCMAP = 0x40047454
++ PPPIOCSXASYNCMAP = 0x4020744f
++ PPPIOCXFERUNIT = 0x744e
++ PR_SET_PTRACER_ANY = 0xffffffffffffffff
++ PTRACE_DISABLE_TE = 0x5010
++ PTRACE_ENABLE_TE = 0x5009
++ PTRACE_GET_LAST_BREAK = 0x5006
++ PTRACE_OLDSETOPTIONS = 0x15
++ PTRACE_PEEKDATA_AREA = 0x5003
++ PTRACE_PEEKTEXT_AREA = 0x5002
++ PTRACE_PEEKUSR_AREA = 0x5000
++ PTRACE_PEEK_SYSTEM_CALL = 0x5007
++ PTRACE_POKEDATA_AREA = 0x5005
++ PTRACE_POKETEXT_AREA = 0x5004
++ PTRACE_POKEUSR_AREA = 0x5001
++ PTRACE_POKE_SYSTEM_CALL = 0x5008
++ PTRACE_PROT = 0x15
++ PTRACE_SINGLEBLOCK = 0xc
++ PTRACE_TE_ABORT_RAND = 0x5011
++ PT_ACR0 = 0x90
++ PT_ACR1 = 0x94
++ PT_ACR10 = 0xb8
++ PT_ACR11 = 0xbc
++ PT_ACR12 = 0xc0
++ PT_ACR13 = 0xc4
++ PT_ACR14 = 0xc8
++ PT_ACR15 = 0xcc
++ PT_ACR2 = 0x98
++ PT_ACR3 = 0x9c
++ PT_ACR4 = 0xa0
++ PT_ACR5 = 0xa4
++ PT_ACR6 = 0xa8
++ PT_ACR7 = 0xac
++ PT_ACR8 = 0xb0
++ PT_ACR9 = 0xb4
++ PT_CR_10 = 0x168
++ PT_CR_11 = 0x170
++ PT_CR_9 = 0x160
++ PT_ENDREGS = 0x1af
++ PT_FPC = 0xd8
++ PT_FPR0 = 0xe0
++ PT_FPR1 = 0xe8
++ PT_FPR10 = 0x130
++ PT_FPR11 = 0x138
++ PT_FPR12 = 0x140
++ PT_FPR13 = 0x148
++ PT_FPR14 = 0x150
++ PT_FPR15 = 0x158
++ PT_FPR2 = 0xf0
++ PT_FPR3 = 0xf8
++ PT_FPR4 = 0x100
++ PT_FPR5 = 0x108
++ PT_FPR6 = 0x110
++ PT_FPR7 = 0x118
++ PT_FPR8 = 0x120
++ PT_FPR9 = 0x128
++ PT_GPR0 = 0x10
++ PT_GPR1 = 0x18
++ PT_GPR10 = 0x60
++ PT_GPR11 = 0x68
++ PT_GPR12 = 0x70
++ PT_GPR13 = 0x78
++ PT_GPR14 = 0x80
++ PT_GPR15 = 0x88
++ PT_GPR2 = 0x20
++ PT_GPR3 = 0x28
++ PT_GPR4 = 0x30
++ PT_GPR5 = 0x38
++ PT_GPR6 = 0x40
++ PT_GPR7 = 0x48
++ PT_GPR8 = 0x50
++ PT_GPR9 = 0x58
++ PT_IEEE_IP = 0x1a8
++ PT_LASTOFF = 0x1a8
++ PT_ORIGGPR2 = 0xd0
++ PT_PSWADDR = 0x8
++ PT_PSWMASK = 0x0
++ RLIMIT_AS = 0x9
++ RLIMIT_MEMLOCK = 0x8
++ RLIMIT_NOFILE = 0x7
++ RLIMIT_NPROC = 0x6
++ RLIMIT_RSS = 0x5
++ RNDADDENTROPY = 0x40085203
++ RNDADDTOENTCNT = 0x40045201
++ RNDCLEARPOOL = 0x5206
++ RNDGETENTCNT = 0x80045200
++ RNDGETPOOL = 0x80085202
++ RNDRESEEDCRNG = 0x5207
++ RNDZAPENTCNT = 0x5204
++ RTC_AIE_OFF = 0x7002
++ RTC_AIE_ON = 0x7001
++ RTC_ALM_READ = 0x80247008
++ RTC_ALM_SET = 0x40247007
++ RTC_EPOCH_READ = 0x8008700d
++ RTC_EPOCH_SET = 0x4008700e
++ RTC_IRQP_READ = 0x8008700b
++ RTC_IRQP_SET = 0x4008700c
++ RTC_PIE_OFF = 0x7006
++ RTC_PIE_ON = 0x7005
++ RTC_PLL_GET = 0x80207011
++ RTC_PLL_SET = 0x40207012
++ RTC_RD_TIME = 0x80247009
++ RTC_SET_TIME = 0x4024700a
++ RTC_UIE_OFF = 0x7004
++ RTC_UIE_ON = 0x7003
++ RTC_VL_CLR = 0x7014
++ RTC_VL_READ = 0x80047013
++ RTC_WIE_OFF = 0x7010
++ RTC_WIE_ON = 0x700f
++ RTC_WKALM_RD = 0x80287010
++ RTC_WKALM_SET = 0x4028700f
++ SCM_TIMESTAMPING = 0x25
++ SCM_TIMESTAMPING_OPT_STATS = 0x36
++ SCM_TIMESTAMPING_PKTINFO = 0x3a
++ SCM_TIMESTAMPNS = 0x23
++ SCM_TXTIME = 0x3d
++ SCM_WIFI_STATUS = 0x29
++ SFD_CLOEXEC = 0x80000
++ SFD_NONBLOCK = 0x800
++ SIOCATMARK = 0x8905
++ SIOCGPGRP = 0x8904
++ SIOCGSTAMPNS_NEW = 0x80108907
++ SIOCGSTAMP_NEW = 0x80108906
++ SIOCINQ = 0x541b
++ SIOCOUTQ = 0x5411
++ SIOCSPGRP = 0x8902
++ SOCK_CLOEXEC = 0x80000
++ SOCK_DGRAM = 0x2
++ SOCK_NONBLOCK = 0x800
++ SOCK_STREAM = 0x1
++ SOL_SOCKET = 0x1
++ SO_ACCEPTCONN = 0x1e
++ SO_ATTACH_BPF = 0x32
++ SO_ATTACH_REUSEPORT_CBPF = 0x33
++ SO_ATTACH_REUSEPORT_EBPF = 0x34
++ SO_BINDTODEVICE = 0x19
++ SO_BINDTOIFINDEX = 0x3e
++ SO_BPF_EXTENSIONS = 0x30
++ SO_BROADCAST = 0x6
++ SO_BSDCOMPAT = 0xe
++ SO_BUSY_POLL = 0x2e
++ SO_CNX_ADVICE = 0x35
++ SO_COOKIE = 0x39
++ SO_DETACH_REUSEPORT_BPF = 0x44
++ SO_DOMAIN = 0x27
++ SO_DONTROUTE = 0x5
++ SO_ERROR = 0x4
++ SO_INCOMING_CPU = 0x31
++ SO_INCOMING_NAPI_ID = 0x38
++ SO_KEEPALIVE = 0x9
++ SO_LINGER = 0xd
++ SO_LOCK_FILTER = 0x2c
++ SO_MARK = 0x24
++ SO_MAX_PACING_RATE = 0x2f
++ SO_MEMINFO = 0x37
++ SO_NOFCS = 0x2b
++ SO_OOBINLINE = 0xa
++ SO_PASSCRED = 0x10
++ SO_PASSSEC = 0x22
++ SO_PEEK_OFF = 0x2a
++ SO_PEERCRED = 0x11
++ SO_PEERGROUPS = 0x3b
++ SO_PEERSEC = 0x1f
++ SO_PROTOCOL = 0x26
++ SO_RCVBUF = 0x8
++ SO_RCVBUFFORCE = 0x21
++ SO_RCVLOWAT = 0x12
++ SO_RCVTIMEO = 0x14
++ SO_RCVTIMEO_NEW = 0x42
++ SO_RCVTIMEO_OLD = 0x14
++ SO_REUSEADDR = 0x2
++ SO_REUSEPORT = 0xf
++ SO_RXQ_OVFL = 0x28
++ SO_SECURITY_AUTHENTICATION = 0x16
++ SO_SECURITY_ENCRYPTION_NETWORK = 0x18
++ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17
++ SO_SELECT_ERR_QUEUE = 0x2d
++ SO_SNDBUF = 0x7
++ SO_SNDBUFFORCE = 0x20
++ SO_SNDLOWAT = 0x13
++ SO_SNDTIMEO = 0x15
++ SO_SNDTIMEO_NEW = 0x43
++ SO_SNDTIMEO_OLD = 0x15
++ SO_TIMESTAMPING = 0x25
++ SO_TIMESTAMPING_NEW = 0x41
++ SO_TIMESTAMPING_OLD = 0x25
++ SO_TIMESTAMPNS = 0x23
++ SO_TIMESTAMPNS_NEW = 0x40
++ SO_TIMESTAMPNS_OLD = 0x23
++ SO_TIMESTAMP_NEW = 0x3f
++ SO_TXTIME = 0x3d
++ SO_TYPE = 0x3
++ SO_WIFI_STATUS = 0x29
++ SO_ZEROCOPY = 0x3c
++ TAB1 = 0x800
++ TAB2 = 0x1000
++ TAB3 = 0x1800
++ TABDLY = 0x1800
++ TCFLSH = 0x540b
++ TCGETA = 0x5405
++ TCGETS = 0x5401
++ TCGETS2 = 0x802c542a
++ TCGETX = 0x5432
++ TCSAFLUSH = 0x2
++ TCSBRK = 0x5409
++ TCSBRKP = 0x5425
++ TCSETA = 0x5406
++ TCSETAF = 0x5408
++ TCSETAW = 0x5407
++ TCSETS = 0x5402
++ TCSETS2 = 0x402c542b
++ TCSETSF = 0x5404
++ TCSETSF2 = 0x402c542d
++ TCSETSW = 0x5403
++ TCSETSW2 = 0x402c542c
++ TCSETX = 0x5433
++ TCSETXF = 0x5434
++ TCSETXW = 0x5435
++ TCXONC = 0x540a
++ TIOCCBRK = 0x5428
++ TIOCCONS = 0x541d
++ TIOCEXCL = 0x540c
++ TIOCGDEV = 0x80045432
++ TIOCGETD = 0x5424
++ TIOCGEXCL = 0x80045440
++ TIOCGICOUNT = 0x545d
++ TIOCGISO7816 = 0x80285442
++ TIOCGLCKTRMIOS = 0x5456
++ TIOCGPGRP = 0x540f
++ TIOCGPKT = 0x80045438
++ TIOCGPTLCK = 0x80045439
++ TIOCGPTN = 0x80045430
++ TIOCGPTPEER = 0x5441
++ TIOCGRS485 = 0x542e
++ TIOCGSERIAL = 0x541e
++ TIOCGSID = 0x5429
++ TIOCGSOFTCAR = 0x5419
++ TIOCGWINSZ = 0x5413
++ TIOCINQ = 0x541b
++ TIOCLINUX = 0x541c
++ TIOCMBIC = 0x5417
++ TIOCMBIS = 0x5416
++ TIOCMGET = 0x5415
++ TIOCMIWAIT = 0x545c
++ TIOCMSET = 0x5418
++ TIOCM_CAR = 0x40
++ TIOCM_CD = 0x40
++ TIOCM_CTS = 0x20
++ TIOCM_DSR = 0x100
++ TIOCM_RI = 0x80
++ TIOCM_RNG = 0x80
++ TIOCM_SR = 0x10
++ TIOCM_ST = 0x8
++ TIOCNOTTY = 0x5422
++ TIOCNXCL = 0x540d
++ TIOCOUTQ = 0x5411
++ TIOCPKT = 0x5420
++ TIOCSBRK = 0x5427
++ TIOCSCTTY = 0x540e
++ TIOCSERCONFIG = 0x5453
++ TIOCSERGETLSR = 0x5459
++ TIOCSERGETMULTI = 0x545a
++ TIOCSERGSTRUCT = 0x5458
++ TIOCSERGWILD = 0x5454
++ TIOCSERSETMULTI = 0x545b
++ TIOCSERSWILD = 0x5455
++ TIOCSER_TEMT = 0x1
++ TIOCSETD = 0x5423
++ TIOCSIG = 0x40045436
++ TIOCSISO7816 = 0xc0285443
++ TIOCSLCKTRMIOS = 0x5457
++ TIOCSPGRP = 0x5410
++ TIOCSPTLCK = 0x40045431
++ TIOCSRS485 = 0x542f
++ TIOCSSERIAL = 0x541f
++ TIOCSSOFTCAR = 0x541a
++ TIOCSTI = 0x5412
++ TIOCSWINSZ = 0x5414
++ TIOCVHANGUP = 0x5437
++ TOSTOP = 0x100
++ TUNATTACHFILTER = 0x401054d5
++ TUNDETACHFILTER = 0x401054d6
++ TUNGETDEVNETNS = 0x54e3
++ TUNGETFEATURES = 0x800454cf
++ TUNGETFILTER = 0x801054db
++ TUNGETIFF = 0x800454d2
++ TUNGETSNDBUF = 0x800454d3
++ TUNGETVNETBE = 0x800454df
++ TUNGETVNETHDRSZ = 0x800454d7
++ TUNGETVNETLE = 0x800454dd
++ TUNSETCARRIER = 0x400454e2
++ TUNSETDEBUG = 0x400454c9
++ TUNSETFILTEREBPF = 0x800454e1
++ TUNSETGROUP = 0x400454ce
++ TUNSETIFF = 0x400454ca
++ TUNSETIFINDEX = 0x400454da
++ TUNSETLINK = 0x400454cd
++ TUNSETNOCSUM = 0x400454c8
++ TUNSETOFFLOAD = 0x400454d0
++ TUNSETOWNER = 0x400454cc
++ TUNSETPERSIST = 0x400454cb
++ TUNSETQUEUE = 0x400454d9
++ TUNSETSNDBUF = 0x400454d4
++ TUNSETSTEERINGEBPF = 0x800454e0
++ TUNSETTXFILTER = 0x400454d1
++ TUNSETVNETBE = 0x400454de
++ TUNSETVNETHDRSZ = 0x400454d8
++ TUNSETVNETLE = 0x400454dc
++ UBI_IOCATT = 0x40186f40
++ UBI_IOCDET = 0x40046f41
++ UBI_IOCEBCH = 0x40044f02
++ UBI_IOCEBER = 0x40044f01
++ UBI_IOCEBISMAP = 0x80044f05
++ UBI_IOCEBMAP = 0x40084f03
++ UBI_IOCEBUNMAP = 0x40044f04
++ UBI_IOCMKVOL = 0x40986f00
++ UBI_IOCRMVOL = 0x40046f01
++ UBI_IOCRNVOL = 0x51106f03
++ UBI_IOCRPEB = 0x40046f04
++ UBI_IOCRSVOL = 0x400c6f02
++ UBI_IOCSETVOLPROP = 0x40104f06
++ UBI_IOCSPEB = 0x40046f05
++ UBI_IOCVOLCRBLK = 0x40804f07
++ UBI_IOCVOLRMBLK = 0x4f08
++ UBI_IOCVOLUP = 0x40084f00
++ VDISCARD = 0xd
++ VEOF = 0x4
++ VEOL = 0xb
++ VEOL2 = 0x10
++ VMIN = 0x6
++ VREPRINT = 0xc
++ VSTART = 0x8
++ VSTOP = 0x9
++ VSUSP = 0xa
++ VSWTC = 0x7
++ VT1 = 0x4000
++ VTDLY = 0x4000
++ VTIME = 0x5
++ VWERASE = 0xe
++ WDIOC_GETBOOTSTATUS = 0x80045702
++ WDIOC_GETPRETIMEOUT = 0x80045709
++ WDIOC_GETSTATUS = 0x80045701
++ WDIOC_GETSUPPORT = 0x80285700
++ WDIOC_GETTEMP = 0x80045703
++ WDIOC_GETTIMELEFT = 0x8004570a
++ WDIOC_GETTIMEOUT = 0x80045707
++ WDIOC_KEEPALIVE = 0x80045705
++ WDIOC_SETOPTIONS = 0x80045704
++ WORDSIZE = 0x40
++ XCASE = 0x4
++ XTABS = 0x1800
+ )
+
+ // Errors
+ const (
+- E2BIG = syscall.Errno(0x7)
+- EACCES = syscall.Errno(0xd)
+ EADDRINUSE = syscall.Errno(0x62)
+ EADDRNOTAVAIL = syscall.Errno(0x63)
+ EADV = syscall.Errno(0x44)
+ EAFNOSUPPORT = syscall.Errno(0x61)
+- EAGAIN = syscall.Errno(0xb)
+ EALREADY = syscall.Errno(0x72)
+ EBADE = syscall.Errno(0x34)
+- EBADF = syscall.Errno(0x9)
+ EBADFD = syscall.Errno(0x4d)
+ EBADMSG = syscall.Errno(0x4a)
+ EBADR = syscall.Errno(0x35)
+ EBADRQC = syscall.Errno(0x38)
+ EBADSLT = syscall.Errno(0x39)
+ EBFONT = syscall.Errno(0x3b)
+- EBUSY = syscall.Errno(0x10)
+ ECANCELED = syscall.Errno(0x7d)
+- ECHILD = syscall.Errno(0xa)
+ ECHRNG = syscall.Errno(0x2c)
+ ECOMM = syscall.Errno(0x46)
+ ECONNABORTED = syscall.Errno(0x67)
+@@ -1943,23 +560,15 @@ const (
+ EDEADLK = syscall.Errno(0x23)
+ EDEADLOCK = syscall.Errno(0x23)
+ EDESTADDRREQ = syscall.Errno(0x59)
+- EDOM = syscall.Errno(0x21)
+ EDOTDOT = syscall.Errno(0x49)
+ EDQUOT = syscall.Errno(0x7a)
+- EEXIST = syscall.Errno(0x11)
+- EFAULT = syscall.Errno(0xe)
+- EFBIG = syscall.Errno(0x1b)
+ EHOSTDOWN = syscall.Errno(0x70)
+ EHOSTUNREACH = syscall.Errno(0x71)
+ EHWPOISON = syscall.Errno(0x85)
+ EIDRM = syscall.Errno(0x2b)
+ EILSEQ = syscall.Errno(0x54)
+ EINPROGRESS = syscall.Errno(0x73)
+- EINTR = syscall.Errno(0x4)
+- EINVAL = syscall.Errno(0x16)
+- EIO = syscall.Errno(0x5)
+ EISCONN = syscall.Errno(0x6a)
+- EISDIR = syscall.Errno(0x15)
+ EISNAM = syscall.Errno(0x78)
+ EKEYEXPIRED = syscall.Errno(0x7f)
+ EKEYREJECTED = syscall.Errno(0x81)
+@@ -1976,8 +585,6 @@ const (
+ ELNRNG = syscall.Errno(0x30)
+ ELOOP = syscall.Errno(0x28)
+ EMEDIUMTYPE = syscall.Errno(0x7c)
+- EMFILE = syscall.Errno(0x18)
+- EMLINK = syscall.Errno(0x1f)
+ EMSGSIZE = syscall.Errno(0x5a)
+ EMULTIHOP = syscall.Errno(0x48)
+ ENAMETOOLONG = syscall.Errno(0x24)
+@@ -1985,103 +592,70 @@ const (
+ ENETDOWN = syscall.Errno(0x64)
+ ENETRESET = syscall.Errno(0x66)
+ ENETUNREACH = syscall.Errno(0x65)
+- ENFILE = syscall.Errno(0x17)
+ ENOANO = syscall.Errno(0x37)
+ ENOBUFS = syscall.Errno(0x69)
+ ENOCSI = syscall.Errno(0x32)
+ ENODATA = syscall.Errno(0x3d)
+- ENODEV = syscall.Errno(0x13)
+- ENOENT = syscall.Errno(0x2)
+- ENOEXEC = syscall.Errno(0x8)
+ ENOKEY = syscall.Errno(0x7e)
+ ENOLCK = syscall.Errno(0x25)
+ ENOLINK = syscall.Errno(0x43)
+ ENOMEDIUM = syscall.Errno(0x7b)
+- ENOMEM = syscall.Errno(0xc)
+ ENOMSG = syscall.Errno(0x2a)
+ ENONET = syscall.Errno(0x40)
+ ENOPKG = syscall.Errno(0x41)
+ ENOPROTOOPT = syscall.Errno(0x5c)
+- ENOSPC = syscall.Errno(0x1c)
+ ENOSR = syscall.Errno(0x3f)
+ ENOSTR = syscall.Errno(0x3c)
+ ENOSYS = syscall.Errno(0x26)
+- ENOTBLK = syscall.Errno(0xf)
+ ENOTCONN = syscall.Errno(0x6b)
+- ENOTDIR = syscall.Errno(0x14)
+ ENOTEMPTY = syscall.Errno(0x27)
+ ENOTNAM = syscall.Errno(0x76)
+ ENOTRECOVERABLE = syscall.Errno(0x83)
+ ENOTSOCK = syscall.Errno(0x58)
+ ENOTSUP = syscall.Errno(0x5f)
+- ENOTTY = syscall.Errno(0x19)
+ ENOTUNIQ = syscall.Errno(0x4c)
+- ENXIO = syscall.Errno(0x6)
+ EOPNOTSUPP = syscall.Errno(0x5f)
+ EOVERFLOW = syscall.Errno(0x4b)
+ EOWNERDEAD = syscall.Errno(0x82)
+- EPERM = syscall.Errno(0x1)
+ EPFNOSUPPORT = syscall.Errno(0x60)
+- EPIPE = syscall.Errno(0x20)
+ EPROTO = syscall.Errno(0x47)
+ EPROTONOSUPPORT = syscall.Errno(0x5d)
+ EPROTOTYPE = syscall.Errno(0x5b)
+- ERANGE = syscall.Errno(0x22)
+ EREMCHG = syscall.Errno(0x4e)
+ EREMOTE = syscall.Errno(0x42)
+ EREMOTEIO = syscall.Errno(0x79)
+ ERESTART = syscall.Errno(0x55)
+ ERFKILL = syscall.Errno(0x84)
+- EROFS = syscall.Errno(0x1e)
+ ESHUTDOWN = syscall.Errno(0x6c)
+ ESOCKTNOSUPPORT = syscall.Errno(0x5e)
+- ESPIPE = syscall.Errno(0x1d)
+- ESRCH = syscall.Errno(0x3)
+ ESRMNT = syscall.Errno(0x45)
+ ESTALE = syscall.Errno(0x74)
+ ESTRPIPE = syscall.Errno(0x56)
+ ETIME = syscall.Errno(0x3e)
+ ETIMEDOUT = syscall.Errno(0x6e)
+ ETOOMANYREFS = syscall.Errno(0x6d)
+- ETXTBSY = syscall.Errno(0x1a)
+ EUCLEAN = syscall.Errno(0x75)
+ EUNATCH = syscall.Errno(0x31)
+ EUSERS = syscall.Errno(0x57)
+- EWOULDBLOCK = syscall.Errno(0xb)
+- EXDEV = syscall.Errno(0x12)
+ EXFULL = syscall.Errno(0x36)
+ )
+
+ // Signals
+ const (
+- SIGABRT = syscall.Signal(0x6)
+- SIGALRM = syscall.Signal(0xe)
+ SIGBUS = syscall.Signal(0x7)
+ SIGCHLD = syscall.Signal(0x11)
+ SIGCLD = syscall.Signal(0x11)
+ SIGCONT = syscall.Signal(0x12)
+- SIGFPE = syscall.Signal(0x8)
+- SIGHUP = syscall.Signal(0x1)
+- SIGILL = syscall.Signal(0x4)
+- SIGINT = syscall.Signal(0x2)
+ SIGIO = syscall.Signal(0x1d)
+- SIGIOT = syscall.Signal(0x6)
+- SIGKILL = syscall.Signal(0x9)
+- SIGPIPE = syscall.Signal(0xd)
+ SIGPOLL = syscall.Signal(0x1d)
+ SIGPROF = syscall.Signal(0x1b)
+ SIGPWR = syscall.Signal(0x1e)
+- SIGQUIT = syscall.Signal(0x3)
+- SIGSEGV = syscall.Signal(0xb)
+ SIGSTKFLT = syscall.Signal(0x10)
+ SIGSTOP = syscall.Signal(0x13)
+ SIGSYS = syscall.Signal(0x1f)
+- SIGTERM = syscall.Signal(0xf)
+- SIGTRAP = syscall.Signal(0x5)
+ SIGTSTP = syscall.Signal(0x14)
+ SIGTTIN = syscall.Signal(0x15)
+ SIGTTOU = syscall.Signal(0x16)
+- SIGUNUSED = syscall.Signal(0x1f)
+ SIGURG = syscall.Signal(0x17)
+ SIGUSR1 = syscall.Signal(0xa)
+ SIGUSR2 = syscall.Signal(0xc)
+@@ -2092,171 +666,179 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "no such device or address",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource temporarily unavailable",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device or resource busy",
+- 17: "file exists",
+- 18: "invalid cross-device link",
+- 19: "no such device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "numerical result out of range",
+- 35: "resource deadlock avoided",
+- 36: "file name too long",
+- 37: "no locks available",
+- 38: "function not implemented",
+- 39: "directory not empty",
+- 40: "too many levels of symbolic links",
+- 42: "no message of desired type",
+- 43: "identifier removed",
+- 44: "channel number out of range",
+- 45: "level 2 not synchronized",
+- 46: "level 3 halted",
+- 47: "level 3 reset",
+- 48: "link number out of range",
+- 49: "protocol driver not attached",
+- 50: "no CSI structure available",
+- 51: "level 2 halted",
+- 52: "invalid exchange",
+- 53: "invalid request descriptor",
+- 54: "exchange full",
+- 55: "no anode",
+- 56: "invalid request code",
+- 57: "invalid slot",
+- 59: "bad font file format",
+- 60: "device not a stream",
+- 61: "no data available",
+- 62: "timer expired",
+- 63: "out of streams resources",
+- 64: "machine is not on the network",
+- 65: "package not installed",
+- 66: "object is remote",
+- 67: "link has been severed",
+- 68: "advertise error",
+- 69: "srmount error",
+- 70: "communication error on send",
+- 71: "protocol error",
+- 72: "multihop attempted",
+- 73: "RFS specific error",
+- 74: "bad message",
+- 75: "value too large for defined data type",
+- 76: "name not unique on network",
+- 77: "file descriptor in bad state",
+- 78: "remote address changed",
+- 79: "can not access a needed shared library",
+- 80: "accessing a corrupted shared library",
+- 81: ".lib section in a.out corrupted",
+- 82: "attempting to link in too many shared libraries",
+- 83: "cannot exec a shared library directly",
+- 84: "invalid or incomplete multibyte or wide character",
+- 85: "interrupted system call should be restarted",
+- 86: "streams pipe error",
+- 87: "too many users",
+- 88: "socket operation on non-socket",
+- 89: "destination address required",
+- 90: "message too long",
+- 91: "protocol wrong type for socket",
+- 92: "protocol not available",
+- 93: "protocol not supported",
+- 94: "socket type not supported",
+- 95: "operation not supported",
+- 96: "protocol family not supported",
+- 97: "address family not supported by protocol",
+- 98: "address already in use",
+- 99: "cannot assign requested address",
+- 100: "network is down",
+- 101: "network is unreachable",
+- 102: "network dropped connection on reset",
+- 103: "software caused connection abort",
+- 104: "connection reset by peer",
+- 105: "no buffer space available",
+- 106: "transport endpoint is already connected",
+- 107: "transport endpoint is not connected",
+- 108: "cannot send after transport endpoint shutdown",
+- 109: "too many references: cannot splice",
+- 110: "connection timed out",
+- 111: "connection refused",
+- 112: "host is down",
+- 113: "no route to host",
+- 114: "operation already in progress",
+- 115: "operation now in progress",
+- 116: "stale file handle",
+- 117: "structure needs cleaning",
+- 118: "not a XENIX named type file",
+- 119: "no XENIX semaphores available",
+- 120: "is a named type file",
+- 121: "remote I/O error",
+- 122: "disk quota exceeded",
+- 123: "no medium found",
+- 124: "wrong medium type",
+- 125: "operation canceled",
+- 126: "required key not available",
+- 127: "key has expired",
+- 128: "key has been revoked",
+- 129: "key was rejected by service",
+- 130: "owner died",
+- 131: "state not recoverable",
+- 132: "operation not possible due to RF-kill",
+- 133: "memory page has hardware error",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "no such device or address"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EAGAIN", "resource temporarily unavailable"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device or resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "invalid cross-device link"},
++ {19, "ENODEV", "no such device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "numerical result out of range"},
++ {35, "EDEADLK", "resource deadlock avoided"},
++ {36, "ENAMETOOLONG", "file name too long"},
++ {37, "ENOLCK", "no locks available"},
++ {38, "ENOSYS", "function not implemented"},
++ {39, "ENOTEMPTY", "directory not empty"},
++ {40, "ELOOP", "too many levels of symbolic links"},
++ {42, "ENOMSG", "no message of desired type"},
++ {43, "EIDRM", "identifier removed"},
++ {44, "ECHRNG", "channel number out of range"},
++ {45, "EL2NSYNC", "level 2 not synchronized"},
++ {46, "EL3HLT", "level 3 halted"},
++ {47, "EL3RST", "level 3 reset"},
++ {48, "ELNRNG", "link number out of range"},
++ {49, "EUNATCH", "protocol driver not attached"},
++ {50, "ENOCSI", "no CSI structure available"},
++ {51, "EL2HLT", "level 2 halted"},
++ {52, "EBADE", "invalid exchange"},
++ {53, "EBADR", "invalid request descriptor"},
++ {54, "EXFULL", "exchange full"},
++ {55, "ENOANO", "no anode"},
++ {56, "EBADRQC", "invalid request code"},
++ {57, "EBADSLT", "invalid slot"},
++ {59, "EBFONT", "bad font file format"},
++ {60, "ENOSTR", "device not a stream"},
++ {61, "ENODATA", "no data available"},
++ {62, "ETIME", "timer expired"},
++ {63, "ENOSR", "out of streams resources"},
++ {64, "ENONET", "machine is not on the network"},
++ {65, "ENOPKG", "package not installed"},
++ {66, "EREMOTE", "object is remote"},
++ {67, "ENOLINK", "link has been severed"},
++ {68, "EADV", "advertise error"},
++ {69, "ESRMNT", "srmount error"},
++ {70, "ECOMM", "communication error on send"},
++ {71, "EPROTO", "protocol error"},
++ {72, "EMULTIHOP", "multihop attempted"},
++ {73, "EDOTDOT", "RFS specific error"},
++ {74, "EBADMSG", "bad message"},
++ {75, "EOVERFLOW", "value too large for defined data type"},
++ {76, "ENOTUNIQ", "name not unique on network"},
++ {77, "EBADFD", "file descriptor in bad state"},
++ {78, "EREMCHG", "remote address changed"},
++ {79, "ELIBACC", "can not access a needed shared library"},
++ {80, "ELIBBAD", "accessing a corrupted shared library"},
++ {81, "ELIBSCN", ".lib section in a.out corrupted"},
++ {82, "ELIBMAX", "attempting to link in too many shared libraries"},
++ {83, "ELIBEXEC", "cannot exec a shared library directly"},
++ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"},
++ {85, "ERESTART", "interrupted system call should be restarted"},
++ {86, "ESTRPIPE", "streams pipe error"},
++ {87, "EUSERS", "too many users"},
++ {88, "ENOTSOCK", "socket operation on non-socket"},
++ {89, "EDESTADDRREQ", "destination address required"},
++ {90, "EMSGSIZE", "message too long"},
++ {91, "EPROTOTYPE", "protocol wrong type for socket"},
++ {92, "ENOPROTOOPT", "protocol not available"},
++ {93, "EPROTONOSUPPORT", "protocol not supported"},
++ {94, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {95, "ENOTSUP", "operation not supported"},
++ {96, "EPFNOSUPPORT", "protocol family not supported"},
++ {97, "EAFNOSUPPORT", "address family not supported by protocol"},
++ {98, "EADDRINUSE", "address already in use"},
++ {99, "EADDRNOTAVAIL", "cannot assign requested address"},
++ {100, "ENETDOWN", "network is down"},
++ {101, "ENETUNREACH", "network is unreachable"},
++ {102, "ENETRESET", "network dropped connection on reset"},
++ {103, "ECONNABORTED", "software caused connection abort"},
++ {104, "ECONNRESET", "connection reset by peer"},
++ {105, "ENOBUFS", "no buffer space available"},
++ {106, "EISCONN", "transport endpoint is already connected"},
++ {107, "ENOTCONN", "transport endpoint is not connected"},
++ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
++ {109, "ETOOMANYREFS", "too many references: cannot splice"},
++ {110, "ETIMEDOUT", "connection timed out"},
++ {111, "ECONNREFUSED", "connection refused"},
++ {112, "EHOSTDOWN", "host is down"},
++ {113, "EHOSTUNREACH", "no route to host"},
++ {114, "EALREADY", "operation already in progress"},
++ {115, "EINPROGRESS", "operation now in progress"},
++ {116, "ESTALE", "stale file handle"},
++ {117, "EUCLEAN", "structure needs cleaning"},
++ {118, "ENOTNAM", "not a XENIX named type file"},
++ {119, "ENAVAIL", "no XENIX semaphores available"},
++ {120, "EISNAM", "is a named type file"},
++ {121, "EREMOTEIO", "remote I/O error"},
++ {122, "EDQUOT", "disk quota exceeded"},
++ {123, "ENOMEDIUM", "no medium found"},
++ {124, "EMEDIUMTYPE", "wrong medium type"},
++ {125, "ECANCELED", "operation canceled"},
++ {126, "ENOKEY", "required key not available"},
++ {127, "EKEYEXPIRED", "key has expired"},
++ {128, "EKEYREVOKED", "key has been revoked"},
++ {129, "EKEYREJECTED", "key was rejected by service"},
++ {130, "EOWNERDEAD", "owner died"},
++ {131, "ENOTRECOVERABLE", "state not recoverable"},
++ {132, "ERFKILL", "operation not possible due to RF-kill"},
++ {133, "EHWPOISON", "memory page has hardware error"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/breakpoint trap",
+- 6: "aborted",
+- 7: "bus error",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "user defined signal 1",
+- 11: "segmentation fault",
+- 12: "user defined signal 2",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "stack fault",
+- 17: "child exited",
+- 18: "continued",
+- 19: "stopped (signal)",
+- 20: "stopped",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "urgent I/O condition",
+- 24: "CPU time limit exceeded",
+- 25: "file size limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window changed",
+- 29: "I/O possible",
+- 30: "power failure",
+- 31: "bad system call",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/breakpoint trap"},
++ {6, "SIGABRT", "aborted"},
++ {7, "SIGBUS", "bus error"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGUSR1", "user defined signal 1"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGUSR2", "user defined signal 2"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGSTKFLT", "stack fault"},
++ {17, "SIGCHLD", "child exited"},
++ {18, "SIGCONT", "continued"},
++ {19, "SIGSTOP", "stopped (signal)"},
++ {20, "SIGTSTP", "stopped"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGURG", "urgent I/O condition"},
++ {24, "SIGXCPU", "CPU time limit exceeded"},
++ {25, "SIGXFSZ", "file size limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window changed"},
++ {29, "SIGIO", "I/O possible"},
++ {30, "SIGPWR", "power failure"},
++ {31, "SIGSYS", "bad system call"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go
+index 95de199f..079762fa 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go
+@@ -1,915 +1,132 @@
+-// mkerrors.sh -m64
+-// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
++// mkerrors.sh -Wall -Werror -static -I/tmp/include
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build sparc64,linux
+
+-// Created by cgo -godefs - DO NOT EDIT
+-// cgo -godefs -- -m64 _const.go
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
++// cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go
+
+ package unix
+
+ import "syscall"
+
+ const (
+- AF_ALG = 0x26
+- AF_APPLETALK = 0x5
+- AF_ASH = 0x12
+- AF_ATMPVC = 0x8
+- AF_ATMSVC = 0x14
+- AF_AX25 = 0x3
+- AF_BLUETOOTH = 0x1f
+- AF_BRIDGE = 0x7
+- AF_CAIF = 0x25
+- AF_CAN = 0x1d
+- AF_DECnet = 0xc
+- AF_ECONET = 0x13
+- AF_FILE = 0x1
+- AF_IB = 0x1b
+- AF_IEEE802154 = 0x24
+- AF_INET = 0x2
+- AF_INET6 = 0xa
+- AF_IPX = 0x4
+- AF_IRDA = 0x17
+- AF_ISDN = 0x22
+- AF_IUCV = 0x20
+- AF_KCM = 0x29
+- AF_KEY = 0xf
+- AF_LLC = 0x1a
+- AF_LOCAL = 0x1
+- AF_MAX = 0x2a
+- AF_MPLS = 0x1c
+- AF_NETBEUI = 0xd
+- AF_NETLINK = 0x10
+- AF_NETROM = 0x6
+- AF_NFC = 0x27
+- AF_PACKET = 0x11
+- AF_PHONET = 0x23
+- AF_PPPOX = 0x18
+- AF_RDS = 0x15
+- AF_ROSE = 0xb
+- AF_ROUTE = 0x10
+- AF_RXRPC = 0x21
+- AF_SECURITY = 0xe
+- AF_SNA = 0x16
+- AF_TIPC = 0x1e
+- AF_UNIX = 0x1
+- AF_UNSPEC = 0x0
+- AF_VSOCK = 0x28
+- AF_WANPIPE = 0x19
+- AF_X25 = 0x9
+- ALG_OP_DECRYPT = 0x0
+- ALG_OP_ENCRYPT = 0x1
+- ALG_SET_AEAD_ASSOCLEN = 0x4
+- ALG_SET_AEAD_AUTHSIZE = 0x5
+- ALG_SET_IV = 0x2
+- ALG_SET_KEY = 0x1
+- ALG_SET_OP = 0x3
+- ARPHRD_6LOWPAN = 0x339
+- ARPHRD_ADAPT = 0x108
+- ARPHRD_APPLETLK = 0x8
+- ARPHRD_ARCNET = 0x7
+- ARPHRD_ASH = 0x30d
+- ARPHRD_ATM = 0x13
+- ARPHRD_AX25 = 0x3
+- ARPHRD_BIF = 0x307
+- ARPHRD_CAIF = 0x336
+- ARPHRD_CAN = 0x118
+- ARPHRD_CHAOS = 0x5
+- ARPHRD_CISCO = 0x201
+- ARPHRD_CSLIP = 0x101
+- ARPHRD_CSLIP6 = 0x103
+- ARPHRD_DDCMP = 0x205
+- ARPHRD_DLCI = 0xf
+- ARPHRD_ECONET = 0x30e
+- ARPHRD_EETHER = 0x2
+- ARPHRD_ETHER = 0x1
+- ARPHRD_EUI64 = 0x1b
+- ARPHRD_FCAL = 0x311
+- ARPHRD_FCFABRIC = 0x313
+- ARPHRD_FCPL = 0x312
+- ARPHRD_FCPP = 0x310
+- ARPHRD_FDDI = 0x306
+- ARPHRD_FRAD = 0x302
+- ARPHRD_HDLC = 0x201
+- ARPHRD_HIPPI = 0x30c
+- ARPHRD_HWX25 = 0x110
+- ARPHRD_IEEE1394 = 0x18
+- ARPHRD_IEEE802 = 0x6
+- ARPHRD_IEEE80211 = 0x321
+- ARPHRD_IEEE80211_PRISM = 0x322
+- ARPHRD_IEEE80211_RADIOTAP = 0x323
+- ARPHRD_IEEE802154 = 0x324
+- ARPHRD_IEEE802154_MONITOR = 0x325
+- ARPHRD_IEEE802_TR = 0x320
+- ARPHRD_INFINIBAND = 0x20
+- ARPHRD_IP6GRE = 0x337
+- ARPHRD_IPDDP = 0x309
+- ARPHRD_IPGRE = 0x30a
+- ARPHRD_IRDA = 0x30f
+- ARPHRD_LAPB = 0x204
+- ARPHRD_LOCALTLK = 0x305
+- ARPHRD_LOOPBACK = 0x304
+- ARPHRD_METRICOM = 0x17
+- ARPHRD_NETLINK = 0x338
+- ARPHRD_NETROM = 0x0
+- ARPHRD_NONE = 0xfffe
+- ARPHRD_PHONET = 0x334
+- ARPHRD_PHONET_PIPE = 0x335
+- ARPHRD_PIMREG = 0x30b
+- ARPHRD_PPP = 0x200
+- ARPHRD_PRONET = 0x4
+- ARPHRD_RAWHDLC = 0x206
+- ARPHRD_ROSE = 0x10e
+- ARPHRD_RSRVD = 0x104
+- ARPHRD_SIT = 0x308
+- ARPHRD_SKIP = 0x303
+- ARPHRD_SLIP = 0x100
+- ARPHRD_SLIP6 = 0x102
+- ARPHRD_TUNNEL = 0x300
+- ARPHRD_TUNNEL6 = 0x301
+- ARPHRD_VOID = 0xffff
+- ARPHRD_X25 = 0x10f
+ ASI_LEON_DFLUSH = 0x11
+ ASI_LEON_IFLUSH = 0x10
+ ASI_LEON_MMUFLUSH = 0x18
+- B0 = 0x0
+- B1000000 = 0x100c
+- B110 = 0x3
++ B1000000 = 0x1008
+ B115200 = 0x1002
+- B1152000 = 0x100d
+- B1200 = 0x9
+- B134 = 0x4
+- B150 = 0x5
+- B1500000 = 0x100e
+- B153600 = 0x1006
+- B1800 = 0xa
+- B19200 = 0xe
+- B200 = 0x6
+- B2000000 = 0x100f
++ B1152000 = 0x1009
++ B1500000 = 0x100a
++ B2000000 = 0x100b
+ B230400 = 0x1003
+- B2400 = 0xb
+- B300 = 0x7
+- B307200 = 0x1007
+- B38400 = 0xf
++ B2500000 = 0x100c
++ B3000000 = 0x100d
++ B3500000 = 0x100e
++ B4000000 = 0x100f
+ B460800 = 0x1004
+- B4800 = 0xc
+- B50 = 0x1
+- B500000 = 0x100a
++ B500000 = 0x1005
+ B57600 = 0x1001
+- B576000 = 0x100b
+- B600 = 0x8
+- B614400 = 0x1008
+- B75 = 0x2
+- B76800 = 0x1005
+- B921600 = 0x1009
+- B9600 = 0xd
+- BLKBSZGET = 0x80081270
+- BLKBSZSET = 0x40081271
+- BLKFLSBUF = 0x1261
+- BLKFRAGET = 0x1265
+- BLKFRASET = 0x1264
+- BLKGETSIZE = 0x1260
+- BLKGETSIZE64 = 0x80081272
+- BLKRAGET = 0x1263
+- BLKRASET = 0x1262
+- BLKROGET = 0x125e
+- BLKROSET = 0x125d
+- BLKRRPART = 0x125f
+- BLKSECTGET = 0x1267
+- BLKSECTSET = 0x1266
+- BLKSSZGET = 0x1268
++ B576000 = 0x1006
++ B921600 = 0x1007
++ BLKBSZGET = 0x40081270
++ BLKBSZSET = 0x80081271
++ BLKFLSBUF = 0x20001261
++ BLKFRAGET = 0x20001265
++ BLKFRASET = 0x20001264
++ BLKGETSIZE = 0x20001260
++ BLKGETSIZE64 = 0x40081272
++ BLKPBSZGET = 0x2000127b
++ BLKRAGET = 0x20001263
++ BLKRASET = 0x20001262
++ BLKROGET = 0x2000125e
++ BLKROSET = 0x2000125d
++ BLKRRPART = 0x2000125f
++ BLKSECTGET = 0x20001267
++ BLKSECTSET = 0x20001266
++ BLKSSZGET = 0x20001268
+ BOTHER = 0x1000
+- BPF_A = 0x10
+- BPF_ABS = 0x20
+- BPF_ADD = 0x0
+- BPF_ALU = 0x4
+- BPF_AND = 0x50
+- BPF_B = 0x10
+- BPF_DIV = 0x30
+- BPF_H = 0x8
+- BPF_IMM = 0x0
+- BPF_IND = 0x40
+- BPF_JA = 0x0
+- BPF_JEQ = 0x10
+- BPF_JGE = 0x30
+- BPF_JGT = 0x20
+- BPF_JMP = 0x5
+- BPF_JSET = 0x40
+- BPF_K = 0x0
+- BPF_LD = 0x0
+- BPF_LDX = 0x1
+- BPF_LEN = 0x80
+- BPF_LL_OFF = -0x200000
+- BPF_LSH = 0x60
+- BPF_MAJOR_VERSION = 0x1
+- BPF_MAXINSNS = 0x1000
+- BPF_MEM = 0x60
+- BPF_MEMWORDS = 0x10
+- BPF_MINOR_VERSION = 0x1
+- BPF_MISC = 0x7
+- BPF_MOD = 0x90
+- BPF_MSH = 0xa0
+- BPF_MUL = 0x20
+- BPF_NEG = 0x80
+- BPF_NET_OFF = -0x100000
+- BPF_OR = 0x40
+- BPF_RET = 0x6
+- BPF_RSH = 0x70
+- BPF_ST = 0x2
+- BPF_STX = 0x3
+- BPF_SUB = 0x10
+- BPF_TAX = 0x0
+- BPF_TXA = 0x80
+- BPF_W = 0x0
+- BPF_X = 0x8
+- BPF_XOR = 0xa0
+- BRKINT = 0x2
+- BS0 = 0x0
+ BS1 = 0x2000
+ BSDLY = 0x2000
+- CAN_BCM = 0x2
+- CAN_EFF_FLAG = 0x80000000
+- CAN_EFF_ID_BITS = 0x1d
+- CAN_EFF_MASK = 0x1fffffff
+- CAN_ERR_FLAG = 0x20000000
+- CAN_ERR_MASK = 0x1fffffff
+- CAN_INV_FILTER = 0x20000000
+- CAN_ISOTP = 0x6
+- CAN_MAX_DLC = 0x8
+- CAN_MAX_DLEN = 0x8
+- CAN_MCNET = 0x5
+- CAN_MTU = 0x10
+- CAN_NPROTO = 0x7
+- CAN_RAW = 0x1
+- CAN_RTR_FLAG = 0x40000000
+- CAN_SFF_ID_BITS = 0xb
+- CAN_SFF_MASK = 0x7ff
+- CAN_TP16 = 0x3
+- CAN_TP20 = 0x4
+ CBAUD = 0x100f
+ CBAUDEX = 0x1000
+- CFLUSH = 0xf
+ CIBAUD = 0x100f0000
+ CLOCAL = 0x800
+- CLOCK_BOOTTIME = 0x7
+- CLOCK_BOOTTIME_ALARM = 0x9
+- CLOCK_DEFAULT = 0x0
+- CLOCK_EXT = 0x1
+- CLOCK_INT = 0x2
+- CLOCK_MONOTONIC = 0x1
+- CLOCK_MONOTONIC_COARSE = 0x6
+- CLOCK_MONOTONIC_RAW = 0x4
+- CLOCK_PROCESS_CPUTIME_ID = 0x2
+- CLOCK_REALTIME = 0x0
+- CLOCK_REALTIME_ALARM = 0x8
+- CLOCK_REALTIME_COARSE = 0x5
+- CLOCK_TAI = 0xb
+- CLOCK_THREAD_CPUTIME_ID = 0x3
+- CLOCK_TXFROMRX = 0x4
+- CLOCK_TXINT = 0x3
+- CLONE_CHILD_CLEARTID = 0x200000
+- CLONE_CHILD_SETTID = 0x1000000
+- CLONE_DETACHED = 0x400000
+- CLONE_FILES = 0x400
+- CLONE_FS = 0x200
+- CLONE_IO = 0x80000000
+- CLONE_NEWCGROUP = 0x2000000
+- CLONE_NEWIPC = 0x8000000
+- CLONE_NEWNET = 0x40000000
+- CLONE_NEWNS = 0x20000
+- CLONE_NEWPID = 0x20000000
+- CLONE_NEWUSER = 0x10000000
+- CLONE_NEWUTS = 0x4000000
+- CLONE_PARENT = 0x8000
+- CLONE_PARENT_SETTID = 0x100000
+- CLONE_PTRACE = 0x2000
+- CLONE_SETTLS = 0x80000
+- CLONE_SIGHAND = 0x800
+- CLONE_SYSVSEM = 0x40000
+- CLONE_THREAD = 0x10000
+- CLONE_UNTRACED = 0x800000
+- CLONE_VFORK = 0x4000
+- CLONE_VM = 0x100
+- CMSPAR = 0x40000000
+- CR0 = 0x0
+ CR1 = 0x200
+ CR2 = 0x400
+ CR3 = 0x600
+ CRDLY = 0x600
+ CREAD = 0x80
+- CRTSCTS = 0x80000000
+- CS5 = 0x0
+ CS6 = 0x10
+ CS7 = 0x20
+ CS8 = 0x30
+- CSIGNAL = 0xff
+ CSIZE = 0x30
+- CSTART = 0x11
+- CSTATUS = 0x0
+- CSTOP = 0x13
+ CSTOPB = 0x40
+- CSUSP = 0x1a
+- DT_BLK = 0x6
+- DT_CHR = 0x2
+- DT_DIR = 0x4
+- DT_FIFO = 0x1
+- DT_LNK = 0xa
+- DT_REG = 0x8
+- DT_SOCK = 0xc
+- DT_UNKNOWN = 0x0
+- DT_WHT = 0xe
+- ECHO = 0x8
+ ECHOCTL = 0x200
+ ECHOE = 0x10
+ ECHOK = 0x20
+ ECHOKE = 0x800
+ ECHONL = 0x40
+ ECHOPRT = 0x400
++ EFD_CLOEXEC = 0x400000
++ EFD_NONBLOCK = 0x4000
+ EMT_TAGOVF = 0x1
+- ENCODING_DEFAULT = 0x0
+- ENCODING_FM_MARK = 0x3
+- ENCODING_FM_SPACE = 0x4
+- ENCODING_MANCHESTER = 0x5
+- ENCODING_NRZ = 0x1
+- ENCODING_NRZI = 0x2
+- EPOLLERR = 0x8
+- EPOLLET = 0x80000000
+- EPOLLEXCLUSIVE = 0x10000000
+- EPOLLHUP = 0x10
+- EPOLLIN = 0x1
+- EPOLLMSG = 0x400
+- EPOLLONESHOT = 0x40000000
+- EPOLLOUT = 0x4
+- EPOLLPRI = 0x2
+- EPOLLRDBAND = 0x80
+- EPOLLRDHUP = 0x2000
+- EPOLLRDNORM = 0x40
+- EPOLLWAKEUP = 0x20000000
+- EPOLLWRBAND = 0x200
+- EPOLLWRNORM = 0x100
+ EPOLL_CLOEXEC = 0x400000
+- EPOLL_CTL_ADD = 0x1
+- EPOLL_CTL_DEL = 0x2
+- EPOLL_CTL_MOD = 0x3
+- ETH_P_1588 = 0x88f7
+- ETH_P_8021AD = 0x88a8
+- ETH_P_8021AH = 0x88e7
+- ETH_P_8021Q = 0x8100
+- ETH_P_80221 = 0x8917
+- ETH_P_802_2 = 0x4
+- ETH_P_802_3 = 0x1
+- ETH_P_802_3_MIN = 0x600
+- ETH_P_802_EX1 = 0x88b5
+- ETH_P_AARP = 0x80f3
+- ETH_P_AF_IUCV = 0xfbfb
+- ETH_P_ALL = 0x3
+- ETH_P_AOE = 0x88a2
+- ETH_P_ARCNET = 0x1a
+- ETH_P_ARP = 0x806
+- ETH_P_ATALK = 0x809b
+- ETH_P_ATMFATE = 0x8884
+- ETH_P_ATMMPOA = 0x884c
+- ETH_P_AX25 = 0x2
+- ETH_P_BATMAN = 0x4305
+- ETH_P_BPQ = 0x8ff
+- ETH_P_CAIF = 0xf7
+- ETH_P_CAN = 0xc
+- ETH_P_CANFD = 0xd
+- ETH_P_CONTROL = 0x16
+- ETH_P_CUST = 0x6006
+- ETH_P_DDCMP = 0x6
+- ETH_P_DEC = 0x6000
+- ETH_P_DIAG = 0x6005
+- ETH_P_DNA_DL = 0x6001
+- ETH_P_DNA_RC = 0x6002
+- ETH_P_DNA_RT = 0x6003
+- ETH_P_DSA = 0x1b
+- ETH_P_ECONET = 0x18
+- ETH_P_EDSA = 0xdada
+- ETH_P_FCOE = 0x8906
+- ETH_P_FIP = 0x8914
+- ETH_P_HDLC = 0x19
+- ETH_P_HSR = 0x892f
+- ETH_P_IEEE802154 = 0xf6
+- ETH_P_IEEEPUP = 0xa00
+- ETH_P_IEEEPUPAT = 0xa01
+- ETH_P_IP = 0x800
+- ETH_P_IPV6 = 0x86dd
+- ETH_P_IPX = 0x8137
+- ETH_P_IRDA = 0x17
+- ETH_P_LAT = 0x6004
+- ETH_P_LINK_CTL = 0x886c
+- ETH_P_LOCALTALK = 0x9
+- ETH_P_LOOP = 0x60
+- ETH_P_LOOPBACK = 0x9000
+- ETH_P_MACSEC = 0x88e5
+- ETH_P_MOBITEX = 0x15
+- ETH_P_MPLS_MC = 0x8848
+- ETH_P_MPLS_UC = 0x8847
+- ETH_P_MVRP = 0x88f5
+- ETH_P_PAE = 0x888e
+- ETH_P_PAUSE = 0x8808
+- ETH_P_PHONET = 0xf5
+- ETH_P_PPPTALK = 0x10
+- ETH_P_PPP_DISC = 0x8863
+- ETH_P_PPP_MP = 0x8
+- ETH_P_PPP_SES = 0x8864
+- ETH_P_PRP = 0x88fb
+- ETH_P_PUP = 0x200
+- ETH_P_PUPAT = 0x201
+- ETH_P_QINQ1 = 0x9100
+- ETH_P_QINQ2 = 0x9200
+- ETH_P_QINQ3 = 0x9300
+- ETH_P_RARP = 0x8035
+- ETH_P_SCA = 0x6007
+- ETH_P_SLOW = 0x8809
+- ETH_P_SNAP = 0x5
+- ETH_P_TDLS = 0x890d
+- ETH_P_TEB = 0x6558
+- ETH_P_TIPC = 0x88ca
+- ETH_P_TRAILER = 0x1c
+- ETH_P_TR_802_2 = 0x11
+- ETH_P_TSN = 0x22f0
+- ETH_P_WAN_PPP = 0x7
+- ETH_P_WCCP = 0x883e
+- ETH_P_X25 = 0x805
+- ETH_P_XDSA = 0xf8
+- EXTA = 0xe
+- EXTB = 0xf
+ EXTPROC = 0x10000
+- FALLOC_FL_COLLAPSE_RANGE = 0x8
+- FALLOC_FL_INSERT_RANGE = 0x20
+- FALLOC_FL_KEEP_SIZE = 0x1
+- FALLOC_FL_NO_HIDE_STALE = 0x4
+- FALLOC_FL_PUNCH_HOLE = 0x2
+- FALLOC_FL_ZERO_RANGE = 0x10
+- FD_CLOEXEC = 0x1
+- FD_SETSIZE = 0x400
+- FF0 = 0x0
+ FF1 = 0x8000
+ FFDLY = 0x8000
+- FLUSHO = 0x2000
+- F_DUPFD = 0x0
+- F_DUPFD_CLOEXEC = 0x406
+- F_EXLCK = 0x4
+- F_GETFD = 0x1
+- F_GETFL = 0x3
+- F_GETLEASE = 0x401
++ FLUSHO = 0x1000
++ FS_IOC_ENABLE_VERITY = 0x80806685
++ FS_IOC_GETFLAGS = 0x40086601
++ FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615
++ FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614
++ FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613
+ F_GETLK = 0x7
+ F_GETLK64 = 0x7
+ F_GETOWN = 0x5
+- F_GETOWN_EX = 0x10
+- F_GETPIPE_SZ = 0x408
+- F_GETSIG = 0xb
+- F_LOCK = 0x1
+- F_NOTIFY = 0x402
+- F_OFD_GETLK = 0x24
+- F_OFD_SETLK = 0x25
+- F_OFD_SETLKW = 0x26
+- F_OK = 0x0
+ F_RDLCK = 0x1
+- F_SETFD = 0x2
+- F_SETFL = 0x4
+- F_SETLEASE = 0x400
+ F_SETLK = 0x8
+ F_SETLK64 = 0x8
+ F_SETLKW = 0x9
+ F_SETLKW64 = 0x9
+ F_SETOWN = 0x6
+- F_SETOWN_EX = 0xf
+- F_SETPIPE_SZ = 0x407
+- F_SETSIG = 0xa
+- F_SHLCK = 0x8
+- F_TEST = 0x3
+- F_TLOCK = 0x2
+- F_ULOCK = 0x0
+ F_UNLCK = 0x3
+ F_WRLCK = 0x2
+- GRND_NONBLOCK = 0x1
+- GRND_RANDOM = 0x2
+ HUPCL = 0x400
+- IBSHIFT = 0x10
+ ICANON = 0x2
+- ICMPV6_FILTER = 0x1
+- ICRNL = 0x100
+ IEXTEN = 0x8000
+- IFA_F_DADFAILED = 0x8
+- IFA_F_DEPRECATED = 0x20
+- IFA_F_HOMEADDRESS = 0x10
+- IFA_F_MANAGETEMPADDR = 0x100
+- IFA_F_MCAUTOJOIN = 0x400
+- IFA_F_NODAD = 0x2
+- IFA_F_NOPREFIXROUTE = 0x200
+- IFA_F_OPTIMISTIC = 0x4
+- IFA_F_PERMANENT = 0x80
+- IFA_F_SECONDARY = 0x1
+- IFA_F_STABLE_PRIVACY = 0x800
+- IFA_F_TEMPORARY = 0x1
+- IFA_F_TENTATIVE = 0x40
+- IFA_MAX = 0x8
+- IFF_ALLMULTI = 0x200
+- IFF_ATTACH_QUEUE = 0x200
+- IFF_AUTOMEDIA = 0x4000
+- IFF_BROADCAST = 0x2
+- IFF_DEBUG = 0x4
+- IFF_DETACH_QUEUE = 0x400
+- IFF_DORMANT = 0x20000
+- IFF_DYNAMIC = 0x8000
+- IFF_ECHO = 0x40000
+- IFF_LOOPBACK = 0x8
+- IFF_LOWER_UP = 0x10000
+- IFF_MASTER = 0x400
+- IFF_MULTICAST = 0x1000
+- IFF_MULTI_QUEUE = 0x100
+- IFF_NOARP = 0x80
+- IFF_NOFILTER = 0x1000
+- IFF_NOTRAILERS = 0x20
+- IFF_NO_PI = 0x1000
+- IFF_ONE_QUEUE = 0x2000
+- IFF_PERSIST = 0x800
+- IFF_POINTOPOINT = 0x10
+- IFF_PORTSEL = 0x2000
+- IFF_PROMISC = 0x100
+- IFF_RUNNING = 0x40
+- IFF_SLAVE = 0x800
+- IFF_TAP = 0x2
+- IFF_TUN = 0x1
+- IFF_TUN_EXCL = 0x8000
+- IFF_UP = 0x1
+- IFF_VNET_HDR = 0x4000
+- IFF_VOLATILE = 0x70c5a
+- IFNAMSIZ = 0x10
+- IGNBRK = 0x1
+- IGNCR = 0x80
+- IGNPAR = 0x4
+- IMAXBEL = 0x2000
+- INLCR = 0x40
+- INPCK = 0x10
+- IN_ACCESS = 0x1
+- IN_ALL_EVENTS = 0xfff
+- IN_ATTRIB = 0x4
+- IN_CLASSA_HOST = 0xffffff
+- IN_CLASSA_MAX = 0x80
+- IN_CLASSA_NET = 0xff000000
+- IN_CLASSA_NSHIFT = 0x18
+- IN_CLASSB_HOST = 0xffff
+- IN_CLASSB_MAX = 0x10000
+- IN_CLASSB_NET = 0xffff0000
+- IN_CLASSB_NSHIFT = 0x10
+- IN_CLASSC_HOST = 0xff
+- IN_CLASSC_NET = 0xffffff00
+- IN_CLASSC_NSHIFT = 0x8
+ IN_CLOEXEC = 0x400000
+- IN_CLOSE = 0x18
+- IN_CLOSE_NOWRITE = 0x10
+- IN_CLOSE_WRITE = 0x8
+- IN_CREATE = 0x100
+- IN_DELETE = 0x200
+- IN_DELETE_SELF = 0x400
+- IN_DONT_FOLLOW = 0x2000000
+- IN_EXCL_UNLINK = 0x4000000
+- IN_IGNORED = 0x8000
+- IN_ISDIR = 0x40000000
+- IN_LOOPBACKNET = 0x7f
+- IN_MASK_ADD = 0x20000000
+- IN_MODIFY = 0x2
+- IN_MOVE = 0xc0
+- IN_MOVED_FROM = 0x40
+- IN_MOVED_TO = 0x80
+- IN_MOVE_SELF = 0x800
+ IN_NONBLOCK = 0x4000
+- IN_ONESHOT = 0x80000000
+- IN_ONLYDIR = 0x1000000
+- IN_OPEN = 0x20
+- IN_Q_OVERFLOW = 0x4000
+- IN_UNMOUNT = 0x2000
+- IPPROTO_AH = 0x33
+- IPPROTO_BEETPH = 0x5e
+- IPPROTO_COMP = 0x6c
+- IPPROTO_DCCP = 0x21
+- IPPROTO_DSTOPTS = 0x3c
+- IPPROTO_EGP = 0x8
+- IPPROTO_ENCAP = 0x62
+- IPPROTO_ESP = 0x32
+- IPPROTO_FRAGMENT = 0x2c
+- IPPROTO_GRE = 0x2f
+- IPPROTO_HOPOPTS = 0x0
+- IPPROTO_ICMP = 0x1
+- IPPROTO_ICMPV6 = 0x3a
+- IPPROTO_IDP = 0x16
+- IPPROTO_IGMP = 0x2
+- IPPROTO_IP = 0x0
+- IPPROTO_IPIP = 0x4
+- IPPROTO_IPV6 = 0x29
+- IPPROTO_MH = 0x87
+- IPPROTO_MPLS = 0x89
+- IPPROTO_MTP = 0x5c
+- IPPROTO_NONE = 0x3b
+- IPPROTO_PIM = 0x67
+- IPPROTO_PUP = 0xc
+- IPPROTO_RAW = 0xff
+- IPPROTO_ROUTING = 0x2b
+- IPPROTO_RSVP = 0x2e
+- IPPROTO_SCTP = 0x84
+- IPPROTO_TCP = 0x6
+- IPPROTO_TP = 0x1d
+- IPPROTO_UDP = 0x11
+- IPPROTO_UDPLITE = 0x88
+- IPV6_2292DSTOPTS = 0x4
+- IPV6_2292HOPLIMIT = 0x8
+- IPV6_2292HOPOPTS = 0x3
+- IPV6_2292PKTINFO = 0x2
+- IPV6_2292PKTOPTIONS = 0x6
+- IPV6_2292RTHDR = 0x5
+- IPV6_ADDRFORM = 0x1
+- IPV6_ADD_MEMBERSHIP = 0x14
+- IPV6_AUTHHDR = 0xa
+- IPV6_CHECKSUM = 0x7
+- IPV6_DONTFRAG = 0x3e
+- IPV6_DROP_MEMBERSHIP = 0x15
+- IPV6_DSTOPTS = 0x3b
+- IPV6_HDRINCL = 0x24
+- IPV6_HOPLIMIT = 0x34
+- IPV6_HOPOPTS = 0x36
+- IPV6_IPSEC_POLICY = 0x22
+- IPV6_JOIN_ANYCAST = 0x1b
+- IPV6_JOIN_GROUP = 0x14
+- IPV6_LEAVE_ANYCAST = 0x1c
+- IPV6_LEAVE_GROUP = 0x15
+- IPV6_MTU = 0x18
+- IPV6_MTU_DISCOVER = 0x17
+- IPV6_MULTICAST_HOPS = 0x12
+- IPV6_MULTICAST_IF = 0x11
+- IPV6_MULTICAST_LOOP = 0x13
+- IPV6_NEXTHOP = 0x9
+- IPV6_PATHMTU = 0x3d
+- IPV6_PKTINFO = 0x32
+- IPV6_PMTUDISC_DO = 0x2
+- IPV6_PMTUDISC_DONT = 0x0
+- IPV6_PMTUDISC_INTERFACE = 0x4
+- IPV6_PMTUDISC_OMIT = 0x5
+- IPV6_PMTUDISC_PROBE = 0x3
+- IPV6_PMTUDISC_WANT = 0x1
+- IPV6_RECVDSTOPTS = 0x3a
+- IPV6_RECVERR = 0x19
+- IPV6_RECVHOPLIMIT = 0x33
+- IPV6_RECVHOPOPTS = 0x35
+- IPV6_RECVPATHMTU = 0x3c
+- IPV6_RECVPKTINFO = 0x31
+- IPV6_RECVRTHDR = 0x38
+- IPV6_RECVTCLASS = 0x42
+- IPV6_ROUTER_ALERT = 0x16
+- IPV6_RTHDR = 0x39
+- IPV6_RTHDRDSTOPTS = 0x37
+- IPV6_RTHDR_LOOSE = 0x0
+- IPV6_RTHDR_STRICT = 0x1
+- IPV6_RTHDR_TYPE_0 = 0x0
+- IPV6_RXDSTOPTS = 0x3b
+- IPV6_RXHOPOPTS = 0x36
+- IPV6_TCLASS = 0x43
+- IPV6_UNICAST_HOPS = 0x10
+- IPV6_V6ONLY = 0x1a
+- IPV6_XFRM_POLICY = 0x23
+- IP_ADD_MEMBERSHIP = 0x23
+- IP_ADD_SOURCE_MEMBERSHIP = 0x27
+- IP_BIND_ADDRESS_NO_PORT = 0x18
+- IP_BLOCK_SOURCE = 0x26
+- IP_CHECKSUM = 0x17
+- IP_DEFAULT_MULTICAST_LOOP = 0x1
+- IP_DEFAULT_MULTICAST_TTL = 0x1
+- IP_DF = 0x4000
+- IP_DROP_MEMBERSHIP = 0x24
+- IP_DROP_SOURCE_MEMBERSHIP = 0x28
+- IP_FREEBIND = 0xf
+- IP_HDRINCL = 0x3
+- IP_IPSEC_POLICY = 0x10
+- IP_MAXPACKET = 0xffff
+- IP_MAX_MEMBERSHIPS = 0x14
+- IP_MF = 0x2000
+- IP_MINTTL = 0x15
+- IP_MSFILTER = 0x29
+- IP_MSS = 0x240
+- IP_MTU = 0xe
+- IP_MTU_DISCOVER = 0xa
+- IP_MULTICAST_ALL = 0x31
+- IP_MULTICAST_IF = 0x20
+- IP_MULTICAST_LOOP = 0x22
+- IP_MULTICAST_TTL = 0x21
+- IP_NODEFRAG = 0x16
+- IP_OFFMASK = 0x1fff
+- IP_OPTIONS = 0x4
+- IP_ORIGDSTADDR = 0x14
+- IP_PASSSEC = 0x12
+- IP_PKTINFO = 0x8
+- IP_PKTOPTIONS = 0x9
+- IP_PMTUDISC = 0xa
+- IP_PMTUDISC_DO = 0x2
+- IP_PMTUDISC_DONT = 0x0
+- IP_PMTUDISC_INTERFACE = 0x4
+- IP_PMTUDISC_OMIT = 0x5
+- IP_PMTUDISC_PROBE = 0x3
+- IP_PMTUDISC_WANT = 0x1
+- IP_RECVERR = 0xb
+- IP_RECVOPTS = 0x6
+- IP_RECVORIGDSTADDR = 0x14
+- IP_RECVRETOPTS = 0x7
+- IP_RECVTOS = 0xd
+- IP_RECVTTL = 0xc
+- IP_RETOPTS = 0x7
+- IP_RF = 0x8000
+- IP_ROUTER_ALERT = 0x5
+- IP_TOS = 0x1
+- IP_TRANSPARENT = 0x13
+- IP_TTL = 0x2
+- IP_UNBLOCK_SOURCE = 0x25
+- IP_UNICAST_IF = 0x32
+- IP_XFRM_POLICY = 0x11
++ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x200007b9
+ ISIG = 0x1
+- ISTRIP = 0x20
+ IUCLC = 0x200
+- IUTF8 = 0x4000
+- IXANY = 0x800
+ IXOFF = 0x1000
+ IXON = 0x400
+- LINUX_REBOOT_CMD_CAD_OFF = 0x0
+- LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef
+- LINUX_REBOOT_CMD_HALT = 0xcdef0123
+- LINUX_REBOOT_CMD_KEXEC = 0x45584543
+- LINUX_REBOOT_CMD_POWER_OFF = 0x4321fedc
+- LINUX_REBOOT_CMD_RESTART = 0x1234567
+- LINUX_REBOOT_CMD_RESTART2 = 0xa1b2c3d4
+- LINUX_REBOOT_CMD_SW_SUSPEND = 0xd000fce2
+- LINUX_REBOOT_MAGIC1 = 0xfee1dead
+- LINUX_REBOOT_MAGIC2 = 0x28121969
+- LOCK_EX = 0x2
+- LOCK_NB = 0x4
+- LOCK_SH = 0x1
+- LOCK_UN = 0x8
+- MADV_DODUMP = 0x11
+- MADV_DOFORK = 0xb
+- MADV_DONTDUMP = 0x10
+- MADV_DONTFORK = 0xa
+- MADV_DONTNEED = 0x4
+- MADV_FREE = 0x8
+- MADV_HUGEPAGE = 0xe
+- MADV_HWPOISON = 0x64
+- MADV_MERGEABLE = 0xc
+- MADV_NOHUGEPAGE = 0xf
+- MADV_NORMAL = 0x0
+- MADV_RANDOM = 0x1
+- MADV_REMOVE = 0x9
+- MADV_SEQUENTIAL = 0x2
+- MADV_UNMERGEABLE = 0xd
+- MADV_WILLNEED = 0x3
+ MAP_ANON = 0x20
+ MAP_ANONYMOUS = 0x20
+ MAP_DENYWRITE = 0x800
+ MAP_EXECUTABLE = 0x1000
+- MAP_FILE = 0x0
+- MAP_FIXED = 0x10
+ MAP_GROWSDOWN = 0x200
+ MAP_HUGETLB = 0x40000
+- MAP_HUGE_MASK = 0x3f
+- MAP_HUGE_SHIFT = 0x1a
+ MAP_LOCKED = 0x100
+ MAP_NONBLOCK = 0x10000
+ MAP_NORESERVE = 0x40
+ MAP_POPULATE = 0x8000
+- MAP_PRIVATE = 0x2
+ MAP_RENAME = 0x20
+- MAP_SHARED = 0x1
+ MAP_STACK = 0x20000
+- MAP_TYPE = 0xf
++ MAP_SYNC = 0x80000
+ MCL_CURRENT = 0x2000
+ MCL_FUTURE = 0x4000
+ MCL_ONFAULT = 0x8000
+- MNT_DETACH = 0x2
+- MNT_EXPIRE = 0x4
+- MNT_FORCE = 0x1
+- MSG_BATCH = 0x40000
+- MSG_CMSG_CLOEXEC = 0x40000000
+- MSG_CONFIRM = 0x800
+- MSG_CTRUNC = 0x8
+- MSG_DONTROUTE = 0x4
+- MSG_DONTWAIT = 0x40
+- MSG_EOR = 0x80
+- MSG_ERRQUEUE = 0x2000
+- MSG_FASTOPEN = 0x20000000
+- MSG_FIN = 0x200
+- MSG_MORE = 0x8000
+- MSG_NOSIGNAL = 0x4000
+- MSG_OOB = 0x1
+- MSG_PEEK = 0x2
+- MSG_PROXY = 0x10
+- MSG_RST = 0x1000
+- MSG_SYN = 0x400
+- MSG_TRUNC = 0x20
+- MSG_TRYHARD = 0x4
+- MSG_WAITALL = 0x100
+- MSG_WAITFORONE = 0x10000
+- MS_ACTIVE = 0x40000000
+- MS_ASYNC = 0x1
+- MS_BIND = 0x1000
+- MS_DIRSYNC = 0x80
+- MS_INVALIDATE = 0x2
+- MS_I_VERSION = 0x800000
+- MS_KERNMOUNT = 0x400000
+- MS_LAZYTIME = 0x2000000
+- MS_MANDLOCK = 0x40
+- MS_MGC_MSK = 0xffff0000
+- MS_MGC_VAL = 0xc0ed0000
+- MS_MOVE = 0x2000
+- MS_NOATIME = 0x400
+- MS_NODEV = 0x4
+- MS_NODIRATIME = 0x800
+- MS_NOEXEC = 0x8
+- MS_NOSUID = 0x2
+- MS_NOUSER = -0x80000000
+- MS_POSIXACL = 0x10000
+- MS_PRIVATE = 0x40000
+- MS_RDONLY = 0x1
+- MS_REC = 0x4000
+- MS_RELATIME = 0x200000
+- MS_REMOUNT = 0x20
+- MS_RMT_MASK = 0x2800051
+- MS_SHARED = 0x100000
+- MS_SILENT = 0x8000
+- MS_SLAVE = 0x80000
+- MS_STRICTATIME = 0x1000000
+- MS_SYNC = 0x4
+- MS_SYNCHRONOUS = 0x10
+- MS_UNBINDABLE = 0x20000
+- NAME_MAX = 0xff
+- NETLINK_ADD_MEMBERSHIP = 0x1
+- NETLINK_AUDIT = 0x9
+- NETLINK_BROADCAST_ERROR = 0x4
+- NETLINK_CAP_ACK = 0xa
+- NETLINK_CONNECTOR = 0xb
+- NETLINK_CRYPTO = 0x15
+- NETLINK_DNRTMSG = 0xe
+- NETLINK_DROP_MEMBERSHIP = 0x2
+- NETLINK_ECRYPTFS = 0x13
+- NETLINK_FIB_LOOKUP = 0xa
+- NETLINK_FIREWALL = 0x3
+- NETLINK_GENERIC = 0x10
+- NETLINK_INET_DIAG = 0x4
+- NETLINK_IP6_FW = 0xd
+- NETLINK_ISCSI = 0x8
+- NETLINK_KOBJECT_UEVENT = 0xf
+- NETLINK_LISTEN_ALL_NSID = 0x8
+- NETLINK_LIST_MEMBERSHIPS = 0x9
+- NETLINK_NETFILTER = 0xc
+- NETLINK_NFLOG = 0x5
+- NETLINK_NO_ENOBUFS = 0x5
+- NETLINK_PKTINFO = 0x3
+- NETLINK_RDMA = 0x14
+- NETLINK_ROUTE = 0x0
+- NETLINK_RX_RING = 0x6
+- NETLINK_SCSITRANSPORT = 0x12
+- NETLINK_SELINUX = 0x7
+- NETLINK_SOCK_DIAG = 0x4
+- NETLINK_TX_RING = 0x7
+- NETLINK_UNUSED = 0x1
+- NETLINK_USERSOCK = 0x2
+- NETLINK_XFRM = 0x6
+- NL0 = 0x0
+- NL1 = 0x100
+- NLA_ALIGNTO = 0x4
+- NLA_F_NESTED = 0x8000
+- NLA_F_NET_BYTEORDER = 0x4000
+- NLA_HDRLEN = 0x4
++ NFDBITS = 0x40
+ NLDLY = 0x100
+- NLMSG_ALIGNTO = 0x4
+- NLMSG_DONE = 0x3
+- NLMSG_ERROR = 0x2
+- NLMSG_HDRLEN = 0x10
+- NLMSG_MIN_TYPE = 0x10
+- NLMSG_NOOP = 0x1
+- NLMSG_OVERRUN = 0x4
+- NLM_F_ACK = 0x4
+- NLM_F_APPEND = 0x800
+- NLM_F_ATOMIC = 0x400
+- NLM_F_CREATE = 0x400
+- NLM_F_DUMP = 0x300
+- NLM_F_DUMP_FILTERED = 0x20
+- NLM_F_DUMP_INTR = 0x10
+- NLM_F_ECHO = 0x8
+- NLM_F_EXCL = 0x200
+- NLM_F_MATCH = 0x200
+- NLM_F_MULTI = 0x2
+- NLM_F_REPLACE = 0x100
+- NLM_F_REQUEST = 0x1
+- NLM_F_ROOT = 0x100
+ NOFLSH = 0x80
+- OCRNL = 0x8
+- OFDEL = 0x80
+- OFILL = 0x40
++ NS_GET_NSTYPE = 0x2000b703
++ NS_GET_OWNER_UID = 0x2000b704
++ NS_GET_PARENT = 0x2000b702
++ NS_GET_USERNS = 0x2000b701
+ OLCUC = 0x2
+ ONLCR = 0x4
+- ONLRET = 0x20
+- ONOCR = 0x10
+- OPOST = 0x1
+- O_ACCMODE = 0x3
+ O_APPEND = 0x8
+ O_ASYNC = 0x40
+ O_CLOEXEC = 0x400000
+@@ -926,231 +143,67 @@ const (
+ O_NOFOLLOW = 0x20000
+ O_NONBLOCK = 0x4000
+ O_PATH = 0x1000000
+- O_RDONLY = 0x0
+- O_RDWR = 0x2
+ O_RSYNC = 0x802000
+ O_SYNC = 0x802000
+ O_TMPFILE = 0x2010000
+ O_TRUNC = 0x400
+- O_WRONLY = 0x1
+- PACKET_ADD_MEMBERSHIP = 0x1
+- PACKET_AUXDATA = 0x8
+- PACKET_BROADCAST = 0x1
+- PACKET_COPY_THRESH = 0x7
+- PACKET_DROP_MEMBERSHIP = 0x2
+- PACKET_FANOUT = 0x12
+- PACKET_FANOUT_CBPF = 0x6
+- PACKET_FANOUT_CPU = 0x2
+- PACKET_FANOUT_DATA = 0x16
+- PACKET_FANOUT_EBPF = 0x7
+- PACKET_FANOUT_FLAG_DEFRAG = 0x8000
+- PACKET_FANOUT_FLAG_ROLLOVER = 0x1000
+- PACKET_FANOUT_HASH = 0x0
+- PACKET_FANOUT_LB = 0x1
+- PACKET_FANOUT_QM = 0x5
+- PACKET_FANOUT_RND = 0x4
+- PACKET_FANOUT_ROLLOVER = 0x3
+- PACKET_FASTROUTE = 0x6
+- PACKET_HDRLEN = 0xb
+- PACKET_HOST = 0x0
+- PACKET_KERNEL = 0x7
+- PACKET_LOOPBACK = 0x5
+- PACKET_LOSS = 0xe
+- PACKET_MR_ALLMULTI = 0x2
+- PACKET_MR_MULTICAST = 0x0
+- PACKET_MR_PROMISC = 0x1
+- PACKET_MR_UNICAST = 0x3
+- PACKET_MULTICAST = 0x2
+- PACKET_ORIGDEV = 0x9
+- PACKET_OTHERHOST = 0x3
+- PACKET_OUTGOING = 0x4
+- PACKET_QDISC_BYPASS = 0x14
+- PACKET_RECV_OUTPUT = 0x3
+- PACKET_RESERVE = 0xc
+- PACKET_ROLLOVER_STATS = 0x15
+- PACKET_RX_RING = 0x5
+- PACKET_STATISTICS = 0x6
+- PACKET_TIMESTAMP = 0x11
+- PACKET_TX_HAS_OFF = 0x13
+- PACKET_TX_RING = 0xd
+- PACKET_TX_TIMESTAMP = 0x10
+- PACKET_USER = 0x6
+- PACKET_VERSION = 0xa
+- PACKET_VNET_HDR = 0xf
+ PARENB = 0x100
+- PARITY_CRC16_PR0 = 0x2
+- PARITY_CRC16_PR0_CCITT = 0x4
+- PARITY_CRC16_PR1 = 0x3
+- PARITY_CRC16_PR1_CCITT = 0x5
+- PARITY_CRC32_PR0_CCITT = 0x6
+- PARITY_CRC32_PR1_CCITT = 0x7
+- PARITY_DEFAULT = 0x0
+- PARITY_NONE = 0x1
+- PARMRK = 0x8
+ PARODD = 0x200
+ PENDIN = 0x4000
+- PRIO_PGRP = 0x1
+- PRIO_PROCESS = 0x0
+- PRIO_USER = 0x2
+- PROT_EXEC = 0x4
+- PROT_GROWSDOWN = 0x1000000
+- PROT_GROWSUP = 0x2000000
+- PROT_NONE = 0x0
+- PROT_READ = 0x1
+- PROT_WRITE = 0x2
+- PR_CAPBSET_DROP = 0x18
+- PR_CAPBSET_READ = 0x17
+- PR_CAP_AMBIENT = 0x2f
+- PR_CAP_AMBIENT_CLEAR_ALL = 0x4
+- PR_CAP_AMBIENT_IS_SET = 0x1
+- PR_CAP_AMBIENT_LOWER = 0x3
+- PR_CAP_AMBIENT_RAISE = 0x2
+- PR_ENDIAN_BIG = 0x0
+- PR_ENDIAN_LITTLE = 0x1
+- PR_ENDIAN_PPC_LITTLE = 0x2
+- PR_FPEMU_NOPRINT = 0x1
+- PR_FPEMU_SIGFPE = 0x2
+- PR_FP_EXC_ASYNC = 0x2
+- PR_FP_EXC_DISABLED = 0x0
+- PR_FP_EXC_DIV = 0x10000
+- PR_FP_EXC_INV = 0x100000
+- PR_FP_EXC_NONRECOV = 0x1
+- PR_FP_EXC_OVF = 0x20000
+- PR_FP_EXC_PRECISE = 0x3
+- PR_FP_EXC_RES = 0x80000
+- PR_FP_EXC_SW_ENABLE = 0x80
+- PR_FP_EXC_UND = 0x40000
+- PR_FP_MODE_FR = 0x1
+- PR_FP_MODE_FRE = 0x2
+- PR_GET_CHILD_SUBREAPER = 0x25
+- PR_GET_DUMPABLE = 0x3
+- PR_GET_ENDIAN = 0x13
+- PR_GET_FPEMU = 0x9
+- PR_GET_FPEXC = 0xb
+- PR_GET_FP_MODE = 0x2e
+- PR_GET_KEEPCAPS = 0x7
+- PR_GET_NAME = 0x10
+- PR_GET_NO_NEW_PRIVS = 0x27
+- PR_GET_PDEATHSIG = 0x2
+- PR_GET_SECCOMP = 0x15
+- PR_GET_SECUREBITS = 0x1b
+- PR_GET_THP_DISABLE = 0x2a
+- PR_GET_TID_ADDRESS = 0x28
+- PR_GET_TIMERSLACK = 0x1e
+- PR_GET_TIMING = 0xd
+- PR_GET_TSC = 0x19
+- PR_GET_UNALIGN = 0x5
+- PR_MCE_KILL = 0x21
+- PR_MCE_KILL_CLEAR = 0x0
+- PR_MCE_KILL_DEFAULT = 0x2
+- PR_MCE_KILL_EARLY = 0x1
+- PR_MCE_KILL_GET = 0x22
+- PR_MCE_KILL_LATE = 0x0
+- PR_MCE_KILL_SET = 0x1
+- PR_MPX_DISABLE_MANAGEMENT = 0x2c
+- PR_MPX_ENABLE_MANAGEMENT = 0x2b
+- PR_SET_CHILD_SUBREAPER = 0x24
+- PR_SET_DUMPABLE = 0x4
+- PR_SET_ENDIAN = 0x14
+- PR_SET_FPEMU = 0xa
+- PR_SET_FPEXC = 0xc
+- PR_SET_FP_MODE = 0x2d
+- PR_SET_KEEPCAPS = 0x8
+- PR_SET_MM = 0x23
+- PR_SET_MM_ARG_END = 0x9
+- PR_SET_MM_ARG_START = 0x8
+- PR_SET_MM_AUXV = 0xc
+- PR_SET_MM_BRK = 0x7
+- PR_SET_MM_END_CODE = 0x2
+- PR_SET_MM_END_DATA = 0x4
+- PR_SET_MM_ENV_END = 0xb
+- PR_SET_MM_ENV_START = 0xa
+- PR_SET_MM_EXE_FILE = 0xd
+- PR_SET_MM_MAP = 0xe
+- PR_SET_MM_MAP_SIZE = 0xf
+- PR_SET_MM_START_BRK = 0x6
+- PR_SET_MM_START_CODE = 0x1
+- PR_SET_MM_START_DATA = 0x3
+- PR_SET_MM_START_STACK = 0x5
+- PR_SET_NAME = 0xf
+- PR_SET_NO_NEW_PRIVS = 0x26
+- PR_SET_PDEATHSIG = 0x1
+- PR_SET_PTRACER = 0x59616d61
+- PR_SET_PTRACER_ANY = -0x1
+- PR_SET_SECCOMP = 0x16
+- PR_SET_SECUREBITS = 0x1c
+- PR_SET_THP_DISABLE = 0x29
+- PR_SET_TIMERSLACK = 0x1d
+- PR_SET_TIMING = 0xe
+- PR_SET_TSC = 0x1a
+- PR_SET_UNALIGN = 0x6
+- PR_TASK_PERF_EVENTS_DISABLE = 0x1f
+- PR_TASK_PERF_EVENTS_ENABLE = 0x20
+- PR_TIMING_STATISTICAL = 0x0
+- PR_TIMING_TIMESTAMP = 0x1
+- PR_TSC_ENABLE = 0x1
+- PR_TSC_SIGSEGV = 0x2
+- PR_UNALIGN_NOPRINT = 0x1
+- PR_UNALIGN_SIGBUS = 0x2
+- PTRACE_ATTACH = 0x10
+- PTRACE_CONT = 0x7
+- PTRACE_DETACH = 0x11
+- PTRACE_EVENT_CLONE = 0x3
+- PTRACE_EVENT_EXEC = 0x4
+- PTRACE_EVENT_EXIT = 0x6
+- PTRACE_EVENT_FORK = 0x1
+- PTRACE_EVENT_SECCOMP = 0x7
+- PTRACE_EVENT_STOP = 0x80
+- PTRACE_EVENT_VFORK = 0x2
+- PTRACE_EVENT_VFORK_DONE = 0x5
+- PTRACE_GETEVENTMSG = 0x4201
++ PERF_EVENT_IOC_DISABLE = 0x20002401
++ PERF_EVENT_IOC_ENABLE = 0x20002400
++ PERF_EVENT_IOC_ID = 0x40082407
++ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8008240b
++ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409
++ PERF_EVENT_IOC_PERIOD = 0x80082404
++ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a
++ PERF_EVENT_IOC_REFRESH = 0x20002402
++ PERF_EVENT_IOC_RESET = 0x20002403
++ PERF_EVENT_IOC_SET_BPF = 0x80042408
++ PERF_EVENT_IOC_SET_FILTER = 0x80082406
++ PERF_EVENT_IOC_SET_OUTPUT = 0x20002405
++ PPPIOCATTACH = 0x8004743d
++ PPPIOCATTCHAN = 0x80047438
++ PPPIOCCONNECT = 0x8004743a
++ PPPIOCDETACH = 0x8004743c
++ PPPIOCDISCONN = 0x20007439
++ PPPIOCGASYNCMAP = 0x40047458
++ PPPIOCGCHAN = 0x40047437
++ PPPIOCGDEBUG = 0x40047441
++ PPPIOCGFLAGS = 0x4004745a
++ PPPIOCGIDLE = 0x4010743f
++ PPPIOCGIDLE32 = 0x4008743f
++ PPPIOCGIDLE64 = 0x4010743f
++ PPPIOCGL2TPSTATS = 0x40487436
++ PPPIOCGMRU = 0x40047453
++ PPPIOCGRASYNCMAP = 0x40047455
++ PPPIOCGUNIT = 0x40047456
++ PPPIOCGXASYNCMAP = 0x40207450
++ PPPIOCSACTIVE = 0x80107446
++ PPPIOCSASYNCMAP = 0x80047457
++ PPPIOCSCOMPRESS = 0x8010744d
++ PPPIOCSDEBUG = 0x80047440
++ PPPIOCSFLAGS = 0x80047459
++ PPPIOCSMAXCID = 0x80047451
++ PPPIOCSMRRU = 0x8004743b
++ PPPIOCSMRU = 0x80047452
++ PPPIOCSNPMODE = 0x8008744b
++ PPPIOCSPASS = 0x80107447
++ PPPIOCSRASYNCMAP = 0x80047454
++ PPPIOCSXASYNCMAP = 0x8020744f
++ PPPIOCXFERUNIT = 0x2000744e
++ PR_SET_PTRACER_ANY = 0xffffffffffffffff
+ PTRACE_GETFPAREGS = 0x14
+ PTRACE_GETFPREGS = 0xe
+ PTRACE_GETFPREGS64 = 0x19
+- PTRACE_GETREGS = 0xc
+ PTRACE_GETREGS64 = 0x16
+- PTRACE_GETREGSET = 0x4204
+- PTRACE_GETSIGINFO = 0x4202
+- PTRACE_GETSIGMASK = 0x420a
+- PTRACE_INTERRUPT = 0x4207
+- PTRACE_KILL = 0x8
+- PTRACE_LISTEN = 0x4208
+- PTRACE_O_EXITKILL = 0x100000
+- PTRACE_O_MASK = 0x3000ff
+- PTRACE_O_SUSPEND_SECCOMP = 0x200000
+- PTRACE_O_TRACECLONE = 0x8
+- PTRACE_O_TRACEEXEC = 0x10
+- PTRACE_O_TRACEEXIT = 0x40
+- PTRACE_O_TRACEFORK = 0x2
+- PTRACE_O_TRACESECCOMP = 0x80
+- PTRACE_O_TRACESYSGOOD = 0x1
+- PTRACE_O_TRACEVFORK = 0x4
+- PTRACE_O_TRACEVFORKDONE = 0x20
+- PTRACE_PEEKDATA = 0x2
+- PTRACE_PEEKSIGINFO = 0x4209
+- PTRACE_PEEKSIGINFO_SHARED = 0x1
+- PTRACE_PEEKTEXT = 0x1
+- PTRACE_PEEKUSR = 0x3
+- PTRACE_POKEDATA = 0x5
+- PTRACE_POKETEXT = 0x4
+- PTRACE_POKEUSR = 0x6
+ PTRACE_READDATA = 0x10
+ PTRACE_READTEXT = 0x12
+- PTRACE_SECCOMP_GET_FILTER = 0x420c
+- PTRACE_SEIZE = 0x4206
+ PTRACE_SETFPAREGS = 0x15
+ PTRACE_SETFPREGS = 0xf
+ PTRACE_SETFPREGS64 = 0x1a
+- PTRACE_SETOPTIONS = 0x4200
+- PTRACE_SETREGS = 0xd
+ PTRACE_SETREGS64 = 0x17
+- PTRACE_SETREGSET = 0x4205
+- PTRACE_SETSIGINFO = 0x4203
+- PTRACE_SETSIGMASK = 0x420b
+- PTRACE_SINGLESTEP = 0x9
+ PTRACE_SPARC_DETACH = 0xb
+- PTRACE_SYSCALL = 0x18
+- PTRACE_TRACEME = 0x0
+ PTRACE_WRITEDATA = 0x11
+ PTRACE_WRITETEXT = 0x13
+ PT_FP = 0x48
+@@ -1202,329 +255,98 @@ const (
+ PT_WIM = 0x10
+ PT_Y = 0xc
+ RLIMIT_AS = 0x9
+- RLIMIT_CORE = 0x4
+- RLIMIT_CPU = 0x0
+- RLIMIT_DATA = 0x2
+- RLIMIT_FSIZE = 0x1
++ RLIMIT_MEMLOCK = 0x8
+ RLIMIT_NOFILE = 0x6
+- RLIMIT_STACK = 0x3
+- RLIM_INFINITY = -0x1
+- RTAX_ADVMSS = 0x8
+- RTAX_CC_ALGO = 0x10
+- RTAX_CWND = 0x7
+- RTAX_FEATURES = 0xc
+- RTAX_FEATURE_ALLFRAG = 0x8
+- RTAX_FEATURE_ECN = 0x1
+- RTAX_FEATURE_MASK = 0xf
+- RTAX_FEATURE_SACK = 0x2
+- RTAX_FEATURE_TIMESTAMP = 0x4
+- RTAX_HOPLIMIT = 0xa
+- RTAX_INITCWND = 0xb
+- RTAX_INITRWND = 0xe
+- RTAX_LOCK = 0x1
+- RTAX_MAX = 0x10
+- RTAX_MTU = 0x2
+- RTAX_QUICKACK = 0xf
+- RTAX_REORDERING = 0x9
+- RTAX_RTO_MIN = 0xd
+- RTAX_RTT = 0x4
+- RTAX_RTTVAR = 0x5
+- RTAX_SSTHRESH = 0x6
+- RTAX_UNSPEC = 0x0
+- RTAX_WINDOW = 0x3
+- RTA_ALIGNTO = 0x4
+- RTA_MAX = 0x18
+- RTCF_DIRECTSRC = 0x4000000
+- RTCF_DOREDIRECT = 0x1000000
+- RTCF_LOG = 0x2000000
+- RTCF_MASQ = 0x400000
+- RTCF_NAT = 0x800000
+- RTCF_VALVE = 0x200000
+- RTF_ADDRCLASSMASK = 0xf8000000
+- RTF_ADDRCONF = 0x40000
+- RTF_ALLONLINK = 0x20000
+- RTF_BROADCAST = 0x10000000
+- RTF_CACHE = 0x1000000
+- RTF_DEFAULT = 0x10000
+- RTF_DYNAMIC = 0x10
+- RTF_FLOW = 0x2000000
+- RTF_GATEWAY = 0x2
+- RTF_HOST = 0x4
+- RTF_INTERFACE = 0x40000000
+- RTF_IRTT = 0x100
+- RTF_LINKRT = 0x100000
+- RTF_LOCAL = 0x80000000
+- RTF_MODIFIED = 0x20
+- RTF_MSS = 0x40
+- RTF_MTU = 0x40
+- RTF_MULTICAST = 0x20000000
+- RTF_NAT = 0x8000000
+- RTF_NOFORWARD = 0x1000
+- RTF_NONEXTHOP = 0x200000
+- RTF_NOPMTUDISC = 0x4000
+- RTF_POLICY = 0x4000000
+- RTF_REINSTATE = 0x8
+- RTF_REJECT = 0x200
+- RTF_STATIC = 0x400
+- RTF_THROW = 0x2000
+- RTF_UP = 0x1
+- RTF_WINDOW = 0x80
+- RTF_XRESOLVE = 0x800
+- RTM_BASE = 0x10
+- RTM_DELACTION = 0x31
+- RTM_DELADDR = 0x15
+- RTM_DELADDRLABEL = 0x49
+- RTM_DELLINK = 0x11
+- RTM_DELMDB = 0x55
+- RTM_DELNEIGH = 0x1d
+- RTM_DELNSID = 0x59
+- RTM_DELQDISC = 0x25
+- RTM_DELROUTE = 0x19
+- RTM_DELRULE = 0x21
+- RTM_DELTCLASS = 0x29
+- RTM_DELTFILTER = 0x2d
+- RTM_F_CLONED = 0x200
+- RTM_F_EQUALIZE = 0x400
+- RTM_F_LOOKUP_TABLE = 0x1000
+- RTM_F_NOTIFY = 0x100
+- RTM_F_PREFIX = 0x800
+- RTM_GETACTION = 0x32
+- RTM_GETADDR = 0x16
+- RTM_GETADDRLABEL = 0x4a
+- RTM_GETANYCAST = 0x3e
+- RTM_GETDCB = 0x4e
+- RTM_GETLINK = 0x12
+- RTM_GETMDB = 0x56
+- RTM_GETMULTICAST = 0x3a
+- RTM_GETNEIGH = 0x1e
+- RTM_GETNEIGHTBL = 0x42
+- RTM_GETNETCONF = 0x52
+- RTM_GETNSID = 0x5a
+- RTM_GETQDISC = 0x26
+- RTM_GETROUTE = 0x1a
+- RTM_GETRULE = 0x22
+- RTM_GETSTATS = 0x5e
+- RTM_GETTCLASS = 0x2a
+- RTM_GETTFILTER = 0x2e
+- RTM_MAX = 0x5f
+- RTM_NEWACTION = 0x30
+- RTM_NEWADDR = 0x14
+- RTM_NEWADDRLABEL = 0x48
+- RTM_NEWLINK = 0x10
+- RTM_NEWMDB = 0x54
+- RTM_NEWNDUSEROPT = 0x44
+- RTM_NEWNEIGH = 0x1c
+- RTM_NEWNEIGHTBL = 0x40
+- RTM_NEWNETCONF = 0x50
+- RTM_NEWNSID = 0x58
+- RTM_NEWPREFIX = 0x34
+- RTM_NEWQDISC = 0x24
+- RTM_NEWROUTE = 0x18
+- RTM_NEWRULE = 0x20
+- RTM_NEWSTATS = 0x5c
+- RTM_NEWTCLASS = 0x28
+- RTM_NEWTFILTER = 0x2c
+- RTM_NR_FAMILIES = 0x14
+- RTM_NR_MSGTYPES = 0x50
+- RTM_SETDCB = 0x4f
+- RTM_SETLINK = 0x13
+- RTM_SETNEIGHTBL = 0x43
+- RTNH_ALIGNTO = 0x4
+- RTNH_COMPARE_MASK = 0x11
+- RTNH_F_DEAD = 0x1
+- RTNH_F_LINKDOWN = 0x10
+- RTNH_F_OFFLOAD = 0x8
+- RTNH_F_ONLINK = 0x4
+- RTNH_F_PERVASIVE = 0x2
+- RTN_MAX = 0xb
+- RTPROT_BABEL = 0x2a
+- RTPROT_BIRD = 0xc
+- RTPROT_BOOT = 0x3
+- RTPROT_DHCP = 0x10
+- RTPROT_DNROUTED = 0xd
+- RTPROT_GATED = 0x8
+- RTPROT_KERNEL = 0x2
+- RTPROT_MROUTED = 0x11
+- RTPROT_MRT = 0xa
+- RTPROT_NTK = 0xf
+- RTPROT_RA = 0x9
+- RTPROT_REDIRECT = 0x1
+- RTPROT_STATIC = 0x4
+- RTPROT_UNSPEC = 0x0
+- RTPROT_XORP = 0xe
+- RTPROT_ZEBRA = 0xb
+- RT_CLASS_DEFAULT = 0xfd
+- RT_CLASS_LOCAL = 0xff
+- RT_CLASS_MAIN = 0xfe
+- RT_CLASS_MAX = 0xff
+- RT_CLASS_UNSPEC = 0x0
+- RUSAGE_CHILDREN = -0x1
+- RUSAGE_SELF = 0x0
+- RUSAGE_THREAD = 0x1
+- SCM_CREDENTIALS = 0x2
+- SCM_RIGHTS = 0x1
+- SCM_TIMESTAMP = 0x1d
++ RLIMIT_NPROC = 0x7
++ RLIMIT_RSS = 0x5
++ RNDADDENTROPY = 0x80085203
++ RNDADDTOENTCNT = 0x80045201
++ RNDCLEARPOOL = 0x20005206
++ RNDGETENTCNT = 0x40045200
++ RNDGETPOOL = 0x40085202
++ RNDRESEEDCRNG = 0x20005207
++ RNDZAPENTCNT = 0x20005204
++ RTC_AIE_OFF = 0x20007002
++ RTC_AIE_ON = 0x20007001
++ RTC_ALM_READ = 0x40247008
++ RTC_ALM_SET = 0x80247007
++ RTC_EPOCH_READ = 0x4008700d
++ RTC_EPOCH_SET = 0x8008700e
++ RTC_IRQP_READ = 0x4008700b
++ RTC_IRQP_SET = 0x8008700c
++ RTC_PIE_OFF = 0x20007006
++ RTC_PIE_ON = 0x20007005
++ RTC_PLL_GET = 0x40207011
++ RTC_PLL_SET = 0x80207012
++ RTC_RD_TIME = 0x40247009
++ RTC_SET_TIME = 0x8024700a
++ RTC_UIE_OFF = 0x20007004
++ RTC_UIE_ON = 0x20007003
++ RTC_VL_CLR = 0x20007014
++ RTC_VL_READ = 0x40047013
++ RTC_WIE_OFF = 0x20007010
++ RTC_WIE_ON = 0x2000700f
++ RTC_WKALM_RD = 0x40287010
++ RTC_WKALM_SET = 0x8028700f
+ SCM_TIMESTAMPING = 0x23
++ SCM_TIMESTAMPING_OPT_STATS = 0x38
++ SCM_TIMESTAMPING_PKTINFO = 0x3c
+ SCM_TIMESTAMPNS = 0x21
++ SCM_TXTIME = 0x3f
+ SCM_WIFI_STATUS = 0x25
+- SHUT_RD = 0x0
+- SHUT_RDWR = 0x2
+- SHUT_WR = 0x1
+- SIOCADDDLCI = 0x8980
+- SIOCADDMULTI = 0x8931
+- SIOCADDRT = 0x890b
++ SFD_CLOEXEC = 0x400000
++ SFD_NONBLOCK = 0x4000
+ SIOCATMARK = 0x8905
+- SIOCBONDCHANGEACTIVE = 0x8995
+- SIOCBONDENSLAVE = 0x8990
+- SIOCBONDINFOQUERY = 0x8994
+- SIOCBONDRELEASE = 0x8991
+- SIOCBONDSETHWADDR = 0x8992
+- SIOCBONDSLAVEINFOQUERY = 0x8993
+- SIOCBRADDBR = 0x89a0
+- SIOCBRADDIF = 0x89a2
+- SIOCBRDELBR = 0x89a1
+- SIOCBRDELIF = 0x89a3
+- SIOCDARP = 0x8953
+- SIOCDELDLCI = 0x8981
+- SIOCDELMULTI = 0x8932
+- SIOCDELRT = 0x890c
+- SIOCDEVPRIVATE = 0x89f0
+- SIOCDIFADDR = 0x8936
+- SIOCDRARP = 0x8960
+- SIOCETHTOOL = 0x8946
+- SIOCGARP = 0x8954
+- SIOCGHWTSTAMP = 0x89b1
+- SIOCGIFADDR = 0x8915
+- SIOCGIFBR = 0x8940
+- SIOCGIFBRDADDR = 0x8919
+- SIOCGIFCONF = 0x8912
+- SIOCGIFCOUNT = 0x8938
+- SIOCGIFDSTADDR = 0x8917
+- SIOCGIFENCAP = 0x8925
+- SIOCGIFFLAGS = 0x8913
+- SIOCGIFHWADDR = 0x8927
+- SIOCGIFINDEX = 0x8933
+- SIOCGIFMAP = 0x8970
+- SIOCGIFMEM = 0x891f
+- SIOCGIFMETRIC = 0x891d
+- SIOCGIFMTU = 0x8921
+- SIOCGIFNAME = 0x8910
+- SIOCGIFNETMASK = 0x891b
+- SIOCGIFPFLAGS = 0x8935
+- SIOCGIFSLAVE = 0x8929
+- SIOCGIFTXQLEN = 0x8942
+- SIOCGIFVLAN = 0x8982
+- SIOCGMIIPHY = 0x8947
+- SIOCGMIIREG = 0x8948
+ SIOCGPGRP = 0x8904
+- SIOCGRARP = 0x8961
+- SIOCGSTAMP = 0x8906
+- SIOCGSTAMPNS = 0x8907
++ SIOCGSTAMPNS_NEW = 0x40108907
++ SIOCGSTAMP_NEW = 0x40108906
+ SIOCINQ = 0x4004667f
+ SIOCOUTQ = 0x40047473
+- SIOCOUTQNSD = 0x894b
+- SIOCPROTOPRIVATE = 0x89e0
+- SIOCRTMSG = 0x890d
+- SIOCSARP = 0x8955
+- SIOCSHWTSTAMP = 0x89b0
+- SIOCSIFADDR = 0x8916
+- SIOCSIFBR = 0x8941
+- SIOCSIFBRDADDR = 0x891a
+- SIOCSIFDSTADDR = 0x8918
+- SIOCSIFENCAP = 0x8926
+- SIOCSIFFLAGS = 0x8914
+- SIOCSIFHWADDR = 0x8924
+- SIOCSIFHWBROADCAST = 0x8937
+- SIOCSIFLINK = 0x8911
+- SIOCSIFMAP = 0x8971
+- SIOCSIFMEM = 0x8920
+- SIOCSIFMETRIC = 0x891e
+- SIOCSIFMTU = 0x8922
+- SIOCSIFNAME = 0x8923
+- SIOCSIFNETMASK = 0x891c
+- SIOCSIFPFLAGS = 0x8934
+- SIOCSIFSLAVE = 0x8930
+- SIOCSIFTXQLEN = 0x8943
+- SIOCSIFVLAN = 0x8983
+- SIOCSMIIREG = 0x8949
+ SIOCSPGRP = 0x8902
+- SIOCSRARP = 0x8962
+- SIOCWANDEV = 0x894a
+ SOCK_CLOEXEC = 0x400000
+- SOCK_DCCP = 0x6
+ SOCK_DGRAM = 0x2
+ SOCK_NONBLOCK = 0x4000
+- SOCK_PACKET = 0xa
+- SOCK_RAW = 0x3
+- SOCK_RDM = 0x4
+- SOCK_SEQPACKET = 0x5
+ SOCK_STREAM = 0x1
+- SOL_AAL = 0x109
+- SOL_ALG = 0x117
+- SOL_ATM = 0x108
+- SOL_CAIF = 0x116
+- SOL_DCCP = 0x10d
+- SOL_DECNET = 0x105
+- SOL_ICMPV6 = 0x3a
+- SOL_IP = 0x0
+- SOL_IPV6 = 0x29
+- SOL_IRDA = 0x10a
+- SOL_IUCV = 0x115
+- SOL_KCM = 0x119
+- SOL_LLC = 0x10c
+- SOL_NETBEUI = 0x10b
+- SOL_NETLINK = 0x10e
+- SOL_NFC = 0x118
+- SOL_PACKET = 0x107
+- SOL_PNPIPE = 0x113
+- SOL_PPPOL2TP = 0x111
+- SOL_RAW = 0xff
+- SOL_RDS = 0x114
+- SOL_RXRPC = 0x110
+ SOL_SOCKET = 0xffff
+- SOL_TCP = 0x6
+- SOL_TIPC = 0x10f
+- SOL_X25 = 0x106
+- SOMAXCONN = 0x80
+ SO_ACCEPTCONN = 0x8000
+ SO_ATTACH_BPF = 0x34
+- SO_ATTACH_FILTER = 0x1a
+ SO_ATTACH_REUSEPORT_CBPF = 0x35
+ SO_ATTACH_REUSEPORT_EBPF = 0x36
+ SO_BINDTODEVICE = 0xd
++ SO_BINDTOIFINDEX = 0x41
+ SO_BPF_EXTENSIONS = 0x32
+ SO_BROADCAST = 0x20
+ SO_BSDCOMPAT = 0x400
+ SO_BUSY_POLL = 0x30
+ SO_CNX_ADVICE = 0x37
+- SO_DEBUG = 0x1
+- SO_DETACH_BPF = 0x1b
+- SO_DETACH_FILTER = 0x1b
++ SO_COOKIE = 0x3b
++ SO_DETACH_REUSEPORT_BPF = 0x47
+ SO_DOMAIN = 0x1029
+ SO_DONTROUTE = 0x10
+ SO_ERROR = 0x1007
+- SO_GET_FILTER = 0x1a
+ SO_INCOMING_CPU = 0x33
++ SO_INCOMING_NAPI_ID = 0x3a
+ SO_KEEPALIVE = 0x8
+ SO_LINGER = 0x80
+ SO_LOCK_FILTER = 0x28
+ SO_MARK = 0x22
+ SO_MAX_PACING_RATE = 0x31
++ SO_MEMINFO = 0x39
+ SO_NOFCS = 0x27
+- SO_NO_CHECK = 0xb
+ SO_OOBINLINE = 0x100
+ SO_PASSCRED = 0x2
+ SO_PASSSEC = 0x1f
+ SO_PEEK_OFF = 0x26
+ SO_PEERCRED = 0x40
+- SO_PEERNAME = 0x1c
++ SO_PEERGROUPS = 0x3d
+ SO_PEERSEC = 0x1e
+- SO_PRIORITY = 0xc
+ SO_PROTOCOL = 0x1028
+ SO_RCVBUF = 0x1002
+ SO_RCVBUFFORCE = 0x100b
+ SO_RCVLOWAT = 0x800
+ SO_RCVTIMEO = 0x2000
++ SO_RCVTIMEO_NEW = 0x44
++ SO_RCVTIMEO_OLD = 0x2000
+ SO_REUSEADDR = 0x4
+ SO_REUSEPORT = 0x200
+ SO_RXQ_OVFL = 0x24
+@@ -1536,50 +358,19 @@ const (
+ SO_SNDBUFFORCE = 0x100a
+ SO_SNDLOWAT = 0x1000
+ SO_SNDTIMEO = 0x4000
+- SO_TIMESTAMP = 0x1d
++ SO_SNDTIMEO_NEW = 0x45
++ SO_SNDTIMEO_OLD = 0x4000
+ SO_TIMESTAMPING = 0x23
++ SO_TIMESTAMPING_NEW = 0x43
++ SO_TIMESTAMPING_OLD = 0x23
+ SO_TIMESTAMPNS = 0x21
++ SO_TIMESTAMPNS_NEW = 0x42
++ SO_TIMESTAMPNS_OLD = 0x21
++ SO_TIMESTAMP_NEW = 0x46
++ SO_TXTIME = 0x3f
+ SO_TYPE = 0x1008
+- SO_VM_SOCKETS_BUFFER_MAX_SIZE = 0x2
+- SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1
+- SO_VM_SOCKETS_BUFFER_SIZE = 0x0
+- SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6
+- SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7
+- SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
+- SO_VM_SOCKETS_TRUSTED = 0x5
+ SO_WIFI_STATUS = 0x25
+- SPLICE_F_GIFT = 0x8
+- SPLICE_F_MORE = 0x4
+- SPLICE_F_MOVE = 0x1
+- SPLICE_F_NONBLOCK = 0x2
+- S_BLKSIZE = 0x200
+- S_IEXEC = 0x40
+- S_IFBLK = 0x6000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFIFO = 0x1000
+- S_IFLNK = 0xa000
+- S_IFMT = 0xf000
+- S_IFREG = 0x8000
+- S_IFSOCK = 0xc000
+- S_IREAD = 0x100
+- S_IRGRP = 0x20
+- S_IROTH = 0x4
+- S_IRUSR = 0x100
+- S_IRWXG = 0x38
+- S_IRWXO = 0x7
+- S_IRWXU = 0x1c0
+- S_ISGID = 0x400
+- S_ISUID = 0x800
+- S_ISVTX = 0x200
+- S_IWGRP = 0x10
+- S_IWOTH = 0x2
+- S_IWRITE = 0x80
+- S_IWUSR = 0x80
+- S_IXGRP = 0x8
+- S_IXOTH = 0x1
+- S_IXUSR = 0x40
+- TAB0 = 0x0
++ SO_ZEROCOPY = 0x3e
+ TAB1 = 0x800
+ TAB2 = 0x1000
+ TAB3 = 0x1800
+@@ -1588,54 +379,6 @@ const (
+ TCGETA = 0x40125401
+ TCGETS = 0x40245408
+ TCGETS2 = 0x402c540c
+- TCIFLUSH = 0x0
+- TCIOFF = 0x2
+- TCIOFLUSH = 0x2
+- TCION = 0x3
+- TCOFLUSH = 0x1
+- TCOOFF = 0x0
+- TCOON = 0x1
+- TCP_CC_INFO = 0x1a
+- TCP_CONGESTION = 0xd
+- TCP_COOKIE_IN_ALWAYS = 0x1
+- TCP_COOKIE_MAX = 0x10
+- TCP_COOKIE_MIN = 0x8
+- TCP_COOKIE_OUT_NEVER = 0x2
+- TCP_COOKIE_PAIR_SIZE = 0x20
+- TCP_COOKIE_TRANSACTIONS = 0xf
+- TCP_CORK = 0x3
+- TCP_DEFER_ACCEPT = 0x9
+- TCP_FASTOPEN = 0x17
+- TCP_INFO = 0xb
+- TCP_KEEPCNT = 0x6
+- TCP_KEEPIDLE = 0x4
+- TCP_KEEPINTVL = 0x5
+- TCP_LINGER2 = 0x8
+- TCP_MAXSEG = 0x2
+- TCP_MAXWIN = 0xffff
+- TCP_MAX_WINSHIFT = 0xe
+- TCP_MD5SIG = 0xe
+- TCP_MD5SIG_MAXKEYLEN = 0x50
+- TCP_MSS = 0x200
+- TCP_MSS_DEFAULT = 0x218
+- TCP_MSS_DESIRED = 0x4c4
+- TCP_NODELAY = 0x1
+- TCP_NOTSENT_LOWAT = 0x19
+- TCP_QUEUE_SEQ = 0x15
+- TCP_QUICKACK = 0xc
+- TCP_REPAIR = 0x13
+- TCP_REPAIR_OPTIONS = 0x16
+- TCP_REPAIR_QUEUE = 0x14
+- TCP_SAVED_SYN = 0x1c
+- TCP_SAVE_SYN = 0x1b
+- TCP_SYNCNT = 0x7
+- TCP_S_DATA_IN = 0x4
+- TCP_S_DATA_OUT = 0x8
+- TCP_THIN_DUPACK = 0x11
+- TCP_THIN_LINEAR_TIMEOUTS = 0x10
+- TCP_TIMESTAMP = 0x18
+- TCP_USER_TIMEOUT = 0x12
+- TCP_WINDOW_CLAMP = 0xa
+ TCSAFLUSH = 0x2
+ TCSBRK = 0x20005405
+ TCSBRKP = 0x5425
+@@ -1656,11 +399,13 @@ const (
+ TIOCGETD = 0x40047400
+ TIOCGEXCL = 0x40045440
+ TIOCGICOUNT = 0x545d
++ TIOCGISO7816 = 0x40285443
+ TIOCGLCKTRMIOS = 0x5456
+ TIOCGPGRP = 0x40047483
+ TIOCGPKT = 0x40045438
+ TIOCGPTLCK = 0x40045439
+ TIOCGPTN = 0x40047486
++ TIOCGPTPEER = 0x20007489
+ TIOCGRS485 = 0x40205441
+ TIOCGSERIAL = 0x541e
+ TIOCGSID = 0x40047485
+@@ -1677,28 +422,14 @@ const (
+ TIOCM_CD = 0x40
+ TIOCM_CTS = 0x20
+ TIOCM_DSR = 0x100
+- TIOCM_DTR = 0x2
+- TIOCM_LE = 0x1
+- TIOCM_LOOP = 0x8000
+- TIOCM_OUT1 = 0x2000
+- TIOCM_OUT2 = 0x4000
+ TIOCM_RI = 0x80
+ TIOCM_RNG = 0x80
+- TIOCM_RTS = 0x4
+ TIOCM_SR = 0x10
+ TIOCM_ST = 0x8
+ TIOCNOTTY = 0x20007471
+ TIOCNXCL = 0x2000740e
+ TIOCOUTQ = 0x40047473
+ TIOCPKT = 0x80047470
+- TIOCPKT_DATA = 0x0
+- TIOCPKT_DOSTOP = 0x20
+- TIOCPKT_FLUSHREAD = 0x1
+- TIOCPKT_FLUSHWRITE = 0x2
+- TIOCPKT_IOCTL = 0x40
+- TIOCPKT_NOSTOP = 0x10
+- TIOCPKT_START = 0x8
+- TIOCPKT_STOP = 0x4
+ TIOCSBRK = 0x2000747b
+ TIOCSCTTY = 0x20007484
+ TIOCSERCONFIG = 0x5453
+@@ -1708,9 +439,9 @@ const (
+ TIOCSERGWILD = 0x5454
+ TIOCSERSETMULTI = 0x545b
+ TIOCSERSWILD = 0x5455
+- TIOCSER_TEMT = 0x1
+ TIOCSETD = 0x80047401
+ TIOCSIG = 0x80047488
++ TIOCSISO7816 = 0xc0285444
+ TIOCSLCKTRMIOS = 0x5457
+ TIOCSPGRP = 0x80047482
+ TIOCSPTLCK = 0x80047487
+@@ -1725,6 +456,7 @@ const (
+ TOSTOP = 0x100
+ TUNATTACHFILTER = 0x801054d5
+ TUNDETACHFILTER = 0x801054d6
++ TUNGETDEVNETNS = 0x200054e3
+ TUNGETFEATURES = 0x400454cf
+ TUNGETFILTER = 0x401054db
+ TUNGETIFF = 0x400454d2
+@@ -1732,7 +464,9 @@ const (
+ TUNGETVNETBE = 0x400454df
+ TUNGETVNETHDRSZ = 0x400454d7
+ TUNGETVNETLE = 0x400454dd
++ TUNSETCARRIER = 0x800454e2
+ TUNSETDEBUG = 0x800454c9
++ TUNSETFILTEREBPF = 0x400454e1
+ TUNSETGROUP = 0x800454ce
+ TUNSETIFF = 0x800454ca
+ TUNSETIFINDEX = 0x800454da
+@@ -1743,47 +477,52 @@ const (
+ TUNSETPERSIST = 0x800454cb
+ TUNSETQUEUE = 0x800454d9
+ TUNSETSNDBUF = 0x800454d4
++ TUNSETSTEERINGEBPF = 0x400454e0
+ TUNSETTXFILTER = 0x800454d1
+ TUNSETVNETBE = 0x800454de
+ TUNSETVNETHDRSZ = 0x800454d8
+ TUNSETVNETLE = 0x800454dc
++ UBI_IOCATT = 0x80186f40
++ UBI_IOCDET = 0x80046f41
++ UBI_IOCEBCH = 0x80044f02
++ UBI_IOCEBER = 0x80044f01
++ UBI_IOCEBISMAP = 0x40044f05
++ UBI_IOCEBMAP = 0x80084f03
++ UBI_IOCEBUNMAP = 0x80044f04
++ UBI_IOCMKVOL = 0x80986f00
++ UBI_IOCRMVOL = 0x80046f01
++ UBI_IOCRNVOL = 0x91106f03
++ UBI_IOCRPEB = 0x80046f04
++ UBI_IOCRSVOL = 0x800c6f02
++ UBI_IOCSETVOLPROP = 0x80104f06
++ UBI_IOCSPEB = 0x80046f05
++ UBI_IOCVOLCRBLK = 0x80804f07
++ UBI_IOCVOLRMBLK = 0x20004f08
++ UBI_IOCVOLUP = 0x80084f00
+ VDISCARD = 0xd
+- VDSUSP = 0xb
+ VEOF = 0x4
+- VEOL = 0x5
+- VEOL2 = 0x6
+- VERASE = 0x2
+- VINTR = 0x0
+- VKILL = 0x3
+- VLNEXT = 0xf
+- VMADDR_CID_ANY = 0xffffffff
+- VMADDR_CID_HOST = 0x2
+- VMADDR_CID_HYPERVISOR = 0x0
+- VMADDR_CID_RESERVED = 0x1
+- VMADDR_PORT_ANY = 0xffffffff
+- VMIN = 0x4
+- VQUIT = 0x1
++ VEOL = 0xb
++ VEOL2 = 0x10
++ VMIN = 0x6
+ VREPRINT = 0xc
+ VSTART = 0x8
+ VSTOP = 0x9
+ VSUSP = 0xa
+ VSWTC = 0x7
+- VT0 = 0x0
+ VT1 = 0x4000
+ VTDLY = 0x4000
+ VTIME = 0x5
+ VWERASE = 0xe
+- WALL = 0x40000000
+- WCLONE = 0x80000000
+- WCONTINUED = 0x8
+- WEXITED = 0x4
+- WNOHANG = 0x1
+- WNOTHREAD = 0x20000000
+- WNOWAIT = 0x1000000
++ WDIOC_GETBOOTSTATUS = 0x40045702
++ WDIOC_GETPRETIMEOUT = 0x40045709
++ WDIOC_GETSTATUS = 0x40045701
++ WDIOC_GETSUPPORT = 0x40285700
++ WDIOC_GETTEMP = 0x40045703
++ WDIOC_GETTIMELEFT = 0x4004570a
++ WDIOC_GETTIMEOUT = 0x40045707
++ WDIOC_KEEPALIVE = 0x40045705
++ WDIOC_SETOPTIONS = 0x40045704
+ WORDSIZE = 0x40
+- WRAP = 0x20000
+- WSTOPPED = 0x2
+- WUNTRACED = 0x2
+ XCASE = 0x4
+ XTABS = 0x1800
+ __TIOCFLUSH = 0x80047410
+@@ -1791,25 +530,19 @@ const (
+
+ // Errors
+ const (
+- E2BIG = syscall.Errno(0x7)
+- EACCES = syscall.Errno(0xd)
+ EADDRINUSE = syscall.Errno(0x30)
+ EADDRNOTAVAIL = syscall.Errno(0x31)
+ EADV = syscall.Errno(0x53)
+ EAFNOSUPPORT = syscall.Errno(0x2f)
+- EAGAIN = syscall.Errno(0xb)
+ EALREADY = syscall.Errno(0x25)
+ EBADE = syscall.Errno(0x66)
+- EBADF = syscall.Errno(0x9)
+ EBADFD = syscall.Errno(0x5d)
+ EBADMSG = syscall.Errno(0x4c)
+ EBADR = syscall.Errno(0x67)
+ EBADRQC = syscall.Errno(0x6a)
+ EBADSLT = syscall.Errno(0x6b)
+ EBFONT = syscall.Errno(0x6d)
+- EBUSY = syscall.Errno(0x10)
+ ECANCELED = syscall.Errno(0x7f)
+- ECHILD = syscall.Errno(0xa)
+ ECHRNG = syscall.Errno(0x5e)
+ ECOMM = syscall.Errno(0x55)
+ ECONNABORTED = syscall.Errno(0x35)
+@@ -1818,23 +551,15 @@ const (
+ EDEADLK = syscall.Errno(0x4e)
+ EDEADLOCK = syscall.Errno(0x6c)
+ EDESTADDRREQ = syscall.Errno(0x27)
+- EDOM = syscall.Errno(0x21)
+ EDOTDOT = syscall.Errno(0x58)
+ EDQUOT = syscall.Errno(0x45)
+- EEXIST = syscall.Errno(0x11)
+- EFAULT = syscall.Errno(0xe)
+- EFBIG = syscall.Errno(0x1b)
+ EHOSTDOWN = syscall.Errno(0x40)
+ EHOSTUNREACH = syscall.Errno(0x41)
+ EHWPOISON = syscall.Errno(0x87)
+ EIDRM = syscall.Errno(0x4d)
+ EILSEQ = syscall.Errno(0x7a)
+ EINPROGRESS = syscall.Errno(0x24)
+- EINTR = syscall.Errno(0x4)
+- EINVAL = syscall.Errno(0x16)
+- EIO = syscall.Errno(0x5)
+ EISCONN = syscall.Errno(0x38)
+- EISDIR = syscall.Errno(0x15)
+ EISNAM = syscall.Errno(0x78)
+ EKEYEXPIRED = syscall.Errno(0x81)
+ EKEYREJECTED = syscall.Errno(0x83)
+@@ -1851,8 +576,6 @@ const (
+ ELNRNG = syscall.Errno(0x62)
+ ELOOP = syscall.Errno(0x3e)
+ EMEDIUMTYPE = syscall.Errno(0x7e)
+- EMFILE = syscall.Errno(0x18)
+- EMLINK = syscall.Errno(0x1f)
+ EMSGSIZE = syscall.Errno(0x28)
+ EMULTIHOP = syscall.Errno(0x57)
+ ENAMETOOLONG = syscall.Errno(0x3f)
+@@ -1860,102 +583,70 @@ const (
+ ENETDOWN = syscall.Errno(0x32)
+ ENETRESET = syscall.Errno(0x34)
+ ENETUNREACH = syscall.Errno(0x33)
+- ENFILE = syscall.Errno(0x17)
+ ENOANO = syscall.Errno(0x69)
+ ENOBUFS = syscall.Errno(0x37)
+ ENOCSI = syscall.Errno(0x64)
+ ENODATA = syscall.Errno(0x6f)
+- ENODEV = syscall.Errno(0x13)
+- ENOENT = syscall.Errno(0x2)
+- ENOEXEC = syscall.Errno(0x8)
+ ENOKEY = syscall.Errno(0x80)
+ ENOLCK = syscall.Errno(0x4f)
+ ENOLINK = syscall.Errno(0x52)
+ ENOMEDIUM = syscall.Errno(0x7d)
+- ENOMEM = syscall.Errno(0xc)
+ ENOMSG = syscall.Errno(0x4b)
+ ENONET = syscall.Errno(0x50)
+ ENOPKG = syscall.Errno(0x71)
+ ENOPROTOOPT = syscall.Errno(0x2a)
+- ENOSPC = syscall.Errno(0x1c)
+ ENOSR = syscall.Errno(0x4a)
+ ENOSTR = syscall.Errno(0x48)
+ ENOSYS = syscall.Errno(0x5a)
+- ENOTBLK = syscall.Errno(0xf)
+ ENOTCONN = syscall.Errno(0x39)
+- ENOTDIR = syscall.Errno(0x14)
+ ENOTEMPTY = syscall.Errno(0x42)
+ ENOTNAM = syscall.Errno(0x76)
+ ENOTRECOVERABLE = syscall.Errno(0x85)
+ ENOTSOCK = syscall.Errno(0x26)
+ ENOTSUP = syscall.Errno(0x2d)
+- ENOTTY = syscall.Errno(0x19)
+ ENOTUNIQ = syscall.Errno(0x73)
+- ENXIO = syscall.Errno(0x6)
+ EOPNOTSUPP = syscall.Errno(0x2d)
+ EOVERFLOW = syscall.Errno(0x5c)
+ EOWNERDEAD = syscall.Errno(0x84)
+- EPERM = syscall.Errno(0x1)
+ EPFNOSUPPORT = syscall.Errno(0x2e)
+- EPIPE = syscall.Errno(0x20)
+ EPROCLIM = syscall.Errno(0x43)
+ EPROTO = syscall.Errno(0x56)
+ EPROTONOSUPPORT = syscall.Errno(0x2b)
+ EPROTOTYPE = syscall.Errno(0x29)
+- ERANGE = syscall.Errno(0x22)
+ EREMCHG = syscall.Errno(0x59)
+ EREMOTE = syscall.Errno(0x47)
+ EREMOTEIO = syscall.Errno(0x79)
+ ERESTART = syscall.Errno(0x74)
+ ERFKILL = syscall.Errno(0x86)
+- EROFS = syscall.Errno(0x1e)
+ ERREMOTE = syscall.Errno(0x51)
+ ESHUTDOWN = syscall.Errno(0x3a)
+ ESOCKTNOSUPPORT = syscall.Errno(0x2c)
+- ESPIPE = syscall.Errno(0x1d)
+- ESRCH = syscall.Errno(0x3)
+ ESRMNT = syscall.Errno(0x54)
+ ESTALE = syscall.Errno(0x46)
+ ESTRPIPE = syscall.Errno(0x5b)
+ ETIME = syscall.Errno(0x49)
+ ETIMEDOUT = syscall.Errno(0x3c)
+ ETOOMANYREFS = syscall.Errno(0x3b)
+- ETXTBSY = syscall.Errno(0x1a)
+ EUCLEAN = syscall.Errno(0x75)
+ EUNATCH = syscall.Errno(0x63)
+ EUSERS = syscall.Errno(0x44)
+- EWOULDBLOCK = syscall.Errno(0xb)
+- EXDEV = syscall.Errno(0x12)
+ EXFULL = syscall.Errno(0x68)
+ )
+
+ // Signals
+ const (
+- SIGABRT = syscall.Signal(0x6)
+- SIGALRM = syscall.Signal(0xe)
+ SIGBUS = syscall.Signal(0xa)
+ SIGCHLD = syscall.Signal(0x14)
+ SIGCLD = syscall.Signal(0x14)
+ SIGCONT = syscall.Signal(0x13)
+ SIGEMT = syscall.Signal(0x7)
+- SIGFPE = syscall.Signal(0x8)
+- SIGHUP = syscall.Signal(0x1)
+- SIGILL = syscall.Signal(0x4)
+- SIGINT = syscall.Signal(0x2)
+ SIGIO = syscall.Signal(0x17)
+- SIGIOT = syscall.Signal(0x6)
+- SIGKILL = syscall.Signal(0x9)
+ SIGLOST = syscall.Signal(0x1d)
+- SIGPIPE = syscall.Signal(0xd)
+ SIGPOLL = syscall.Signal(0x17)
+ SIGPROF = syscall.Signal(0x1b)
+ SIGPWR = syscall.Signal(0x1d)
+- SIGQUIT = syscall.Signal(0x3)
+- SIGSEGV = syscall.Signal(0xb)
+ SIGSTOP = syscall.Signal(0x11)
+ SIGSYS = syscall.Signal(0xc)
+- SIGTERM = syscall.Signal(0xf)
+- SIGTRAP = syscall.Signal(0x5)
+ SIGTSTP = syscall.Signal(0x12)
+ SIGTTIN = syscall.Signal(0x15)
+ SIGTTOU = syscall.Signal(0x16)
+@@ -1969,174 +660,182 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "no such device or address",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource temporarily unavailable",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device or resource busy",
+- 17: "file exists",
+- 18: "invalid cross-device link",
+- 19: "no such device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "numerical result out of range",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol",
+- 48: "address already in use",
+- 49: "cannot assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "transport endpoint is already connected",
+- 57: "transport endpoint is not connected",
+- 58: "cannot send after transport endpoint shutdown",
+- 59: "too many references: cannot splice",
+- 60: "connection timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disk quota exceeded",
+- 70: "stale file handle",
+- 71: "object is remote",
+- 72: "device not a stream",
+- 73: "timer expired",
+- 74: "out of streams resources",
+- 75: "no message of desired type",
+- 76: "bad message",
+- 77: "identifier removed",
+- 78: "resource deadlock avoided",
+- 79: "no locks available",
+- 80: "machine is not on the network",
+- 81: "unknown error 81",
+- 82: "link has been severed",
+- 83: "advertise error",
+- 84: "srmount error",
+- 85: "communication error on send",
+- 86: "protocol error",
+- 87: "multihop attempted",
+- 88: "RFS specific error",
+- 89: "remote address changed",
+- 90: "function not implemented",
+- 91: "streams pipe error",
+- 92: "value too large for defined data type",
+- 93: "file descriptor in bad state",
+- 94: "channel number out of range",
+- 95: "level 2 not synchronized",
+- 96: "level 3 halted",
+- 97: "level 3 reset",
+- 98: "link number out of range",
+- 99: "protocol driver not attached",
+- 100: "no CSI structure available",
+- 101: "level 2 halted",
+- 102: "invalid exchange",
+- 103: "invalid request descriptor",
+- 104: "exchange full",
+- 105: "no anode",
+- 106: "invalid request code",
+- 107: "invalid slot",
+- 108: "file locking deadlock error",
+- 109: "bad font file format",
+- 110: "cannot exec a shared library directly",
+- 111: "no data available",
+- 112: "accessing a corrupted shared library",
+- 113: "package not installed",
+- 114: "can not access a needed shared library",
+- 115: "name not unique on network",
+- 116: "interrupted system call should be restarted",
+- 117: "structure needs cleaning",
+- 118: "not a XENIX named type file",
+- 119: "no XENIX semaphores available",
+- 120: "is a named type file",
+- 121: "remote I/O error",
+- 122: "invalid or incomplete multibyte or wide character",
+- 123: "attempting to link in too many shared libraries",
+- 124: ".lib section in a.out corrupted",
+- 125: "no medium found",
+- 126: "wrong medium type",
+- 127: "operation canceled",
+- 128: "required key not available",
+- 129: "key has expired",
+- 130: "key has been revoked",
+- 131: "key was rejected by service",
+- 132: "owner died",
+- 133: "state not recoverable",
+- 134: "operation not possible due to RF-kill",
+- 135: "memory page has hardware error",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "no such device or address"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EAGAIN", "resource temporarily unavailable"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device or resource busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "invalid cross-device link"},
++ {19, "ENODEV", "no such device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "numerical result out of range"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "ENOTSUP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "cannot assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "transport endpoint is already connected"},
++ {57, "ENOTCONN", "transport endpoint is not connected"},
++ {58, "ESHUTDOWN", "cannot send after transport endpoint shutdown"},
++ {59, "ETOOMANYREFS", "too many references: cannot splice"},
++ {60, "ETIMEDOUT", "connection timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disk quota exceeded"},
++ {70, "ESTALE", "stale file handle"},
++ {71, "EREMOTE", "object is remote"},
++ {72, "ENOSTR", "device not a stream"},
++ {73, "ETIME", "timer expired"},
++ {74, "ENOSR", "out of streams resources"},
++ {75, "ENOMSG", "no message of desired type"},
++ {76, "EBADMSG", "bad message"},
++ {77, "EIDRM", "identifier removed"},
++ {78, "EDEADLK", "resource deadlock avoided"},
++ {79, "ENOLCK", "no locks available"},
++ {80, "ENONET", "machine is not on the network"},
++ {81, "ERREMOTE", "unknown error 81"},
++ {82, "ENOLINK", "link has been severed"},
++ {83, "EADV", "advertise error"},
++ {84, "ESRMNT", "srmount error"},
++ {85, "ECOMM", "communication error on send"},
++ {86, "EPROTO", "protocol error"},
++ {87, "EMULTIHOP", "multihop attempted"},
++ {88, "EDOTDOT", "RFS specific error"},
++ {89, "EREMCHG", "remote address changed"},
++ {90, "ENOSYS", "function not implemented"},
++ {91, "ESTRPIPE", "streams pipe error"},
++ {92, "EOVERFLOW", "value too large for defined data type"},
++ {93, "EBADFD", "file descriptor in bad state"},
++ {94, "ECHRNG", "channel number out of range"},
++ {95, "EL2NSYNC", "level 2 not synchronized"},
++ {96, "EL3HLT", "level 3 halted"},
++ {97, "EL3RST", "level 3 reset"},
++ {98, "ELNRNG", "link number out of range"},
++ {99, "EUNATCH", "protocol driver not attached"},
++ {100, "ENOCSI", "no CSI structure available"},
++ {101, "EL2HLT", "level 2 halted"},
++ {102, "EBADE", "invalid exchange"},
++ {103, "EBADR", "invalid request descriptor"},
++ {104, "EXFULL", "exchange full"},
++ {105, "ENOANO", "no anode"},
++ {106, "EBADRQC", "invalid request code"},
++ {107, "EBADSLT", "invalid slot"},
++ {108, "EDEADLOCK", "file locking deadlock error"},
++ {109, "EBFONT", "bad font file format"},
++ {110, "ELIBEXEC", "cannot exec a shared library directly"},
++ {111, "ENODATA", "no data available"},
++ {112, "ELIBBAD", "accessing a corrupted shared library"},
++ {113, "ENOPKG", "package not installed"},
++ {114, "ELIBACC", "can not access a needed shared library"},
++ {115, "ENOTUNIQ", "name not unique on network"},
++ {116, "ERESTART", "interrupted system call should be restarted"},
++ {117, "EUCLEAN", "structure needs cleaning"},
++ {118, "ENOTNAM", "not a XENIX named type file"},
++ {119, "ENAVAIL", "no XENIX semaphores available"},
++ {120, "EISNAM", "is a named type file"},
++ {121, "EREMOTEIO", "remote I/O error"},
++ {122, "EILSEQ", "invalid or incomplete multibyte or wide character"},
++ {123, "ELIBMAX", "attempting to link in too many shared libraries"},
++ {124, "ELIBSCN", ".lib section in a.out corrupted"},
++ {125, "ENOMEDIUM", "no medium found"},
++ {126, "EMEDIUMTYPE", "wrong medium type"},
++ {127, "ECANCELED", "operation canceled"},
++ {128, "ENOKEY", "required key not available"},
++ {129, "EKEYEXPIRED", "key has expired"},
++ {130, "EKEYREVOKED", "key has been revoked"},
++ {131, "EKEYREJECTED", "key was rejected by service"},
++ {132, "EOWNERDEAD", "owner died"},
++ {133, "ENOTRECOVERABLE", "state not recoverable"},
++ {134, "ERFKILL", "operation not possible due to RF-kill"},
++ {135, "EHWPOISON", "memory page has hardware error"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/breakpoint trap",
+- 6: "aborted",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "stopped (signal)",
+- 18: "stopped",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "CPU time limit exceeded",
+- 25: "file size limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window changed",
+- 29: "resource lost",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/breakpoint trap"},
++ {6, "SIGABRT", "aborted"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "stopped (signal)"},
++ {18, "SIGTSTP", "stopped"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "CPU time limit exceeded"},
++ {25, "SIGXFSZ", "file size limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window changed"},
++ {29, "SIGLOST", "power failure"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go b/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go
+index b4338d5f..96b9b8ab 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go
+@@ -1,9 +1,9 @@
+ // mkerrors.sh -m32
+-// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build 386,netbsd
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m32 _const.go
+
+ package unix
+@@ -159,6 +159,7 @@ const (
+ CLONE_VFORK = 0x4000
+ CLONE_VM = 0x100
+ CREAD = 0x800
++ CRTSCTS = 0x10000
+ CS5 = 0x0
+ CS6 = 0x100
+ CS7 = 0x200
+@@ -169,6 +170,8 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0xc
+ CTL_NET = 0x4
+ CTL_QUERY = -0x2
+@@ -547,6 +550,10 @@ const (
+ EV_ONESHOT = 0x10
+ EV_SYSFLAGS = 0xf000
+ EXTA = 0x4b00
++ EXTATTR_CMD_START = 0x1
++ EXTATTR_CMD_STOP = 0x2
++ EXTATTR_NAMESPACE_SYSTEM = 0x2
++ EXTATTR_NAMESPACE_USER = 0x1
+ EXTB = 0x9600
+ EXTPROC = 0x800
+ FD_CLOEXEC = 0x1
+@@ -581,6 +588,7 @@ const (
+ F_UNLCK = 0x2
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+@@ -970,6 +978,10 @@ const (
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+ LOCK_SH = 0x1
+@@ -1008,6 +1020,43 @@ const (
+ MAP_WIRED = 0x800
+ MCL_CURRENT = 0x1
+ MCL_FUTURE = 0x2
++ MNT_ASYNC = 0x40
++ MNT_BASIC_FLAGS = 0xe782807f
++ MNT_DEFEXPORTED = 0x200
++ MNT_DISCARD = 0x800000
++ MNT_EXKERB = 0x800
++ MNT_EXNORESPORT = 0x8000000
++ MNT_EXPORTANON = 0x400
++ MNT_EXPORTED = 0x100
++ MNT_EXPUBLIC = 0x10000000
++ MNT_EXRDONLY = 0x80
++ MNT_EXTATTR = 0x1000000
++ MNT_FORCE = 0x80000
++ MNT_GETARGS = 0x400000
++ MNT_IGNORE = 0x100000
++ MNT_LAZY = 0x3
++ MNT_LOCAL = 0x1000
++ MNT_LOG = 0x2000000
++ MNT_NOATIME = 0x4000000
++ MNT_NOCOREDUMP = 0x8000
++ MNT_NODEV = 0x10
++ MNT_NODEVMTIME = 0x40000000
++ MNT_NOEXEC = 0x4
++ MNT_NOSUID = 0x8
++ MNT_NOWAIT = 0x2
++ MNT_OP_FLAGS = 0x4d0000
++ MNT_QUOTA = 0x2000
++ MNT_RDONLY = 0x1
++ MNT_RELATIME = 0x20000
++ MNT_RELOAD = 0x40000
++ MNT_ROOTFS = 0x4000
++ MNT_SOFTDEP = 0x80000000
++ MNT_SYMPERM = 0x20000000
++ MNT_SYNCHRONOUS = 0x2
++ MNT_UNION = 0x20
++ MNT_UPDATE = 0x10000
++ MNT_VISFLAGMASK = 0xff90ffff
++ MNT_WAIT = 0x1
+ MSG_BCAST = 0x100
+ MSG_CMSG_CLOEXEC = 0x800
+ MSG_CONTROLMBUF = 0x2000000
+@@ -1036,6 +1085,7 @@ const (
+ NET_RT_MAXID = 0x6
+ NET_RT_OIFLIST = 0x4
+ NET_RT_OOIFLIST = 0x3
++ NFDBITS = 0x20
+ NOFLSH = 0x80000000
+ NOTE_ATTRIB = 0x8
+ NOTE_CHILD = 0x4
+@@ -1101,7 +1151,10 @@ const (
+ RLIMIT_CPU = 0x0
+ RLIMIT_DATA = 0x2
+ RLIMIT_FSIZE = 0x1
++ RLIMIT_MEMLOCK = 0x6
+ RLIMIT_NOFILE = 0x8
++ RLIMIT_NPROC = 0x7
++ RLIMIT_RSS = 0x5
+ RLIMIT_STACK = 0x3
+ RLIM_INFINITY = 0x7fffffffffffffff
+ RTAX_AUTHOR = 0x6
+@@ -1576,137 +1629,145 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large or too small",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol option not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "connection timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "identifier removed",
+- 83: "no message of desired type",
+- 84: "value too large to be stored in data type",
+- 85: "illegal byte sequence",
+- 86: "not supported",
+- 87: "operation Canceled",
+- 88: "bad or Corrupt message",
+- 89: "no message available",
+- 90: "no STREAM resources",
+- 91: "not a STREAM",
+- 92: "STREAM ioctl timeout",
+- 93: "attribute not found",
+- 94: "multihop attempted",
+- 95: "link has been severed",
+- 96: "protocol error",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large or too small"},
++ {35, "EAGAIN", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol option not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "EOPNOTSUPP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "connection timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disc quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EIDRM", "identifier removed"},
++ {83, "ENOMSG", "no message of desired type"},
++ {84, "EOVERFLOW", "value too large to be stored in data type"},
++ {85, "EILSEQ", "illegal byte sequence"},
++ {86, "ENOTSUP", "not supported"},
++ {87, "ECANCELED", "operation Canceled"},
++ {88, "EBADMSG", "bad or Corrupt message"},
++ {89, "ENODATA", "no message available"},
++ {90, "ENOSR", "no STREAM resources"},
++ {91, "ENOSTR", "not a STREAM"},
++ {92, "ETIME", "STREAM ioctl timeout"},
++ {93, "ENOATTR", "attribute not found"},
++ {94, "EMULTIHOP", "multihop attempted"},
++ {95, "ENOLINK", "link has been severed"},
++ {96, "ELAST", "protocol error"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "stopped (signal)",
+- 18: "stopped",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
+- 32: "power fail/restart",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGIOT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "stopped (signal)"},
++ {18, "SIGTSTP", "stopped"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
++ {32, "SIGPWR", "power fail/restart"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
+index 4994437b..ed522a84 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
+@@ -1,9 +1,9 @@
+ // mkerrors.sh -m64
+-// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build amd64,netbsd
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+
+ package unix
+@@ -159,6 +159,7 @@ const (
+ CLONE_VFORK = 0x4000
+ CLONE_VM = 0x100
+ CREAD = 0x800
++ CRTSCTS = 0x10000
+ CS5 = 0x0
+ CS6 = 0x100
+ CS7 = 0x200
+@@ -169,6 +170,8 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0xc
+ CTL_NET = 0x4
+ CTL_QUERY = -0x2
+@@ -537,6 +540,10 @@ const (
+ EV_ONESHOT = 0x10
+ EV_SYSFLAGS = 0xf000
+ EXTA = 0x4b00
++ EXTATTR_CMD_START = 0x1
++ EXTATTR_CMD_STOP = 0x2
++ EXTATTR_NAMESPACE_SYSTEM = 0x2
++ EXTATTR_NAMESPACE_USER = 0x1
+ EXTB = 0x9600
+ EXTPROC = 0x800
+ FD_CLOEXEC = 0x1
+@@ -571,6 +578,7 @@ const (
+ F_UNLCK = 0x2
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+@@ -960,6 +968,10 @@ const (
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+ LOCK_SH = 0x1
+@@ -998,6 +1010,43 @@ const (
+ MAP_WIRED = 0x800
+ MCL_CURRENT = 0x1
+ MCL_FUTURE = 0x2
++ MNT_ASYNC = 0x40
++ MNT_BASIC_FLAGS = 0xe782807f
++ MNT_DEFEXPORTED = 0x200
++ MNT_DISCARD = 0x800000
++ MNT_EXKERB = 0x800
++ MNT_EXNORESPORT = 0x8000000
++ MNT_EXPORTANON = 0x400
++ MNT_EXPORTED = 0x100
++ MNT_EXPUBLIC = 0x10000000
++ MNT_EXRDONLY = 0x80
++ MNT_EXTATTR = 0x1000000
++ MNT_FORCE = 0x80000
++ MNT_GETARGS = 0x400000
++ MNT_IGNORE = 0x100000
++ MNT_LAZY = 0x3
++ MNT_LOCAL = 0x1000
++ MNT_LOG = 0x2000000
++ MNT_NOATIME = 0x4000000
++ MNT_NOCOREDUMP = 0x8000
++ MNT_NODEV = 0x10
++ MNT_NODEVMTIME = 0x40000000
++ MNT_NOEXEC = 0x4
++ MNT_NOSUID = 0x8
++ MNT_NOWAIT = 0x2
++ MNT_OP_FLAGS = 0x4d0000
++ MNT_QUOTA = 0x2000
++ MNT_RDONLY = 0x1
++ MNT_RELATIME = 0x20000
++ MNT_RELOAD = 0x40000
++ MNT_ROOTFS = 0x4000
++ MNT_SOFTDEP = 0x80000000
++ MNT_SYMPERM = 0x20000000
++ MNT_SYNCHRONOUS = 0x2
++ MNT_UNION = 0x20
++ MNT_UPDATE = 0x10000
++ MNT_VISFLAGMASK = 0xff90ffff
++ MNT_WAIT = 0x1
+ MSG_BCAST = 0x100
+ MSG_CMSG_CLOEXEC = 0x800
+ MSG_CONTROLMBUF = 0x2000000
+@@ -1026,6 +1075,7 @@ const (
+ NET_RT_MAXID = 0x6
+ NET_RT_OIFLIST = 0x4
+ NET_RT_OOIFLIST = 0x3
++ NFDBITS = 0x20
+ NOFLSH = 0x80000000
+ NOTE_ATTRIB = 0x8
+ NOTE_CHILD = 0x4
+@@ -1091,7 +1141,10 @@ const (
+ RLIMIT_CPU = 0x0
+ RLIMIT_DATA = 0x2
+ RLIMIT_FSIZE = 0x1
++ RLIMIT_MEMLOCK = 0x6
+ RLIMIT_NOFILE = 0x8
++ RLIMIT_NPROC = 0x7
++ RLIMIT_RSS = 0x5
+ RLIMIT_STACK = 0x3
+ RLIM_INFINITY = 0x7fffffffffffffff
+ RTAX_AUTHOR = 0x6
+@@ -1566,137 +1619,145 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large or too small",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol option not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "connection timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "identifier removed",
+- 83: "no message of desired type",
+- 84: "value too large to be stored in data type",
+- 85: "illegal byte sequence",
+- 86: "not supported",
+- 87: "operation Canceled",
+- 88: "bad or Corrupt message",
+- 89: "no message available",
+- 90: "no STREAM resources",
+- 91: "not a STREAM",
+- 92: "STREAM ioctl timeout",
+- 93: "attribute not found",
+- 94: "multihop attempted",
+- 95: "link has been severed",
+- 96: "protocol error",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large or too small"},
++ {35, "EAGAIN", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol option not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "EOPNOTSUPP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "connection timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disc quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EIDRM", "identifier removed"},
++ {83, "ENOMSG", "no message of desired type"},
++ {84, "EOVERFLOW", "value too large to be stored in data type"},
++ {85, "EILSEQ", "illegal byte sequence"},
++ {86, "ENOTSUP", "not supported"},
++ {87, "ECANCELED", "operation Canceled"},
++ {88, "EBADMSG", "bad or Corrupt message"},
++ {89, "ENODATA", "no message available"},
++ {90, "ENOSR", "no STREAM resources"},
++ {91, "ENOSTR", "not a STREAM"},
++ {92, "ETIME", "STREAM ioctl timeout"},
++ {93, "ENOATTR", "attribute not found"},
++ {94, "EMULTIHOP", "multihop attempted"},
++ {95, "ENOLINK", "link has been severed"},
++ {96, "ELAST", "protocol error"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "stopped (signal)",
+- 18: "stopped",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
+- 32: "power fail/restart",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGIOT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "stopped (signal)"},
++ {18, "SIGTSTP", "stopped"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
++ {32, "SIGPWR", "power fail/restart"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go b/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go
+index 206c75f0..c8d36fe9 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go
+@@ -1,9 +1,9 @@
+ // mkerrors.sh -marm
+-// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build arm,netbsd
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -marm _const.go
+
+ package unix
+@@ -151,6 +151,7 @@ const (
+ CFLUSH = 0xf
+ CLOCAL = 0x8000
+ CREAD = 0x800
++ CRTSCTS = 0x10000
+ CS5 = 0x0
+ CS6 = 0x100
+ CS7 = 0x200
+@@ -161,6 +162,8 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0xc
+ CTL_NET = 0x4
+ CTL_QUERY = -0x2
+@@ -529,6 +532,10 @@ const (
+ EV_ONESHOT = 0x10
+ EV_SYSFLAGS = 0xf000
+ EXTA = 0x4b00
++ EXTATTR_CMD_START = 0x1
++ EXTATTR_CMD_STOP = 0x2
++ EXTATTR_NAMESPACE_SYSTEM = 0x2
++ EXTATTR_NAMESPACE_USER = 0x1
+ EXTB = 0x9600
+ EXTPROC = 0x800
+ FD_CLOEXEC = 0x1
+@@ -563,6 +570,7 @@ const (
+ F_UNLCK = 0x2
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+@@ -952,6 +960,10 @@ const (
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+ LOCK_SH = 0x1
+@@ -988,6 +1000,43 @@ const (
+ MAP_STACK = 0x2000
+ MAP_TRYFIXED = 0x400
+ MAP_WIRED = 0x800
++ MNT_ASYNC = 0x40
++ MNT_BASIC_FLAGS = 0xe782807f
++ MNT_DEFEXPORTED = 0x200
++ MNT_DISCARD = 0x800000
++ MNT_EXKERB = 0x800
++ MNT_EXNORESPORT = 0x8000000
++ MNT_EXPORTANON = 0x400
++ MNT_EXPORTED = 0x100
++ MNT_EXPUBLIC = 0x10000000
++ MNT_EXRDONLY = 0x80
++ MNT_EXTATTR = 0x1000000
++ MNT_FORCE = 0x80000
++ MNT_GETARGS = 0x400000
++ MNT_IGNORE = 0x100000
++ MNT_LAZY = 0x3
++ MNT_LOCAL = 0x1000
++ MNT_LOG = 0x2000000
++ MNT_NOATIME = 0x4000000
++ MNT_NOCOREDUMP = 0x8000
++ MNT_NODEV = 0x10
++ MNT_NODEVMTIME = 0x40000000
++ MNT_NOEXEC = 0x4
++ MNT_NOSUID = 0x8
++ MNT_NOWAIT = 0x2
++ MNT_OP_FLAGS = 0x4d0000
++ MNT_QUOTA = 0x2000
++ MNT_RDONLY = 0x1
++ MNT_RELATIME = 0x20000
++ MNT_RELOAD = 0x40000
++ MNT_ROOTFS = 0x4000
++ MNT_SOFTDEP = 0x80000000
++ MNT_SYMPERM = 0x20000000
++ MNT_SYNCHRONOUS = 0x2
++ MNT_UNION = 0x20
++ MNT_UPDATE = 0x10000
++ MNT_VISFLAGMASK = 0xff90ffff
++ MNT_WAIT = 0x1
+ MSG_BCAST = 0x100
+ MSG_CMSG_CLOEXEC = 0x800
+ MSG_CONTROLMBUF = 0x2000000
+@@ -1016,6 +1065,7 @@ const (
+ NET_RT_MAXID = 0x6
+ NET_RT_OIFLIST = 0x4
+ NET_RT_OOIFLIST = 0x3
++ NFDBITS = 0x20
+ NOFLSH = 0x80000000
+ NOTE_ATTRIB = 0x8
+ NOTE_CHILD = 0x4
+@@ -1081,7 +1131,10 @@ const (
+ RLIMIT_CPU = 0x0
+ RLIMIT_DATA = 0x2
+ RLIMIT_FSIZE = 0x1
++ RLIMIT_MEMLOCK = 0x6
+ RLIMIT_NOFILE = 0x8
++ RLIMIT_NPROC = 0x7
++ RLIMIT_RSS = 0x5
+ RLIMIT_STACK = 0x3
+ RLIM_INFINITY = 0x7fffffffffffffff
+ RTAX_AUTHOR = 0x6
+@@ -1555,137 +1608,145 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large or too small",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol option not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "connection timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "identifier removed",
+- 83: "no message of desired type",
+- 84: "value too large to be stored in data type",
+- 85: "illegal byte sequence",
+- 86: "not supported",
+- 87: "operation Canceled",
+- 88: "bad or Corrupt message",
+- 89: "no message available",
+- 90: "no STREAM resources",
+- 91: "not a STREAM",
+- 92: "STREAM ioctl timeout",
+- 93: "attribute not found",
+- 94: "multihop attempted",
+- 95: "link has been severed",
+- 96: "protocol error",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large or too small"},
++ {35, "EAGAIN", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol option not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "EOPNOTSUPP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "connection timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disc quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EIDRM", "identifier removed"},
++ {83, "ENOMSG", "no message of desired type"},
++ {84, "EOVERFLOW", "value too large to be stored in data type"},
++ {85, "EILSEQ", "illegal byte sequence"},
++ {86, "ENOTSUP", "not supported"},
++ {87, "ECANCELED", "operation Canceled"},
++ {88, "EBADMSG", "bad or Corrupt message"},
++ {89, "ENODATA", "no message available"},
++ {90, "ENOSR", "no STREAM resources"},
++ {91, "ENOSTR", "not a STREAM"},
++ {92, "ETIME", "STREAM ioctl timeout"},
++ {93, "ENOATTR", "attribute not found"},
++ {94, "EMULTIHOP", "multihop attempted"},
++ {95, "ENOLINK", "link has been severed"},
++ {96, "ELAST", "protocol error"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "stopped (signal)",
+- 18: "stopped",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
+- 32: "power fail/restart",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGIOT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "stopped (signal)"},
++ {18, "SIGTSTP", "stopped"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
++ {32, "SIGPWR", "power fail/restart"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go
+similarity index 89%
+copy from vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
+copy to vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go
+index 4994437b..f1c146a7 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go
+@@ -1,9 +1,9 @@
+ // mkerrors.sh -m64
+-// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build amd64,netbsd
++// +build arm64,netbsd
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+
+ package unix
+@@ -159,6 +159,7 @@ const (
+ CLONE_VFORK = 0x4000
+ CLONE_VM = 0x100
+ CREAD = 0x800
++ CRTSCTS = 0x10000
+ CS5 = 0x0
+ CS6 = 0x100
+ CS7 = 0x200
+@@ -169,6 +170,8 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0xc
+ CTL_NET = 0x4
+ CTL_QUERY = -0x2
+@@ -537,6 +540,10 @@ const (
+ EV_ONESHOT = 0x10
+ EV_SYSFLAGS = 0xf000
+ EXTA = 0x4b00
++ EXTATTR_CMD_START = 0x1
++ EXTATTR_CMD_STOP = 0x2
++ EXTATTR_NAMESPACE_SYSTEM = 0x2
++ EXTATTR_NAMESPACE_USER = 0x1
+ EXTB = 0x9600
+ EXTPROC = 0x800
+ FD_CLOEXEC = 0x1
+@@ -571,6 +578,7 @@ const (
+ F_UNLCK = 0x2
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+@@ -960,6 +968,10 @@ const (
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+ LOCK_SH = 0x1
+@@ -998,6 +1010,43 @@ const (
+ MAP_WIRED = 0x800
+ MCL_CURRENT = 0x1
+ MCL_FUTURE = 0x2
++ MNT_ASYNC = 0x40
++ MNT_BASIC_FLAGS = 0xe782807f
++ MNT_DEFEXPORTED = 0x200
++ MNT_DISCARD = 0x800000
++ MNT_EXKERB = 0x800
++ MNT_EXNORESPORT = 0x8000000
++ MNT_EXPORTANON = 0x400
++ MNT_EXPORTED = 0x100
++ MNT_EXPUBLIC = 0x10000000
++ MNT_EXRDONLY = 0x80
++ MNT_EXTATTR = 0x1000000
++ MNT_FORCE = 0x80000
++ MNT_GETARGS = 0x400000
++ MNT_IGNORE = 0x100000
++ MNT_LAZY = 0x3
++ MNT_LOCAL = 0x1000
++ MNT_LOG = 0x2000000
++ MNT_NOATIME = 0x4000000
++ MNT_NOCOREDUMP = 0x8000
++ MNT_NODEV = 0x10
++ MNT_NODEVMTIME = 0x40000000
++ MNT_NOEXEC = 0x4
++ MNT_NOSUID = 0x8
++ MNT_NOWAIT = 0x2
++ MNT_OP_FLAGS = 0x4d0000
++ MNT_QUOTA = 0x2000
++ MNT_RDONLY = 0x1
++ MNT_RELATIME = 0x20000
++ MNT_RELOAD = 0x40000
++ MNT_ROOTFS = 0x4000
++ MNT_SOFTDEP = 0x80000000
++ MNT_SYMPERM = 0x20000000
++ MNT_SYNCHRONOUS = 0x2
++ MNT_UNION = 0x20
++ MNT_UPDATE = 0x10000
++ MNT_VISFLAGMASK = 0xff90ffff
++ MNT_WAIT = 0x1
+ MSG_BCAST = 0x100
+ MSG_CMSG_CLOEXEC = 0x800
+ MSG_CONTROLMBUF = 0x2000000
+@@ -1026,6 +1075,7 @@ const (
+ NET_RT_MAXID = 0x6
+ NET_RT_OIFLIST = 0x4
+ NET_RT_OOIFLIST = 0x3
++ NFDBITS = 0x20
+ NOFLSH = 0x80000000
+ NOTE_ATTRIB = 0x8
+ NOTE_CHILD = 0x4
+@@ -1091,7 +1141,10 @@ const (
+ RLIMIT_CPU = 0x0
+ RLIMIT_DATA = 0x2
+ RLIMIT_FSIZE = 0x1
++ RLIMIT_MEMLOCK = 0x6
+ RLIMIT_NOFILE = 0x8
++ RLIMIT_NPROC = 0x7
++ RLIMIT_RSS = 0x5
+ RLIMIT_STACK = 0x3
+ RLIM_INFINITY = 0x7fffffffffffffff
+ RTAX_AUTHOR = 0x6
+@@ -1566,137 +1619,145 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large or too small",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol option not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "connection timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "identifier removed",
+- 83: "no message of desired type",
+- 84: "value too large to be stored in data type",
+- 85: "illegal byte sequence",
+- 86: "not supported",
+- 87: "operation Canceled",
+- 88: "bad or Corrupt message",
+- 89: "no message available",
+- 90: "no STREAM resources",
+- 91: "not a STREAM",
+- 92: "STREAM ioctl timeout",
+- 93: "attribute not found",
+- 94: "multihop attempted",
+- 95: "link has been severed",
+- 96: "protocol error",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large or too small"},
++ {35, "EAGAIN", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol option not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "EOPNOTSUPP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "connection timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disc quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC prog. not avail"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EIDRM", "identifier removed"},
++ {83, "ENOMSG", "no message of desired type"},
++ {84, "EOVERFLOW", "value too large to be stored in data type"},
++ {85, "EILSEQ", "illegal byte sequence"},
++ {86, "ENOTSUP", "not supported"},
++ {87, "ECANCELED", "operation Canceled"},
++ {88, "EBADMSG", "bad or Corrupt message"},
++ {89, "ENODATA", "no message available"},
++ {90, "ENOSR", "no STREAM resources"},
++ {91, "ENOSTR", "not a STREAM"},
++ {92, "ETIME", "STREAM ioctl timeout"},
++ {93, "ENOATTR", "attribute not found"},
++ {94, "EMULTIHOP", "multihop attempted"},
++ {95, "ENOLINK", "link has been severed"},
++ {96, "ELAST", "protocol error"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "stopped (signal)",
+- 18: "stopped",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
+- 32: "power fail/restart",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGIOT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "stopped (signal)"},
++ {18, "SIGTSTP", "stopped"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
++ {32, "SIGPWR", "power fail/restart"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go b/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go
+index 3322e998..5402bd55 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go
+@@ -1,9 +1,9 @@
+ // mkerrors.sh -m32
+-// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build 386,openbsd
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m32 _const.go
+
+ package unix
+@@ -147,6 +147,7 @@ const (
+ CFLUSH = 0xf
+ CLOCAL = 0x8000
+ CREAD = 0x800
++ CRTSCTS = 0x10000
+ CS5 = 0x0
+ CS6 = 0x100
+ CS7 = 0x200
+@@ -157,6 +158,8 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0xc
+ CTL_NET = 0x4
+ DIOCOSFPFLUSH = 0x2000444e
+@@ -442,6 +445,7 @@ const (
+ F_UNLCK = 0x2
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+@@ -860,6 +864,10 @@ const (
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LCNT_OVERLOAD_FLUSH = 0x6
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+@@ -873,14 +881,15 @@ const (
+ MADV_SPACEAVAIL = 0x5
+ MADV_WILLNEED = 0x3
+ MAP_ANON = 0x1000
+- MAP_COPY = 0x4
++ MAP_ANONYMOUS = 0x1000
++ MAP_CONCEAL = 0x8000
++ MAP_COPY = 0x2
+ MAP_FILE = 0x0
+ MAP_FIXED = 0x10
+- MAP_FLAGMASK = 0x1ff7
+- MAP_HASSEMAPHORE = 0x200
+- MAP_INHERIT = 0x80
++ MAP_FLAGMASK = 0xfff7
++ MAP_HASSEMAPHORE = 0x0
++ MAP_INHERIT = 0x0
+ MAP_INHERIT_COPY = 0x1
+- MAP_INHERIT_DONATE_COPY = 0x3
+ MAP_INHERIT_NONE = 0x2
+ MAP_INHERIT_SHARE = 0x0
+ MAP_NOEXTEND = 0x100
+@@ -888,9 +897,36 @@ const (
+ MAP_PRIVATE = 0x2
+ MAP_RENAME = 0x20
+ MAP_SHARED = 0x1
+- MAP_TRYFIXED = 0x400
++ MAP_STACK = 0x4000
++ MAP_TRYFIXED = 0x0
+ MCL_CURRENT = 0x1
+ MCL_FUTURE = 0x2
++ MNT_ASYNC = 0x40
++ MNT_DEFEXPORTED = 0x200
++ MNT_DELEXPORT = 0x20000
++ MNT_DOOMED = 0x8000000
++ MNT_EXPORTANON = 0x400
++ MNT_EXPORTED = 0x100
++ MNT_EXRDONLY = 0x80
++ MNT_FORCE = 0x80000
++ MNT_LAZY = 0x3
++ MNT_LOCAL = 0x1000
++ MNT_NOATIME = 0x8000
++ MNT_NODEV = 0x10
++ MNT_NOEXEC = 0x4
++ MNT_NOSUID = 0x8
++ MNT_NOWAIT = 0x2
++ MNT_QUOTA = 0x2000
++ MNT_RDONLY = 0x1
++ MNT_RELOAD = 0x40000
++ MNT_ROOTFS = 0x4000
++ MNT_SOFTDEP = 0x4000000
++ MNT_SYNCHRONOUS = 0x2
++ MNT_UPDATE = 0x10000
++ MNT_VISFLAGMASK = 0x400ffff
++ MNT_WAIT = 0x1
++ MNT_WANTRDWR = 0x2000000
++ MNT_WXALLOWED = 0x800
+ MSG_BCAST = 0x100
+ MSG_CTRUNC = 0x20
+ MSG_DONTROUTE = 0x4
+@@ -912,6 +948,7 @@ const (
+ NET_RT_MAXID = 0x6
+ NET_RT_STATS = 0x4
+ NET_RT_TABLE = 0x5
++ NFDBITS = 0x20
+ NOFLSH = 0x80000000
+ NOTE_ATTRIB = 0x8
+ NOTE_CHILD = 0x4
+@@ -1210,6 +1247,34 @@ const (
+ SO_TIMESTAMP = 0x800
+ SO_TYPE = 0x1008
+ SO_USELOOPBACK = 0x40
++ S_BLKSIZE = 0x200
++ S_IEXEC = 0x40
++ S_IFBLK = 0x6000
++ S_IFCHR = 0x2000
++ S_IFDIR = 0x4000
++ S_IFIFO = 0x1000
++ S_IFLNK = 0xa000
++ S_IFMT = 0xf000
++ S_IFREG = 0x8000
++ S_IFSOCK = 0xc000
++ S_IREAD = 0x100
++ S_IRGRP = 0x20
++ S_IROTH = 0x4
++ S_IRUSR = 0x100
++ S_IRWXG = 0x38
++ S_IRWXO = 0x7
++ S_IRWXU = 0x1c0
++ S_ISGID = 0x400
++ S_ISTXT = 0x200
++ S_ISUID = 0x800
++ S_ISVTX = 0x200
++ S_IWGRP = 0x10
++ S_IWOTH = 0x2
++ S_IWRITE = 0x80
++ S_IWUSR = 0x80
++ S_IXGRP = 0x8
++ S_IXOTH = 0x1
++ S_IXUSR = 0x40
+ TCIFLUSH = 0x1
+ TCIOFLUSH = 0x3
+ TCOFLUSH = 0x2
+@@ -1453,132 +1518,140 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "connection timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "IPsec processing failure",
+- 83: "attribute not found",
+- 84: "illegal byte sequence",
+- 85: "no medium found",
+- 86: "wrong medium type",
+- 87: "value too large to be stored in data type",
+- 88: "operation canceled",
+- 89: "identifier removed",
+- 90: "no message of desired type",
+- 91: "not supported",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large"},
++ {35, "EWOULDBLOCK", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "EOPNOTSUPP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "operation timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disk quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC program not available"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EIPSEC", "IPsec processing failure"},
++ {83, "ENOATTR", "attribute not found"},
++ {84, "EILSEQ", "illegal byte sequence"},
++ {85, "ENOMEDIUM", "no medium found"},
++ {86, "EMEDIUMTYPE", "wrong medium type"},
++ {87, "EOVERFLOW", "value too large to be stored in data type"},
++ {88, "ECANCELED", "operation canceled"},
++ {89, "EIDRM", "identifier removed"},
++ {90, "ENOMSG", "no message of desired type"},
++ {91, "ELAST", "not supported"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "stopped (signal)",
+- 18: "stopped",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
+- 32: "thread AST",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGABRT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "suspended (signal)"},
++ {18, "SIGTSTP", "suspended"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
++ {32, "SIGTHR", "thread AST"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
+index 1758ecca..ffaf2d2f 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
+@@ -1,9 +1,9 @@
+ // mkerrors.sh -m64
+-// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build amd64,openbsd
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+
+ package unix
+@@ -45,6 +45,7 @@ const (
+ AF_SNA = 0xb
+ AF_UNIX = 0x1
+ AF_UNSPEC = 0x0
++ ALTWERASE = 0x200
+ ARPHRD_ETHER = 0x1
+ ARPHRD_FRELAY = 0xf
+ ARPHRD_IEEE1394 = 0x18
+@@ -146,7 +147,14 @@ const (
+ BRKINT = 0x2
+ CFLUSH = 0xf
+ CLOCAL = 0x8000
++ CLOCK_BOOTTIME = 0x6
++ CLOCK_MONOTONIC = 0x3
++ CLOCK_PROCESS_CPUTIME_ID = 0x2
++ CLOCK_REALTIME = 0x0
++ CLOCK_THREAD_CPUTIME_ID = 0x4
++ CLOCK_UPTIME = 0x5
+ CREAD = 0x800
++ CRTSCTS = 0x10000
+ CS5 = 0x0
+ CS6 = 0x100
+ CS7 = 0x200
+@@ -157,6 +165,8 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0xc
+ CTL_NET = 0x4
+ DIOCOSFPFLUSH = 0x2000444e
+@@ -175,6 +185,7 @@ const (
+ DLT_LOOP = 0xc
+ DLT_MPLS = 0xdb
+ DLT_NULL = 0x0
++ DLT_OPENFLOW = 0x10b
+ DLT_PFLOG = 0x75
+ DLT_PFSYNC = 0x12
+ DLT_PPP = 0x9
+@@ -185,6 +196,23 @@ const (
+ DLT_RAW = 0xe
+ DLT_SLIP = 0x8
+ DLT_SLIP_BSDOS = 0xf
++ DLT_USBPCAP = 0xf9
++ DLT_USER0 = 0x93
++ DLT_USER1 = 0x94
++ DLT_USER10 = 0x9d
++ DLT_USER11 = 0x9e
++ DLT_USER12 = 0x9f
++ DLT_USER13 = 0xa0
++ DLT_USER14 = 0xa1
++ DLT_USER15 = 0xa2
++ DLT_USER2 = 0x95
++ DLT_USER3 = 0x96
++ DLT_USER4 = 0x97
++ DLT_USER5 = 0x98
++ DLT_USER6 = 0x99
++ DLT_USER7 = 0x9a
++ DLT_USER8 = 0x9b
++ DLT_USER9 = 0x9c
+ DT_BLK = 0x6
+ DT_CHR = 0x2
+ DT_DIR = 0x4
+@@ -398,27 +426,38 @@ const (
+ ETHER_CRC_POLY_LE = 0xedb88320
+ ETHER_HDR_LEN = 0xe
+ ETHER_MAX_DIX_LEN = 0x600
++ ETHER_MAX_HARDMTU_LEN = 0xff9b
+ ETHER_MAX_LEN = 0x5ee
+ ETHER_MIN_LEN = 0x40
+ ETHER_TYPE_LEN = 0x2
+ ETHER_VLAN_ENCAP_LEN = 0x4
+ EVFILT_AIO = -0x3
++ EVFILT_DEVICE = -0x8
+ EVFILT_PROC = -0x5
+ EVFILT_READ = -0x1
+ EVFILT_SIGNAL = -0x6
+- EVFILT_SYSCOUNT = 0x7
++ EVFILT_SYSCOUNT = 0x8
+ EVFILT_TIMER = -0x7
+ EVFILT_VNODE = -0x4
+ EVFILT_WRITE = -0x2
++ EVL_ENCAPLEN = 0x4
++ EVL_PRIO_BITS = 0xd
++ EVL_PRIO_MAX = 0x7
++ EVL_VLID_MASK = 0xfff
++ EVL_VLID_MAX = 0xffe
++ EVL_VLID_MIN = 0x1
++ EVL_VLID_NULL = 0x0
+ EV_ADD = 0x1
+ EV_CLEAR = 0x20
+ EV_DELETE = 0x2
+ EV_DISABLE = 0x8
++ EV_DISPATCH = 0x80
+ EV_ENABLE = 0x4
+ EV_EOF = 0x8000
+ EV_ERROR = 0x4000
+ EV_FLAG1 = 0x2000
+ EV_ONESHOT = 0x10
++ EV_RECEIPT = 0x40
+ EV_SYSFLAGS = 0xf000
+ EXTA = 0x4b00
+ EXTB = 0x9600
+@@ -432,6 +471,7 @@ const (
+ F_GETFL = 0x3
+ F_GETLK = 0x7
+ F_GETOWN = 0x5
++ F_ISATTY = 0xb
+ F_OK = 0x0
+ F_RDLCK = 0x1
+ F_SETFD = 0x2
+@@ -442,13 +482,13 @@ const (
+ F_UNLCK = 0x2
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+ IEXTEN = 0x400
+ IFAN_ARRIVAL = 0x0
+ IFAN_DEPARTURE = 0x1
+- IFA_ROUTE = 0x1
+ IFF_ALLMULTI = 0x200
+ IFF_BROADCAST = 0x2
+ IFF_CANTCHANGE = 0x8e52
+@@ -459,12 +499,12 @@ const (
+ IFF_LOOPBACK = 0x8
+ IFF_MULTICAST = 0x8000
+ IFF_NOARP = 0x80
+- IFF_NOTRAILERS = 0x20
+ IFF_OACTIVE = 0x400
+ IFF_POINTOPOINT = 0x10
+ IFF_PROMISC = 0x100
+ IFF_RUNNING = 0x40
+ IFF_SIMPLEX = 0x800
++ IFF_STATICARP = 0x20
+ IFF_UP = 0x1
+ IFNAMSIZ = 0x10
+ IFT_1822 = 0x2
+@@ -593,6 +633,7 @@ const (
+ IFT_LINEGROUP = 0xd2
+ IFT_LOCALTALK = 0x2a
+ IFT_LOOP = 0x18
++ IFT_MBIM = 0xfa
+ IFT_MEDIAMAILOVERIP = 0x8b
+ IFT_MFSIGLINK = 0xa7
+ IFT_MIOX25 = 0x26
+@@ -717,8 +758,6 @@ const (
+ IPPROTO_AH = 0x33
+ IPPROTO_CARP = 0x70
+ IPPROTO_DIVERT = 0x102
+- IPPROTO_DIVERT_INIT = 0x2
+- IPPROTO_DIVERT_RESP = 0x1
+ IPPROTO_DONE = 0x101
+ IPPROTO_DSTOPTS = 0x3c
+ IPPROTO_EGP = 0x8
+@@ -775,6 +814,7 @@ const (
+ IPV6_LEAVE_GROUP = 0xd
+ IPV6_MAXHLIM = 0xff
+ IPV6_MAXPACKET = 0xffff
++ IPV6_MINHOPCOUNT = 0x41
+ IPV6_MMTU = 0x500
+ IPV6_MULTICAST_HOPS = 0xa
+ IPV6_MULTICAST_IF = 0x9
+@@ -814,12 +854,12 @@ const (
+ IP_DEFAULT_MULTICAST_LOOP = 0x1
+ IP_DEFAULT_MULTICAST_TTL = 0x1
+ IP_DF = 0x4000
+- IP_DIVERTFL = 0x1022
+ IP_DROP_MEMBERSHIP = 0xd
+ IP_ESP_NETWORK_LEVEL = 0x16
+ IP_ESP_TRANS_LEVEL = 0x15
+ IP_HDRINCL = 0x2
+ IP_IPCOMP_LEVEL = 0x1d
++ IP_IPDEFTTL = 0x25
+ IP_IPSECFLOWINFO = 0x24
+ IP_IPSEC_LOCAL_AUTH = 0x1b
+ IP_IPSEC_LOCAL_CRED = 0x19
+@@ -853,13 +893,19 @@ const (
+ IP_RETOPTS = 0x8
+ IP_RF = 0x8000
+ IP_RTABLE = 0x1021
++ IP_SENDSRCADDR = 0x7
+ IP_TOS = 0x3
+ IP_TTL = 0x4
+ ISIG = 0x80
+ ISTRIP = 0x20
++ IUCLC = 0x1000
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LCNT_OVERLOAD_FLUSH = 0x6
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+@@ -873,25 +919,57 @@ const (
+ MADV_SPACEAVAIL = 0x5
+ MADV_WILLNEED = 0x3
+ MAP_ANON = 0x1000
+- MAP_COPY = 0x4
++ MAP_ANONYMOUS = 0x1000
++ MAP_CONCEAL = 0x8000
++ MAP_COPY = 0x2
+ MAP_FILE = 0x0
+ MAP_FIXED = 0x10
+- MAP_FLAGMASK = 0x1ff7
+- MAP_HASSEMAPHORE = 0x200
+- MAP_INHERIT = 0x80
++ MAP_FLAGMASK = 0xfff7
++ MAP_HASSEMAPHORE = 0x0
++ MAP_INHERIT = 0x0
+ MAP_INHERIT_COPY = 0x1
+- MAP_INHERIT_DONATE_COPY = 0x3
+ MAP_INHERIT_NONE = 0x2
+ MAP_INHERIT_SHARE = 0x0
+- MAP_NOEXTEND = 0x100
+- MAP_NORESERVE = 0x40
++ MAP_INHERIT_ZERO = 0x3
++ MAP_NOEXTEND = 0x0
++ MAP_NORESERVE = 0x0
+ MAP_PRIVATE = 0x2
+- MAP_RENAME = 0x20
++ MAP_RENAME = 0x0
+ MAP_SHARED = 0x1
+- MAP_TRYFIXED = 0x400
++ MAP_STACK = 0x4000
++ MAP_TRYFIXED = 0x0
+ MCL_CURRENT = 0x1
+ MCL_FUTURE = 0x2
++ MNT_ASYNC = 0x40
++ MNT_DEFEXPORTED = 0x200
++ MNT_DELEXPORT = 0x20000
++ MNT_DOOMED = 0x8000000
++ MNT_EXPORTANON = 0x400
++ MNT_EXPORTED = 0x100
++ MNT_EXRDONLY = 0x80
++ MNT_FORCE = 0x80000
++ MNT_LAZY = 0x3
++ MNT_LOCAL = 0x1000
++ MNT_NOATIME = 0x8000
++ MNT_NODEV = 0x10
++ MNT_NOEXEC = 0x4
++ MNT_NOPERM = 0x20
++ MNT_NOSUID = 0x8
++ MNT_NOWAIT = 0x2
++ MNT_QUOTA = 0x2000
++ MNT_RDONLY = 0x1
++ MNT_RELOAD = 0x40000
++ MNT_ROOTFS = 0x4000
++ MNT_SOFTDEP = 0x4000000
++ MNT_STALLED = 0x100000
++ MNT_SYNCHRONOUS = 0x2
++ MNT_UPDATE = 0x10000
++ MNT_VISFLAGMASK = 0x400ffff
++ MNT_WAIT = 0x1
++ MNT_WANTRDWR = 0x2000000
++ MNT_WXALLOWED = 0x800
+ MSG_BCAST = 0x100
++ MSG_CMSG_CLOEXEC = 0x800
+ MSG_CTRUNC = 0x20
+ MSG_DONTROUTE = 0x4
+ MSG_DONTWAIT = 0x80
+@@ -909,11 +987,15 @@ const (
+ NET_RT_DUMP = 0x1
+ NET_RT_FLAGS = 0x2
+ NET_RT_IFLIST = 0x3
+- NET_RT_MAXID = 0x6
++ NET_RT_IFNAMES = 0x6
++ NET_RT_MAXID = 0x7
+ NET_RT_STATS = 0x4
+ NET_RT_TABLE = 0x5
++ NFDBITS = 0x20
+ NOFLSH = 0x80000000
++ NOKERNINFO = 0x2000000
+ NOTE_ATTRIB = 0x8
++ NOTE_CHANGE = 0x1
+ NOTE_CHILD = 0x4
+ NOTE_DELETE = 0x1
+ NOTE_EOF = 0x2
+@@ -932,11 +1014,13 @@ const (
+ NOTE_TRUNCATE = 0x80
+ NOTE_WRITE = 0x2
+ OCRNL = 0x10
++ OLCUC = 0x20
+ ONLCR = 0x2
+ ONLRET = 0x80
+ ONOCR = 0x40
+ ONOEOT = 0x8
+ OPOST = 0x1
++ OXTABS = 0x4
+ O_ACCMODE = 0x3
+ O_APPEND = 0x8
+ O_ASYNC = 0x40
+@@ -974,23 +1058,32 @@ const (
+ RLIMIT_CPU = 0x0
+ RLIMIT_DATA = 0x2
+ RLIMIT_FSIZE = 0x1
++ RLIMIT_MEMLOCK = 0x6
+ RLIMIT_NOFILE = 0x8
++ RLIMIT_NPROC = 0x7
++ RLIMIT_RSS = 0x5
+ RLIMIT_STACK = 0x3
+ RLIM_INFINITY = 0x7fffffffffffffff
+ RTAX_AUTHOR = 0x6
++ RTAX_BFD = 0xb
+ RTAX_BRD = 0x7
++ RTAX_DNS = 0xc
+ RTAX_DST = 0x0
+ RTAX_GATEWAY = 0x1
+ RTAX_GENMASK = 0x3
+ RTAX_IFA = 0x5
+ RTAX_IFP = 0x4
+ RTAX_LABEL = 0xa
+- RTAX_MAX = 0xb
++ RTAX_MAX = 0xf
+ RTAX_NETMASK = 0x2
++ RTAX_SEARCH = 0xe
+ RTAX_SRC = 0x8
+ RTAX_SRCMASK = 0x9
++ RTAX_STATIC = 0xd
+ RTA_AUTHOR = 0x40
++ RTA_BFD = 0x800
+ RTA_BRD = 0x80
++ RTA_DNS = 0x1000
+ RTA_DST = 0x1
+ RTA_GATEWAY = 0x2
+ RTA_GENMASK = 0x8
+@@ -998,34 +1091,39 @@ const (
+ RTA_IFP = 0x10
+ RTA_LABEL = 0x400
+ RTA_NETMASK = 0x4
++ RTA_SEARCH = 0x4000
+ RTA_SRC = 0x100
+ RTA_SRCMASK = 0x200
++ RTA_STATIC = 0x2000
+ RTF_ANNOUNCE = 0x4000
++ RTF_BFD = 0x1000000
+ RTF_BLACKHOLE = 0x1000
++ RTF_BROADCAST = 0x400000
++ RTF_CACHED = 0x20000
+ RTF_CLONED = 0x10000
+ RTF_CLONING = 0x100
++ RTF_CONNECTED = 0x800000
+ RTF_DONE = 0x40
+ RTF_DYNAMIC = 0x10
+- RTF_FMASK = 0x10f808
++ RTF_FMASK = 0x110fc08
+ RTF_GATEWAY = 0x2
+ RTF_HOST = 0x4
+ RTF_LLINFO = 0x400
+- RTF_MASK = 0x80
++ RTF_LOCAL = 0x200000
+ RTF_MODIFIED = 0x20
+ RTF_MPATH = 0x40000
+ RTF_MPLS = 0x100000
++ RTF_MULTICAST = 0x200
+ RTF_PERMANENT_ARP = 0x2000
+ RTF_PROTO1 = 0x8000
+ RTF_PROTO2 = 0x4000
+ RTF_PROTO3 = 0x2000
+ RTF_REJECT = 0x8
+- RTF_SOURCE = 0x20000
+ RTF_STATIC = 0x800
+- RTF_TUNNEL = 0x100000
+ RTF_UP = 0x1
+ RTF_USETRAILERS = 0x8000
+- RTF_XRESOLVE = 0x200
+ RTM_ADD = 0x1
++ RTM_BFD = 0x12
+ RTM_CHANGE = 0x3
+ RTM_DELADDR = 0xd
+ RTM_DELETE = 0x2
+@@ -1033,11 +1131,13 @@ const (
+ RTM_GET = 0x4
+ RTM_IFANNOUNCE = 0xf
+ RTM_IFINFO = 0xe
++ RTM_INVALIDATE = 0x11
+ RTM_LOCK = 0x8
+ RTM_LOSING = 0x5
+ RTM_MAXSIZE = 0x800
+ RTM_MISS = 0x7
+ RTM_NEWADDR = 0xc
++ RTM_PROPOSAL = 0x13
+ RTM_REDIRECT = 0x6
+ RTM_RESOLVE = 0xb
+ RTM_RTTUNIT = 0xf4240
+@@ -1050,6 +1150,8 @@ const (
+ RTV_RTTVAR = 0x80
+ RTV_SPIPE = 0x10
+ RTV_SSTHRESH = 0x20
++ RT_TABLEID_BITS = 0x8
++ RT_TABLEID_MASK = 0xff
+ RT_TABLEID_MAX = 0xff
+ RUSAGE_CHILDREN = -0x1
+ RUSAGE_SELF = 0x0
+@@ -1062,55 +1164,55 @@ const (
+ SIOCADDMULTI = 0x80206931
+ SIOCAIFADDR = 0x8040691a
+ SIOCAIFGROUP = 0x80286987
+- SIOCALIFADDR = 0x8218691c
+ SIOCATMARK = 0x40047307
+- SIOCBRDGADD = 0x8058693c
+- SIOCBRDGADDS = 0x80586941
+- SIOCBRDGARL = 0x806e694d
++ SIOCBRDGADD = 0x8060693c
++ SIOCBRDGADDL = 0x80606949
++ SIOCBRDGADDS = 0x80606941
++ SIOCBRDGARL = 0x808c694d
+ SIOCBRDGDADDR = 0x81286947
+- SIOCBRDGDEL = 0x8058693d
+- SIOCBRDGDELS = 0x80586942
+- SIOCBRDGFLUSH = 0x80586948
+- SIOCBRDGFRL = 0x806e694e
+- SIOCBRDGGCACHE = 0xc0146941
+- SIOCBRDGGFD = 0xc0146952
+- SIOCBRDGGHT = 0xc0146951
+- SIOCBRDGGIFFLGS = 0xc058693e
+- SIOCBRDGGMA = 0xc0146953
++ SIOCBRDGDEL = 0x8060693d
++ SIOCBRDGDELS = 0x80606942
++ SIOCBRDGFLUSH = 0x80606948
++ SIOCBRDGFRL = 0x808c694e
++ SIOCBRDGGCACHE = 0xc0186941
++ SIOCBRDGGFD = 0xc0186952
++ SIOCBRDGGHT = 0xc0186951
++ SIOCBRDGGIFFLGS = 0xc060693e
++ SIOCBRDGGMA = 0xc0186953
+ SIOCBRDGGPARAM = 0xc0406958
+- SIOCBRDGGPRI = 0xc0146950
++ SIOCBRDGGPRI = 0xc0186950
+ SIOCBRDGGRL = 0xc030694f
+- SIOCBRDGGSIFS = 0xc058693c
+- SIOCBRDGGTO = 0xc0146946
+- SIOCBRDGIFS = 0xc0586942
++ SIOCBRDGGTO = 0xc0186946
++ SIOCBRDGIFS = 0xc0606942
+ SIOCBRDGRTS = 0xc0206943
+ SIOCBRDGSADDR = 0xc1286944
+- SIOCBRDGSCACHE = 0x80146940
+- SIOCBRDGSFD = 0x80146952
+- SIOCBRDGSHT = 0x80146951
+- SIOCBRDGSIFCOST = 0x80586955
+- SIOCBRDGSIFFLGS = 0x8058693f
+- SIOCBRDGSIFPRIO = 0x80586954
+- SIOCBRDGSMA = 0x80146953
+- SIOCBRDGSPRI = 0x80146950
+- SIOCBRDGSPROTO = 0x8014695a
+- SIOCBRDGSTO = 0x80146945
+- SIOCBRDGSTXHC = 0x80146959
++ SIOCBRDGSCACHE = 0x80186940
++ SIOCBRDGSFD = 0x80186952
++ SIOCBRDGSHT = 0x80186951
++ SIOCBRDGSIFCOST = 0x80606955
++ SIOCBRDGSIFFLGS = 0x8060693f
++ SIOCBRDGSIFPRIO = 0x80606954
++ SIOCBRDGSIFPROT = 0x8060694a
++ SIOCBRDGSMA = 0x80186953
++ SIOCBRDGSPRI = 0x80186950
++ SIOCBRDGSPROTO = 0x8018695a
++ SIOCBRDGSTO = 0x80186945
++ SIOCBRDGSTXHC = 0x80186959
+ SIOCDELMULTI = 0x80206932
+ SIOCDIFADDR = 0x80206919
+ SIOCDIFGROUP = 0x80286989
++ SIOCDIFPARENT = 0x802069b4
+ SIOCDIFPHYADDR = 0x80206949
+- SIOCDLIFADDR = 0x8218691e
++ SIOCDVNETID = 0x802069af
+ SIOCGETKALIVE = 0xc01869a4
+ SIOCGETLABEL = 0x8020699a
++ SIOCGETMPWCFG = 0xc02069ae
+ SIOCGETPFLOW = 0xc02069fe
+ SIOCGETPFSYNC = 0xc02069f8
+ SIOCGETSGCNT = 0xc0207534
+ SIOCGETVIFCNT = 0xc0287533
+ SIOCGETVLAN = 0xc0206990
+- SIOCGHIWAT = 0x40047301
+ SIOCGIFADDR = 0xc0206921
+- SIOCGIFASYNCMAP = 0xc020697c
+ SIOCGIFBRDADDR = 0xc0206923
+ SIOCGIFCONF = 0xc0106924
+ SIOCGIFDATA = 0xc020691b
+@@ -1122,37 +1224,41 @@ const (
+ SIOCGIFGMEMB = 0xc028698a
+ SIOCGIFGROUP = 0xc0286988
+ SIOCGIFHARDMTU = 0xc02069a5
+- SIOCGIFMEDIA = 0xc0306936
++ SIOCGIFLLPRIO = 0xc02069b6
++ SIOCGIFMEDIA = 0xc0406938
+ SIOCGIFMETRIC = 0xc0206917
+ SIOCGIFMTU = 0xc020697e
+ SIOCGIFNETMASK = 0xc0206925
+- SIOCGIFPDSTADDR = 0xc0206948
++ SIOCGIFPAIR = 0xc02069b1
++ SIOCGIFPARENT = 0xc02069b3
+ SIOCGIFPRIORITY = 0xc020699c
+- SIOCGIFPSRCADDR = 0xc0206947
+ SIOCGIFRDOMAIN = 0xc02069a0
+ SIOCGIFRTLABEL = 0xc0206983
+- SIOCGIFTIMESLOT = 0xc0206986
++ SIOCGIFRXR = 0x802069aa
+ SIOCGIFXFLAGS = 0xc020699e
+- SIOCGLIFADDR = 0xc218691d
+ SIOCGLIFPHYADDR = 0xc218694b
++ SIOCGLIFPHYDF = 0xc02069c2
+ SIOCGLIFPHYRTABLE = 0xc02069a2
+ SIOCGLIFPHYTTL = 0xc02069a9
+- SIOCGLOWAT = 0x40047303
+ SIOCGPGRP = 0x40047309
+ SIOCGSPPPPARAMS = 0xc0206994
++ SIOCGUMBINFO = 0xc02069be
++ SIOCGUMBPARAM = 0xc02069c0
+ SIOCGVH = 0xc02069f6
++ SIOCGVNETFLOWID = 0xc02069c4
+ SIOCGVNETID = 0xc02069a7
++ SIOCIFAFATTACH = 0x801169ab
++ SIOCIFAFDETACH = 0x801169ac
+ SIOCIFCREATE = 0x8020697a
+ SIOCIFDESTROY = 0x80206979
+ SIOCIFGCLONERS = 0xc0106978
+ SIOCSETKALIVE = 0x801869a3
+ SIOCSETLABEL = 0x80206999
++ SIOCSETMPWCFG = 0x802069ad
+ SIOCSETPFLOW = 0x802069fd
+ SIOCSETPFSYNC = 0x802069f7
+ SIOCSETVLAN = 0x8020698f
+- SIOCSHIWAT = 0x80047300
+ SIOCSIFADDR = 0x8020690c
+- SIOCSIFASYNCMAP = 0x8020697d
+ SIOCSIFBRDADDR = 0x80206913
+ SIOCSIFDESCR = 0x80206980
+ SIOCSIFDSTADDR = 0x8020690e
+@@ -1160,25 +1266,36 @@ const (
+ SIOCSIFGATTR = 0x8028698c
+ SIOCSIFGENERIC = 0x80206939
+ SIOCSIFLLADDR = 0x8020691f
+- SIOCSIFMEDIA = 0xc0206935
++ SIOCSIFLLPRIO = 0x802069b5
++ SIOCSIFMEDIA = 0xc0206937
+ SIOCSIFMETRIC = 0x80206918
+ SIOCSIFMTU = 0x8020697f
+ SIOCSIFNETMASK = 0x80206916
+- SIOCSIFPHYADDR = 0x80406946
++ SIOCSIFPAIR = 0x802069b0
++ SIOCSIFPARENT = 0x802069b2
+ SIOCSIFPRIORITY = 0x8020699b
+ SIOCSIFRDOMAIN = 0x8020699f
+ SIOCSIFRTLABEL = 0x80206982
+- SIOCSIFTIMESLOT = 0x80206985
+ SIOCSIFXFLAGS = 0x8020699d
+ SIOCSLIFPHYADDR = 0x8218694a
++ SIOCSLIFPHYDF = 0x802069c1
+ SIOCSLIFPHYRTABLE = 0x802069a1
+ SIOCSLIFPHYTTL = 0x802069a8
+- SIOCSLOWAT = 0x80047302
+ SIOCSPGRP = 0x80047308
+ SIOCSSPPPPARAMS = 0x80206993
++ SIOCSUMBPARAM = 0x802069bf
+ SIOCSVH = 0xc02069f5
++ SIOCSVNETFLOWID = 0x802069c3
+ SIOCSVNETID = 0x802069a6
++ SIOCSWGDPID = 0xc018695b
++ SIOCSWGMAXFLOW = 0xc0186960
++ SIOCSWGMAXGROUP = 0xc018695d
++ SIOCSWSDPID = 0x8018695c
++ SIOCSWSPORTNO = 0xc060695f
++ SOCK_CLOEXEC = 0x8000
+ SOCK_DGRAM = 0x2
++ SOCK_DNS = 0x1000
++ SOCK_NONBLOCK = 0x4000
+ SOCK_RAW = 0x3
+ SOCK_RDM = 0x4
+ SOCK_SEQPACKET = 0x5
+@@ -1209,9 +1326,42 @@ const (
+ SO_TIMESTAMP = 0x800
+ SO_TYPE = 0x1008
+ SO_USELOOPBACK = 0x40
++ SO_ZEROIZE = 0x2000
++ S_BLKSIZE = 0x200
++ S_IEXEC = 0x40
++ S_IFBLK = 0x6000
++ S_IFCHR = 0x2000
++ S_IFDIR = 0x4000
++ S_IFIFO = 0x1000
++ S_IFLNK = 0xa000
++ S_IFMT = 0xf000
++ S_IFREG = 0x8000
++ S_IFSOCK = 0xc000
++ S_IREAD = 0x100
++ S_IRGRP = 0x20
++ S_IROTH = 0x4
++ S_IRUSR = 0x100
++ S_IRWXG = 0x38
++ S_IRWXO = 0x7
++ S_IRWXU = 0x1c0
++ S_ISGID = 0x400
++ S_ISTXT = 0x200
++ S_ISUID = 0x800
++ S_ISVTX = 0x200
++ S_IWGRP = 0x10
++ S_IWOTH = 0x2
++ S_IWRITE = 0x80
++ S_IWUSR = 0x80
++ S_IXGRP = 0x8
++ S_IXOTH = 0x1
++ S_IXUSR = 0x40
+ TCIFLUSH = 0x1
++ TCIOFF = 0x3
+ TCIOFLUSH = 0x3
++ TCION = 0x4
+ TCOFLUSH = 0x2
++ TCOOFF = 0x1
++ TCOON = 0x2
+ TCP_MAXBURST = 0x4
+ TCP_MAXSEG = 0x2
+ TCP_MAXWIN = 0xffff
+@@ -1221,11 +1371,12 @@ const (
+ TCP_MSS = 0x200
+ TCP_NODELAY = 0x1
+ TCP_NOPUSH = 0x10
+- TCP_NSTATES = 0xb
+ TCP_SACK_ENABLE = 0x8
+ TCSAFLUSH = 0x2
+ TIOCCBRK = 0x2000747a
+ TIOCCDTR = 0x20007478
++ TIOCCHKVERAUTH = 0x2000741e
++ TIOCCLRVERAUTH = 0x2000741d
+ TIOCCONS = 0x80047462
+ TIOCDRAIN = 0x2000745e
+ TIOCEXCL = 0x2000740d
+@@ -1280,17 +1431,22 @@ const (
+ TIOCSETAF = 0x802c7416
+ TIOCSETAW = 0x802c7415
+ TIOCSETD = 0x8004741b
++ TIOCSETVERAUTH = 0x8004741c
+ TIOCSFLAGS = 0x8004745c
+ TIOCSIG = 0x8004745f
+ TIOCSPGRP = 0x80047476
+ TIOCSTART = 0x2000746e
+- TIOCSTAT = 0x80047465
++ TIOCSTAT = 0x20007465
+ TIOCSTI = 0x80017472
+ TIOCSTOP = 0x2000746f
+ TIOCSTSTAMP = 0x8008745a
+ TIOCSWINSZ = 0x80087467
+ TIOCUCNTL = 0x80047466
++ TIOCUCNTL_CBRK = 0x7a
++ TIOCUCNTL_SBRK = 0x7b
+ TOSTOP = 0x400000
++ UTIME_NOW = -0x2
++ UTIME_OMIT = -0x1
+ VDISCARD = 0xf
+ VDSUSP = 0xb
+ VEOF = 0x0
+@@ -1301,6 +1457,18 @@ const (
+ VKILL = 0x5
+ VLNEXT = 0xe
+ VMIN = 0x10
++ VM_ANONMIN = 0x7
++ VM_LOADAVG = 0x2
++ VM_MAXID = 0xc
++ VM_MAXSLP = 0xa
++ VM_METER = 0x1
++ VM_NKMEMPAGES = 0x6
++ VM_PSSTRINGS = 0x3
++ VM_SWAPENCRYPT = 0x5
++ VM_USPACE = 0xb
++ VM_UVMEXP = 0x4
++ VM_VNODEMIN = 0x9
++ VM_VTEXTMIN = 0x8
+ VQUIT = 0x9
+ VREPRINT = 0x6
+ VSTART = 0xc
+@@ -1313,8 +1481,8 @@ const (
+ WCONTINUED = 0x8
+ WCOREFLAG = 0x80
+ WNOHANG = 0x1
+- WSTOPPED = 0x7f
+ WUNTRACED = 0x2
++ XCASE = 0x1000000
+ )
+
+ // Errors
+@@ -1328,6 +1496,7 @@ const (
+ EALREADY = syscall.Errno(0x25)
+ EAUTH = syscall.Errno(0x50)
+ EBADF = syscall.Errno(0x9)
++ EBADMSG = syscall.Errno(0x5c)
+ EBADRPC = syscall.Errno(0x48)
+ EBUSY = syscall.Errno(0x10)
+ ECANCELED = syscall.Errno(0x58)
+@@ -1354,7 +1523,7 @@ const (
+ EIPSEC = syscall.Errno(0x52)
+ EISCONN = syscall.Errno(0x38)
+ EISDIR = syscall.Errno(0x15)
+- ELAST = syscall.Errno(0x5b)
++ ELAST = syscall.Errno(0x5f)
+ ELOOP = syscall.Errno(0x3e)
+ EMEDIUMTYPE = syscall.Errno(0x56)
+ EMFILE = syscall.Errno(0x18)
+@@ -1382,12 +1551,14 @@ const (
+ ENOTCONN = syscall.Errno(0x39)
+ ENOTDIR = syscall.Errno(0x14)
+ ENOTEMPTY = syscall.Errno(0x42)
++ ENOTRECOVERABLE = syscall.Errno(0x5d)
+ ENOTSOCK = syscall.Errno(0x26)
+ ENOTSUP = syscall.Errno(0x5b)
+ ENOTTY = syscall.Errno(0x19)
+ ENXIO = syscall.Errno(0x6)
+ EOPNOTSUPP = syscall.Errno(0x2d)
+ EOVERFLOW = syscall.Errno(0x57)
++ EOWNERDEAD = syscall.Errno(0x5e)
+ EPERM = syscall.Errno(0x1)
+ EPFNOSUPPORT = syscall.Errno(0x2e)
+ EPIPE = syscall.Errno(0x20)
+@@ -1395,6 +1566,7 @@ const (
+ EPROCUNAVAIL = syscall.Errno(0x4c)
+ EPROGMISMATCH = syscall.Errno(0x4b)
+ EPROGUNAVAIL = syscall.Errno(0x4a)
++ EPROTO = syscall.Errno(0x5f)
+ EPROTONOSUPPORT = syscall.Errno(0x2b)
+ EPROTOTYPE = syscall.Errno(0x29)
+ ERANGE = syscall.Errno(0x22)
+@@ -1452,132 +1624,144 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "connection timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "IPsec processing failure",
+- 83: "attribute not found",
+- 84: "illegal byte sequence",
+- 85: "no medium found",
+- 86: "wrong medium type",
+- 87: "value too large to be stored in data type",
+- 88: "operation canceled",
+- 89: "identifier removed",
+- 90: "no message of desired type",
+- 91: "not supported",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large"},
++ {35, "EAGAIN", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "EOPNOTSUPP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "operation timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disk quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC program not available"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EIPSEC", "IPsec processing failure"},
++ {83, "ENOATTR", "attribute not found"},
++ {84, "EILSEQ", "illegal byte sequence"},
++ {85, "ENOMEDIUM", "no medium found"},
++ {86, "EMEDIUMTYPE", "wrong medium type"},
++ {87, "EOVERFLOW", "value too large to be stored in data type"},
++ {88, "ECANCELED", "operation canceled"},
++ {89, "EIDRM", "identifier removed"},
++ {90, "ENOMSG", "no message of desired type"},
++ {91, "ENOTSUP", "not supported"},
++ {92, "EBADMSG", "bad message"},
++ {93, "ENOTRECOVERABLE", "state not recoverable"},
++ {94, "EOWNERDEAD", "previous owner died"},
++ {95, "ELAST", "protocol error"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "stopped (signal)",
+- 18: "stopped",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
+- 32: "thread AST",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGABRT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "suspended (signal)"},
++ {18, "SIGTSTP", "suspended"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
++ {32, "SIGTHR", "thread AST"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go b/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go
+index 3ed0b260..7aa796a6 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go
+@@ -1,11 +1,11 @@
+ // mkerrors.sh
+-// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
+-
+-// Created by cgo -godefs - DO NOT EDIT
+-// cgo -godefs -- _const.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build arm,openbsd
+
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
++// cgo -godefs -- _const.go
++
+ package unix
+
+ import "syscall"
+@@ -147,6 +147,7 @@ const (
+ CFLUSH = 0xf
+ CLOCAL = 0x8000
+ CREAD = 0x800
++ CRTSCTS = 0x10000
+ CS5 = 0x0
+ CS6 = 0x100
+ CS7 = 0x200
+@@ -157,6 +158,8 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0xc
+ CTL_NET = 0x4
+ DIOCOSFPFLUSH = 0x2000444e
+@@ -441,6 +444,7 @@ const (
+ F_UNLCK = 0x2
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+@@ -859,6 +863,10 @@ const (
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LCNT_OVERLOAD_FLUSH = 0x6
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+@@ -873,10 +881,11 @@ const (
+ MADV_WILLNEED = 0x3
+ MAP_ANON = 0x1000
+ MAP_ANONYMOUS = 0x1000
++ MAP_CONCEAL = 0x8000
+ MAP_COPY = 0x2
+ MAP_FILE = 0x0
+ MAP_FIXED = 0x10
+- MAP_FLAGMASK = 0x3ff7
++ MAP_FLAGMASK = 0xfff7
+ MAP_HASSEMAPHORE = 0x0
+ MAP_INHERIT = 0x0
+ MAP_INHERIT_COPY = 0x1
+@@ -888,9 +897,36 @@ const (
+ MAP_PRIVATE = 0x2
+ MAP_RENAME = 0x0
+ MAP_SHARED = 0x1
++ MAP_STACK = 0x4000
+ MAP_TRYFIXED = 0x0
+ MCL_CURRENT = 0x1
+ MCL_FUTURE = 0x2
++ MNT_ASYNC = 0x40
++ MNT_DEFEXPORTED = 0x200
++ MNT_DELEXPORT = 0x20000
++ MNT_DOOMED = 0x8000000
++ MNT_EXPORTANON = 0x400
++ MNT_EXPORTED = 0x100
++ MNT_EXRDONLY = 0x80
++ MNT_FORCE = 0x80000
++ MNT_LAZY = 0x3
++ MNT_LOCAL = 0x1000
++ MNT_NOATIME = 0x8000
++ MNT_NODEV = 0x10
++ MNT_NOEXEC = 0x4
++ MNT_NOSUID = 0x8
++ MNT_NOWAIT = 0x2
++ MNT_QUOTA = 0x2000
++ MNT_RDONLY = 0x1
++ MNT_RELOAD = 0x40000
++ MNT_ROOTFS = 0x4000
++ MNT_SOFTDEP = 0x4000000
++ MNT_SYNCHRONOUS = 0x2
++ MNT_UPDATE = 0x10000
++ MNT_VISFLAGMASK = 0x400ffff
++ MNT_WAIT = 0x1
++ MNT_WANTRDWR = 0x2000000
++ MNT_WXALLOWED = 0x800
+ MSG_BCAST = 0x100
+ MSG_CMSG_CLOEXEC = 0x800
+ MSG_CTRUNC = 0x20
+@@ -913,6 +949,7 @@ const (
+ NET_RT_MAXID = 0x6
+ NET_RT_STATS = 0x4
+ NET_RT_TABLE = 0x5
++ NFDBITS = 0x20
+ NOFLSH = 0x80000000
+ NOTE_ATTRIB = 0x8
+ NOTE_CHILD = 0x4
+@@ -1213,6 +1250,34 @@ const (
+ SO_TIMESTAMP = 0x800
+ SO_TYPE = 0x1008
+ SO_USELOOPBACK = 0x40
++ S_BLKSIZE = 0x200
++ S_IEXEC = 0x40
++ S_IFBLK = 0x6000
++ S_IFCHR = 0x2000
++ S_IFDIR = 0x4000
++ S_IFIFO = 0x1000
++ S_IFLNK = 0xa000
++ S_IFMT = 0xf000
++ S_IFREG = 0x8000
++ S_IFSOCK = 0xc000
++ S_IREAD = 0x100
++ S_IRGRP = 0x20
++ S_IROTH = 0x4
++ S_IRUSR = 0x100
++ S_IRWXG = 0x38
++ S_IRWXO = 0x7
++ S_IRWXU = 0x1c0
++ S_ISGID = 0x400
++ S_ISTXT = 0x200
++ S_ISUID = 0x800
++ S_ISVTX = 0x200
++ S_IWGRP = 0x10
++ S_IWOTH = 0x2
++ S_IWRITE = 0x80
++ S_IWUSR = 0x80
++ S_IXGRP = 0x8
++ S_IXOTH = 0x1
++ S_IXUSR = 0x40
+ TCIFLUSH = 0x1
+ TCIOFLUSH = 0x3
+ TCOFLUSH = 0x2
+@@ -1455,132 +1520,140 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "connection timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "IPsec processing failure",
+- 83: "attribute not found",
+- 84: "illegal byte sequence",
+- 85: "no medium found",
+- 86: "wrong medium type",
+- 87: "value too large to be stored in data type",
+- 88: "operation canceled",
+- 89: "identifier removed",
+- 90: "no message of desired type",
+- 91: "not supported",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large"},
++ {35, "EWOULDBLOCK", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "EOPNOTSUPP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "operation timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disk quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC program not available"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EIPSEC", "IPsec processing failure"},
++ {83, "ENOATTR", "attribute not found"},
++ {84, "EILSEQ", "illegal byte sequence"},
++ {85, "ENOMEDIUM", "no medium found"},
++ {86, "EMEDIUMTYPE", "wrong medium type"},
++ {87, "EOVERFLOW", "value too large to be stored in data type"},
++ {88, "ECANCELED", "operation canceled"},
++ {89, "EIDRM", "identifier removed"},
++ {90, "ENOMSG", "no message of desired type"},
++ {91, "ELAST", "not supported"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "stopped (signal)",
+- 18: "stopped",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
+- 32: "thread AST",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGABRT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "suspended (signal)"},
++ {18, "SIGTSTP", "suspended"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
++ {32, "SIGTHR", "thread AST"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go
+similarity index 76%
+copy from vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
+copy to vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go
+index 1758ecca..1792d3f1 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go
+@@ -1,9 +1,9 @@
+ // mkerrors.sh -m64
+-// MACHINE GENERATED BY THE COMMAND ABOVE; DO NOT EDIT
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build amd64,openbsd
++// +build arm64,openbsd
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+
+ package unix
+@@ -45,6 +45,7 @@ const (
+ AF_SNA = 0xb
+ AF_UNIX = 0x1
+ AF_UNSPEC = 0x0
++ ALTWERASE = 0x200
+ ARPHRD_ETHER = 0x1
+ ARPHRD_FRELAY = 0xf
+ ARPHRD_IEEE1394 = 0x18
+@@ -107,6 +108,9 @@ const (
+ BPF_DIRECTION_IN = 0x1
+ BPF_DIRECTION_OUT = 0x2
+ BPF_DIV = 0x30
++ BPF_FILDROP_CAPTURE = 0x1
++ BPF_FILDROP_DROP = 0x2
++ BPF_FILDROP_PASS = 0x0
+ BPF_H = 0x8
+ BPF_IMM = 0x0
+ BPF_IND = 0x40
+@@ -146,7 +150,14 @@ const (
+ BRKINT = 0x2
+ CFLUSH = 0xf
+ CLOCAL = 0x8000
++ CLOCK_BOOTTIME = 0x6
++ CLOCK_MONOTONIC = 0x3
++ CLOCK_PROCESS_CPUTIME_ID = 0x2
++ CLOCK_REALTIME = 0x0
++ CLOCK_THREAD_CPUTIME_ID = 0x4
++ CLOCK_UPTIME = 0x5
+ CREAD = 0x800
++ CRTSCTS = 0x10000
+ CS5 = 0x0
+ CS6 = 0x100
+ CS7 = 0x200
+@@ -157,6 +168,8 @@ const (
+ CSTOP = 0x13
+ CSTOPB = 0x400
+ CSUSP = 0x1a
++ CTL_HW = 0x6
++ CTL_KERN = 0x1
+ CTL_MAXNAME = 0xc
+ CTL_NET = 0x4
+ DIOCOSFPFLUSH = 0x2000444e
+@@ -175,6 +188,7 @@ const (
+ DLT_LOOP = 0xc
+ DLT_MPLS = 0xdb
+ DLT_NULL = 0x0
++ DLT_OPENFLOW = 0x10b
+ DLT_PFLOG = 0x75
+ DLT_PFSYNC = 0x12
+ DLT_PPP = 0x9
+@@ -185,6 +199,23 @@ const (
+ DLT_RAW = 0xe
+ DLT_SLIP = 0x8
+ DLT_SLIP_BSDOS = 0xf
++ DLT_USBPCAP = 0xf9
++ DLT_USER0 = 0x93
++ DLT_USER1 = 0x94
++ DLT_USER10 = 0x9d
++ DLT_USER11 = 0x9e
++ DLT_USER12 = 0x9f
++ DLT_USER13 = 0xa0
++ DLT_USER14 = 0xa1
++ DLT_USER15 = 0xa2
++ DLT_USER2 = 0x95
++ DLT_USER3 = 0x96
++ DLT_USER4 = 0x97
++ DLT_USER5 = 0x98
++ DLT_USER6 = 0x99
++ DLT_USER7 = 0x9a
++ DLT_USER8 = 0x9b
++ DLT_USER9 = 0x9c
+ DT_BLK = 0x6
+ DT_CHR = 0x2
+ DT_DIR = 0x4
+@@ -324,6 +355,7 @@ const (
+ ETHERTYPE_OS9NET = 0x7009
+ ETHERTYPE_PACER = 0x80c6
+ ETHERTYPE_PAE = 0x888e
++ ETHERTYPE_PBB = 0x88e7
+ ETHERTYPE_PCS = 0x4242
+ ETHERTYPE_PLANNING = 0x8044
+ ETHERTYPE_PPP = 0x880b
+@@ -398,27 +430,38 @@ const (
+ ETHER_CRC_POLY_LE = 0xedb88320
+ ETHER_HDR_LEN = 0xe
+ ETHER_MAX_DIX_LEN = 0x600
++ ETHER_MAX_HARDMTU_LEN = 0xff9b
+ ETHER_MAX_LEN = 0x5ee
+ ETHER_MIN_LEN = 0x40
+ ETHER_TYPE_LEN = 0x2
+ ETHER_VLAN_ENCAP_LEN = 0x4
+ EVFILT_AIO = -0x3
++ EVFILT_DEVICE = -0x8
+ EVFILT_PROC = -0x5
+ EVFILT_READ = -0x1
+ EVFILT_SIGNAL = -0x6
+- EVFILT_SYSCOUNT = 0x7
++ EVFILT_SYSCOUNT = 0x8
+ EVFILT_TIMER = -0x7
+ EVFILT_VNODE = -0x4
+ EVFILT_WRITE = -0x2
++ EVL_ENCAPLEN = 0x4
++ EVL_PRIO_BITS = 0xd
++ EVL_PRIO_MAX = 0x7
++ EVL_VLID_MASK = 0xfff
++ EVL_VLID_MAX = 0xffe
++ EVL_VLID_MIN = 0x1
++ EVL_VLID_NULL = 0x0
+ EV_ADD = 0x1
+ EV_CLEAR = 0x20
+ EV_DELETE = 0x2
+ EV_DISABLE = 0x8
++ EV_DISPATCH = 0x80
+ EV_ENABLE = 0x4
+ EV_EOF = 0x8000
+ EV_ERROR = 0x4000
+ EV_FLAG1 = 0x2000
+ EV_ONESHOT = 0x10
++ EV_RECEIPT = 0x40
+ EV_SYSFLAGS = 0xf000
+ EXTA = 0x4b00
+ EXTB = 0x9600
+@@ -432,6 +475,7 @@ const (
+ F_GETFL = 0x3
+ F_GETLK = 0x7
+ F_GETOWN = 0x5
++ F_ISATTY = 0xb
+ F_OK = 0x0
+ F_RDLCK = 0x1
+ F_SETFD = 0x2
+@@ -442,13 +486,13 @@ const (
+ F_UNLCK = 0x2
+ F_WRLCK = 0x3
+ HUPCL = 0x4000
++ HW_MACHINE = 0x1
+ ICANON = 0x100
+ ICMP6_FILTER = 0x12
+ ICRNL = 0x100
+ IEXTEN = 0x400
+ IFAN_ARRIVAL = 0x0
+ IFAN_DEPARTURE = 0x1
+- IFA_ROUTE = 0x1
+ IFF_ALLMULTI = 0x200
+ IFF_BROADCAST = 0x2
+ IFF_CANTCHANGE = 0x8e52
+@@ -459,12 +503,12 @@ const (
+ IFF_LOOPBACK = 0x8
+ IFF_MULTICAST = 0x8000
+ IFF_NOARP = 0x80
+- IFF_NOTRAILERS = 0x20
+ IFF_OACTIVE = 0x400
+ IFF_POINTOPOINT = 0x10
+ IFF_PROMISC = 0x100
+ IFF_RUNNING = 0x40
+ IFF_SIMPLEX = 0x800
++ IFF_STATICARP = 0x20
+ IFF_UP = 0x1
+ IFNAMSIZ = 0x10
+ IFT_1822 = 0x2
+@@ -593,6 +637,7 @@ const (
+ IFT_LINEGROUP = 0xd2
+ IFT_LOCALTALK = 0x2a
+ IFT_LOOP = 0x18
++ IFT_MBIM = 0xfa
+ IFT_MEDIAMAILOVERIP = 0x8b
+ IFT_MFSIGLINK = 0xa7
+ IFT_MIOX25 = 0x26
+@@ -717,8 +762,6 @@ const (
+ IPPROTO_AH = 0x33
+ IPPROTO_CARP = 0x70
+ IPPROTO_DIVERT = 0x102
+- IPPROTO_DIVERT_INIT = 0x2
+- IPPROTO_DIVERT_RESP = 0x1
+ IPPROTO_DONE = 0x101
+ IPPROTO_DSTOPTS = 0x3c
+ IPPROTO_EGP = 0x8
+@@ -775,6 +818,7 @@ const (
+ IPV6_LEAVE_GROUP = 0xd
+ IPV6_MAXHLIM = 0xff
+ IPV6_MAXPACKET = 0xffff
++ IPV6_MINHOPCOUNT = 0x41
+ IPV6_MMTU = 0x500
+ IPV6_MULTICAST_HOPS = 0xa
+ IPV6_MULTICAST_IF = 0x9
+@@ -814,12 +858,12 @@ const (
+ IP_DEFAULT_MULTICAST_LOOP = 0x1
+ IP_DEFAULT_MULTICAST_TTL = 0x1
+ IP_DF = 0x4000
+- IP_DIVERTFL = 0x1022
+ IP_DROP_MEMBERSHIP = 0xd
+ IP_ESP_NETWORK_LEVEL = 0x16
+ IP_ESP_TRANS_LEVEL = 0x15
+ IP_HDRINCL = 0x2
+ IP_IPCOMP_LEVEL = 0x1d
++ IP_IPDEFTTL = 0x25
+ IP_IPSECFLOWINFO = 0x24
+ IP_IPSEC_LOCAL_AUTH = 0x1b
+ IP_IPSEC_LOCAL_CRED = 0x19
+@@ -853,13 +897,19 @@ const (
+ IP_RETOPTS = 0x8
+ IP_RF = 0x8000
+ IP_RTABLE = 0x1021
++ IP_SENDSRCADDR = 0x7
+ IP_TOS = 0x3
+ IP_TTL = 0x4
+ ISIG = 0x80
+ ISTRIP = 0x20
++ IUCLC = 0x1000
+ IXANY = 0x800
+ IXOFF = 0x400
+ IXON = 0x200
++ KERN_HOSTNAME = 0xa
++ KERN_OSRELEASE = 0x2
++ KERN_OSTYPE = 0x1
++ KERN_VERSION = 0x4
+ LCNT_OVERLOAD_FLUSH = 0x6
+ LOCK_EX = 0x2
+ LOCK_NB = 0x4
+@@ -873,25 +923,58 @@ const (
+ MADV_SPACEAVAIL = 0x5
+ MADV_WILLNEED = 0x3
+ MAP_ANON = 0x1000
+- MAP_COPY = 0x4
++ MAP_ANONYMOUS = 0x1000
++ MAP_CONCEAL = 0x8000
++ MAP_COPY = 0x2
+ MAP_FILE = 0x0
+ MAP_FIXED = 0x10
+- MAP_FLAGMASK = 0x1ff7
+- MAP_HASSEMAPHORE = 0x200
+- MAP_INHERIT = 0x80
++ MAP_FLAGMASK = 0xfff7
++ MAP_HASSEMAPHORE = 0x0
++ MAP_INHERIT = 0x0
+ MAP_INHERIT_COPY = 0x1
+- MAP_INHERIT_DONATE_COPY = 0x3
+ MAP_INHERIT_NONE = 0x2
+ MAP_INHERIT_SHARE = 0x0
+- MAP_NOEXTEND = 0x100
+- MAP_NORESERVE = 0x40
++ MAP_INHERIT_ZERO = 0x3
++ MAP_NOEXTEND = 0x0
++ MAP_NORESERVE = 0x0
+ MAP_PRIVATE = 0x2
+- MAP_RENAME = 0x20
++ MAP_RENAME = 0x0
+ MAP_SHARED = 0x1
+- MAP_TRYFIXED = 0x400
++ MAP_STACK = 0x4000
++ MAP_TRYFIXED = 0x0
+ MCL_CURRENT = 0x1
+ MCL_FUTURE = 0x2
++ MNT_ASYNC = 0x40
++ MNT_DEFEXPORTED = 0x200
++ MNT_DELEXPORT = 0x20000
++ MNT_DOOMED = 0x8000000
++ MNT_EXPORTANON = 0x400
++ MNT_EXPORTED = 0x100
++ MNT_EXRDONLY = 0x80
++ MNT_FORCE = 0x80000
++ MNT_LAZY = 0x3
++ MNT_LOCAL = 0x1000
++ MNT_NOATIME = 0x8000
++ MNT_NODEV = 0x10
++ MNT_NOEXEC = 0x4
++ MNT_NOPERM = 0x20
++ MNT_NOSUID = 0x8
++ MNT_NOWAIT = 0x2
++ MNT_QUOTA = 0x2000
++ MNT_RDONLY = 0x1
++ MNT_RELOAD = 0x40000
++ MNT_ROOTFS = 0x4000
++ MNT_SOFTDEP = 0x4000000
++ MNT_STALLED = 0x100000
++ MNT_SWAPPABLE = 0x200000
++ MNT_SYNCHRONOUS = 0x2
++ MNT_UPDATE = 0x10000
++ MNT_VISFLAGMASK = 0x400ffff
++ MNT_WAIT = 0x1
++ MNT_WANTRDWR = 0x2000000
++ MNT_WXALLOWED = 0x800
+ MSG_BCAST = 0x100
++ MSG_CMSG_CLOEXEC = 0x800
+ MSG_CTRUNC = 0x20
+ MSG_DONTROUTE = 0x4
+ MSG_DONTWAIT = 0x80
+@@ -909,11 +992,15 @@ const (
+ NET_RT_DUMP = 0x1
+ NET_RT_FLAGS = 0x2
+ NET_RT_IFLIST = 0x3
+- NET_RT_MAXID = 0x6
++ NET_RT_IFNAMES = 0x6
++ NET_RT_MAXID = 0x7
+ NET_RT_STATS = 0x4
+ NET_RT_TABLE = 0x5
++ NFDBITS = 0x20
+ NOFLSH = 0x80000000
++ NOKERNINFO = 0x2000000
+ NOTE_ATTRIB = 0x8
++ NOTE_CHANGE = 0x1
+ NOTE_CHILD = 0x4
+ NOTE_DELETE = 0x1
+ NOTE_EOF = 0x2
+@@ -932,11 +1019,13 @@ const (
+ NOTE_TRUNCATE = 0x80
+ NOTE_WRITE = 0x2
+ OCRNL = 0x10
++ OLCUC = 0x20
+ ONLCR = 0x2
+ ONLRET = 0x80
+ ONOCR = 0x40
+ ONOEOT = 0x8
+ OPOST = 0x1
++ OXTABS = 0x4
+ O_ACCMODE = 0x3
+ O_APPEND = 0x8
+ O_ASYNC = 0x40
+@@ -974,23 +1063,32 @@ const (
+ RLIMIT_CPU = 0x0
+ RLIMIT_DATA = 0x2
+ RLIMIT_FSIZE = 0x1
++ RLIMIT_MEMLOCK = 0x6
+ RLIMIT_NOFILE = 0x8
++ RLIMIT_NPROC = 0x7
++ RLIMIT_RSS = 0x5
+ RLIMIT_STACK = 0x3
+ RLIM_INFINITY = 0x7fffffffffffffff
+ RTAX_AUTHOR = 0x6
++ RTAX_BFD = 0xb
+ RTAX_BRD = 0x7
++ RTAX_DNS = 0xc
+ RTAX_DST = 0x0
+ RTAX_GATEWAY = 0x1
+ RTAX_GENMASK = 0x3
+ RTAX_IFA = 0x5
+ RTAX_IFP = 0x4
+ RTAX_LABEL = 0xa
+- RTAX_MAX = 0xb
++ RTAX_MAX = 0xf
+ RTAX_NETMASK = 0x2
++ RTAX_SEARCH = 0xe
+ RTAX_SRC = 0x8
+ RTAX_SRCMASK = 0x9
++ RTAX_STATIC = 0xd
+ RTA_AUTHOR = 0x40
++ RTA_BFD = 0x800
+ RTA_BRD = 0x80
++ RTA_DNS = 0x1000
+ RTA_DST = 0x1
+ RTA_GATEWAY = 0x2
+ RTA_GENMASK = 0x8
+@@ -998,46 +1096,54 @@ const (
+ RTA_IFP = 0x10
+ RTA_LABEL = 0x400
+ RTA_NETMASK = 0x4
++ RTA_SEARCH = 0x4000
+ RTA_SRC = 0x100
+ RTA_SRCMASK = 0x200
++ RTA_STATIC = 0x2000
+ RTF_ANNOUNCE = 0x4000
++ RTF_BFD = 0x1000000
+ RTF_BLACKHOLE = 0x1000
++ RTF_BROADCAST = 0x400000
++ RTF_CACHED = 0x20000
+ RTF_CLONED = 0x10000
+ RTF_CLONING = 0x100
++ RTF_CONNECTED = 0x800000
+ RTF_DONE = 0x40
+ RTF_DYNAMIC = 0x10
+- RTF_FMASK = 0x10f808
++ RTF_FMASK = 0x110fc08
+ RTF_GATEWAY = 0x2
+ RTF_HOST = 0x4
+ RTF_LLINFO = 0x400
+- RTF_MASK = 0x80
++ RTF_LOCAL = 0x200000
+ RTF_MODIFIED = 0x20
+ RTF_MPATH = 0x40000
+ RTF_MPLS = 0x100000
++ RTF_MULTICAST = 0x200
+ RTF_PERMANENT_ARP = 0x2000
+ RTF_PROTO1 = 0x8000
+ RTF_PROTO2 = 0x4000
+ RTF_PROTO3 = 0x2000
+ RTF_REJECT = 0x8
+- RTF_SOURCE = 0x20000
+ RTF_STATIC = 0x800
+- RTF_TUNNEL = 0x100000
+ RTF_UP = 0x1
+ RTF_USETRAILERS = 0x8000
+- RTF_XRESOLVE = 0x200
++ RTM_80211INFO = 0x15
+ RTM_ADD = 0x1
++ RTM_BFD = 0x12
+ RTM_CHANGE = 0x3
++ RTM_CHGADDRATTR = 0x14
+ RTM_DELADDR = 0xd
+ RTM_DELETE = 0x2
+ RTM_DESYNC = 0x10
+ RTM_GET = 0x4
+ RTM_IFANNOUNCE = 0xf
+ RTM_IFINFO = 0xe
+- RTM_LOCK = 0x8
++ RTM_INVALIDATE = 0x11
+ RTM_LOSING = 0x5
+ RTM_MAXSIZE = 0x800
+ RTM_MISS = 0x7
+ RTM_NEWADDR = 0xc
++ RTM_PROPOSAL = 0x13
+ RTM_REDIRECT = 0x6
+ RTM_RESOLVE = 0xb
+ RTM_RTTUNIT = 0xf4240
+@@ -1050,6 +1156,8 @@ const (
+ RTV_RTTVAR = 0x80
+ RTV_SPIPE = 0x10
+ RTV_SSTHRESH = 0x20
++ RT_TABLEID_BITS = 0x8
++ RT_TABLEID_MASK = 0xff
+ RT_TABLEID_MAX = 0xff
+ RUSAGE_CHILDREN = -0x1
+ RUSAGE_SELF = 0x0
+@@ -1062,55 +1170,57 @@ const (
+ SIOCADDMULTI = 0x80206931
+ SIOCAIFADDR = 0x8040691a
+ SIOCAIFGROUP = 0x80286987
+- SIOCALIFADDR = 0x8218691c
+ SIOCATMARK = 0x40047307
+- SIOCBRDGADD = 0x8058693c
+- SIOCBRDGADDS = 0x80586941
+- SIOCBRDGARL = 0x806e694d
++ SIOCBRDGADD = 0x8060693c
++ SIOCBRDGADDL = 0x80606949
++ SIOCBRDGADDS = 0x80606941
++ SIOCBRDGARL = 0x808c694d
+ SIOCBRDGDADDR = 0x81286947
+- SIOCBRDGDEL = 0x8058693d
+- SIOCBRDGDELS = 0x80586942
+- SIOCBRDGFLUSH = 0x80586948
+- SIOCBRDGFRL = 0x806e694e
+- SIOCBRDGGCACHE = 0xc0146941
+- SIOCBRDGGFD = 0xc0146952
+- SIOCBRDGGHT = 0xc0146951
+- SIOCBRDGGIFFLGS = 0xc058693e
+- SIOCBRDGGMA = 0xc0146953
++ SIOCBRDGDEL = 0x8060693d
++ SIOCBRDGDELS = 0x80606942
++ SIOCBRDGFLUSH = 0x80606948
++ SIOCBRDGFRL = 0x808c694e
++ SIOCBRDGGCACHE = 0xc0186941
++ SIOCBRDGGFD = 0xc0186952
++ SIOCBRDGGHT = 0xc0186951
++ SIOCBRDGGIFFLGS = 0xc060693e
++ SIOCBRDGGMA = 0xc0186953
+ SIOCBRDGGPARAM = 0xc0406958
+- SIOCBRDGGPRI = 0xc0146950
++ SIOCBRDGGPRI = 0xc0186950
+ SIOCBRDGGRL = 0xc030694f
+- SIOCBRDGGSIFS = 0xc058693c
+- SIOCBRDGGTO = 0xc0146946
+- SIOCBRDGIFS = 0xc0586942
++ SIOCBRDGGTO = 0xc0186946
++ SIOCBRDGIFS = 0xc0606942
+ SIOCBRDGRTS = 0xc0206943
+ SIOCBRDGSADDR = 0xc1286944
+- SIOCBRDGSCACHE = 0x80146940
+- SIOCBRDGSFD = 0x80146952
+- SIOCBRDGSHT = 0x80146951
+- SIOCBRDGSIFCOST = 0x80586955
+- SIOCBRDGSIFFLGS = 0x8058693f
+- SIOCBRDGSIFPRIO = 0x80586954
+- SIOCBRDGSMA = 0x80146953
+- SIOCBRDGSPRI = 0x80146950
+- SIOCBRDGSPROTO = 0x8014695a
+- SIOCBRDGSTO = 0x80146945
+- SIOCBRDGSTXHC = 0x80146959
++ SIOCBRDGSCACHE = 0x80186940
++ SIOCBRDGSFD = 0x80186952
++ SIOCBRDGSHT = 0x80186951
++ SIOCBRDGSIFCOST = 0x80606955
++ SIOCBRDGSIFFLGS = 0x8060693f
++ SIOCBRDGSIFPRIO = 0x80606954
++ SIOCBRDGSIFPROT = 0x8060694a
++ SIOCBRDGSMA = 0x80186953
++ SIOCBRDGSPRI = 0x80186950
++ SIOCBRDGSPROTO = 0x8018695a
++ SIOCBRDGSTO = 0x80186945
++ SIOCBRDGSTXHC = 0x80186959
++ SIOCDELLABEL = 0x80206997
+ SIOCDELMULTI = 0x80206932
+ SIOCDIFADDR = 0x80206919
+ SIOCDIFGROUP = 0x80286989
++ SIOCDIFPARENT = 0x802069b4
+ SIOCDIFPHYADDR = 0x80206949
+- SIOCDLIFADDR = 0x8218691e
++ SIOCDPWE3NEIGHBOR = 0x802069de
++ SIOCDVNETID = 0x802069af
+ SIOCGETKALIVE = 0xc01869a4
+ SIOCGETLABEL = 0x8020699a
++ SIOCGETMPWCFG = 0xc02069ae
+ SIOCGETPFLOW = 0xc02069fe
+ SIOCGETPFSYNC = 0xc02069f8
+ SIOCGETSGCNT = 0xc0207534
+ SIOCGETVIFCNT = 0xc0287533
+ SIOCGETVLAN = 0xc0206990
+- SIOCGHIWAT = 0x40047301
+ SIOCGIFADDR = 0xc0206921
+- SIOCGIFASYNCMAP = 0xc020697c
+ SIOCGIFBRDADDR = 0xc0206923
+ SIOCGIFCONF = 0xc0106924
+ SIOCGIFDATA = 0xc020691b
+@@ -1119,40 +1229,52 @@ const (
+ SIOCGIFFLAGS = 0xc0206911
+ SIOCGIFGATTR = 0xc028698b
+ SIOCGIFGENERIC = 0xc020693a
++ SIOCGIFGLIST = 0xc028698d
+ SIOCGIFGMEMB = 0xc028698a
+ SIOCGIFGROUP = 0xc0286988
+ SIOCGIFHARDMTU = 0xc02069a5
+- SIOCGIFMEDIA = 0xc0306936
++ SIOCGIFLLPRIO = 0xc02069b6
++ SIOCGIFMEDIA = 0xc0406938
+ SIOCGIFMETRIC = 0xc0206917
+ SIOCGIFMTU = 0xc020697e
+ SIOCGIFNETMASK = 0xc0206925
+- SIOCGIFPDSTADDR = 0xc0206948
++ SIOCGIFPAIR = 0xc02069b1
++ SIOCGIFPARENT = 0xc02069b3
+ SIOCGIFPRIORITY = 0xc020699c
+- SIOCGIFPSRCADDR = 0xc0206947
+ SIOCGIFRDOMAIN = 0xc02069a0
+ SIOCGIFRTLABEL = 0xc0206983
+- SIOCGIFTIMESLOT = 0xc0206986
++ SIOCGIFRXR = 0x802069aa
++ SIOCGIFSFFPAGE = 0xc1126939
+ SIOCGIFXFLAGS = 0xc020699e
+- SIOCGLIFADDR = 0xc218691d
+ SIOCGLIFPHYADDR = 0xc218694b
++ SIOCGLIFPHYDF = 0xc02069c2
++ SIOCGLIFPHYECN = 0xc02069c8
+ SIOCGLIFPHYRTABLE = 0xc02069a2
+ SIOCGLIFPHYTTL = 0xc02069a9
+- SIOCGLOWAT = 0x40047303
+ SIOCGPGRP = 0x40047309
++ SIOCGPWE3 = 0xc0206998
++ SIOCGPWE3CTRLWORD = 0xc02069dc
++ SIOCGPWE3FAT = 0xc02069dd
++ SIOCGPWE3NEIGHBOR = 0xc21869de
+ SIOCGSPPPPARAMS = 0xc0206994
++ SIOCGTXHPRIO = 0xc02069c6
++ SIOCGUMBINFO = 0xc02069be
++ SIOCGUMBPARAM = 0xc02069c0
+ SIOCGVH = 0xc02069f6
++ SIOCGVNETFLOWID = 0xc02069c4
+ SIOCGVNETID = 0xc02069a7
++ SIOCIFAFATTACH = 0x801169ab
++ SIOCIFAFDETACH = 0x801169ac
+ SIOCIFCREATE = 0x8020697a
+ SIOCIFDESTROY = 0x80206979
+ SIOCIFGCLONERS = 0xc0106978
+ SIOCSETKALIVE = 0x801869a3
+ SIOCSETLABEL = 0x80206999
++ SIOCSETMPWCFG = 0x802069ad
+ SIOCSETPFLOW = 0x802069fd
+ SIOCSETPFSYNC = 0x802069f7
+ SIOCSETVLAN = 0x8020698f
+- SIOCSHIWAT = 0x80047300
+ SIOCSIFADDR = 0x8020690c
+- SIOCSIFASYNCMAP = 0x8020697d
+ SIOCSIFBRDADDR = 0x80206913
+ SIOCSIFDESCR = 0x80206980
+ SIOCSIFDSTADDR = 0x8020690e
+@@ -1160,25 +1282,41 @@ const (
+ SIOCSIFGATTR = 0x8028698c
+ SIOCSIFGENERIC = 0x80206939
+ SIOCSIFLLADDR = 0x8020691f
+- SIOCSIFMEDIA = 0xc0206935
++ SIOCSIFLLPRIO = 0x802069b5
++ SIOCSIFMEDIA = 0xc0206937
+ SIOCSIFMETRIC = 0x80206918
+ SIOCSIFMTU = 0x8020697f
+ SIOCSIFNETMASK = 0x80206916
+- SIOCSIFPHYADDR = 0x80406946
++ SIOCSIFPAIR = 0x802069b0
++ SIOCSIFPARENT = 0x802069b2
+ SIOCSIFPRIORITY = 0x8020699b
+ SIOCSIFRDOMAIN = 0x8020699f
+ SIOCSIFRTLABEL = 0x80206982
+- SIOCSIFTIMESLOT = 0x80206985
+ SIOCSIFXFLAGS = 0x8020699d
+ SIOCSLIFPHYADDR = 0x8218694a
++ SIOCSLIFPHYDF = 0x802069c1
++ SIOCSLIFPHYECN = 0x802069c7
+ SIOCSLIFPHYRTABLE = 0x802069a1
+ SIOCSLIFPHYTTL = 0x802069a8
+- SIOCSLOWAT = 0x80047302
+ SIOCSPGRP = 0x80047308
++ SIOCSPWE3CTRLWORD = 0x802069dc
++ SIOCSPWE3FAT = 0x802069dd
++ SIOCSPWE3NEIGHBOR = 0x821869de
+ SIOCSSPPPPARAMS = 0x80206993
++ SIOCSTXHPRIO = 0x802069c5
++ SIOCSUMBPARAM = 0x802069bf
+ SIOCSVH = 0xc02069f5
++ SIOCSVNETFLOWID = 0x802069c3
+ SIOCSVNETID = 0x802069a6
++ SIOCSWGDPID = 0xc018695b
++ SIOCSWGMAXFLOW = 0xc0186960
++ SIOCSWGMAXGROUP = 0xc018695d
++ SIOCSWSDPID = 0x8018695c
++ SIOCSWSPORTNO = 0xc060695f
++ SOCK_CLOEXEC = 0x8000
+ SOCK_DGRAM = 0x2
++ SOCK_DNS = 0x1000
++ SOCK_NONBLOCK = 0x4000
+ SOCK_RAW = 0x3
+ SOCK_RDM = 0x4
+ SOCK_SEQPACKET = 0x5
+@@ -1209,9 +1347,42 @@ const (
+ SO_TIMESTAMP = 0x800
+ SO_TYPE = 0x1008
+ SO_USELOOPBACK = 0x40
++ SO_ZEROIZE = 0x2000
++ S_BLKSIZE = 0x200
++ S_IEXEC = 0x40
++ S_IFBLK = 0x6000
++ S_IFCHR = 0x2000
++ S_IFDIR = 0x4000
++ S_IFIFO = 0x1000
++ S_IFLNK = 0xa000
++ S_IFMT = 0xf000
++ S_IFREG = 0x8000
++ S_IFSOCK = 0xc000
++ S_IREAD = 0x100
++ S_IRGRP = 0x20
++ S_IROTH = 0x4
++ S_IRUSR = 0x100
++ S_IRWXG = 0x38
++ S_IRWXO = 0x7
++ S_IRWXU = 0x1c0
++ S_ISGID = 0x400
++ S_ISTXT = 0x200
++ S_ISUID = 0x800
++ S_ISVTX = 0x200
++ S_IWGRP = 0x10
++ S_IWOTH = 0x2
++ S_IWRITE = 0x80
++ S_IWUSR = 0x80
++ S_IXGRP = 0x8
++ S_IXOTH = 0x1
++ S_IXUSR = 0x40
+ TCIFLUSH = 0x1
++ TCIOFF = 0x3
+ TCIOFLUSH = 0x3
++ TCION = 0x4
+ TCOFLUSH = 0x2
++ TCOOFF = 0x1
++ TCOON = 0x2
+ TCP_MAXBURST = 0x4
+ TCP_MAXSEG = 0x2
+ TCP_MAXWIN = 0xffff
+@@ -1221,11 +1392,14 @@ const (
+ TCP_MSS = 0x200
+ TCP_NODELAY = 0x1
+ TCP_NOPUSH = 0x10
+- TCP_NSTATES = 0xb
+ TCP_SACK_ENABLE = 0x8
+ TCSAFLUSH = 0x2
++ TIMER_ABSTIME = 0x1
++ TIMER_RELTIME = 0x0
+ TIOCCBRK = 0x2000747a
+ TIOCCDTR = 0x20007478
++ TIOCCHKVERAUTH = 0x2000741e
++ TIOCCLRVERAUTH = 0x2000741d
+ TIOCCONS = 0x80047462
+ TIOCDRAIN = 0x2000745e
+ TIOCEXCL = 0x2000740d
+@@ -1280,17 +1454,21 @@ const (
+ TIOCSETAF = 0x802c7416
+ TIOCSETAW = 0x802c7415
+ TIOCSETD = 0x8004741b
++ TIOCSETVERAUTH = 0x8004741c
+ TIOCSFLAGS = 0x8004745c
+ TIOCSIG = 0x8004745f
+ TIOCSPGRP = 0x80047476
+ TIOCSTART = 0x2000746e
+- TIOCSTAT = 0x80047465
+- TIOCSTI = 0x80017472
++ TIOCSTAT = 0x20007465
+ TIOCSTOP = 0x2000746f
+ TIOCSTSTAMP = 0x8008745a
+ TIOCSWINSZ = 0x80087467
+ TIOCUCNTL = 0x80047466
++ TIOCUCNTL_CBRK = 0x7a
++ TIOCUCNTL_SBRK = 0x7b
+ TOSTOP = 0x400000
++ UTIME_NOW = -0x2
++ UTIME_OMIT = -0x1
+ VDISCARD = 0xf
+ VDSUSP = 0xb
+ VEOF = 0x0
+@@ -1301,6 +1479,19 @@ const (
+ VKILL = 0x5
+ VLNEXT = 0xe
+ VMIN = 0x10
++ VM_ANONMIN = 0x7
++ VM_LOADAVG = 0x2
++ VM_MALLOC_CONF = 0xc
++ VM_MAXID = 0xd
++ VM_MAXSLP = 0xa
++ VM_METER = 0x1
++ VM_NKMEMPAGES = 0x6
++ VM_PSSTRINGS = 0x3
++ VM_SWAPENCRYPT = 0x5
++ VM_USPACE = 0xb
++ VM_UVMEXP = 0x4
++ VM_VNODEMIN = 0x9
++ VM_VTEXTMIN = 0x8
+ VQUIT = 0x9
+ VREPRINT = 0x6
+ VSTART = 0xc
+@@ -1313,8 +1504,8 @@ const (
+ WCONTINUED = 0x8
+ WCOREFLAG = 0x80
+ WNOHANG = 0x1
+- WSTOPPED = 0x7f
+ WUNTRACED = 0x2
++ XCASE = 0x1000000
+ )
+
+ // Errors
+@@ -1328,6 +1519,7 @@ const (
+ EALREADY = syscall.Errno(0x25)
+ EAUTH = syscall.Errno(0x50)
+ EBADF = syscall.Errno(0x9)
++ EBADMSG = syscall.Errno(0x5c)
+ EBADRPC = syscall.Errno(0x48)
+ EBUSY = syscall.Errno(0x10)
+ ECANCELED = syscall.Errno(0x58)
+@@ -1354,7 +1546,7 @@ const (
+ EIPSEC = syscall.Errno(0x52)
+ EISCONN = syscall.Errno(0x38)
+ EISDIR = syscall.Errno(0x15)
+- ELAST = syscall.Errno(0x5b)
++ ELAST = syscall.Errno(0x5f)
+ ELOOP = syscall.Errno(0x3e)
+ EMEDIUMTYPE = syscall.Errno(0x56)
+ EMFILE = syscall.Errno(0x18)
+@@ -1382,12 +1574,14 @@ const (
+ ENOTCONN = syscall.Errno(0x39)
+ ENOTDIR = syscall.Errno(0x14)
+ ENOTEMPTY = syscall.Errno(0x42)
++ ENOTRECOVERABLE = syscall.Errno(0x5d)
+ ENOTSOCK = syscall.Errno(0x26)
+ ENOTSUP = syscall.Errno(0x5b)
+ ENOTTY = syscall.Errno(0x19)
+ ENXIO = syscall.Errno(0x6)
+ EOPNOTSUPP = syscall.Errno(0x2d)
+ EOVERFLOW = syscall.Errno(0x57)
++ EOWNERDEAD = syscall.Errno(0x5e)
+ EPERM = syscall.Errno(0x1)
+ EPFNOSUPPORT = syscall.Errno(0x2e)
+ EPIPE = syscall.Errno(0x20)
+@@ -1395,6 +1589,7 @@ const (
+ EPROCUNAVAIL = syscall.Errno(0x4c)
+ EPROGMISMATCH = syscall.Errno(0x4b)
+ EPROGUNAVAIL = syscall.Errno(0x4a)
++ EPROTO = syscall.Errno(0x5f)
+ EPROTONOSUPPORT = syscall.Errno(0x2b)
+ EPROTOTYPE = syscall.Errno(0x29)
+ ERANGE = syscall.Errno(0x22)
+@@ -1452,132 +1647,144 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "operation not permitted",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "input/output error",
+- 6: "device not configured",
+- 7: "argument list too long",
+- 8: "exec format error",
+- 9: "bad file descriptor",
+- 10: "no child processes",
+- 11: "resource deadlock avoided",
+- 12: "cannot allocate memory",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "operation not supported by device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "too many open files in system",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "numerical argument out of domain",
+- 34: "result too large",
+- 35: "resource temporarily unavailable",
+- 36: "operation now in progress",
+- 37: "operation already in progress",
+- 38: "socket operation on non-socket",
+- 39: "destination address required",
+- 40: "message too long",
+- 41: "protocol wrong type for socket",
+- 42: "protocol not available",
+- 43: "protocol not supported",
+- 44: "socket type not supported",
+- 45: "operation not supported",
+- 46: "protocol family not supported",
+- 47: "address family not supported by protocol family",
+- 48: "address already in use",
+- 49: "can't assign requested address",
+- 50: "network is down",
+- 51: "network is unreachable",
+- 52: "network dropped connection on reset",
+- 53: "software caused connection abort",
+- 54: "connection reset by peer",
+- 55: "no buffer space available",
+- 56: "socket is already connected",
+- 57: "socket is not connected",
+- 58: "can't send after socket shutdown",
+- 59: "too many references: can't splice",
+- 60: "connection timed out",
+- 61: "connection refused",
+- 62: "too many levels of symbolic links",
+- 63: "file name too long",
+- 64: "host is down",
+- 65: "no route to host",
+- 66: "directory not empty",
+- 67: "too many processes",
+- 68: "too many users",
+- 69: "disc quota exceeded",
+- 70: "stale NFS file handle",
+- 71: "too many levels of remote in path",
+- 72: "RPC struct is bad",
+- 73: "RPC version wrong",
+- 74: "RPC prog. not avail",
+- 75: "program version wrong",
+- 76: "bad procedure for program",
+- 77: "no locks available",
+- 78: "function not implemented",
+- 79: "inappropriate file type or format",
+- 80: "authentication error",
+- 81: "need authenticator",
+- 82: "IPsec processing failure",
+- 83: "attribute not found",
+- 84: "illegal byte sequence",
+- 85: "no medium found",
+- 86: "wrong medium type",
+- 87: "value too large to be stored in data type",
+- 88: "operation canceled",
+- 89: "identifier removed",
+- 90: "no message of desired type",
+- 91: "not supported",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "operation not permitted"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "input/output error"},
++ {6, "ENXIO", "device not configured"},
++ {7, "E2BIG", "argument list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file descriptor"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EDEADLK", "resource deadlock avoided"},
++ {12, "ENOMEM", "cannot allocate memory"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "operation not supported by device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "too many open files in system"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "numerical argument out of domain"},
++ {34, "ERANGE", "result too large"},
++ {35, "EAGAIN", "resource temporarily unavailable"},
++ {36, "EINPROGRESS", "operation now in progress"},
++ {37, "EALREADY", "operation already in progress"},
++ {38, "ENOTSOCK", "socket operation on non-socket"},
++ {39, "EDESTADDRREQ", "destination address required"},
++ {40, "EMSGSIZE", "message too long"},
++ {41, "EPROTOTYPE", "protocol wrong type for socket"},
++ {42, "ENOPROTOOPT", "protocol not available"},
++ {43, "EPROTONOSUPPORT", "protocol not supported"},
++ {44, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {45, "EOPNOTSUPP", "operation not supported"},
++ {46, "EPFNOSUPPORT", "protocol family not supported"},
++ {47, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {48, "EADDRINUSE", "address already in use"},
++ {49, "EADDRNOTAVAIL", "can't assign requested address"},
++ {50, "ENETDOWN", "network is down"},
++ {51, "ENETUNREACH", "network is unreachable"},
++ {52, "ENETRESET", "network dropped connection on reset"},
++ {53, "ECONNABORTED", "software caused connection abort"},
++ {54, "ECONNRESET", "connection reset by peer"},
++ {55, "ENOBUFS", "no buffer space available"},
++ {56, "EISCONN", "socket is already connected"},
++ {57, "ENOTCONN", "socket is not connected"},
++ {58, "ESHUTDOWN", "can't send after socket shutdown"},
++ {59, "ETOOMANYREFS", "too many references: can't splice"},
++ {60, "ETIMEDOUT", "operation timed out"},
++ {61, "ECONNREFUSED", "connection refused"},
++ {62, "ELOOP", "too many levels of symbolic links"},
++ {63, "ENAMETOOLONG", "file name too long"},
++ {64, "EHOSTDOWN", "host is down"},
++ {65, "EHOSTUNREACH", "no route to host"},
++ {66, "ENOTEMPTY", "directory not empty"},
++ {67, "EPROCLIM", "too many processes"},
++ {68, "EUSERS", "too many users"},
++ {69, "EDQUOT", "disk quota exceeded"},
++ {70, "ESTALE", "stale NFS file handle"},
++ {71, "EREMOTE", "too many levels of remote in path"},
++ {72, "EBADRPC", "RPC struct is bad"},
++ {73, "ERPCMISMATCH", "RPC version wrong"},
++ {74, "EPROGUNAVAIL", "RPC program not available"},
++ {75, "EPROGMISMATCH", "program version wrong"},
++ {76, "EPROCUNAVAIL", "bad procedure for program"},
++ {77, "ENOLCK", "no locks available"},
++ {78, "ENOSYS", "function not implemented"},
++ {79, "EFTYPE", "inappropriate file type or format"},
++ {80, "EAUTH", "authentication error"},
++ {81, "ENEEDAUTH", "need authenticator"},
++ {82, "EIPSEC", "IPsec processing failure"},
++ {83, "ENOATTR", "attribute not found"},
++ {84, "EILSEQ", "illegal byte sequence"},
++ {85, "ENOMEDIUM", "no medium found"},
++ {86, "EMEDIUMTYPE", "wrong medium type"},
++ {87, "EOVERFLOW", "value too large to be stored in data type"},
++ {88, "ECANCELED", "operation canceled"},
++ {89, "EIDRM", "identifier removed"},
++ {90, "ENOMSG", "no message of desired type"},
++ {91, "ENOTSUP", "not supported"},
++ {92, "EBADMSG", "bad message"},
++ {93, "ENOTRECOVERABLE", "state not recoverable"},
++ {94, "EOWNERDEAD", "previous owner died"},
++ {95, "ELAST", "protocol error"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal instruction",
+- 5: "trace/BPT trap",
+- 6: "abort trap",
+- 7: "EMT trap",
+- 8: "floating point exception",
+- 9: "killed",
+- 10: "bus error",
+- 11: "segmentation fault",
+- 12: "bad system call",
+- 13: "broken pipe",
+- 14: "alarm clock",
+- 15: "terminated",
+- 16: "urgent I/O condition",
+- 17: "stopped (signal)",
+- 18: "stopped",
+- 19: "continued",
+- 20: "child exited",
+- 21: "stopped (tty input)",
+- 22: "stopped (tty output)",
+- 23: "I/O possible",
+- 24: "cputime limit exceeded",
+- 25: "filesize limit exceeded",
+- 26: "virtual timer expired",
+- 27: "profiling timer expired",
+- 28: "window size changes",
+- 29: "information request",
+- 30: "user defined signal 1",
+- 31: "user defined signal 2",
+- 32: "thread AST",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal instruction"},
++ {5, "SIGTRAP", "trace/BPT trap"},
++ {6, "SIGABRT", "abort trap"},
++ {7, "SIGEMT", "EMT trap"},
++ {8, "SIGFPE", "floating point exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus error"},
++ {11, "SIGSEGV", "segmentation fault"},
++ {12, "SIGSYS", "bad system call"},
++ {13, "SIGPIPE", "broken pipe"},
++ {14, "SIGALRM", "alarm clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGURG", "urgent I/O condition"},
++ {17, "SIGSTOP", "suspended (signal)"},
++ {18, "SIGTSTP", "suspended"},
++ {19, "SIGCONT", "continued"},
++ {20, "SIGCHLD", "child exited"},
++ {21, "SIGTTIN", "stopped (tty input)"},
++ {22, "SIGTTOU", "stopped (tty output)"},
++ {23, "SIGIO", "I/O possible"},
++ {24, "SIGXCPU", "cputime limit exceeded"},
++ {25, "SIGXFSZ", "filesize limit exceeded"},
++ {26, "SIGVTALRM", "virtual timer expired"},
++ {27, "SIGPROF", "profiling timer expired"},
++ {28, "SIGWINCH", "window size changes"},
++ {29, "SIGINFO", "information request"},
++ {30, "SIGUSR1", "user defined signal 1"},
++ {31, "SIGUSR2", "user defined signal 2"},
++ {32, "SIGTHR", "thread AST"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go
+index 81e83d78..46e054cc 100644
+--- a/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go
+@@ -3,7 +3,7 @@
+
+ // +build amd64,solaris
+
+-// Created by cgo -godefs - DO NOT EDIT
++// Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+
+ package unix
+@@ -664,6 +664,9 @@ const (
+ MS_OLDSYNC = 0x0
+ MS_SYNC = 0x4
+ M_FLUSH = 0x86
++ NAME_MAX = 0xff
++ NEWDEV = 0x1
++ NFDBITS = 0x40
+ NL0 = 0x0
+ NL1 = 0x100
+ NLDLY = 0x100
+@@ -672,6 +675,9 @@ const (
+ OFDEL = 0x80
+ OFILL = 0x40
+ OLCUC = 0x2
++ OLDDEV = 0x0
++ ONBITSMAJOR = 0x7
++ ONBITSMINOR = 0x8
+ ONLCR = 0x4
+ ONLRET = 0x20
+ ONOCR = 0x10
+@@ -991,6 +997,39 @@ const (
+ SO_USELOOPBACK = 0x40
+ SO_VRRP = 0x1017
+ SO_WROFF = 0x2
++ S_ENFMT = 0x400
++ S_IAMB = 0x1ff
++ S_IEXEC = 0x40
++ S_IFBLK = 0x6000
++ S_IFCHR = 0x2000
++ S_IFDIR = 0x4000
++ S_IFDOOR = 0xd000
++ S_IFIFO = 0x1000
++ S_IFLNK = 0xa000
++ S_IFMT = 0xf000
++ S_IFNAM = 0x5000
++ S_IFPORT = 0xe000
++ S_IFREG = 0x8000
++ S_IFSOCK = 0xc000
++ S_INSEM = 0x1
++ S_INSHD = 0x2
++ S_IREAD = 0x100
++ S_IRGRP = 0x20
++ S_IROTH = 0x4
++ S_IRUSR = 0x100
++ S_IRWXG = 0x38
++ S_IRWXO = 0x7
++ S_IRWXU = 0x1c0
++ S_ISGID = 0x400
++ S_ISUID = 0x800
++ S_ISVTX = 0x200
++ S_IWGRP = 0x10
++ S_IWOTH = 0x2
++ S_IWRITE = 0x80
++ S_IWUSR = 0x80
++ S_IXGRP = 0x8
++ S_IXOTH = 0x1
++ S_IXUSR = 0x40
+ TAB0 = 0x0
+ TAB1 = 0x800
+ TAB2 = 0x1000
+@@ -1097,6 +1136,8 @@ const (
+ TIOCSTOP = 0x746f
+ TIOCSWINSZ = 0x5467
+ TOSTOP = 0x100
++ UTIME_NOW = -0x1
++ UTIME_OMIT = -0x2
+ VCEOF = 0x8
+ VCEOL = 0x9
+ VDISCARD = 0xd
+@@ -1105,6 +1146,7 @@ const (
+ VEOL = 0x5
+ VEOL2 = 0x6
+ VERASE = 0x2
++ VERASE2 = 0x11
+ VINTR = 0x0
+ VKILL = 0x3
+ VLNEXT = 0xf
+@@ -1313,171 +1355,179 @@ const (
+ )
+
+ // Error table
+-var errors = [...]string{
+- 1: "not owner",
+- 2: "no such file or directory",
+- 3: "no such process",
+- 4: "interrupted system call",
+- 5: "I/O error",
+- 6: "no such device or address",
+- 7: "arg list too long",
+- 8: "exec format error",
+- 9: "bad file number",
+- 10: "no child processes",
+- 11: "resource temporarily unavailable",
+- 12: "not enough space",
+- 13: "permission denied",
+- 14: "bad address",
+- 15: "block device required",
+- 16: "device busy",
+- 17: "file exists",
+- 18: "cross-device link",
+- 19: "no such device",
+- 20: "not a directory",
+- 21: "is a directory",
+- 22: "invalid argument",
+- 23: "file table overflow",
+- 24: "too many open files",
+- 25: "inappropriate ioctl for device",
+- 26: "text file busy",
+- 27: "file too large",
+- 28: "no space left on device",
+- 29: "illegal seek",
+- 30: "read-only file system",
+- 31: "too many links",
+- 32: "broken pipe",
+- 33: "argument out of domain",
+- 34: "result too large",
+- 35: "no message of desired type",
+- 36: "identifier removed",
+- 37: "channel number out of range",
+- 38: "level 2 not synchronized",
+- 39: "level 3 halted",
+- 40: "level 3 reset",
+- 41: "link number out of range",
+- 42: "protocol driver not attached",
+- 43: "no CSI structure available",
+- 44: "level 2 halted",
+- 45: "deadlock situation detected/avoided",
+- 46: "no record locks available",
+- 47: "operation canceled",
+- 48: "operation not supported",
+- 49: "disc quota exceeded",
+- 50: "bad exchange descriptor",
+- 51: "bad request descriptor",
+- 52: "message tables full",
+- 53: "anode table overflow",
+- 54: "bad request code",
+- 55: "invalid slot",
+- 56: "file locking deadlock",
+- 57: "bad font file format",
+- 58: "owner of the lock died",
+- 59: "lock is not recoverable",
+- 60: "not a stream device",
+- 61: "no data available",
+- 62: "timer expired",
+- 63: "out of stream resources",
+- 64: "machine is not on the network",
+- 65: "package not installed",
+- 66: "object is remote",
+- 67: "link has been severed",
+- 68: "advertise error",
+- 69: "srmount error",
+- 70: "communication error on send",
+- 71: "protocol error",
+- 72: "locked lock was unmapped ",
+- 73: "facility is not active",
+- 74: "multihop attempted",
+- 77: "not a data message",
+- 78: "file name too long",
+- 79: "value too large for defined data type",
+- 80: "name not unique on network",
+- 81: "file descriptor in bad state",
+- 82: "remote address changed",
+- 83: "can not access a needed shared library",
+- 84: "accessing a corrupted shared library",
+- 85: ".lib section in a.out corrupted",
+- 86: "attempting to link in more shared libraries than system limit",
+- 87: "can not exec a shared library directly",
+- 88: "illegal byte sequence",
+- 89: "operation not applicable",
+- 90: "number of symbolic links encountered during path name traversal exceeds MAXSYMLINKS",
+- 91: "error 91",
+- 92: "error 92",
+- 93: "directory not empty",
+- 94: "too many users",
+- 95: "socket operation on non-socket",
+- 96: "destination address required",
+- 97: "message too long",
+- 98: "protocol wrong type for socket",
+- 99: "option not supported by protocol",
+- 120: "protocol not supported",
+- 121: "socket type not supported",
+- 122: "operation not supported on transport endpoint",
+- 123: "protocol family not supported",
+- 124: "address family not supported by protocol family",
+- 125: "address already in use",
+- 126: "cannot assign requested address",
+- 127: "network is down",
+- 128: "network is unreachable",
+- 129: "network dropped connection because of reset",
+- 130: "software caused connection abort",
+- 131: "connection reset by peer",
+- 132: "no buffer space available",
+- 133: "transport endpoint is already connected",
+- 134: "transport endpoint is not connected",
+- 143: "cannot send after socket shutdown",
+- 144: "too many references: cannot splice",
+- 145: "connection timed out",
+- 146: "connection refused",
+- 147: "host is down",
+- 148: "no route to host",
+- 149: "operation already in progress",
+- 150: "operation now in progress",
+- 151: "stale NFS file handle",
++var errorList = [...]struct {
++ num syscall.Errno
++ name string
++ desc string
++}{
++ {1, "EPERM", "not owner"},
++ {2, "ENOENT", "no such file or directory"},
++ {3, "ESRCH", "no such process"},
++ {4, "EINTR", "interrupted system call"},
++ {5, "EIO", "I/O error"},
++ {6, "ENXIO", "no such device or address"},
++ {7, "E2BIG", "arg list too long"},
++ {8, "ENOEXEC", "exec format error"},
++ {9, "EBADF", "bad file number"},
++ {10, "ECHILD", "no child processes"},
++ {11, "EAGAIN", "resource temporarily unavailable"},
++ {12, "ENOMEM", "not enough space"},
++ {13, "EACCES", "permission denied"},
++ {14, "EFAULT", "bad address"},
++ {15, "ENOTBLK", "block device required"},
++ {16, "EBUSY", "device busy"},
++ {17, "EEXIST", "file exists"},
++ {18, "EXDEV", "cross-device link"},
++ {19, "ENODEV", "no such device"},
++ {20, "ENOTDIR", "not a directory"},
++ {21, "EISDIR", "is a directory"},
++ {22, "EINVAL", "invalid argument"},
++ {23, "ENFILE", "file table overflow"},
++ {24, "EMFILE", "too many open files"},
++ {25, "ENOTTY", "inappropriate ioctl for device"},
++ {26, "ETXTBSY", "text file busy"},
++ {27, "EFBIG", "file too large"},
++ {28, "ENOSPC", "no space left on device"},
++ {29, "ESPIPE", "illegal seek"},
++ {30, "EROFS", "read-only file system"},
++ {31, "EMLINK", "too many links"},
++ {32, "EPIPE", "broken pipe"},
++ {33, "EDOM", "argument out of domain"},
++ {34, "ERANGE", "result too large"},
++ {35, "ENOMSG", "no message of desired type"},
++ {36, "EIDRM", "identifier removed"},
++ {37, "ECHRNG", "channel number out of range"},
++ {38, "EL2NSYNC", "level 2 not synchronized"},
++ {39, "EL3HLT", "level 3 halted"},
++ {40, "EL3RST", "level 3 reset"},
++ {41, "ELNRNG", "link number out of range"},
++ {42, "EUNATCH", "protocol driver not attached"},
++ {43, "ENOCSI", "no CSI structure available"},
++ {44, "EL2HLT", "level 2 halted"},
++ {45, "EDEADLK", "deadlock situation detected/avoided"},
++ {46, "ENOLCK", "no record locks available"},
++ {47, "ECANCELED", "operation canceled"},
++ {48, "ENOTSUP", "operation not supported"},
++ {49, "EDQUOT", "disc quota exceeded"},
++ {50, "EBADE", "bad exchange descriptor"},
++ {51, "EBADR", "bad request descriptor"},
++ {52, "EXFULL", "message tables full"},
++ {53, "ENOANO", "anode table overflow"},
++ {54, "EBADRQC", "bad request code"},
++ {55, "EBADSLT", "invalid slot"},
++ {56, "EDEADLOCK", "file locking deadlock"},
++ {57, "EBFONT", "bad font file format"},
++ {58, "EOWNERDEAD", "owner of the lock died"},
++ {59, "ENOTRECOVERABLE", "lock is not recoverable"},
++ {60, "ENOSTR", "not a stream device"},
++ {61, "ENODATA", "no data available"},
++ {62, "ETIME", "timer expired"},
++ {63, "ENOSR", "out of stream resources"},
++ {64, "ENONET", "machine is not on the network"},
++ {65, "ENOPKG", "package not installed"},
++ {66, "EREMOTE", "object is remote"},
++ {67, "ENOLINK", "link has been severed"},
++ {68, "EADV", "advertise error"},
++ {69, "ESRMNT", "srmount error"},
++ {70, "ECOMM", "communication error on send"},
++ {71, "EPROTO", "protocol error"},
++ {72, "ELOCKUNMAPPED", "locked lock was unmapped "},
++ {73, "ENOTACTIVE", "facility is not active"},
++ {74, "EMULTIHOP", "multihop attempted"},
++ {77, "EBADMSG", "not a data message"},
++ {78, "ENAMETOOLONG", "file name too long"},
++ {79, "EOVERFLOW", "value too large for defined data type"},
++ {80, "ENOTUNIQ", "name not unique on network"},
++ {81, "EBADFD", "file descriptor in bad state"},
++ {82, "EREMCHG", "remote address changed"},
++ {83, "ELIBACC", "can not access a needed shared library"},
++ {84, "ELIBBAD", "accessing a corrupted shared library"},
++ {85, "ELIBSCN", ".lib section in a.out corrupted"},
++ {86, "ELIBMAX", "attempting to link in more shared libraries than system limit"},
++ {87, "ELIBEXEC", "can not exec a shared library directly"},
++ {88, "EILSEQ", "illegal byte sequence"},
++ {89, "ENOSYS", "operation not applicable"},
++ {90, "ELOOP", "number of symbolic links encountered during path name traversal exceeds MAXSYMLINKS"},
++ {91, "ERESTART", "error 91"},
++ {92, "ESTRPIPE", "error 92"},
++ {93, "ENOTEMPTY", "directory not empty"},
++ {94, "EUSERS", "too many users"},
++ {95, "ENOTSOCK", "socket operation on non-socket"},
++ {96, "EDESTADDRREQ", "destination address required"},
++ {97, "EMSGSIZE", "message too long"},
++ {98, "EPROTOTYPE", "protocol wrong type for socket"},
++ {99, "ENOPROTOOPT", "option not supported by protocol"},
++ {120, "EPROTONOSUPPORT", "protocol not supported"},
++ {121, "ESOCKTNOSUPPORT", "socket type not supported"},
++ {122, "EOPNOTSUPP", "operation not supported on transport endpoint"},
++ {123, "EPFNOSUPPORT", "protocol family not supported"},
++ {124, "EAFNOSUPPORT", "address family not supported by protocol family"},
++ {125, "EADDRINUSE", "address already in use"},
++ {126, "EADDRNOTAVAIL", "cannot assign requested address"},
++ {127, "ENETDOWN", "network is down"},
++ {128, "ENETUNREACH", "network is unreachable"},
++ {129, "ENETRESET", "network dropped connection because of reset"},
++ {130, "ECONNABORTED", "software caused connection abort"},
++ {131, "ECONNRESET", "connection reset by peer"},
++ {132, "ENOBUFS", "no buffer space available"},
++ {133, "EISCONN", "transport endpoint is already connected"},
++ {134, "ENOTCONN", "transport endpoint is not connected"},
++ {143, "ESHUTDOWN", "cannot send after socket shutdown"},
++ {144, "ETOOMANYREFS", "too many references: cannot splice"},
++ {145, "ETIMEDOUT", "connection timed out"},
++ {146, "ECONNREFUSED", "connection refused"},
++ {147, "EHOSTDOWN", "host is down"},
++ {148, "EHOSTUNREACH", "no route to host"},
++ {149, "EALREADY", "operation already in progress"},
++ {150, "EINPROGRESS", "operation now in progress"},
++ {151, "ESTALE", "stale NFS file handle"},
+ }
+
+ // Signal table
+-var signals = [...]string{
+- 1: "hangup",
+- 2: "interrupt",
+- 3: "quit",
+- 4: "illegal Instruction",
+- 5: "trace/Breakpoint Trap",
+- 6: "abort",
+- 7: "emulation Trap",
+- 8: "arithmetic Exception",
+- 9: "killed",
+- 10: "bus Error",
+- 11: "segmentation Fault",
+- 12: "bad System Call",
+- 13: "broken Pipe",
+- 14: "alarm Clock",
+- 15: "terminated",
+- 16: "user Signal 1",
+- 17: "user Signal 2",
+- 18: "child Status Changed",
+- 19: "power-Fail/Restart",
+- 20: "window Size Change",
+- 21: "urgent Socket Condition",
+- 22: "pollable Event",
+- 23: "stopped (signal)",
+- 24: "stopped (user)",
+- 25: "continued",
+- 26: "stopped (tty input)",
+- 27: "stopped (tty output)",
+- 28: "virtual Timer Expired",
+- 29: "profiling Timer Expired",
+- 30: "cpu Limit Exceeded",
+- 31: "file Size Limit Exceeded",
+- 32: "no runnable lwp",
+- 33: "inter-lwp signal",
+- 34: "checkpoint Freeze",
+- 35: "checkpoint Thaw",
+- 36: "thread Cancellation",
+- 37: "resource Lost",
+- 38: "resource Control Exceeded",
+- 39: "reserved for JVM 1",
+- 40: "reserved for JVM 2",
+- 41: "information Request",
++var signalList = [...]struct {
++ num syscall.Signal
++ name string
++ desc string
++}{
++ {1, "SIGHUP", "hangup"},
++ {2, "SIGINT", "interrupt"},
++ {3, "SIGQUIT", "quit"},
++ {4, "SIGILL", "illegal Instruction"},
++ {5, "SIGTRAP", "trace/Breakpoint Trap"},
++ {6, "SIGABRT", "abort"},
++ {7, "SIGEMT", "emulation Trap"},
++ {8, "SIGFPE", "arithmetic Exception"},
++ {9, "SIGKILL", "killed"},
++ {10, "SIGBUS", "bus Error"},
++ {11, "SIGSEGV", "segmentation Fault"},
++ {12, "SIGSYS", "bad System Call"},
++ {13, "SIGPIPE", "broken Pipe"},
++ {14, "SIGALRM", "alarm Clock"},
++ {15, "SIGTERM", "terminated"},
++ {16, "SIGUSR1", "user Signal 1"},
++ {17, "SIGUSR2", "user Signal 2"},
++ {18, "SIGCHLD", "child Status Changed"},
++ {19, "SIGPWR", "power-Fail/Restart"},
++ {20, "SIGWINCH", "window Size Change"},
++ {21, "SIGURG", "urgent Socket Condition"},
++ {22, "SIGIO", "pollable Event"},
++ {23, "SIGSTOP", "stopped (signal)"},
++ {24, "SIGTSTP", "stopped (user)"},
++ {25, "SIGCONT", "continued"},
++ {26, "SIGTTIN", "stopped (tty input)"},
++ {27, "SIGTTOU", "stopped (tty output)"},
++ {28, "SIGVTALRM", "virtual Timer Expired"},
++ {29, "SIGPROF", "profiling Timer Expired"},
++ {30, "SIGXCPU", "cpu Limit Exceeded"},
++ {31, "SIGXFSZ", "file Size Limit Exceeded"},
++ {32, "SIGWAITING", "no runnable lwp"},
++ {33, "SIGLWP", "inter-lwp signal"},
++ {34, "SIGFREEZE", "checkpoint Freeze"},
++ {35, "SIGTHAW", "checkpoint Thaw"},
++ {36, "SIGCANCEL", "thread Cancellation"},
++ {37, "SIGLOST", "resource Lost"},
++ {38, "SIGXRES", "resource Control Exceeded"},
++ {39, "SIGJVM1", "reserved for JVM 1"},
++ {40, "SIGJVM2", "reserved for JVM 2"},
++ {41, "SIGINFO", "information Request"},
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go b/vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go
+new file mode 100644
+index 00000000..89c5920e
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go
+@@ -0,0 +1,41 @@
++// Code generated by linux/mkall.go generatePtracePair("arm", "arm64"). DO NOT EDIT.
++
++// +build linux
++// +build arm arm64
++
++package unix
++
++import "unsafe"
++
++// PtraceRegsArm is the registers used by arm binaries.
++type PtraceRegsArm struct {
++ Uregs [18]uint32
++}
++
++// PtraceGetRegsArm fetches the registers used by arm binaries.
++func PtraceGetRegsArm(pid int, regsout *PtraceRegsArm) error {
++ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
++}
++
++// PtraceSetRegsArm sets the registers used by arm binaries.
++func PtraceSetRegsArm(pid int, regs *PtraceRegsArm) error {
++ return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
++}
++
++// PtraceRegsArm64 is the registers used by arm64 binaries.
++type PtraceRegsArm64 struct {
++ Regs [31]uint64
++ Sp uint64
++ Pc uint64
++ Pstate uint64
++}
++
++// PtraceGetRegsArm64 fetches the registers used by arm64 binaries.
++func PtraceGetRegsArm64(pid int, regsout *PtraceRegsArm64) error {
++ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
++}
++
++// PtraceSetRegsArm64 sets the registers used by arm64 binaries.
++func PtraceSetRegsArm64(pid int, regs *PtraceRegsArm64) error {
++ return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
++}
+diff --git a/vendor/golang.org/x/sys/unix/zptrace_linux_arm64.go b/vendor/golang.org/x/sys/unix/zptrace_linux_arm64.go
+new file mode 100644
+index 00000000..6cb6d688
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zptrace_linux_arm64.go
+@@ -0,0 +1,17 @@
++// Code generated by linux/mkall.go generatePtraceRegSet("arm64"). DO NOT EDIT.
++
++package unix
++
++import "unsafe"
++
++// PtraceGetRegSetArm64 fetches the registers used by arm64 binaries.
++func PtraceGetRegSetArm64(pid, addr int, regsout *PtraceRegsArm64) error {
++ iovec := Iovec{(*byte)(unsafe.Pointer(regsout)), uint64(unsafe.Sizeof(*regsout))}
++ return ptrace(PTRACE_GETREGSET, pid, uintptr(addr), uintptr(unsafe.Pointer(&iovec)))
++}
++
++// PtraceSetRegSetArm64 sets the registers used by arm64 binaries.
++func PtraceSetRegSetArm64(pid, addr int, regs *PtraceRegsArm64) error {
++ iovec := Iovec{(*byte)(unsafe.Pointer(regs)), uint64(unsafe.Sizeof(*regs))}
++ return ptrace(PTRACE_SETREGSET, pid, uintptr(addr), uintptr(unsafe.Pointer(&iovec)))
++}
+diff --git a/vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go b/vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go
+new file mode 100644
+index 00000000..24b841ee
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go
+@@ -0,0 +1,50 @@
++// Code generated by linux/mkall.go generatePtracePair("mips", "mips64"). DO NOT EDIT.
++
++// +build linux
++// +build mips mips64
++
++package unix
++
++import "unsafe"
++
++// PtraceRegsMips is the registers used by mips binaries.
++type PtraceRegsMips struct {
++ Regs [32]uint64
++ Lo uint64
++ Hi uint64
++ Epc uint64
++ Badvaddr uint64
++ Status uint64
++ Cause uint64
++}
++
++// PtraceGetRegsMips fetches the registers used by mips binaries.
++func PtraceGetRegsMips(pid int, regsout *PtraceRegsMips) error {
++ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
++}
++
++// PtraceSetRegsMips sets the registers used by mips binaries.
++func PtraceSetRegsMips(pid int, regs *PtraceRegsMips) error {
++ return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
++}
++
++// PtraceRegsMips64 is the registers used by mips64 binaries.
++type PtraceRegsMips64 struct {
++ Regs [32]uint64
++ Lo uint64
++ Hi uint64
++ Epc uint64
++ Badvaddr uint64
++ Status uint64
++ Cause uint64
++}
++
++// PtraceGetRegsMips64 fetches the registers used by mips64 binaries.
++func PtraceGetRegsMips64(pid int, regsout *PtraceRegsMips64) error {
++ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
++}
++
++// PtraceSetRegsMips64 sets the registers used by mips64 binaries.
++func PtraceSetRegsMips64(pid int, regs *PtraceRegsMips64) error {
++ return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
++}
+diff --git a/vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go b/vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go
+new file mode 100644
+index 00000000..47b04895
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go
+@@ -0,0 +1,50 @@
++// Code generated by linux/mkall.go generatePtracePair("mipsle", "mips64le"). DO NOT EDIT.
++
++// +build linux
++// +build mipsle mips64le
++
++package unix
++
++import "unsafe"
++
++// PtraceRegsMipsle is the registers used by mipsle binaries.
++type PtraceRegsMipsle struct {
++ Regs [32]uint64
++ Lo uint64
++ Hi uint64
++ Epc uint64
++ Badvaddr uint64
++ Status uint64
++ Cause uint64
++}
++
++// PtraceGetRegsMipsle fetches the registers used by mipsle binaries.
++func PtraceGetRegsMipsle(pid int, regsout *PtraceRegsMipsle) error {
++ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
++}
++
++// PtraceSetRegsMipsle sets the registers used by mipsle binaries.
++func PtraceSetRegsMipsle(pid int, regs *PtraceRegsMipsle) error {
++ return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
++}
++
++// PtraceRegsMips64le is the registers used by mips64le binaries.
++type PtraceRegsMips64le struct {
++ Regs [32]uint64
++ Lo uint64
++ Hi uint64
++ Epc uint64
++ Badvaddr uint64
++ Status uint64
++ Cause uint64
++}
++
++// PtraceGetRegsMips64le fetches the registers used by mips64le binaries.
++func PtraceGetRegsMips64le(pid int, regsout *PtraceRegsMips64le) error {
++ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
++}
++
++// PtraceSetRegsMips64le sets the registers used by mips64le binaries.
++func PtraceSetRegsMips64le(pid int, regs *PtraceRegsMips64le) error {
++ return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
++}
+diff --git a/vendor/golang.org/x/sys/unix/zptrace_x86_linux.go b/vendor/golang.org/x/sys/unix/zptrace_x86_linux.go
+new file mode 100644
+index 00000000..ea5d9cb5
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zptrace_x86_linux.go
+@@ -0,0 +1,80 @@
++// Code generated by linux/mkall.go generatePtracePair("386", "amd64"). DO NOT EDIT.
++
++// +build linux
++// +build 386 amd64
++
++package unix
++
++import "unsafe"
++
++// PtraceRegs386 is the registers used by 386 binaries.
++type PtraceRegs386 struct {
++ Ebx int32
++ Ecx int32
++ Edx int32
++ Esi int32
++ Edi int32
++ Ebp int32
++ Eax int32
++ Xds int32
++ Xes int32
++ Xfs int32
++ Xgs int32
++ Orig_eax int32
++ Eip int32
++ Xcs int32
++ Eflags int32
++ Esp int32
++ Xss int32
++}
++
++// PtraceGetRegs386 fetches the registers used by 386 binaries.
++func PtraceGetRegs386(pid int, regsout *PtraceRegs386) error {
++ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
++}
++
++// PtraceSetRegs386 sets the registers used by 386 binaries.
++func PtraceSetRegs386(pid int, regs *PtraceRegs386) error {
++ return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
++}
++
++// PtraceRegsAmd64 is the registers used by amd64 binaries.
++type PtraceRegsAmd64 struct {
++ R15 uint64
++ R14 uint64
++ R13 uint64
++ R12 uint64
++ Rbp uint64
++ Rbx uint64
++ R11 uint64
++ R10 uint64
++ R9 uint64
++ R8 uint64
++ Rax uint64
++ Rcx uint64
++ Rdx uint64
++ Rsi uint64
++ Rdi uint64
++ Orig_rax uint64
++ Rip uint64
++ Cs uint64
++ Eflags uint64
++ Rsp uint64
++ Ss uint64
++ Fs_base uint64
++ Gs_base uint64
++ Ds uint64
++ Es uint64
++ Fs uint64
++ Gs uint64
++}
++
++// PtraceGetRegsAmd64 fetches the registers used by amd64 binaries.
++func PtraceGetRegsAmd64(pid int, regsout *PtraceRegsAmd64) error {
++ return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
++}
++
++// PtraceSetRegsAmd64 sets the registers used by amd64 binaries.
++func PtraceSetRegsAmd64(pid int, regs *PtraceRegsAmd64) error {
++ return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
++}
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go
+new file mode 100644
+index 00000000..ed657ff1
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go
+@@ -0,0 +1,1484 @@
++// go run mksyscall_aix_ppc.go -aix -tags aix,ppc syscall_aix.go syscall_aix_ppc.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build aix,ppc
++
++package unix
++
++/*
++#include <stdint.h>
++#include <stddef.h>
++int utimes(uintptr_t, uintptr_t);
++int utimensat(int, uintptr_t, uintptr_t, int);
++int getcwd(uintptr_t, size_t);
++int accept(int, uintptr_t, uintptr_t);
++int getdirent(int, uintptr_t, size_t);
++int wait4(int, uintptr_t, int, uintptr_t);
++int ioctl(int, int, uintptr_t);
++int fcntl(uintptr_t, int, uintptr_t);
++int acct(uintptr_t);
++int chdir(uintptr_t);
++int chroot(uintptr_t);
++int close(int);
++int dup(int);
++void exit(int);
++int faccessat(int, uintptr_t, unsigned int, int);
++int fchdir(int);
++int fchmod(int, unsigned int);
++int fchmodat(int, uintptr_t, unsigned int, int);
++int fchownat(int, uintptr_t, int, int, int);
++int fdatasync(int);
++int fsync(int);
++int getpgid(int);
++int getpgrp();
++int getpid();
++int getppid();
++int getpriority(int, int);
++int getrusage(int, uintptr_t);
++int getsid(int);
++int kill(int, int);
++int syslog(int, uintptr_t, size_t);
++int mkdir(int, uintptr_t, unsigned int);
++int mkdirat(int, uintptr_t, unsigned int);
++int mkfifo(uintptr_t, unsigned int);
++int mknod(uintptr_t, unsigned int, int);
++int mknodat(int, uintptr_t, unsigned int, int);
++int nanosleep(uintptr_t, uintptr_t);
++int open64(uintptr_t, int, unsigned int);
++int openat(int, uintptr_t, int, unsigned int);
++int read(int, uintptr_t, size_t);
++int readlink(uintptr_t, uintptr_t, size_t);
++int renameat(int, uintptr_t, int, uintptr_t);
++int setdomainname(uintptr_t, size_t);
++int sethostname(uintptr_t, size_t);
++int setpgid(int, int);
++int setsid();
++int settimeofday(uintptr_t);
++int setuid(int);
++int setgid(int);
++int setpriority(int, int, int);
++int statx(int, uintptr_t, int, int, uintptr_t);
++int sync();
++uintptr_t times(uintptr_t);
++int umask(int);
++int uname(uintptr_t);
++int unlink(uintptr_t);
++int unlinkat(int, uintptr_t, int);
++int ustat(int, uintptr_t);
++int write(int, uintptr_t, size_t);
++int dup2(int, int);
++int posix_fadvise64(int, long long, long long, int);
++int fchown(int, int, int);
++int fstat(int, uintptr_t);
++int fstatat(int, uintptr_t, uintptr_t, int);
++int fstatfs(int, uintptr_t);
++int ftruncate(int, long long);
++int getegid();
++int geteuid();
++int getgid();
++int getuid();
++int lchown(uintptr_t, int, int);
++int listen(int, int);
++int lstat(uintptr_t, uintptr_t);
++int pause();
++int pread64(int, uintptr_t, size_t, long long);
++int pwrite64(int, uintptr_t, size_t, long long);
++#define c_select select
++int select(int, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
++int pselect(int, uintptr_t, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
++int setregid(int, int);
++int setreuid(int, int);
++int shutdown(int, int);
++long long splice(int, uintptr_t, int, uintptr_t, int, int);
++int stat(uintptr_t, uintptr_t);
++int statfs(uintptr_t, uintptr_t);
++int truncate(uintptr_t, long long);
++int bind(int, uintptr_t, uintptr_t);
++int connect(int, uintptr_t, uintptr_t);
++int getgroups(int, uintptr_t);
++int setgroups(int, uintptr_t);
++int getsockopt(int, int, int, uintptr_t, uintptr_t);
++int setsockopt(int, int, int, uintptr_t, uintptr_t);
++int socket(int, int, int);
++int socketpair(int, int, int, uintptr_t);
++int getpeername(int, uintptr_t, uintptr_t);
++int getsockname(int, uintptr_t, uintptr_t);
++int recvfrom(int, uintptr_t, size_t, int, uintptr_t, uintptr_t);
++int sendto(int, uintptr_t, size_t, int, uintptr_t, uintptr_t);
++int nrecvmsg(int, uintptr_t, int);
++int nsendmsg(int, uintptr_t, int);
++int munmap(uintptr_t, uintptr_t);
++int madvise(uintptr_t, size_t, int);
++int mprotect(uintptr_t, size_t, int);
++int mlock(uintptr_t, size_t);
++int mlockall(int);
++int msync(uintptr_t, size_t, int);
++int munlock(uintptr_t, size_t);
++int munlockall();
++int pipe(uintptr_t);
++int poll(uintptr_t, int, int);
++int gettimeofday(uintptr_t, uintptr_t);
++int time(uintptr_t);
++int utime(uintptr_t, uintptr_t);
++unsigned long long getsystemcfg(int);
++int umount(uintptr_t);
++int getrlimit64(int, uintptr_t);
++int setrlimit64(int, uintptr_t);
++long long lseek64(int, long long, int);
++uintptr_t mmap(uintptr_t, uintptr_t, int, int, int, long long);
++
++*/
++import "C"
++import (
++ "unsafe"
++)
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func utimes(path string, times *[2]Timeval) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.utimes(C.uintptr_t(_p0), C.uintptr_t(uintptr(unsafe.Pointer(times))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func utimensat(dirfd int, path string, times *[2]Timespec, flag int) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.utimensat(C.int(dirfd), C.uintptr_t(_p0), C.uintptr_t(uintptr(unsafe.Pointer(times))), C.int(flag))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getcwd(buf []byte) (err error) {
++ var _p0 *byte
++ if len(buf) > 0 {
++ _p0 = &buf[0]
++ }
++ var _p1 int
++ _p1 = len(buf)
++ r0, er := C.getcwd(C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
++ r0, er := C.accept(C.int(s), C.uintptr_t(uintptr(unsafe.Pointer(rsa))), C.uintptr_t(uintptr(unsafe.Pointer(addrlen))))
++ fd = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getdirent(fd int, buf []byte) (n int, err error) {
++ var _p0 *byte
++ if len(buf) > 0 {
++ _p0 = &buf[0]
++ }
++ var _p1 int
++ _p1 = len(buf)
++ r0, er := C.getdirent(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
++ n = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func wait4(pid Pid_t, status *_C_int, options int, rusage *Rusage) (wpid Pid_t, err error) {
++ r0, er := C.wait4(C.int(pid), C.uintptr_t(uintptr(unsafe.Pointer(status))), C.int(options), C.uintptr_t(uintptr(unsafe.Pointer(rusage))))
++ wpid = Pid_t(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ioctl(fd int, req uint, arg uintptr) (err error) {
++ r0, er := C.ioctl(C.int(fd), C.int(req), C.uintptr_t(arg))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func FcntlInt(fd uintptr, cmd int, arg int) (r int, err error) {
++ r0, er := C.fcntl(C.uintptr_t(fd), C.int(cmd), C.uintptr_t(arg))
++ r = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) (err error) {
++ r0, er := C.fcntl(C.uintptr_t(fd), C.int(cmd), C.uintptr_t(uintptr(unsafe.Pointer(lk))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fcntl(fd int, cmd int, arg int) (val int, err error) {
++ r0, er := C.fcntl(C.uintptr_t(fd), C.int(cmd), C.uintptr_t(arg))
++ val = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Acct(path string) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.acct(C.uintptr_t(_p0))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Chdir(path string) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.chdir(C.uintptr_t(_p0))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Chroot(path string) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.chroot(C.uintptr_t(_p0))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Close(fd int) (err error) {
++ r0, er := C.close(C.int(fd))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Dup(oldfd int) (fd int, err error) {
++ r0, er := C.dup(C.int(oldfd))
++ fd = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Exit(code int) {
++ C.exit(C.int(code))
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.faccessat(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode), C.int(flags))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fchdir(fd int) (err error) {
++ r0, er := C.fchdir(C.int(fd))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fchmod(fd int, mode uint32) (err error) {
++ r0, er := C.fchmod(C.int(fd), C.uint(mode))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.fchmodat(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode), C.int(flags))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.fchownat(C.int(dirfd), C.uintptr_t(_p0), C.int(uid), C.int(gid), C.int(flags))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fdatasync(fd int) (err error) {
++ r0, er := C.fdatasync(C.int(fd))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fsync(fd int) (err error) {
++ r0, er := C.fsync(C.int(fd))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getpgid(pid int) (pgid int, err error) {
++ r0, er := C.getpgid(C.int(pid))
++ pgid = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getpgrp() (pid int) {
++ r0, _ := C.getpgrp()
++ pid = int(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getpid() (pid int) {
++ r0, _ := C.getpid()
++ pid = int(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getppid() (ppid int) {
++ r0, _ := C.getppid()
++ ppid = int(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getpriority(which int, who int) (prio int, err error) {
++ r0, er := C.getpriority(C.int(which), C.int(who))
++ prio = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getrusage(who int, rusage *Rusage) (err error) {
++ r0, er := C.getrusage(C.int(who), C.uintptr_t(uintptr(unsafe.Pointer(rusage))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getsid(pid int) (sid int, err error) {
++ r0, er := C.getsid(C.int(pid))
++ sid = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Kill(pid int, sig Signal) (err error) {
++ r0, er := C.kill(C.int(pid), C.int(sig))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Klogctl(typ int, buf []byte) (n int, err error) {
++ var _p0 *byte
++ if len(buf) > 0 {
++ _p0 = &buf[0]
++ }
++ var _p1 int
++ _p1 = len(buf)
++ r0, er := C.syslog(C.int(typ), C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
++ n = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Mkdir(dirfd int, path string, mode uint32) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.mkdir(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Mkdirat(dirfd int, path string, mode uint32) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.mkdirat(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Mkfifo(path string, mode uint32) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.mkfifo(C.uintptr_t(_p0), C.uint(mode))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Mknod(path string, mode uint32, dev int) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.mknod(C.uintptr_t(_p0), C.uint(mode), C.int(dev))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.mknodat(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode), C.int(dev))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
++ r0, er := C.nanosleep(C.uintptr_t(uintptr(unsafe.Pointer(time))), C.uintptr_t(uintptr(unsafe.Pointer(leftover))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Open(path string, mode int, perm uint32) (fd int, err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.open64(C.uintptr_t(_p0), C.int(mode), C.uint(perm))
++ fd = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.openat(C.int(dirfd), C.uintptr_t(_p0), C.int(flags), C.uint(mode))
++ fd = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func read(fd int, p []byte) (n int, err error) {
++ var _p0 *byte
++ if len(p) > 0 {
++ _p0 = &p[0]
++ }
++ var _p1 int
++ _p1 = len(p)
++ r0, er := C.read(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
++ n = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Readlink(path string, buf []byte) (n int, err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ var _p1 *byte
++ if len(buf) > 0 {
++ _p1 = &buf[0]
++ }
++ var _p2 int
++ _p2 = len(buf)
++ r0, er := C.readlink(C.uintptr_t(_p0), C.uintptr_t(uintptr(unsafe.Pointer(_p1))), C.size_t(_p2))
++ n = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(oldpath)))
++ _p1 := uintptr(unsafe.Pointer(C.CString(newpath)))
++ r0, er := C.renameat(C.int(olddirfd), C.uintptr_t(_p0), C.int(newdirfd), C.uintptr_t(_p1))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Setdomainname(p []byte) (err error) {
++ var _p0 *byte
++ if len(p) > 0 {
++ _p0 = &p[0]
++ }
++ var _p1 int
++ _p1 = len(p)
++ r0, er := C.setdomainname(C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Sethostname(p []byte) (err error) {
++ var _p0 *byte
++ if len(p) > 0 {
++ _p0 = &p[0]
++ }
++ var _p1 int
++ _p1 = len(p)
++ r0, er := C.sethostname(C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Setpgid(pid int, pgid int) (err error) {
++ r0, er := C.setpgid(C.int(pid), C.int(pgid))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Setsid() (pid int, err error) {
++ r0, er := C.setsid()
++ pid = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Settimeofday(tv *Timeval) (err error) {
++ r0, er := C.settimeofday(C.uintptr_t(uintptr(unsafe.Pointer(tv))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Setuid(uid int) (err error) {
++ r0, er := C.setuid(C.int(uid))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Setgid(uid int) (err error) {
++ r0, er := C.setgid(C.int(uid))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Setpriority(which int, who int, prio int) (err error) {
++ r0, er := C.setpriority(C.int(which), C.int(who), C.int(prio))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.statx(C.int(dirfd), C.uintptr_t(_p0), C.int(flags), C.int(mask), C.uintptr_t(uintptr(unsafe.Pointer(stat))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Sync() {
++ C.sync()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Times(tms *Tms) (ticks uintptr, err error) {
++ r0, er := C.times(C.uintptr_t(uintptr(unsafe.Pointer(tms))))
++ ticks = uintptr(r0)
++ if uintptr(r0) == ^uintptr(0) && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Umask(mask int) (oldmask int) {
++ r0, _ := C.umask(C.int(mask))
++ oldmask = int(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Uname(buf *Utsname) (err error) {
++ r0, er := C.uname(C.uintptr_t(uintptr(unsafe.Pointer(buf))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Unlink(path string) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.unlink(C.uintptr_t(_p0))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Unlinkat(dirfd int, path string, flags int) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.unlinkat(C.int(dirfd), C.uintptr_t(_p0), C.int(flags))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Ustat(dev int, ubuf *Ustat_t) (err error) {
++ r0, er := C.ustat(C.int(dev), C.uintptr_t(uintptr(unsafe.Pointer(ubuf))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func write(fd int, p []byte) (n int, err error) {
++ var _p0 *byte
++ if len(p) > 0 {
++ _p0 = &p[0]
++ }
++ var _p1 int
++ _p1 = len(p)
++ r0, er := C.write(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
++ n = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func readlen(fd int, p *byte, np int) (n int, err error) {
++ r0, er := C.read(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(p))), C.size_t(np))
++ n = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func writelen(fd int, p *byte, np int) (n int, err error) {
++ r0, er := C.write(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(p))), C.size_t(np))
++ n = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Dup2(oldfd int, newfd int) (err error) {
++ r0, er := C.dup2(C.int(oldfd), C.int(newfd))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
++ r0, er := C.posix_fadvise64(C.int(fd), C.longlong(offset), C.longlong(length), C.int(advice))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fchown(fd int, uid int, gid int) (err error) {
++ r0, er := C.fchown(C.int(fd), C.int(uid), C.int(gid))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fstat(fd int, stat *Stat_t) (err error) {
++ r0, er := C.fstat(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(stat))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.fstatat(C.int(dirfd), C.uintptr_t(_p0), C.uintptr_t(uintptr(unsafe.Pointer(stat))), C.int(flags))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatfs(fd int, buf *Statfs_t) (err error) {
++ r0, er := C.fstatfs(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(buf))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Ftruncate(fd int, length int64) (err error) {
++ r0, er := C.ftruncate(C.int(fd), C.longlong(length))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getegid() (egid int) {
++ r0, _ := C.getegid()
++ egid = int(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Geteuid() (euid int) {
++ r0, _ := C.geteuid()
++ euid = int(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getgid() (gid int) {
++ r0, _ := C.getgid()
++ gid = int(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getuid() (uid int) {
++ r0, _ := C.getuid()
++ uid = int(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Lchown(path string, uid int, gid int) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.lchown(C.uintptr_t(_p0), C.int(uid), C.int(gid))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Listen(s int, n int) (err error) {
++ r0, er := C.listen(C.int(s), C.int(n))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func lstat(path string, stat *Stat_t) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.lstat(C.uintptr_t(_p0), C.uintptr_t(uintptr(unsafe.Pointer(stat))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Pause() (err error) {
++ r0, er := C.pause()
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Pread(fd int, p []byte, offset int64) (n int, err error) {
++ var _p0 *byte
++ if len(p) > 0 {
++ _p0 = &p[0]
++ }
++ var _p1 int
++ _p1 = len(p)
++ r0, er := C.pread64(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1), C.longlong(offset))
++ n = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
++ var _p0 *byte
++ if len(p) > 0 {
++ _p0 = &p[0]
++ }
++ var _p1 int
++ _p1 = len(p)
++ r0, er := C.pwrite64(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1), C.longlong(offset))
++ n = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, er := C.c_select(C.int(nfd), C.uintptr_t(uintptr(unsafe.Pointer(r))), C.uintptr_t(uintptr(unsafe.Pointer(w))), C.uintptr_t(uintptr(unsafe.Pointer(e))), C.uintptr_t(uintptr(unsafe.Pointer(timeout))))
++ n = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
++ r0, er := C.pselect(C.int(nfd), C.uintptr_t(uintptr(unsafe.Pointer(r))), C.uintptr_t(uintptr(unsafe.Pointer(w))), C.uintptr_t(uintptr(unsafe.Pointer(e))), C.uintptr_t(uintptr(unsafe.Pointer(timeout))), C.uintptr_t(uintptr(unsafe.Pointer(sigmask))))
++ n = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Setregid(rgid int, egid int) (err error) {
++ r0, er := C.setregid(C.int(rgid), C.int(egid))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Setreuid(ruid int, euid int) (err error) {
++ r0, er := C.setreuid(C.int(ruid), C.int(euid))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Shutdown(fd int, how int) (err error) {
++ r0, er := C.shutdown(C.int(fd), C.int(how))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) {
++ r0, er := C.splice(C.int(rfd), C.uintptr_t(uintptr(unsafe.Pointer(roff))), C.int(wfd), C.uintptr_t(uintptr(unsafe.Pointer(woff))), C.int(len), C.int(flags))
++ n = int64(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func stat(path string, statptr *Stat_t) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.stat(C.uintptr_t(_p0), C.uintptr_t(uintptr(unsafe.Pointer(statptr))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Statfs(path string, buf *Statfs_t) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.statfs(C.uintptr_t(_p0), C.uintptr_t(uintptr(unsafe.Pointer(buf))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Truncate(path string, length int64) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.truncate(C.uintptr_t(_p0), C.longlong(length))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
++ r0, er := C.bind(C.int(s), C.uintptr_t(uintptr(addr)), C.uintptr_t(uintptr(addrlen)))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
++ r0, er := C.connect(C.int(s), C.uintptr_t(uintptr(addr)), C.uintptr_t(uintptr(addrlen)))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getgroups(n int, list *_Gid_t) (nn int, err error) {
++ r0, er := C.getgroups(C.int(n), C.uintptr_t(uintptr(unsafe.Pointer(list))))
++ nn = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setgroups(n int, list *_Gid_t) (err error) {
++ r0, er := C.setgroups(C.int(n), C.uintptr_t(uintptr(unsafe.Pointer(list))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
++ r0, er := C.getsockopt(C.int(s), C.int(level), C.int(name), C.uintptr_t(uintptr(val)), C.uintptr_t(uintptr(unsafe.Pointer(vallen))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
++ r0, er := C.setsockopt(C.int(s), C.int(level), C.int(name), C.uintptr_t(uintptr(val)), C.uintptr_t(vallen))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func socket(domain int, typ int, proto int) (fd int, err error) {
++ r0, er := C.socket(C.int(domain), C.int(typ), C.int(proto))
++ fd = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
++ r0, er := C.socketpair(C.int(domain), C.int(typ), C.int(proto), C.uintptr_t(uintptr(unsafe.Pointer(fd))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
++ r0, er := C.getpeername(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(rsa))), C.uintptr_t(uintptr(unsafe.Pointer(addrlen))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
++ r0, er := C.getsockname(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(rsa))), C.uintptr_t(uintptr(unsafe.Pointer(addrlen))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
++ var _p0 *byte
++ if len(p) > 0 {
++ _p0 = &p[0]
++ }
++ var _p1 int
++ _p1 = len(p)
++ r0, er := C.recvfrom(C.int(fd), C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1), C.int(flags), C.uintptr_t(uintptr(unsafe.Pointer(from))), C.uintptr_t(uintptr(unsafe.Pointer(fromlen))))
++ n = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
++ var _p0 *byte
++ if len(buf) > 0 {
++ _p0 = &buf[0]
++ }
++ var _p1 int
++ _p1 = len(buf)
++ r0, er := C.sendto(C.int(s), C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1), C.int(flags), C.uintptr_t(uintptr(to)), C.uintptr_t(uintptr(addrlen)))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
++ r0, er := C.nrecvmsg(C.int(s), C.uintptr_t(uintptr(unsafe.Pointer(msg))), C.int(flags))
++ n = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
++ r0, er := C.nsendmsg(C.int(s), C.uintptr_t(uintptr(unsafe.Pointer(msg))), C.int(flags))
++ n = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func munmap(addr uintptr, length uintptr) (err error) {
++ r0, er := C.munmap(C.uintptr_t(addr), C.uintptr_t(length))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Madvise(b []byte, advice int) (err error) {
++ var _p0 *byte
++ if len(b) > 0 {
++ _p0 = &b[0]
++ }
++ var _p1 int
++ _p1 = len(b)
++ r0, er := C.madvise(C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1), C.int(advice))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Mprotect(b []byte, prot int) (err error) {
++ var _p0 *byte
++ if len(b) > 0 {
++ _p0 = &b[0]
++ }
++ var _p1 int
++ _p1 = len(b)
++ r0, er := C.mprotect(C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1), C.int(prot))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Mlock(b []byte) (err error) {
++ var _p0 *byte
++ if len(b) > 0 {
++ _p0 = &b[0]
++ }
++ var _p1 int
++ _p1 = len(b)
++ r0, er := C.mlock(C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Mlockall(flags int) (err error) {
++ r0, er := C.mlockall(C.int(flags))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Msync(b []byte, flags int) (err error) {
++ var _p0 *byte
++ if len(b) > 0 {
++ _p0 = &b[0]
++ }
++ var _p1 int
++ _p1 = len(b)
++ r0, er := C.msync(C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1), C.int(flags))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Munlock(b []byte) (err error) {
++ var _p0 *byte
++ if len(b) > 0 {
++ _p0 = &b[0]
++ }
++ var _p1 int
++ _p1 = len(b)
++ r0, er := C.munlock(C.uintptr_t(uintptr(unsafe.Pointer(_p0))), C.size_t(_p1))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Munlockall() (err error) {
++ r0, er := C.munlockall()
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func pipe(p *[2]_C_int) (err error) {
++ r0, er := C.pipe(C.uintptr_t(uintptr(unsafe.Pointer(p))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, er := C.poll(C.uintptr_t(uintptr(unsafe.Pointer(fds))), C.int(nfds), C.int(timeout))
++ n = int(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func gettimeofday(tv *Timeval, tzp *Timezone) (err error) {
++ r0, er := C.gettimeofday(C.uintptr_t(uintptr(unsafe.Pointer(tv))), C.uintptr_t(uintptr(unsafe.Pointer(tzp))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Time(t *Time_t) (tt Time_t, err error) {
++ r0, er := C.time(C.uintptr_t(uintptr(unsafe.Pointer(t))))
++ tt = Time_t(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Utime(path string, buf *Utimbuf) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(path)))
++ r0, er := C.utime(C.uintptr_t(_p0), C.uintptr_t(uintptr(unsafe.Pointer(buf))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getsystemcfg(label int) (n uint64) {
++ r0, _ := C.getsystemcfg(C.int(label))
++ n = uint64(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func umount(target string) (err error) {
++ _p0 := uintptr(unsafe.Pointer(C.CString(target)))
++ r0, er := C.umount(C.uintptr_t(_p0))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getrlimit(resource int, rlim *Rlimit) (err error) {
++ r0, er := C.getrlimit64(C.int(resource), C.uintptr_t(uintptr(unsafe.Pointer(rlim))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Setrlimit(resource int, rlim *Rlimit) (err error) {
++ r0, er := C.setrlimit64(C.int(resource), C.uintptr_t(uintptr(unsafe.Pointer(rlim))))
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Seek(fd int, offset int64, whence int) (off int64, err error) {
++ r0, er := C.lseek64(C.int(fd), C.longlong(offset), C.int(whence))
++ off = int64(r0)
++ if r0 == -1 && er != nil {
++ err = er
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) {
++ r0, er := C.mmap(C.uintptr_t(addr), C.uintptr_t(length), C.int(prot), C.int(flags), C.int(fd), C.longlong(offset))
++ xaddr = uintptr(r0)
++ if uintptr(r0) == ^uintptr(0) && er != nil {
++ err = er
++ }
++ return
++}
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go
+similarity index 57%
+copy from vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go
+copy to vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go
+index 7b6c2c87..664b293b 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go
+@@ -1,22 +1,23 @@
+-// mksyscall.pl -netbsd -tags netbsd,amd64 syscall_bsd.go syscall_netbsd.go syscall_netbsd_amd64.go
++// go run mksyscall_aix_ppc64.go -aix -tags aix,ppc64 syscall_aix.go syscall_aix_ppc64.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build netbsd,amd64
++// +build aix,ppc64
+
+ package unix
+
+ import (
+- "syscall"
+ "unsafe"
+ )
+
+-var _ syscall.Errno
+-
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
+- n = int(r0)
++func utimes(path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, e1 := callutimes(uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -25,8 +26,13 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func setgroups(ngid int, gid *_Gid_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
++func utimensat(dirfd int, path string, times *[2]Timespec, flag int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, e1 := callutimensat(dirfd, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), flag)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -35,9 +41,12 @@ func setgroups(ngid int, gid *_Gid_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+- wpid = int(r0)
++func getcwd(buf []byte) (err error) {
++ var _p0 *byte
++ if len(buf) > 0 {
++ _p0 = &buf[0]
++ }
++ _, e1 := callgetcwd(uintptr(unsafe.Pointer(_p0)), len(buf))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -47,7 +56,7 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++ r0, e1 := callaccept(s, uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -57,8 +66,13 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
+- _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen))
++func getdirent(fd int, buf []byte) (n int, err error) {
++ var _p0 *byte
++ if len(buf) > 0 {
++ _p0 = &buf[0]
++ }
++ r0, e1 := callgetdirent(fd, uintptr(unsafe.Pointer(_p0)), len(buf))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -67,8 +81,9 @@ func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
+- _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen))
++func wait4(pid Pid_t, status *_C_int, options int, rusage *Rusage) (wpid Pid_t, err error) {
++ r0, e1 := callwait4(int(pid), uintptr(unsafe.Pointer(status)), options, uintptr(unsafe.Pointer(rusage)))
++ wpid = Pid_t(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -77,9 +92,8 @@ func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func socket(domain int, typ int, proto int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto))
+- fd = int(r0)
++func ioctl(fd int, req uint, arg uintptr) (err error) {
++ _, e1 := callioctl(fd, int(req), arg)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -88,8 +102,9 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
+- _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
++func FcntlInt(fd uintptr, cmd int, arg int) (r int, err error) {
++ r0, e1 := callfcntl(fd, cmd, uintptr(arg))
++ r = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -98,8 +113,8 @@ func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
++func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) (err error) {
++ _, e1 := callfcntl(fd, cmd, uintptr(unsafe.Pointer(lk)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -108,8 +123,9 @@ func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr)
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++func fcntl(fd int, cmd int, arg int) (val int, err error) {
++ r0, e1 := callfcntl(uintptr(fd), cmd, uintptr(arg))
++ val = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -118,8 +134,13 @@ func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++func Acct(path string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, e1 := callacct(uintptr(unsafe.Pointer(_p0)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -128,8 +149,13 @@ func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Shutdown(s int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(s), uintptr(how), 0)
++func Chdir(path string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, e1 := callchdir(uintptr(unsafe.Pointer(_p0)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -138,8 +164,13 @@ func Shutdown(s int, how int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
+- _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
++func Chroot(path string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, e1 := callchroot(uintptr(unsafe.Pointer(_p0)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -148,15 +179,8 @@ func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
+- n = int(r0)
++func Close(fd int) (err error) {
++ _, e1 := callclose(fd)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -165,14 +189,9 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
++func Dup(oldfd int) (fd int, err error) {
++ r0, e1 := calldup(oldfd)
++ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -181,9 +200,20 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
+- n = int(r0)
++func Exit(code int) {
++ callexit(code)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, e1 := callfaccessat(dirfd, uintptr(unsafe.Pointer(_p0)), mode, flags)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -192,9 +222,8 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
+- n = int(r0)
++func Fchdir(fd int) (err error) {
++ _, e1 := callfchdir(fd)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -203,9 +232,8 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_KEVENT, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
+- n = int(r0)
++func Fchmod(fd int, mode uint32) (err error) {
++ _, e1 := callfchmod(fd, mode)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -214,14 +242,13 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
++func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
+ }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ _, e1 := callfchmodat(dirfd, uintptr(unsafe.Pointer(_p0)), mode, flags)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -230,13 +257,13 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr)
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func utimes(path string, timeval *[2]Timeval) (err error) {
++func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
++ _, e1 := callfchownat(dirfd, uintptr(unsafe.Pointer(_p0)), uid, gid, flags)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -245,8 +272,8 @@ func utimes(path string, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func futimes(fd int, timeval *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMES, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
++func Fdatasync(fd int) (err error) {
++ _, e1 := callfdatasync(fd)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -255,9 +282,8 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func Fsync(fd int) (err error) {
++ _, e1 := callfsync(fd)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -266,14 +292,9 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Madvise(b []byte, behav int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(behav))
++func Getpgid(pid int) (pgid int, err error) {
++ r0, e1 := callgetpgid(pid)
++ pgid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -282,56 +303,33 @@ func Madvise(b []byte, behav int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Mlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
++func Getpgrp() (pid int) {
++ r0, _ := callgetpgrp()
++ pid = int(r0)
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
++func Getpid() (pid int) {
++ r0, _ := callgetpid()
++ pid = int(r0)
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Mprotect(b []byte, prot int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
++func Getppid() (ppid int) {
++ r0, _ := callgetppid()
++ ppid = int(r0)
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Msync(b []byte, flags int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
++func Getpriority(which int, who int) (prio int, err error) {
++ r0, e1 := callgetpriority(which, who)
++ prio = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -340,14 +338,8 @@ func Msync(b []byte, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Munlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
++func Getrusage(who int, rusage *Rusage) (err error) {
++ _, e1 := callgetrusage(who, uintptr(unsafe.Pointer(rusage)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -356,8 +348,9 @@ func Munlock(b []byte) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
++func Getsid(pid int) (sid int, err error) {
++ r0, e1 := callgetsid(pid)
++ sid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -366,10 +359,8 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe() (fd1 int, fd2 int, err error) {
+- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
+- fd1 = int(r0)
+- fd2 = int(r1)
++func Kill(pid int, sig Signal) (err error) {
++ _, e1 := callkill(pid, int(sig))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -378,14 +369,12 @@ func pipe() (fd1 int, fd2 int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func getdents(fd int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
++func Klogctl(typ int, buf []byte) (n int, err error) {
++ var _p0 *byte
+ if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
++ _p0 = &buf[0]
+ }
+- r0, _, e1 := Syscall(SYS_GETDENTS, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
++ r0, e1 := callsyslog(typ, uintptr(unsafe.Pointer(_p0)), len(buf))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -395,13 +384,13 @@ func getdents(fd int, buf []byte) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Access(path string, mode uint32) (err error) {
++func Mkdir(dirfd int, path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, e1 := callmkdir(dirfd, uintptr(unsafe.Pointer(_p0)), mode)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -410,8 +399,13 @@ func Access(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
++func Mkdirat(dirfd int, path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, e1 := callmkdirat(dirfd, uintptr(unsafe.Pointer(_p0)), mode)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -420,13 +414,13 @@ func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Chdir(path string) (err error) {
++func Mkfifo(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, e1 := callmkfifo(uintptr(unsafe.Pointer(_p0)), mode)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -435,13 +429,13 @@ func Chdir(path string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Chflags(path string, flags int) (err error) {
++func Mknod(path string, mode uint32, dev int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ _, e1 := callmknod(uintptr(unsafe.Pointer(_p0)), mode, dev)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -450,13 +444,13 @@ func Chflags(path string, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Chmod(path string, mode uint32) (err error) {
++func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, e1 := callmknodat(dirfd, uintptr(unsafe.Pointer(_p0)), mode, dev)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -465,13 +459,8 @@ func Chmod(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Chown(path string, uid int, gid int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
++func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
++ _, e1 := callnanosleep(uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -480,13 +469,14 @@ func Chown(path string, uid int, gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Chroot(path string) (err error) {
++func Open(path string, mode int, perm uint32) (fd int, err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ r0, e1 := callopen64(uintptr(unsafe.Pointer(_p0)), mode, perm)
++ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -495,8 +485,14 @@ func Chroot(path string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
++func Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ r0, e1 := callopenat(dirfd, uintptr(unsafe.Pointer(_p0)), flags, mode)
++ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -505,9 +501,13 @@ func Close(fd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Dup(fd int) (nfd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0)
+- nfd = int(r0)
++func read(fd int, p []byte) (n int, err error) {
++ var _p0 *byte
++ if len(p) > 0 {
++ _p0 = &p[0]
++ }
++ r0, e1 := callread(fd, uintptr(unsafe.Pointer(_p0)), len(p))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -516,8 +516,18 @@ func Dup(fd int) (nfd int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Dup2(from int, to int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0)
++func Readlink(path string, buf []byte) (n int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ if len(buf) > 0 {
++ _p1 = &buf[0]
++ }
++ r0, e1 := callreadlink(uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), len(buf))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -526,15 +536,32 @@ func Dup2(from int, to int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Exit(code int) {
+- Syscall(SYS_EXIT, uintptr(code), 0, 0)
++func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, e1 := callrenameat(olddirfd, uintptr(unsafe.Pointer(_p0)), newdirfd, uintptr(unsafe.Pointer(_p1)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
++func Setdomainname(p []byte) (err error) {
++ var _p0 *byte
++ if len(p) > 0 {
++ _p0 = &p[0]
++ }
++ _, e1 := callsetdomainname(uintptr(unsafe.Pointer(_p0)), len(p))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -543,8 +570,12 @@ func Fchdir(fd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fchflags(fd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHFLAGS, uintptr(fd), uintptr(flags), 0)
++func Sethostname(p []byte) (err error) {
++ var _p0 *byte
++ if len(p) > 0 {
++ _p0 = &p[0]
++ }
++ _, e1 := callsethostname(uintptr(unsafe.Pointer(_p0)), len(p))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -553,8 +584,8 @@ func Fchflags(fd int, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
++func Setpgid(pid int, pgid int) (err error) {
++ _, e1 := callsetpgid(pid, pgid)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -563,8 +594,9 @@ func Fchmod(fd int, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fchown(fd int, uid int, gid int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
++func Setsid() (pid int, err error) {
++ r0, e1 := callsetsid()
++ pid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -573,8 +605,8 @@ func Fchown(fd int, uid int, gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
++func Settimeofday(tv *Timeval) (err error) {
++ _, e1 := callsettimeofday(uintptr(unsafe.Pointer(tv)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -583,9 +615,8 @@ func Flock(fd int, how int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fpathconf(fd int, name int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FPATHCONF, uintptr(fd), uintptr(name), 0)
+- val = int(r0)
++func Setuid(uid int) (err error) {
++ _, e1 := callsetuid(uid)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -594,8 +625,8 @@ func Fpathconf(fd int, name int) (val int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++func Setgid(uid int) (err error) {
++ _, e1 := callsetgid(uid)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -604,8 +635,8 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
++func Setpriority(which int, who int, prio int) (err error) {
++ _, e1 := callsetpriority(which, who, prio)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -614,8 +645,13 @@ func Fsync(fd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Ftruncate(fd int, length int64) (err error) {
+- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), 0, uintptr(length))
++func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, e1 := callstatx(dirfd, uintptr(unsafe.Pointer(_p0)), flags, mask, uintptr(unsafe.Pointer(stat)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -624,33 +660,34 @@ func Ftruncate(fd int, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
+- egid = int(r0)
++func Sync() {
++ callsync()
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Geteuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
+- uid = int(r0)
++func Times(tms *Tms) (ticks uintptr, err error) {
++ r0, e1 := calltimes(uintptr(unsafe.Pointer(tms)))
++ ticks = uintptr(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
+- gid = int(r0)
++func Umask(mask int) (oldmask int) {
++ r0, _ := callumask(mask)
++ oldmask = int(r0)
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
+- pgid = int(r0)
++func Uname(buf *Utsname) (err error) {
++ _, e1 := calluname(uintptr(unsafe.Pointer(buf)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -659,33 +696,53 @@ func Getpgid(pid int) (pgid int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getpgrp() (pgrp int) {
+- r0, _, _ := RawSyscall(SYS_GETPGRP, 0, 0, 0)
+- pgrp = int(r0)
++func Unlink(path string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, e1 := callunlink(uintptr(unsafe.Pointer(_p0)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
+- pid = int(r0)
++func Unlinkat(dirfd int, path string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, e1 := callunlinkat(dirfd, uintptr(unsafe.Pointer(_p0)), flags)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
+- ppid = int(r0)
++func Ustat(dev int, ubuf *Ustat_t) (err error) {
++ _, e1 := callustat(dev, uintptr(unsafe.Pointer(ubuf)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
+- prio = int(r0)
++func write(fd int, p []byte) (n int, err error) {
++ var _p0 *byte
++ if len(p) > 0 {
++ _p0 = &p[0]
++ }
++ r0, e1 := callwrite(fd, uintptr(unsafe.Pointer(_p0)), len(p))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -694,8 +751,9 @@ func Getpriority(which int, who int) (prio int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getrlimit(which int, lim *Rlimit) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
++func readlen(fd int, p *byte, np int) (n int, err error) {
++ r0, e1 := callread(fd, uintptr(unsafe.Pointer(p)), np)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -704,8 +762,9 @@ func Getrlimit(which int, lim *Rlimit) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
++func writelen(fd int, p *byte, np int) (n int, err error) {
++ r0, e1 := callwrite(fd, uintptr(unsafe.Pointer(p)), np)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -714,9 +773,8 @@ func Getrusage(who int, rusage *Rusage) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
+- sid = int(r0)
++func Dup2(oldfd int, newfd int) (err error) {
++ _, e1 := calldup2(oldfd, newfd)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -725,8 +783,8 @@ func Getsid(pid int) (sid int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Gettimeofday(tv *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
++func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
++ _, e1 := callposix_fadvise64(fd, offset, length, advice)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -735,24 +793,33 @@ func Gettimeofday(tv *Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
+- uid = int(r0)
++func Fchown(fd int, uid int, gid int) (err error) {
++ _, e1 := callfchown(fd, uid, gid)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Issetugid() (tainted bool) {
+- r0, _, _ := Syscall(SYS_ISSETUGID, 0, 0, 0)
+- tainted = bool(r0 != 0)
++func fstat(fd int, stat *Stat_t) (err error) {
++ _, e1 := callfstat(fd, uintptr(unsafe.Pointer(stat)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Kill(pid int, signum syscall.Signal) (err error) {
+- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), 0)
++func fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, e1 := callfstatat(dirfd, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), flags)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -761,9 +828,8 @@ func Kill(pid int, signum syscall.Signal) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Kqueue() (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0)
+- fd = int(r0)
++func Fstatfs(fd int, buf *Statfs_t) (err error) {
++ _, e1 := callfstatfs(fd, uintptr(unsafe.Pointer(buf)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -772,13 +838,8 @@ func Kqueue() (fd int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Lchown(path string, uid int, gid int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
++func Ftruncate(fd int, length int64) (err error) {
++ _, e1 := callftruncate(fd, length)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -787,18 +848,45 @@ func Lchown(path string, uid int, gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Link(path string, link string) (err error) {
++func Getegid() (egid int) {
++ r0, _ := callgetegid()
++ egid = int(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Geteuid() (euid int) {
++ r0, _ := callgeteuid()
++ euid = int(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getgid() (gid int) {
++ r0, _ := callgetgid()
++ gid = int(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getuid() (uid int) {
++ r0, _ := callgetuid()
++ uid = int(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Lchown(path string, uid int, gid int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(link)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
++ _, e1 := calllchown(uintptr(unsafe.Pointer(_p0)), uid, gid)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -807,8 +895,8 @@ func Link(path string, link string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Listen(s int, backlog int) (err error) {
+- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
++func Listen(s int, n int) (err error) {
++ _, e1 := calllisten(s, n)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -817,13 +905,13 @@ func Listen(s int, backlog int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Lstat(path string, stat *Stat_t) (err error) {
++func lstat(path string, stat *Stat_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ _, e1 := calllstat(uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -832,13 +920,8 @@ func Lstat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Mkdir(path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++func Pause() (err error) {
++ _, e1 := callpause()
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -847,13 +930,13 @@ func Mkdir(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Mkfifo(path string, mode uint32) (err error) {
++func Pread(fd int, p []byte, offset int64) (n int, err error) {
+ var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
++ if len(p) > 0 {
++ _p0 = &p[0]
+ }
+- _, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ r0, e1 := callpread64(fd, uintptr(unsafe.Pointer(_p0)), len(p), offset)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -862,13 +945,13 @@ func Mkfifo(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Mknod(path string, mode uint32, dev int) (err error) {
++func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+ var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
++ if len(p) > 0 {
++ _p0 = &p[0]
+ }
+- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
++ r0, e1 := callpwrite64(fd, uintptr(unsafe.Pointer(_p0)), len(p), offset)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -877,8 +960,9 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, e1 := callselect(nfd, uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -887,14 +971,9 @@ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Open(path string, mode int, perm uint32) (fd int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_OPEN, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
+- fd = int(r0)
++func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
++ r0, e1 := callpselect(nfd, uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -903,14 +982,8 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Pathconf(path string, name int) (val int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
+- val = int(r0)
++func Setregid(rgid int, egid int) (err error) {
++ _, e1 := callsetregid(rgid, egid)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -919,15 +992,8 @@ func Pathconf(path string, name int) (val int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Pread(fd int, p []byte, offset int64) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0)
+- n = int(r0)
++func Setreuid(ruid int, euid int) (err error) {
++ _, e1 := callsetreuid(ruid, euid)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -936,15 +1002,8 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0)
+- n = int(r0)
++func Shutdown(fd int, how int) (err error) {
++ _, e1 := callshutdown(fd, how)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -953,15 +1012,9 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func read(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
++func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) {
++ r0, e1 := callsplice(rfd, uintptr(unsafe.Pointer(roff)), wfd, uintptr(unsafe.Pointer(woff)), len, flags)
++ n = int64(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -970,20 +1023,13 @@ func read(fd int, p []byte) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Readlink(path string, buf []byte) (n int, err error) {
++func stat(path string, statptr *Stat_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- var _p1 unsafe.Pointer
+- if len(buf) > 0 {
+- _p1 = unsafe.Pointer(&buf[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
+- n = int(r0)
++ _, e1 := callstat(uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(statptr)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -992,18 +1038,13 @@ func Readlink(path string, buf []byte) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Rename(from string, to string) (err error) {
++func Statfs(path string, buf *Statfs_t) (err error) {
+ var _p0 *byte
+- _p0, err = BytePtrFromString(from)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(to)
++ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
++ _, e1 := callstatfs(uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1012,13 +1053,13 @@ func Rename(from string, to string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Revoke(path string) (err error) {
++func Truncate(path string, length int64) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, e1 := calltruncate(uintptr(unsafe.Pointer(_p0)), length)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1027,13 +1068,8 @@ func Revoke(path string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Rmdir(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
++func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
++ _, e1 := callbind(s, uintptr(addr), uintptr(addrlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1042,9 +1078,8 @@ func Rmdir(path string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+- r0, _, e1 := Syscall6(SYS_LSEEK, uintptr(fd), 0, uintptr(offset), uintptr(whence), 0, 0)
+- newoffset = int64(r0)
++func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
++ _, e1 := callconnect(s, uintptr(addr), uintptr(addrlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1053,8 +1088,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func getgroups(n int, list *_Gid_t) (nn int, err error) {
++ r0, e1 := callgetgroups(n, uintptr(unsafe.Pointer(list)))
++ nn = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1063,8 +1099,8 @@ func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setegid(egid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETEGID, uintptr(egid), 0, 0)
++func setgroups(n int, list *_Gid_t) (err error) {
++ _, e1 := callsetgroups(n, uintptr(unsafe.Pointer(list)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1073,8 +1109,8 @@ func Setegid(egid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Seteuid(euid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETEUID, uintptr(euid), 0, 0)
++func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
++ _, e1 := callgetsockopt(s, level, name, uintptr(val), uintptr(unsafe.Pointer(vallen)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1083,8 +1119,8 @@ func Seteuid(euid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setgid(gid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETGID, uintptr(gid), 0, 0)
++func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
++ _, e1 := callsetsockopt(s, level, name, uintptr(val), vallen)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1093,8 +1129,9 @@ func Setgid(gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
++func socket(domain int, typ int, proto int) (fd int, err error) {
++ r0, e1 := callsocket(domain, typ, proto)
++ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1103,8 +1140,8 @@ func Setpgid(pid int, pgid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
++func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
++ _, e1 := callsocketpair(domain, typ, proto, uintptr(unsafe.Pointer(fd)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1113,8 +1150,8 @@ func Setpriority(which int, who int, prio int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setregid(rgid int, egid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
++func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
++ _, e1 := callgetpeername(fd, uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1123,8 +1160,8 @@ func Setregid(rgid int, egid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setreuid(ruid int, euid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
++func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
++ _, e1 := callgetsockname(fd, uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1133,8 +1170,13 @@ func Setreuid(ruid int, euid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setrlimit(which int, lim *Rlimit) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
++func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
++ var _p0 *byte
++ if len(p) > 0 {
++ _p0 = &p[0]
++ }
++ r0, e1 := callrecvfrom(fd, uintptr(unsafe.Pointer(_p0)), len(p), flags, uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1143,9 +1185,12 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+- pid = int(r0)
++func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
++ var _p0 *byte
++ if len(buf) > 0 {
++ _p0 = &buf[0]
++ }
++ _, e1 := callsendto(s, uintptr(unsafe.Pointer(_p0)), len(buf), flags, uintptr(to), uintptr(addrlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1154,8 +1199,9 @@ func Setsid() (pid int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Settimeofday(tp *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
++func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
++ r0, e1 := callnrecvmsg(s, uintptr(unsafe.Pointer(msg)), flags)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1164,8 +1210,9 @@ func Settimeofday(tp *Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setuid(uid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETUID, uintptr(uid), 0, 0)
++func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
++ r0, e1 := callnsendmsg(s, uintptr(unsafe.Pointer(msg)), flags)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1174,13 +1221,8 @@ func Setuid(uid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++func munmap(addr uintptr, length uintptr) (err error) {
++ _, e1 := callmunmap(addr, length)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1189,18 +1231,12 @@ func Stat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Symlink(path string, link string) (err error) {
++func Madvise(b []byte, advice int) (err error) {
+ var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(link)
+- if err != nil {
+- return
++ if len(b) > 0 {
++ _p0 = &b[0]
+ }
+- _, _, e1 := Syscall(SYS_SYMLINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
++ _, e1 := callmadvise(uintptr(unsafe.Pointer(_p0)), len(b), advice)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1209,8 +1245,12 @@ func Symlink(path string, link string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Sync() (err error) {
+- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
++func Mprotect(b []byte, prot int) (err error) {
++ var _p0 *byte
++ if len(b) > 0 {
++ _p0 = &b[0]
++ }
++ _, e1 := callmprotect(uintptr(unsafe.Pointer(_p0)), len(b), prot)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1219,13 +1259,12 @@ func Sync() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Truncate(path string, length int64) (err error) {
++func Mlock(b []byte) (err error) {
+ var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
++ if len(b) > 0 {
++ _p0 = &b[0]
+ }
+- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), 0, uintptr(length))
++ _, e1 := callmlock(uintptr(unsafe.Pointer(_p0)), len(b))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1234,21 +1273,22 @@ func Truncate(path string, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Umask(newmask int) (oldmask int) {
+- r0, _, _ := Syscall(SYS_UMASK, uintptr(newmask), 0, 0)
+- oldmask = int(r0)
++func Mlockall(flags int) (err error) {
++ _, e1 := callmlockall(flags)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Unlink(path string) (err error) {
++func Msync(b []byte, flags int) (err error) {
+ var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
++ if len(b) > 0 {
++ _p0 = &b[0]
+ }
+- _, _, e1 := Syscall(SYS_UNLINK, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, e1 := callmsync(uintptr(unsafe.Pointer(_p0)), len(b), flags)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1257,13 +1297,12 @@ func Unlink(path string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Unmount(path string, flags int) (err error) {
++func Munlock(b []byte) (err error) {
+ var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
++ if len(b) > 0 {
++ _p0 = &b[0]
+ }
+- _, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ _, e1 := callmunlock(uintptr(unsafe.Pointer(_p0)), len(b))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1272,15 +1311,8 @@ func Unmount(path string, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func write(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
++func Munlockall() (err error) {
++ _, e1 := callmunlockall()
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1289,9 +1321,8 @@ func write(fd int, p []byte) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) {
+- r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), 0, uintptr(pos), 0, 0)
+- ret = uintptr(r0)
++func pipe(p *[2]_C_int) (err error) {
++ _, e1 := callpipe(uintptr(unsafe.Pointer(p)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1300,8 +1331,9 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, e1 := callpoll(uintptr(unsafe.Pointer(fds)), nfds, timeout)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1310,9 +1342,8 @@ func munmap(addr uintptr, length uintptr) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
+- n = int(r0)
++func gettimeofday(tv *Timeval, tzp *Timezone) (err error) {
++ _, e1 := callgettimeofday(uintptr(unsafe.Pointer(tv)), uintptr(unsafe.Pointer(tzp)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1321,9 +1352,9 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
+- n = int(r0)
++func Time(t *Time_t) (tt Time_t, err error) {
++ r0, e1 := calltime(uintptr(unsafe.Pointer(t)))
++ tt = Time_t(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1332,13 +1363,78 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
++func Utime(path string, buf *Utimbuf) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
++ _, e1 := callutime(uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getsystemcfg(label int) (n uint64) {
++ r0, _ := callgetsystemcfg(label)
++ n = uint64(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func umount(target string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(target)
++ if err != nil {
++ return
++ }
++ _, e1 := callumount(uintptr(unsafe.Pointer(_p0)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getrlimit(resource int, rlim *Rlimit) (err error) {
++ _, e1 := callgetrlimit(resource, uintptr(unsafe.Pointer(rlim)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Setrlimit(resource int, rlim *Rlimit) (err error) {
++ _, e1 := callsetrlimit(resource, uintptr(unsafe.Pointer(rlim)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Seek(fd int, offset int64, whence int) (off int64, err error) {
++ r0, e1 := calllseek(fd, offset, whence)
++ off = int64(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) {
++ r0, e1 := callmmap64(addr, length, prot, flags, fd, offset)
++ xaddr = uintptr(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go
+new file mode 100644
+index 00000000..4b3a8ad7
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go
+@@ -0,0 +1,1192 @@
++// go run mksyscall_aix_ppc64.go -aix -tags aix,ppc64 syscall_aix.go syscall_aix_ppc64.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build aix,ppc64
++// +build !gccgo
++
++package unix
++
++import (
++ "unsafe"
++)
++
++//go:cgo_import_dynamic libc_utimes utimes "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_utimensat utimensat "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getcwd getcwd "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_accept accept "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getdirent getdirent "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_wait4 wait4 "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_ioctl ioctl "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_fcntl fcntl "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_acct acct "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_chdir chdir "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_chroot chroot "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_close close "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_dup dup "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_exit exit "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_faccessat faccessat "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_fchdir fchdir "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_fchmod fchmod "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_fchmodat fchmodat "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_fchownat fchownat "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_fdatasync fdatasync "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_fsync fsync "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getpgid getpgid "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getpgrp getpgrp "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getpid getpid "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getppid getppid "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getpriority getpriority "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getrusage getrusage "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getsid getsid "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_kill kill "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_syslog syslog "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_mkdir mkdir "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_mkdirat mkdirat "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_mkfifo mkfifo "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_mknod mknod "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_mknodat mknodat "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_nanosleep nanosleep "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_open64 open64 "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_openat openat "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_read read "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_readlink readlink "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_renameat renameat "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_setdomainname setdomainname "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_sethostname sethostname "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_setpgid setpgid "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_setsid setsid "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_settimeofday settimeofday "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_setuid setuid "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_setgid setgid "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_setpriority setpriority "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_statx statx "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_sync sync "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_times times "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_umask umask "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_uname uname "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_unlink unlink "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_unlinkat unlinkat "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_ustat ustat "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_write write "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_dup2 dup2 "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_posix_fadvise64 posix_fadvise64 "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_fchown fchown "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_fstat fstat "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_fstatat fstatat "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_fstatfs fstatfs "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_ftruncate ftruncate "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getegid getegid "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_geteuid geteuid "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getgid getgid "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getuid getuid "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_lchown lchown "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_listen listen "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_lstat lstat "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_pause pause "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_pread64 pread64 "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_pwrite64 pwrite64 "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_select select "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_pselect pselect "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_setregid setregid "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_setreuid setreuid "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_shutdown shutdown "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_splice splice "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_stat stat "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_statfs statfs "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_truncate truncate "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_bind bind "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_connect connect "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getgroups getgroups "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_setgroups setgroups "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getsockopt getsockopt "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_setsockopt setsockopt "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_socket socket "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_socketpair socketpair "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getpeername getpeername "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getsockname getsockname "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_recvfrom recvfrom "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_sendto sendto "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_nrecvmsg nrecvmsg "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_nsendmsg nsendmsg "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_munmap munmap "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_madvise madvise "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_mprotect mprotect "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_mlock mlock "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_mlockall mlockall "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_msync msync "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_munlock munlock "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_munlockall munlockall "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_pipe pipe "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_poll poll "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_gettimeofday gettimeofday "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_time time "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_utime utime "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getsystemcfg getsystemcfg "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_umount umount "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_getrlimit getrlimit "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_setrlimit setrlimit "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_lseek lseek "libc.a/shr_64.o"
++//go:cgo_import_dynamic libc_mmap64 mmap64 "libc.a/shr_64.o"
++
++//go:linkname libc_utimes libc_utimes
++//go:linkname libc_utimensat libc_utimensat
++//go:linkname libc_getcwd libc_getcwd
++//go:linkname libc_accept libc_accept
++//go:linkname libc_getdirent libc_getdirent
++//go:linkname libc_wait4 libc_wait4
++//go:linkname libc_ioctl libc_ioctl
++//go:linkname libc_fcntl libc_fcntl
++//go:linkname libc_acct libc_acct
++//go:linkname libc_chdir libc_chdir
++//go:linkname libc_chroot libc_chroot
++//go:linkname libc_close libc_close
++//go:linkname libc_dup libc_dup
++//go:linkname libc_exit libc_exit
++//go:linkname libc_faccessat libc_faccessat
++//go:linkname libc_fchdir libc_fchdir
++//go:linkname libc_fchmod libc_fchmod
++//go:linkname libc_fchmodat libc_fchmodat
++//go:linkname libc_fchownat libc_fchownat
++//go:linkname libc_fdatasync libc_fdatasync
++//go:linkname libc_fsync libc_fsync
++//go:linkname libc_getpgid libc_getpgid
++//go:linkname libc_getpgrp libc_getpgrp
++//go:linkname libc_getpid libc_getpid
++//go:linkname libc_getppid libc_getppid
++//go:linkname libc_getpriority libc_getpriority
++//go:linkname libc_getrusage libc_getrusage
++//go:linkname libc_getsid libc_getsid
++//go:linkname libc_kill libc_kill
++//go:linkname libc_syslog libc_syslog
++//go:linkname libc_mkdir libc_mkdir
++//go:linkname libc_mkdirat libc_mkdirat
++//go:linkname libc_mkfifo libc_mkfifo
++//go:linkname libc_mknod libc_mknod
++//go:linkname libc_mknodat libc_mknodat
++//go:linkname libc_nanosleep libc_nanosleep
++//go:linkname libc_open64 libc_open64
++//go:linkname libc_openat libc_openat
++//go:linkname libc_read libc_read
++//go:linkname libc_readlink libc_readlink
++//go:linkname libc_renameat libc_renameat
++//go:linkname libc_setdomainname libc_setdomainname
++//go:linkname libc_sethostname libc_sethostname
++//go:linkname libc_setpgid libc_setpgid
++//go:linkname libc_setsid libc_setsid
++//go:linkname libc_settimeofday libc_settimeofday
++//go:linkname libc_setuid libc_setuid
++//go:linkname libc_setgid libc_setgid
++//go:linkname libc_setpriority libc_setpriority
++//go:linkname libc_statx libc_statx
++//go:linkname libc_sync libc_sync
++//go:linkname libc_times libc_times
++//go:linkname libc_umask libc_umask
++//go:linkname libc_uname libc_uname
++//go:linkname libc_unlink libc_unlink
++//go:linkname libc_unlinkat libc_unlinkat
++//go:linkname libc_ustat libc_ustat
++//go:linkname libc_write libc_write
++//go:linkname libc_dup2 libc_dup2
++//go:linkname libc_posix_fadvise64 libc_posix_fadvise64
++//go:linkname libc_fchown libc_fchown
++//go:linkname libc_fstat libc_fstat
++//go:linkname libc_fstatat libc_fstatat
++//go:linkname libc_fstatfs libc_fstatfs
++//go:linkname libc_ftruncate libc_ftruncate
++//go:linkname libc_getegid libc_getegid
++//go:linkname libc_geteuid libc_geteuid
++//go:linkname libc_getgid libc_getgid
++//go:linkname libc_getuid libc_getuid
++//go:linkname libc_lchown libc_lchown
++//go:linkname libc_listen libc_listen
++//go:linkname libc_lstat libc_lstat
++//go:linkname libc_pause libc_pause
++//go:linkname libc_pread64 libc_pread64
++//go:linkname libc_pwrite64 libc_pwrite64
++//go:linkname libc_select libc_select
++//go:linkname libc_pselect libc_pselect
++//go:linkname libc_setregid libc_setregid
++//go:linkname libc_setreuid libc_setreuid
++//go:linkname libc_shutdown libc_shutdown
++//go:linkname libc_splice libc_splice
++//go:linkname libc_stat libc_stat
++//go:linkname libc_statfs libc_statfs
++//go:linkname libc_truncate libc_truncate
++//go:linkname libc_bind libc_bind
++//go:linkname libc_connect libc_connect
++//go:linkname libc_getgroups libc_getgroups
++//go:linkname libc_setgroups libc_setgroups
++//go:linkname libc_getsockopt libc_getsockopt
++//go:linkname libc_setsockopt libc_setsockopt
++//go:linkname libc_socket libc_socket
++//go:linkname libc_socketpair libc_socketpair
++//go:linkname libc_getpeername libc_getpeername
++//go:linkname libc_getsockname libc_getsockname
++//go:linkname libc_recvfrom libc_recvfrom
++//go:linkname libc_sendto libc_sendto
++//go:linkname libc_nrecvmsg libc_nrecvmsg
++//go:linkname libc_nsendmsg libc_nsendmsg
++//go:linkname libc_munmap libc_munmap
++//go:linkname libc_madvise libc_madvise
++//go:linkname libc_mprotect libc_mprotect
++//go:linkname libc_mlock libc_mlock
++//go:linkname libc_mlockall libc_mlockall
++//go:linkname libc_msync libc_msync
++//go:linkname libc_munlock libc_munlock
++//go:linkname libc_munlockall libc_munlockall
++//go:linkname libc_pipe libc_pipe
++//go:linkname libc_poll libc_poll
++//go:linkname libc_gettimeofday libc_gettimeofday
++//go:linkname libc_time libc_time
++//go:linkname libc_utime libc_utime
++//go:linkname libc_getsystemcfg libc_getsystemcfg
++//go:linkname libc_umount libc_umount
++//go:linkname libc_getrlimit libc_getrlimit
++//go:linkname libc_setrlimit libc_setrlimit
++//go:linkname libc_lseek libc_lseek
++//go:linkname libc_mmap64 libc_mmap64
++
++type syscallFunc uintptr
++
++var (
++ libc_utimes,
++ libc_utimensat,
++ libc_getcwd,
++ libc_accept,
++ libc_getdirent,
++ libc_wait4,
++ libc_ioctl,
++ libc_fcntl,
++ libc_acct,
++ libc_chdir,
++ libc_chroot,
++ libc_close,
++ libc_dup,
++ libc_exit,
++ libc_faccessat,
++ libc_fchdir,
++ libc_fchmod,
++ libc_fchmodat,
++ libc_fchownat,
++ libc_fdatasync,
++ libc_fsync,
++ libc_getpgid,
++ libc_getpgrp,
++ libc_getpid,
++ libc_getppid,
++ libc_getpriority,
++ libc_getrusage,
++ libc_getsid,
++ libc_kill,
++ libc_syslog,
++ libc_mkdir,
++ libc_mkdirat,
++ libc_mkfifo,
++ libc_mknod,
++ libc_mknodat,
++ libc_nanosleep,
++ libc_open64,
++ libc_openat,
++ libc_read,
++ libc_readlink,
++ libc_renameat,
++ libc_setdomainname,
++ libc_sethostname,
++ libc_setpgid,
++ libc_setsid,
++ libc_settimeofday,
++ libc_setuid,
++ libc_setgid,
++ libc_setpriority,
++ libc_statx,
++ libc_sync,
++ libc_times,
++ libc_umask,
++ libc_uname,
++ libc_unlink,
++ libc_unlinkat,
++ libc_ustat,
++ libc_write,
++ libc_dup2,
++ libc_posix_fadvise64,
++ libc_fchown,
++ libc_fstat,
++ libc_fstatat,
++ libc_fstatfs,
++ libc_ftruncate,
++ libc_getegid,
++ libc_geteuid,
++ libc_getgid,
++ libc_getuid,
++ libc_lchown,
++ libc_listen,
++ libc_lstat,
++ libc_pause,
++ libc_pread64,
++ libc_pwrite64,
++ libc_select,
++ libc_pselect,
++ libc_setregid,
++ libc_setreuid,
++ libc_shutdown,
++ libc_splice,
++ libc_stat,
++ libc_statfs,
++ libc_truncate,
++ libc_bind,
++ libc_connect,
++ libc_getgroups,
++ libc_setgroups,
++ libc_getsockopt,
++ libc_setsockopt,
++ libc_socket,
++ libc_socketpair,
++ libc_getpeername,
++ libc_getsockname,
++ libc_recvfrom,
++ libc_sendto,
++ libc_nrecvmsg,
++ libc_nsendmsg,
++ libc_munmap,
++ libc_madvise,
++ libc_mprotect,
++ libc_mlock,
++ libc_mlockall,
++ libc_msync,
++ libc_munlock,
++ libc_munlockall,
++ libc_pipe,
++ libc_poll,
++ libc_gettimeofday,
++ libc_time,
++ libc_utime,
++ libc_getsystemcfg,
++ libc_umount,
++ libc_getrlimit,
++ libc_setrlimit,
++ libc_lseek,
++ libc_mmap64 syscallFunc
++)
++
++// Implemented in runtime/syscall_aix.go.
++func rawSyscall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
++func syscall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callutimes(_p0 uintptr, times uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_utimes)), 2, _p0, times, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callutimensat(dirfd int, _p0 uintptr, times uintptr, flag int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_utimensat)), 4, uintptr(dirfd), _p0, times, uintptr(flag), 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetcwd(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_getcwd)), 2, _p0, uintptr(_lenp0), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callaccept(s int, rsa uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_accept)), 3, uintptr(s), rsa, addrlen, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetdirent(fd int, _p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_getdirent)), 3, uintptr(fd), _p0, uintptr(_lenp0), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callwait4(pid int, status uintptr, options int, rusage uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_wait4)), 4, uintptr(pid), status, uintptr(options), rusage, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callioctl(fd int, req int, arg uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_ioctl)), 3, uintptr(fd), uintptr(req), arg, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfcntl(fd uintptr, cmd int, arg uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fcntl)), 3, fd, uintptr(cmd), arg, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callacct(_p0 uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_acct)), 1, _p0, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callchdir(_p0 uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_chdir)), 1, _p0, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callchroot(_p0 uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_chroot)), 1, _p0, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callclose(fd int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_close)), 1, uintptr(fd), 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calldup(oldfd int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_dup)), 1, uintptr(oldfd), 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callexit(code int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_exit)), 1, uintptr(code), 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfaccessat(dirfd int, _p0 uintptr, mode uint32, flags int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_faccessat)), 4, uintptr(dirfd), _p0, uintptr(mode), uintptr(flags), 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfchdir(fd int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fchdir)), 1, uintptr(fd), 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfchmod(fd int, mode uint32) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fchmod)), 2, uintptr(fd), uintptr(mode), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfchmodat(dirfd int, _p0 uintptr, mode uint32, flags int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fchmodat)), 4, uintptr(dirfd), _p0, uintptr(mode), uintptr(flags), 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfchownat(dirfd int, _p0 uintptr, uid int, gid int, flags int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fchownat)), 5, uintptr(dirfd), _p0, uintptr(uid), uintptr(gid), uintptr(flags), 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfdatasync(fd int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fdatasync)), 1, uintptr(fd), 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfsync(fd int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fsync)), 1, uintptr(fd), 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetpgid(pid int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getpgid)), 1, uintptr(pid), 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetpgrp() (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_getpgrp)), 0, 0, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetpid() (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getpid)), 0, 0, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetppid() (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getppid)), 0, 0, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetpriority(which int, who int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_getpriority)), 2, uintptr(which), uintptr(who), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetrusage(who int, rusage uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getrusage)), 2, uintptr(who), rusage, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetsid(pid int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getsid)), 1, uintptr(pid), 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callkill(pid int, sig int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_kill)), 2, uintptr(pid), uintptr(sig), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsyslog(typ int, _p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_syslog)), 3, uintptr(typ), _p0, uintptr(_lenp0), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmkdir(dirfd int, _p0 uintptr, mode uint32) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mkdir)), 3, uintptr(dirfd), _p0, uintptr(mode), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmkdirat(dirfd int, _p0 uintptr, mode uint32) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mkdirat)), 3, uintptr(dirfd), _p0, uintptr(mode), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmkfifo(_p0 uintptr, mode uint32) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mkfifo)), 2, _p0, uintptr(mode), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmknod(_p0 uintptr, mode uint32, dev int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mknod)), 3, _p0, uintptr(mode), uintptr(dev), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmknodat(dirfd int, _p0 uintptr, mode uint32, dev int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mknodat)), 4, uintptr(dirfd), _p0, uintptr(mode), uintptr(dev), 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callnanosleep(time uintptr, leftover uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_nanosleep)), 2, time, leftover, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callopen64(_p0 uintptr, mode int, perm uint32) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_open64)), 3, _p0, uintptr(mode), uintptr(perm), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callopenat(dirfd int, _p0 uintptr, flags int, mode uint32) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_openat)), 4, uintptr(dirfd), _p0, uintptr(flags), uintptr(mode), 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callread(fd int, _p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_read)), 3, uintptr(fd), _p0, uintptr(_lenp0), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callreadlink(_p0 uintptr, _p1 uintptr, _lenp1 int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_readlink)), 3, _p0, _p1, uintptr(_lenp1), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callrenameat(olddirfd int, _p0 uintptr, newdirfd int, _p1 uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_renameat)), 4, uintptr(olddirfd), _p0, uintptr(newdirfd), _p1, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetdomainname(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_setdomainname)), 2, _p0, uintptr(_lenp0), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsethostname(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_sethostname)), 2, _p0, uintptr(_lenp0), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetpgid(pid int, pgid int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_setpgid)), 2, uintptr(pid), uintptr(pgid), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetsid() (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_setsid)), 0, 0, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsettimeofday(tv uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_settimeofday)), 1, tv, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetuid(uid int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_setuid)), 1, uintptr(uid), 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetgid(uid int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_setgid)), 1, uintptr(uid), 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetpriority(which int, who int, prio int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_setpriority)), 3, uintptr(which), uintptr(who), uintptr(prio), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callstatx(dirfd int, _p0 uintptr, flags int, mask int, stat uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_statx)), 5, uintptr(dirfd), _p0, uintptr(flags), uintptr(mask), stat, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsync() (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_sync)), 0, 0, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calltimes(tms uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_times)), 1, tms, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callumask(mask int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_umask)), 1, uintptr(mask), 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calluname(buf uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_uname)), 1, buf, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callunlink(_p0 uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_unlink)), 1, _p0, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callunlinkat(dirfd int, _p0 uintptr, flags int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_unlinkat)), 3, uintptr(dirfd), _p0, uintptr(flags), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callustat(dev int, ubuf uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_ustat)), 2, uintptr(dev), ubuf, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callwrite(fd int, _p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_write)), 3, uintptr(fd), _p0, uintptr(_lenp0), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calldup2(oldfd int, newfd int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_dup2)), 2, uintptr(oldfd), uintptr(newfd), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callposix_fadvise64(fd int, offset int64, length int64, advice int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_posix_fadvise64)), 4, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfchown(fd int, uid int, gid int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fchown)), 3, uintptr(fd), uintptr(uid), uintptr(gid), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfstat(fd int, stat uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fstat)), 2, uintptr(fd), stat, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfstatat(dirfd int, _p0 uintptr, stat uintptr, flags int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fstatat)), 4, uintptr(dirfd), _p0, stat, uintptr(flags), 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfstatfs(fd int, buf uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fstatfs)), 2, uintptr(fd), buf, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callftruncate(fd int, length int64) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_ftruncate)), 2, uintptr(fd), uintptr(length), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetegid() (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getegid)), 0, 0, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgeteuid() (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_geteuid)), 0, 0, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetgid() (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getgid)), 0, 0, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetuid() (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getuid)), 0, 0, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calllchown(_p0 uintptr, uid int, gid int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_lchown)), 3, _p0, uintptr(uid), uintptr(gid), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calllisten(s int, n int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_listen)), 2, uintptr(s), uintptr(n), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calllstat(_p0 uintptr, stat uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_lstat)), 2, _p0, stat, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callpause() (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_pause)), 0, 0, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callpread64(fd int, _p0 uintptr, _lenp0 int, offset int64) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_pread64)), 4, uintptr(fd), _p0, uintptr(_lenp0), uintptr(offset), 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callpwrite64(fd int, _p0 uintptr, _lenp0 int, offset int64) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_pwrite64)), 4, uintptr(fd), _p0, uintptr(_lenp0), uintptr(offset), 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callselect(nfd int, r uintptr, w uintptr, e uintptr, timeout uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_select)), 5, uintptr(nfd), r, w, e, timeout, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callpselect(nfd int, r uintptr, w uintptr, e uintptr, timeout uintptr, sigmask uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_pselect)), 6, uintptr(nfd), r, w, e, timeout, sigmask)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetregid(rgid int, egid int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_setregid)), 2, uintptr(rgid), uintptr(egid), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetreuid(ruid int, euid int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_setreuid)), 2, uintptr(ruid), uintptr(euid), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callshutdown(fd int, how int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_shutdown)), 2, uintptr(fd), uintptr(how), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsplice(rfd int, roff uintptr, wfd int, woff uintptr, len int, flags int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_splice)), 6, uintptr(rfd), roff, uintptr(wfd), woff, uintptr(len), uintptr(flags))
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callstat(_p0 uintptr, statptr uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_stat)), 2, _p0, statptr, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callstatfs(_p0 uintptr, buf uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_statfs)), 2, _p0, buf, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calltruncate(_p0 uintptr, length int64) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_truncate)), 2, _p0, uintptr(length), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callbind(s int, addr uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_bind)), 3, uintptr(s), addr, addrlen, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callconnect(s int, addr uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_connect)), 3, uintptr(s), addr, addrlen, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetgroups(n int, list uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getgroups)), 2, uintptr(n), list, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetgroups(n int, list uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_setgroups)), 2, uintptr(n), list, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetsockopt(s int, level int, name int, val uintptr, vallen uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_getsockopt)), 5, uintptr(s), uintptr(level), uintptr(name), val, vallen, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetsockopt(s int, level int, name int, val uintptr, vallen uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_setsockopt)), 5, uintptr(s), uintptr(level), uintptr(name), val, vallen, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsocket(domain int, typ int, proto int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_socket)), 3, uintptr(domain), uintptr(typ), uintptr(proto), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsocketpair(domain int, typ int, proto int, fd uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_socketpair)), 4, uintptr(domain), uintptr(typ), uintptr(proto), fd, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetpeername(fd int, rsa uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getpeername)), 3, uintptr(fd), rsa, addrlen, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetsockname(fd int, rsa uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getsockname)), 3, uintptr(fd), rsa, addrlen, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callrecvfrom(fd int, _p0 uintptr, _lenp0 int, flags int, from uintptr, fromlen uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_recvfrom)), 6, uintptr(fd), _p0, uintptr(_lenp0), uintptr(flags), from, fromlen)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsendto(s int, _p0 uintptr, _lenp0 int, flags int, to uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_sendto)), 6, uintptr(s), _p0, uintptr(_lenp0), uintptr(flags), to, addrlen)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callnrecvmsg(s int, msg uintptr, flags int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_nrecvmsg)), 3, uintptr(s), msg, uintptr(flags), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callnsendmsg(s int, msg uintptr, flags int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_nsendmsg)), 3, uintptr(s), msg, uintptr(flags), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmunmap(addr uintptr, length uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_munmap)), 2, addr, length, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmadvise(_p0 uintptr, _lenp0 int, advice int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_madvise)), 3, _p0, uintptr(_lenp0), uintptr(advice), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmprotect(_p0 uintptr, _lenp0 int, prot int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mprotect)), 3, _p0, uintptr(_lenp0), uintptr(prot), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmlock(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mlock)), 2, _p0, uintptr(_lenp0), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmlockall(flags int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mlockall)), 1, uintptr(flags), 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmsync(_p0 uintptr, _lenp0 int, flags int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_msync)), 3, _p0, uintptr(_lenp0), uintptr(flags), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmunlock(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_munlock)), 2, _p0, uintptr(_lenp0), 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmunlockall() (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_munlockall)), 0, 0, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callpipe(p uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_pipe)), 1, p, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callpoll(fds uintptr, nfds int, timeout int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_poll)), 3, fds, uintptr(nfds), uintptr(timeout), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgettimeofday(tv uintptr, tzp uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_gettimeofday)), 2, tv, tzp, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calltime(t uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_time)), 1, t, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callutime(_p0 uintptr, buf uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_utime)), 2, _p0, buf, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetsystemcfg(label int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_getsystemcfg)), 1, uintptr(label), 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callumount(_p0 uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_umount)), 1, _p0, 0, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetrlimit(resource int, rlim uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getrlimit)), 2, uintptr(resource), rlim, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetrlimit(resource int, rlim uintptr) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_setrlimit)), 2, uintptr(resource), rlim, 0, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calllseek(fd int, offset int64, whence int) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_lseek)), 3, uintptr(fd), uintptr(offset), uintptr(whence), 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmmap64(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (r1 uintptr, e1 Errno) {
++ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_mmap64)), 6, addr, length, uintptr(prot), uintptr(flags), uintptr(fd), uintptr(offset))
++ return
++}
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go
+new file mode 100644
+index 00000000..cde4dbc5
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go
+@@ -0,0 +1,1070 @@
++// go run mksyscall_aix_ppc64.go -aix -tags aix,ppc64 syscall_aix.go syscall_aix_ppc64.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build aix,ppc64
++// +build gccgo
++
++package unix
++
++/*
++#include <stdint.h>
++int utimes(uintptr_t, uintptr_t);
++int utimensat(int, uintptr_t, uintptr_t, int);
++int getcwd(uintptr_t, size_t);
++int accept(int, uintptr_t, uintptr_t);
++int getdirent(int, uintptr_t, size_t);
++int wait4(int, uintptr_t, int, uintptr_t);
++int ioctl(int, int, uintptr_t);
++int fcntl(uintptr_t, int, uintptr_t);
++int acct(uintptr_t);
++int chdir(uintptr_t);
++int chroot(uintptr_t);
++int close(int);
++int dup(int);
++void exit(int);
++int faccessat(int, uintptr_t, unsigned int, int);
++int fchdir(int);
++int fchmod(int, unsigned int);
++int fchmodat(int, uintptr_t, unsigned int, int);
++int fchownat(int, uintptr_t, int, int, int);
++int fdatasync(int);
++int fsync(int);
++int getpgid(int);
++int getpgrp();
++int getpid();
++int getppid();
++int getpriority(int, int);
++int getrusage(int, uintptr_t);
++int getsid(int);
++int kill(int, int);
++int syslog(int, uintptr_t, size_t);
++int mkdir(int, uintptr_t, unsigned int);
++int mkdirat(int, uintptr_t, unsigned int);
++int mkfifo(uintptr_t, unsigned int);
++int mknod(uintptr_t, unsigned int, int);
++int mknodat(int, uintptr_t, unsigned int, int);
++int nanosleep(uintptr_t, uintptr_t);
++int open64(uintptr_t, int, unsigned int);
++int openat(int, uintptr_t, int, unsigned int);
++int read(int, uintptr_t, size_t);
++int readlink(uintptr_t, uintptr_t, size_t);
++int renameat(int, uintptr_t, int, uintptr_t);
++int setdomainname(uintptr_t, size_t);
++int sethostname(uintptr_t, size_t);
++int setpgid(int, int);
++int setsid();
++int settimeofday(uintptr_t);
++int setuid(int);
++int setgid(int);
++int setpriority(int, int, int);
++int statx(int, uintptr_t, int, int, uintptr_t);
++int sync();
++uintptr_t times(uintptr_t);
++int umask(int);
++int uname(uintptr_t);
++int unlink(uintptr_t);
++int unlinkat(int, uintptr_t, int);
++int ustat(int, uintptr_t);
++int write(int, uintptr_t, size_t);
++int dup2(int, int);
++int posix_fadvise64(int, long long, long long, int);
++int fchown(int, int, int);
++int fstat(int, uintptr_t);
++int fstatat(int, uintptr_t, uintptr_t, int);
++int fstatfs(int, uintptr_t);
++int ftruncate(int, long long);
++int getegid();
++int geteuid();
++int getgid();
++int getuid();
++int lchown(uintptr_t, int, int);
++int listen(int, int);
++int lstat(uintptr_t, uintptr_t);
++int pause();
++int pread64(int, uintptr_t, size_t, long long);
++int pwrite64(int, uintptr_t, size_t, long long);
++#define c_select select
++int select(int, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
++int pselect(int, uintptr_t, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
++int setregid(int, int);
++int setreuid(int, int);
++int shutdown(int, int);
++long long splice(int, uintptr_t, int, uintptr_t, int, int);
++int stat(uintptr_t, uintptr_t);
++int statfs(uintptr_t, uintptr_t);
++int truncate(uintptr_t, long long);
++int bind(int, uintptr_t, uintptr_t);
++int connect(int, uintptr_t, uintptr_t);
++int getgroups(int, uintptr_t);
++int setgroups(int, uintptr_t);
++int getsockopt(int, int, int, uintptr_t, uintptr_t);
++int setsockopt(int, int, int, uintptr_t, uintptr_t);
++int socket(int, int, int);
++int socketpair(int, int, int, uintptr_t);
++int getpeername(int, uintptr_t, uintptr_t);
++int getsockname(int, uintptr_t, uintptr_t);
++int recvfrom(int, uintptr_t, size_t, int, uintptr_t, uintptr_t);
++int sendto(int, uintptr_t, size_t, int, uintptr_t, uintptr_t);
++int nrecvmsg(int, uintptr_t, int);
++int nsendmsg(int, uintptr_t, int);
++int munmap(uintptr_t, uintptr_t);
++int madvise(uintptr_t, size_t, int);
++int mprotect(uintptr_t, size_t, int);
++int mlock(uintptr_t, size_t);
++int mlockall(int);
++int msync(uintptr_t, size_t, int);
++int munlock(uintptr_t, size_t);
++int munlockall();
++int pipe(uintptr_t);
++int poll(uintptr_t, int, int);
++int gettimeofday(uintptr_t, uintptr_t);
++int time(uintptr_t);
++int utime(uintptr_t, uintptr_t);
++unsigned long long getsystemcfg(int);
++int umount(uintptr_t);
++int getrlimit(int, uintptr_t);
++int setrlimit(int, uintptr_t);
++long long lseek(int, long long, int);
++uintptr_t mmap64(uintptr_t, uintptr_t, int, int, int, long long);
++
++*/
++import "C"
++import (
++ "syscall"
++)
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callutimes(_p0 uintptr, times uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.utimes(C.uintptr_t(_p0), C.uintptr_t(times)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callutimensat(dirfd int, _p0 uintptr, times uintptr, flag int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.utimensat(C.int(dirfd), C.uintptr_t(_p0), C.uintptr_t(times), C.int(flag)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetcwd(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getcwd(C.uintptr_t(_p0), C.size_t(_lenp0)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callaccept(s int, rsa uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.accept(C.int(s), C.uintptr_t(rsa), C.uintptr_t(addrlen)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetdirent(fd int, _p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getdirent(C.int(fd), C.uintptr_t(_p0), C.size_t(_lenp0)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callwait4(pid int, status uintptr, options int, rusage uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.wait4(C.int(pid), C.uintptr_t(status), C.int(options), C.uintptr_t(rusage)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callioctl(fd int, req int, arg uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.ioctl(C.int(fd), C.int(req), C.uintptr_t(arg)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfcntl(fd uintptr, cmd int, arg uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.fcntl(C.uintptr_t(fd), C.int(cmd), C.uintptr_t(arg)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callacct(_p0 uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.acct(C.uintptr_t(_p0)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callchdir(_p0 uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.chdir(C.uintptr_t(_p0)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callchroot(_p0 uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.chroot(C.uintptr_t(_p0)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callclose(fd int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.close(C.int(fd)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calldup(oldfd int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.dup(C.int(oldfd)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callexit(code int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.exit(C.int(code)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfaccessat(dirfd int, _p0 uintptr, mode uint32, flags int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.faccessat(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode), C.int(flags)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfchdir(fd int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.fchdir(C.int(fd)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfchmod(fd int, mode uint32) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.fchmod(C.int(fd), C.uint(mode)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfchmodat(dirfd int, _p0 uintptr, mode uint32, flags int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.fchmodat(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode), C.int(flags)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfchownat(dirfd int, _p0 uintptr, uid int, gid int, flags int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.fchownat(C.int(dirfd), C.uintptr_t(_p0), C.int(uid), C.int(gid), C.int(flags)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfdatasync(fd int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.fdatasync(C.int(fd)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfsync(fd int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.fsync(C.int(fd)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetpgid(pid int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getpgid(C.int(pid)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetpgrp() (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getpgrp())
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetpid() (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getpid())
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetppid() (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getppid())
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetpriority(which int, who int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getpriority(C.int(which), C.int(who)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetrusage(who int, rusage uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getrusage(C.int(who), C.uintptr_t(rusage)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetsid(pid int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getsid(C.int(pid)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callkill(pid int, sig int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.kill(C.int(pid), C.int(sig)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsyslog(typ int, _p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.syslog(C.int(typ), C.uintptr_t(_p0), C.size_t(_lenp0)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmkdir(dirfd int, _p0 uintptr, mode uint32) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.mkdir(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmkdirat(dirfd int, _p0 uintptr, mode uint32) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.mkdirat(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmkfifo(_p0 uintptr, mode uint32) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.mkfifo(C.uintptr_t(_p0), C.uint(mode)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmknod(_p0 uintptr, mode uint32, dev int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.mknod(C.uintptr_t(_p0), C.uint(mode), C.int(dev)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmknodat(dirfd int, _p0 uintptr, mode uint32, dev int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.mknodat(C.int(dirfd), C.uintptr_t(_p0), C.uint(mode), C.int(dev)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callnanosleep(time uintptr, leftover uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.nanosleep(C.uintptr_t(time), C.uintptr_t(leftover)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callopen64(_p0 uintptr, mode int, perm uint32) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.open64(C.uintptr_t(_p0), C.int(mode), C.uint(perm)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callopenat(dirfd int, _p0 uintptr, flags int, mode uint32) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.openat(C.int(dirfd), C.uintptr_t(_p0), C.int(flags), C.uint(mode)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callread(fd int, _p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.read(C.int(fd), C.uintptr_t(_p0), C.size_t(_lenp0)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callreadlink(_p0 uintptr, _p1 uintptr, _lenp1 int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.readlink(C.uintptr_t(_p0), C.uintptr_t(_p1), C.size_t(_lenp1)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callrenameat(olddirfd int, _p0 uintptr, newdirfd int, _p1 uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.renameat(C.int(olddirfd), C.uintptr_t(_p0), C.int(newdirfd), C.uintptr_t(_p1)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetdomainname(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.setdomainname(C.uintptr_t(_p0), C.size_t(_lenp0)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsethostname(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.sethostname(C.uintptr_t(_p0), C.size_t(_lenp0)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetpgid(pid int, pgid int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.setpgid(C.int(pid), C.int(pgid)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetsid() (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.setsid())
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsettimeofday(tv uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.settimeofday(C.uintptr_t(tv)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetuid(uid int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.setuid(C.int(uid)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetgid(uid int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.setgid(C.int(uid)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetpriority(which int, who int, prio int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.setpriority(C.int(which), C.int(who), C.int(prio)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callstatx(dirfd int, _p0 uintptr, flags int, mask int, stat uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.statx(C.int(dirfd), C.uintptr_t(_p0), C.int(flags), C.int(mask), C.uintptr_t(stat)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsync() (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.sync())
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calltimes(tms uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.times(C.uintptr_t(tms)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callumask(mask int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.umask(C.int(mask)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calluname(buf uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.uname(C.uintptr_t(buf)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callunlink(_p0 uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.unlink(C.uintptr_t(_p0)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callunlinkat(dirfd int, _p0 uintptr, flags int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.unlinkat(C.int(dirfd), C.uintptr_t(_p0), C.int(flags)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callustat(dev int, ubuf uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.ustat(C.int(dev), C.uintptr_t(ubuf)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callwrite(fd int, _p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.write(C.int(fd), C.uintptr_t(_p0), C.size_t(_lenp0)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calldup2(oldfd int, newfd int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.dup2(C.int(oldfd), C.int(newfd)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callposix_fadvise64(fd int, offset int64, length int64, advice int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.posix_fadvise64(C.int(fd), C.longlong(offset), C.longlong(length), C.int(advice)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfchown(fd int, uid int, gid int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.fchown(C.int(fd), C.int(uid), C.int(gid)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfstat(fd int, stat uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.fstat(C.int(fd), C.uintptr_t(stat)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfstatat(dirfd int, _p0 uintptr, stat uintptr, flags int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.fstatat(C.int(dirfd), C.uintptr_t(_p0), C.uintptr_t(stat), C.int(flags)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callfstatfs(fd int, buf uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.fstatfs(C.int(fd), C.uintptr_t(buf)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callftruncate(fd int, length int64) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.ftruncate(C.int(fd), C.longlong(length)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetegid() (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getegid())
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgeteuid() (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.geteuid())
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetgid() (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getgid())
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetuid() (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getuid())
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calllchown(_p0 uintptr, uid int, gid int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.lchown(C.uintptr_t(_p0), C.int(uid), C.int(gid)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calllisten(s int, n int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.listen(C.int(s), C.int(n)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calllstat(_p0 uintptr, stat uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.lstat(C.uintptr_t(_p0), C.uintptr_t(stat)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callpause() (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.pause())
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callpread64(fd int, _p0 uintptr, _lenp0 int, offset int64) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.pread64(C.int(fd), C.uintptr_t(_p0), C.size_t(_lenp0), C.longlong(offset)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callpwrite64(fd int, _p0 uintptr, _lenp0 int, offset int64) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.pwrite64(C.int(fd), C.uintptr_t(_p0), C.size_t(_lenp0), C.longlong(offset)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callselect(nfd int, r uintptr, w uintptr, e uintptr, timeout uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.c_select(C.int(nfd), C.uintptr_t(r), C.uintptr_t(w), C.uintptr_t(e), C.uintptr_t(timeout)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callpselect(nfd int, r uintptr, w uintptr, e uintptr, timeout uintptr, sigmask uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.pselect(C.int(nfd), C.uintptr_t(r), C.uintptr_t(w), C.uintptr_t(e), C.uintptr_t(timeout), C.uintptr_t(sigmask)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetregid(rgid int, egid int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.setregid(C.int(rgid), C.int(egid)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetreuid(ruid int, euid int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.setreuid(C.int(ruid), C.int(euid)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callshutdown(fd int, how int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.shutdown(C.int(fd), C.int(how)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsplice(rfd int, roff uintptr, wfd int, woff uintptr, len int, flags int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.splice(C.int(rfd), C.uintptr_t(roff), C.int(wfd), C.uintptr_t(woff), C.int(len), C.int(flags)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callstat(_p0 uintptr, statptr uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.stat(C.uintptr_t(_p0), C.uintptr_t(statptr)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callstatfs(_p0 uintptr, buf uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.statfs(C.uintptr_t(_p0), C.uintptr_t(buf)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calltruncate(_p0 uintptr, length int64) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.truncate(C.uintptr_t(_p0), C.longlong(length)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callbind(s int, addr uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.bind(C.int(s), C.uintptr_t(addr), C.uintptr_t(addrlen)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callconnect(s int, addr uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.connect(C.int(s), C.uintptr_t(addr), C.uintptr_t(addrlen)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetgroups(n int, list uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getgroups(C.int(n), C.uintptr_t(list)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetgroups(n int, list uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.setgroups(C.int(n), C.uintptr_t(list)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetsockopt(s int, level int, name int, val uintptr, vallen uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getsockopt(C.int(s), C.int(level), C.int(name), C.uintptr_t(val), C.uintptr_t(vallen)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetsockopt(s int, level int, name int, val uintptr, vallen uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.setsockopt(C.int(s), C.int(level), C.int(name), C.uintptr_t(val), C.uintptr_t(vallen)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsocket(domain int, typ int, proto int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.socket(C.int(domain), C.int(typ), C.int(proto)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsocketpair(domain int, typ int, proto int, fd uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.socketpair(C.int(domain), C.int(typ), C.int(proto), C.uintptr_t(fd)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetpeername(fd int, rsa uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getpeername(C.int(fd), C.uintptr_t(rsa), C.uintptr_t(addrlen)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetsockname(fd int, rsa uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getsockname(C.int(fd), C.uintptr_t(rsa), C.uintptr_t(addrlen)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callrecvfrom(fd int, _p0 uintptr, _lenp0 int, flags int, from uintptr, fromlen uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.recvfrom(C.int(fd), C.uintptr_t(_p0), C.size_t(_lenp0), C.int(flags), C.uintptr_t(from), C.uintptr_t(fromlen)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsendto(s int, _p0 uintptr, _lenp0 int, flags int, to uintptr, addrlen uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.sendto(C.int(s), C.uintptr_t(_p0), C.size_t(_lenp0), C.int(flags), C.uintptr_t(to), C.uintptr_t(addrlen)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callnrecvmsg(s int, msg uintptr, flags int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.nrecvmsg(C.int(s), C.uintptr_t(msg), C.int(flags)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callnsendmsg(s int, msg uintptr, flags int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.nsendmsg(C.int(s), C.uintptr_t(msg), C.int(flags)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmunmap(addr uintptr, length uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.munmap(C.uintptr_t(addr), C.uintptr_t(length)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmadvise(_p0 uintptr, _lenp0 int, advice int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.madvise(C.uintptr_t(_p0), C.size_t(_lenp0), C.int(advice)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmprotect(_p0 uintptr, _lenp0 int, prot int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.mprotect(C.uintptr_t(_p0), C.size_t(_lenp0), C.int(prot)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmlock(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.mlock(C.uintptr_t(_p0), C.size_t(_lenp0)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmlockall(flags int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.mlockall(C.int(flags)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmsync(_p0 uintptr, _lenp0 int, flags int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.msync(C.uintptr_t(_p0), C.size_t(_lenp0), C.int(flags)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmunlock(_p0 uintptr, _lenp0 int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.munlock(C.uintptr_t(_p0), C.size_t(_lenp0)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmunlockall() (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.munlockall())
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callpipe(p uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.pipe(C.uintptr_t(p)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callpoll(fds uintptr, nfds int, timeout int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.poll(C.uintptr_t(fds), C.int(nfds), C.int(timeout)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgettimeofday(tv uintptr, tzp uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.gettimeofday(C.uintptr_t(tv), C.uintptr_t(tzp)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calltime(t uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.time(C.uintptr_t(t)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callutime(_p0 uintptr, buf uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.utime(C.uintptr_t(_p0), C.uintptr_t(buf)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetsystemcfg(label int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getsystemcfg(C.int(label)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callumount(_p0 uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.umount(C.uintptr_t(_p0)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callgetrlimit(resource int, rlim uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.getrlimit(C.int(resource), C.uintptr_t(rlim)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callsetrlimit(resource int, rlim uintptr) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.setrlimit(C.int(resource), C.uintptr_t(rlim)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func calllseek(fd int, offset int64, whence int) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.lseek(C.int(fd), C.longlong(offset), C.int(whence)))
++ e1 = syscall.GetErrno()
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func callmmap64(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (r1 uintptr, e1 Errno) {
++ r1 = uintptr(C.mmap64(C.uintptr_t(addr), C.uintptr_t(length), C.int(prot), C.int(flags), C.int(fd), C.longlong(offset)))
++ e1 = syscall.GetErrno()
++ return
++}
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_11.go
+similarity index 85%
+copy from vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
+copy to vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_11.go
+index 7a409745..c1cc0a41 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_11.go
+@@ -1,7 +1,7 @@
+-// mksyscall.pl -tags darwin,arm syscall_bsd.go syscall_darwin.go syscall_darwin_arm.go
++// go run mksyscall.go -l32 -tags darwin,386,!go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_386.1_11.go syscall_darwin_386.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build darwin,arm
++// +build darwin,386,!go1.12
+
+ package unix
+
+@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimes(path string, timeval *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -366,8 +350,8 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
++ _, _, e1 := Syscall6(SYS_GETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -388,6 +372,161 @@ func pipe() (r int, w int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func removexattr(path string, attr string, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fremovexattr(fd int, attr string, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func listxattr(path string, dest *byte, size int, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
++ r0, _, e1 := Syscall6(SYS_FLISTXATTR, uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
++ _, _, e1 := Syscall6(SYS_SETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fcntl(fd int, cmd int, arg int) (val int, err error) {
++ r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
++ val = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func kill(pid int, signum int, posix int) (err error) {
+ _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
+ if e1 != 0 {
+@@ -408,6 +547,32 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) {
++ _, _, e1 := Syscall9(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(offset>>32), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -672,26 +837,6 @@ func Fpathconf(fd int, name int) (val int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fstatfs(fd int, stat *Statfs_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Fsync(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -712,23 +857,6 @@ func Ftruncate(fd int, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Getdtablesize() (size int) {
+ r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
+ size = int(r0)
+@@ -930,21 +1058,6 @@ func Listen(s int, backlog int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Lstat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Mkdir(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1229,8 +1342,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1375,36 +1489,6 @@ func Setuid(uid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Statfs(path string, stat *Statfs_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Symlink(path string, link string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1598,6 +1682,33 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
++ _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) {
+ r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
+ sec = int32(r0)
+@@ -1607,3 +1718,94 @@ func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) {
+ }
+ return
+ }
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstat(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatfs(fd int, stat *Statfs_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_GETFSSTAT64, uintptr(buf), uintptr(size), uintptr(flags))
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Lstat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Stat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Statfs(path string, stat *Statfs_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.go
+new file mode 100644
+index 00000000..e263fbdb
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.go
+@@ -0,0 +1,41 @@
++// go run mksyscall.go -l32 -tags darwin,386,go1.13 syscall_darwin.1_13.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build darwin,386,go1.13
++
++package unix
++
++import (
++ "syscall"
++ "unsafe"
++)
++
++var _ syscall.Errno
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func closedir(dir uintptr) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_closedir_trampoline), uintptr(dir), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_closedir_trampoline()
++
++//go:linkname libc_closedir libc_closedir
++//go:cgo_import_dynamic libc_closedir closedir "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) {
++ r0, _, _ := syscall_syscall(funcPC(libc_readdir_r_trampoline), uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result)))
++ res = Errno(r0)
++ return
++}
++
++func libc_readdir_r_trampoline()
++
++//go:linkname libc_readdir_r libc_readdir_r
++//go:cgo_import_dynamic libc_readdir_r readdir_r "/usr/lib/libSystem.B.dylib"
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s
+new file mode 100644
+index 00000000..00da1ebf
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s
+@@ -0,0 +1,12 @@
++// go run mkasm_darwin.go 386
++// Code generated by the command above; DO NOT EDIT.
++
++// +build go1.13
++
++#include "textflag.h"
++TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fdopendir(SB)
++TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_closedir(SB)
++TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_readdir_r(SB)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go
+index 10491e9e..a3fc4900 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go
+@@ -1,7 +1,7 @@
+-// mksyscall.pl -l32 -tags darwin,386 syscall_bsd.go syscall_darwin.go syscall_darwin_386.go
++// go run mksyscall.go -l32 -tags darwin,386,go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_386.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build darwin,386
++// +build darwin,386,go1.12
+
+ package unix
+
+@@ -15,7 +15,7 @@ var _ syscall.Errno
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -23,20 +23,30 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
+ return
+ }
+
++func libc_getgroups_trampoline()
++
++//go:linkname libc_getgroups libc_getgroups
++//go:cgo_import_dynamic libc_getgroups getgroups "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func setgroups(ngid int, gid *_Gid_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setgroups_trampoline()
++
++//go:linkname libc_setgroups libc_setgroups
++//go:cgo_import_dynamic libc_setgroups setgroups "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_wait4_trampoline), uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+ wpid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -44,10 +54,15 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err
+ return
+ }
+
++func libc_wait4_trampoline()
++
++//go:linkname libc_wait4 libc_wait4
++//go:cgo_import_dynamic libc_wait4 wait4 "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++ r0, _, e1 := syscall_syscall(funcPC(libc_accept_trampoline), uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -55,30 +70,45 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+ return
+ }
+
++func libc_accept_trampoline()
++
++//go:linkname libc_accept libc_accept
++//go:cgo_import_dynamic libc_accept accept "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
+- _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen))
++ _, _, e1 := syscall_syscall(funcPC(libc_bind_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_bind_trampoline()
++
++//go:linkname libc_bind libc_bind
++//go:cgo_import_dynamic libc_bind bind "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
+- _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen))
++ _, _, e1 := syscall_syscall(funcPC(libc_connect_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_connect_trampoline()
++
++//go:linkname libc_connect libc_connect
++//go:cgo_import_dynamic libc_connect connect "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func socket(domain int, typ int, proto int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto))
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_socket_trampoline), uintptr(domain), uintptr(typ), uintptr(proto))
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -86,66 +116,101 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
+ return
+ }
+
++func libc_socket_trampoline()
++
++//go:linkname libc_socket libc_socket
++//go:cgo_import_dynamic libc_socket socket "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
+- _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_getsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getsockopt_trampoline()
++
++//go:linkname libc_getsockopt libc_getsockopt
++//go:cgo_import_dynamic libc_getsockopt getsockopt "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_setsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setsockopt_trampoline()
++
++//go:linkname libc_setsockopt libc_setsockopt
++//go:cgo_import_dynamic libc_setsockopt setsockopt "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_getpeername_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getpeername_trampoline()
++
++//go:linkname libc_getpeername libc_getpeername
++//go:cgo_import_dynamic libc_getpeername getpeername "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_getsockname_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getsockname_trampoline()
++
++//go:linkname libc_getsockname libc_getsockname
++//go:cgo_import_dynamic libc_getsockname getsockname "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Shutdown(s int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(s), uintptr(how), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_shutdown_trampoline), uintptr(s), uintptr(how), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_shutdown_trampoline()
++
++//go:linkname libc_shutdown libc_shutdown
++//go:cgo_import_dynamic libc_shutdown shutdown "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
+- _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
++ _, _, e1 := syscall_rawSyscall6(funcPC(libc_socketpair_trampoline), uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_socketpair_trampoline()
++
++//go:linkname libc_socketpair libc_socketpair
++//go:cgo_import_dynamic libc_socketpair socketpair "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
+@@ -155,7 +220,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
++ r0, _, e1 := syscall_syscall6(funcPC(libc_recvfrom_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -163,6 +228,11 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
+ return
+ }
+
++func libc_recvfrom_trampoline()
++
++//go:linkname libc_recvfrom libc_recvfrom
++//go:cgo_import_dynamic libc_recvfrom recvfrom "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
+@@ -172,17 +242,22 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
++ _, _, e1 := syscall_syscall6(funcPC(libc_sendto_trampoline), uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_sendto_trampoline()
++
++//go:linkname libc_sendto libc_sendto
++//go:cgo_import_dynamic libc_sendto sendto "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
++ r0, _, e1 := syscall_syscall(funcPC(libc_recvmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -190,10 +265,15 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+ return
+ }
+
++func libc_recvmsg_trampoline()
++
++//go:linkname libc_recvmsg libc_recvmsg
++//go:cgo_import_dynamic libc_recvmsg recvmsg "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
++ r0, _, e1 := syscall_syscall(funcPC(libc_sendmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -201,10 +281,15 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+ return
+ }
+
++func libc_sendmsg_trampoline()
++
++//go:linkname libc_sendmsg libc_sendmsg
++//go:cgo_import_dynamic libc_sendmsg sendmsg "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_KEVENT, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
++ r0, _, e1 := syscall_syscall6(funcPC(libc_kevent_trampoline), uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -212,21 +297,10 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_kevent_trampoline()
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_kevent libc_kevent
++//go:cgo_import_dynamic libc_kevent kevent "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+@@ -236,34 +310,49 @@ func utimes(path string, timeval *[2]Timeval) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_utimes_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_utimes_trampoline()
++
++//go:linkname libc_utimes libc_utimes
++//go:cgo_import_dynamic libc_utimes utimes "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func futimes(fd int, timeval *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMES, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_futimes_trampoline), uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_futimes_trampoline()
++
++//go:linkname libc_futimes libc_futimes
++//go:cgo_import_dynamic libc_futimes futimes "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := syscall_syscall(funcPC(libc_poll_trampoline), uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_poll_trampoline()
++
++//go:linkname libc_poll libc_poll
++//go:cgo_import_dynamic libc_poll poll "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Madvise(b []byte, behav int) (err error) {
+@@ -273,13 +362,18 @@ func Madvise(b []byte, behav int) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(behav))
++ _, _, e1 := syscall_syscall(funcPC(libc_madvise_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(behav))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_madvise_trampoline()
++
++//go:linkname libc_madvise libc_madvise
++//go:cgo_import_dynamic libc_madvise madvise "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mlock(b []byte) (err error) {
+@@ -289,23 +383,33 @@ func Mlock(b []byte) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_mlock_trampoline), uintptr(_p0), uintptr(len(b)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mlock_trampoline()
++
++//go:linkname libc_mlock libc_mlock
++//go:cgo_import_dynamic libc_mlock mlock "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_mlockall_trampoline), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mlockall_trampoline()
++
++//go:linkname libc_mlockall libc_mlockall
++//go:cgo_import_dynamic libc_mlockall mlockall "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mprotect(b []byte, prot int) (err error) {
+@@ -315,13 +419,18 @@ func Mprotect(b []byte, prot int) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
++ _, _, e1 := syscall_syscall(funcPC(libc_mprotect_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(prot))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mprotect_trampoline()
++
++//go:linkname libc_mprotect libc_mprotect
++//go:cgo_import_dynamic libc_mprotect mprotect "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Msync(b []byte, flags int) (err error) {
+@@ -331,13 +440,18 @@ func Msync(b []byte, flags int) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
++ _, _, e1 := syscall_syscall(funcPC(libc_msync_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(flags))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_msync_trampoline()
++
++//go:linkname libc_msync libc_msync
++//go:cgo_import_dynamic libc_msync msync "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Munlock(b []byte) (err error) {
+@@ -347,37 +461,52 @@ func Munlock(b []byte) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_munlock_trampoline), uintptr(_p0), uintptr(len(b)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_munlock_trampoline()
++
++//go:linkname libc_munlock libc_munlock
++//go:cgo_import_dynamic libc_munlock munlock "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_munlockall_trampoline), 0, 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_munlockall_trampoline()
++
++//go:linkname libc_munlockall libc_munlockall
++//go:cgo_import_dynamic libc_munlockall munlockall "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
++ _, _, e1 := syscall_syscall6(funcPC(libc_getattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getattrlist_trampoline()
++
++//go:linkname libc_getattrlist libc_getattrlist
++//go:cgo_import_dynamic libc_getattrlist getattrlist "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func pipe() (r int, w int, err error) {
+- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
++ r0, r1, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), 0, 0, 0)
+ r = int(r0)
+ w = int(r1)
+ if e1 != 0 {
+@@ -386,26 +515,282 @@ func pipe() (r int, w int, err error) {
+ return
+ }
+
++func libc_pipe_trampoline()
++
++//go:linkname libc_pipe libc_pipe
++//go:cgo_import_dynamic libc_pipe pipe "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := syscall_syscall6(funcPC(libc_getxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_getxattr_trampoline()
++
++//go:linkname libc_getxattr libc_getxattr
++//go:cgo_import_dynamic libc_getxattr getxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := syscall_syscall6(funcPC(libc_fgetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fgetxattr_trampoline()
++
++//go:linkname libc_fgetxattr libc_fgetxattr
++//go:cgo_import_dynamic libc_fgetxattr fgetxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall6(funcPC(libc_setxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_setxattr_trampoline()
++
++//go:linkname libc_setxattr libc_setxattr
++//go:cgo_import_dynamic libc_setxattr setxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall6(funcPC(libc_fsetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fsetxattr_trampoline()
++
++//go:linkname libc_fsetxattr libc_fsetxattr
++//go:cgo_import_dynamic libc_fsetxattr fsetxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func removexattr(path string, attr string, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_removexattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_removexattr_trampoline()
++
++//go:linkname libc_removexattr libc_removexattr
++//go:cgo_import_dynamic libc_removexattr removexattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fremovexattr(fd int, attr string, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_fremovexattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fremovexattr_trampoline()
++
++//go:linkname libc_fremovexattr libc_fremovexattr
++//go:cgo_import_dynamic libc_fremovexattr fremovexattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func listxattr(path string, dest *byte, size int, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := syscall_syscall6(funcPC(libc_listxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_listxattr_trampoline()
++
++//go:linkname libc_listxattr libc_listxattr
++//go:cgo_import_dynamic libc_listxattr listxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
++ r0, _, e1 := syscall_syscall6(funcPC(libc_flistxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_flistxattr_trampoline()
++
++//go:linkname libc_flistxattr libc_flistxattr
++//go:cgo_import_dynamic libc_flistxattr flistxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
++ _, _, e1 := syscall_syscall6(funcPC(libc_setattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_setattrlist_trampoline()
++
++//go:linkname libc_setattrlist libc_setattrlist
++//go:cgo_import_dynamic libc_setattrlist setattrlist "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fcntl(fd int, cmd int, arg int) (val int, err error) {
++ r0, _, e1 := syscall_syscall(funcPC(libc_fcntl_trampoline), uintptr(fd), uintptr(cmd), uintptr(arg))
++ val = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fcntl_trampoline()
++
++//go:linkname libc_fcntl libc_fcntl
++//go:cgo_import_dynamic libc_fcntl fcntl "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func kill(pid int, signum int, posix int) (err error) {
+- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
++ _, _, e1 := syscall_syscall(funcPC(libc_kill_trampoline), uintptr(pid), uintptr(signum), uintptr(posix))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_kill_trampoline()
++
++//go:linkname libc_kill libc_kill
++//go:cgo_import_dynamic libc_kill kill "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func ioctl(fd int, req uint, arg uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
++ _, _, e1 := syscall_syscall(funcPC(libc_ioctl_trampoline), uintptr(fd), uintptr(req), uintptr(arg))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_ioctl_trampoline()
++
++//go:linkname libc_ioctl libc_ioctl
++//go:cgo_import_dynamic libc_ioctl ioctl "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := syscall_syscall6(funcPC(libc_sysctl_trampoline), uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_sysctl_trampoline()
++
++//go:linkname libc_sysctl libc_sysctl
++//go:cgo_import_dynamic libc_sysctl sysctl "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) {
++ _, _, e1 := syscall_syscall9(funcPC(libc_sendfile_trampoline), uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(offset>>32), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_sendfile_trampoline()
++
++//go:linkname libc_sendfile libc_sendfile
++//go:cgo_import_dynamic libc_sendfile sendfile "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Access(path string, mode uint32) (err error) {
+@@ -414,23 +799,33 @@ func Access(path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_access_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_access_trampoline()
++
++//go:linkname libc_access libc_access
++//go:cgo_import_dynamic libc_access access "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_adjtime_trampoline), uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_adjtime_trampoline()
++
++//go:linkname libc_adjtime libc_adjtime
++//go:cgo_import_dynamic libc_adjtime adjtime "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chdir(path string) (err error) {
+@@ -439,13 +834,18 @@ func Chdir(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_chdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chdir_trampoline()
++
++//go:linkname libc_chdir libc_chdir
++//go:cgo_import_dynamic libc_chdir chdir "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chflags(path string, flags int) (err error) {
+@@ -454,13 +854,18 @@ func Chflags(path string, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_chflags_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chflags_trampoline()
++
++//go:linkname libc_chflags libc_chflags
++//go:cgo_import_dynamic libc_chflags chflags "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chmod(path string, mode uint32) (err error) {
+@@ -469,13 +874,18 @@ func Chmod(path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_chmod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chmod_trampoline()
++
++//go:linkname libc_chmod libc_chmod
++//go:cgo_import_dynamic libc_chmod chmod "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chown(path string, uid int, gid int) (err error) {
+@@ -484,13 +894,18 @@ func Chown(path string, uid int, gid int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
++ _, _, e1 := syscall_syscall(funcPC(libc_chown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chown_trampoline()
++
++//go:linkname libc_chown libc_chown
++//go:cgo_import_dynamic libc_chown chown "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chroot(path string) (err error) {
+@@ -499,27 +914,52 @@ func Chroot(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_chroot_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_chroot_trampoline()
++
++//go:linkname libc_chroot libc_chroot
++//go:cgo_import_dynamic libc_chroot chroot "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ClockGettime(clockid int32, time *Timespec) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_clock_gettime_trampoline), uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_clock_gettime_trampoline()
++
++//go:linkname libc_clock_gettime libc_clock_gettime
++//go:cgo_import_dynamic libc_clock_gettime clock_gettime "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_close_trampoline), uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_close_trampoline()
++
++//go:linkname libc_close libc_close
++//go:cgo_import_dynamic libc_close close "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Dup(fd int) (nfd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_dup_trampoline), uintptr(fd), 0, 0)
+ nfd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -527,16 +967,26 @@ func Dup(fd int) (nfd int, err error) {
+ return
+ }
+
++func libc_dup_trampoline()
++
++//go:linkname libc_dup libc_dup
++//go:cgo_import_dynamic libc_dup dup "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Dup2(from int, to int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_dup2_trampoline), uintptr(from), uintptr(to), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_dup2_trampoline()
++
++//go:linkname libc_dup2 libc_dup2
++//go:cgo_import_dynamic libc_dup2 dup2 "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Exchangedata(path1 string, path2 string, options int) (err error) {
+@@ -550,20 +1000,30 @@ func Exchangedata(path1 string, path2 string, options int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_EXCHANGEDATA, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
++ _, _, e1 := syscall_syscall(funcPC(libc_exchangedata_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_exchangedata_trampoline()
++
++//go:linkname libc_exchangedata libc_exchangedata
++//go:cgo_import_dynamic libc_exchangedata exchangedata "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Exit(code int) {
+- Syscall(SYS_EXIT, uintptr(code), 0, 0)
++ syscall_syscall(funcPC(libc_exit_trampoline), uintptr(code), 0, 0)
+ return
+ }
+
++func libc_exit_trampoline()
++
++//go:linkname libc_exit libc_exit
++//go:cgo_import_dynamic libc_exit exit "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+@@ -572,43 +1032,63 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_faccessat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_faccessat_trampoline()
++
++//go:linkname libc_faccessat libc_faccessat
++//go:cgo_import_dynamic libc_faccessat faccessat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_fchdir_trampoline), uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchdir_trampoline()
++
++//go:linkname libc_fchdir libc_fchdir
++//go:cgo_import_dynamic libc_fchdir fchdir "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchflags(fd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHFLAGS, uintptr(fd), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_fchflags_trampoline), uintptr(fd), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchflags_trampoline()
++
++//go:linkname libc_fchflags libc_fchflags
++//go:cgo_import_dynamic libc_fchflags fchflags "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_fchmod_trampoline), uintptr(fd), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchmod_trampoline()
++
++//go:linkname libc_fchmod libc_fchmod
++//go:cgo_import_dynamic libc_fchmod fchmod "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
+@@ -617,23 +1097,33 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_fchmodat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchmodat_trampoline()
++
++//go:linkname libc_fchmodat libc_fchmodat
++//go:cgo_import_dynamic libc_fchmodat fchmodat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchown(fd int, uid int, gid int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
++ _, _, e1 := syscall_syscall(funcPC(libc_fchown_trampoline), uintptr(fd), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchown_trampoline()
++
++//go:linkname libc_fchown libc_fchown
++//go:cgo_import_dynamic libc_fchown fchown "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+@@ -642,27 +1132,37 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_fchownat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchownat_trampoline()
++
++//go:linkname libc_fchownat libc_fchownat
++//go:cgo_import_dynamic libc_fchownat fchownat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_flock_trampoline), uintptr(fd), uintptr(how), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_flock_trampoline()
++
++//go:linkname libc_flock libc_flock
++//go:cgo_import_dynamic libc_flock flock "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fpathconf(fd int, name int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FPATHCONF, uintptr(fd), uintptr(name), 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_fpathconf_trampoline), uintptr(fd), uintptr(name), 0)
+ val = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -670,99 +1170,97 @@ func Fpathconf(fd int, name int) (val int, err error) {
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_fpathconf_trampoline()
+
+-func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_fpathconf libc_fpathconf
++//go:cgo_import_dynamic libc_fpathconf fpathconf "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstatfs(fd int, stat *Statfs_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++func Fsync(fd int) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_fsync_trampoline), uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_fsync_trampoline()
+
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_fsync libc_fsync
++//go:cgo_import_dynamic libc_fsync fsync "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Ftruncate(fd int, length int64) (err error) {
+- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), uintptr(length>>32))
++ _, _, e1 := syscall_syscall(funcPC(libc_ftruncate_trampoline), uintptr(fd), uintptr(length), uintptr(length>>32))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_ftruncate_trampoline()
+
+-func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_ftruncate libc_ftruncate
++//go:cgo_import_dynamic libc_ftruncate ftruncate "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getdtablesize() (size int) {
+- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
++ r0, _, _ := syscall_syscall(funcPC(libc_getdtablesize_trampoline), 0, 0, 0)
+ size = int(r0)
+ return
+ }
+
++func libc_getdtablesize_trampoline()
++
++//go:linkname libc_getdtablesize libc_getdtablesize
++//go:cgo_import_dynamic libc_getdtablesize getdtablesize "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getegid_trampoline), 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+
++func libc_getegid_trampoline()
++
++//go:linkname libc_getegid libc_getegid
++//go:cgo_import_dynamic libc_getegid getegid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Geteuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_geteuid_trampoline), 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+
++func libc_geteuid_trampoline()
++
++//go:linkname libc_geteuid libc_geteuid
++//go:cgo_import_dynamic libc_geteuid geteuid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getgid_trampoline), 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+
++func libc_getgid_trampoline()
++
++//go:linkname libc_getgid libc_getgid
++//go:cgo_import_dynamic libc_getgid getgid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getpgid_trampoline), uintptr(pid), 0, 0)
+ pgid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -770,34 +1268,54 @@ func Getpgid(pid int) (pgid int, err error) {
+ return
+ }
+
++func libc_getpgid_trampoline()
++
++//go:linkname libc_getpgid libc_getpgid
++//go:cgo_import_dynamic libc_getpgid getpgid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpgrp() (pgrp int) {
+- r0, _, _ := RawSyscall(SYS_GETPGRP, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getpgrp_trampoline), 0, 0, 0)
+ pgrp = int(r0)
+ return
+ }
+
++func libc_getpgrp_trampoline()
++
++//go:linkname libc_getpgrp libc_getpgrp
++//go:cgo_import_dynamic libc_getpgrp getpgrp "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getpid_trampoline), 0, 0, 0)
+ pid = int(r0)
+ return
+ }
+
++func libc_getpid_trampoline()
++
++//go:linkname libc_getpid libc_getpid
++//go:cgo_import_dynamic libc_getpid getpid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getppid_trampoline), 0, 0, 0)
+ ppid = int(r0)
+ return
+ }
+
++func libc_getppid_trampoline()
++
++//go:linkname libc_getppid libc_getppid
++//go:cgo_import_dynamic libc_getppid getppid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_getpriority_trampoline), uintptr(which), uintptr(who), 0)
+ prio = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -805,30 +1323,45 @@ func Getpriority(which int, who int) (prio int, err error) {
+ return
+ }
+
++func libc_getpriority_trampoline()
++
++//go:linkname libc_getpriority libc_getpriority
++//go:cgo_import_dynamic libc_getpriority getpriority "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getrlimit(which int, lim *Rlimit) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_getrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getrlimit_trampoline()
++
++//go:linkname libc_getrlimit libc_getrlimit
++//go:cgo_import_dynamic libc_getrlimit getrlimit "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_getrusage_trampoline), uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getrusage_trampoline()
++
++//go:linkname libc_getrusage libc_getrusage
++//go:cgo_import_dynamic libc_getrusage getrusage "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getsid_trampoline), uintptr(pid), 0, 0)
+ sid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -836,26 +1369,41 @@ func Getsid(pid int) (sid int, err error) {
+ return
+ }
+
++func libc_getsid_trampoline()
++
++//go:linkname libc_getsid libc_getsid
++//go:cgo_import_dynamic libc_getsid getsid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getuid_trampoline), 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+
++func libc_getuid_trampoline()
++
++//go:linkname libc_getuid libc_getuid
++//go:cgo_import_dynamic libc_getuid getuid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Issetugid() (tainted bool) {
+- r0, _, _ := RawSyscall(SYS_ISSETUGID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_issetugid_trampoline), 0, 0, 0)
+ tainted = bool(r0 != 0)
+ return
+ }
+
++func libc_issetugid_trampoline()
++
++//go:linkname libc_issetugid libc_issetugid
++//go:cgo_import_dynamic libc_issetugid issetugid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Kqueue() (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_kqueue_trampoline), 0, 0, 0)
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -863,6 +1411,11 @@ func Kqueue() (fd int, err error) {
+ return
+ }
+
++func libc_kqueue_trampoline()
++
++//go:linkname libc_kqueue libc_kqueue
++//go:cgo_import_dynamic libc_kqueue kqueue "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Lchown(path string, uid int, gid int) (err error) {
+@@ -871,13 +1424,18 @@ func Lchown(path string, uid int, gid int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
++ _, _, e1 := syscall_syscall(funcPC(libc_lchown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_lchown_trampoline()
++
++//go:linkname libc_lchown libc_lchown
++//go:cgo_import_dynamic libc_lchown lchown "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Link(path string, link string) (err error) {
+@@ -891,13 +1449,18 @@ func Link(path string, link string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_link_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_link_trampoline()
++
++//go:linkname libc_link libc_link
++//go:cgo_import_dynamic libc_link link "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
+@@ -911,37 +1474,32 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_linkat_trampoline), uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_linkat_trampoline()
++
++//go:linkname libc_linkat libc_linkat
++//go:cgo_import_dynamic libc_linkat linkat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Listen(s int, backlog int) (err error) {
+- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_listen_trampoline), uintptr(s), uintptr(backlog), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_listen_trampoline()
+
+-func Lstat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_listen libc_listen
++//go:cgo_import_dynamic libc_listen listen "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+@@ -951,13 +1509,18 @@ func Mkdir(path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_mkdir_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mkdir_trampoline()
++
++//go:linkname libc_mkdir libc_mkdir
++//go:cgo_import_dynamic libc_mkdir mkdir "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+@@ -966,13 +1529,18 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ _, _, e1 := syscall_syscall(funcPC(libc_mkdirat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mkdirat_trampoline()
++
++//go:linkname libc_mkdirat libc_mkdirat
++//go:cgo_import_dynamic libc_mkdirat mkdirat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mkfifo(path string, mode uint32) (err error) {
+@@ -981,13 +1549,18 @@ func Mkfifo(path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_mkfifo_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mkfifo_trampoline()
++
++//go:linkname libc_mkfifo libc_mkfifo
++//go:cgo_import_dynamic libc_mkfifo mkfifo "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mknod(path string, mode uint32, dev int) (err error) {
+@@ -996,13 +1569,18 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
++ _, _, e1 := syscall_syscall(funcPC(libc_mknod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mknod_trampoline()
++
++//go:linkname libc_mknod libc_mknod
++//go:cgo_import_dynamic libc_mknod mknod "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Open(path string, mode int, perm uint32) (fd int, err error) {
+@@ -1011,7 +1589,7 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+ if err != nil {
+ return
+ }
+- r0, _, e1 := Syscall(SYS_OPEN, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
++ r0, _, e1 := syscall_syscall(funcPC(libc_open_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1019,6 +1597,11 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+ return
+ }
+
++func libc_open_trampoline()
++
++//go:linkname libc_open libc_open
++//go:cgo_import_dynamic libc_open open "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
+@@ -1027,7 +1610,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
+ if err != nil {
+ return
+ }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_openat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1035,6 +1618,11 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
+ return
+ }
+
++func libc_openat_trampoline()
++
++//go:linkname libc_openat libc_openat
++//go:cgo_import_dynamic libc_openat openat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Pathconf(path string, name int) (val int, err error) {
+@@ -1043,7 +1631,7 @@ func Pathconf(path string, name int) (val int, err error) {
+ if err != nil {
+ return
+ }
+- r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_pathconf_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
+ val = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1051,6 +1639,11 @@ func Pathconf(path string, name int) (val int, err error) {
+ return
+ }
+
++func libc_pathconf_trampoline()
++
++//go:linkname libc_pathconf libc_pathconf
++//go:cgo_import_dynamic libc_pathconf pathconf "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+@@ -1060,7 +1653,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_pread_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1068,6 +1661,11 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+ return
+ }
+
++func libc_pread_trampoline()
++
++//go:linkname libc_pread libc_pread
++//go:cgo_import_dynamic libc_pread pread "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+@@ -1077,7 +1675,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_pwrite_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1085,6 +1683,11 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+ return
+ }
+
++func libc_pwrite_trampoline()
++
++//go:linkname libc_pwrite libc_pwrite
++//go:cgo_import_dynamic libc_pwrite pwrite "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func read(fd int, p []byte) (n int, err error) {
+@@ -1094,7 +1697,7 @@ func read(fd int, p []byte) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
++ r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1102,6 +1705,11 @@ func read(fd int, p []byte) (n int, err error) {
+ return
+ }
+
++func libc_read_trampoline()
++
++//go:linkname libc_read libc_read
++//go:cgo_import_dynamic libc_read read "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Readlink(path string, buf []byte) (n int, err error) {
+@@ -1116,7 +1724,7 @@ func Readlink(path string, buf []byte) (n int, err error) {
+ } else {
+ _p1 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
++ r0, _, e1 := syscall_syscall(funcPC(libc_readlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1124,6 +1732,11 @@ func Readlink(path string, buf []byte) (n int, err error) {
+ return
+ }
+
++func libc_readlink_trampoline()
++
++//go:linkname libc_readlink libc_readlink
++//go:cgo_import_dynamic libc_readlink readlink "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+@@ -1138,7 +1751,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+ } else {
+ _p1 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_readlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1146,6 +1759,11 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+ return
+ }
+
++func libc_readlinkat_trampoline()
++
++//go:linkname libc_readlinkat libc_readlinkat
++//go:cgo_import_dynamic libc_readlinkat readlinkat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Rename(from string, to string) (err error) {
+@@ -1159,13 +1777,18 @@ func Rename(from string, to string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_rename_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_rename_trampoline()
++
++//go:linkname libc_rename libc_rename
++//go:cgo_import_dynamic libc_rename rename "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
+@@ -1179,13 +1802,18 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_renameat_trampoline), uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_renameat_trampoline()
++
++//go:linkname libc_renameat libc_renameat
++//go:cgo_import_dynamic libc_renameat renameat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Revoke(path string) (err error) {
+@@ -1194,13 +1822,18 @@ func Revoke(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_revoke_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_revoke_trampoline()
++
++//go:linkname libc_revoke libc_revoke
++//go:cgo_import_dynamic libc_revoke revoke "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Rmdir(path string) (err error) {
+@@ -1209,17 +1842,22 @@ func Rmdir(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_rmdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_rmdir_trampoline()
++
++//go:linkname libc_rmdir libc_rmdir
++//go:cgo_import_dynamic libc_rmdir rmdir "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+- r0, r1, e1 := Syscall6(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0)
++ r0, r1, e1 := syscall_syscall6(funcPC(libc_lseek_trampoline), uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0)
+ newoffset = int64(int64(r1)<<32 | int64(r0))
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1227,46 +1865,72 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+ return
+ }
+
++func libc_lseek_trampoline()
++
++//go:linkname libc_lseek libc_lseek
++//go:cgo_import_dynamic libc_lseek lseek "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := syscall_syscall6(funcPC(libc_select_trampoline), uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_select_trampoline()
++
++//go:linkname libc_select libc_select
++//go:cgo_import_dynamic libc_select select "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setegid(egid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETEGID, uintptr(egid), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_setegid_trampoline), uintptr(egid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setegid_trampoline()
++
++//go:linkname libc_setegid libc_setegid
++//go:cgo_import_dynamic libc_setegid setegid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Seteuid(euid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETEUID, uintptr(euid), 0, 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_seteuid_trampoline), uintptr(euid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_seteuid_trampoline()
++
++//go:linkname libc_seteuid libc_seteuid
++//go:cgo_import_dynamic libc_seteuid seteuid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setgid(gid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETGID, uintptr(gid), 0, 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setgid_trampoline), uintptr(gid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setgid_trampoline()
++
++//go:linkname libc_setgid libc_setgid
++//go:cgo_import_dynamic libc_setgid setgid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setlogin(name string) (err error) {
+@@ -1275,77 +1939,112 @@ func Setlogin(name string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_setlogin_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setlogin_trampoline()
++
++//go:linkname libc_setlogin libc_setlogin
++//go:cgo_import_dynamic libc_setlogin setlogin "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setpgid_trampoline), uintptr(pid), uintptr(pgid), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setpgid_trampoline()
++
++//go:linkname libc_setpgid libc_setpgid
++//go:cgo_import_dynamic libc_setpgid setpgid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
++ _, _, e1 := syscall_syscall(funcPC(libc_setpriority_trampoline), uintptr(which), uintptr(who), uintptr(prio))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setpriority_trampoline()
++
++//go:linkname libc_setpriority libc_setpriority
++//go:cgo_import_dynamic libc_setpriority setpriority "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setprivexec(flag int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIVEXEC, uintptr(flag), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_setprivexec_trampoline), uintptr(flag), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setprivexec_trampoline()
++
++//go:linkname libc_setprivexec libc_setprivexec
++//go:cgo_import_dynamic libc_setprivexec setprivexec "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setregid(rgid int, egid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setregid_trampoline), uintptr(rgid), uintptr(egid), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setregid_trampoline()
++
++//go:linkname libc_setregid libc_setregid
++//go:cgo_import_dynamic libc_setregid setregid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setreuid(ruid int, euid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setreuid_trampoline), uintptr(ruid), uintptr(euid), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setreuid_trampoline()
++
++//go:linkname libc_setreuid libc_setreuid
++//go:cgo_import_dynamic libc_setreuid setreuid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setrlimit(which int, lim *Rlimit) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setrlimit_trampoline()
++
++//go:linkname libc_setrlimit libc_setrlimit
++//go:cgo_import_dynamic libc_setrlimit setrlimit "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_setsid_trampoline), 0, 0, 0)
+ pid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1353,55 +2052,40 @@ func Setsid() (pid int, err error) {
+ return
+ }
+
++func libc_setsid_trampoline()
++
++//go:linkname libc_setsid libc_setsid
++//go:cgo_import_dynamic libc_setsid setsid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Settimeofday(tp *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_settimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_settimeofday_trampoline()
+
+-func Setuid(uid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETUID, uintptr(uid), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_settimeofday libc_settimeofday
++//go:cgo_import_dynamic libc_settimeofday settimeofday "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++func Setuid(uid int) (err error) {
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setuid_trampoline), uintptr(uid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_setuid_trampoline()
+
+-func Statfs(path string, stat *Statfs_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_setuid libc_setuid
++//go:cgo_import_dynamic libc_setuid setuid "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+@@ -1416,13 +2100,18 @@ func Symlink(path string, link string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_SYMLINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_symlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_symlink_trampoline()
++
++//go:linkname libc_symlink libc_symlink
++//go:cgo_import_dynamic libc_symlink symlink "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+@@ -1436,23 +2125,33 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
++ _, _, e1 := syscall_syscall(funcPC(libc_symlinkat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_symlinkat_trampoline()
++
++//go:linkname libc_symlinkat libc_symlinkat
++//go:cgo_import_dynamic libc_symlinkat symlinkat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Sync() (err error) {
+- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_sync_trampoline), 0, 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_sync_trampoline()
++
++//go:linkname libc_sync libc_sync
++//go:cgo_import_dynamic libc_sync sync "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Truncate(path string, length int64) (err error) {
+@@ -1461,21 +2160,31 @@ func Truncate(path string, length int64) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32))
++ _, _, e1 := syscall_syscall(funcPC(libc_truncate_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_truncate_trampoline()
++
++//go:linkname libc_truncate libc_truncate
++//go:cgo_import_dynamic libc_truncate truncate "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Umask(newmask int) (oldmask int) {
+- r0, _, _ := Syscall(SYS_UMASK, uintptr(newmask), 0, 0)
++ r0, _, _ := syscall_syscall(funcPC(libc_umask_trampoline), uintptr(newmask), 0, 0)
+ oldmask = int(r0)
+ return
+ }
+
++func libc_umask_trampoline()
++
++//go:linkname libc_umask libc_umask
++//go:cgo_import_dynamic libc_umask umask "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Undelete(path string) (err error) {
+@@ -1484,13 +2193,18 @@ func Undelete(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UNDELETE, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_undelete_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_undelete_trampoline()
++
++//go:linkname libc_undelete libc_undelete
++//go:cgo_import_dynamic libc_undelete undelete "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Unlink(path string) (err error) {
+@@ -1499,13 +2213,18 @@ func Unlink(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UNLINK, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_unlink_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_unlink_trampoline()
++
++//go:linkname libc_unlink libc_unlink
++//go:cgo_import_dynamic libc_unlink unlink "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Unlinkat(dirfd int, path string, flags int) (err error) {
+@@ -1514,13 +2233,18 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
++ _, _, e1 := syscall_syscall(funcPC(libc_unlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_unlinkat_trampoline()
++
++//go:linkname libc_unlinkat libc_unlinkat
++//go:cgo_import_dynamic libc_unlinkat unlinkat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Unmount(path string, flags int) (err error) {
+@@ -1529,13 +2253,18 @@ func Unmount(path string, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_unmount_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_unmount_trampoline()
++
++//go:linkname libc_unmount libc_unmount
++//go:cgo_import_dynamic libc_unmount unmount "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func write(fd int, p []byte) (n int, err error) {
+@@ -1545,7 +2274,7 @@ func write(fd int, p []byte) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
++ r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1553,10 +2282,15 @@ func write(fd int, p []byte) (n int, err error) {
+ return
+ }
+
++func libc_write_trampoline()
++
++//go:linkname libc_write libc_write
++//go:cgo_import_dynamic libc_write write "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) {
+- r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0)
++ r0, _, e1 := syscall_syscall9(funcPC(libc_mmap_trampoline), uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0)
+ ret = uintptr(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1564,20 +2298,30 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
+ return
+ }
+
++func libc_mmap_trampoline()
++
++//go:linkname libc_mmap libc_mmap
++//go:cgo_import_dynamic libc_mmap mmap "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_munmap_trampoline), uintptr(addr), uintptr(length), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_munmap_trampoline()
++
++//go:linkname libc_munmap libc_munmap
++//go:cgo_import_dynamic libc_munmap munmap "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
++ r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1588,7 +2332,7 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
++ r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1598,8 +2342,23 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
++ _, _, e1 := syscall_syscall6(funcPC(libc_ptrace_trampoline), uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_ptrace_trampoline()
++
++//go:linkname libc_ptrace libc_ptrace
++//go:cgo_import_dynamic libc_ptrace ptrace "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) {
+- r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
++ r0, r1, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
+ sec = int32(r0)
+ usec = int32(r1)
+ if e1 != 0 {
+@@ -1607,3 +2366,134 @@ func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) {
+ }
+ return
+ }
++
++func libc_gettimeofday_trampoline()
++
++//go:linkname libc_gettimeofday libc_gettimeofday
++//go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstat(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_fstat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fstat64_trampoline()
++
++//go:linkname libc_fstat64 libc_fstat64
++//go:cgo_import_dynamic libc_fstat64 fstat64 "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall6(funcPC(libc_fstatat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fstatat64_trampoline()
++
++//go:linkname libc_fstatat64 libc_fstatat64
++//go:cgo_import_dynamic libc_fstatat64 fstatat64 "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatfs(fd int, stat *Statfs_t) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_fstatfs64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fstatfs64_trampoline()
++
++//go:linkname libc_fstatfs64 libc_fstatfs64
++//go:cgo_import_dynamic libc_fstatfs64 fstatfs64 "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
++ r0, _, e1 := syscall_syscall(funcPC(libc_getfsstat64_trampoline), uintptr(buf), uintptr(size), uintptr(flags))
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_getfsstat64_trampoline()
++
++//go:linkname libc_getfsstat64 libc_getfsstat64
++//go:cgo_import_dynamic libc_getfsstat64 getfsstat64 "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Lstat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_lstat64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_lstat64_trampoline()
++
++//go:linkname libc_lstat64 libc_lstat64
++//go:cgo_import_dynamic libc_lstat64 lstat64 "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Stat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_stat64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_stat64_trampoline()
++
++//go:linkname libc_stat64 libc_stat64
++//go:cgo_import_dynamic libc_stat64 stat64 "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Statfs(path string, stat *Statfs_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_statfs64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_statfs64_trampoline()
++
++//go:linkname libc_statfs64 libc_statfs64
++//go:cgo_import_dynamic libc_statfs64 statfs64 "/usr/lib/libSystem.B.dylib"
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s
+new file mode 100644
+index 00000000..6836a412
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s
+@@ -0,0 +1,284 @@
++// go run mkasm_darwin.go 386
++// Code generated by the command above; DO NOT EDIT.
++
++// +build go1.12
++
++#include "textflag.h"
++TEXT ·libc_getgroups_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getgroups(SB)
++TEXT ·libc_setgroups_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setgroups(SB)
++TEXT ·libc_wait4_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_wait4(SB)
++TEXT ·libc_accept_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_accept(SB)
++TEXT ·libc_bind_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_bind(SB)
++TEXT ·libc_connect_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_connect(SB)
++TEXT ·libc_socket_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_socket(SB)
++TEXT ·libc_getsockopt_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getsockopt(SB)
++TEXT ·libc_setsockopt_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setsockopt(SB)
++TEXT ·libc_getpeername_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpeername(SB)
++TEXT ·libc_getsockname_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getsockname(SB)
++TEXT ·libc_shutdown_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_shutdown(SB)
++TEXT ·libc_socketpair_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_socketpair(SB)
++TEXT ·libc_recvfrom_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_recvfrom(SB)
++TEXT ·libc_sendto_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sendto(SB)
++TEXT ·libc_recvmsg_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_recvmsg(SB)
++TEXT ·libc_sendmsg_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sendmsg(SB)
++TEXT ·libc_kevent_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_kevent(SB)
++TEXT ·libc_utimes_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_utimes(SB)
++TEXT ·libc_futimes_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_futimes(SB)
++TEXT ·libc_poll_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_poll(SB)
++TEXT ·libc_madvise_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_madvise(SB)
++TEXT ·libc_mlock_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mlock(SB)
++TEXT ·libc_mlockall_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mlockall(SB)
++TEXT ·libc_mprotect_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mprotect(SB)
++TEXT ·libc_msync_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_msync(SB)
++TEXT ·libc_munlock_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_munlock(SB)
++TEXT ·libc_munlockall_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_munlockall(SB)
++TEXT ·libc_getattrlist_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getattrlist(SB)
++TEXT ·libc_pipe_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_pipe(SB)
++TEXT ·libc_getxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getxattr(SB)
++TEXT ·libc_fgetxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fgetxattr(SB)
++TEXT ·libc_setxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setxattr(SB)
++TEXT ·libc_fsetxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fsetxattr(SB)
++TEXT ·libc_removexattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_removexattr(SB)
++TEXT ·libc_fremovexattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fremovexattr(SB)
++TEXT ·libc_listxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_listxattr(SB)
++TEXT ·libc_flistxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_flistxattr(SB)
++TEXT ·libc_setattrlist_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setattrlist(SB)
++TEXT ·libc_fcntl_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fcntl(SB)
++TEXT ·libc_kill_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_kill(SB)
++TEXT ·libc_ioctl_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_ioctl(SB)
++TEXT ·libc_sysctl_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sysctl(SB)
++TEXT ·libc_sendfile_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sendfile(SB)
++TEXT ·libc_access_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_access(SB)
++TEXT ·libc_adjtime_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_adjtime(SB)
++TEXT ·libc_chdir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chdir(SB)
++TEXT ·libc_chflags_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chflags(SB)
++TEXT ·libc_chmod_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chmod(SB)
++TEXT ·libc_chown_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chown(SB)
++TEXT ·libc_chroot_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chroot(SB)
++TEXT ·libc_clock_gettime_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_clock_gettime(SB)
++TEXT ·libc_close_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_close(SB)
++TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_dup(SB)
++TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_dup2(SB)
++TEXT ·libc_exchangedata_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_exchangedata(SB)
++TEXT ·libc_exit_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_exit(SB)
++TEXT ·libc_faccessat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_faccessat(SB)
++TEXT ·libc_fchdir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchdir(SB)
++TEXT ·libc_fchflags_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchflags(SB)
++TEXT ·libc_fchmod_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchmod(SB)
++TEXT ·libc_fchmodat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchmodat(SB)
++TEXT ·libc_fchown_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchown(SB)
++TEXT ·libc_fchownat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchownat(SB)
++TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_flock(SB)
++TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fpathconf(SB)
++TEXT ·libc_fsync_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fsync(SB)
++TEXT ·libc_ftruncate_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_ftruncate(SB)
++TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getdtablesize(SB)
++TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getegid(SB)
++TEXT ·libc_geteuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_geteuid(SB)
++TEXT ·libc_getgid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getgid(SB)
++TEXT ·libc_getpgid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpgid(SB)
++TEXT ·libc_getpgrp_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpgrp(SB)
++TEXT ·libc_getpid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpid(SB)
++TEXT ·libc_getppid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getppid(SB)
++TEXT ·libc_getpriority_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpriority(SB)
++TEXT ·libc_getrlimit_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getrlimit(SB)
++TEXT ·libc_getrusage_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getrusage(SB)
++TEXT ·libc_getsid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getsid(SB)
++TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getuid(SB)
++TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_issetugid(SB)
++TEXT ·libc_kqueue_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_kqueue(SB)
++TEXT ·libc_lchown_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_lchown(SB)
++TEXT ·libc_link_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_link(SB)
++TEXT ·libc_linkat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_linkat(SB)
++TEXT ·libc_listen_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_listen(SB)
++TEXT ·libc_mkdir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mkdir(SB)
++TEXT ·libc_mkdirat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mkdirat(SB)
++TEXT ·libc_mkfifo_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mkfifo(SB)
++TEXT ·libc_mknod_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mknod(SB)
++TEXT ·libc_open_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_open(SB)
++TEXT ·libc_openat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_openat(SB)
++TEXT ·libc_pathconf_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_pathconf(SB)
++TEXT ·libc_pread_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_pread(SB)
++TEXT ·libc_pwrite_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_pwrite(SB)
++TEXT ·libc_read_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_read(SB)
++TEXT ·libc_readlink_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_readlink(SB)
++TEXT ·libc_readlinkat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_readlinkat(SB)
++TEXT ·libc_rename_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_rename(SB)
++TEXT ·libc_renameat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_renameat(SB)
++TEXT ·libc_revoke_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_revoke(SB)
++TEXT ·libc_rmdir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_rmdir(SB)
++TEXT ·libc_lseek_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_lseek(SB)
++TEXT ·libc_select_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_select(SB)
++TEXT ·libc_setegid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setegid(SB)
++TEXT ·libc_seteuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_seteuid(SB)
++TEXT ·libc_setgid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setgid(SB)
++TEXT ·libc_setlogin_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setlogin(SB)
++TEXT ·libc_setpgid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setpgid(SB)
++TEXT ·libc_setpriority_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setpriority(SB)
++TEXT ·libc_setprivexec_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setprivexec(SB)
++TEXT ·libc_setregid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setregid(SB)
++TEXT ·libc_setreuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setreuid(SB)
++TEXT ·libc_setrlimit_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setrlimit(SB)
++TEXT ·libc_setsid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setsid(SB)
++TEXT ·libc_settimeofday_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_settimeofday(SB)
++TEXT ·libc_setuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setuid(SB)
++TEXT ·libc_symlink_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_symlink(SB)
++TEXT ·libc_symlinkat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_symlinkat(SB)
++TEXT ·libc_sync_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sync(SB)
++TEXT ·libc_truncate_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_truncate(SB)
++TEXT ·libc_umask_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_umask(SB)
++TEXT ·libc_undelete_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_undelete(SB)
++TEXT ·libc_unlink_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_unlink(SB)
++TEXT ·libc_unlinkat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_unlinkat(SB)
++TEXT ·libc_unmount_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_unmount(SB)
++TEXT ·libc_write_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_write(SB)
++TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mmap(SB)
++TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_munmap(SB)
++TEXT ·libc_ptrace_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_ptrace(SB)
++TEXT ·libc_gettimeofday_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_gettimeofday(SB)
++TEXT ·libc_fstat64_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fstat64(SB)
++TEXT ·libc_fstatat64_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fstatat64(SB)
++TEXT ·libc_fstatfs64_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fstatfs64(SB)
++TEXT ·libc_getfsstat64_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getfsstat64(SB)
++TEXT ·libc_lstat64_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_lstat64(SB)
++TEXT ·libc_stat64_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_stat64(SB)
++TEXT ·libc_statfs64_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_statfs64(SB)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_11.go
+similarity index 85%
+copy from vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
+copy to vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_11.go
+index 07c6ebc9..f8e5c37c 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_11.go
+@@ -1,7 +1,7 @@
+-// mksyscall.pl -tags darwin,arm64 syscall_bsd.go syscall_darwin.go syscall_darwin_arm64.go
++// go run mksyscall.go -tags darwin,amd64,!go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_amd64.1_11.go syscall_darwin_amd64.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build darwin,arm64
++// +build darwin,amd64,!go1.12
+
+ package unix
+
+@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimes(path string, timeval *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -366,8 +350,8 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
++ _, _, e1 := Syscall6(SYS_GETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -388,6 +372,161 @@ func pipe() (r int, w int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func removexattr(path string, attr string, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fremovexattr(fd int, attr string, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func listxattr(path string, dest *byte, size int, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
++ r0, _, e1 := Syscall6(SYS_FLISTXATTR, uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
++ _, _, e1 := Syscall6(SYS_SETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fcntl(fd int, cmd int, arg int) (val int, err error) {
++ r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
++ val = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func kill(pid int, signum int, posix int) (err error) {
+ _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
+ if e1 != 0 {
+@@ -408,6 +547,32 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) {
++ _, _, e1 := Syscall6(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -672,26 +837,6 @@ func Fpathconf(fd int, name int) (val int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fstatfs(fd int, stat *Statfs_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Fsync(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -712,23 +857,6 @@ func Ftruncate(fd int, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Getdtablesize() (size int) {
+ r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
+ size = int(r0)
+@@ -930,21 +1058,6 @@ func Listen(s int, backlog int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Lstat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Mkdir(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1229,8 +1342,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1375,36 +1489,6 @@ func Setuid(uid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Statfs(path string, stat *Statfs_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Symlink(path string, link string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1598,6 +1682,33 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
++ _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) {
+ r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
+ sec = int64(r0)
+@@ -1607,3 +1718,94 @@ func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) {
+ }
+ return
+ }
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstat(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatfs(fd int, stat *Statfs_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_GETFSSTAT64, uintptr(buf), uintptr(size), uintptr(flags))
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Lstat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Stat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Statfs(path string, stat *Statfs_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.go
+new file mode 100644
+index 00000000..314042a9
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.go
+@@ -0,0 +1,41 @@
++// go run mksyscall.go -tags darwin,amd64,go1.13 syscall_darwin.1_13.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build darwin,amd64,go1.13
++
++package unix
++
++import (
++ "syscall"
++ "unsafe"
++)
++
++var _ syscall.Errno
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func closedir(dir uintptr) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_closedir_trampoline), uintptr(dir), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_closedir_trampoline()
++
++//go:linkname libc_closedir libc_closedir
++//go:cgo_import_dynamic libc_closedir closedir "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) {
++ r0, _, _ := syscall_syscall(funcPC(libc_readdir_r_trampoline), uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result)))
++ res = Errno(r0)
++ return
++}
++
++func libc_readdir_r_trampoline()
++
++//go:linkname libc_readdir_r libc_readdir_r
++//go:cgo_import_dynamic libc_readdir_r readdir_r "/usr/lib/libSystem.B.dylib"
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s
+new file mode 100644
+index 00000000..d671e831
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s
+@@ -0,0 +1,12 @@
++// go run mkasm_darwin.go amd64
++// Code generated by the command above; DO NOT EDIT.
++
++// +build go1.13
++
++#include "textflag.h"
++TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fdopendir(SB)
++TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_closedir(SB)
++TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_readdir_r(SB)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go
+index 5f1f6bfe..50d6437e 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go
+@@ -1,7 +1,7 @@
+-// mksyscall.pl -tags darwin,amd64 syscall_bsd.go syscall_darwin.go syscall_darwin_amd64.go
++// go run mksyscall.go -tags darwin,amd64,go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_amd64.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build darwin,amd64
++// +build darwin,amd64,go1.12
+
+ package unix
+
+@@ -15,7 +15,7 @@ var _ syscall.Errno
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -23,20 +23,30 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
+ return
+ }
+
++func libc_getgroups_trampoline()
++
++//go:linkname libc_getgroups libc_getgroups
++//go:cgo_import_dynamic libc_getgroups getgroups "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func setgroups(ngid int, gid *_Gid_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setgroups_trampoline()
++
++//go:linkname libc_setgroups libc_setgroups
++//go:cgo_import_dynamic libc_setgroups setgroups "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_wait4_trampoline), uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+ wpid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -44,10 +54,15 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err
+ return
+ }
+
++func libc_wait4_trampoline()
++
++//go:linkname libc_wait4 libc_wait4
++//go:cgo_import_dynamic libc_wait4 wait4 "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++ r0, _, e1 := syscall_syscall(funcPC(libc_accept_trampoline), uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -55,30 +70,45 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+ return
+ }
+
++func libc_accept_trampoline()
++
++//go:linkname libc_accept libc_accept
++//go:cgo_import_dynamic libc_accept accept "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
+- _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen))
++ _, _, e1 := syscall_syscall(funcPC(libc_bind_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_bind_trampoline()
++
++//go:linkname libc_bind libc_bind
++//go:cgo_import_dynamic libc_bind bind "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
+- _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen))
++ _, _, e1 := syscall_syscall(funcPC(libc_connect_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_connect_trampoline()
++
++//go:linkname libc_connect libc_connect
++//go:cgo_import_dynamic libc_connect connect "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func socket(domain int, typ int, proto int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto))
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_socket_trampoline), uintptr(domain), uintptr(typ), uintptr(proto))
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -86,66 +116,101 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
+ return
+ }
+
++func libc_socket_trampoline()
++
++//go:linkname libc_socket libc_socket
++//go:cgo_import_dynamic libc_socket socket "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
+- _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_getsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getsockopt_trampoline()
++
++//go:linkname libc_getsockopt libc_getsockopt
++//go:cgo_import_dynamic libc_getsockopt getsockopt "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_setsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setsockopt_trampoline()
++
++//go:linkname libc_setsockopt libc_setsockopt
++//go:cgo_import_dynamic libc_setsockopt setsockopt "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_getpeername_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getpeername_trampoline()
++
++//go:linkname libc_getpeername libc_getpeername
++//go:cgo_import_dynamic libc_getpeername getpeername "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_getsockname_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getsockname_trampoline()
++
++//go:linkname libc_getsockname libc_getsockname
++//go:cgo_import_dynamic libc_getsockname getsockname "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Shutdown(s int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(s), uintptr(how), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_shutdown_trampoline), uintptr(s), uintptr(how), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_shutdown_trampoline()
++
++//go:linkname libc_shutdown libc_shutdown
++//go:cgo_import_dynamic libc_shutdown shutdown "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
+- _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
++ _, _, e1 := syscall_rawSyscall6(funcPC(libc_socketpair_trampoline), uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_socketpair_trampoline()
++
++//go:linkname libc_socketpair libc_socketpair
++//go:cgo_import_dynamic libc_socketpair socketpair "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
+@@ -155,7 +220,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
++ r0, _, e1 := syscall_syscall6(funcPC(libc_recvfrom_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -163,6 +228,11 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
+ return
+ }
+
++func libc_recvfrom_trampoline()
++
++//go:linkname libc_recvfrom libc_recvfrom
++//go:cgo_import_dynamic libc_recvfrom recvfrom "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
+@@ -172,17 +242,22 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
++ _, _, e1 := syscall_syscall6(funcPC(libc_sendto_trampoline), uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_sendto_trampoline()
++
++//go:linkname libc_sendto libc_sendto
++//go:cgo_import_dynamic libc_sendto sendto "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
++ r0, _, e1 := syscall_syscall(funcPC(libc_recvmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -190,10 +265,15 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+ return
+ }
+
++func libc_recvmsg_trampoline()
++
++//go:linkname libc_recvmsg libc_recvmsg
++//go:cgo_import_dynamic libc_recvmsg recvmsg "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
++ r0, _, e1 := syscall_syscall(funcPC(libc_sendmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -201,10 +281,15 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+ return
+ }
+
++func libc_sendmsg_trampoline()
++
++//go:linkname libc_sendmsg libc_sendmsg
++//go:cgo_import_dynamic libc_sendmsg sendmsg "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_KEVENT, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
++ r0, _, e1 := syscall_syscall6(funcPC(libc_kevent_trampoline), uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -212,21 +297,10 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_kevent_trampoline()
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_kevent libc_kevent
++//go:cgo_import_dynamic libc_kevent kevent "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+@@ -236,34 +310,49 @@ func utimes(path string, timeval *[2]Timeval) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_utimes_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_utimes_trampoline()
++
++//go:linkname libc_utimes libc_utimes
++//go:cgo_import_dynamic libc_utimes utimes "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func futimes(fd int, timeval *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMES, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_futimes_trampoline), uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_futimes_trampoline()
++
++//go:linkname libc_futimes libc_futimes
++//go:cgo_import_dynamic libc_futimes futimes "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := syscall_syscall(funcPC(libc_poll_trampoline), uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_poll_trampoline()
++
++//go:linkname libc_poll libc_poll
++//go:cgo_import_dynamic libc_poll poll "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Madvise(b []byte, behav int) (err error) {
+@@ -273,13 +362,18 @@ func Madvise(b []byte, behav int) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(behav))
++ _, _, e1 := syscall_syscall(funcPC(libc_madvise_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(behav))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_madvise_trampoline()
++
++//go:linkname libc_madvise libc_madvise
++//go:cgo_import_dynamic libc_madvise madvise "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mlock(b []byte) (err error) {
+@@ -289,23 +383,33 @@ func Mlock(b []byte) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_mlock_trampoline), uintptr(_p0), uintptr(len(b)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mlock_trampoline()
++
++//go:linkname libc_mlock libc_mlock
++//go:cgo_import_dynamic libc_mlock mlock "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_mlockall_trampoline), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mlockall_trampoline()
++
++//go:linkname libc_mlockall libc_mlockall
++//go:cgo_import_dynamic libc_mlockall mlockall "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mprotect(b []byte, prot int) (err error) {
+@@ -315,13 +419,18 @@ func Mprotect(b []byte, prot int) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
++ _, _, e1 := syscall_syscall(funcPC(libc_mprotect_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(prot))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mprotect_trampoline()
++
++//go:linkname libc_mprotect libc_mprotect
++//go:cgo_import_dynamic libc_mprotect mprotect "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Msync(b []byte, flags int) (err error) {
+@@ -331,13 +440,18 @@ func Msync(b []byte, flags int) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
++ _, _, e1 := syscall_syscall(funcPC(libc_msync_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(flags))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_msync_trampoline()
++
++//go:linkname libc_msync libc_msync
++//go:cgo_import_dynamic libc_msync msync "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Munlock(b []byte) (err error) {
+@@ -347,37 +461,52 @@ func Munlock(b []byte) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_munlock_trampoline), uintptr(_p0), uintptr(len(b)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_munlock_trampoline()
++
++//go:linkname libc_munlock libc_munlock
++//go:cgo_import_dynamic libc_munlock munlock "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_munlockall_trampoline), 0, 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_munlockall_trampoline()
++
++//go:linkname libc_munlockall libc_munlockall
++//go:cgo_import_dynamic libc_munlockall munlockall "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
++ _, _, e1 := syscall_syscall6(funcPC(libc_getattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getattrlist_trampoline()
++
++//go:linkname libc_getattrlist libc_getattrlist
++//go:cgo_import_dynamic libc_getattrlist getattrlist "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func pipe() (r int, w int, err error) {
+- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
++ r0, r1, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), 0, 0, 0)
+ r = int(r0)
+ w = int(r1)
+ if e1 != 0 {
+@@ -386,26 +515,282 @@ func pipe() (r int, w int, err error) {
+ return
+ }
+
++func libc_pipe_trampoline()
++
++//go:linkname libc_pipe libc_pipe
++//go:cgo_import_dynamic libc_pipe pipe "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := syscall_syscall6(funcPC(libc_getxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_getxattr_trampoline()
++
++//go:linkname libc_getxattr libc_getxattr
++//go:cgo_import_dynamic libc_getxattr getxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := syscall_syscall6(funcPC(libc_fgetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fgetxattr_trampoline()
++
++//go:linkname libc_fgetxattr libc_fgetxattr
++//go:cgo_import_dynamic libc_fgetxattr fgetxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall6(funcPC(libc_setxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_setxattr_trampoline()
++
++//go:linkname libc_setxattr libc_setxattr
++//go:cgo_import_dynamic libc_setxattr setxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall6(funcPC(libc_fsetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fsetxattr_trampoline()
++
++//go:linkname libc_fsetxattr libc_fsetxattr
++//go:cgo_import_dynamic libc_fsetxattr fsetxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func removexattr(path string, attr string, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_removexattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_removexattr_trampoline()
++
++//go:linkname libc_removexattr libc_removexattr
++//go:cgo_import_dynamic libc_removexattr removexattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fremovexattr(fd int, attr string, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_fremovexattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fremovexattr_trampoline()
++
++//go:linkname libc_fremovexattr libc_fremovexattr
++//go:cgo_import_dynamic libc_fremovexattr fremovexattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func listxattr(path string, dest *byte, size int, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := syscall_syscall6(funcPC(libc_listxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_listxattr_trampoline()
++
++//go:linkname libc_listxattr libc_listxattr
++//go:cgo_import_dynamic libc_listxattr listxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
++ r0, _, e1 := syscall_syscall6(funcPC(libc_flistxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_flistxattr_trampoline()
++
++//go:linkname libc_flistxattr libc_flistxattr
++//go:cgo_import_dynamic libc_flistxattr flistxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
++ _, _, e1 := syscall_syscall6(funcPC(libc_setattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_setattrlist_trampoline()
++
++//go:linkname libc_setattrlist libc_setattrlist
++//go:cgo_import_dynamic libc_setattrlist setattrlist "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fcntl(fd int, cmd int, arg int) (val int, err error) {
++ r0, _, e1 := syscall_syscall(funcPC(libc_fcntl_trampoline), uintptr(fd), uintptr(cmd), uintptr(arg))
++ val = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fcntl_trampoline()
++
++//go:linkname libc_fcntl libc_fcntl
++//go:cgo_import_dynamic libc_fcntl fcntl "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func kill(pid int, signum int, posix int) (err error) {
+- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
++ _, _, e1 := syscall_syscall(funcPC(libc_kill_trampoline), uintptr(pid), uintptr(signum), uintptr(posix))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_kill_trampoline()
++
++//go:linkname libc_kill libc_kill
++//go:cgo_import_dynamic libc_kill kill "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func ioctl(fd int, req uint, arg uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
++ _, _, e1 := syscall_syscall(funcPC(libc_ioctl_trampoline), uintptr(fd), uintptr(req), uintptr(arg))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_ioctl_trampoline()
++
++//go:linkname libc_ioctl libc_ioctl
++//go:cgo_import_dynamic libc_ioctl ioctl "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := syscall_syscall6(funcPC(libc_sysctl_trampoline), uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_sysctl_trampoline()
++
++//go:linkname libc_sysctl libc_sysctl
++//go:cgo_import_dynamic libc_sysctl sysctl "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) {
++ _, _, e1 := syscall_syscall6(funcPC(libc_sendfile_trampoline), uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_sendfile_trampoline()
++
++//go:linkname libc_sendfile libc_sendfile
++//go:cgo_import_dynamic libc_sendfile sendfile "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Access(path string, mode uint32) (err error) {
+@@ -414,23 +799,33 @@ func Access(path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_access_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_access_trampoline()
++
++//go:linkname libc_access libc_access
++//go:cgo_import_dynamic libc_access access "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_adjtime_trampoline), uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_adjtime_trampoline()
++
++//go:linkname libc_adjtime libc_adjtime
++//go:cgo_import_dynamic libc_adjtime adjtime "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chdir(path string) (err error) {
+@@ -439,13 +834,18 @@ func Chdir(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_chdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chdir_trampoline()
++
++//go:linkname libc_chdir libc_chdir
++//go:cgo_import_dynamic libc_chdir chdir "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chflags(path string, flags int) (err error) {
+@@ -454,13 +854,18 @@ func Chflags(path string, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_chflags_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chflags_trampoline()
++
++//go:linkname libc_chflags libc_chflags
++//go:cgo_import_dynamic libc_chflags chflags "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chmod(path string, mode uint32) (err error) {
+@@ -469,13 +874,18 @@ func Chmod(path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_chmod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chmod_trampoline()
++
++//go:linkname libc_chmod libc_chmod
++//go:cgo_import_dynamic libc_chmod chmod "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chown(path string, uid int, gid int) (err error) {
+@@ -484,13 +894,18 @@ func Chown(path string, uid int, gid int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
++ _, _, e1 := syscall_syscall(funcPC(libc_chown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chown_trampoline()
++
++//go:linkname libc_chown libc_chown
++//go:cgo_import_dynamic libc_chown chown "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chroot(path string) (err error) {
+@@ -499,27 +914,52 @@ func Chroot(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_chroot_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_chroot_trampoline()
++
++//go:linkname libc_chroot libc_chroot
++//go:cgo_import_dynamic libc_chroot chroot "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ClockGettime(clockid int32, time *Timespec) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_clock_gettime_trampoline), uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_clock_gettime_trampoline()
++
++//go:linkname libc_clock_gettime libc_clock_gettime
++//go:cgo_import_dynamic libc_clock_gettime clock_gettime "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_close_trampoline), uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_close_trampoline()
++
++//go:linkname libc_close libc_close
++//go:cgo_import_dynamic libc_close close "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Dup(fd int) (nfd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_dup_trampoline), uintptr(fd), 0, 0)
+ nfd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -527,16 +967,26 @@ func Dup(fd int) (nfd int, err error) {
+ return
+ }
+
++func libc_dup_trampoline()
++
++//go:linkname libc_dup libc_dup
++//go:cgo_import_dynamic libc_dup dup "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Dup2(from int, to int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_dup2_trampoline), uintptr(from), uintptr(to), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_dup2_trampoline()
++
++//go:linkname libc_dup2 libc_dup2
++//go:cgo_import_dynamic libc_dup2 dup2 "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Exchangedata(path1 string, path2 string, options int) (err error) {
+@@ -550,20 +1000,30 @@ func Exchangedata(path1 string, path2 string, options int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_EXCHANGEDATA, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
++ _, _, e1 := syscall_syscall(funcPC(libc_exchangedata_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_exchangedata_trampoline()
++
++//go:linkname libc_exchangedata libc_exchangedata
++//go:cgo_import_dynamic libc_exchangedata exchangedata "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Exit(code int) {
+- Syscall(SYS_EXIT, uintptr(code), 0, 0)
++ syscall_syscall(funcPC(libc_exit_trampoline), uintptr(code), 0, 0)
+ return
+ }
+
++func libc_exit_trampoline()
++
++//go:linkname libc_exit libc_exit
++//go:cgo_import_dynamic libc_exit exit "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+@@ -572,43 +1032,63 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_faccessat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_faccessat_trampoline()
++
++//go:linkname libc_faccessat libc_faccessat
++//go:cgo_import_dynamic libc_faccessat faccessat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_fchdir_trampoline), uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchdir_trampoline()
++
++//go:linkname libc_fchdir libc_fchdir
++//go:cgo_import_dynamic libc_fchdir fchdir "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchflags(fd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHFLAGS, uintptr(fd), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_fchflags_trampoline), uintptr(fd), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchflags_trampoline()
++
++//go:linkname libc_fchflags libc_fchflags
++//go:cgo_import_dynamic libc_fchflags fchflags "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_fchmod_trampoline), uintptr(fd), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchmod_trampoline()
++
++//go:linkname libc_fchmod libc_fchmod
++//go:cgo_import_dynamic libc_fchmod fchmod "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
+@@ -617,23 +1097,33 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_fchmodat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchmodat_trampoline()
++
++//go:linkname libc_fchmodat libc_fchmodat
++//go:cgo_import_dynamic libc_fchmodat fchmodat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchown(fd int, uid int, gid int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
++ _, _, e1 := syscall_syscall(funcPC(libc_fchown_trampoline), uintptr(fd), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchown_trampoline()
++
++//go:linkname libc_fchown libc_fchown
++//go:cgo_import_dynamic libc_fchown fchown "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+@@ -642,27 +1132,37 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_fchownat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchownat_trampoline()
++
++//go:linkname libc_fchownat libc_fchownat
++//go:cgo_import_dynamic libc_fchownat fchownat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_flock_trampoline), uintptr(fd), uintptr(how), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_flock_trampoline()
++
++//go:linkname libc_flock libc_flock
++//go:cgo_import_dynamic libc_flock flock "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fpathconf(fd int, name int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FPATHCONF, uintptr(fd), uintptr(name), 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_fpathconf_trampoline), uintptr(fd), uintptr(name), 0)
+ val = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -670,99 +1170,97 @@ func Fpathconf(fd int, name int) (val int, err error) {
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_fpathconf_trampoline()
+
+-func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_fpathconf libc_fpathconf
++//go:cgo_import_dynamic libc_fpathconf fpathconf "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstatfs(fd int, stat *Statfs_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++func Fsync(fd int) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_fsync_trampoline), uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_fsync_trampoline()
+
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_fsync libc_fsync
++//go:cgo_import_dynamic libc_fsync fsync "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Ftruncate(fd int, length int64) (err error) {
+- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_ftruncate_trampoline), uintptr(fd), uintptr(length), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_ftruncate_trampoline()
+
+-func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_ftruncate libc_ftruncate
++//go:cgo_import_dynamic libc_ftruncate ftruncate "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getdtablesize() (size int) {
+- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
++ r0, _, _ := syscall_syscall(funcPC(libc_getdtablesize_trampoline), 0, 0, 0)
+ size = int(r0)
+ return
+ }
+
++func libc_getdtablesize_trampoline()
++
++//go:linkname libc_getdtablesize libc_getdtablesize
++//go:cgo_import_dynamic libc_getdtablesize getdtablesize "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getegid_trampoline), 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+
++func libc_getegid_trampoline()
++
++//go:linkname libc_getegid libc_getegid
++//go:cgo_import_dynamic libc_getegid getegid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Geteuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_geteuid_trampoline), 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+
++func libc_geteuid_trampoline()
++
++//go:linkname libc_geteuid libc_geteuid
++//go:cgo_import_dynamic libc_geteuid geteuid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getgid_trampoline), 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+
++func libc_getgid_trampoline()
++
++//go:linkname libc_getgid libc_getgid
++//go:cgo_import_dynamic libc_getgid getgid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getpgid_trampoline), uintptr(pid), 0, 0)
+ pgid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -770,34 +1268,54 @@ func Getpgid(pid int) (pgid int, err error) {
+ return
+ }
+
++func libc_getpgid_trampoline()
++
++//go:linkname libc_getpgid libc_getpgid
++//go:cgo_import_dynamic libc_getpgid getpgid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpgrp() (pgrp int) {
+- r0, _, _ := RawSyscall(SYS_GETPGRP, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getpgrp_trampoline), 0, 0, 0)
+ pgrp = int(r0)
+ return
+ }
+
++func libc_getpgrp_trampoline()
++
++//go:linkname libc_getpgrp libc_getpgrp
++//go:cgo_import_dynamic libc_getpgrp getpgrp "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getpid_trampoline), 0, 0, 0)
+ pid = int(r0)
+ return
+ }
+
++func libc_getpid_trampoline()
++
++//go:linkname libc_getpid libc_getpid
++//go:cgo_import_dynamic libc_getpid getpid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getppid_trampoline), 0, 0, 0)
+ ppid = int(r0)
+ return
+ }
+
++func libc_getppid_trampoline()
++
++//go:linkname libc_getppid libc_getppid
++//go:cgo_import_dynamic libc_getppid getppid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_getpriority_trampoline), uintptr(which), uintptr(who), 0)
+ prio = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -805,30 +1323,45 @@ func Getpriority(which int, who int) (prio int, err error) {
+ return
+ }
+
++func libc_getpriority_trampoline()
++
++//go:linkname libc_getpriority libc_getpriority
++//go:cgo_import_dynamic libc_getpriority getpriority "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getrlimit(which int, lim *Rlimit) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_getrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getrlimit_trampoline()
++
++//go:linkname libc_getrlimit libc_getrlimit
++//go:cgo_import_dynamic libc_getrlimit getrlimit "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_getrusage_trampoline), uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getrusage_trampoline()
++
++//go:linkname libc_getrusage libc_getrusage
++//go:cgo_import_dynamic libc_getrusage getrusage "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getsid_trampoline), uintptr(pid), 0, 0)
+ sid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -836,26 +1369,41 @@ func Getsid(pid int) (sid int, err error) {
+ return
+ }
+
++func libc_getsid_trampoline()
++
++//go:linkname libc_getsid libc_getsid
++//go:cgo_import_dynamic libc_getsid getsid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getuid_trampoline), 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+
++func libc_getuid_trampoline()
++
++//go:linkname libc_getuid libc_getuid
++//go:cgo_import_dynamic libc_getuid getuid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Issetugid() (tainted bool) {
+- r0, _, _ := RawSyscall(SYS_ISSETUGID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_issetugid_trampoline), 0, 0, 0)
+ tainted = bool(r0 != 0)
+ return
+ }
+
++func libc_issetugid_trampoline()
++
++//go:linkname libc_issetugid libc_issetugid
++//go:cgo_import_dynamic libc_issetugid issetugid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Kqueue() (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_kqueue_trampoline), 0, 0, 0)
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -863,6 +1411,11 @@ func Kqueue() (fd int, err error) {
+ return
+ }
+
++func libc_kqueue_trampoline()
++
++//go:linkname libc_kqueue libc_kqueue
++//go:cgo_import_dynamic libc_kqueue kqueue "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Lchown(path string, uid int, gid int) (err error) {
+@@ -871,13 +1424,18 @@ func Lchown(path string, uid int, gid int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
++ _, _, e1 := syscall_syscall(funcPC(libc_lchown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_lchown_trampoline()
++
++//go:linkname libc_lchown libc_lchown
++//go:cgo_import_dynamic libc_lchown lchown "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Link(path string, link string) (err error) {
+@@ -891,13 +1449,18 @@ func Link(path string, link string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_link_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_link_trampoline()
++
++//go:linkname libc_link libc_link
++//go:cgo_import_dynamic libc_link link "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
+@@ -911,37 +1474,32 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_linkat_trampoline), uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_linkat_trampoline()
++
++//go:linkname libc_linkat libc_linkat
++//go:cgo_import_dynamic libc_linkat linkat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Listen(s int, backlog int) (err error) {
+- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_listen_trampoline), uintptr(s), uintptr(backlog), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_listen_trampoline()
+
+-func Lstat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_listen libc_listen
++//go:cgo_import_dynamic libc_listen listen "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+@@ -951,13 +1509,18 @@ func Mkdir(path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_mkdir_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mkdir_trampoline()
++
++//go:linkname libc_mkdir libc_mkdir
++//go:cgo_import_dynamic libc_mkdir mkdir "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+@@ -966,13 +1529,18 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ _, _, e1 := syscall_syscall(funcPC(libc_mkdirat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mkdirat_trampoline()
++
++//go:linkname libc_mkdirat libc_mkdirat
++//go:cgo_import_dynamic libc_mkdirat mkdirat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mkfifo(path string, mode uint32) (err error) {
+@@ -981,13 +1549,18 @@ func Mkfifo(path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_mkfifo_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mkfifo_trampoline()
++
++//go:linkname libc_mkfifo libc_mkfifo
++//go:cgo_import_dynamic libc_mkfifo mkfifo "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mknod(path string, mode uint32, dev int) (err error) {
+@@ -996,13 +1569,18 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
++ _, _, e1 := syscall_syscall(funcPC(libc_mknod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mknod_trampoline()
++
++//go:linkname libc_mknod libc_mknod
++//go:cgo_import_dynamic libc_mknod mknod "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Open(path string, mode int, perm uint32) (fd int, err error) {
+@@ -1011,7 +1589,7 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+ if err != nil {
+ return
+ }
+- r0, _, e1 := Syscall(SYS_OPEN, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
++ r0, _, e1 := syscall_syscall(funcPC(libc_open_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1019,6 +1597,11 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+ return
+ }
+
++func libc_open_trampoline()
++
++//go:linkname libc_open libc_open
++//go:cgo_import_dynamic libc_open open "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
+@@ -1027,7 +1610,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
+ if err != nil {
+ return
+ }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_openat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1035,6 +1618,11 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
+ return
+ }
+
++func libc_openat_trampoline()
++
++//go:linkname libc_openat libc_openat
++//go:cgo_import_dynamic libc_openat openat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Pathconf(path string, name int) (val int, err error) {
+@@ -1043,7 +1631,7 @@ func Pathconf(path string, name int) (val int, err error) {
+ if err != nil {
+ return
+ }
+- r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_pathconf_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
+ val = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1051,6 +1639,11 @@ func Pathconf(path string, name int) (val int, err error) {
+ return
+ }
+
++func libc_pathconf_trampoline()
++
++//go:linkname libc_pathconf libc_pathconf
++//go:cgo_import_dynamic libc_pathconf pathconf "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+@@ -1060,7 +1653,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_pread_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1068,6 +1661,11 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+ return
+ }
+
++func libc_pread_trampoline()
++
++//go:linkname libc_pread libc_pread
++//go:cgo_import_dynamic libc_pread pread "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+@@ -1077,7 +1675,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_pwrite_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1085,6 +1683,11 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+ return
+ }
+
++func libc_pwrite_trampoline()
++
++//go:linkname libc_pwrite libc_pwrite
++//go:cgo_import_dynamic libc_pwrite pwrite "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func read(fd int, p []byte) (n int, err error) {
+@@ -1094,7 +1697,7 @@ func read(fd int, p []byte) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
++ r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1102,6 +1705,11 @@ func read(fd int, p []byte) (n int, err error) {
+ return
+ }
+
++func libc_read_trampoline()
++
++//go:linkname libc_read libc_read
++//go:cgo_import_dynamic libc_read read "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Readlink(path string, buf []byte) (n int, err error) {
+@@ -1116,7 +1724,7 @@ func Readlink(path string, buf []byte) (n int, err error) {
+ } else {
+ _p1 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
++ r0, _, e1 := syscall_syscall(funcPC(libc_readlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1124,6 +1732,11 @@ func Readlink(path string, buf []byte) (n int, err error) {
+ return
+ }
+
++func libc_readlink_trampoline()
++
++//go:linkname libc_readlink libc_readlink
++//go:cgo_import_dynamic libc_readlink readlink "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+@@ -1138,7 +1751,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+ } else {
+ _p1 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_readlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1146,6 +1759,11 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+ return
+ }
+
++func libc_readlinkat_trampoline()
++
++//go:linkname libc_readlinkat libc_readlinkat
++//go:cgo_import_dynamic libc_readlinkat readlinkat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Rename(from string, to string) (err error) {
+@@ -1159,13 +1777,18 @@ func Rename(from string, to string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_rename_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_rename_trampoline()
++
++//go:linkname libc_rename libc_rename
++//go:cgo_import_dynamic libc_rename rename "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
+@@ -1179,13 +1802,18 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_renameat_trampoline), uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_renameat_trampoline()
++
++//go:linkname libc_renameat libc_renameat
++//go:cgo_import_dynamic libc_renameat renameat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Revoke(path string) (err error) {
+@@ -1194,13 +1822,18 @@ func Revoke(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_revoke_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_revoke_trampoline()
++
++//go:linkname libc_revoke libc_revoke
++//go:cgo_import_dynamic libc_revoke revoke "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Rmdir(path string) (err error) {
+@@ -1209,17 +1842,22 @@ func Rmdir(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_rmdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_rmdir_trampoline()
++
++//go:linkname libc_rmdir libc_rmdir
++//go:cgo_import_dynamic libc_rmdir rmdir "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
++ r0, _, e1 := syscall_syscall(funcPC(libc_lseek_trampoline), uintptr(fd), uintptr(offset), uintptr(whence))
+ newoffset = int64(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1227,46 +1865,72 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+ return
+ }
+
++func libc_lseek_trampoline()
++
++//go:linkname libc_lseek libc_lseek
++//go:cgo_import_dynamic libc_lseek lseek "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := syscall_syscall6(funcPC(libc_select_trampoline), uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_select_trampoline()
++
++//go:linkname libc_select libc_select
++//go:cgo_import_dynamic libc_select select "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setegid(egid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETEGID, uintptr(egid), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_setegid_trampoline), uintptr(egid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setegid_trampoline()
++
++//go:linkname libc_setegid libc_setegid
++//go:cgo_import_dynamic libc_setegid setegid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Seteuid(euid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETEUID, uintptr(euid), 0, 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_seteuid_trampoline), uintptr(euid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_seteuid_trampoline()
++
++//go:linkname libc_seteuid libc_seteuid
++//go:cgo_import_dynamic libc_seteuid seteuid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setgid(gid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETGID, uintptr(gid), 0, 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setgid_trampoline), uintptr(gid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setgid_trampoline()
++
++//go:linkname libc_setgid libc_setgid
++//go:cgo_import_dynamic libc_setgid setgid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setlogin(name string) (err error) {
+@@ -1275,77 +1939,112 @@ func Setlogin(name string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_setlogin_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setlogin_trampoline()
++
++//go:linkname libc_setlogin libc_setlogin
++//go:cgo_import_dynamic libc_setlogin setlogin "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setpgid_trampoline), uintptr(pid), uintptr(pgid), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setpgid_trampoline()
++
++//go:linkname libc_setpgid libc_setpgid
++//go:cgo_import_dynamic libc_setpgid setpgid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
++ _, _, e1 := syscall_syscall(funcPC(libc_setpriority_trampoline), uintptr(which), uintptr(who), uintptr(prio))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setpriority_trampoline()
++
++//go:linkname libc_setpriority libc_setpriority
++//go:cgo_import_dynamic libc_setpriority setpriority "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setprivexec(flag int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIVEXEC, uintptr(flag), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_setprivexec_trampoline), uintptr(flag), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setprivexec_trampoline()
++
++//go:linkname libc_setprivexec libc_setprivexec
++//go:cgo_import_dynamic libc_setprivexec setprivexec "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setregid(rgid int, egid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setregid_trampoline), uintptr(rgid), uintptr(egid), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setregid_trampoline()
++
++//go:linkname libc_setregid libc_setregid
++//go:cgo_import_dynamic libc_setregid setregid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setreuid(ruid int, euid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setreuid_trampoline), uintptr(ruid), uintptr(euid), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setreuid_trampoline()
++
++//go:linkname libc_setreuid libc_setreuid
++//go:cgo_import_dynamic libc_setreuid setreuid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setrlimit(which int, lim *Rlimit) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setrlimit_trampoline()
++
++//go:linkname libc_setrlimit libc_setrlimit
++//go:cgo_import_dynamic libc_setrlimit setrlimit "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_setsid_trampoline), 0, 0, 0)
+ pid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1353,55 +2052,40 @@ func Setsid() (pid int, err error) {
+ return
+ }
+
++func libc_setsid_trampoline()
++
++//go:linkname libc_setsid libc_setsid
++//go:cgo_import_dynamic libc_setsid setsid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Settimeofday(tp *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_settimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_settimeofday_trampoline()
+
+-func Setuid(uid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETUID, uintptr(uid), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_settimeofday libc_settimeofday
++//go:cgo_import_dynamic libc_settimeofday settimeofday "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++func Setuid(uid int) (err error) {
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setuid_trampoline), uintptr(uid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_setuid_trampoline()
+
+-func Statfs(path string, stat *Statfs_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_setuid libc_setuid
++//go:cgo_import_dynamic libc_setuid setuid "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+@@ -1416,13 +2100,18 @@ func Symlink(path string, link string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_SYMLINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_symlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_symlink_trampoline()
++
++//go:linkname libc_symlink libc_symlink
++//go:cgo_import_dynamic libc_symlink symlink "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+@@ -1436,23 +2125,33 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
++ _, _, e1 := syscall_syscall(funcPC(libc_symlinkat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_symlinkat_trampoline()
++
++//go:linkname libc_symlinkat libc_symlinkat
++//go:cgo_import_dynamic libc_symlinkat symlinkat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Sync() (err error) {
+- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_sync_trampoline), 0, 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_sync_trampoline()
++
++//go:linkname libc_sync libc_sync
++//go:cgo_import_dynamic libc_sync sync "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Truncate(path string, length int64) (err error) {
+@@ -1461,21 +2160,31 @@ func Truncate(path string, length int64) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_truncate_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_truncate_trampoline()
++
++//go:linkname libc_truncate libc_truncate
++//go:cgo_import_dynamic libc_truncate truncate "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Umask(newmask int) (oldmask int) {
+- r0, _, _ := Syscall(SYS_UMASK, uintptr(newmask), 0, 0)
++ r0, _, _ := syscall_syscall(funcPC(libc_umask_trampoline), uintptr(newmask), 0, 0)
+ oldmask = int(r0)
+ return
+ }
+
++func libc_umask_trampoline()
++
++//go:linkname libc_umask libc_umask
++//go:cgo_import_dynamic libc_umask umask "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Undelete(path string) (err error) {
+@@ -1484,13 +2193,18 @@ func Undelete(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UNDELETE, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_undelete_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_undelete_trampoline()
++
++//go:linkname libc_undelete libc_undelete
++//go:cgo_import_dynamic libc_undelete undelete "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Unlink(path string) (err error) {
+@@ -1499,13 +2213,18 @@ func Unlink(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UNLINK, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_unlink_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_unlink_trampoline()
++
++//go:linkname libc_unlink libc_unlink
++//go:cgo_import_dynamic libc_unlink unlink "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Unlinkat(dirfd int, path string, flags int) (err error) {
+@@ -1514,13 +2233,18 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
++ _, _, e1 := syscall_syscall(funcPC(libc_unlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_unlinkat_trampoline()
++
++//go:linkname libc_unlinkat libc_unlinkat
++//go:cgo_import_dynamic libc_unlinkat unlinkat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Unmount(path string, flags int) (err error) {
+@@ -1529,13 +2253,18 @@ func Unmount(path string, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_unmount_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_unmount_trampoline()
++
++//go:linkname libc_unmount libc_unmount
++//go:cgo_import_dynamic libc_unmount unmount "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func write(fd int, p []byte) (n int, err error) {
+@@ -1545,7 +2274,7 @@ func write(fd int, p []byte) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
++ r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1553,10 +2282,15 @@ func write(fd int, p []byte) (n int, err error) {
+ return
+ }
+
++func libc_write_trampoline()
++
++//go:linkname libc_write libc_write
++//go:cgo_import_dynamic libc_write write "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) {
+- r0, _, e1 := Syscall6(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos))
++ r0, _, e1 := syscall_syscall6(funcPC(libc_mmap_trampoline), uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos))
+ ret = uintptr(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1564,20 +2298,30 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
+ return
+ }
+
++func libc_mmap_trampoline()
++
++//go:linkname libc_mmap libc_mmap
++//go:cgo_import_dynamic libc_mmap mmap "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_munmap_trampoline), uintptr(addr), uintptr(length), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_munmap_trampoline()
++
++//go:linkname libc_munmap libc_munmap
++//go:cgo_import_dynamic libc_munmap munmap "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
++ r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1588,7 +2332,7 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
++ r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1598,8 +2342,23 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
++ _, _, e1 := syscall_syscall6(funcPC(libc_ptrace_trampoline), uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_ptrace_trampoline()
++
++//go:linkname libc_ptrace libc_ptrace
++//go:cgo_import_dynamic libc_ptrace ptrace "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) {
+- r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
++ r0, r1, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
+ sec = int64(r0)
+ usec = int32(r1)
+ if e1 != 0 {
+@@ -1607,3 +2366,134 @@ func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) {
+ }
+ return
+ }
++
++func libc_gettimeofday_trampoline()
++
++//go:linkname libc_gettimeofday libc_gettimeofday
++//go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstat(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_fstat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fstat64_trampoline()
++
++//go:linkname libc_fstat64 libc_fstat64
++//go:cgo_import_dynamic libc_fstat64 fstat64 "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall6(funcPC(libc_fstatat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fstatat64_trampoline()
++
++//go:linkname libc_fstatat64 libc_fstatat64
++//go:cgo_import_dynamic libc_fstatat64 fstatat64 "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatfs(fd int, stat *Statfs_t) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_fstatfs64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fstatfs64_trampoline()
++
++//go:linkname libc_fstatfs64 libc_fstatfs64
++//go:cgo_import_dynamic libc_fstatfs64 fstatfs64 "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
++ r0, _, e1 := syscall_syscall(funcPC(libc_getfsstat64_trampoline), uintptr(buf), uintptr(size), uintptr(flags))
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_getfsstat64_trampoline()
++
++//go:linkname libc_getfsstat64 libc_getfsstat64
++//go:cgo_import_dynamic libc_getfsstat64 getfsstat64 "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Lstat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_lstat64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_lstat64_trampoline()
++
++//go:linkname libc_lstat64 libc_lstat64
++//go:cgo_import_dynamic libc_lstat64 lstat64 "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Stat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_stat64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_stat64_trampoline()
++
++//go:linkname libc_stat64 libc_stat64
++//go:cgo_import_dynamic libc_stat64 stat64 "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Statfs(path string, stat *Statfs_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_statfs64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_statfs64_trampoline()
++
++//go:linkname libc_statfs64 libc_statfs64
++//go:cgo_import_dynamic libc_statfs64 statfs64 "/usr/lib/libSystem.B.dylib"
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s
+new file mode 100644
+index 00000000..a3fdf099
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s
+@@ -0,0 +1,284 @@
++// go run mkasm_darwin.go amd64
++// Code generated by the command above; DO NOT EDIT.
++
++// +build go1.12
++
++#include "textflag.h"
++TEXT ·libc_getgroups_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getgroups(SB)
++TEXT ·libc_setgroups_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setgroups(SB)
++TEXT ·libc_wait4_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_wait4(SB)
++TEXT ·libc_accept_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_accept(SB)
++TEXT ·libc_bind_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_bind(SB)
++TEXT ·libc_connect_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_connect(SB)
++TEXT ·libc_socket_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_socket(SB)
++TEXT ·libc_getsockopt_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getsockopt(SB)
++TEXT ·libc_setsockopt_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setsockopt(SB)
++TEXT ·libc_getpeername_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpeername(SB)
++TEXT ·libc_getsockname_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getsockname(SB)
++TEXT ·libc_shutdown_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_shutdown(SB)
++TEXT ·libc_socketpair_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_socketpair(SB)
++TEXT ·libc_recvfrom_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_recvfrom(SB)
++TEXT ·libc_sendto_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sendto(SB)
++TEXT ·libc_recvmsg_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_recvmsg(SB)
++TEXT ·libc_sendmsg_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sendmsg(SB)
++TEXT ·libc_kevent_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_kevent(SB)
++TEXT ·libc_utimes_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_utimes(SB)
++TEXT ·libc_futimes_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_futimes(SB)
++TEXT ·libc_poll_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_poll(SB)
++TEXT ·libc_madvise_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_madvise(SB)
++TEXT ·libc_mlock_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mlock(SB)
++TEXT ·libc_mlockall_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mlockall(SB)
++TEXT ·libc_mprotect_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mprotect(SB)
++TEXT ·libc_msync_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_msync(SB)
++TEXT ·libc_munlock_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_munlock(SB)
++TEXT ·libc_munlockall_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_munlockall(SB)
++TEXT ·libc_getattrlist_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getattrlist(SB)
++TEXT ·libc_pipe_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_pipe(SB)
++TEXT ·libc_getxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getxattr(SB)
++TEXT ·libc_fgetxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fgetxattr(SB)
++TEXT ·libc_setxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setxattr(SB)
++TEXT ·libc_fsetxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fsetxattr(SB)
++TEXT ·libc_removexattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_removexattr(SB)
++TEXT ·libc_fremovexattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fremovexattr(SB)
++TEXT ·libc_listxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_listxattr(SB)
++TEXT ·libc_flistxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_flistxattr(SB)
++TEXT ·libc_setattrlist_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setattrlist(SB)
++TEXT ·libc_fcntl_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fcntl(SB)
++TEXT ·libc_kill_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_kill(SB)
++TEXT ·libc_ioctl_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_ioctl(SB)
++TEXT ·libc_sysctl_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sysctl(SB)
++TEXT ·libc_sendfile_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sendfile(SB)
++TEXT ·libc_access_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_access(SB)
++TEXT ·libc_adjtime_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_adjtime(SB)
++TEXT ·libc_chdir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chdir(SB)
++TEXT ·libc_chflags_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chflags(SB)
++TEXT ·libc_chmod_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chmod(SB)
++TEXT ·libc_chown_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chown(SB)
++TEXT ·libc_chroot_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chroot(SB)
++TEXT ·libc_clock_gettime_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_clock_gettime(SB)
++TEXT ·libc_close_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_close(SB)
++TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_dup(SB)
++TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_dup2(SB)
++TEXT ·libc_exchangedata_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_exchangedata(SB)
++TEXT ·libc_exit_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_exit(SB)
++TEXT ·libc_faccessat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_faccessat(SB)
++TEXT ·libc_fchdir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchdir(SB)
++TEXT ·libc_fchflags_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchflags(SB)
++TEXT ·libc_fchmod_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchmod(SB)
++TEXT ·libc_fchmodat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchmodat(SB)
++TEXT ·libc_fchown_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchown(SB)
++TEXT ·libc_fchownat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchownat(SB)
++TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_flock(SB)
++TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fpathconf(SB)
++TEXT ·libc_fsync_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fsync(SB)
++TEXT ·libc_ftruncate_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_ftruncate(SB)
++TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getdtablesize(SB)
++TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getegid(SB)
++TEXT ·libc_geteuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_geteuid(SB)
++TEXT ·libc_getgid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getgid(SB)
++TEXT ·libc_getpgid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpgid(SB)
++TEXT ·libc_getpgrp_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpgrp(SB)
++TEXT ·libc_getpid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpid(SB)
++TEXT ·libc_getppid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getppid(SB)
++TEXT ·libc_getpriority_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpriority(SB)
++TEXT ·libc_getrlimit_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getrlimit(SB)
++TEXT ·libc_getrusage_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getrusage(SB)
++TEXT ·libc_getsid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getsid(SB)
++TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getuid(SB)
++TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_issetugid(SB)
++TEXT ·libc_kqueue_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_kqueue(SB)
++TEXT ·libc_lchown_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_lchown(SB)
++TEXT ·libc_link_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_link(SB)
++TEXT ·libc_linkat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_linkat(SB)
++TEXT ·libc_listen_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_listen(SB)
++TEXT ·libc_mkdir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mkdir(SB)
++TEXT ·libc_mkdirat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mkdirat(SB)
++TEXT ·libc_mkfifo_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mkfifo(SB)
++TEXT ·libc_mknod_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mknod(SB)
++TEXT ·libc_open_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_open(SB)
++TEXT ·libc_openat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_openat(SB)
++TEXT ·libc_pathconf_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_pathconf(SB)
++TEXT ·libc_pread_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_pread(SB)
++TEXT ·libc_pwrite_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_pwrite(SB)
++TEXT ·libc_read_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_read(SB)
++TEXT ·libc_readlink_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_readlink(SB)
++TEXT ·libc_readlinkat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_readlinkat(SB)
++TEXT ·libc_rename_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_rename(SB)
++TEXT ·libc_renameat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_renameat(SB)
++TEXT ·libc_revoke_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_revoke(SB)
++TEXT ·libc_rmdir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_rmdir(SB)
++TEXT ·libc_lseek_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_lseek(SB)
++TEXT ·libc_select_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_select(SB)
++TEXT ·libc_setegid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setegid(SB)
++TEXT ·libc_seteuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_seteuid(SB)
++TEXT ·libc_setgid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setgid(SB)
++TEXT ·libc_setlogin_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setlogin(SB)
++TEXT ·libc_setpgid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setpgid(SB)
++TEXT ·libc_setpriority_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setpriority(SB)
++TEXT ·libc_setprivexec_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setprivexec(SB)
++TEXT ·libc_setregid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setregid(SB)
++TEXT ·libc_setreuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setreuid(SB)
++TEXT ·libc_setrlimit_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setrlimit(SB)
++TEXT ·libc_setsid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setsid(SB)
++TEXT ·libc_settimeofday_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_settimeofday(SB)
++TEXT ·libc_setuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setuid(SB)
++TEXT ·libc_symlink_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_symlink(SB)
++TEXT ·libc_symlinkat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_symlinkat(SB)
++TEXT ·libc_sync_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sync(SB)
++TEXT ·libc_truncate_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_truncate(SB)
++TEXT ·libc_umask_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_umask(SB)
++TEXT ·libc_undelete_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_undelete(SB)
++TEXT ·libc_unlink_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_unlink(SB)
++TEXT ·libc_unlinkat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_unlinkat(SB)
++TEXT ·libc_unmount_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_unmount(SB)
++TEXT ·libc_write_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_write(SB)
++TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mmap(SB)
++TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_munmap(SB)
++TEXT ·libc_ptrace_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_ptrace(SB)
++TEXT ·libc_gettimeofday_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_gettimeofday(SB)
++TEXT ·libc_fstat64_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fstat64(SB)
++TEXT ·libc_fstatat64_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fstatat64(SB)
++TEXT ·libc_fstatfs64_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fstatfs64(SB)
++TEXT ·libc_getfsstat64_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getfsstat64(SB)
++TEXT ·libc_lstat64_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_lstat64(SB)
++TEXT ·libc_stat64_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_stat64(SB)
++TEXT ·libc_statfs64_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_statfs64(SB)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_11.go
+similarity index 85%
+copy from vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
+copy to vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_11.go
+index 7a409745..cea04e04 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_11.go
+@@ -1,7 +1,7 @@
+-// mksyscall.pl -tags darwin,arm syscall_bsd.go syscall_darwin.go syscall_darwin_arm.go
++// go run mksyscall.go -l32 -tags darwin,arm,!go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_arm.1_11.go syscall_darwin_arm.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build darwin,arm
++// +build darwin,arm,!go1.12
+
+ package unix
+
+@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimes(path string, timeval *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -366,8 +350,8 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
++ _, _, e1 := Syscall6(SYS_GETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -388,6 +372,161 @@ func pipe() (r int, w int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func removexattr(path string, attr string, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fremovexattr(fd int, attr string, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func listxattr(path string, dest *byte, size int, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
++ r0, _, e1 := Syscall6(SYS_FLISTXATTR, uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
++ _, _, e1 := Syscall6(SYS_SETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fcntl(fd int, cmd int, arg int) (val int, err error) {
++ r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
++ val = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func kill(pid int, signum int, posix int) (err error) {
+ _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
+ if e1 != 0 {
+@@ -408,6 +547,32 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) {
++ _, _, e1 := Syscall9(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(offset>>32), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -672,26 +837,6 @@ func Fpathconf(fd int, name int) (val int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fstatfs(fd int, stat *Statfs_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Fsync(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -712,23 +857,6 @@ func Ftruncate(fd int, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Getdtablesize() (size int) {
+ r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
+ size = int(r0)
+@@ -930,21 +1058,6 @@ func Listen(s int, backlog int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Lstat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Mkdir(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1229,8 +1342,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1375,36 +1489,6 @@ func Setuid(uid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Statfs(path string, stat *Statfs_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Symlink(path string, link string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1607,3 +1691,94 @@ func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) {
+ }
+ return
+ }
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstat(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatfs(fd int, stat *Statfs_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_GETFSSTAT, uintptr(buf), uintptr(size), uintptr(flags))
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Lstat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Stat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Statfs(path string, stat *Statfs_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.go
+new file mode 100644
+index 00000000..f519ce9a
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.go
+@@ -0,0 +1,41 @@
++// go run mksyscall.go -l32 -tags darwin,arm,go1.13 syscall_darwin.1_13.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build darwin,arm,go1.13
++
++package unix
++
++import (
++ "syscall"
++ "unsafe"
++)
++
++var _ syscall.Errno
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func closedir(dir uintptr) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_closedir_trampoline), uintptr(dir), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_closedir_trampoline()
++
++//go:linkname libc_closedir libc_closedir
++//go:cgo_import_dynamic libc_closedir closedir "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) {
++ r0, _, _ := syscall_syscall(funcPC(libc_readdir_r_trampoline), uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result)))
++ res = Errno(r0)
++ return
++}
++
++func libc_readdir_r_trampoline()
++
++//go:linkname libc_readdir_r libc_readdir_r
++//go:cgo_import_dynamic libc_readdir_r readdir_r "/usr/lib/libSystem.B.dylib"
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s
+new file mode 100644
+index 00000000..488e5570
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s
+@@ -0,0 +1,12 @@
++// go run mkasm_darwin.go arm
++// Code generated by the command above; DO NOT EDIT.
++
++// +build go1.13
++
++#include "textflag.h"
++TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fdopendir(SB)
++TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_closedir(SB)
++TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_readdir_r(SB)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
+index 7a409745..63103950 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go
+@@ -1,7 +1,7 @@
+-// mksyscall.pl -tags darwin,arm syscall_bsd.go syscall_darwin.go syscall_darwin_arm.go
++// go run mksyscall.go -l32 -tags darwin,arm,go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_arm.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build darwin,arm
++// +build darwin,arm,go1.12
+
+ package unix
+
+@@ -15,7 +15,7 @@ var _ syscall.Errno
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -23,20 +23,30 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
+ return
+ }
+
++func libc_getgroups_trampoline()
++
++//go:linkname libc_getgroups libc_getgroups
++//go:cgo_import_dynamic libc_getgroups getgroups "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func setgroups(ngid int, gid *_Gid_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setgroups_trampoline()
++
++//go:linkname libc_setgroups libc_setgroups
++//go:cgo_import_dynamic libc_setgroups setgroups "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_wait4_trampoline), uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+ wpid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -44,10 +54,15 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err
+ return
+ }
+
++func libc_wait4_trampoline()
++
++//go:linkname libc_wait4 libc_wait4
++//go:cgo_import_dynamic libc_wait4 wait4 "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++ r0, _, e1 := syscall_syscall(funcPC(libc_accept_trampoline), uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -55,30 +70,45 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+ return
+ }
+
++func libc_accept_trampoline()
++
++//go:linkname libc_accept libc_accept
++//go:cgo_import_dynamic libc_accept accept "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
+- _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen))
++ _, _, e1 := syscall_syscall(funcPC(libc_bind_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_bind_trampoline()
++
++//go:linkname libc_bind libc_bind
++//go:cgo_import_dynamic libc_bind bind "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
+- _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen))
++ _, _, e1 := syscall_syscall(funcPC(libc_connect_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_connect_trampoline()
++
++//go:linkname libc_connect libc_connect
++//go:cgo_import_dynamic libc_connect connect "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func socket(domain int, typ int, proto int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto))
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_socket_trampoline), uintptr(domain), uintptr(typ), uintptr(proto))
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -86,66 +116,101 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
+ return
+ }
+
++func libc_socket_trampoline()
++
++//go:linkname libc_socket libc_socket
++//go:cgo_import_dynamic libc_socket socket "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
+- _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_getsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getsockopt_trampoline()
++
++//go:linkname libc_getsockopt libc_getsockopt
++//go:cgo_import_dynamic libc_getsockopt getsockopt "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_setsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setsockopt_trampoline()
++
++//go:linkname libc_setsockopt libc_setsockopt
++//go:cgo_import_dynamic libc_setsockopt setsockopt "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_getpeername_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getpeername_trampoline()
++
++//go:linkname libc_getpeername libc_getpeername
++//go:cgo_import_dynamic libc_getpeername getpeername "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_getsockname_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getsockname_trampoline()
++
++//go:linkname libc_getsockname libc_getsockname
++//go:cgo_import_dynamic libc_getsockname getsockname "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Shutdown(s int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(s), uintptr(how), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_shutdown_trampoline), uintptr(s), uintptr(how), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_shutdown_trampoline()
++
++//go:linkname libc_shutdown libc_shutdown
++//go:cgo_import_dynamic libc_shutdown shutdown "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
+- _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
++ _, _, e1 := syscall_rawSyscall6(funcPC(libc_socketpair_trampoline), uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_socketpair_trampoline()
++
++//go:linkname libc_socketpair libc_socketpair
++//go:cgo_import_dynamic libc_socketpair socketpair "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
+@@ -155,7 +220,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
++ r0, _, e1 := syscall_syscall6(funcPC(libc_recvfrom_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -163,6 +228,11 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
+ return
+ }
+
++func libc_recvfrom_trampoline()
++
++//go:linkname libc_recvfrom libc_recvfrom
++//go:cgo_import_dynamic libc_recvfrom recvfrom "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
+@@ -172,17 +242,22 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
++ _, _, e1 := syscall_syscall6(funcPC(libc_sendto_trampoline), uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_sendto_trampoline()
++
++//go:linkname libc_sendto libc_sendto
++//go:cgo_import_dynamic libc_sendto sendto "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
++ r0, _, e1 := syscall_syscall(funcPC(libc_recvmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -190,10 +265,15 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+ return
+ }
+
++func libc_recvmsg_trampoline()
++
++//go:linkname libc_recvmsg libc_recvmsg
++//go:cgo_import_dynamic libc_recvmsg recvmsg "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
++ r0, _, e1 := syscall_syscall(funcPC(libc_sendmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -201,10 +281,15 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+ return
+ }
+
++func libc_sendmsg_trampoline()
++
++//go:linkname libc_sendmsg libc_sendmsg
++//go:cgo_import_dynamic libc_sendmsg sendmsg "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_KEVENT, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
++ r0, _, e1 := syscall_syscall6(funcPC(libc_kevent_trampoline), uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -212,21 +297,10 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_kevent_trampoline()
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_kevent libc_kevent
++//go:cgo_import_dynamic libc_kevent kevent "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+@@ -236,34 +310,49 @@ func utimes(path string, timeval *[2]Timeval) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_utimes_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_utimes_trampoline()
++
++//go:linkname libc_utimes libc_utimes
++//go:cgo_import_dynamic libc_utimes utimes "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func futimes(fd int, timeval *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMES, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_futimes_trampoline), uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_futimes_trampoline()
++
++//go:linkname libc_futimes libc_futimes
++//go:cgo_import_dynamic libc_futimes futimes "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := syscall_syscall(funcPC(libc_poll_trampoline), uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_poll_trampoline()
++
++//go:linkname libc_poll libc_poll
++//go:cgo_import_dynamic libc_poll poll "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Madvise(b []byte, behav int) (err error) {
+@@ -273,13 +362,18 @@ func Madvise(b []byte, behav int) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(behav))
++ _, _, e1 := syscall_syscall(funcPC(libc_madvise_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(behav))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_madvise_trampoline()
++
++//go:linkname libc_madvise libc_madvise
++//go:cgo_import_dynamic libc_madvise madvise "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mlock(b []byte) (err error) {
+@@ -289,23 +383,33 @@ func Mlock(b []byte) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_mlock_trampoline), uintptr(_p0), uintptr(len(b)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mlock_trampoline()
++
++//go:linkname libc_mlock libc_mlock
++//go:cgo_import_dynamic libc_mlock mlock "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_mlockall_trampoline), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mlockall_trampoline()
++
++//go:linkname libc_mlockall libc_mlockall
++//go:cgo_import_dynamic libc_mlockall mlockall "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mprotect(b []byte, prot int) (err error) {
+@@ -315,13 +419,18 @@ func Mprotect(b []byte, prot int) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
++ _, _, e1 := syscall_syscall(funcPC(libc_mprotect_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(prot))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mprotect_trampoline()
++
++//go:linkname libc_mprotect libc_mprotect
++//go:cgo_import_dynamic libc_mprotect mprotect "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Msync(b []byte, flags int) (err error) {
+@@ -331,13 +440,18 @@ func Msync(b []byte, flags int) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
++ _, _, e1 := syscall_syscall(funcPC(libc_msync_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(flags))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_msync_trampoline()
++
++//go:linkname libc_msync libc_msync
++//go:cgo_import_dynamic libc_msync msync "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Munlock(b []byte) (err error) {
+@@ -347,37 +461,52 @@ func Munlock(b []byte) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_munlock_trampoline), uintptr(_p0), uintptr(len(b)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_munlock_trampoline()
++
++//go:linkname libc_munlock libc_munlock
++//go:cgo_import_dynamic libc_munlock munlock "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_munlockall_trampoline), 0, 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_munlockall_trampoline()
++
++//go:linkname libc_munlockall libc_munlockall
++//go:cgo_import_dynamic libc_munlockall munlockall "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
++ _, _, e1 := syscall_syscall6(funcPC(libc_getattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getattrlist_trampoline()
++
++//go:linkname libc_getattrlist libc_getattrlist
++//go:cgo_import_dynamic libc_getattrlist getattrlist "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func pipe() (r int, w int, err error) {
+- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
++ r0, r1, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), 0, 0, 0)
+ r = int(r0)
+ w = int(r1)
+ if e1 != 0 {
+@@ -386,26 +515,282 @@ func pipe() (r int, w int, err error) {
+ return
+ }
+
++func libc_pipe_trampoline()
++
++//go:linkname libc_pipe libc_pipe
++//go:cgo_import_dynamic libc_pipe pipe "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := syscall_syscall6(funcPC(libc_getxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_getxattr_trampoline()
++
++//go:linkname libc_getxattr libc_getxattr
++//go:cgo_import_dynamic libc_getxattr getxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := syscall_syscall6(funcPC(libc_fgetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fgetxattr_trampoline()
++
++//go:linkname libc_fgetxattr libc_fgetxattr
++//go:cgo_import_dynamic libc_fgetxattr fgetxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall6(funcPC(libc_setxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_setxattr_trampoline()
++
++//go:linkname libc_setxattr libc_setxattr
++//go:cgo_import_dynamic libc_setxattr setxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall6(funcPC(libc_fsetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fsetxattr_trampoline()
++
++//go:linkname libc_fsetxattr libc_fsetxattr
++//go:cgo_import_dynamic libc_fsetxattr fsetxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func removexattr(path string, attr string, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_removexattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_removexattr_trampoline()
++
++//go:linkname libc_removexattr libc_removexattr
++//go:cgo_import_dynamic libc_removexattr removexattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fremovexattr(fd int, attr string, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_fremovexattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fremovexattr_trampoline()
++
++//go:linkname libc_fremovexattr libc_fremovexattr
++//go:cgo_import_dynamic libc_fremovexattr fremovexattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func listxattr(path string, dest *byte, size int, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := syscall_syscall6(funcPC(libc_listxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_listxattr_trampoline()
++
++//go:linkname libc_listxattr libc_listxattr
++//go:cgo_import_dynamic libc_listxattr listxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
++ r0, _, e1 := syscall_syscall6(funcPC(libc_flistxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_flistxattr_trampoline()
++
++//go:linkname libc_flistxattr libc_flistxattr
++//go:cgo_import_dynamic libc_flistxattr flistxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
++ _, _, e1 := syscall_syscall6(funcPC(libc_setattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_setattrlist_trampoline()
++
++//go:linkname libc_setattrlist libc_setattrlist
++//go:cgo_import_dynamic libc_setattrlist setattrlist "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fcntl(fd int, cmd int, arg int) (val int, err error) {
++ r0, _, e1 := syscall_syscall(funcPC(libc_fcntl_trampoline), uintptr(fd), uintptr(cmd), uintptr(arg))
++ val = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fcntl_trampoline()
++
++//go:linkname libc_fcntl libc_fcntl
++//go:cgo_import_dynamic libc_fcntl fcntl "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func kill(pid int, signum int, posix int) (err error) {
+- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
++ _, _, e1 := syscall_syscall(funcPC(libc_kill_trampoline), uintptr(pid), uintptr(signum), uintptr(posix))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_kill_trampoline()
++
++//go:linkname libc_kill libc_kill
++//go:cgo_import_dynamic libc_kill kill "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func ioctl(fd int, req uint, arg uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
++ _, _, e1 := syscall_syscall(funcPC(libc_ioctl_trampoline), uintptr(fd), uintptr(req), uintptr(arg))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_ioctl_trampoline()
++
++//go:linkname libc_ioctl libc_ioctl
++//go:cgo_import_dynamic libc_ioctl ioctl "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := syscall_syscall6(funcPC(libc_sysctl_trampoline), uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_sysctl_trampoline()
++
++//go:linkname libc_sysctl libc_sysctl
++//go:cgo_import_dynamic libc_sysctl sysctl "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) {
++ _, _, e1 := syscall_syscall9(funcPC(libc_sendfile_trampoline), uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(offset>>32), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_sendfile_trampoline()
++
++//go:linkname libc_sendfile libc_sendfile
++//go:cgo_import_dynamic libc_sendfile sendfile "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Access(path string, mode uint32) (err error) {
+@@ -414,23 +799,33 @@ func Access(path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_access_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_access_trampoline()
++
++//go:linkname libc_access libc_access
++//go:cgo_import_dynamic libc_access access "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_adjtime_trampoline), uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_adjtime_trampoline()
++
++//go:linkname libc_adjtime libc_adjtime
++//go:cgo_import_dynamic libc_adjtime adjtime "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chdir(path string) (err error) {
+@@ -439,13 +834,18 @@ func Chdir(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_chdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chdir_trampoline()
++
++//go:linkname libc_chdir libc_chdir
++//go:cgo_import_dynamic libc_chdir chdir "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chflags(path string, flags int) (err error) {
+@@ -454,13 +854,18 @@ func Chflags(path string, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_chflags_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chflags_trampoline()
++
++//go:linkname libc_chflags libc_chflags
++//go:cgo_import_dynamic libc_chflags chflags "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chmod(path string, mode uint32) (err error) {
+@@ -469,13 +874,18 @@ func Chmod(path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_chmod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chmod_trampoline()
++
++//go:linkname libc_chmod libc_chmod
++//go:cgo_import_dynamic libc_chmod chmod "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chown(path string, uid int, gid int) (err error) {
+@@ -484,13 +894,18 @@ func Chown(path string, uid int, gid int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
++ _, _, e1 := syscall_syscall(funcPC(libc_chown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chown_trampoline()
++
++//go:linkname libc_chown libc_chown
++//go:cgo_import_dynamic libc_chown chown "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chroot(path string) (err error) {
+@@ -499,27 +914,52 @@ func Chroot(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_chroot_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chroot_trampoline()
++
++//go:linkname libc_chroot libc_chroot
++//go:cgo_import_dynamic libc_chroot chroot "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ClockGettime(clockid int32, time *Timespec) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_clock_gettime_trampoline), uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_clock_gettime_trampoline()
++
++//go:linkname libc_clock_gettime libc_clock_gettime
++//go:cgo_import_dynamic libc_clock_gettime clock_gettime "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_close_trampoline), uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_close_trampoline()
++
++//go:linkname libc_close libc_close
++//go:cgo_import_dynamic libc_close close "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Dup(fd int) (nfd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_dup_trampoline), uintptr(fd), 0, 0)
+ nfd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -527,16 +967,26 @@ func Dup(fd int) (nfd int, err error) {
+ return
+ }
+
++func libc_dup_trampoline()
++
++//go:linkname libc_dup libc_dup
++//go:cgo_import_dynamic libc_dup dup "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Dup2(from int, to int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_dup2_trampoline), uintptr(from), uintptr(to), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_dup2_trampoline()
++
++//go:linkname libc_dup2 libc_dup2
++//go:cgo_import_dynamic libc_dup2 dup2 "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Exchangedata(path1 string, path2 string, options int) (err error) {
+@@ -550,20 +1000,30 @@ func Exchangedata(path1 string, path2 string, options int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_EXCHANGEDATA, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
++ _, _, e1 := syscall_syscall(funcPC(libc_exchangedata_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_exchangedata_trampoline()
++
++//go:linkname libc_exchangedata libc_exchangedata
++//go:cgo_import_dynamic libc_exchangedata exchangedata "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Exit(code int) {
+- Syscall(SYS_EXIT, uintptr(code), 0, 0)
++ syscall_syscall(funcPC(libc_exit_trampoline), uintptr(code), 0, 0)
+ return
+ }
+
++func libc_exit_trampoline()
++
++//go:linkname libc_exit libc_exit
++//go:cgo_import_dynamic libc_exit exit "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+@@ -572,43 +1032,63 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_faccessat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_faccessat_trampoline()
++
++//go:linkname libc_faccessat libc_faccessat
++//go:cgo_import_dynamic libc_faccessat faccessat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_fchdir_trampoline), uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchdir_trampoline()
++
++//go:linkname libc_fchdir libc_fchdir
++//go:cgo_import_dynamic libc_fchdir fchdir "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchflags(fd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHFLAGS, uintptr(fd), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_fchflags_trampoline), uintptr(fd), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchflags_trampoline()
++
++//go:linkname libc_fchflags libc_fchflags
++//go:cgo_import_dynamic libc_fchflags fchflags "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_fchmod_trampoline), uintptr(fd), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchmod_trampoline()
++
++//go:linkname libc_fchmod libc_fchmod
++//go:cgo_import_dynamic libc_fchmod fchmod "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
+@@ -617,23 +1097,33 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_fchmodat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchmodat_trampoline()
++
++//go:linkname libc_fchmodat libc_fchmodat
++//go:cgo_import_dynamic libc_fchmodat fchmodat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchown(fd int, uid int, gid int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
++ _, _, e1 := syscall_syscall(funcPC(libc_fchown_trampoline), uintptr(fd), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchown_trampoline()
++
++//go:linkname libc_fchown libc_fchown
++//go:cgo_import_dynamic libc_fchown fchown "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+@@ -642,27 +1132,37 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_fchownat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchownat_trampoline()
++
++//go:linkname libc_fchownat libc_fchownat
++//go:cgo_import_dynamic libc_fchownat fchownat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_flock_trampoline), uintptr(fd), uintptr(how), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_flock_trampoline()
++
++//go:linkname libc_flock libc_flock
++//go:cgo_import_dynamic libc_flock flock "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fpathconf(fd int, name int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FPATHCONF, uintptr(fd), uintptr(name), 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_fpathconf_trampoline), uintptr(fd), uintptr(name), 0)
+ val = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -670,99 +1170,97 @@ func Fpathconf(fd int, name int) (val int, err error) {
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_fpathconf_trampoline()
+
+-func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_fpathconf libc_fpathconf
++//go:cgo_import_dynamic libc_fpathconf fpathconf "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstatfs(fd int, stat *Statfs_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++func Fsync(fd int) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_fsync_trampoline), uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_fsync_trampoline()
+
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_fsync libc_fsync
++//go:cgo_import_dynamic libc_fsync fsync "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Ftruncate(fd int, length int64) (err error) {
+- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), uintptr(length>>32))
++ _, _, e1 := syscall_syscall(funcPC(libc_ftruncate_trampoline), uintptr(fd), uintptr(length), uintptr(length>>32))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++func libc_ftruncate_trampoline()
++
++//go:linkname libc_ftruncate libc_ftruncate
++//go:cgo_import_dynamic libc_ftruncate ftruncate "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getdtablesize() (size int) {
+- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
++ r0, _, _ := syscall_syscall(funcPC(libc_getdtablesize_trampoline), 0, 0, 0)
+ size = int(r0)
+ return
+ }
+
++func libc_getdtablesize_trampoline()
++
++//go:linkname libc_getdtablesize libc_getdtablesize
++//go:cgo_import_dynamic libc_getdtablesize getdtablesize "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getegid_trampoline), 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+
++func libc_getegid_trampoline()
++
++//go:linkname libc_getegid libc_getegid
++//go:cgo_import_dynamic libc_getegid getegid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Geteuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_geteuid_trampoline), 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+
++func libc_geteuid_trampoline()
++
++//go:linkname libc_geteuid libc_geteuid
++//go:cgo_import_dynamic libc_geteuid geteuid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getgid_trampoline), 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+
++func libc_getgid_trampoline()
++
++//go:linkname libc_getgid libc_getgid
++//go:cgo_import_dynamic libc_getgid getgid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getpgid_trampoline), uintptr(pid), 0, 0)
+ pgid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -770,34 +1268,54 @@ func Getpgid(pid int) (pgid int, err error) {
+ return
+ }
+
++func libc_getpgid_trampoline()
++
++//go:linkname libc_getpgid libc_getpgid
++//go:cgo_import_dynamic libc_getpgid getpgid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpgrp() (pgrp int) {
+- r0, _, _ := RawSyscall(SYS_GETPGRP, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getpgrp_trampoline), 0, 0, 0)
+ pgrp = int(r0)
+ return
+ }
+
++func libc_getpgrp_trampoline()
++
++//go:linkname libc_getpgrp libc_getpgrp
++//go:cgo_import_dynamic libc_getpgrp getpgrp "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getpid_trampoline), 0, 0, 0)
+ pid = int(r0)
+ return
+ }
+
++func libc_getpid_trampoline()
++
++//go:linkname libc_getpid libc_getpid
++//go:cgo_import_dynamic libc_getpid getpid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getppid_trampoline), 0, 0, 0)
+ ppid = int(r0)
+ return
+ }
+
++func libc_getppid_trampoline()
++
++//go:linkname libc_getppid libc_getppid
++//go:cgo_import_dynamic libc_getppid getppid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_getpriority_trampoline), uintptr(which), uintptr(who), 0)
+ prio = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -805,30 +1323,45 @@ func Getpriority(which int, who int) (prio int, err error) {
+ return
+ }
+
++func libc_getpriority_trampoline()
++
++//go:linkname libc_getpriority libc_getpriority
++//go:cgo_import_dynamic libc_getpriority getpriority "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getrlimit(which int, lim *Rlimit) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_getrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getrlimit_trampoline()
++
++//go:linkname libc_getrlimit libc_getrlimit
++//go:cgo_import_dynamic libc_getrlimit getrlimit "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_getrusage_trampoline), uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getrusage_trampoline()
++
++//go:linkname libc_getrusage libc_getrusage
++//go:cgo_import_dynamic libc_getrusage getrusage "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getsid_trampoline), uintptr(pid), 0, 0)
+ sid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -836,26 +1369,41 @@ func Getsid(pid int) (sid int, err error) {
+ return
+ }
+
++func libc_getsid_trampoline()
++
++//go:linkname libc_getsid libc_getsid
++//go:cgo_import_dynamic libc_getsid getsid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getuid_trampoline), 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+
++func libc_getuid_trampoline()
++
++//go:linkname libc_getuid libc_getuid
++//go:cgo_import_dynamic libc_getuid getuid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Issetugid() (tainted bool) {
+- r0, _, _ := RawSyscall(SYS_ISSETUGID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_issetugid_trampoline), 0, 0, 0)
+ tainted = bool(r0 != 0)
+ return
+ }
+
++func libc_issetugid_trampoline()
++
++//go:linkname libc_issetugid libc_issetugid
++//go:cgo_import_dynamic libc_issetugid issetugid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Kqueue() (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_kqueue_trampoline), 0, 0, 0)
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -863,6 +1411,11 @@ func Kqueue() (fd int, err error) {
+ return
+ }
+
++func libc_kqueue_trampoline()
++
++//go:linkname libc_kqueue libc_kqueue
++//go:cgo_import_dynamic libc_kqueue kqueue "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Lchown(path string, uid int, gid int) (err error) {
+@@ -871,13 +1424,18 @@ func Lchown(path string, uid int, gid int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
++ _, _, e1 := syscall_syscall(funcPC(libc_lchown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_lchown_trampoline()
++
++//go:linkname libc_lchown libc_lchown
++//go:cgo_import_dynamic libc_lchown lchown "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Link(path string, link string) (err error) {
+@@ -891,13 +1449,18 @@ func Link(path string, link string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_link_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_link_trampoline()
++
++//go:linkname libc_link libc_link
++//go:cgo_import_dynamic libc_link link "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
+@@ -911,37 +1474,32 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_linkat_trampoline), uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_linkat_trampoline()
++
++//go:linkname libc_linkat libc_linkat
++//go:cgo_import_dynamic libc_linkat linkat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Listen(s int, backlog int) (err error) {
+- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_listen_trampoline), uintptr(s), uintptr(backlog), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_listen_trampoline()
+
+-func Lstat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_listen libc_listen
++//go:cgo_import_dynamic libc_listen listen "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+@@ -951,13 +1509,18 @@ func Mkdir(path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_mkdir_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mkdir_trampoline()
++
++//go:linkname libc_mkdir libc_mkdir
++//go:cgo_import_dynamic libc_mkdir mkdir "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+@@ -966,13 +1529,18 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ _, _, e1 := syscall_syscall(funcPC(libc_mkdirat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mkdirat_trampoline()
++
++//go:linkname libc_mkdirat libc_mkdirat
++//go:cgo_import_dynamic libc_mkdirat mkdirat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mkfifo(path string, mode uint32) (err error) {
+@@ -981,13 +1549,18 @@ func Mkfifo(path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_mkfifo_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mkfifo_trampoline()
++
++//go:linkname libc_mkfifo libc_mkfifo
++//go:cgo_import_dynamic libc_mkfifo mkfifo "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mknod(path string, mode uint32, dev int) (err error) {
+@@ -996,13 +1569,18 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
++ _, _, e1 := syscall_syscall(funcPC(libc_mknod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mknod_trampoline()
++
++//go:linkname libc_mknod libc_mknod
++//go:cgo_import_dynamic libc_mknod mknod "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Open(path string, mode int, perm uint32) (fd int, err error) {
+@@ -1011,7 +1589,7 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+ if err != nil {
+ return
+ }
+- r0, _, e1 := Syscall(SYS_OPEN, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
++ r0, _, e1 := syscall_syscall(funcPC(libc_open_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1019,6 +1597,11 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+ return
+ }
+
++func libc_open_trampoline()
++
++//go:linkname libc_open libc_open
++//go:cgo_import_dynamic libc_open open "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
+@@ -1027,7 +1610,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
+ if err != nil {
+ return
+ }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_openat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1035,6 +1618,11 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
+ return
+ }
+
++func libc_openat_trampoline()
++
++//go:linkname libc_openat libc_openat
++//go:cgo_import_dynamic libc_openat openat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Pathconf(path string, name int) (val int, err error) {
+@@ -1043,7 +1631,7 @@ func Pathconf(path string, name int) (val int, err error) {
+ if err != nil {
+ return
+ }
+- r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_pathconf_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
+ val = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1051,6 +1639,11 @@ func Pathconf(path string, name int) (val int, err error) {
+ return
+ }
+
++func libc_pathconf_trampoline()
++
++//go:linkname libc_pathconf libc_pathconf
++//go:cgo_import_dynamic libc_pathconf pathconf "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+@@ -1060,7 +1653,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_pread_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1068,6 +1661,11 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+ return
+ }
+
++func libc_pread_trampoline()
++
++//go:linkname libc_pread libc_pread
++//go:cgo_import_dynamic libc_pread pread "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+@@ -1077,7 +1675,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_pwrite_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1085,6 +1683,11 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+ return
+ }
+
++func libc_pwrite_trampoline()
++
++//go:linkname libc_pwrite libc_pwrite
++//go:cgo_import_dynamic libc_pwrite pwrite "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func read(fd int, p []byte) (n int, err error) {
+@@ -1094,7 +1697,7 @@ func read(fd int, p []byte) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
++ r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1102,6 +1705,11 @@ func read(fd int, p []byte) (n int, err error) {
+ return
+ }
+
++func libc_read_trampoline()
++
++//go:linkname libc_read libc_read
++//go:cgo_import_dynamic libc_read read "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Readlink(path string, buf []byte) (n int, err error) {
+@@ -1116,7 +1724,7 @@ func Readlink(path string, buf []byte) (n int, err error) {
+ } else {
+ _p1 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
++ r0, _, e1 := syscall_syscall(funcPC(libc_readlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1124,6 +1732,11 @@ func Readlink(path string, buf []byte) (n int, err error) {
+ return
+ }
+
++func libc_readlink_trampoline()
++
++//go:linkname libc_readlink libc_readlink
++//go:cgo_import_dynamic libc_readlink readlink "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+@@ -1138,7 +1751,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+ } else {
+ _p1 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_readlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1146,6 +1759,11 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+ return
+ }
+
++func libc_readlinkat_trampoline()
++
++//go:linkname libc_readlinkat libc_readlinkat
++//go:cgo_import_dynamic libc_readlinkat readlinkat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Rename(from string, to string) (err error) {
+@@ -1159,13 +1777,18 @@ func Rename(from string, to string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_rename_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_rename_trampoline()
++
++//go:linkname libc_rename libc_rename
++//go:cgo_import_dynamic libc_rename rename "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
+@@ -1179,13 +1802,18 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_renameat_trampoline), uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_renameat_trampoline()
++
++//go:linkname libc_renameat libc_renameat
++//go:cgo_import_dynamic libc_renameat renameat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Revoke(path string) (err error) {
+@@ -1194,13 +1822,18 @@ func Revoke(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_revoke_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_revoke_trampoline()
++
++//go:linkname libc_revoke libc_revoke
++//go:cgo_import_dynamic libc_revoke revoke "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Rmdir(path string) (err error) {
+@@ -1209,17 +1842,22 @@ func Rmdir(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_rmdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_rmdir_trampoline()
++
++//go:linkname libc_rmdir libc_rmdir
++//go:cgo_import_dynamic libc_rmdir rmdir "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+- r0, r1, e1 := Syscall6(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0)
++ r0, r1, e1 := syscall_syscall6(funcPC(libc_lseek_trampoline), uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0)
+ newoffset = int64(int64(r1)<<32 | int64(r0))
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1227,46 +1865,72 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+ return
+ }
+
++func libc_lseek_trampoline()
++
++//go:linkname libc_lseek libc_lseek
++//go:cgo_import_dynamic libc_lseek lseek "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := syscall_syscall6(funcPC(libc_select_trampoline), uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_select_trampoline()
++
++//go:linkname libc_select libc_select
++//go:cgo_import_dynamic libc_select select "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setegid(egid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETEGID, uintptr(egid), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_setegid_trampoline), uintptr(egid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setegid_trampoline()
++
++//go:linkname libc_setegid libc_setegid
++//go:cgo_import_dynamic libc_setegid setegid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Seteuid(euid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETEUID, uintptr(euid), 0, 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_seteuid_trampoline), uintptr(euid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_seteuid_trampoline()
++
++//go:linkname libc_seteuid libc_seteuid
++//go:cgo_import_dynamic libc_seteuid seteuid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setgid(gid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETGID, uintptr(gid), 0, 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setgid_trampoline), uintptr(gid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setgid_trampoline()
++
++//go:linkname libc_setgid libc_setgid
++//go:cgo_import_dynamic libc_setgid setgid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setlogin(name string) (err error) {
+@@ -1275,77 +1939,112 @@ func Setlogin(name string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_setlogin_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setlogin_trampoline()
++
++//go:linkname libc_setlogin libc_setlogin
++//go:cgo_import_dynamic libc_setlogin setlogin "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setpgid_trampoline), uintptr(pid), uintptr(pgid), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setpgid_trampoline()
++
++//go:linkname libc_setpgid libc_setpgid
++//go:cgo_import_dynamic libc_setpgid setpgid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
++ _, _, e1 := syscall_syscall(funcPC(libc_setpriority_trampoline), uintptr(which), uintptr(who), uintptr(prio))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setpriority_trampoline()
++
++//go:linkname libc_setpriority libc_setpriority
++//go:cgo_import_dynamic libc_setpriority setpriority "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setprivexec(flag int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIVEXEC, uintptr(flag), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_setprivexec_trampoline), uintptr(flag), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setprivexec_trampoline()
++
++//go:linkname libc_setprivexec libc_setprivexec
++//go:cgo_import_dynamic libc_setprivexec setprivexec "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setregid(rgid int, egid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setregid_trampoline), uintptr(rgid), uintptr(egid), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setregid_trampoline()
++
++//go:linkname libc_setregid libc_setregid
++//go:cgo_import_dynamic libc_setregid setregid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setreuid(ruid int, euid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setreuid_trampoline), uintptr(ruid), uintptr(euid), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setreuid_trampoline()
++
++//go:linkname libc_setreuid libc_setreuid
++//go:cgo_import_dynamic libc_setreuid setreuid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setrlimit(which int, lim *Rlimit) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setrlimit_trampoline()
++
++//go:linkname libc_setrlimit libc_setrlimit
++//go:cgo_import_dynamic libc_setrlimit setrlimit "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_setsid_trampoline), 0, 0, 0)
+ pid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1353,55 +2052,40 @@ func Setsid() (pid int, err error) {
+ return
+ }
+
++func libc_setsid_trampoline()
++
++//go:linkname libc_setsid libc_setsid
++//go:cgo_import_dynamic libc_setsid setsid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Settimeofday(tp *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_settimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_settimeofday_trampoline()
+
+-func Setuid(uid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETUID, uintptr(uid), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_settimeofday libc_settimeofday
++//go:cgo_import_dynamic libc_settimeofday settimeofday "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++func Setuid(uid int) (err error) {
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setuid_trampoline), uintptr(uid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_setuid_trampoline()
+
+-func Statfs(path string, stat *Statfs_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_setuid libc_setuid
++//go:cgo_import_dynamic libc_setuid setuid "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+@@ -1416,13 +2100,18 @@ func Symlink(path string, link string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_SYMLINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_symlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_symlink_trampoline()
++
++//go:linkname libc_symlink libc_symlink
++//go:cgo_import_dynamic libc_symlink symlink "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+@@ -1436,23 +2125,33 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
++ _, _, e1 := syscall_syscall(funcPC(libc_symlinkat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_symlinkat_trampoline()
++
++//go:linkname libc_symlinkat libc_symlinkat
++//go:cgo_import_dynamic libc_symlinkat symlinkat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Sync() (err error) {
+- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_sync_trampoline), 0, 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_sync_trampoline()
++
++//go:linkname libc_sync libc_sync
++//go:cgo_import_dynamic libc_sync sync "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Truncate(path string, length int64) (err error) {
+@@ -1461,21 +2160,31 @@ func Truncate(path string, length int64) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32))
++ _, _, e1 := syscall_syscall(funcPC(libc_truncate_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_truncate_trampoline()
++
++//go:linkname libc_truncate libc_truncate
++//go:cgo_import_dynamic libc_truncate truncate "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Umask(newmask int) (oldmask int) {
+- r0, _, _ := Syscall(SYS_UMASK, uintptr(newmask), 0, 0)
++ r0, _, _ := syscall_syscall(funcPC(libc_umask_trampoline), uintptr(newmask), 0, 0)
+ oldmask = int(r0)
+ return
+ }
+
++func libc_umask_trampoline()
++
++//go:linkname libc_umask libc_umask
++//go:cgo_import_dynamic libc_umask umask "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Undelete(path string) (err error) {
+@@ -1484,13 +2193,18 @@ func Undelete(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UNDELETE, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_undelete_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_undelete_trampoline()
++
++//go:linkname libc_undelete libc_undelete
++//go:cgo_import_dynamic libc_undelete undelete "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Unlink(path string) (err error) {
+@@ -1499,13 +2213,18 @@ func Unlink(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UNLINK, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_unlink_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_unlink_trampoline()
++
++//go:linkname libc_unlink libc_unlink
++//go:cgo_import_dynamic libc_unlink unlink "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Unlinkat(dirfd int, path string, flags int) (err error) {
+@@ -1514,13 +2233,18 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
++ _, _, e1 := syscall_syscall(funcPC(libc_unlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_unlinkat_trampoline()
++
++//go:linkname libc_unlinkat libc_unlinkat
++//go:cgo_import_dynamic libc_unlinkat unlinkat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Unmount(path string, flags int) (err error) {
+@@ -1529,13 +2253,18 @@ func Unmount(path string, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_unmount_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_unmount_trampoline()
++
++//go:linkname libc_unmount libc_unmount
++//go:cgo_import_dynamic libc_unmount unmount "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func write(fd int, p []byte) (n int, err error) {
+@@ -1545,7 +2274,7 @@ func write(fd int, p []byte) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
++ r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1553,10 +2282,15 @@ func write(fd int, p []byte) (n int, err error) {
+ return
+ }
+
++func libc_write_trampoline()
++
++//go:linkname libc_write libc_write
++//go:cgo_import_dynamic libc_write write "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) {
+- r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0)
++ r0, _, e1 := syscall_syscall9(funcPC(libc_mmap_trampoline), uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0)
+ ret = uintptr(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1564,20 +2298,30 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
+ return
+ }
+
++func libc_mmap_trampoline()
++
++//go:linkname libc_mmap libc_mmap
++//go:cgo_import_dynamic libc_mmap mmap "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_munmap_trampoline), uintptr(addr), uintptr(length), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_munmap_trampoline()
++
++//go:linkname libc_munmap libc_munmap
++//go:cgo_import_dynamic libc_munmap munmap "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
++ r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1588,7 +2332,7 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
++ r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1599,7 +2343,7 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) {
+- r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
++ r0, r1, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
+ sec = int32(r0)
+ usec = int32(r1)
+ if e1 != 0 {
+@@ -1607,3 +2351,134 @@ func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) {
+ }
+ return
+ }
++
++func libc_gettimeofday_trampoline()
++
++//go:linkname libc_gettimeofday libc_gettimeofday
++//go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstat(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_fstat_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fstat_trampoline()
++
++//go:linkname libc_fstat libc_fstat
++//go:cgo_import_dynamic libc_fstat fstat "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall6(funcPC(libc_fstatat_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fstatat_trampoline()
++
++//go:linkname libc_fstatat libc_fstatat
++//go:cgo_import_dynamic libc_fstatat fstatat "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatfs(fd int, stat *Statfs_t) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_fstatfs_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fstatfs_trampoline()
++
++//go:linkname libc_fstatfs libc_fstatfs
++//go:cgo_import_dynamic libc_fstatfs fstatfs "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
++ r0, _, e1 := syscall_syscall(funcPC(libc_getfsstat_trampoline), uintptr(buf), uintptr(size), uintptr(flags))
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_getfsstat_trampoline()
++
++//go:linkname libc_getfsstat libc_getfsstat
++//go:cgo_import_dynamic libc_getfsstat getfsstat "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Lstat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_lstat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_lstat_trampoline()
++
++//go:linkname libc_lstat libc_lstat
++//go:cgo_import_dynamic libc_lstat lstat "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Stat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_stat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_stat_trampoline()
++
++//go:linkname libc_stat libc_stat
++//go:cgo_import_dynamic libc_stat stat "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Statfs(path string, stat *Statfs_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_statfs_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_statfs_trampoline()
++
++//go:linkname libc_statfs libc_statfs
++//go:cgo_import_dynamic libc_statfs statfs "/usr/lib/libSystem.B.dylib"
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s
+new file mode 100644
+index 00000000..b67f518f
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s
+@@ -0,0 +1,282 @@
++// go run mkasm_darwin.go arm
++// Code generated by the command above; DO NOT EDIT.
++
++// +build go1.12
++
++#include "textflag.h"
++TEXT ·libc_getgroups_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getgroups(SB)
++TEXT ·libc_setgroups_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setgroups(SB)
++TEXT ·libc_wait4_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_wait4(SB)
++TEXT ·libc_accept_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_accept(SB)
++TEXT ·libc_bind_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_bind(SB)
++TEXT ·libc_connect_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_connect(SB)
++TEXT ·libc_socket_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_socket(SB)
++TEXT ·libc_getsockopt_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getsockopt(SB)
++TEXT ·libc_setsockopt_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setsockopt(SB)
++TEXT ·libc_getpeername_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpeername(SB)
++TEXT ·libc_getsockname_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getsockname(SB)
++TEXT ·libc_shutdown_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_shutdown(SB)
++TEXT ·libc_socketpair_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_socketpair(SB)
++TEXT ·libc_recvfrom_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_recvfrom(SB)
++TEXT ·libc_sendto_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sendto(SB)
++TEXT ·libc_recvmsg_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_recvmsg(SB)
++TEXT ·libc_sendmsg_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sendmsg(SB)
++TEXT ·libc_kevent_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_kevent(SB)
++TEXT ·libc_utimes_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_utimes(SB)
++TEXT ·libc_futimes_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_futimes(SB)
++TEXT ·libc_poll_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_poll(SB)
++TEXT ·libc_madvise_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_madvise(SB)
++TEXT ·libc_mlock_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mlock(SB)
++TEXT ·libc_mlockall_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mlockall(SB)
++TEXT ·libc_mprotect_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mprotect(SB)
++TEXT ·libc_msync_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_msync(SB)
++TEXT ·libc_munlock_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_munlock(SB)
++TEXT ·libc_munlockall_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_munlockall(SB)
++TEXT ·libc_getattrlist_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getattrlist(SB)
++TEXT ·libc_pipe_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_pipe(SB)
++TEXT ·libc_getxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getxattr(SB)
++TEXT ·libc_fgetxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fgetxattr(SB)
++TEXT ·libc_setxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setxattr(SB)
++TEXT ·libc_fsetxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fsetxattr(SB)
++TEXT ·libc_removexattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_removexattr(SB)
++TEXT ·libc_fremovexattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fremovexattr(SB)
++TEXT ·libc_listxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_listxattr(SB)
++TEXT ·libc_flistxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_flistxattr(SB)
++TEXT ·libc_setattrlist_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setattrlist(SB)
++TEXT ·libc_fcntl_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fcntl(SB)
++TEXT ·libc_kill_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_kill(SB)
++TEXT ·libc_ioctl_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_ioctl(SB)
++TEXT ·libc_sysctl_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sysctl(SB)
++TEXT ·libc_sendfile_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sendfile(SB)
++TEXT ·libc_access_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_access(SB)
++TEXT ·libc_adjtime_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_adjtime(SB)
++TEXT ·libc_chdir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chdir(SB)
++TEXT ·libc_chflags_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chflags(SB)
++TEXT ·libc_chmod_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chmod(SB)
++TEXT ·libc_chown_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chown(SB)
++TEXT ·libc_chroot_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chroot(SB)
++TEXT ·libc_clock_gettime_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_clock_gettime(SB)
++TEXT ·libc_close_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_close(SB)
++TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_dup(SB)
++TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_dup2(SB)
++TEXT ·libc_exchangedata_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_exchangedata(SB)
++TEXT ·libc_exit_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_exit(SB)
++TEXT ·libc_faccessat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_faccessat(SB)
++TEXT ·libc_fchdir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchdir(SB)
++TEXT ·libc_fchflags_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchflags(SB)
++TEXT ·libc_fchmod_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchmod(SB)
++TEXT ·libc_fchmodat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchmodat(SB)
++TEXT ·libc_fchown_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchown(SB)
++TEXT ·libc_fchownat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchownat(SB)
++TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_flock(SB)
++TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fpathconf(SB)
++TEXT ·libc_fsync_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fsync(SB)
++TEXT ·libc_ftruncate_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_ftruncate(SB)
++TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getdtablesize(SB)
++TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getegid(SB)
++TEXT ·libc_geteuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_geteuid(SB)
++TEXT ·libc_getgid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getgid(SB)
++TEXT ·libc_getpgid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpgid(SB)
++TEXT ·libc_getpgrp_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpgrp(SB)
++TEXT ·libc_getpid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpid(SB)
++TEXT ·libc_getppid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getppid(SB)
++TEXT ·libc_getpriority_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpriority(SB)
++TEXT ·libc_getrlimit_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getrlimit(SB)
++TEXT ·libc_getrusage_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getrusage(SB)
++TEXT ·libc_getsid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getsid(SB)
++TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getuid(SB)
++TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_issetugid(SB)
++TEXT ·libc_kqueue_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_kqueue(SB)
++TEXT ·libc_lchown_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_lchown(SB)
++TEXT ·libc_link_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_link(SB)
++TEXT ·libc_linkat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_linkat(SB)
++TEXT ·libc_listen_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_listen(SB)
++TEXT ·libc_mkdir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mkdir(SB)
++TEXT ·libc_mkdirat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mkdirat(SB)
++TEXT ·libc_mkfifo_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mkfifo(SB)
++TEXT ·libc_mknod_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mknod(SB)
++TEXT ·libc_open_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_open(SB)
++TEXT ·libc_openat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_openat(SB)
++TEXT ·libc_pathconf_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_pathconf(SB)
++TEXT ·libc_pread_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_pread(SB)
++TEXT ·libc_pwrite_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_pwrite(SB)
++TEXT ·libc_read_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_read(SB)
++TEXT ·libc_readlink_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_readlink(SB)
++TEXT ·libc_readlinkat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_readlinkat(SB)
++TEXT ·libc_rename_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_rename(SB)
++TEXT ·libc_renameat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_renameat(SB)
++TEXT ·libc_revoke_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_revoke(SB)
++TEXT ·libc_rmdir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_rmdir(SB)
++TEXT ·libc_lseek_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_lseek(SB)
++TEXT ·libc_select_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_select(SB)
++TEXT ·libc_setegid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setegid(SB)
++TEXT ·libc_seteuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_seteuid(SB)
++TEXT ·libc_setgid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setgid(SB)
++TEXT ·libc_setlogin_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setlogin(SB)
++TEXT ·libc_setpgid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setpgid(SB)
++TEXT ·libc_setpriority_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setpriority(SB)
++TEXT ·libc_setprivexec_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setprivexec(SB)
++TEXT ·libc_setregid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setregid(SB)
++TEXT ·libc_setreuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setreuid(SB)
++TEXT ·libc_setrlimit_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setrlimit(SB)
++TEXT ·libc_setsid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setsid(SB)
++TEXT ·libc_settimeofday_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_settimeofday(SB)
++TEXT ·libc_setuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setuid(SB)
++TEXT ·libc_symlink_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_symlink(SB)
++TEXT ·libc_symlinkat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_symlinkat(SB)
++TEXT ·libc_sync_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sync(SB)
++TEXT ·libc_truncate_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_truncate(SB)
++TEXT ·libc_umask_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_umask(SB)
++TEXT ·libc_undelete_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_undelete(SB)
++TEXT ·libc_unlink_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_unlink(SB)
++TEXT ·libc_unlinkat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_unlinkat(SB)
++TEXT ·libc_unmount_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_unmount(SB)
++TEXT ·libc_write_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_write(SB)
++TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mmap(SB)
++TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_munmap(SB)
++TEXT ·libc_gettimeofday_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_gettimeofday(SB)
++TEXT ·libc_fstat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fstat(SB)
++TEXT ·libc_fstatat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fstatat(SB)
++TEXT ·libc_fstatfs_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fstatfs(SB)
++TEXT ·libc_getfsstat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getfsstat(SB)
++TEXT ·libc_lstat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_lstat(SB)
++TEXT ·libc_stat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_stat(SB)
++TEXT ·libc_statfs_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_statfs(SB)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_11.go
+similarity index 84%
+copy from vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
+copy to vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_11.go
+index 07c6ebc9..8c3bb3a2 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_11.go
+@@ -1,7 +1,7 @@
+-// mksyscall.pl -tags darwin,arm64 syscall_bsd.go syscall_darwin.go syscall_darwin_arm64.go
++// go run mksyscall.go -tags darwin,arm64,!go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_arm64.1_11.go syscall_darwin_arm64.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build darwin,arm64
++// +build darwin,arm64,!go1.12
+
+ package unix
+
+@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimes(path string, timeval *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -366,8 +350,8 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
++ _, _, e1 := Syscall6(SYS_GETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -388,6 +372,161 @@ func pipe() (r int, w int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func removexattr(path string, attr string, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fremovexattr(fd int, attr string, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func listxattr(path string, dest *byte, size int, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
++ r0, _, e1 := Syscall6(SYS_FLISTXATTR, uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
++ _, _, e1 := Syscall6(SYS_SETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fcntl(fd int, cmd int, arg int) (val int, err error) {
++ r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
++ val = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func kill(pid int, signum int, posix int) (err error) {
+ _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
+ if e1 != 0 {
+@@ -408,6 +547,32 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) {
++ _, _, e1 := Syscall6(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -672,26 +837,6 @@ func Fpathconf(fd int, name int) (val int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fstatfs(fd int, stat *Statfs_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Fsync(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -712,23 +857,6 @@ func Ftruncate(fd int, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Getdtablesize() (size int) {
+ r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
+ size = int(r0)
+@@ -930,21 +1058,6 @@ func Listen(s int, backlog int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Lstat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Mkdir(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1229,8 +1342,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1375,36 +1489,6 @@ func Setuid(uid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Statfs(path string, stat *Statfs_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Symlink(path string, link string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1607,3 +1691,94 @@ func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) {
+ }
+ return
+ }
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstat(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatfs(fd int, stat *Statfs_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_GETFSSTAT, uintptr(buf), uintptr(size), uintptr(flags))
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Lstat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Stat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Statfs(path string, stat *Statfs_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.go
+new file mode 100644
+index 00000000..d64e6c80
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.go
+@@ -0,0 +1,41 @@
++// go run mksyscall.go -tags darwin,arm64,go1.13 syscall_darwin.1_13.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build darwin,arm64,go1.13
++
++package unix
++
++import (
++ "syscall"
++ "unsafe"
++)
++
++var _ syscall.Errno
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func closedir(dir uintptr) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_closedir_trampoline), uintptr(dir), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_closedir_trampoline()
++
++//go:linkname libc_closedir libc_closedir
++//go:cgo_import_dynamic libc_closedir closedir "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) {
++ r0, _, _ := syscall_syscall(funcPC(libc_readdir_r_trampoline), uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result)))
++ res = Errno(r0)
++ return
++}
++
++func libc_readdir_r_trampoline()
++
++//go:linkname libc_readdir_r libc_readdir_r
++//go:cgo_import_dynamic libc_readdir_r readdir_r "/usr/lib/libSystem.B.dylib"
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s
+new file mode 100644
+index 00000000..b29dabb0
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s
+@@ -0,0 +1,12 @@
++// go run mkasm_darwin.go arm64
++// Code generated by the command above; DO NOT EDIT.
++
++// +build go1.13
++
++#include "textflag.h"
++TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fdopendir(SB)
++TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_closedir(SB)
++TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_readdir_r(SB)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
+index 07c6ebc9..a8709f72 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
+@@ -1,7 +1,7 @@
+-// mksyscall.pl -tags darwin,arm64 syscall_bsd.go syscall_darwin.go syscall_darwin_arm64.go
++// go run mksyscall.go -tags darwin,arm64,go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_arm64.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build darwin,arm64
++// +build darwin,arm64,go1.12
+
+ package unix
+
+@@ -15,7 +15,7 @@ var _ syscall.Errno
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -23,20 +23,30 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
+ return
+ }
+
++func libc_getgroups_trampoline()
++
++//go:linkname libc_getgroups libc_getgroups
++//go:cgo_import_dynamic libc_getgroups getgroups "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func setgroups(ngid int, gid *_Gid_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setgroups_trampoline()
++
++//go:linkname libc_setgroups libc_setgroups
++//go:cgo_import_dynamic libc_setgroups setgroups "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_wait4_trampoline), uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+ wpid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -44,10 +54,15 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err
+ return
+ }
+
++func libc_wait4_trampoline()
++
++//go:linkname libc_wait4 libc_wait4
++//go:cgo_import_dynamic libc_wait4 wait4 "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++ r0, _, e1 := syscall_syscall(funcPC(libc_accept_trampoline), uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -55,30 +70,45 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+ return
+ }
+
++func libc_accept_trampoline()
++
++//go:linkname libc_accept libc_accept
++//go:cgo_import_dynamic libc_accept accept "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
+- _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen))
++ _, _, e1 := syscall_syscall(funcPC(libc_bind_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_bind_trampoline()
++
++//go:linkname libc_bind libc_bind
++//go:cgo_import_dynamic libc_bind bind "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
+- _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen))
++ _, _, e1 := syscall_syscall(funcPC(libc_connect_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_connect_trampoline()
++
++//go:linkname libc_connect libc_connect
++//go:cgo_import_dynamic libc_connect connect "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func socket(domain int, typ int, proto int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto))
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_socket_trampoline), uintptr(domain), uintptr(typ), uintptr(proto))
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -86,66 +116,101 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
+ return
+ }
+
++func libc_socket_trampoline()
++
++//go:linkname libc_socket libc_socket
++//go:cgo_import_dynamic libc_socket socket "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
+- _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_getsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getsockopt_trampoline()
++
++//go:linkname libc_getsockopt libc_getsockopt
++//go:cgo_import_dynamic libc_getsockopt getsockopt "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_setsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setsockopt_trampoline()
++
++//go:linkname libc_setsockopt libc_setsockopt
++//go:cgo_import_dynamic libc_setsockopt setsockopt "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_getpeername_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getpeername_trampoline()
++
++//go:linkname libc_getpeername libc_getpeername
++//go:cgo_import_dynamic libc_getpeername getpeername "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_getsockname_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getsockname_trampoline()
++
++//go:linkname libc_getsockname libc_getsockname
++//go:cgo_import_dynamic libc_getsockname getsockname "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Shutdown(s int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(s), uintptr(how), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_shutdown_trampoline), uintptr(s), uintptr(how), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_shutdown_trampoline()
++
++//go:linkname libc_shutdown libc_shutdown
++//go:cgo_import_dynamic libc_shutdown shutdown "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
+- _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
++ _, _, e1 := syscall_rawSyscall6(funcPC(libc_socketpair_trampoline), uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_socketpair_trampoline()
++
++//go:linkname libc_socketpair libc_socketpair
++//go:cgo_import_dynamic libc_socketpair socketpair "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
+@@ -155,7 +220,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
++ r0, _, e1 := syscall_syscall6(funcPC(libc_recvfrom_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -163,6 +228,11 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
+ return
+ }
+
++func libc_recvfrom_trampoline()
++
++//go:linkname libc_recvfrom libc_recvfrom
++//go:cgo_import_dynamic libc_recvfrom recvfrom "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
+@@ -172,17 +242,22 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
++ _, _, e1 := syscall_syscall6(funcPC(libc_sendto_trampoline), uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_sendto_trampoline()
++
++//go:linkname libc_sendto libc_sendto
++//go:cgo_import_dynamic libc_sendto sendto "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
++ r0, _, e1 := syscall_syscall(funcPC(libc_recvmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -190,10 +265,15 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+ return
+ }
+
++func libc_recvmsg_trampoline()
++
++//go:linkname libc_recvmsg libc_recvmsg
++//go:cgo_import_dynamic libc_recvmsg recvmsg "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
++ r0, _, e1 := syscall_syscall(funcPC(libc_sendmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -201,10 +281,15 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+ return
+ }
+
++func libc_sendmsg_trampoline()
++
++//go:linkname libc_sendmsg libc_sendmsg
++//go:cgo_import_dynamic libc_sendmsg sendmsg "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_KEVENT, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
++ r0, _, e1 := syscall_syscall6(funcPC(libc_kevent_trampoline), uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -212,21 +297,10 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_kevent_trampoline()
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_kevent libc_kevent
++//go:cgo_import_dynamic libc_kevent kevent "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+@@ -236,34 +310,49 @@ func utimes(path string, timeval *[2]Timeval) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_utimes_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_utimes_trampoline()
++
++//go:linkname libc_utimes libc_utimes
++//go:cgo_import_dynamic libc_utimes utimes "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func futimes(fd int, timeval *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMES, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_futimes_trampoline), uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_futimes_trampoline()
++
++//go:linkname libc_futimes libc_futimes
++//go:cgo_import_dynamic libc_futimes futimes "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := syscall_syscall(funcPC(libc_poll_trampoline), uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_poll_trampoline()
++
++//go:linkname libc_poll libc_poll
++//go:cgo_import_dynamic libc_poll poll "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Madvise(b []byte, behav int) (err error) {
+@@ -273,13 +362,18 @@ func Madvise(b []byte, behav int) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(behav))
++ _, _, e1 := syscall_syscall(funcPC(libc_madvise_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(behav))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_madvise_trampoline()
++
++//go:linkname libc_madvise libc_madvise
++//go:cgo_import_dynamic libc_madvise madvise "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mlock(b []byte) (err error) {
+@@ -289,23 +383,33 @@ func Mlock(b []byte) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_mlock_trampoline), uintptr(_p0), uintptr(len(b)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mlock_trampoline()
++
++//go:linkname libc_mlock libc_mlock
++//go:cgo_import_dynamic libc_mlock mlock "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_mlockall_trampoline), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mlockall_trampoline()
++
++//go:linkname libc_mlockall libc_mlockall
++//go:cgo_import_dynamic libc_mlockall mlockall "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mprotect(b []byte, prot int) (err error) {
+@@ -315,13 +419,18 @@ func Mprotect(b []byte, prot int) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
++ _, _, e1 := syscall_syscall(funcPC(libc_mprotect_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(prot))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mprotect_trampoline()
++
++//go:linkname libc_mprotect libc_mprotect
++//go:cgo_import_dynamic libc_mprotect mprotect "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Msync(b []byte, flags int) (err error) {
+@@ -331,13 +440,18 @@ func Msync(b []byte, flags int) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
++ _, _, e1 := syscall_syscall(funcPC(libc_msync_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(flags))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_msync_trampoline()
++
++//go:linkname libc_msync libc_msync
++//go:cgo_import_dynamic libc_msync msync "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Munlock(b []byte) (err error) {
+@@ -347,37 +461,52 @@ func Munlock(b []byte) (err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_munlock_trampoline), uintptr(_p0), uintptr(len(b)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_munlock_trampoline()
++
++//go:linkname libc_munlock libc_munlock
++//go:cgo_import_dynamic libc_munlock munlock "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_munlockall_trampoline), 0, 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_munlockall_trampoline()
++
++//go:linkname libc_munlockall libc_munlockall
++//go:cgo_import_dynamic libc_munlockall munlockall "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
++ _, _, e1 := syscall_syscall6(funcPC(libc_getattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getattrlist_trampoline()
++
++//go:linkname libc_getattrlist libc_getattrlist
++//go:cgo_import_dynamic libc_getattrlist getattrlist "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func pipe() (r int, w int, err error) {
+- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
++ r0, r1, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), 0, 0, 0)
+ r = int(r0)
+ w = int(r1)
+ if e1 != 0 {
+@@ -386,26 +515,282 @@ func pipe() (r int, w int, err error) {
+ return
+ }
+
++func libc_pipe_trampoline()
++
++//go:linkname libc_pipe libc_pipe
++//go:cgo_import_dynamic libc_pipe pipe "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := syscall_syscall6(funcPC(libc_getxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_getxattr_trampoline()
++
++//go:linkname libc_getxattr libc_getxattr
++//go:cgo_import_dynamic libc_getxattr getxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := syscall_syscall6(funcPC(libc_fgetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options))
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fgetxattr_trampoline()
++
++//go:linkname libc_fgetxattr libc_fgetxattr
++//go:cgo_import_dynamic libc_fgetxattr fgetxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall6(funcPC(libc_setxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_setxattr_trampoline()
++
++//go:linkname libc_setxattr libc_setxattr
++//go:cgo_import_dynamic libc_setxattr setxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall6(funcPC(libc_fsetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fsetxattr_trampoline()
++
++//go:linkname libc_fsetxattr libc_fsetxattr
++//go:cgo_import_dynamic libc_fsetxattr fsetxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func removexattr(path string, attr string, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_removexattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_removexattr_trampoline()
++
++//go:linkname libc_removexattr libc_removexattr
++//go:cgo_import_dynamic libc_removexattr removexattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fremovexattr(fd int, attr string, options int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_fremovexattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fremovexattr_trampoline()
++
++//go:linkname libc_fremovexattr libc_fremovexattr
++//go:cgo_import_dynamic libc_fremovexattr fremovexattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func listxattr(path string, dest *byte, size int, options int) (sz int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := syscall_syscall6(funcPC(libc_listxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_listxattr_trampoline()
++
++//go:linkname libc_listxattr libc_listxattr
++//go:cgo_import_dynamic libc_listxattr listxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) {
++ r0, _, e1 := syscall_syscall6(funcPC(libc_flistxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0)
++ sz = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_flistxattr_trampoline()
++
++//go:linkname libc_flistxattr libc_flistxattr
++//go:cgo_import_dynamic libc_flistxattr flistxattr "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) {
++ _, _, e1 := syscall_syscall6(funcPC(libc_setattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_setattrlist_trampoline()
++
++//go:linkname libc_setattrlist libc_setattrlist
++//go:cgo_import_dynamic libc_setattrlist setattrlist "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fcntl(fd int, cmd int, arg int) (val int, err error) {
++ r0, _, e1 := syscall_syscall(funcPC(libc_fcntl_trampoline), uintptr(fd), uintptr(cmd), uintptr(arg))
++ val = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fcntl_trampoline()
++
++//go:linkname libc_fcntl libc_fcntl
++//go:cgo_import_dynamic libc_fcntl fcntl "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func kill(pid int, signum int, posix int) (err error) {
+- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
++ _, _, e1 := syscall_syscall(funcPC(libc_kill_trampoline), uintptr(pid), uintptr(signum), uintptr(posix))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_kill_trampoline()
++
++//go:linkname libc_kill libc_kill
++//go:cgo_import_dynamic libc_kill kill "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func ioctl(fd int, req uint, arg uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
++ _, _, e1 := syscall_syscall(funcPC(libc_ioctl_trampoline), uintptr(fd), uintptr(req), uintptr(arg))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_ioctl_trampoline()
++
++//go:linkname libc_ioctl libc_ioctl
++//go:cgo_import_dynamic libc_ioctl ioctl "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := syscall_syscall6(funcPC(libc_sysctl_trampoline), uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_sysctl_trampoline()
++
++//go:linkname libc_sysctl libc_sysctl
++//go:cgo_import_dynamic libc_sysctl sysctl "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) {
++ _, _, e1 := syscall_syscall6(funcPC(libc_sendfile_trampoline), uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_sendfile_trampoline()
++
++//go:linkname libc_sendfile libc_sendfile
++//go:cgo_import_dynamic libc_sendfile sendfile "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Access(path string, mode uint32) (err error) {
+@@ -414,23 +799,33 @@ func Access(path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_access_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_access_trampoline()
++
++//go:linkname libc_access libc_access
++//go:cgo_import_dynamic libc_access access "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_adjtime_trampoline), uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_adjtime_trampoline()
++
++//go:linkname libc_adjtime libc_adjtime
++//go:cgo_import_dynamic libc_adjtime adjtime "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chdir(path string) (err error) {
+@@ -439,13 +834,18 @@ func Chdir(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_chdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chdir_trampoline()
++
++//go:linkname libc_chdir libc_chdir
++//go:cgo_import_dynamic libc_chdir chdir "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chflags(path string, flags int) (err error) {
+@@ -454,13 +854,18 @@ func Chflags(path string, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_chflags_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chflags_trampoline()
++
++//go:linkname libc_chflags libc_chflags
++//go:cgo_import_dynamic libc_chflags chflags "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chmod(path string, mode uint32) (err error) {
+@@ -469,13 +874,18 @@ func Chmod(path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_chmod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chmod_trampoline()
++
++//go:linkname libc_chmod libc_chmod
++//go:cgo_import_dynamic libc_chmod chmod "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chown(path string, uid int, gid int) (err error) {
+@@ -484,13 +894,18 @@ func Chown(path string, uid int, gid int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
++ _, _, e1 := syscall_syscall(funcPC(libc_chown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chown_trampoline()
++
++//go:linkname libc_chown libc_chown
++//go:cgo_import_dynamic libc_chown chown "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Chroot(path string) (err error) {
+@@ -499,27 +914,52 @@ func Chroot(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_chroot_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_chroot_trampoline()
++
++//go:linkname libc_chroot libc_chroot
++//go:cgo_import_dynamic libc_chroot chroot "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ClockGettime(clockid int32, time *Timespec) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_clock_gettime_trampoline), uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_clock_gettime_trampoline()
++
++//go:linkname libc_clock_gettime libc_clock_gettime
++//go:cgo_import_dynamic libc_clock_gettime clock_gettime "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_close_trampoline), uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_close_trampoline()
++
++//go:linkname libc_close libc_close
++//go:cgo_import_dynamic libc_close close "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Dup(fd int) (nfd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_dup_trampoline), uintptr(fd), 0, 0)
+ nfd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -527,16 +967,26 @@ func Dup(fd int) (nfd int, err error) {
+ return
+ }
+
++func libc_dup_trampoline()
++
++//go:linkname libc_dup libc_dup
++//go:cgo_import_dynamic libc_dup dup "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Dup2(from int, to int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_dup2_trampoline), uintptr(from), uintptr(to), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_dup2_trampoline()
++
++//go:linkname libc_dup2 libc_dup2
++//go:cgo_import_dynamic libc_dup2 dup2 "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Exchangedata(path1 string, path2 string, options int) (err error) {
+@@ -550,20 +1000,30 @@ func Exchangedata(path1 string, path2 string, options int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_EXCHANGEDATA, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
++ _, _, e1 := syscall_syscall(funcPC(libc_exchangedata_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_exchangedata_trampoline()
++
++//go:linkname libc_exchangedata libc_exchangedata
++//go:cgo_import_dynamic libc_exchangedata exchangedata "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Exit(code int) {
+- Syscall(SYS_EXIT, uintptr(code), 0, 0)
++ syscall_syscall(funcPC(libc_exit_trampoline), uintptr(code), 0, 0)
+ return
+ }
+
++func libc_exit_trampoline()
++
++//go:linkname libc_exit libc_exit
++//go:cgo_import_dynamic libc_exit exit "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+@@ -572,43 +1032,63 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_faccessat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_faccessat_trampoline()
++
++//go:linkname libc_faccessat libc_faccessat
++//go:cgo_import_dynamic libc_faccessat faccessat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_fchdir_trampoline), uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchdir_trampoline()
++
++//go:linkname libc_fchdir libc_fchdir
++//go:cgo_import_dynamic libc_fchdir fchdir "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchflags(fd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHFLAGS, uintptr(fd), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_fchflags_trampoline), uintptr(fd), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchflags_trampoline()
++
++//go:linkname libc_fchflags libc_fchflags
++//go:cgo_import_dynamic libc_fchflags fchflags "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_fchmod_trampoline), uintptr(fd), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchmod_trampoline()
++
++//go:linkname libc_fchmod libc_fchmod
++//go:cgo_import_dynamic libc_fchmod fchmod "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
+@@ -617,23 +1097,33 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_fchmodat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchmodat_trampoline()
++
++//go:linkname libc_fchmodat libc_fchmodat
++//go:cgo_import_dynamic libc_fchmodat fchmodat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchown(fd int, uid int, gid int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
++ _, _, e1 := syscall_syscall(funcPC(libc_fchown_trampoline), uintptr(fd), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchown_trampoline()
++
++//go:linkname libc_fchown libc_fchown
++//go:cgo_import_dynamic libc_fchown fchown "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+@@ -642,27 +1132,37 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_fchownat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_fchownat_trampoline()
++
++//go:linkname libc_fchownat libc_fchownat
++//go:cgo_import_dynamic libc_fchownat fchownat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_flock_trampoline), uintptr(fd), uintptr(how), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_flock_trampoline()
++
++//go:linkname libc_flock libc_flock
++//go:cgo_import_dynamic libc_flock flock "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fpathconf(fd int, name int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FPATHCONF, uintptr(fd), uintptr(name), 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_fpathconf_trampoline), uintptr(fd), uintptr(name), 0)
+ val = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -670,99 +1170,97 @@ func Fpathconf(fd int, name int) (val int, err error) {
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_fpathconf_trampoline()
+
+-func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_fpathconf libc_fpathconf
++//go:cgo_import_dynamic libc_fpathconf fpathconf "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstatfs(fd int, stat *Statfs_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++func Fsync(fd int) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_fsync_trampoline), uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_fsync_trampoline()
+
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_fsync libc_fsync
++//go:cgo_import_dynamic libc_fsync fsync "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Ftruncate(fd int, length int64) (err error) {
+- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_ftruncate_trampoline), uintptr(fd), uintptr(length), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++func libc_ftruncate_trampoline()
++
++//go:linkname libc_ftruncate libc_ftruncate
++//go:cgo_import_dynamic libc_ftruncate ftruncate "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getdtablesize() (size int) {
+- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
++ r0, _, _ := syscall_syscall(funcPC(libc_getdtablesize_trampoline), 0, 0, 0)
+ size = int(r0)
+ return
+ }
+
++func libc_getdtablesize_trampoline()
++
++//go:linkname libc_getdtablesize libc_getdtablesize
++//go:cgo_import_dynamic libc_getdtablesize getdtablesize "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getegid_trampoline), 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+
++func libc_getegid_trampoline()
++
++//go:linkname libc_getegid libc_getegid
++//go:cgo_import_dynamic libc_getegid getegid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Geteuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_geteuid_trampoline), 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+
++func libc_geteuid_trampoline()
++
++//go:linkname libc_geteuid libc_geteuid
++//go:cgo_import_dynamic libc_geteuid geteuid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getgid_trampoline), 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+
++func libc_getgid_trampoline()
++
++//go:linkname libc_getgid libc_getgid
++//go:cgo_import_dynamic libc_getgid getgid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getpgid_trampoline), uintptr(pid), 0, 0)
+ pgid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -770,34 +1268,54 @@ func Getpgid(pid int) (pgid int, err error) {
+ return
+ }
+
++func libc_getpgid_trampoline()
++
++//go:linkname libc_getpgid libc_getpgid
++//go:cgo_import_dynamic libc_getpgid getpgid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpgrp() (pgrp int) {
+- r0, _, _ := RawSyscall(SYS_GETPGRP, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getpgrp_trampoline), 0, 0, 0)
+ pgrp = int(r0)
+ return
+ }
+
++func libc_getpgrp_trampoline()
++
++//go:linkname libc_getpgrp libc_getpgrp
++//go:cgo_import_dynamic libc_getpgrp getpgrp "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getpid_trampoline), 0, 0, 0)
+ pid = int(r0)
+ return
+ }
+
++func libc_getpid_trampoline()
++
++//go:linkname libc_getpid libc_getpid
++//go:cgo_import_dynamic libc_getpid getpid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getppid_trampoline), 0, 0, 0)
+ ppid = int(r0)
+ return
+ }
+
++func libc_getppid_trampoline()
++
++//go:linkname libc_getppid libc_getppid
++//go:cgo_import_dynamic libc_getppid getppid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_getpriority_trampoline), uintptr(which), uintptr(who), 0)
+ prio = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -805,30 +1323,45 @@ func Getpriority(which int, who int) (prio int, err error) {
+ return
+ }
+
++func libc_getpriority_trampoline()
++
++//go:linkname libc_getpriority libc_getpriority
++//go:cgo_import_dynamic libc_getpriority getpriority "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getrlimit(which int, lim *Rlimit) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_getrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getrlimit_trampoline()
++
++//go:linkname libc_getrlimit libc_getrlimit
++//go:cgo_import_dynamic libc_getrlimit getrlimit "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_getrusage_trampoline), uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_getrusage_trampoline()
++
++//go:linkname libc_getrusage libc_getrusage
++//go:cgo_import_dynamic libc_getrusage getrusage "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_getsid_trampoline), uintptr(pid), 0, 0)
+ sid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -836,26 +1369,41 @@ func Getsid(pid int) (sid int, err error) {
+ return
+ }
+
++func libc_getsid_trampoline()
++
++//go:linkname libc_getsid libc_getsid
++//go:cgo_import_dynamic libc_getsid getsid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_getuid_trampoline), 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+
++func libc_getuid_trampoline()
++
++//go:linkname libc_getuid libc_getuid
++//go:cgo_import_dynamic libc_getuid getuid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Issetugid() (tainted bool) {
+- r0, _, _ := RawSyscall(SYS_ISSETUGID, 0, 0, 0)
++ r0, _, _ := syscall_rawSyscall(funcPC(libc_issetugid_trampoline), 0, 0, 0)
+ tainted = bool(r0 != 0)
+ return
+ }
+
++func libc_issetugid_trampoline()
++
++//go:linkname libc_issetugid libc_issetugid
++//go:cgo_import_dynamic libc_issetugid issetugid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Kqueue() (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_kqueue_trampoline), 0, 0, 0)
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -863,6 +1411,11 @@ func Kqueue() (fd int, err error) {
+ return
+ }
+
++func libc_kqueue_trampoline()
++
++//go:linkname libc_kqueue libc_kqueue
++//go:cgo_import_dynamic libc_kqueue kqueue "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Lchown(path string, uid int, gid int) (err error) {
+@@ -871,13 +1424,18 @@ func Lchown(path string, uid int, gid int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
++ _, _, e1 := syscall_syscall(funcPC(libc_lchown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_lchown_trampoline()
++
++//go:linkname libc_lchown libc_lchown
++//go:cgo_import_dynamic libc_lchown lchown "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Link(path string, link string) (err error) {
+@@ -891,13 +1449,18 @@ func Link(path string, link string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_link_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_link_trampoline()
++
++//go:linkname libc_link libc_link
++//go:cgo_import_dynamic libc_link link "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
+@@ -911,37 +1474,32 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_linkat_trampoline), uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_linkat_trampoline()
++
++//go:linkname libc_linkat libc_linkat
++//go:cgo_import_dynamic libc_linkat linkat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Listen(s int, backlog int) (err error) {
+- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_listen_trampoline), uintptr(s), uintptr(backlog), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_listen_trampoline()
+
+-func Lstat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_listen libc_listen
++//go:cgo_import_dynamic libc_listen listen "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+@@ -951,13 +1509,18 @@ func Mkdir(path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_mkdir_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mkdir_trampoline()
++
++//go:linkname libc_mkdir libc_mkdir
++//go:cgo_import_dynamic libc_mkdir mkdir "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+@@ -966,13 +1529,18 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ _, _, e1 := syscall_syscall(funcPC(libc_mkdirat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mkdirat_trampoline()
++
++//go:linkname libc_mkdirat libc_mkdirat
++//go:cgo_import_dynamic libc_mkdirat mkdirat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mkfifo(path string, mode uint32) (err error) {
+@@ -981,13 +1549,18 @@ func Mkfifo(path string, mode uint32) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_mkfifo_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mkfifo_trampoline()
++
++//go:linkname libc_mkfifo libc_mkfifo
++//go:cgo_import_dynamic libc_mkfifo mkfifo "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Mknod(path string, mode uint32, dev int) (err error) {
+@@ -996,13 +1569,18 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
++ _, _, e1 := syscall_syscall(funcPC(libc_mknod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_mknod_trampoline()
++
++//go:linkname libc_mknod libc_mknod
++//go:cgo_import_dynamic libc_mknod mknod "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Open(path string, mode int, perm uint32) (fd int, err error) {
+@@ -1011,7 +1589,7 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+ if err != nil {
+ return
+ }
+- r0, _, e1 := Syscall(SYS_OPEN, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
++ r0, _, e1 := syscall_syscall(funcPC(libc_open_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm))
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1019,6 +1597,11 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+ return
+ }
+
++func libc_open_trampoline()
++
++//go:linkname libc_open libc_open
++//go:cgo_import_dynamic libc_open open "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
+@@ -1027,7 +1610,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
+ if err != nil {
+ return
+ }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_openat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1035,6 +1618,11 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
+ return
+ }
+
++func libc_openat_trampoline()
++
++//go:linkname libc_openat libc_openat
++//go:cgo_import_dynamic libc_openat openat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Pathconf(path string, name int) (val int, err error) {
+@@ -1043,7 +1631,7 @@ func Pathconf(path string, name int) (val int, err error) {
+ if err != nil {
+ return
+ }
+- r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
++ r0, _, e1 := syscall_syscall(funcPC(libc_pathconf_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(name), 0)
+ val = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1051,6 +1639,11 @@ func Pathconf(path string, name int) (val int, err error) {
+ return
+ }
+
++func libc_pathconf_trampoline()
++
++//go:linkname libc_pathconf libc_pathconf
++//go:cgo_import_dynamic libc_pathconf pathconf "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+@@ -1060,7 +1653,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_pread_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1068,6 +1661,11 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+ return
+ }
+
++func libc_pread_trampoline()
++
++//go:linkname libc_pread libc_pread
++//go:cgo_import_dynamic libc_pread pread "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+@@ -1077,7 +1675,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_pwrite_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1085,6 +1683,11 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+ return
+ }
+
++func libc_pwrite_trampoline()
++
++//go:linkname libc_pwrite libc_pwrite
++//go:cgo_import_dynamic libc_pwrite pwrite "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func read(fd int, p []byte) (n int, err error) {
+@@ -1094,7 +1697,7 @@ func read(fd int, p []byte) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
++ r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1102,6 +1705,11 @@ func read(fd int, p []byte) (n int, err error) {
+ return
+ }
+
++func libc_read_trampoline()
++
++//go:linkname libc_read libc_read
++//go:cgo_import_dynamic libc_read read "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Readlink(path string, buf []byte) (n int, err error) {
+@@ -1116,7 +1724,7 @@ func Readlink(path string, buf []byte) (n int, err error) {
+ } else {
+ _p1 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
++ r0, _, e1 := syscall_syscall(funcPC(libc_readlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1124,6 +1732,11 @@ func Readlink(path string, buf []byte) (n int, err error) {
+ return
+ }
+
++func libc_readlink_trampoline()
++
++//go:linkname libc_readlink libc_readlink
++//go:cgo_import_dynamic libc_readlink readlink "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+@@ -1138,7 +1751,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+ } else {
+ _p1 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
++ r0, _, e1 := syscall_syscall6(funcPC(libc_readlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1146,6 +1759,11 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+ return
+ }
+
++func libc_readlinkat_trampoline()
++
++//go:linkname libc_readlinkat libc_readlinkat
++//go:cgo_import_dynamic libc_readlinkat readlinkat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Rename(from string, to string) (err error) {
+@@ -1159,13 +1777,18 @@ func Rename(from string, to string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_rename_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_rename_trampoline()
++
++//go:linkname libc_rename libc_rename
++//go:cgo_import_dynamic libc_rename rename "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
+@@ -1179,13 +1802,18 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ _, _, e1 := syscall_syscall6(funcPC(libc_renameat_trampoline), uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_renameat_trampoline()
++
++//go:linkname libc_renameat libc_renameat
++//go:cgo_import_dynamic libc_renameat renameat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Revoke(path string) (err error) {
+@@ -1194,13 +1822,18 @@ func Revoke(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_revoke_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_revoke_trampoline()
++
++//go:linkname libc_revoke libc_revoke
++//go:cgo_import_dynamic libc_revoke revoke "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Rmdir(path string) (err error) {
+@@ -1209,17 +1842,22 @@ func Rmdir(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_rmdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_rmdir_trampoline()
++
++//go:linkname libc_rmdir libc_rmdir
++//go:cgo_import_dynamic libc_rmdir rmdir "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
++ r0, _, e1 := syscall_syscall(funcPC(libc_lseek_trampoline), uintptr(fd), uintptr(offset), uintptr(whence))
+ newoffset = int64(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1227,46 +1865,72 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+ return
+ }
+
++func libc_lseek_trampoline()
++
++//go:linkname libc_lseek libc_lseek
++//go:cgo_import_dynamic libc_lseek lseek "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := syscall_syscall6(funcPC(libc_select_trampoline), uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_select_trampoline()
++
++//go:linkname libc_select libc_select
++//go:cgo_import_dynamic libc_select select "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setegid(egid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETEGID, uintptr(egid), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_setegid_trampoline), uintptr(egid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setegid_trampoline()
++
++//go:linkname libc_setegid libc_setegid
++//go:cgo_import_dynamic libc_setegid setegid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Seteuid(euid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETEUID, uintptr(euid), 0, 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_seteuid_trampoline), uintptr(euid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_seteuid_trampoline()
++
++//go:linkname libc_seteuid libc_seteuid
++//go:cgo_import_dynamic libc_seteuid seteuid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setgid(gid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETGID, uintptr(gid), 0, 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setgid_trampoline), uintptr(gid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setgid_trampoline()
++
++//go:linkname libc_setgid libc_setgid
++//go:cgo_import_dynamic libc_setgid setgid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setlogin(name string) (err error) {
+@@ -1275,77 +1939,112 @@ func Setlogin(name string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_setlogin_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setlogin_trampoline()
++
++//go:linkname libc_setlogin libc_setlogin
++//go:cgo_import_dynamic libc_setlogin setlogin "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setpgid_trampoline), uintptr(pid), uintptr(pgid), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setpgid_trampoline()
++
++//go:linkname libc_setpgid libc_setpgid
++//go:cgo_import_dynamic libc_setpgid setpgid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
++ _, _, e1 := syscall_syscall(funcPC(libc_setpriority_trampoline), uintptr(which), uintptr(who), uintptr(prio))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setpriority_trampoline()
++
++//go:linkname libc_setpriority libc_setpriority
++//go:cgo_import_dynamic libc_setpriority setpriority "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setprivexec(flag int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIVEXEC, uintptr(flag), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_setprivexec_trampoline), uintptr(flag), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setprivexec_trampoline()
++
++//go:linkname libc_setprivexec libc_setprivexec
++//go:cgo_import_dynamic libc_setprivexec setprivexec "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setregid(rgid int, egid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setregid_trampoline), uintptr(rgid), uintptr(egid), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setregid_trampoline()
++
++//go:linkname libc_setregid libc_setregid
++//go:cgo_import_dynamic libc_setregid setregid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setreuid(ruid int, euid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setreuid_trampoline), uintptr(ruid), uintptr(euid), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setreuid_trampoline()
++
++//go:linkname libc_setreuid libc_setreuid
++//go:cgo_import_dynamic libc_setreuid setreuid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setrlimit(which int, lim *Rlimit) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_setrlimit_trampoline()
++
++//go:linkname libc_setrlimit libc_setrlimit
++//go:cgo_import_dynamic libc_setrlimit setrlimit "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
++ r0, _, e1 := syscall_rawSyscall(funcPC(libc_setsid_trampoline), 0, 0, 0)
+ pid = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1353,55 +2052,40 @@ func Setsid() (pid int, err error) {
+ return
+ }
+
++func libc_setsid_trampoline()
++
++//go:linkname libc_setsid libc_setsid
++//go:cgo_import_dynamic libc_setsid setsid "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Settimeofday(tp *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_settimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_settimeofday_trampoline()
+
+-func Setuid(uid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETUID, uintptr(uid), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_settimeofday libc_settimeofday
++//go:cgo_import_dynamic libc_settimeofday settimeofday "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++func Setuid(uid int) (err error) {
++ _, _, e1 := syscall_rawSyscall(funcPC(libc_setuid_trampoline), uintptr(uid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++func libc_setuid_trampoline()
+
+-func Statfs(path string, stat *Statfs_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
++//go:linkname libc_setuid libc_setuid
++//go:cgo_import_dynamic libc_setuid setuid "/usr/lib/libSystem.B.dylib"
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+@@ -1416,13 +2100,18 @@ func Symlink(path string, link string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_SYMLINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_symlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_symlink_trampoline()
++
++//go:linkname libc_symlink libc_symlink
++//go:cgo_import_dynamic libc_symlink symlink "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+@@ -1436,23 +2125,33 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
++ _, _, e1 := syscall_syscall(funcPC(libc_symlinkat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_symlinkat_trampoline()
++
++//go:linkname libc_symlinkat libc_symlinkat
++//go:cgo_import_dynamic libc_symlinkat symlinkat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Sync() (err error) {
+- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_sync_trampoline), 0, 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_sync_trampoline()
++
++//go:linkname libc_sync libc_sync
++//go:cgo_import_dynamic libc_sync sync "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Truncate(path string, length int64) (err error) {
+@@ -1461,21 +2160,31 @@ func Truncate(path string, length int64) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_truncate_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_truncate_trampoline()
++
++//go:linkname libc_truncate libc_truncate
++//go:cgo_import_dynamic libc_truncate truncate "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Umask(newmask int) (oldmask int) {
+- r0, _, _ := Syscall(SYS_UMASK, uintptr(newmask), 0, 0)
++ r0, _, _ := syscall_syscall(funcPC(libc_umask_trampoline), uintptr(newmask), 0, 0)
+ oldmask = int(r0)
+ return
+ }
+
++func libc_umask_trampoline()
++
++//go:linkname libc_umask libc_umask
++//go:cgo_import_dynamic libc_umask umask "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Undelete(path string) (err error) {
+@@ -1484,13 +2193,18 @@ func Undelete(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UNDELETE, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_undelete_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_undelete_trampoline()
++
++//go:linkname libc_undelete libc_undelete
++//go:cgo_import_dynamic libc_undelete undelete "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Unlink(path string) (err error) {
+@@ -1499,13 +2213,18 @@ func Unlink(path string) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UNLINK, uintptr(unsafe.Pointer(_p0)), 0, 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_unlink_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_unlink_trampoline()
++
++//go:linkname libc_unlink libc_unlink
++//go:cgo_import_dynamic libc_unlink unlink "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Unlinkat(dirfd int, path string, flags int) (err error) {
+@@ -1514,13 +2233,18 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
++ _, _, e1 := syscall_syscall(funcPC(libc_unlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_unlinkat_trampoline()
++
++//go:linkname libc_unlinkat libc_unlinkat
++//go:cgo_import_dynamic libc_unlinkat unlinkat "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Unmount(path string, flags int) (err error) {
+@@ -1529,13 +2253,18 @@ func Unmount(path string, flags int) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_unmount_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_unmount_trampoline()
++
++//go:linkname libc_unmount libc_unmount
++//go:cgo_import_dynamic libc_unmount unmount "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func write(fd int, p []byte) (n int, err error) {
+@@ -1545,7 +2274,7 @@ func write(fd int, p []byte) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
++ r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1553,10 +2282,15 @@ func write(fd int, p []byte) (n int, err error) {
+ return
+ }
+
++func libc_write_trampoline()
++
++//go:linkname libc_write libc_write
++//go:cgo_import_dynamic libc_write write "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) {
+- r0, _, e1 := Syscall6(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos))
++ r0, _, e1 := syscall_syscall6(funcPC(libc_mmap_trampoline), uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos))
+ ret = uintptr(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1564,20 +2298,30 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
+ return
+ }
+
++func libc_mmap_trampoline()
++
++//go:linkname libc_mmap libc_mmap
++//go:cgo_import_dynamic libc_mmap mmap "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
++ _, _, e1 := syscall_syscall(funcPC(libc_munmap_trampoline), uintptr(addr), uintptr(length), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+ return
+ }
+
++func libc_munmap_trampoline()
++
++//go:linkname libc_munmap libc_munmap
++//go:cgo_import_dynamic libc_munmap munmap "/usr/lib/libSystem.B.dylib"
++
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
++ r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1588,7 +2332,7 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
++ r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1599,7 +2343,7 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) {
+- r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
++ r0, r1, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0)
+ sec = int64(r0)
+ usec = int32(r1)
+ if e1 != 0 {
+@@ -1607,3 +2351,134 @@ func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) {
+ }
+ return
+ }
++
++func libc_gettimeofday_trampoline()
++
++//go:linkname libc_gettimeofday libc_gettimeofday
++//go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstat(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_fstat_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fstat_trampoline()
++
++//go:linkname libc_fstat libc_fstat
++//go:cgo_import_dynamic libc_fstat fstat "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall6(funcPC(libc_fstatat_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fstatat_trampoline()
++
++//go:linkname libc_fstatat libc_fstatat
++//go:cgo_import_dynamic libc_fstatat fstatat "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatfs(fd int, stat *Statfs_t) (err error) {
++ _, _, e1 := syscall_syscall(funcPC(libc_fstatfs_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_fstatfs_trampoline()
++
++//go:linkname libc_fstatfs libc_fstatfs
++//go:cgo_import_dynamic libc_fstatfs fstatfs "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) {
++ r0, _, e1 := syscall_syscall(funcPC(libc_getfsstat_trampoline), uintptr(buf), uintptr(size), uintptr(flags))
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_getfsstat_trampoline()
++
++//go:linkname libc_getfsstat libc_getfsstat
++//go:cgo_import_dynamic libc_getfsstat getfsstat "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Lstat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_lstat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_lstat_trampoline()
++
++//go:linkname libc_lstat libc_lstat
++//go:cgo_import_dynamic libc_lstat lstat "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Stat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_stat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_stat_trampoline()
++
++//go:linkname libc_stat libc_stat
++//go:cgo_import_dynamic libc_stat stat "/usr/lib/libSystem.B.dylib"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Statfs(path string, stat *Statfs_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := syscall_syscall(funcPC(libc_statfs_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++func libc_statfs_trampoline()
++
++//go:linkname libc_statfs libc_statfs
++//go:cgo_import_dynamic libc_statfs statfs "/usr/lib/libSystem.B.dylib"
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s
+new file mode 100644
+index 00000000..40cce1bb
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s
+@@ -0,0 +1,282 @@
++// go run mkasm_darwin.go arm64
++// Code generated by the command above; DO NOT EDIT.
++
++// +build go1.12
++
++#include "textflag.h"
++TEXT ·libc_getgroups_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getgroups(SB)
++TEXT ·libc_setgroups_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setgroups(SB)
++TEXT ·libc_wait4_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_wait4(SB)
++TEXT ·libc_accept_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_accept(SB)
++TEXT ·libc_bind_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_bind(SB)
++TEXT ·libc_connect_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_connect(SB)
++TEXT ·libc_socket_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_socket(SB)
++TEXT ·libc_getsockopt_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getsockopt(SB)
++TEXT ·libc_setsockopt_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setsockopt(SB)
++TEXT ·libc_getpeername_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpeername(SB)
++TEXT ·libc_getsockname_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getsockname(SB)
++TEXT ·libc_shutdown_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_shutdown(SB)
++TEXT ·libc_socketpair_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_socketpair(SB)
++TEXT ·libc_recvfrom_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_recvfrom(SB)
++TEXT ·libc_sendto_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sendto(SB)
++TEXT ·libc_recvmsg_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_recvmsg(SB)
++TEXT ·libc_sendmsg_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sendmsg(SB)
++TEXT ·libc_kevent_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_kevent(SB)
++TEXT ·libc_utimes_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_utimes(SB)
++TEXT ·libc_futimes_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_futimes(SB)
++TEXT ·libc_poll_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_poll(SB)
++TEXT ·libc_madvise_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_madvise(SB)
++TEXT ·libc_mlock_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mlock(SB)
++TEXT ·libc_mlockall_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mlockall(SB)
++TEXT ·libc_mprotect_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mprotect(SB)
++TEXT ·libc_msync_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_msync(SB)
++TEXT ·libc_munlock_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_munlock(SB)
++TEXT ·libc_munlockall_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_munlockall(SB)
++TEXT ·libc_getattrlist_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getattrlist(SB)
++TEXT ·libc_pipe_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_pipe(SB)
++TEXT ·libc_getxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getxattr(SB)
++TEXT ·libc_fgetxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fgetxattr(SB)
++TEXT ·libc_setxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setxattr(SB)
++TEXT ·libc_fsetxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fsetxattr(SB)
++TEXT ·libc_removexattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_removexattr(SB)
++TEXT ·libc_fremovexattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fremovexattr(SB)
++TEXT ·libc_listxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_listxattr(SB)
++TEXT ·libc_flistxattr_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_flistxattr(SB)
++TEXT ·libc_setattrlist_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setattrlist(SB)
++TEXT ·libc_fcntl_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fcntl(SB)
++TEXT ·libc_kill_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_kill(SB)
++TEXT ·libc_ioctl_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_ioctl(SB)
++TEXT ·libc_sysctl_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sysctl(SB)
++TEXT ·libc_sendfile_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sendfile(SB)
++TEXT ·libc_access_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_access(SB)
++TEXT ·libc_adjtime_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_adjtime(SB)
++TEXT ·libc_chdir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chdir(SB)
++TEXT ·libc_chflags_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chflags(SB)
++TEXT ·libc_chmod_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chmod(SB)
++TEXT ·libc_chown_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chown(SB)
++TEXT ·libc_chroot_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_chroot(SB)
++TEXT ·libc_clock_gettime_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_clock_gettime(SB)
++TEXT ·libc_close_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_close(SB)
++TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_dup(SB)
++TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_dup2(SB)
++TEXT ·libc_exchangedata_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_exchangedata(SB)
++TEXT ·libc_exit_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_exit(SB)
++TEXT ·libc_faccessat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_faccessat(SB)
++TEXT ·libc_fchdir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchdir(SB)
++TEXT ·libc_fchflags_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchflags(SB)
++TEXT ·libc_fchmod_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchmod(SB)
++TEXT ·libc_fchmodat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchmodat(SB)
++TEXT ·libc_fchown_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchown(SB)
++TEXT ·libc_fchownat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fchownat(SB)
++TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_flock(SB)
++TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fpathconf(SB)
++TEXT ·libc_fsync_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fsync(SB)
++TEXT ·libc_ftruncate_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_ftruncate(SB)
++TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getdtablesize(SB)
++TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getegid(SB)
++TEXT ·libc_geteuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_geteuid(SB)
++TEXT ·libc_getgid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getgid(SB)
++TEXT ·libc_getpgid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpgid(SB)
++TEXT ·libc_getpgrp_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpgrp(SB)
++TEXT ·libc_getpid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpid(SB)
++TEXT ·libc_getppid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getppid(SB)
++TEXT ·libc_getpriority_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getpriority(SB)
++TEXT ·libc_getrlimit_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getrlimit(SB)
++TEXT ·libc_getrusage_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getrusage(SB)
++TEXT ·libc_getsid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getsid(SB)
++TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getuid(SB)
++TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_issetugid(SB)
++TEXT ·libc_kqueue_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_kqueue(SB)
++TEXT ·libc_lchown_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_lchown(SB)
++TEXT ·libc_link_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_link(SB)
++TEXT ·libc_linkat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_linkat(SB)
++TEXT ·libc_listen_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_listen(SB)
++TEXT ·libc_mkdir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mkdir(SB)
++TEXT ·libc_mkdirat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mkdirat(SB)
++TEXT ·libc_mkfifo_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mkfifo(SB)
++TEXT ·libc_mknod_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mknod(SB)
++TEXT ·libc_open_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_open(SB)
++TEXT ·libc_openat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_openat(SB)
++TEXT ·libc_pathconf_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_pathconf(SB)
++TEXT ·libc_pread_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_pread(SB)
++TEXT ·libc_pwrite_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_pwrite(SB)
++TEXT ·libc_read_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_read(SB)
++TEXT ·libc_readlink_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_readlink(SB)
++TEXT ·libc_readlinkat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_readlinkat(SB)
++TEXT ·libc_rename_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_rename(SB)
++TEXT ·libc_renameat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_renameat(SB)
++TEXT ·libc_revoke_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_revoke(SB)
++TEXT ·libc_rmdir_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_rmdir(SB)
++TEXT ·libc_lseek_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_lseek(SB)
++TEXT ·libc_select_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_select(SB)
++TEXT ·libc_setegid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setegid(SB)
++TEXT ·libc_seteuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_seteuid(SB)
++TEXT ·libc_setgid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setgid(SB)
++TEXT ·libc_setlogin_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setlogin(SB)
++TEXT ·libc_setpgid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setpgid(SB)
++TEXT ·libc_setpriority_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setpriority(SB)
++TEXT ·libc_setprivexec_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setprivexec(SB)
++TEXT ·libc_setregid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setregid(SB)
++TEXT ·libc_setreuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setreuid(SB)
++TEXT ·libc_setrlimit_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setrlimit(SB)
++TEXT ·libc_setsid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setsid(SB)
++TEXT ·libc_settimeofday_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_settimeofday(SB)
++TEXT ·libc_setuid_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_setuid(SB)
++TEXT ·libc_symlink_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_symlink(SB)
++TEXT ·libc_symlinkat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_symlinkat(SB)
++TEXT ·libc_sync_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_sync(SB)
++TEXT ·libc_truncate_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_truncate(SB)
++TEXT ·libc_umask_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_umask(SB)
++TEXT ·libc_undelete_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_undelete(SB)
++TEXT ·libc_unlink_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_unlink(SB)
++TEXT ·libc_unlinkat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_unlinkat(SB)
++TEXT ·libc_unmount_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_unmount(SB)
++TEXT ·libc_write_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_write(SB)
++TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_mmap(SB)
++TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_munmap(SB)
++TEXT ·libc_gettimeofday_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_gettimeofday(SB)
++TEXT ·libc_fstat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fstat(SB)
++TEXT ·libc_fstatat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fstatat(SB)
++TEXT ·libc_fstatfs_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_fstatfs(SB)
++TEXT ·libc_getfsstat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_getfsstat(SB)
++TEXT ·libc_lstat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_lstat(SB)
++TEXT ·libc_stat_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_stat(SB)
++TEXT ·libc_statfs_trampoline(SB),NOSPLIT,$0-0
++ JMP libc_statfs(SB)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go
+index 7fa205cd..fe1fdd78 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -dragonfly -tags dragonfly,amd64 syscall_bsd.go syscall_dragonfly.go syscall_dragonfly_amd64.go
++// go run mksyscall.go -dragonfly -tags dragonfly,amd64 syscall_bsd.go syscall_dragonfly.go syscall_dragonfly_amd64.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build dragonfly,amd64
+@@ -255,9 +255,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -412,6 +412,33 @@ func extpwrite(fd int, p []byte, flags int, offset int64) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Getcwd(buf []byte) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ioctl(fd int, req uint, arg uintptr) (err error) {
++ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -550,6 +577,21 @@ func Exit(code int) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchdir(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -580,6 +622,21 @@ func Fchmod(fd int, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchown(fd int, uid int, gid int) (err error) {
+ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+@@ -590,6 +647,21 @@ func Fchown(fd int, uid int, gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Flock(fd int, how int) (err error) {
+ _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+ if e1 != 0 {
+@@ -621,6 +693,21 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fstatfs(fd int, stat *Statfs_t) (err error) {
+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+@@ -651,6 +738,23 @@ func Ftruncate(fd int, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Getdents(fd int, buf []byte) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall(SYS_GETDENTS, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+ var _p0 unsafe.Pointer
+ if len(buf) > 0 {
+@@ -859,6 +963,26 @@ func Link(path string, link string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Listen(s int, backlog int) (err error) {
+ _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
+ if e1 != 0 {
+@@ -899,6 +1023,21 @@ func Mkdir(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mkdirat(dirfd int, path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mkfifo(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -929,6 +1068,21 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mknodat(fd int, path string, mode uint32, dev int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+ if e1 != 0 {
+@@ -955,6 +1109,22 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
++ fd = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Pathconf(path string, name int) (val int, err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1030,6 +1200,26 @@ func Rename(from string, to string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Renameat(fromfd int, from string, tofd int, to string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(from)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(to)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Revoke(path string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1071,8 +1261,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1277,6 +1468,26 @@ func Symlink(path string, link string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Sync() (err error) {
+ _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
+ if e1 != 0 {
+@@ -1340,6 +1551,21 @@ func Unlink(path string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Unlinkat(dirfd int, path string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Unmount(path string, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go
+index 1a0bb4cb..600f1d26 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -l32 -tags freebsd,386 syscall_bsd.go syscall_freebsd.go syscall_freebsd_386.go
++// go run mksyscall.go -l32 -tags freebsd,386 syscall_bsd.go syscall_freebsd.go syscall_freebsd_386.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build freebsd,386
+@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimes(path string, timeval *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -366,10 +350,25 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe() (r int, w int, err error) {
+- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
+- r = int(r0)
+- w = int(r1)
++func pipe2(p *[2]_C_int, flags int) (err error) {
++ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getcwd(buf []byte) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -388,6 +387,32 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ptrace(request int, pid int, addr uintptr, data int) (err error) {
++ _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -886,7 +911,7 @@ func Fpathconf(fd int, name int) (val int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstat(fd int, stat *Stat_t) (err error) {
++func fstat(fd int, stat *stat_freebsd11_t) (err error) {
+ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -896,7 +921,47 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstatfs(fd int, stat *Statfs_t) (err error) {
++func fstat_freebsd12(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fstatat_freebsd12(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fstatfs(fd int, stat *statfs_freebsd11_t) (err error) {
+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -906,6 +971,16 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func fstatfs_freebsd12(fd int, stat *Statfs_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTATFS_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fsync(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -926,7 +1001,7 @@ func Ftruncate(fd int, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
++func getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+ var _p0 unsafe.Pointer
+ if len(buf) > 0 {
+ _p0 = unsafe.Pointer(&buf[0])
+@@ -943,6 +1018,23 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func getdirentries_freebsd12(fd int, buf []byte, basep *uint64) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_GETDIRENTRIES_FREEBSD12, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getdtablesize() (size int) {
+ r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
+ size = int(r0)
+@@ -1164,7 +1256,7 @@ func Listen(s int, backlog int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Lstat(path string, stat *Stat_t) (err error) {
++func lstat(path string, stat *stat_freebsd11_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+@@ -1224,7 +1316,7 @@ func Mkfifo(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Mknod(path string, mode uint32, dev int) (err error) {
++func mknod(path string, mode uint32, dev int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+@@ -1239,6 +1331,36 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func mknodat(fd int, path string, mode uint32, dev int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func mknodat_freebsd12(fd int, path string, mode uint32, dev uint64) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), uintptr(dev>>32), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+ if e1 != 0 {
+@@ -1473,8 +1595,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1629,7 +1752,7 @@ func Setuid(uid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
++func stat(path string, stat *stat_freebsd11_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+@@ -1644,7 +1767,7 @@ func Stat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Statfs(path string, stat *Statfs_t) (err error) {
++func statfs(path string, stat *statfs_freebsd11_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+@@ -1659,6 +1782,21 @@ func Statfs(path string, stat *Statfs_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func statfs_freebsd12(path string, stat *Statfs_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_STATFS_FREEBSD12, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Symlink(path string, link string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
+index ac1e8e01..064934b0 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -tags freebsd,amd64 syscall_bsd.go syscall_freebsd.go syscall_freebsd_amd64.go
++// go run mksyscall.go -tags freebsd,amd64 syscall_bsd.go syscall_freebsd.go syscall_freebsd_amd64.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build freebsd,amd64
+@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimes(path string, timeval *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -366,10 +350,25 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe() (r int, w int, err error) {
+- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
+- r = int(r0)
+- w = int(r1)
++func pipe2(p *[2]_C_int, flags int) (err error) {
++ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getcwd(buf []byte) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -388,6 +387,32 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ptrace(request int, pid int, addr uintptr, data int) (err error) {
++ _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -886,7 +911,7 @@ func Fpathconf(fd int, name int) (val int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstat(fd int, stat *Stat_t) (err error) {
++func fstat(fd int, stat *stat_freebsd11_t) (err error) {
+ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -896,7 +921,47 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstatfs(fd int, stat *Statfs_t) (err error) {
++func fstat_freebsd12(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fstatat_freebsd12(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fstatfs(fd int, stat *statfs_freebsd11_t) (err error) {
+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -906,6 +971,16 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func fstatfs_freebsd12(fd int, stat *Statfs_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTATFS_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fsync(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -926,7 +1001,7 @@ func Ftruncate(fd int, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
++func getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+ var _p0 unsafe.Pointer
+ if len(buf) > 0 {
+ _p0 = unsafe.Pointer(&buf[0])
+@@ -943,6 +1018,23 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func getdirentries_freebsd12(fd int, buf []byte, basep *uint64) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_GETDIRENTRIES_FREEBSD12, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getdtablesize() (size int) {
+ r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
+ size = int(r0)
+@@ -1164,7 +1256,7 @@ func Listen(s int, backlog int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Lstat(path string, stat *Stat_t) (err error) {
++func lstat(path string, stat *stat_freebsd11_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+@@ -1224,7 +1316,7 @@ func Mkfifo(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Mknod(path string, mode uint32, dev int) (err error) {
++func mknod(path string, mode uint32, dev int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+@@ -1239,6 +1331,36 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func mknodat(fd int, path string, mode uint32, dev int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func mknodat_freebsd12(fd int, path string, mode uint32, dev uint64) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+ if e1 != 0 {
+@@ -1473,8 +1595,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1629,7 +1752,7 @@ func Setuid(uid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
++func stat(path string, stat *stat_freebsd11_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+@@ -1644,7 +1767,7 @@ func Stat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Statfs(path string, stat *Statfs_t) (err error) {
++func statfs(path string, stat *statfs_freebsd11_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+@@ -1659,6 +1782,21 @@ func Statfs(path string, stat *Statfs_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func statfs_freebsd12(path string, stat *Statfs_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_STATFS_FREEBSD12, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Symlink(path string, link string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go
+index 2b4e6acf..31d2c461 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -l32 -arm -tags freebsd,arm syscall_bsd.go syscall_freebsd.go syscall_freebsd_arm.go
++// go run mksyscall.go -l32 -arm -tags freebsd,arm syscall_bsd.go syscall_freebsd.go syscall_freebsd_arm.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build freebsd,arm
+@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimes(path string, timeval *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -366,10 +350,41 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe() (r int, w int, err error) {
+- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
+- r = int(r0)
+- w = int(r1)
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func pipe2(p *[2]_C_int, flags int) (err error) {
++ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getcwd(buf []byte) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -388,6 +403,16 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func ptrace(request int, pid int, addr uintptr, data int) (err error) {
++ _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -886,7 +911,7 @@ func Fpathconf(fd int, name int) (val int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstat(fd int, stat *Stat_t) (err error) {
++func fstat(fd int, stat *stat_freebsd11_t) (err error) {
+ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -896,7 +921,47 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstatfs(fd int, stat *Statfs_t) (err error) {
++func fstat_freebsd12(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fstatat_freebsd12(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fstatfs(fd int, stat *statfs_freebsd11_t) (err error) {
+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -906,6 +971,16 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func fstatfs_freebsd12(fd int, stat *Statfs_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTATFS_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fsync(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -926,7 +1001,7 @@ func Ftruncate(fd int, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
++func getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+ var _p0 unsafe.Pointer
+ if len(buf) > 0 {
+ _p0 = unsafe.Pointer(&buf[0])
+@@ -943,6 +1018,23 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func getdirentries_freebsd12(fd int, buf []byte, basep *uint64) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_GETDIRENTRIES_FREEBSD12, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getdtablesize() (size int) {
+ r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
+ size = int(r0)
+@@ -1164,7 +1256,7 @@ func Listen(s int, backlog int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Lstat(path string, stat *Stat_t) (err error) {
++func lstat(path string, stat *stat_freebsd11_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+@@ -1224,7 +1316,7 @@ func Mkfifo(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Mknod(path string, mode uint32, dev int) (err error) {
++func mknod(path string, mode uint32, dev int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+@@ -1239,6 +1331,36 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func mknodat(fd int, path string, mode uint32, dev int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func mknodat_freebsd12(fd int, path string, mode uint32, dev uint64) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+ if e1 != 0 {
+@@ -1473,8 +1595,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1629,7 +1752,7 @@ func Setuid(uid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
++func stat(path string, stat *stat_freebsd11_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+@@ -1644,7 +1767,7 @@ func Stat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Statfs(path string, stat *Statfs_t) (err error) {
++func statfs(path string, stat *statfs_freebsd11_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+@@ -1659,6 +1782,21 @@ func Statfs(path string, stat *Statfs_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func statfs_freebsd12(path string, stat *Statfs_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_STATFS_FREEBSD12, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Symlink(path string, link string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go
+similarity index 90%
+copy from vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
+copy to vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go
+index ac1e8e01..4adaaa56 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go
+@@ -1,7 +1,7 @@
+-// mksyscall.pl -tags freebsd,amd64 syscall_bsd.go syscall_freebsd.go syscall_freebsd_amd64.go
++// go run mksyscall.go -tags freebsd,arm64 syscall_bsd.go syscall_freebsd.go syscall_freebsd_arm64.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build freebsd,amd64
++// +build freebsd,arm64
+
+ package unix
+
+@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimes(path string, timeval *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -366,10 +350,25 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe() (r int, w int, err error) {
+- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
+- r = int(r0)
+- w = int(r1)
++func pipe2(p *[2]_C_int, flags int) (err error) {
++ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getcwd(buf []byte) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -388,6 +387,32 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ptrace(request int, pid int, addr uintptr, data int) (err error) {
++ _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -886,7 +911,7 @@ func Fpathconf(fd int, name int) (val int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstat(fd int, stat *Stat_t) (err error) {
++func fstat(fd int, stat *stat_freebsd11_t) (err error) {
+ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -896,7 +921,47 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstatfs(fd int, stat *Statfs_t) (err error) {
++func fstat_freebsd12(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fstatat_freebsd12(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fstatfs(fd int, stat *statfs_freebsd11_t) (err error) {
+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -906,6 +971,16 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func fstatfs_freebsd12(fd int, stat *Statfs_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTATFS_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fsync(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -926,7 +1001,7 @@ func Ftruncate(fd int, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
++func getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+ var _p0 unsafe.Pointer
+ if len(buf) > 0 {
+ _p0 = unsafe.Pointer(&buf[0])
+@@ -943,6 +1018,23 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func getdirentries_freebsd12(fd int, buf []byte, basep *uint64) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_GETDIRENTRIES_FREEBSD12, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getdtablesize() (size int) {
+ r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
+ size = int(r0)
+@@ -1164,7 +1256,7 @@ func Listen(s int, backlog int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Lstat(path string, stat *Stat_t) (err error) {
++func lstat(path string, stat *stat_freebsd11_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+@@ -1224,7 +1316,7 @@ func Mkfifo(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Mknod(path string, mode uint32, dev int) (err error) {
++func mknod(path string, mode uint32, dev int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+@@ -1239,6 +1331,36 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func mknodat(fd int, path string, mode uint32, dev int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func mknodat_freebsd12(fd int, path string, mode uint32, dev uint64) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+ if e1 != 0 {
+@@ -1473,8 +1595,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1629,7 +1752,7 @@ func Setuid(uid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
++func stat(path string, stat *stat_freebsd11_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+@@ -1644,7 +1767,7 @@ func Stat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Statfs(path string, stat *Statfs_t) (err error) {
++func statfs(path string, stat *statfs_freebsd11_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+@@ -1659,6 +1782,21 @@ func Statfs(path string, stat *Statfs_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func statfs_freebsd12(path string, stat *Statfs_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_STATFS_FREEBSD12, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Symlink(path string, link string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go
+new file mode 100644
+index 00000000..92efa1da
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go
+@@ -0,0 +1,87 @@
++// go run mksyscall_solaris.go -illumos -tags illumos,amd64 syscall_illumos.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build illumos,amd64
++
++package unix
++
++import (
++ "unsafe"
++)
++
++//go:cgo_import_dynamic libc_readv readv "libc.so"
++//go:cgo_import_dynamic libc_preadv preadv "libc.so"
++//go:cgo_import_dynamic libc_writev writev "libc.so"
++//go:cgo_import_dynamic libc_pwritev pwritev "libc.so"
++
++//go:linkname procreadv libc_readv
++//go:linkname procpreadv libc_preadv
++//go:linkname procwritev libc_writev
++//go:linkname procpwritev libc_pwritev
++
++var (
++ procreadv,
++ procpreadv,
++ procwritev,
++ procpwritev syscallFunc
++)
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func readv(fd int, iovs []Iovec) (n int, err error) {
++ var _p0 *Iovec
++ if len(iovs) > 0 {
++ _p0 = &iovs[0]
++ }
++ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procreadv)), 3, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(len(iovs)), 0, 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = e1
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func preadv(fd int, iovs []Iovec, off int64) (n int, err error) {
++ var _p0 *Iovec
++ if len(iovs) > 0 {
++ _p0 = &iovs[0]
++ }
++ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procpreadv)), 4, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(len(iovs)), uintptr(off), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = e1
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func writev(fd int, iovs []Iovec) (n int, err error) {
++ var _p0 *Iovec
++ if len(iovs) > 0 {
++ _p0 = &iovs[0]
++ }
++ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procwritev)), 3, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(len(iovs)), 0, 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = e1
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func pwritev(fd int, iovs []Iovec, off int64) (n int, err error) {
++ var _p0 *Iovec
++ if len(iovs) > 0 {
++ _p0 = &iovs[0]
++ }
++ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procpwritev)), 4, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(len(iovs)), uintptr(off), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = e1
++ }
++ return
++}
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go b/vendor/golang.org/x/sys/unix/zsyscall_linux.go
+similarity index 79%
+copy from vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
+copy to vendor/golang.org/x/sys/unix/zsyscall_linux.go
+index b6ff9e39..fd2dae8e 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_linux.go
+@@ -1,7 +1,6 @@
+-// mksyscall.pl -tags linux,s390x syscall_linux.go syscall_linux_s390x.go
+-// Code generated by the command above; see README.md. DO NOT EDIT.
++// Code generated by mkmerge.go; DO NOT EDIT.
+
+-// +build linux,s390x
++// +build linux
+
+ package unix
+
+@@ -10,7 +9,16 @@ import (
+ "unsafe"
+ )
+
+-var _ syscall.Errno
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) {
++ r0, _, e1 := Syscall(SYS_FANOTIFY_INIT, uintptr(flags), uintptr(event_f_flags), 0)
++ fd = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+@@ -143,21 +151,6 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func utimes(path string, times *[2]Timeval) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -173,16 +166,6 @@ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Getcwd(buf []byte) (n int, err error) {
+ var _p0 unsafe.Pointer
+ if len(buf) > 0 {
+@@ -309,6 +292,36 @@ func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(keyType)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(restriction)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func keyctlRestrictKeyring(cmd int, arg2 int) (err error) {
++ _, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+ _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
+ if e1 != 0 {
+@@ -412,6 +425,26 @@ func Adjtimex(buf *Timex) (state int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Capget(hdr *CapUserHeader, data *CapUserData) (err error) {
++ _, _, e1 := RawSyscall(SYS_CAPGET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Capset(hdr *CapUserHeader, data *CapUserData) (err error) {
++ _, _, e1 := RawSyscall(SYS_CAPSET, uintptr(unsafe.Pointer(hdr)), uintptr(unsafe.Pointer(data)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Chdir(path string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -442,6 +475,16 @@ func Chroot(path string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func ClockGetres(clockid int32, res *Timespec) (err error) {
++ _, _, e1 := Syscall(SYS_CLOCK_GETRES, uintptr(clockid), uintptr(unsafe.Pointer(res)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func ClockGettime(clockid int32, time *Timespec) (err error) {
+ _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
+ if e1 != 0 {
+@@ -452,6 +495,16 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
++ _, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Close(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -473,9 +526,13 @@ func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags in
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Dup(oldfd int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
+- fd = int(r0)
++func DeleteModule(name string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(name)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_DELETE_MODULE, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -484,8 +541,9 @@ func Dup(oldfd int) (fd int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Dup3(oldfd int, newfd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
++func Dup(oldfd int) (fd int, err error) {
++ r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
++ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -494,9 +552,8 @@ func Dup3(oldfd int, newfd int, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func EpollCreate(size int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
+- fd = int(r0)
++func Dup3(oldfd int, newfd int, flags int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -538,19 +595,14 @@ func Eventfd(initval uint, flags int) (fd int, err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Exit(code int) {
+- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
++ SyscallNoError(SYS_EXIT_GROUP, uintptr(code), 0, 0)
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++func Fchdir(fd int) (err error) {
++ _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -559,8 +611,8 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
++func Fchmod(fd int, mode uint32) (err error) {
++ _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -569,8 +621,13 @@ func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
++func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -579,8 +636,8 @@ func Fchdir(fd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
++func Fdatasync(fd int) (err error) {
++ _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -589,13 +646,20 @@ func Fchmod(fd int, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
++func Fgetxattr(fd int, attr string, dest []byte) (sz int, err error) {
+ var _p0 *byte
+- _p0, err = BytePtrFromString(path)
++ _p0, err = BytePtrFromString(attr)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
++ var _p1 unsafe.Pointer
++ if len(dest) > 0 {
++ _p1 = unsafe.Pointer(&dest[0])
++ } else {
++ _p1 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), 0, 0)
++ sz = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -604,9 +668,13 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func FinitModule(fd int, params string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(params)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_FINIT_MODULE, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -615,8 +683,15 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fdatasync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
++func Flistxattr(fd int, dest []byte) (sz int, err error) {
++ var _p0 unsafe.Pointer
++ if len(dest) > 0 {
++ _p0 = unsafe.Pointer(&dest[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall(SYS_FLISTXATTR, uintptr(fd), uintptr(_p0), uintptr(len(dest)))
++ sz = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -635,6 +710,42 @@ func Flock(fd int, how int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fremovexattr(fd int, attr string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fsetxattr(fd int, attr string, dest []byte, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attr)
++ if err != nil {
++ return
++ }
++ var _p1 unsafe.Pointer
++ if len(dest) > 0 {
++ _p1 = unsafe.Pointer(&dest[0])
++ } else {
++ _p1 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fsync(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -674,7 +785,7 @@ func Getpgid(pid int) (pgid int, err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETPID, 0, 0, 0)
+ pid = int(r0)
+ return
+ }
+@@ -682,7 +793,7 @@ func Getpid() (pid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETPPID, 0, 0, 0)
+ ppid = int(r0)
+ return
+ }
+@@ -739,7 +850,7 @@ func Getsid(pid int) (sid int, err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Gettid() (tid int) {
+- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETTID, 0, 0, 0)
+ tid = int(r0)
+ return
+ }
+@@ -773,6 +884,27 @@ func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func InitModule(moduleImage []byte, params string) (err error) {
++ var _p0 unsafe.Pointer
++ if len(moduleImage) > 0 {
++ _p0 = unsafe.Pointer(&moduleImage[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(params)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_INIT_MODULE, uintptr(_p0), uintptr(len(moduleImage)), uintptr(unsafe.Pointer(_p1)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(pathname)
+@@ -955,6 +1087,22 @@ func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func MemfdCreate(name string, flags int) (fd int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(name)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall(SYS_MEMFD_CREATE, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ fd = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -995,6 +1143,17 @@ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func PerfEventOpen(attr *PerfEventAttr, pid int, cpu int, groupFd int, flags int) (fd int, err error) {
++ r0, _, e1 := Syscall6(SYS_PERF_EVENT_OPEN, uintptr(unsafe.Pointer(attr)), uintptr(pid), uintptr(cpu), uintptr(groupFd), uintptr(flags), 0)
++ fd = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func PivotRoot(newroot string, putold string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(newroot)
+@@ -1035,6 +1194,17 @@ func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)))
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func read(fd int, p []byte) (n int, err error) {
+ var _p0 unsafe.Pointer
+ if len(p) > 0 {
+@@ -1072,7 +1242,7 @@ func Removexattr(path string, attr string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
++func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(oldpath)
+ if err != nil {
+@@ -1083,7 +1253,7 @@ func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err e
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ _, _, e1 := Syscall6(SYS_RENAMEAT2, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1227,15 +1397,24 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Sync() {
+- Syscall(SYS_SYNC, 0, 0, 0)
++func signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) {
++ r0, _, e1 := Syscall6(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(sigmask)), uintptr(maskSize), uintptr(flags), 0, 0)
++ newfd = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Syncfs(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
++func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_STATX, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mask), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1244,8 +1423,15 @@ func Syncfs(fd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Sysinfo(info *Sysinfo_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
++func Sync() {
++ SyscallNoError(SYS_SYNC, 0, 0, 0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Syncfs(fd int) (err error) {
++ _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1254,9 +1440,8 @@ func Sysinfo(info *Sysinfo_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
+- r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
+- n = int64(r0)
++func Sysinfo(info *Sysinfo_t) (err error) {
++ _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1287,7 +1472,7 @@ func Times(tms *Tms) (ticks uintptr, err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Umask(mask int) (oldmask int) {
+- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
++ r0, _ := RawSyscallNoError(SYS_UMASK, uintptr(mask), 0, 0)
+ oldmask = int(r0)
+ return
+ }
+@@ -1329,16 +1514,6 @@ func Unshare(flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Ustat(dev int, ubuf *Ustat_t) (err error) {
+- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func write(fd int, p []byte) (n int, err error) {
+ var _p0 unsafe.Pointer
+ if len(p) > 0 {
+@@ -1388,24 +1563,15 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Madvise(b []byte, advice int) (err error) {
++func readv(fd int, iovs []Iovec) (n int, err error) {
+ var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
++ if len(iovs) > 0 {
++ _p0 = unsafe.Pointer(&iovs[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
++ r0, _, e1 := Syscall(SYS_READV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1414,14 +1580,15 @@ func Madvise(b []byte, advice int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Mprotect(b []byte, prot int) (err error) {
++func writev(fd int, iovs []Iovec) (n int, err error) {
+ var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
++ if len(iovs) > 0 {
++ _p0 = unsafe.Pointer(&iovs[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
++ r0, _, e1 := Syscall(SYS_WRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1430,14 +1597,15 @@ func Mprotect(b []byte, prot int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Mlock(b []byte) (err error) {
++func preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
+ var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
++ if len(iovs) > 0 {
++ _p0 = unsafe.Pointer(&iovs[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
++ r0, _, e1 := Syscall6(SYS_PREADV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1446,24 +1614,15 @@ func Mlock(b []byte) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Munlock(b []byte) (err error) {
++func pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) {
+ var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
++ if len(iovs) > 0 {
++ _p0 = unsafe.Pointer(&iovs[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
++ r0, _, e1 := Syscall6(SYS_PWRITEV, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1472,34 +1631,15 @@ func Mlockall(flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Msync(b []byte, flags int) (err error) {
++func preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
+ var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
++ if len(iovs) > 0 {
++ _p0 = unsafe.Pointer(&iovs[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup2(oldfd int, newfd int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
++ r0, _, e1 := Syscall6(SYS_PREADV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), uintptr(flags))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1508,14 +1648,14 @@ func Dup2(oldfd int, newfd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
++func pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) {
+ var _p0 unsafe.Pointer
+- if len(events) > 0 {
+- _p0 = unsafe.Pointer(&events[0])
++ if len(iovs) > 0 {
++ _p0 = unsafe.Pointer(&iovs[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
++ r0, _, e1 := Syscall6(SYS_PWRITEV2, uintptr(fd), uintptr(_p0), uintptr(len(iovs)), uintptr(offs_l), uintptr(offs_h), uintptr(flags))
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1525,141 +1665,8 @@ func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
+- _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchown(fd int, uid int, gid int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fstatfs(fd int, buf *Statfs_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(buf)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Ftruncate(fd int, length int64) (err error) {
+- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
+- egid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Geteuid() (euid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
+- euid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
+- gid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrlimit(resource int, rlim *Rlimit) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
+- uid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyInit() (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lchown(path string, uid int, gid int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lstat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Pause() (err error) {
+- _, _, e1 := Syscall(SYS_PAUSE, 0, 0, 0)
++func munmap(addr uintptr, length uintptr) (err error) {
++ _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1668,15 +1675,14 @@ func Pause() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Pread(fd int, p []byte, offset int64) (n int, err error) {
++func Madvise(b []byte, advice int) (err error) {
+ var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
++ if len(b) > 0 {
++ _p0 = unsafe.Pointer(&b[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_PREAD64, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
+- n = int(r0)
++ _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1685,58 +1691,14 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
++func Mprotect(b []byte, prot int) (err error) {
+ var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
++ if len(b) > 0 {
++ _p0 = unsafe.Pointer(&b[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_PWRITE64, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Seek(fd int, offset int64, whence int) (off int64, err error) {
+- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
+- off = int64(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
+- r0, _, e1 := Syscall6(SYS_SENDFILE, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0)
+- written = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setfsgid(gid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++ _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1745,18 +1707,14 @@ func Setfsgid(gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsuid(uid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
++func Mlock(b []byte) (err error) {
++ var _p0 unsafe.Pointer
++ if len(b) > 0 {
++ _p0 = unsafe.Pointer(&b[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
+ }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setregid(rgid int, egid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
++ _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1765,8 +1723,8 @@ func Setregid(rgid int, egid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setresgid(rgid int, egid int, sgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid))
++func Mlockall(flags int) (err error) {
++ _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1775,18 +1733,14 @@ func Setresgid(rgid int, egid int, sgid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setresuid(ruid int, euid int, suid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid))
+- if e1 != 0 {
+- err = errnoErr(e1)
++func Msync(b []byte, flags int) (err error) {
++ var _p0 unsafe.Pointer
++ if len(b) > 0 {
++ _p0 = unsafe.Pointer(&b[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
+ }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setrlimit(resource int, rlim *Rlimit) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
++ _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1795,19 +1749,14 @@ func Setrlimit(resource int, rlim *Rlimit) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setreuid(ruid int, euid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
++func Munlock(b []byte) (err error) {
++ var _p0 unsafe.Pointer
++ if len(b) > 0 {
++ _p0 = unsafe.Pointer(&b[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
+ }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) {
+- r0, _, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
+- n = int64(r0)
++ _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1816,13 +1765,8 @@ func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n i
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++func Munlockall() (err error) {
++ _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1831,13 +1775,13 @@ func Stat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Statfs(path string, buf *Statfs_t) (err error) {
++func faccessat(dirfd int, path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0)
++ _, _, e1 := Syscall(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1846,23 +1790,13 @@ func Statfs(path string, buf *Statfs_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func SyncFileRange(fd int, off int64, n int64, flags int) (err error) {
+- _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE, uintptr(fd), uintptr(off), uintptr(n), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Truncate(path string, length int64) (err error) {
++func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int, flags int) (err error) {
+ var _p0 *byte
+- _p0, err = BytePtrFromString(path)
++ _p0, err = BytePtrFromString(pathname)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
++ _, _, e1 := Syscall6(SYS_NAME_TO_HANDLE_AT, uintptr(dirFD), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(fh)), uintptr(unsafe.Pointer(mountID)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1871,44 +1805,9 @@ func Truncate(path string, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func getgroups(n int, list *_Gid_t) (nn int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0)
+- nn = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func setgroups(n int, list *_Gid_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Gettimeofday(tv *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Utime(path string, buf *Utimbuf) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UTIME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0)
++func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) {
++ r0, _, e1 := Syscall(SYS_OPEN_BY_HANDLE_AT, uintptr(mountFD), uintptr(unsafe.Pointer(fh)), uintptr(flags))
++ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1924,14 +1823,3 @@ func pipe2(p *[2]_C_int, flags int) (err error) {
+ }
+ return
+ }
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go
+index 38c1bbdf..ba63af7b 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -l32 -tags linux,386 syscall_linux.go syscall_linux_386.go
++// go run mksyscall.go -l32 -tags linux,386 syscall_linux.go syscall_linux_386.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build linux,386
+@@ -14,1259 +14,8 @@ var _ syscall.Errno
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fchmodat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ioctl(fd int, req uint, arg uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(buf) > 0 {
+- _p1 = unsafe.Pointer(&buf[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unlinkat(dirfd int, path string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimes(path string, times *[2]Timeval) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getcwd(buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+- wpid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg2)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg3)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(arg4)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(payload) > 0 {
+- _p0 = unsafe.Pointer(&payload[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(source)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(fstype)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Acct(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(payload) > 0 {
+- _p2 = unsafe.Pointer(&payload[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Adjtimex(buf *Timex) (state int, err error) {
+- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
+- state = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chdir(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chroot(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ClockGettime(clockid int32, time *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup(oldfd int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup3(oldfd int, newfd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate(size int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate1(flag int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
+- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Eventfd(initval uint, flags int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Exit(code int) {
+- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(off>>32), uintptr(len), uintptr(len>>32))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fdatasync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getdents(fd int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
+- pgid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
+- pid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
+- ppid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
+- prio = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrandom(buf []byte, flags int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
+- sid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Gettid() (tid int) {
+- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
+- tid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(pathname)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
+- watchdesc = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyInit1(flags int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
+- success = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Kill(pid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Klogctl(typ int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Listxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Llistxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lremovexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func PivotRoot(newroot string, putold string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(newroot)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(putold)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
+- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func read(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Removexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(callback)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setdomainname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sethostname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+- pid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Settimeofday(tv *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setns(fd int, nstype int) (err error) {
+- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sync() {
+- Syscall(SYS_SYNC, 0, 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Syncfs(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sysinfo(info *Sysinfo_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
+- r0, r1, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
+- n = int64(int64(r1)<<32 | int64(r0))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
++func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
++ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(mask>>32), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1275,9 +24,8 @@ func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Times(tms *Tms) (ticks uintptr, err error) {
+- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
+- ticks = uintptr(r0)
++func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
++ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(off>>32), uintptr(len), uintptr(len>>32))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1286,16 +34,9 @@ func Times(tms *Tms) (ticks uintptr, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Umask(mask int) (oldmask int) {
+- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
+- oldmask = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Uname(buf *Utsname) (err error) {
+- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
++func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
++ r0, r1, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
++ n = int64(int64(r1)<<32 | int64(r0))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1304,13 +45,8 @@ func Uname(buf *Utsname) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Unmount(target string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++func pipe(p *[2]_C_int) (err error) {
++ _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1319,8 +55,8 @@ func Unmount(target string, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Unshare(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
++func Dup2(oldfd int, newfd int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1329,8 +65,9 @@ func Unshare(flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Ustat(dev int, ubuf *Ustat_t) (err error) {
+- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
++func EpollCreate(size int) (fd int, err error) {
++ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
++ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1339,46 +76,14 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func write(fd int, p []byte) (n int, err error) {
++func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+ var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
++ if len(events) > 0 {
++ _p0 = unsafe.Pointer(&events[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func exitThread(code int) (err error) {
+- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func readlen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func writelen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
++ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1388,128 +93,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Madvise(b []byte, advice int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mprotect(b []byte, prot int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Msync(b []byte, flags int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func pipe(p *[2]_C_int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func pipe2(p *[2]_C_int, flags int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
++func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
++ _, _, e1 := Syscall6(SYS_FADVISE64_64, uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(length), uintptr(length>>32), uintptr(advice))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1518,8 +103,8 @@ func pipe2(p *[2]_C_int, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Dup2(oldfd int, newfd int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
++func Fchown(fd int, uid int, gid int) (err error) {
++ _, _, e1 := Syscall(SYS_FCHOWN32, uintptr(fd), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1528,8 +113,8 @@ func Dup2(oldfd int, newfd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
+- _, _, e1 := Syscall6(SYS_FADVISE64_64, uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(length), uintptr(length>>32), uintptr(advice))
++func Fstat(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1538,18 +123,13 @@ func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fchown(fd int, uid int, gid int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHOWN32, uintptr(fd), uintptr(uid), uintptr(gid))
+- if e1 != 0 {
+- err = errnoErr(e1)
++func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
+ }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1569,7 +149,7 @@ func Ftruncate(fd int, length int64) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID32, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEGID32, 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+@@ -1577,7 +157,7 @@ func Getegid() (egid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Geteuid() (euid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID32, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEUID32, 0, 0, 0)
+ euid = int(r0)
+ return
+ }
+@@ -1585,7 +165,7 @@ func Geteuid() (euid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID32, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETGID32, 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+@@ -1593,7 +173,7 @@ func Getgid() (gid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID32, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETUID32, 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+@@ -1695,6 +275,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
+ r0, _, e1 := Syscall6(SYS_SENDFILE64, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0)
+ written = int(r0)
+@@ -1706,8 +306,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsgid(gid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSGID32, uintptr(gid), 0, 0)
++func setfsgid(gid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSGID32, uintptr(gid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1716,8 +317,9 @@ func Setfsgid(gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsuid(uid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSUID32, uintptr(uid), 0, 0)
++func setfsuid(uid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSUID32, uintptr(uid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1817,6 +419,16 @@ func Truncate(path string, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Ustat(dev int, ubuf *Ustat_t) (err error) {
++ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func getgroups(n int, list *_Gid_t) (nn int, err error) {
+ r0, _, e1 := RawSyscall(SYS_GETGROUPS32, uintptr(n), uintptr(unsafe.Pointer(list)), 0)
+ nn = int(r0)
+@@ -1860,15 +472,8 @@ func mmap2(addr uintptr, length uintptr, prot int, flags int, fd int, pageOffset
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(events) > 0 {
+- _p0 = unsafe.Pointer(&events[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+- n = int(r0)
++func Pause() (err error) {
++ _, _, e1 := Syscall(SYS_PAUSE, 0, 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1877,8 +482,8 @@ func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Pause() (err error) {
+- _, _, e1 := Syscall(SYS_PAUSE, 0, 0, 0)
++func getrlimit(resource int, rlim *rlimit32) (err error) {
++ _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1887,8 +492,8 @@ func Pause() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func getrlimit(resource int, rlim *rlimit32) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
++func setrlimit(resource int, rlim *rlimit32) (err error) {
++ _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1897,8 +502,13 @@ func getrlimit(resource int, rlim *rlimit32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func setrlimit(resource int, rlim *rlimit32) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
++func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1943,6 +553,21 @@ func Utime(path string, buf *Utimbuf) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func utimes(path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
+ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
+ n = int(r0)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go
+index dc8fe0a8..f64adef4 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -tags linux,amd64 syscall_linux.go syscall_linux_amd64.go
++// go run mksyscall.go -tags linux,amd64 syscall_linux.go syscall_linux_amd64.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build linux,amd64
+@@ -14,1446 +14,8 @@ var _ syscall.Errno
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fchmodat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ioctl(fd int, req uint, arg uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(buf) > 0 {
+- _p1 = unsafe.Pointer(&buf[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unlinkat(dirfd int, path string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimes(path string, times *[2]Timeval) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getcwd(buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+- wpid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg2)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg3)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(arg4)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(payload) > 0 {
+- _p0 = unsafe.Pointer(&payload[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(source)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(fstype)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Acct(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(payload) > 0 {
+- _p2 = unsafe.Pointer(&payload[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Adjtimex(buf *Timex) (state int, err error) {
+- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
+- state = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chdir(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chroot(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ClockGettime(clockid int32, time *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup(oldfd int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup3(oldfd int, newfd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate(size int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate1(flag int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
+- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Eventfd(initval uint, flags int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Exit(code int) {
+- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fdatasync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getdents(fd int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
+- pgid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
+- pid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
+- ppid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
+- prio = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrandom(buf []byte, flags int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
+- sid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Gettid() (tid int) {
+- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
+- tid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(pathname)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
+- watchdesc = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyInit1(flags int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
+- success = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Kill(pid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Klogctl(typ int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Listxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Llistxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lremovexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func PivotRoot(newroot string, putold string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(newroot)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(putold)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
+- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func read(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Removexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(callback)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setdomainname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sethostname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+- pid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Settimeofday(tv *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setns(fd int, nstype int) (err error) {
+- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sync() {
+- Syscall(SYS_SYNC, 0, 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Syncfs(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sysinfo(info *Sysinfo_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
+- r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
+- n = int64(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Times(tms *Tms) (ticks uintptr, err error) {
+- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
+- ticks = uintptr(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Umask(mask int) (oldmask int) {
+- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
+- oldmask = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Uname(buf *Utsname) (err error) {
+- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unmount(target string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unshare(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Ustat(dev int, ubuf *Ustat_t) (err error) {
+- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func write(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func exitThread(code int) (err error) {
+- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func readlen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func writelen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Madvise(b []byte, advice int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mprotect(b []byte, prot int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
++func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
++ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1462,8 +24,8 @@ func Munlock(b []byte) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
++func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
++ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1472,14 +34,9 @@ func Mlockall(flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Msync(b []byte, flags int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
++func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
++ r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
++ n = int64(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1488,8 +45,8 @@ func Msync(b []byte, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
++func Dup2(oldfd int, newfd int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1498,8 +55,9 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Dup2(oldfd int, newfd int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
++func EpollCreate(size int) (fd int, err error) {
++ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
++ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1555,6 +113,21 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_NEWFSTATAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fstatfs(fd int, buf *Statfs_t) (err error) {
+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(buf)), 0)
+ if e1 != 0 {
+@@ -1576,7 +149,7 @@ func Ftruncate(fd int, length int64) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+@@ -1584,7 +157,7 @@ func Getegid() (egid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Geteuid() (euid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
+ euid = int(r0)
+ return
+ }
+@@ -1592,7 +165,7 @@ func Geteuid() (euid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+@@ -1610,14 +183,14 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func InotifyInit() (fd int, err error) {
++func inotifyInit() (fd int, err error) {
+ r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0)
+ fd = int(r0)
+ if e1 != 0 {
+@@ -1673,21 +246,6 @@ func Listen(s int, n int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Lstat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Pause() (err error) {
+ _, _, e1 := Syscall(SYS_PAUSE, 0, 0, 0)
+ if e1 != 0 {
+@@ -1732,9 +290,18 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Seek(fd int, offset int64, whence int) (off int64, err error) {
+- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
+- off = int64(r0)
++func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1743,9 +310,9 @@ func Seek(fd int, offset int64, whence int) (off int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
+- n = int(r0)
++func Seek(fd int, offset int64, whence int) (off int64, err error) {
++ r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
++ off = int64(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1765,8 +332,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsgid(gid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++func setfsgid(gid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1775,8 +343,9 @@ func Setfsgid(gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsuid(uid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++func setfsuid(uid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1856,21 +425,6 @@ func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n i
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Statfs(path string, buf *Statfs_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1911,6 +465,16 @@ func Truncate(path string, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Ustat(dev int, ubuf *Ustat_t) (err error) {
++ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+ r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ fd = int(r0)
+@@ -2101,6 +665,21 @@ func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int6
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Utime(path string, buf *Utimbuf) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -2116,8 +695,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe(p *[2]_C_int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
++func utimes(path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2126,8 +710,8 @@ func pipe(p *[2]_C_int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe2(p *[2]_C_int, flags int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
++func pipe(p *[2]_C_int) (err error) {
++ _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2144,3 +728,18 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
+ }
+ return
+ }
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(cmdline)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go
+index 4d280427..ac19523e 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -l32 -arm -tags linux,arm syscall_linux.go syscall_linux_arm.go
++// go run mksyscall.go -l32 -arm -tags linux,arm syscall_linux.go syscall_linux_arm.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build linux,arm
+@@ -14,1456 +14,8 @@ var _ syscall.Errno
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fchmodat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ioctl(fd int, req uint, arg uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(buf) > 0 {
+- _p1 = unsafe.Pointer(&buf[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unlinkat(dirfd int, path string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimes(path string, times *[2]Timeval) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getcwd(buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+- wpid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg2)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg3)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(arg4)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(payload) > 0 {
+- _p0 = unsafe.Pointer(&payload[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(source)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(fstype)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Acct(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(payload) > 0 {
+- _p2 = unsafe.Pointer(&payload[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Adjtimex(buf *Timex) (state int, err error) {
+- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
+- state = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chdir(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chroot(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ClockGettime(clockid int32, time *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup(oldfd int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup3(oldfd int, newfd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate(size int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate1(flag int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
+- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Eventfd(initval uint, flags int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Exit(code int) {
+- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(off>>32), uintptr(len), uintptr(len>>32))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fdatasync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getdents(fd int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
+- pgid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
+- pid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
+- ppid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
+- prio = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrandom(buf []byte, flags int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
+- sid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Gettid() (tid int) {
+- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
+- tid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(pathname)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
+- watchdesc = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyInit1(flags int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
+- success = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Kill(pid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Klogctl(typ int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Listxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Llistxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lremovexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func PivotRoot(newroot string, putold string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(newroot)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(putold)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
+- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func read(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Removexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(callback)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setdomainname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sethostname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+- pid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Settimeofday(tv *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setns(fd int, nstype int) (err error) {
+- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sync() {
+- Syscall(SYS_SYNC, 0, 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Syncfs(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sysinfo(info *Sysinfo_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
+- r0, r1, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
+- n = int64(int64(r1)<<32 | int64(r0))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Times(tms *Tms) (ticks uintptr, err error) {
+- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
+- ticks = uintptr(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Umask(mask int) (oldmask int) {
+- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
+- oldmask = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Uname(buf *Utsname) (err error) {
+- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unmount(target string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unshare(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Ustat(dev int, ubuf *Ustat_t) (err error) {
+- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func write(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func exitThread(code int) (err error) {
+- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func readlen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func writelen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Madvise(b []byte, advice int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mprotect(b []byte, prot int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
++func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
++ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(mask>>32), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1472,14 +24,8 @@ func Mlockall(flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Msync(b []byte, flags int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
++func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
++ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(off>>32), uintptr(len), uintptr(len>>32))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1488,8 +34,9 @@ func Msync(b []byte, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
++func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
++ r0, r1, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
++ n = int64(int64(r1)<<32 | int64(r0))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1498,8 +45,8 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe2(p *[2]_C_int, flags int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
++func pipe(p *[2]_C_int) (err error) {
++ _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1697,6 +244,34 @@ func Dup2(oldfd int, newfd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func EpollCreate(size int) (fd int, err error) {
++ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
++ fd = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(events) > 0 {
++ _p0 = unsafe.Pointer(&events[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchown(fd int, uid int, gid int) (err error) {
+ _, _, e1 := Syscall(SYS_FCHOWN32, uintptr(fd), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+@@ -1717,8 +292,23 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID32, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEGID32, 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+@@ -1726,7 +316,7 @@ func Getegid() (egid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Geteuid() (euid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID32, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEUID32, 0, 0, 0)
+ euid = int(r0)
+ return
+ }
+@@ -1734,7 +324,7 @@ func Geteuid() (euid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID32, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETGID32, 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+@@ -1742,7 +332,7 @@ func Getgid() (gid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID32, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETUID32, 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+@@ -1800,6 +390,36 @@ func Lstat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Pause() (err error) {
++ _, _, e1 := Syscall(SYS_PAUSE, 0, 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
+ r0, _, e1 := Syscall6(SYS_SENDFILE64, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0)
+ written = int(r0)
+@@ -1822,8 +442,9 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsgid(gid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSGID32, uintptr(gid), 0, 0)
++func setfsgid(gid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSGID32, uintptr(gid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1832,8 +453,9 @@ func Setfsgid(gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsuid(uid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSUID32, uintptr(uid), 0, 0)
++func setfsuid(uid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSUID32, uintptr(uid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1918,8 +540,8 @@ func Stat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Gettimeofday(tv *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
++func Ustat(dev int, ubuf *Ustat_t) (err error) {
++ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1928,15 +550,13 @@ func Gettimeofday(tv *Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(events) > 0 {
+- _p0 = unsafe.Pointer(&events[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
++func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
+ }
+- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+- n = int(r0)
++ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1945,8 +565,23 @@ func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Pause() (err error) {
+- _, _, e1 := Syscall(SYS_PAUSE, 0, 0, 0)
++func Gettimeofday(tv *Timeval) (err error) {
++ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func utimes(path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2053,3 +688,28 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
+ }
+ return
+ }
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func armSyncFileRange(fd int, flags int, off int64, n int64) (err error) {
++ _, _, e1 := Syscall6(SYS_ARM_SYNC_FILE_RANGE, uintptr(fd), uintptr(flags), uintptr(off), uintptr(off>>32), uintptr(n), uintptr(n>>32))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(cmdline)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go
+index 20ad4b6c..f0d2890b 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -tags linux,arm64 syscall_linux.go syscall_linux_arm64.go
++// go run mksyscall.go -tags linux,arm64 syscall_linux.go syscall_linux_arm64.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build linux,arm64
+@@ -14,1228 +14,8 @@ var _ syscall.Errno
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fchmodat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ioctl(fd int, req uint, arg uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(buf) > 0 {
+- _p1 = unsafe.Pointer(&buf[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unlinkat(dirfd int, path string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimes(path string, times *[2]Timeval) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getcwd(buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+- wpid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg2)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg3)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(arg4)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(payload) > 0 {
+- _p0 = unsafe.Pointer(&payload[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(source)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(fstype)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Acct(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(payload) > 0 {
+- _p2 = unsafe.Pointer(&payload[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Adjtimex(buf *Timex) (state int, err error) {
+- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
+- state = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chdir(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chroot(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ClockGettime(clockid int32, time *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup(oldfd int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup3(oldfd int, newfd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate(size int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate1(flag int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
+- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Eventfd(initval uint, flags int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Exit(code int) {
+- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fdatasync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getdents(fd int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
+- pgid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
+- pid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
+- ppid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
+- prio = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrandom(buf []byte, flags int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
+- sid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Gettid() (tid int) {
+- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
+- tid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(pathname)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
+- watchdesc = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyInit1(flags int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
+- success = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Kill(pid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Klogctl(typ int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Listxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Llistxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lremovexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func PivotRoot(newroot string, putold string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(newroot)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(putold)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
+- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func read(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Removexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(callback)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setdomainname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sethostname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+- pid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Settimeofday(tv *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setns(fd int, nstype int) (err error) {
+- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sync() {
+- Syscall(SYS_SYNC, 0, 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Syncfs(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
++func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
++ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1244,8 +24,8 @@ func Syncfs(fd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Sysinfo(info *Sysinfo_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
++func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
++ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1265,120 +45,14 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Times(tms *Tms) (ticks uintptr, err error) {
+- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
+- ticks = uintptr(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Umask(mask int) (oldmask int) {
+- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
+- oldmask = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Uname(buf *Utsname) (err error) {
+- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unmount(target string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unshare(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Ustat(dev int, ubuf *Ustat_t) (err error) {
+- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func write(fd int, p []byte) (n int, err error) {
++func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+ var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
++ if len(events) > 0 {
++ _p0 = unsafe.Pointer(&events[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func exitThread(code int) (err error) {
+- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func readlen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func writelen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
++ r0, _, e1 := Syscall6(SYS_EPOLL_PWAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1388,125 +62,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Madvise(b []byte, advice int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mprotect(b []byte, prot int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Msync(b []byte, flags int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(events) > 0 {
+- _p0 = unsafe.Pointer(&events[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_EPOLL_PWAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+- n = int(r0)
++func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
++ _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1571,7 +128,7 @@ func Ftruncate(fd int, length int64) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+@@ -1579,7 +136,7 @@ func Getegid() (egid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Geteuid() (euid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
+ euid = int(r0)
+ return
+ }
+@@ -1587,7 +144,7 @@ func Geteuid() (euid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+@@ -1605,7 +162,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+@@ -1656,9 +213,18 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Seek(fd int, offset int64, whence int) (off int64, err error) {
+- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
+- off = int64(r0)
++func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1667,9 +233,9 @@ func Seek(fd int, offset int64, whence int) (off int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
+- n = int(r0)
++func Seek(fd int, offset int64, whence int) (off int64, err error) {
++ r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
++ off = int64(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1689,8 +255,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsgid(gid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++func setfsgid(gid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1699,8 +266,9 @@ func Setfsgid(gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsuid(uid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++func setfsuid(uid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2020,8 +588,13 @@ func Gettimeofday(tv *Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe2(p *[2]_C_int, flags int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
++func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(cmdline)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go
+index 9f194dc4..aecbbca7 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -b32 -arm -tags linux,mips syscall_linux.go syscall_linux_mipsx.go
++// go run mksyscall.go -b32 -arm -tags linux,mips syscall_linux.go syscall_linux_mipsx.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build linux,mips
+@@ -14,1228 +14,8 @@ var _ syscall.Errno
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fchmodat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ioctl(fd int, req uint, arg uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(buf) > 0 {
+- _p1 = unsafe.Pointer(&buf[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unlinkat(dirfd int, path string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimes(path string, times *[2]Timeval) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getcwd(buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+- wpid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg2)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg3)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(arg4)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(payload) > 0 {
+- _p0 = unsafe.Pointer(&payload[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(source)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(fstype)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Acct(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(payload) > 0 {
+- _p2 = unsafe.Pointer(&payload[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Adjtimex(buf *Timex) (state int, err error) {
+- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
+- state = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chdir(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chroot(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ClockGettime(clockid int32, time *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup(oldfd int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup3(oldfd int, newfd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate(size int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate1(flag int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
+- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Eventfd(initval uint, flags int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Exit(code int) {
+- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off>>32), uintptr(off), uintptr(len>>32), uintptr(len))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fdatasync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getdents(fd int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
+- pgid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
+- pid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
+- ppid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
+- prio = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrandom(buf []byte, flags int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
+- sid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Gettid() (tid int) {
+- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
+- tid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(pathname)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
+- watchdesc = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyInit1(flags int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
+- success = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Kill(pid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Klogctl(typ int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Listxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Llistxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lremovexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func PivotRoot(newroot string, putold string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(newroot)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(putold)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
+- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func read(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Removexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(callback)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setdomainname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sethostname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+- pid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Settimeofday(tv *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setns(fd int, nstype int) (err error) {
+- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sync() {
+- Syscall(SYS_SYNC, 0, 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Syncfs(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
++func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
++ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask>>32), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1244,8 +24,8 @@ func Syncfs(fd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Sysinfo(info *Sysinfo_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
++func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
++ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off>>32), uintptr(off), uintptr(len>>32), uintptr(len))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1265,62 +45,8 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Times(tms *Tms) (ticks uintptr, err error) {
+- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
+- ticks = uintptr(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Umask(mask int) (oldmask int) {
+- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
+- oldmask = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Uname(buf *Utsname) (err error) {
+- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unmount(target string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unshare(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
++func Dup2(oldfd int, newfd int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1329,8 +55,9 @@ func Unshare(flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Ustat(dev int, ubuf *Ustat_t) (err error) {
+- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
++func EpollCreate(size int) (fd int, err error) {
++ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
++ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1339,46 +66,14 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func write(fd int, p []byte) (n int, err error) {
++func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+ var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
++ if len(events) > 0 {
++ _p0 = unsafe.Pointer(&events[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func exitThread(code int) (err error) {
+- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func readlen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func writelen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
++ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1388,118 +83,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Madvise(b []byte, advice int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mprotect(b []byte, prot int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Msync(b []byte, flags int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup2(oldfd int, newfd int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
++func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
++ _, _, e1 := Syscall9(SYS_FADVISE64, uintptr(fd), 0, uintptr(offset>>32), uintptr(offset), uintptr(length>>32), uintptr(length), uintptr(advice), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1529,7 +114,7 @@ func Ftruncate(fd int, length int64) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+@@ -1537,7 +122,7 @@ func Getegid() (egid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Geteuid() (euid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
+ euid = int(r0)
+ return
+ }
+@@ -1545,7 +130,7 @@ func Geteuid() (euid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+@@ -1553,7 +138,7 @@ func Getgid() (gid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+@@ -1619,6 +204,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
+ r0, _, e1 := Syscall6(SYS__NEWSELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
+ n = int(r0)
+@@ -1641,8 +246,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsgid(gid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++func setfsgid(gid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1651,8 +257,9 @@ func Setfsgid(gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsuid(uid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++func setfsuid(uid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1711,9 +318,9 @@ func Shutdown(fd int, how int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) {
+- r0, r1, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
+- n = int64(int64(r0)<<32 | int64(r1))
++func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1747,6 +354,16 @@ func Truncate(path string, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Ustat(dev int, ubuf *Ustat_t) (err error) {
++ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+ r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ fd = int(r0)
+@@ -1957,6 +574,21 @@ func Iopl(level int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Gettimeofday(tv *Timeval) (err error) {
+ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+ if e1 != 0 {
+@@ -1978,13 +610,13 @@ func Time(t *Time_t) (tt Time_t, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Lstat(path string, stat *Stat_t) (err error) {
++func Utime(path string, buf *Utimbuf) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ _, _, e1 := Syscall(SYS_UTIME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1993,8 +625,13 @@ func Lstat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++func utimes(path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2003,13 +640,13 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
++func Lstat(path string, stat *Stat_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2018,13 +655,23 @@ func Stat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Utime(path string, buf *Utimbuf) (err error) {
++func Fstat(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UTIME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0)
++ _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2033,15 +680,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(events) > 0 {
+- _p0 = unsafe.Pointer(&events[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
++func Stat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
+ }
+- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+- n = int(r0)
++ _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2060,8 +705,10 @@ func Pause() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe2(p *[2]_C_int, flags int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
++func pipe() (p1 int, p2 int, err error) {
++ r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
++ p1 = int(r0)
++ p2 = int(r1)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go
+index 4fde3ef0..424fb7fb 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -tags linux,mips64 syscall_linux.go syscall_linux_mips64x.go
++// go run mksyscall.go -tags linux,mips64 syscall_linux.go syscall_linux_mips64x.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build linux,mips64
+@@ -14,1228 +14,8 @@ var _ syscall.Errno
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fchmodat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ioctl(fd int, req uint, arg uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(buf) > 0 {
+- _p1 = unsafe.Pointer(&buf[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unlinkat(dirfd int, path string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimes(path string, times *[2]Timeval) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getcwd(buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+- wpid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg2)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg3)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(arg4)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(payload) > 0 {
+- _p0 = unsafe.Pointer(&payload[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(source)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(fstype)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Acct(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(payload) > 0 {
+- _p2 = unsafe.Pointer(&payload[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Adjtimex(buf *Timex) (state int, err error) {
+- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
+- state = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chdir(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chroot(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ClockGettime(clockid int32, time *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup(oldfd int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup3(oldfd int, newfd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate(size int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate1(flag int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
+- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Eventfd(initval uint, flags int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Exit(code int) {
+- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fdatasync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getdents(fd int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
+- pgid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
+- pid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
+- ppid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
+- prio = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrandom(buf []byte, flags int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
+- sid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Gettid() (tid int) {
+- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
+- tid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(pathname)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
+- watchdesc = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyInit1(flags int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
+- success = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Kill(pid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Klogctl(typ int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Listxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Llistxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lremovexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func PivotRoot(newroot string, putold string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(newroot)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(putold)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
+- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func read(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Removexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(callback)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setdomainname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sethostname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+- pid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Settimeofday(tv *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setns(fd int, nstype int) (err error) {
+- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sync() {
+- Syscall(SYS_SYNC, 0, 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Syncfs(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
++func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
++ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1244,8 +24,8 @@ func Syncfs(fd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Sysinfo(info *Sysinfo_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
++func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
++ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1265,62 +45,8 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Times(tms *Tms) (ticks uintptr, err error) {
+- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
+- ticks = uintptr(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Umask(mask int) (oldmask int) {
+- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
+- oldmask = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Uname(buf *Utsname) (err error) {
+- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unmount(target string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unshare(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
++func Dup2(oldfd int, newfd int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1329,8 +55,9 @@ func Unshare(flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Ustat(dev int, ubuf *Ustat_t) (err error) {
+- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
++func EpollCreate(size int) (fd int, err error) {
++ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
++ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1339,46 +66,14 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func write(fd int, p []byte) (n int, err error) {
++func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+ var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
++ if len(events) > 0 {
++ _p0 = unsafe.Pointer(&events[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func exitThread(code int) (err error) {
+- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func readlen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func writelen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
++ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1388,135 +83,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Madvise(b []byte, advice int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mprotect(b []byte, prot int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Msync(b []byte, flags int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup2(oldfd int, newfd int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(events) > 0 {
+- _p0 = unsafe.Pointer(&events[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+- n = int(r0)
++func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
++ _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1556,7 +124,7 @@ func Ftruncate(fd int, length int64) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+@@ -1564,7 +132,7 @@ func Getegid() (egid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Geteuid() (euid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
+ euid = int(r0)
+ return
+ }
+@@ -1572,7 +140,7 @@ func Geteuid() (euid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+@@ -1590,7 +158,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+@@ -1666,9 +234,18 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Seek(fd int, offset int64, whence int) (off int64, err error) {
+- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
+- off = int64(r0)
++func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1677,9 +254,9 @@ func Seek(fd int, offset int64, whence int) (off int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
+- n = int(r0)
++func Seek(fd int, offset int64, whence int) (off int64, err error) {
++ r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
++ off = int64(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1699,8 +276,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsgid(gid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++func setfsgid(gid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1709,8 +287,9 @@ func Setfsgid(gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsuid(uid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++func setfsuid(uid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1830,6 +409,16 @@ func Truncate(path string, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Ustat(dev int, ubuf *Ustat_t) (err error) {
++ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+ r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ fd = int(r0)
+@@ -2020,6 +609,21 @@ func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int6
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Gettimeofday(tv *Timeval) (err error) {
+ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+ if e1 != 0 {
+@@ -2045,8 +649,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe2(p *[2]_C_int, flags int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
++func utimes(path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2065,6 +674,21 @@ func fstat(fd int, st *stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func fstatat(dirfd int, path string, st *stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_NEWFSTATAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(st)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func lstat(path string, st *stat_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go
+index f6463423..28c7239c 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -tags linux,mips64le syscall_linux.go syscall_linux_mips64x.go
++// go run mksyscall.go -tags linux,mips64le syscall_linux.go syscall_linux_mips64x.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build linux,mips64le
+@@ -14,1228 +14,8 @@ var _ syscall.Errno
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fchmodat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ioctl(fd int, req uint, arg uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(buf) > 0 {
+- _p1 = unsafe.Pointer(&buf[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unlinkat(dirfd int, path string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimes(path string, times *[2]Timeval) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getcwd(buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+- wpid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg2)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg3)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(arg4)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(payload) > 0 {
+- _p0 = unsafe.Pointer(&payload[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(source)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(fstype)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Acct(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(payload) > 0 {
+- _p2 = unsafe.Pointer(&payload[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Adjtimex(buf *Timex) (state int, err error) {
+- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
+- state = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chdir(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chroot(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ClockGettime(clockid int32, time *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup(oldfd int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup3(oldfd int, newfd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate(size int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate1(flag int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
+- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Eventfd(initval uint, flags int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Exit(code int) {
+- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fdatasync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getdents(fd int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
+- pgid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
+- pid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
+- ppid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
+- prio = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrandom(buf []byte, flags int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
+- sid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Gettid() (tid int) {
+- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
+- tid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(pathname)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
+- watchdesc = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyInit1(flags int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
+- success = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Kill(pid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Klogctl(typ int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Listxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Llistxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lremovexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func PivotRoot(newroot string, putold string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(newroot)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(putold)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
+- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func read(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Removexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(callback)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setdomainname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sethostname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+- pid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Settimeofday(tv *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setns(fd int, nstype int) (err error) {
+- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sync() {
+- Syscall(SYS_SYNC, 0, 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Syncfs(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
++func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
++ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1244,8 +24,8 @@ func Syncfs(fd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Sysinfo(info *Sysinfo_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
++func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
++ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1265,62 +45,8 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Times(tms *Tms) (ticks uintptr, err error) {
+- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
+- ticks = uintptr(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Umask(mask int) (oldmask int) {
+- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
+- oldmask = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Uname(buf *Utsname) (err error) {
+- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unmount(target string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unshare(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
++func Dup2(oldfd int, newfd int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1329,8 +55,9 @@ func Unshare(flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Ustat(dev int, ubuf *Ustat_t) (err error) {
+- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
++func EpollCreate(size int) (fd int, err error) {
++ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
++ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1339,46 +66,14 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func write(fd int, p []byte) (n int, err error) {
++func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+ var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
++ if len(events) > 0 {
++ _p0 = unsafe.Pointer(&events[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func exitThread(code int) (err error) {
+- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func readlen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func writelen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
++ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1388,135 +83,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Madvise(b []byte, advice int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mprotect(b []byte, prot int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Msync(b []byte, flags int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup2(oldfd int, newfd int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(events) > 0 {
+- _p0 = unsafe.Pointer(&events[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+- n = int(r0)
++func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
++ _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1556,7 +124,7 @@ func Ftruncate(fd int, length int64) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+@@ -1564,7 +132,7 @@ func Getegid() (egid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Geteuid() (euid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
+ euid = int(r0)
+ return
+ }
+@@ -1572,7 +140,7 @@ func Geteuid() (euid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+@@ -1590,7 +158,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+@@ -1666,9 +234,18 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Seek(fd int, offset int64, whence int) (off int64, err error) {
+- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
+- off = int64(r0)
++func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1677,9 +254,9 @@ func Seek(fd int, offset int64, whence int) (off int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_PSELECT6, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
+- n = int(r0)
++func Seek(fd int, offset int64, whence int) (off int64, err error) {
++ r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
++ off = int64(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1699,8 +276,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsgid(gid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++func setfsgid(gid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1709,8 +287,9 @@ func Setfsgid(gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsuid(uid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++func setfsuid(uid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1830,6 +409,16 @@ func Truncate(path string, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Ustat(dev int, ubuf *Ustat_t) (err error) {
++ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+ r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ fd = int(r0)
+@@ -2020,6 +609,21 @@ func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int6
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Gettimeofday(tv *Timeval) (err error) {
+ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+ if e1 != 0 {
+@@ -2045,8 +649,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe2(p *[2]_C_int, flags int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
++func utimes(path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2065,6 +674,21 @@ func fstat(fd int, st *stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func fstatat(dirfd int, path string, st *stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_NEWFSTATAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(st)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func lstat(path string, st *stat_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go
+index 964591e5..84596b30 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -l32 -arm -tags linux,mipsle syscall_linux.go syscall_linux_mipsx.go
++// go run mksyscall.go -l32 -arm -tags linux,mipsle syscall_linux.go syscall_linux_mipsx.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build linux,mipsle
+@@ -14,1228 +14,8 @@ var _ syscall.Errno
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fchmodat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ioctl(fd int, req uint, arg uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(buf) > 0 {
+- _p1 = unsafe.Pointer(&buf[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unlinkat(dirfd int, path string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimes(path string, times *[2]Timeval) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getcwd(buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+- wpid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg2)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg3)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(arg4)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(payload) > 0 {
+- _p0 = unsafe.Pointer(&payload[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(source)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(fstype)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Acct(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(payload) > 0 {
+- _p2 = unsafe.Pointer(&payload[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Adjtimex(buf *Timex) (state int, err error) {
+- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
+- state = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chdir(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chroot(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ClockGettime(clockid int32, time *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup(oldfd int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup3(oldfd int, newfd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate(size int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate1(flag int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
+- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Eventfd(initval uint, flags int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Exit(code int) {
+- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(off>>32), uintptr(len), uintptr(len>>32))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fdatasync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getdents(fd int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
+- pgid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
+- pid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
+- ppid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
+- prio = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrandom(buf []byte, flags int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
+- sid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Gettid() (tid int) {
+- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
+- tid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(pathname)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
+- watchdesc = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyInit1(flags int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
+- success = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Kill(pid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Klogctl(typ int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Listxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Llistxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lremovexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func PivotRoot(newroot string, putold string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(newroot)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(putold)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
+- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func read(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Removexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(callback)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setdomainname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sethostname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+- pid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Settimeofday(tv *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setns(fd int, nstype int) (err error) {
+- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sync() {
+- Syscall(SYS_SYNC, 0, 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Syncfs(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
++func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
++ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(mask>>32), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1244,8 +24,8 @@ func Syncfs(fd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Sysinfo(info *Sysinfo_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
++func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
++ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(off>>32), uintptr(len), uintptr(len>>32))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1265,62 +45,8 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Times(tms *Tms) (ticks uintptr, err error) {
+- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
+- ticks = uintptr(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Umask(mask int) (oldmask int) {
+- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
+- oldmask = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Uname(buf *Utsname) (err error) {
+- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unmount(target string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unshare(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
++func Dup2(oldfd int, newfd int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1329,8 +55,9 @@ func Unshare(flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Ustat(dev int, ubuf *Ustat_t) (err error) {
+- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
++func EpollCreate(size int) (fd int, err error) {
++ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
++ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1339,46 +66,14 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func write(fd int, p []byte) (n int, err error) {
++func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+ var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
++ if len(events) > 0 {
++ _p0 = unsafe.Pointer(&events[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func exitThread(code int) (err error) {
+- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func readlen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func writelen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
++ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1388,118 +83,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Madvise(b []byte, advice int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mprotect(b []byte, prot int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Msync(b []byte, flags int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup2(oldfd int, newfd int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
++func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
++ _, _, e1 := Syscall9(SYS_FADVISE64, uintptr(fd), 0, uintptr(offset), uintptr(offset>>32), uintptr(length), uintptr(length>>32), uintptr(advice), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1529,7 +114,7 @@ func Ftruncate(fd int, length int64) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+@@ -1537,7 +122,7 @@ func Getegid() (egid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Geteuid() (euid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
+ euid = int(r0)
+ return
+ }
+@@ -1545,7 +130,7 @@ func Geteuid() (euid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+@@ -1553,7 +138,7 @@ func Getgid() (gid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+@@ -1619,6 +204,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
+ r0, _, e1 := Syscall6(SYS__NEWSELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
+ n = int(r0)
+@@ -1641,8 +246,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsgid(gid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++func setfsgid(gid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1651,8 +257,9 @@ func Setfsgid(gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsuid(uid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++func setfsuid(uid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1711,9 +318,9 @@ func Shutdown(fd int, how int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) {
+- r0, r1, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
+- n = int64(int64(r1)<<32 | int64(r0))
++func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1747,6 +354,16 @@ func Truncate(path string, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Ustat(dev int, ubuf *Ustat_t) (err error) {
++ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+ r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
+ fd = int(r0)
+@@ -1957,6 +574,21 @@ func Iopl(level int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Gettimeofday(tv *Timeval) (err error) {
+ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+ if e1 != 0 {
+@@ -1978,13 +610,13 @@ func Time(t *Time_t) (tt Time_t, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Lstat(path string, stat *Stat_t) (err error) {
++func Utime(path string, buf *Utimbuf) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ _, _, e1 := Syscall(SYS_UTIME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1993,8 +625,13 @@ func Lstat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++func utimes(path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2003,13 +640,13 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Stat(path string, stat *Stat_t) (err error) {
++func Lstat(path string, stat *Stat_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2018,13 +655,23 @@ func Stat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Utime(path string, buf *Utimbuf) (err error) {
++func Fstat(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_UTIME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0)
++ _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2033,15 +680,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(events) > 0 {
+- _p0 = unsafe.Pointer(&events[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
++func Stat(path string, stat *Stat_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
+ }
+- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+- n = int(r0)
++ _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2060,8 +705,10 @@ func Pause() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe2(p *[2]_C_int, flags int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
++func pipe() (p1 int, p2 int, err error) {
++ r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
++ p1 = int(r0)
++ p2 = int(r1)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go
+index 204ab1ae..de022639 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -tags linux,ppc64 syscall_linux.go syscall_linux_ppc64x.go
++// go run mksyscall.go -tags linux,ppc64 syscall_linux.go syscall_linux_ppc64x.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build linux,ppc64
+@@ -14,1270 +14,8 @@ var _ syscall.Errno
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fchmodat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ioctl(fd int, req uint, arg uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(buf) > 0 {
+- _p1 = unsafe.Pointer(&buf[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unlinkat(dirfd int, path string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimes(path string, times *[2]Timeval) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getcwd(buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+- wpid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg2)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg3)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(arg4)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(payload) > 0 {
+- _p0 = unsafe.Pointer(&payload[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(source)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(fstype)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Acct(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(payload) > 0 {
+- _p2 = unsafe.Pointer(&payload[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Adjtimex(buf *Timex) (state int, err error) {
+- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
+- state = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chdir(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chroot(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ClockGettime(clockid int32, time *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup(oldfd int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup3(oldfd int, newfd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate(size int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate1(flag int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
+- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Eventfd(initval uint, flags int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Exit(code int) {
+- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fdatasync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getdents(fd int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
+- pgid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
+- pid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
+- ppid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
+- prio = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrandom(buf []byte, flags int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
+- sid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Gettid() (tid int) {
+- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
+- tid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(pathname)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
+- watchdesc = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyInit1(flags int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
+- success = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Kill(pid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Klogctl(typ int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Listxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Llistxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lremovexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func PivotRoot(newroot string, putold string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(newroot)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(putold)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
+- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func read(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Removexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(callback)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setdomainname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sethostname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+- pid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Settimeofday(tv *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setns(fd int, nstype int) (err error) {
+- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sync() {
+- Syscall(SYS_SYNC, 0, 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Syncfs(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sysinfo(info *Sysinfo_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
+- r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
+- n = int64(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Times(tms *Tms) (ticks uintptr, err error) {
+- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
+- ticks = uintptr(r0)
++func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
++ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1286,16 +24,8 @@ func Times(tms *Tms) (ticks uintptr, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Umask(mask int) (oldmask int) {
+- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
+- oldmask = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Uname(buf *Utsname) (err error) {
+- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
++func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
++ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1304,13 +34,9 @@ func Uname(buf *Utsname) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Unmount(target string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
++ r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
++ n = int64(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1319,8 +45,8 @@ func Unmount(target string, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Unshare(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
++func Dup2(oldfd int, newfd int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1329,8 +55,9 @@ func Unshare(flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Ustat(dev int, ubuf *Ustat_t) (err error) {
+- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
++func EpollCreate(size int) (fd int, err error) {
++ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
++ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1339,46 +66,14 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func write(fd int, p []byte) (n int, err error) {
++func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+ var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
++ if len(events) > 0 {
++ _p0 = unsafe.Pointer(&events[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func exitThread(code int) (err error) {
+- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func readlen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func writelen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
++ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1388,108 +83,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Madvise(b []byte, advice int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mprotect(b []byte, prot int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Msync(b []byte, flags int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
++func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
++ _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1498,15 +93,8 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(events) > 0 {
+- _p0 = unsafe.Pointer(&events[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+- n = int(r0)
++func Fchown(fd int, uid int, gid int) (err error) {
++ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1515,8 +103,8 @@ func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Dup2(oldfd int, newfd int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
++func Fstat(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1525,18 +113,13 @@ func Dup2(oldfd int, newfd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fchown(fd int, uid int, gid int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
+- if e1 != 0 {
+- err = errnoErr(e1)
++func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
+ }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ _, _, e1 := Syscall6(SYS_NEWFSTATAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1566,7 +149,7 @@ func Ftruncate(fd int, length int64) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+@@ -1574,7 +157,7 @@ func Getegid() (egid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Geteuid() (euid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
+ euid = int(r0)
+ return
+ }
+@@ -1582,7 +165,7 @@ func Geteuid() (euid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+@@ -1600,7 +183,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+@@ -1722,6 +305,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Seek(fd int, offset int64, whence int) (off int64, err error) {
+ r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
+ off = int64(r0)
+@@ -1734,7 +337,7 @@ func Seek(fd int, offset int64, whence int) (off int64, err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ r0, _, e1 := Syscall6(SYS__NEWSELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1755,8 +358,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsgid(gid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++func setfsgid(gid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1765,8 +369,9 @@ func Setfsgid(gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsuid(uid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++func setfsuid(uid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1876,8 +481,13 @@ func Statfs(path string, buf *Statfs_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func SyncFileRange(fd int, off int64, n int64, flags int) (err error) {
+- _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE2, uintptr(fd), uintptr(off), uintptr(n), uintptr(flags), 0, 0)
++func Truncate(path string, length int64) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1886,13 +496,8 @@ func SyncFileRange(fd int, off int64, n int64, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Truncate(path string, length int64) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
++func Ustat(dev int, ubuf *Ustat_t) (err error) {
++ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2091,6 +696,21 @@ func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int6
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Gettimeofday(tv *Timeval) (err error) {
+ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+ if e1 != 0 {
+@@ -2127,8 +747,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe(p *[2]_C_int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
++func utimes(path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2137,8 +762,8 @@ func pipe(p *[2]_C_int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe2(p *[2]_C_int, flags int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
++func pipe(p *[2]_C_int) (err error) {
++ _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2155,3 +780,28 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
+ }
+ return
+ }
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func syncFileRange2(fd int, flags int, off int64, n int64) (err error) {
++ _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE2, uintptr(fd), uintptr(flags), uintptr(off), uintptr(n), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(cmdline)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go
+index a8a2b0b0..888f21d3 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -tags linux,ppc64le syscall_linux.go syscall_linux_ppc64x.go
++// go run mksyscall.go -tags linux,ppc64le syscall_linux.go syscall_linux_ppc64x.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build linux,ppc64le
+@@ -14,1270 +14,8 @@ var _ syscall.Errno
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fchmodat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ioctl(fd int, req uint, arg uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(buf) > 0 {
+- _p1 = unsafe.Pointer(&buf[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unlinkat(dirfd int, path string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimes(path string, times *[2]Timeval) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getcwd(buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+- wpid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg2)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg3)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(arg4)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(payload) > 0 {
+- _p0 = unsafe.Pointer(&payload[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(source)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(fstype)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Acct(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(payload) > 0 {
+- _p2 = unsafe.Pointer(&payload[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Adjtimex(buf *Timex) (state int, err error) {
+- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
+- state = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chdir(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chroot(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ClockGettime(clockid int32, time *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup(oldfd int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup3(oldfd int, newfd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate(size int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate1(flag int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
+- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Eventfd(initval uint, flags int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Exit(code int) {
+- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fdatasync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getdents(fd int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
+- pgid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
+- pid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
+- ppid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
+- prio = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrandom(buf []byte, flags int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
+- sid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Gettid() (tid int) {
+- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
+- tid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(pathname)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
+- watchdesc = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyInit1(flags int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
+- success = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Kill(pid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Klogctl(typ int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Listxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Llistxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lremovexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func PivotRoot(newroot string, putold string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(newroot)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(putold)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
+- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func read(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Removexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(callback)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setdomainname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sethostname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+- pid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Settimeofday(tv *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setns(fd int, nstype int) (err error) {
+- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sync() {
+- Syscall(SYS_SYNC, 0, 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Syncfs(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sysinfo(info *Sysinfo_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
+- r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
+- n = int64(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Times(tms *Tms) (ticks uintptr, err error) {
+- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
+- ticks = uintptr(r0)
++func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
++ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1286,16 +24,8 @@ func Times(tms *Tms) (ticks uintptr, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Umask(mask int) (oldmask int) {
+- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
+- oldmask = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Uname(buf *Utsname) (err error) {
+- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
++func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
++ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1304,13 +34,9 @@ func Uname(buf *Utsname) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Unmount(target string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
++ r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
++ n = int64(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1319,8 +45,8 @@ func Unmount(target string, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Unshare(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
++func Dup2(oldfd int, newfd int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1329,8 +55,9 @@ func Unshare(flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Ustat(dev int, ubuf *Ustat_t) (err error) {
+- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
++func EpollCreate(size int) (fd int, err error) {
++ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
++ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1339,46 +66,14 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func write(fd int, p []byte) (n int, err error) {
++func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+ var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
++ if len(events) > 0 {
++ _p0 = unsafe.Pointer(&events[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func exitThread(code int) (err error) {
+- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func readlen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func writelen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
++ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1388,108 +83,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Madvise(b []byte, advice int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mprotect(b []byte, prot int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Msync(b []byte, flags int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
++func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
++ _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1498,15 +93,8 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(events) > 0 {
+- _p0 = unsafe.Pointer(&events[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+- n = int(r0)
++func Fchown(fd int, uid int, gid int) (err error) {
++ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1515,8 +103,8 @@ func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Dup2(oldfd int, newfd int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
++func Fstat(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1525,18 +113,13 @@ func Dup2(oldfd int, newfd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fchown(fd int, uid int, gid int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
+- if e1 != 0 {
+- err = errnoErr(e1)
++func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
+ }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ _, _, e1 := Syscall6(SYS_NEWFSTATAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1566,7 +149,7 @@ func Ftruncate(fd int, length int64) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+@@ -1574,7 +157,7 @@ func Getegid() (egid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Geteuid() (euid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
+ euid = int(r0)
+ return
+ }
+@@ -1582,7 +165,7 @@ func Geteuid() (euid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+@@ -1600,7 +183,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+@@ -1722,6 +305,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Seek(fd int, offset int64, whence int) (off int64, err error) {
+ r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
+ off = int64(r0)
+@@ -1734,7 +337,7 @@ func Seek(fd int, offset int64, whence int) (off int64, err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ r0, _, e1 := Syscall6(SYS__NEWSELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1755,8 +358,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsgid(gid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++func setfsgid(gid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1765,8 +369,9 @@ func Setfsgid(gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsuid(uid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++func setfsuid(uid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1876,8 +481,13 @@ func Statfs(path string, buf *Statfs_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func SyncFileRange(fd int, off int64, n int64, flags int) (err error) {
+- _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE2, uintptr(fd), uintptr(off), uintptr(n), uintptr(flags), 0, 0)
++func Truncate(path string, length int64) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1886,13 +496,8 @@ func SyncFileRange(fd int, off int64, n int64, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Truncate(path string, length int64) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
++func Ustat(dev int, ubuf *Ustat_t) (err error) {
++ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2091,6 +696,21 @@ func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int6
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Gettimeofday(tv *Timeval) (err error) {
+ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+ if e1 != 0 {
+@@ -2127,8 +747,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe(p *[2]_C_int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
++func utimes(path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2137,8 +762,8 @@ func pipe(p *[2]_C_int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe2(p *[2]_C_int, flags int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
++func pipe(p *[2]_C_int) (err error) {
++ _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -2155,3 +780,28 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
+ }
+ return
+ }
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func syncFileRange2(fd int, flags int, off int64, n int64) (err error) {
++ _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE2, uintptr(fd), uintptr(flags), uintptr(off), uintptr(n), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(cmdline)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go
+new file mode 100644
+index 00000000..b7613344
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go
+@@ -0,0 +1,582 @@
++// go run mksyscall.go -tags linux,riscv64 syscall_linux.go syscall_linux_riscv64.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build linux,riscv64
++
++package unix
++
++import (
++ "syscall"
++ "unsafe"
++)
++
++var _ syscall.Errno
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
++ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
++ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
++ r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
++ n = int64(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(events) > 0 {
++ _p0 = unsafe.Pointer(&events[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_EPOLL_PWAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
++ _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fchown(fd int, uid int, gid int) (err error) {
++ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstat(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatfs(fd int, buf *Statfs_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(buf)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Ftruncate(fd int, length int64) (err error) {
++ _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getegid() (egid int) {
++ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
++ egid = int(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Geteuid() (euid int) {
++ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
++ euid = int(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getgid() (gid int) {
++ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
++ gid = int(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getrlimit(resource int, rlim *Rlimit) (err error) {
++ _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Getuid() (uid int) {
++ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
++ uid = int(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Listen(s int, n int) (err error) {
++ _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(n), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Pread(fd int, p []byte, offset int64) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(p) > 0 {
++ _p0 = unsafe.Pointer(&p[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_PREAD64, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(p) > 0 {
++ _p0 = unsafe.Pointer(&p[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_PWRITE64, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Seek(fd int, offset int64, whence int) (off int64, err error) {
++ r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
++ off = int64(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
++ r0, _, e1 := Syscall6(SYS_SENDFILE, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0)
++ written = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setfsgid(gid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++ prev = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setfsuid(uid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++ prev = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Setregid(rgid int, egid int) (err error) {
++ _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Setresgid(rgid int, egid int, sgid int) (err error) {
++ _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Setresuid(ruid int, euid int, suid int) (err error) {
++ _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Setrlimit(resource int, rlim *Rlimit) (err error) {
++ _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Setreuid(ruid int, euid int) (err error) {
++ _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Shutdown(fd int, how int) (err error) {
++ _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) {
++ r0, _, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
++ n = int64(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Statfs(path string, buf *Statfs_t) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func SyncFileRange(fd int, off int64, n int64, flags int) (err error) {
++ _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE, uintptr(fd), uintptr(off), uintptr(n), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Truncate(path string, length int64) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
++ r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++ fd = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) {
++ r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0)
++ fd = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
++ _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
++ _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getgroups(n int, list *_Gid_t) (nn int, err error) {
++ r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0)
++ nn = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setgroups(n int, list *_Gid_t) (err error) {
++ _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
++ _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
++ _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func socket(domain int, typ int, proto int) (fd int, err error) {
++ r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto))
++ fd = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
++ _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
++ _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
++ _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(p) > 0 {
++ _p0 = unsafe.Pointer(&p[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)))
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags))
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) {
++ r0, _, e1 := Syscall6(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flags), uintptr(fd), uintptr(offset))
++ xaddr = uintptr(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Gettimeofday(tv *Timeval) (err error) {
++ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(cmdline)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
+index b6ff9e39..9bc353f0 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -tags linux,s390x syscall_linux.go syscall_linux_s390x.go
++// go run mksyscall.go -tags linux,s390x syscall_linux.go syscall_linux_s390x.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build linux,s390x
+@@ -14,1446 +14,8 @@ var _ syscall.Errno
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fchmodat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ioctl(fd int, req uint, arg uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(buf) > 0 {
+- _p1 = unsafe.Pointer(&buf[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unlinkat(dirfd int, path string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimes(path string, times *[2]Timeval) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getcwd(buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+- wpid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) {
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(buf)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlJoin(cmd int, arg2 string) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg2)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg3)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(arg4)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(arg5), 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(payload) > 0 {
+- _p0 = unsafe.Pointer(&payload[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(_p0), uintptr(len(payload)), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(unsafe.Pointer(arg2)), uintptr(_p0), uintptr(len(buf)), 0, 0)
+- ret = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(source)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(fstype)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Acct(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(payload) > 0 {
+- _p2 = unsafe.Pointer(&payload[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_ADD_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(payload)), uintptr(ringid), 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Adjtimex(buf *Timex) (state int, err error) {
+- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
+- state = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chdir(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chroot(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ClockGettime(clockid int32, time *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup(oldfd int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup3(oldfd int, newfd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate(size int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate1(flag int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
+- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Eventfd(initval uint, flags int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_EVENTFD2, uintptr(initval), uintptr(flags), 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Exit(code int) {
+- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fdatasync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getdents(fd int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
+- pgid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
+- pid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
+- ppid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
+- prio = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrandom(buf []byte, flags int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
+- sid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Gettid() (tid int) {
+- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
+- tid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(pathname)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
+- watchdesc = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyInit1(flags int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
+- success = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Kill(pid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Klogctl(typ int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lgetxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_LGETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Listxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Llistxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LLISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lremovexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_LREMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Lsetxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_LSETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func PivotRoot(newroot string, putold string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(newroot)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(putold)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
+- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func read(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Removexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(keyType)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(description)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(callback)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_REQUEST_KEY, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(destRingid), 0, 0)
+- id = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setdomainname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sethostname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+- pid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Settimeofday(tv *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setns(fd int, nstype int) (err error) {
+- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sync() {
+- Syscall(SYS_SYNC, 0, 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Syncfs(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_SYNCFS, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sysinfo(info *Sysinfo_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
+- r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
+- n = int64(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Times(tms *Tms) (ticks uintptr, err error) {
+- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
+- ticks = uintptr(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Umask(mask int) (oldmask int) {
+- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
+- oldmask = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Uname(buf *Utsname) (err error) {
+- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unmount(target string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unshare(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Ustat(dev int, ubuf *Ustat_t) (err error) {
+- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func write(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func exitThread(code int) (err error) {
+- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func readlen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func writelen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Madvise(b []byte, advice int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mprotect(b []byte, prot int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
++func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
++ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1462,8 +24,8 @@ func Munlock(b []byte) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
++func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
++ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1472,14 +34,9 @@ func Mlockall(flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Msync(b []byte, flags int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags))
++func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
++ r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0)
++ n = int64(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1488,8 +45,8 @@ func Msync(b []byte, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
++func Dup2(oldfd int, newfd int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1498,8 +55,9 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Dup2(oldfd int, newfd int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
++func EpollCreate(size int) (fd int, err error) {
++ r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
++ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1555,6 +113,21 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_NEWFSTATAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fstatfs(fd int, buf *Statfs_t) (err error) {
+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(buf)), 0)
+ if e1 != 0 {
+@@ -1576,7 +149,7 @@ func Ftruncate(fd int, length int64) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+@@ -1584,7 +157,7 @@ func Getegid() (egid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Geteuid() (euid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
+ euid = int(r0)
+ return
+ }
+@@ -1592,7 +165,7 @@ func Geteuid() (euid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+@@ -1610,7 +183,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+@@ -1702,6 +275,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Seek(fd int, offset int64, whence int) (off int64, err error) {
+ r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
+ off = int64(r0)
+@@ -1735,8 +328,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsgid(gid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++func setfsgid(gid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1745,8 +339,9 @@ func Setfsgid(gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsuid(uid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++func setfsuid(uid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1871,6 +466,16 @@ func Truncate(path string, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Ustat(dev int, ubuf *Ustat_t) (err error) {
++ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func getgroups(n int, list *_Gid_t) (nn int, err error) {
+ r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0)
+ nn = int(r0)
+@@ -1892,6 +497,21 @@ func setgroups(n int, list *_Gid_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Gettimeofday(tv *Timeval) (err error) {
+ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+ if e1 != 0 {
+@@ -1917,8 +537,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe2(p *[2]_C_int, flags int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
++func utimes(path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1935,3 +560,18 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
+ }
+ return
+ }
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(cmdline)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go
+index 2dd98434..854e816d 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -tags linux,sparc64 syscall_linux.go syscall_linux_sparc64.go
++// go run mksyscall.go -tags linux,sparc64 syscall_linux.go syscall_linux_sparc64.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build linux,sparc64
+@@ -14,944 +14,8 @@ var _ syscall.Errno
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(mode), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(buf) > 0 {
+- _p1 = unsafe.Pointer(&buf[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unlinkat(dirfd int, path string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimes(path string, times *[2]Timeval) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func futimesat(dirfd int, path *byte, times *[2]Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getcwd(buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) {
+- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+- wpid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(arg)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_REBOOT, uintptr(magic1), uintptr(magic2), uintptr(cmd), uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func mount(source string, target string, fstype string, flags uintptr, data *byte) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(source)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- var _p2 *byte
+- _p2, err = BytePtrFromString(fstype)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(flags), uintptr(unsafe.Pointer(data)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Acct(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_ACCT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Adjtimex(buf *Timex) (state int, err error) {
+- r0, _, e1 := Syscall(SYS_ADJTIMEX, uintptr(unsafe.Pointer(buf)), 0, 0)
+- state = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chdir(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Chroot(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func ClockGettime(clockid int32, time *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_CLOCK_GETTIME, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Close(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
+- r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup(oldfd int) (fd int, err error) {
+- r0, _, e1 := Syscall(SYS_DUP, uintptr(oldfd), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Dup3(oldfd int, newfd int, flags int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP3, uintptr(oldfd), uintptr(newfd), uintptr(flags))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate(size int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCreate1(flag int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE1, uintptr(flag), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) {
+- _, _, e1 := RawSyscall6(SYS_EPOLL_CTL, uintptr(epfd), uintptr(op), uintptr(fd), uintptr(unsafe.Pointer(event)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Exit(code int) {
+- Syscall(SYS_EXIT_GROUP, uintptr(code), 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
+- _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchdir(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchmod(fd int, mode uint32) (err error) {
+- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fdatasync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FDATASYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Flock(fd int, how int) (err error) {
+- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getdents(fd int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETDENTS64, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpgid(pid int) (pgid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0)
+- pgid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpid() (pid int) {
+- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0)
+- pid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getppid() (ppid int) {
+- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0)
+- ppid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getpriority(which int, who int) (prio int, err error) {
+- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0)
+- prio = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrandom(buf []byte, flags int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_GETRANDOM, uintptr(_p0), uintptr(len(buf)), uintptr(flags))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getrusage(who int, rusage *Rusage) (err error) {
+- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getsid(pid int) (sid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0)
+- sid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Gettid() (tid int) {
+- r0, _, _ := RawSyscall(SYS_GETTID, 0, 0, 0)
+- tid = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(dest) > 0 {
+- _p2 = unsafe.Pointer(&dest[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(dest)), 0, 0)
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(pathname)
+- if err != nil {
+- return
+- }
+- r0, _, e1 := Syscall(SYS_INOTIFY_ADD_WATCH, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mask))
+- watchdesc = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyInit1(flags int) (fd int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT1, uintptr(flags), 0, 0)
+- fd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func InotifyRmWatch(fd int, watchdesc uint32) (success int, err error) {
+- r0, _, e1 := RawSyscall(SYS_INOTIFY_RM_WATCH, uintptr(fd), uintptr(watchdesc), 0)
+- success = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Kill(pid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Klogctl(typ int, buf []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(_p0), uintptr(len(buf)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Listxattr(path string, dest []byte) (sz int, err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 unsafe.Pointer
+- if len(dest) > 0 {
+- _p1 = unsafe.Pointer(&dest[0])
+- } else {
+- _p1 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(dest)))
+- sz = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func PivotRoot(newroot string, putold string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(newroot)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(putold)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_PIVOT_ROOT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) {
+- _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func read(fd int, p []byte) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Removexattr(path string, attr string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(oldpath)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(newpath)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setdomainname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETDOMAINNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sethostname(p []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_SETHOSTNAME, uintptr(_p0), uintptr(len(p)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpgid(pid int, pgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setsid() (pid int, err error) {
+- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+- pid = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Settimeofday(tv *Timeval) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setns(fd int, nstype int) (err error) {
+- _, _, e1 := Syscall(SYS_SETNS, uintptr(fd), uintptr(nstype), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setpriority(which int, who int, prio int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setxattr(path string, attr string, data []byte, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(attr)
+- if err != nil {
+- return
+- }
+- var _p2 unsafe.Pointer
+- if len(data) > 0 {
+- _p2 = unsafe.Pointer(&data[0])
+- } else {
+- _p2 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(_p2), uintptr(len(data)), uintptr(flags), 0)
++func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) {
++ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -960,15 +24,8 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Sync() {
+- Syscall(SYS_SYNC, 0, 0, 0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Sysinfo(info *Sysinfo_t) (err error) {
+- _, _, e1 := RawSyscall(SYS_SYSINFO, uintptr(unsafe.Pointer(info)), 0, 0)
++func Fallocate(fd int, mode uint32, off int64, len int64) (err error) {
++ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -988,120 +45,14 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) {
+- _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Times(tms *Tms) (ticks uintptr, err error) {
+- r0, _, e1 := RawSyscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0)
+- ticks = uintptr(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Umask(mask int) (oldmask int) {
+- r0, _, _ := RawSyscall(SYS_UMASK, uintptr(mask), 0, 0)
+- oldmask = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Uname(buf *Utsname) (err error) {
+- _, _, e1 := RawSyscall(SYS_UNAME, uintptr(unsafe.Pointer(buf)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unmount(target string, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(target)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UMOUNT2, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Unshare(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_UNSHARE, uintptr(flags), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Ustat(dev int, ubuf *Ustat_t) (err error) {
+- _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func write(fd int, p []byte) (n int, err error) {
++func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+ var _p0 unsafe.Pointer
+- if len(p) > 0 {
+- _p0 = unsafe.Pointer(&p[0])
++ if len(events) > 0 {
++ _p0 = unsafe.Pointer(&events[0])
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func exitThread(code int) (err error) {
+- _, _, e1 := Syscall(SYS_EXIT, uintptr(code), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func readlen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
+- n = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func writelen(fd int, p *byte, np int) (n int, err error) {
+- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(p)), uintptr(np))
++ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1111,82 +62,8 @@ func writelen(fd int, p *byte, np int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func munmap(addr uintptr, length uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Madvise(b []byte, advice int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(advice))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mprotect(b []byte, prot int) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Munlock(b []byte) (err error) {
+- var _p0 unsafe.Pointer
+- if len(b) > 0 {
+- _p0 = unsafe.Pointer(&b[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Mlockall(flags int) (err error) {
+- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0)
++func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
++ _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1195,8 +72,8 @@ func Mlockall(flags int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Munlockall() (err error) {
+- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0)
++func Dup2(oldfd int, newfd int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1205,15 +82,8 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(events) > 0 {
+- _p0 = unsafe.Pointer(&events[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0)
+- n = int(r0)
++func Fchown(fd int, uid int, gid int) (err error) {
++ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1222,8 +92,8 @@ func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Dup2(oldfd int, newfd int) (err error) {
+- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0)
++func Fstat(fd int, stat *Stat_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1232,18 +102,13 @@ func Dup2(oldfd int, newfd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fchown(fd int, uid int, gid int) (err error) {
+- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
+- if e1 != 0 {
+- err = errnoErr(e1)
++func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
+ }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1273,7 +138,7 @@ func Ftruncate(fd int, length int64) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getegid() (egid int) {
+- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+@@ -1281,7 +146,7 @@ func Getegid() (egid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Geteuid() (euid int) {
+- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0)
+ euid = int(r0)
+ return
+ }
+@@ -1289,7 +154,7 @@ func Geteuid() (euid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getgid() (gid int) {
+- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+@@ -1307,7 +172,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Getuid() (uid int) {
+- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
++ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+@@ -1409,6 +274,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Seek(fd int, offset int64, whence int) (off int64, err error) {
+ r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
+ off = int64(r0)
+@@ -1442,8 +327,9 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsgid(gid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++func setfsgid(gid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1452,8 +338,9 @@ func Setfsgid(gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setfsuid(uid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++func setfsuid(uid int) (prev int, err error) {
++ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0)
++ prev = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1778,6 +665,21 @@ func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int6
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func futimesat(dirfd int, path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Gettimeofday(tv *Timeval) (err error) {
+ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
+ if e1 != 0 {
+@@ -1803,8 +705,13 @@ func Utime(path string, buf *Utimbuf) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe(p *[2]_C_int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
++func utimes(path string, times *[2]Timeval) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1813,8 +720,8 @@ func pipe(p *[2]_C_int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe2(p *[2]_C_int, flags int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
++func pipe(p *[2]_C_int) (err error) {
++ _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go
+index db99fd0c..3bbd9e39 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -l32 -netbsd -tags netbsd,386 syscall_bsd.go syscall_netbsd.go syscall_netbsd_386.go
++// go run mksyscall.go -l32 -netbsd -tags netbsd,386 syscall_bsd.go syscall_netbsd.go syscall_netbsd_386.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build netbsd,386
+@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimes(path string, timeval *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -378,7 +362,7 @@ func pipe() (fd1 int, fd2 int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func getdents(fd int, buf []byte) (n int, err error) {
++func Getdents(fd int, buf []byte) (n int, err error) {
+ var _p0 unsafe.Pointer
+ if len(buf) > 0 {
+ _p0 = unsafe.Pointer(&buf[0])
+@@ -395,6 +379,49 @@ func getdents(fd int, buf []byte) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Getcwd(buf []byte) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ioctl(fd int, req uint, arg uintptr) (err error) {
++ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -526,6 +553,16 @@ func Dup2(from int, to int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Dup3(from int, to int, flags int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Exit(code int) {
+ Syscall(SYS_EXIT, uintptr(code), 0, 0)
+ return
+@@ -533,6 +570,245 @@ func Exit(code int) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func ExtattrGetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrSetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrDeleteFd(fd int, attrnamespace int, attrname string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrListFd(fd int, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
++ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_FD, uintptr(fd), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrGetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(file)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrSetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(file)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrDeleteFile(file string, attrnamespace int, attrname string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(file)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrListFile(file string, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(file)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrGetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrSetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrDeleteLink(link string, attrnamespace int, attrname string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrListLink(link string, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
++ _, _, e1 := Syscall9(SYS_POSIX_FADVISE, uintptr(fd), 0, uintptr(offset), uintptr(offset>>32), 0, uintptr(length), uintptr(length>>32), uintptr(advice), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchdir(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -563,6 +839,21 @@ func Fchmod(fd int, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchown(fd int, uid int, gid int) (err error) {
+ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+@@ -573,6 +864,21 @@ func Fchown(fd int, uid int, gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Flock(fd int, how int) (err error) {
+ _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+ if e1 != 0 {
+@@ -604,6 +910,31 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatvfs1(fd int, buf *Statvfs_t, flags int) (err error) {
++ _, _, e1 := Syscall(SYS_FSTATVFS1, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fsync(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -807,6 +1138,26 @@ func Link(path string, link string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Listen(s int, backlog int) (err error) {
+ _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
+ if e1 != 0 {
+@@ -847,6 +1198,21 @@ func Mkdir(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mkdirat(dirfd int, path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mkfifo(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -862,6 +1228,21 @@ func Mkfifo(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mknod(path string, mode uint32, dev int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -877,6 +1258,21 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+ if e1 != 0 {
+@@ -903,6 +1299,22 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
++ fd = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Pathconf(path string, name int) (val int, err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -992,6 +1404,28 @@ func Readlink(path string, buf []byte) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 unsafe.Pointer
++ if len(buf) > 0 {
++ _p1 = unsafe.Pointer(&buf[0])
++ } else {
++ _p1 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Rename(from string, to string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(from)
+@@ -1012,6 +1446,26 @@ func Rename(from string, to string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Renameat(fromfd int, from string, tofd int, to string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(from)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(to)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Revoke(path string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1053,8 +1507,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1189,6 +1644,21 @@ func Stat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Statvfs1(path string, buf *Statvfs_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_STATVFS1, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Symlink(path string, link string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1209,6 +1679,26 @@ func Symlink(path string, link string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Sync() (err error) {
+ _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
+ if e1 != 0 {
+@@ -1257,6 +1747,21 @@ func Unlink(path string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Unlinkat(dirfd int, path string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Unmount(path string, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go
+index 7b6c2c87..d8cf5012 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -netbsd -tags netbsd,amd64 syscall_bsd.go syscall_netbsd.go syscall_netbsd_amd64.go
++// go run mksyscall.go -netbsd -tags netbsd,amd64 syscall_bsd.go syscall_netbsd.go syscall_netbsd_amd64.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build netbsd,amd64
+@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimes(path string, timeval *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -378,7 +362,7 @@ func pipe() (fd1 int, fd2 int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func getdents(fd int, buf []byte) (n int, err error) {
++func Getdents(fd int, buf []byte) (n int, err error) {
+ var _p0 unsafe.Pointer
+ if len(buf) > 0 {
+ _p0 = unsafe.Pointer(&buf[0])
+@@ -395,6 +379,49 @@ func getdents(fd int, buf []byte) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Getcwd(buf []byte) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ioctl(fd int, req uint, arg uintptr) (err error) {
++ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -526,6 +553,16 @@ func Dup2(from int, to int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Dup3(from int, to int, flags int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Exit(code int) {
+ Syscall(SYS_EXIT, uintptr(code), 0, 0)
+ return
+@@ -533,6 +570,245 @@ func Exit(code int) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func ExtattrGetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrSetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrDeleteFd(fd int, attrnamespace int, attrname string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrListFd(fd int, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
++ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_FD, uintptr(fd), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrGetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(file)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrSetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(file)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrDeleteFile(file string, attrnamespace int, attrname string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(file)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrListFile(file string, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(file)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrGetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrSetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrDeleteLink(link string, attrnamespace int, attrname string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrListLink(link string, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
++ _, _, e1 := Syscall6(SYS_POSIX_FADVISE, uintptr(fd), 0, uintptr(offset), 0, uintptr(length), uintptr(advice))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchdir(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -563,6 +839,21 @@ func Fchmod(fd int, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchown(fd int, uid int, gid int) (err error) {
+ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+@@ -573,6 +864,21 @@ func Fchown(fd int, uid int, gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Flock(fd int, how int) (err error) {
+ _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+ if e1 != 0 {
+@@ -604,6 +910,31 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatvfs1(fd int, buf *Statvfs_t, flags int) (err error) {
++ _, _, e1 := Syscall(SYS_FSTATVFS1, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fsync(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -807,6 +1138,26 @@ func Link(path string, link string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Listen(s int, backlog int) (err error) {
+ _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
+ if e1 != 0 {
+@@ -847,6 +1198,21 @@ func Mkdir(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mkdirat(dirfd int, path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mkfifo(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -862,6 +1228,21 @@ func Mkfifo(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mknod(path string, mode uint32, dev int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -877,6 +1258,21 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+ if e1 != 0 {
+@@ -903,6 +1299,22 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
++ fd = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Pathconf(path string, name int) (val int, err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -992,6 +1404,28 @@ func Readlink(path string, buf []byte) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 unsafe.Pointer
++ if len(buf) > 0 {
++ _p1 = unsafe.Pointer(&buf[0])
++ } else {
++ _p1 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Rename(from string, to string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(from)
+@@ -1012,6 +1446,26 @@ func Rename(from string, to string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Renameat(fromfd int, from string, tofd int, to string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(from)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(to)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Revoke(path string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1053,8 +1507,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1189,6 +1644,21 @@ func Stat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Statvfs1(path string, buf *Statvfs_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_STATVFS1, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Symlink(path string, link string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1209,6 +1679,26 @@ func Symlink(path string, link string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Sync() (err error) {
+ _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
+ if e1 != 0 {
+@@ -1257,6 +1747,21 @@ func Unlink(path string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Unlinkat(dirfd int, path string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Unmount(path string, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go
+index 0f4cc3b5..1153fe69 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -l32 -netbsd -arm -tags netbsd,arm syscall_bsd.go syscall_netbsd.go syscall_netbsd_arm.go
++// go run mksyscall.go -l32 -netbsd -arm -tags netbsd,arm syscall_bsd.go syscall_netbsd.go syscall_netbsd_arm.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build netbsd,arm
+@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimes(path string, timeval *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -378,7 +362,7 @@ func pipe() (fd1 int, fd2 int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func getdents(fd int, buf []byte) (n int, err error) {
++func Getdents(fd int, buf []byte) (n int, err error) {
+ var _p0 unsafe.Pointer
+ if len(buf) > 0 {
+ _p0 = unsafe.Pointer(&buf[0])
+@@ -395,6 +379,49 @@ func getdents(fd int, buf []byte) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Getcwd(buf []byte) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ioctl(fd int, req uint, arg uintptr) (err error) {
++ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -526,6 +553,16 @@ func Dup2(from int, to int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Dup3(from int, to int, flags int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Exit(code int) {
+ Syscall(SYS_EXIT, uintptr(code), 0, 0)
+ return
+@@ -533,6 +570,245 @@ func Exit(code int) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func ExtattrGetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrSetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrDeleteFd(fd int, attrnamespace int, attrname string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrListFd(fd int, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
++ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_FD, uintptr(fd), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrGetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(file)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrSetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(file)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrDeleteFile(file string, attrnamespace int, attrname string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(file)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrListFile(file string, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(file)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrGetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrSetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrDeleteLink(link string, attrnamespace int, attrname string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(attrname)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ExtattrListLink(link string, attrnamespace int, data uintptr, nbytes int) (ret int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0)
++ ret = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
++ _, _, e1 := Syscall9(SYS_POSIX_FADVISE, uintptr(fd), 0, uintptr(offset), uintptr(offset>>32), 0, uintptr(length), uintptr(length>>32), uintptr(advice), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchdir(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -563,6 +839,21 @@ func Fchmod(fd int, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchown(fd int, uid int, gid int) (err error) {
+ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+@@ -573,6 +864,21 @@ func Fchown(fd int, uid int, gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Flock(fd int, how int) (err error) {
+ _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+ if e1 != 0 {
+@@ -604,6 +910,31 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatvfs1(fd int, buf *Statvfs_t, flags int) (err error) {
++ _, _, e1 := Syscall(SYS_FSTATVFS1, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fsync(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -807,6 +1138,26 @@ func Link(path string, link string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Listen(s int, backlog int) (err error) {
+ _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
+ if e1 != 0 {
+@@ -847,6 +1198,21 @@ func Mkdir(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mkdirat(dirfd int, path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mkfifo(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -862,6 +1228,21 @@ func Mkfifo(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mknod(path string, mode uint32, dev int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -877,6 +1258,21 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+ if e1 != 0 {
+@@ -903,6 +1299,22 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
++ fd = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Pathconf(path string, name int) (val int, err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -992,6 +1404,28 @@ func Readlink(path string, buf []byte) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 unsafe.Pointer
++ if len(buf) > 0 {
++ _p1 = unsafe.Pointer(&buf[0])
++ } else {
++ _p1 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Rename(from string, to string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(from)
+@@ -1012,6 +1446,26 @@ func Rename(from string, to string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Renameat(fromfd int, from string, tofd int, to string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(from)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(to)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Revoke(path string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1053,8 +1507,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1189,6 +1644,21 @@ func Stat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Statvfs1(path string, buf *Statvfs_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_STATVFS1, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Symlink(path string, link string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1209,6 +1679,26 @@ func Symlink(path string, link string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Sync() (err error) {
+ _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
+ if e1 != 0 {
+@@ -1257,6 +1747,21 @@ func Unlink(path string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Unlinkat(dirfd int, path string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Unmount(path string, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go
+similarity index 92%
+copy from vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
+copy to vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go
+index ac1e8e01..24b4ebb4 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go
+@@ -1,7 +1,7 @@
+-// mksyscall.pl -tags freebsd,amd64 syscall_bsd.go syscall_freebsd.go syscall_freebsd_amd64.go
++// go run mksyscall.go -netbsd -tags netbsd,arm64 syscall_bsd.go syscall_netbsd.go syscall_netbsd_arm64.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build freebsd,amd64
++// +build netbsd,arm64
+
+ package unix
+
+@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimes(path string, timeval *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -366,10 +350,10 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe() (r int, w int, err error) {
++func pipe() (fd1 int, fd2 int, err error) {
+ r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
+- r = int(r0)
+- w = int(r1)
++ fd1 = int(r0)
++ fd2 = int(r1)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -378,8 +362,15 @@ func pipe() (r int, w int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func ioctl(fd int, req uint, arg uintptr) (err error) {
+- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
++func Getdents(fd int, buf []byte) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall(SYS_GETDENTS, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -388,13 +379,15 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Access(path string, mode uint32) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
++func Getcwd(buf []byte) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
+ }
+- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
++ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -403,8 +396,8 @@ func Access(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
+- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
++func ioctl(fd int, req uint, arg uintptr) (err error) {
++ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -413,8 +406,14 @@ func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func CapEnter() (err error) {
+- _, _, e1 := Syscall(SYS_CAP_ENTER, 0, 0, 0)
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -423,8 +422,13 @@ func CapEnter() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func capRightsGet(version int, fd int, rightsp *CapRights) (err error) {
+- _, _, e1 := Syscall(SYS___CAP_RIGHTS_GET, uintptr(version), uintptr(fd), uintptr(unsafe.Pointer(rightsp)))
++func Access(path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -433,8 +437,8 @@ func capRightsGet(version int, fd int, rightsp *CapRights) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func capRightsLimit(fd int, rightsp *CapRights) (err error) {
+- _, _, e1 := Syscall(SYS_CAP_RIGHTS_LIMIT, uintptr(fd), uintptr(unsafe.Pointer(rightsp)), 0)
++func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
++ _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -549,6 +553,16 @@ func Dup2(from int, to int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Dup3(from int, to int, flags int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Exit(code int) {
+ Syscall(SYS_EXIT, uintptr(code), 0, 0)
+ return
+@@ -770,8 +784,13 @@ func ExtattrListLink(link string, attrnamespace int, data uintptr, nbytes int) (
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
+- _, _, e1 := Syscall6(SYS_POSIX_FADVISE, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0)
++func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -780,13 +799,8 @@ func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++func Fadvise(fd int, offset int64, length int64, advice int) (err error) {
++ _, _, e1 := Syscall6(SYS_POSIX_FADVISE, uintptr(fd), 0, uintptr(offset), 0, uintptr(length), uintptr(advice))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -896,8 +910,13 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstatfs(fd int, stat *Statfs_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -906,8 +925,8 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
++func Fstatvfs1(fd int, buf *Statvfs_t, flags int) (err error) {
++ _, _, e1 := Syscall(SYS_FSTATVFS1, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(flags))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -916,8 +935,8 @@ func Fsync(fd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Ftruncate(fd int, length int64) (err error) {
+- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), 0)
++func Fsync(fd int) (err error) {
++ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -926,15 +945,8 @@ func Ftruncate(fd int, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
+- n = int(r0)
++func Ftruncate(fd int, length int64) (err error) {
++ _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), 0, uintptr(length))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -943,14 +955,6 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getdtablesize() (size int) {
+- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
+- size = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Getegid() (egid int) {
+ r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
+ egid = int(r0)
+@@ -1224,6 +1228,21 @@ func Mkfifo(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mknod(path string, mode uint32, dev int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1239,6 +1258,21 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+ if e1 != 0 {
+@@ -1265,13 +1299,13 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Openat(fdat int, path string, mode int, perm uint32) (fd int, err error) {
++func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(fdat), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
++ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
+ fd = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1304,7 +1338,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
++ r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1321,7 +1355,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0)
++ r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1463,7 +1497,7 @@ func Rmdir(path string) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
++ r0, _, e1 := Syscall6(SYS_LSEEK, uintptr(fd), 0, uintptr(offset), uintptr(whence), 0, 0)
+ newoffset = int64(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1473,8 +1507,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1513,21 +1548,6 @@ func Setgid(gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setlogin(name string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(name)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Setpgid(pid int, pgid int) (err error) {
+ _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0)
+ if e1 != 0 {
+@@ -1568,26 +1588,6 @@ func Setreuid(ruid int, euid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setresgid(rgid int, egid int, sgid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+-func Setresuid(ruid int, euid int, suid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Setrlimit(which int, lim *Rlimit) (err error) {
+ _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0)
+ if e1 != 0 {
+@@ -1644,13 +1644,13 @@ func Stat(path string, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Statfs(path string, stat *Statfs_t) (err error) {
++func Statvfs1(path string, buf *Statvfs_t, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ _, _, e1 := Syscall(SYS_STATVFS1, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), uintptr(flags))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1715,7 +1715,7 @@ func Truncate(path string, length int64) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0)
++ _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), 0, uintptr(length))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1732,21 +1732,6 @@ func Umask(newmask int) (oldmask int) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Undelete(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UNDELETE, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Unlink(path string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1810,7 +1795,7 @@ func write(fd int, p []byte) (n int, err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) {
+- r0, _, e1 := Syscall6(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos))
++ r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), 0, uintptr(pos), 0, 0)
+ ret = uintptr(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1852,17 +1837,6 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func accept4(fd int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (nfd int, err error) {
+- r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0)
+- nfd = int(r0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go
+index 7baea87c..b44b31ae 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -l32 -openbsd -tags openbsd,386 syscall_bsd.go syscall_openbsd.go syscall_openbsd_386.go
++// go run mksyscall.go -l32 -openbsd -tags openbsd,386 syscall_bsd.go syscall_openbsd.go syscall_openbsd_386.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build openbsd,386
+@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimes(path string, timeval *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -366,8 +350,8 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe(p *[2]_C_int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
++func pipe2(p *[2]_C_int, flags int) (err error) {
++ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -376,7 +360,7 @@ func pipe(p *[2]_C_int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func getdents(fd int, buf []byte) (n int, err error) {
++func Getdents(fd int, buf []byte) (n int, err error) {
+ var _p0 unsafe.Pointer
+ if len(buf) > 0 {
+ _p0 = unsafe.Pointer(&buf[0])
+@@ -393,6 +377,60 @@ func getdents(fd int, buf []byte) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Getcwd(buf []byte) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ioctl(fd int, req uint, arg uintptr) (err error) {
++ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -524,6 +562,16 @@ func Dup2(from int, to int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Dup3(from int, to int, flags int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Exit(code int) {
+ Syscall(SYS_EXIT, uintptr(code), 0, 0)
+ return
+@@ -531,6 +579,21 @@ func Exit(code int) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchdir(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -561,6 +624,21 @@ func Fchmod(fd int, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchown(fd int, uid int, gid int) (err error) {
+ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+@@ -571,6 +649,21 @@ func Fchown(fd int, uid int, gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Flock(fd int, how int) (err error) {
+ _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+ if e1 != 0 {
+@@ -602,6 +695,21 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fstatfs(fd int, stat *Statfs_t) (err error) {
+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+@@ -712,6 +820,17 @@ func Getrlimit(which int, lim *Rlimit) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Getrtable() (rtable int, err error) {
++ r0, _, e1 := RawSyscall(SYS_GETRTABLE, 0, 0, 0)
++ rtable = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getrusage(who int, rusage *Rusage) (err error) {
+ _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+ if e1 != 0 {
+@@ -815,6 +934,26 @@ func Link(path string, link string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Listen(s int, backlog int) (err error) {
+ _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
+ if e1 != 0 {
+@@ -855,6 +994,21 @@ func Mkdir(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mkdirat(dirfd int, path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mkfifo(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -870,6 +1024,21 @@ func Mkfifo(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mknod(path string, mode uint32, dev int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -885,6 +1054,21 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+ if e1 != 0 {
+@@ -911,6 +1095,22 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
++ fd = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Pathconf(path string, name int) (val int, err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1000,6 +1200,28 @@ func Readlink(path string, buf []byte) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 unsafe.Pointer
++ if len(buf) > 0 {
++ _p1 = unsafe.Pointer(&buf[0])
++ } else {
++ _p1 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Rename(from string, to string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(from)
+@@ -1020,6 +1242,26 @@ func Rename(from string, to string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Renameat(fromfd int, from string, tofd int, to string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(from)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(to)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Revoke(path string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1061,8 +1303,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1186,6 +1429,16 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Setrtable(rtable int) (err error) {
++ _, _, e1 := RawSyscall(SYS_SETRTABLE, uintptr(rtable), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Setsid() (pid int, err error) {
+ r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+ pid = int(r0)
+@@ -1267,6 +1520,26 @@ func Symlink(path string, link string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Sync() (err error) {
+ _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
+ if e1 != 0 {
+@@ -1315,6 +1588,21 @@ func Unlink(path string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Unlinkat(dirfd int, path string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Unmount(path string, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go
+index 0d69ce6b..67f93ee7 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -openbsd -tags openbsd,amd64 syscall_bsd.go syscall_openbsd.go syscall_openbsd_amd64.go
++// go run mksyscall.go -openbsd -tags openbsd,amd64 syscall_bsd.go syscall_openbsd.go syscall_openbsd_amd64.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build openbsd,amd64
+@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimes(path string, timeval *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -366,8 +350,8 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe(p *[2]_C_int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
++func pipe2(p *[2]_C_int, flags int) (err error) {
++ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -376,7 +360,7 @@ func pipe(p *[2]_C_int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func getdents(fd int, buf []byte) (n int, err error) {
++func Getdents(fd int, buf []byte) (n int, err error) {
+ var _p0 unsafe.Pointer
+ if len(buf) > 0 {
+ _p0 = unsafe.Pointer(&buf[0])
+@@ -393,6 +377,60 @@ func getdents(fd int, buf []byte) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Getcwd(buf []byte) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ioctl(fd int, req uint, arg uintptr) (err error) {
++ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -524,6 +562,16 @@ func Dup2(from int, to int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Dup3(from int, to int, flags int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Exit(code int) {
+ Syscall(SYS_EXIT, uintptr(code), 0, 0)
+ return
+@@ -531,6 +579,21 @@ func Exit(code int) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchdir(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -561,6 +624,21 @@ func Fchmod(fd int, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchown(fd int, uid int, gid int) (err error) {
+ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+@@ -571,6 +649,21 @@ func Fchown(fd int, uid int, gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Flock(fd int, how int) (err error) {
+ _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+ if e1 != 0 {
+@@ -602,6 +695,21 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fstatfs(fd int, stat *Statfs_t) (err error) {
+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+@@ -712,6 +820,17 @@ func Getrlimit(which int, lim *Rlimit) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Getrtable() (rtable int, err error) {
++ r0, _, e1 := RawSyscall(SYS_GETRTABLE, 0, 0, 0)
++ rtable = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getrusage(who int, rusage *Rusage) (err error) {
+ _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+ if e1 != 0 {
+@@ -815,6 +934,26 @@ func Link(path string, link string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Listen(s int, backlog int) (err error) {
+ _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
+ if e1 != 0 {
+@@ -855,6 +994,21 @@ func Mkdir(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mkdirat(dirfd int, path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mkfifo(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -870,6 +1024,21 @@ func Mkfifo(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mknod(path string, mode uint32, dev int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -885,6 +1054,21 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+ if e1 != 0 {
+@@ -911,6 +1095,22 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
++ fd = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Pathconf(path string, name int) (val int, err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1000,6 +1200,28 @@ func Readlink(path string, buf []byte) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 unsafe.Pointer
++ if len(buf) > 0 {
++ _p1 = unsafe.Pointer(&buf[0])
++ } else {
++ _p1 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Rename(from string, to string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(from)
+@@ -1020,6 +1242,26 @@ func Rename(from string, to string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Renameat(fromfd int, from string, tofd int, to string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(from)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(to)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Revoke(path string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1061,8 +1303,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1186,6 +1429,16 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Setrtable(rtable int) (err error) {
++ _, _, e1 := RawSyscall(SYS_SETRTABLE, uintptr(rtable), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Setsid() (pid int, err error) {
+ r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+ pid = int(r0)
+@@ -1267,6 +1520,26 @@ func Symlink(path string, link string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Sync() (err error) {
+ _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
+ if e1 != 0 {
+@@ -1315,6 +1588,21 @@ func Unlink(path string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Unlinkat(dirfd int, path string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Unmount(path string, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go
+index 41572c26..d7c878b1 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go
+@@ -1,4 +1,4 @@
+-// mksyscall.pl -l32 -openbsd -arm -tags openbsd,arm syscall_bsd.go syscall_openbsd.go syscall_openbsd_arm.go
++// go run mksyscall.go -l32 -openbsd -arm -tags openbsd,arm syscall_bsd.go syscall_openbsd.go syscall_openbsd_arm.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build openbsd,arm
+@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimes(path string, timeval *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -366,8 +350,8 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe(p *[2]_C_int) (err error) {
+- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0)
++func pipe2(p *[2]_C_int, flags int) (err error) {
++ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -376,7 +360,7 @@ func pipe(p *[2]_C_int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func getdents(fd int, buf []byte) (n int, err error) {
++func Getdents(fd int, buf []byte) (n int, err error) {
+ var _p0 unsafe.Pointer
+ if len(buf) > 0 {
+ _p0 = unsafe.Pointer(&buf[0])
+@@ -393,6 +377,60 @@ func getdents(fd int, buf []byte) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Getcwd(buf []byte) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ioctl(fd int, req uint, arg uintptr) (err error) {
++ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -524,6 +562,16 @@ func Dup2(from int, to int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Dup3(from int, to int, flags int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Exit(code int) {
+ Syscall(SYS_EXIT, uintptr(code), 0, 0)
+ return
+@@ -531,6 +579,21 @@ func Exit(code int) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchdir(fd int) (err error) {
+ _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0)
+ if e1 != 0 {
+@@ -561,6 +624,21 @@ func Fchmod(fd int, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchown(fd int, uid int, gid int) (err error) {
+ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid))
+ if e1 != 0 {
+@@ -571,6 +649,21 @@ func Fchown(fd int, uid int, gid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Flock(fd int, how int) (err error) {
+ _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0)
+ if e1 != 0 {
+@@ -602,6 +695,21 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fstatfs(fd int, stat *Statfs_t) (err error) {
+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+@@ -712,6 +820,17 @@ func Getrlimit(which int, lim *Rlimit) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Getrtable() (rtable int, err error) {
++ r0, _, e1 := RawSyscall(SYS_GETRTABLE, 0, 0, 0)
++ rtable = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getrusage(who int, rusage *Rusage) (err error) {
+ _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+ if e1 != 0 {
+@@ -815,6 +934,26 @@ func Link(path string, link string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(link)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Listen(s int, backlog int) (err error) {
+ _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0)
+ if e1 != 0 {
+@@ -855,6 +994,21 @@ func Mkdir(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mkdirat(dirfd int, path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mkfifo(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -870,6 +1024,21 @@ func Mkfifo(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mknod(path string, mode uint32, dev int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -885,6 +1054,21 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
+ if e1 != 0 {
+@@ -911,6 +1095,22 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0)
++ fd = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Pathconf(path string, name int) (val int, err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1000,6 +1200,28 @@ func Readlink(path string, buf []byte) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ var _p1 unsafe.Pointer
++ if len(buf) > 0 {
++ _p1 = unsafe.Pointer(&buf[0])
++ } else {
++ _p1 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Rename(from string, to string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(from)
+@@ -1020,6 +1242,26 @@ func Rename(from string, to string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Renameat(fromfd int, from string, tofd int, to string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(from)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(to)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Revoke(path string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1061,8 +1303,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1186,6 +1429,16 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Setrtable(rtable int) (err error) {
++ _, _, e1 := RawSyscall(SYS_SETRTABLE, uintptr(rtable), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Setsid() (pid int, err error) {
+ r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+ pid = int(r0)
+@@ -1267,6 +1520,26 @@ func Symlink(path string, link string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(oldpath)
++ if err != nil {
++ return
++ }
++ var _p1 *byte
++ _p1, err = BytePtrFromString(newpath)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Sync() (err error) {
+ _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0)
+ if e1 != 0 {
+@@ -1315,6 +1588,21 @@ func Unlink(path string) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Unlinkat(dirfd int, path string, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Unmount(path string, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go
+similarity index 87%
+copy from vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go
+copy to vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go
+index 10491e9e..8facd695 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go
+@@ -1,7 +1,7 @@
+-// mksyscall.pl -l32 -tags darwin,386 syscall_bsd.go syscall_darwin.go syscall_darwin_386.go
++// go run mksyscall.go -openbsd -tags openbsd,arm64 syscall_bsd.go syscall_openbsd.go syscall_openbsd_arm64.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build darwin,386
++// +build openbsd,arm64
+
+ package unix
+
+@@ -214,22 +214,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
+- var _p0 unsafe.Pointer
+- if len(mib) > 0 {
+- _p0 = unsafe.Pointer(&mib[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func utimes(path string, timeval *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -255,9 +239,9 @@ func futimes(fd int, timeval *[2]Timeval) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func fcntl(fd int, cmd int, arg int) (val int, err error) {
+- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg))
+- val = int(r0)
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -366,8 +350,8 @@ func Munlockall() (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0)
++func pipe2(p *[2]_C_int, flags int) (err error) {
++ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -376,10 +360,15 @@ func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func pipe() (r int, w int, err error) {
+- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0)
+- r = int(r0)
+- w = int(r1)
++func Getdents(fd int, buf []byte) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall(SYS_GETDENTS, uintptr(fd), uintptr(_p0), uintptr(len(buf)))
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -388,8 +377,15 @@ func pipe() (r int, w int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func kill(pid int, signum int, posix int) (err error) {
+- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix))
++func Getcwd(buf []byte) (n int, err error) {
++ var _p0 unsafe.Pointer
++ if len(buf) > 0 {
++ _p0 = unsafe.Pointer(&buf[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -408,6 +404,33 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) {
++ var _p0 unsafe.Pointer
++ if len(mib) > 0 {
++ _p0 = unsafe.Pointer(&mib[0])
++ } else {
++ _p0 = unsafe.Pointer(&_zero)
++ }
++ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -539,18 +562,8 @@ func Dup2(from int, to int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Exchangedata(path1 string, path2 string, options int) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path1)
+- if err != nil {
+- return
+- }
+- var _p1 *byte
+- _p1, err = BytePtrFromString(path2)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_EXCHANGEDATA, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options))
++func Dup3(from int, to int, flags int) (err error) {
++ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -673,7 +686,7 @@ func Fpathconf(fd int, name int) (val int, err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Fstat(fd int, stat *Stat_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -682,8 +695,13 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fstatfs(fd int, stat *Statfs_t) (err error) {
+- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -692,8 +710,8 @@ func Fstatfs(fd int, stat *Statfs_t) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Fsync(fd int) (err error) {
+- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
++func Fstatfs(fd int, stat *Statfs_t) (err error) {
++ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -702,8 +720,8 @@ func Fsync(fd int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Ftruncate(fd int, length int64) (err error) {
+- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), uintptr(length>>32))
++func Fsync(fd int) (err error) {
++ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -712,15 +730,8 @@ func Ftruncate(fd int, length int64) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+- var _p0 unsafe.Pointer
+- if len(buf) > 0 {
+- _p0 = unsafe.Pointer(&buf[0])
+- } else {
+- _p0 = unsafe.Pointer(&_zero)
+- }
+- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0)
+- n = int(r0)
++func Ftruncate(fd int, length int64) (err error) {
++ _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), 0, uintptr(length))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -729,14 +740,6 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Getdtablesize() (size int) {
+- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0)
+- size = int(r0)
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Getegid() (egid int) {
+ r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0)
+ egid = int(r0)
+@@ -817,6 +820,17 @@ func Getrlimit(which int, lim *Rlimit) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Getrtable() (rtable int, err error) {
++ r0, _, e1 := RawSyscall(SYS_GETRTABLE, 0, 0, 0)
++ rtable = int(r0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getrusage(who int, rusage *Rusage) (err error) {
+ _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0)
+ if e1 != 0 {
+@@ -838,6 +852,16 @@ func Getsid(pid int) (sid int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Gettimeofday(tv *Timeval) (err error) {
++ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getuid() (uid int) {
+ r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0)
+ uid = int(r0)
+@@ -847,13 +871,23 @@ func Getuid() (uid int) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Issetugid() (tainted bool) {
+- r0, _, _ := RawSyscall(SYS_ISSETUGID, 0, 0, 0)
++ r0, _, _ := Syscall(SYS_ISSETUGID, 0, 0, 0)
+ tainted = bool(r0 != 0)
+ return
+ }
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Kill(pid int, signum syscall.Signal) (err error) {
++ _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Kqueue() (fd int, err error) {
+ r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0)
+ fd = int(r0)
+@@ -936,7 +970,7 @@ func Lstat(path string, stat *Stat_t) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -990,6 +1024,21 @@ func Mkfifo(path string, mode uint32) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mknod(path string, mode uint32, dev int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1005,6 +1054,31 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
++ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Open(path string, mode int, perm uint32) (fd int, err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1060,7 +1134,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
++ r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1077,7 +1151,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+ } else {
+ _p0 = unsafe.Pointer(&_zero)
+ }
+- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0)
++ r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0)
+ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1219,8 +1293,8 @@ func Rmdir(path string) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+- r0, r1, e1 := Syscall6(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0)
+- newoffset = int64(int64(r1)<<32 | int64(r0))
++ r0, _, e1 := Syscall6(SYS_LSEEK, uintptr(fd), 0, uintptr(offset), uintptr(whence), 0, 0)
++ newoffset = int64(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1229,8 +1303,9 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+- _, _, e1 := Syscall6(SYS_SELECT, uintptr(n), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1240,7 +1315,7 @@ func Select(n int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func Setegid(egid int) (err error) {
+- _, _, e1 := Syscall(SYS_SETEGID, uintptr(egid), 0, 0)
++ _, _, e1 := RawSyscall(SYS_SETEGID, uintptr(egid), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1304,8 +1379,8 @@ func Setpriority(which int, who int, prio int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setprivexec(flag int) (err error) {
+- _, _, e1 := Syscall(SYS_SETPRIVEXEC, uintptr(flag), 0, 0)
++func Setregid(rgid int, egid int) (err error) {
++ _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1314,8 +1389,8 @@ func Setprivexec(flag int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setregid(rgid int, egid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0)
++func Setreuid(ruid int, euid int) (err error) {
++ _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1324,8 +1399,18 @@ func Setregid(rgid int, egid int) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Setreuid(ruid int, euid int) (err error) {
+- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0)
++func Setresgid(rgid int, egid int, sgid int) (err error) {
++ _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid))
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Setresuid(ruid int, euid int, suid int) (err error) {
++ _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1344,6 +1429,16 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
++func Setrtable(rtable int) (err error) {
++ _, _, e1 := RawSyscall(SYS_SETRTABLE, uintptr(rtable), 0, 0)
++ if e1 != 0 {
++ err = errnoErr(e1)
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Setsid() (pid int, err error) {
+ r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0)
+ pid = int(r0)
+@@ -1381,7 +1476,7 @@ func Stat(path string, stat *Stat_t) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1396,7 +1491,7 @@ func Statfs(path string, stat *Statfs_t) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
++ _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1461,7 +1556,7 @@ func Truncate(path string, length int64) (err error) {
+ if err != nil {
+ return
+ }
+- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32))
++ _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), 0, uintptr(length))
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+@@ -1478,21 +1573,6 @@ func Umask(newmask int) (oldmask int) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func Undelete(path string) (err error) {
+- var _p0 *byte
+- _p0, err = BytePtrFromString(path)
+- if err != nil {
+- return
+- }
+- _, _, e1 := Syscall(SYS_UNDELETE, uintptr(unsafe.Pointer(_p0)), 0, 0)
+- if e1 != 0 {
+- err = errnoErr(e1)
+- }
+- return
+-}
+-
+-// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+-
+ func Unlink(path string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1556,7 +1636,7 @@ func write(fd int, p []byte) (n int, err error) {
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) {
+- r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0)
++ r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), 0, uintptr(pos), 0, 0)
+ ret = uintptr(r0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+@@ -1598,10 +1678,13 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) {
+
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+-func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) {
+- r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0)
+- sec = int32(r0)
+- usec = int32(r1)
++func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0)
+ if e1 != 0 {
+ err = errnoErr(e1)
+ }
+diff --git a/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
+index 4287133d..a96165d4 100644
+--- a/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
+@@ -1,4 +1,4 @@
+-// mksyscall_solaris.pl -tags solaris,amd64 syscall_solaris.go syscall_solaris_amd64.go
++// go run mksyscall_solaris.go -tags solaris,amd64 syscall_solaris.go syscall_solaris_amd64.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build solaris,amd64
+@@ -25,7 +25,11 @@ import (
+ //go:cgo_import_dynamic libc___xnet_recvmsg __xnet_recvmsg "libsocket.so"
+ //go:cgo_import_dynamic libc___xnet_sendmsg __xnet_sendmsg "libsocket.so"
+ //go:cgo_import_dynamic libc_acct acct "libc.so"
++//go:cgo_import_dynamic libc___makedev __makedev "libc.so"
++//go:cgo_import_dynamic libc___major __major "libc.so"
++//go:cgo_import_dynamic libc___minor __minor "libc.so"
+ //go:cgo_import_dynamic libc_ioctl ioctl "libc.so"
++//go:cgo_import_dynamic libc_poll poll "libc.so"
+ //go:cgo_import_dynamic libc_access access "libc.so"
+ //go:cgo_import_dynamic libc_adjtime adjtime "libc.so"
+ //go:cgo_import_dynamic libc_chdir chdir "libc.so"
+@@ -37,6 +41,7 @@ import (
+ //go:cgo_import_dynamic libc_dup dup "libc.so"
+ //go:cgo_import_dynamic libc_dup2 dup2 "libc.so"
+ //go:cgo_import_dynamic libc_exit exit "libc.so"
++//go:cgo_import_dynamic libc_faccessat faccessat "libc.so"
+ //go:cgo_import_dynamic libc_fchdir fchdir "libc.so"
+ //go:cgo_import_dynamic libc_fchmod fchmod "libc.so"
+ //go:cgo_import_dynamic libc_fchmodat fchmodat "libc.so"
+@@ -46,6 +51,7 @@ import (
+ //go:cgo_import_dynamic libc_flock flock "libc.so"
+ //go:cgo_import_dynamic libc_fpathconf fpathconf "libc.so"
+ //go:cgo_import_dynamic libc_fstat fstat "libc.so"
++//go:cgo_import_dynamic libc_fstatat fstatat "libc.so"
+ //go:cgo_import_dynamic libc_fstatvfs fstatvfs "libc.so"
+ //go:cgo_import_dynamic libc_getdents getdents "libc.so"
+ //go:cgo_import_dynamic libc_getgid getgid "libc.so"
+@@ -75,6 +81,7 @@ import (
+ //go:cgo_import_dynamic libc_mlock mlock "libc.so"
+ //go:cgo_import_dynamic libc_mlockall mlockall "libc.so"
+ //go:cgo_import_dynamic libc_mprotect mprotect "libc.so"
++//go:cgo_import_dynamic libc_msync msync "libc.so"
+ //go:cgo_import_dynamic libc_munlock munlock "libc.so"
+ //go:cgo_import_dynamic libc_munlockall munlockall "libc.so"
+ //go:cgo_import_dynamic libc_nanosleep nanosleep "libc.so"
+@@ -90,6 +97,7 @@ import (
+ //go:cgo_import_dynamic libc_renameat renameat "libc.so"
+ //go:cgo_import_dynamic libc_rmdir rmdir "libc.so"
+ //go:cgo_import_dynamic libc_lseek lseek "libc.so"
++//go:cgo_import_dynamic libc_select select "libc.so"
+ //go:cgo_import_dynamic libc_setegid setegid "libc.so"
+ //go:cgo_import_dynamic libc_seteuid seteuid "libc.so"
+ //go:cgo_import_dynamic libc_setgid setgid "libc.so"
+@@ -121,6 +129,7 @@ import (
+ //go:cgo_import_dynamic libc___xnet_connect __xnet_connect "libsocket.so"
+ //go:cgo_import_dynamic libc_mmap mmap "libc.so"
+ //go:cgo_import_dynamic libc_munmap munmap "libc.so"
++//go:cgo_import_dynamic libc_sendfile sendfile "libsendfile.so"
+ //go:cgo_import_dynamic libc___xnet_sendto __xnet_sendto "libsocket.so"
+ //go:cgo_import_dynamic libc___xnet_socket __xnet_socket "libsocket.so"
+ //go:cgo_import_dynamic libc___xnet_socketpair __xnet_socketpair "libsocket.so"
+@@ -129,7 +138,6 @@ import (
+ //go:cgo_import_dynamic libc_getpeername getpeername "libsocket.so"
+ //go:cgo_import_dynamic libc_setsockopt setsockopt "libsocket.so"
+ //go:cgo_import_dynamic libc_recvfrom recvfrom "libsocket.so"
+-//go:cgo_import_dynamic libc_sysconf sysconf "libc.so"
+
+ //go:linkname procpipe libc_pipe
+ //go:linkname procgetsockname libc_getsockname
+@@ -146,7 +154,11 @@ import (
+ //go:linkname proc__xnet_recvmsg libc___xnet_recvmsg
+ //go:linkname proc__xnet_sendmsg libc___xnet_sendmsg
+ //go:linkname procacct libc_acct
++//go:linkname proc__makedev libc___makedev
++//go:linkname proc__major libc___major
++//go:linkname proc__minor libc___minor
+ //go:linkname procioctl libc_ioctl
++//go:linkname procpoll libc_poll
+ //go:linkname procAccess libc_access
+ //go:linkname procAdjtime libc_adjtime
+ //go:linkname procChdir libc_chdir
+@@ -158,6 +170,7 @@ import (
+ //go:linkname procDup libc_dup
+ //go:linkname procDup2 libc_dup2
+ //go:linkname procExit libc_exit
++//go:linkname procFaccessat libc_faccessat
+ //go:linkname procFchdir libc_fchdir
+ //go:linkname procFchmod libc_fchmod
+ //go:linkname procFchmodat libc_fchmodat
+@@ -167,6 +180,7 @@ import (
+ //go:linkname procFlock libc_flock
+ //go:linkname procFpathconf libc_fpathconf
+ //go:linkname procFstat libc_fstat
++//go:linkname procFstatat libc_fstatat
+ //go:linkname procFstatvfs libc_fstatvfs
+ //go:linkname procGetdents libc_getdents
+ //go:linkname procGetgid libc_getgid
+@@ -196,6 +210,7 @@ import (
+ //go:linkname procMlock libc_mlock
+ //go:linkname procMlockall libc_mlockall
+ //go:linkname procMprotect libc_mprotect
++//go:linkname procMsync libc_msync
+ //go:linkname procMunlock libc_munlock
+ //go:linkname procMunlockall libc_munlockall
+ //go:linkname procNanosleep libc_nanosleep
+@@ -211,6 +226,7 @@ import (
+ //go:linkname procRenameat libc_renameat
+ //go:linkname procRmdir libc_rmdir
+ //go:linkname proclseek libc_lseek
++//go:linkname procSelect libc_select
+ //go:linkname procSetegid libc_setegid
+ //go:linkname procSeteuid libc_seteuid
+ //go:linkname procSetgid libc_setgid
+@@ -242,6 +258,7 @@ import (
+ //go:linkname proc__xnet_connect libc___xnet_connect
+ //go:linkname procmmap libc_mmap
+ //go:linkname procmunmap libc_munmap
++//go:linkname procsendfile libc_sendfile
+ //go:linkname proc__xnet_sendto libc___xnet_sendto
+ //go:linkname proc__xnet_socket libc___xnet_socket
+ //go:linkname proc__xnet_socketpair libc___xnet_socketpair
+@@ -250,7 +267,6 @@ import (
+ //go:linkname procgetpeername libc_getpeername
+ //go:linkname procsetsockopt libc_setsockopt
+ //go:linkname procrecvfrom libc_recvfrom
+-//go:linkname procsysconf libc_sysconf
+
+ var (
+ procpipe,
+@@ -268,7 +284,11 @@ var (
+ proc__xnet_recvmsg,
+ proc__xnet_sendmsg,
+ procacct,
++ proc__makedev,
++ proc__major,
++ proc__minor,
+ procioctl,
++ procpoll,
+ procAccess,
+ procAdjtime,
+ procChdir,
+@@ -280,6 +300,7 @@ var (
+ procDup,
+ procDup2,
+ procExit,
++ procFaccessat,
+ procFchdir,
+ procFchmod,
+ procFchmodat,
+@@ -289,6 +310,7 @@ var (
+ procFlock,
+ procFpathconf,
+ procFstat,
++ procFstatat,
+ procFstatvfs,
+ procGetdents,
+ procGetgid,
+@@ -318,6 +340,7 @@ var (
+ procMlock,
+ procMlockall,
+ procMprotect,
++ procMsync,
+ procMunlock,
+ procMunlockall,
+ procNanosleep,
+@@ -333,6 +356,7 @@ var (
+ procRenameat,
+ procRmdir,
+ proclseek,
++ procSelect,
+ procSetegid,
+ procSeteuid,
+ procSetgid,
+@@ -364,6 +388,7 @@ var (
+ proc__xnet_connect,
+ procmmap,
+ procmunmap,
++ procsendfile,
+ proc__xnet_sendto,
+ proc__xnet_socket,
+ proc__xnet_socketpair,
+@@ -371,10 +396,11 @@ var (
+ proc__xnet_getsockopt,
+ procgetpeername,
+ procsetsockopt,
+- procrecvfrom,
+- procsysconf syscallFunc
++ procrecvfrom syscallFunc
+ )
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func pipe(p *[2]_C_int) (n int, err error) {
+ r0, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procpipe)), 1, uintptr(unsafe.Pointer(p)), 0, 0, 0, 0, 0)
+ n = int(r0)
+@@ -384,6 +410,8 @@ func pipe(p *[2]_C_int) (n int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procgetsockname)), 3, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), 0, 0, 0)
+ if e1 != 0 {
+@@ -392,6 +420,8 @@ func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getcwd(buf []byte) (n int, err error) {
+ var _p0 *byte
+ if len(buf) > 0 {
+@@ -405,6 +435,8 @@ func Getcwd(buf []byte) (n int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
+ r0, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procgetgroups)), 2, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0, 0, 0, 0)
+ n = int(r0)
+@@ -414,6 +446,8 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func setgroups(ngid int, gid *_Gid_t) (err error) {
+ _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procsetgroups)), 2, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -422,6 +456,8 @@ func setgroups(ngid int, gid *_Gid_t) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func wait4(pid int32, statusp *_C_int, options int, rusage *Rusage) (wpid int32, err error) {
+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procwait4)), 4, uintptr(pid), uintptr(unsafe.Pointer(statusp)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0)
+ wpid = int32(r0)
+@@ -431,6 +467,8 @@ func wait4(pid int32, statusp *_C_int, options int, rusage *Rusage) (wpid int32,
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func gethostname(buf []byte) (n int, err error) {
+ var _p0 *byte
+ if len(buf) > 0 {
+@@ -444,6 +482,8 @@ func gethostname(buf []byte) (n int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func utimes(path string, times *[2]Timeval) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -457,6 +497,8 @@ func utimes(path string, times *[2]Timeval) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func utimensat(fd int, path string, times *[2]Timespec, flag int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -470,6 +512,8 @@ func utimensat(fd int, path string, times *[2]Timespec, flag int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func fcntl(fd int, cmd int, arg int) (val int, err error) {
+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procfcntl)), 3, uintptr(fd), uintptr(cmd), uintptr(arg), 0, 0, 0)
+ val = int(r0)
+@@ -479,6 +523,8 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func futimesat(fildes int, path *byte, times *[2]Timeval) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procfutimesat)), 3, uintptr(fildes), uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(times)), 0, 0, 0)
+ if e1 != 0 {
+@@ -487,6 +533,8 @@ func futimesat(fildes int, path *byte, times *[2]Timeval) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procaccept)), 3, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), 0, 0, 0)
+ fd = int(r0)
+@@ -496,6 +544,8 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&proc__xnet_recvmsg)), 3, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags), 0, 0, 0)
+ n = int(r0)
+@@ -505,6 +555,8 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&proc__xnet_sendmsg)), 3, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags), 0, 0, 0)
+ n = int(r0)
+@@ -514,6 +566,8 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func acct(path *byte) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procacct)), 1, uintptr(unsafe.Pointer(path)), 0, 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -522,6 +576,32 @@ func acct(path *byte) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func __makedev(version int, major uint, minor uint) (val uint64) {
++ r0, _, _ := sysvicall6(uintptr(unsafe.Pointer(&proc__makedev)), 3, uintptr(version), uintptr(major), uintptr(minor), 0, 0, 0)
++ val = uint64(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func __major(version int, dev uint64) (val uint) {
++ r0, _, _ := sysvicall6(uintptr(unsafe.Pointer(&proc__major)), 2, uintptr(version), uintptr(dev), 0, 0, 0, 0)
++ val = uint(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func __minor(version int, dev uint64) (val uint) {
++ r0, _, _ := sysvicall6(uintptr(unsafe.Pointer(&proc__minor)), 2, uintptr(version), uintptr(dev), 0, 0, 0, 0)
++ val = uint(r0)
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func ioctl(fd int, req uint, arg uintptr) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procioctl)), 3, uintptr(fd), uintptr(req), uintptr(arg), 0, 0, 0)
+ if e1 != 0 {
+@@ -530,6 +610,19 @@ func ioctl(fd int, req uint, arg uintptr) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func poll(fds *PollFd, nfds int, timeout int) (n int, err error) {
++ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procpoll)), 3, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout), 0, 0, 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = e1
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Access(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -543,6 +636,8 @@ func Access(path string, mode uint32) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procAdjtime)), 2, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -551,6 +646,8 @@ func Adjtime(delta *Timeval, olddelta *Timeval) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Chdir(path string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -564,6 +661,8 @@ func Chdir(path string) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Chmod(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -577,6 +676,8 @@ func Chmod(path string, mode uint32) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Chown(path string, uid int, gid int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -590,6 +691,8 @@ func Chown(path string, uid int, gid int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Chroot(path string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -603,6 +706,8 @@ func Chroot(path string) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Close(fd int) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procClose)), 1, uintptr(fd), 0, 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -611,6 +716,8 @@ func Close(fd int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Creat(path string, mode uint32) (fd int, err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -625,6 +732,8 @@ func Creat(path string, mode uint32) (fd int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Dup(fd int) (nfd int, err error) {
+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procDup)), 1, uintptr(fd), 0, 0, 0, 0, 0)
+ nfd = int(r0)
+@@ -634,6 +743,8 @@ func Dup(fd int) (nfd int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Dup2(oldfd int, newfd int) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procDup2)), 2, uintptr(oldfd), uintptr(newfd), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -642,11 +753,30 @@ func Dup2(oldfd int, newfd int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Exit(code int) {
+ sysvicall6(uintptr(unsafe.Pointer(&procExit)), 1, uintptr(code), 0, 0, 0, 0, 0)
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFaccessat)), 4, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = e1
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchdir(fd int) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFchdir)), 1, uintptr(fd), 0, 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -655,6 +785,8 @@ func Fchdir(fd int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchmod(fd int, mode uint32) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFchmod)), 2, uintptr(fd), uintptr(mode), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -663,6 +795,8 @@ func Fchmod(fd int, mode uint32) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -676,6 +810,8 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchown(fd int, uid int, gid int) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFchown)), 3, uintptr(fd), uintptr(uid), uintptr(gid), 0, 0, 0)
+ if e1 != 0 {
+@@ -684,6 +820,8 @@ func Fchown(fd int, uid int, gid int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -697,6 +835,8 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fdatasync(fd int) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFdatasync)), 1, uintptr(fd), 0, 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -705,6 +845,8 @@ func Fdatasync(fd int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Flock(fd int, how int) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFlock)), 2, uintptr(fd), uintptr(how), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -713,6 +855,8 @@ func Flock(fd int, how int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fpathconf(fd int, name int) (val int, err error) {
+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFpathconf)), 2, uintptr(fd), uintptr(name), 0, 0, 0, 0)
+ val = int(r0)
+@@ -722,6 +866,8 @@ func Fpathconf(fd int, name int) (val int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fstat(fd int, stat *Stat_t) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFstat)), 2, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -730,6 +876,23 @@ func Fstat(fd int, stat *Stat_t) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) {
++ var _p0 *byte
++ _p0, err = BytePtrFromString(path)
++ if err != nil {
++ return
++ }
++ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFstatat)), 4, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0)
++ if e1 != 0 {
++ err = e1
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fstatvfs(fd int, vfsstat *Statvfs_t) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFstatvfs)), 2, uintptr(fd), uintptr(unsafe.Pointer(vfsstat)), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -738,6 +901,8 @@ func Fstatvfs(fd int, vfsstat *Statvfs_t) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getdents(fd int, buf []byte, basep *uintptr) (n int, err error) {
+ var _p0 *byte
+ if len(buf) > 0 {
+@@ -751,18 +916,24 @@ func Getdents(fd int, buf []byte, basep *uintptr) (n int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getgid() (gid int) {
+ r0, _, _ := rawSysvicall6(uintptr(unsafe.Pointer(&procGetgid)), 0, 0, 0, 0, 0, 0, 0)
+ gid = int(r0)
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getpid() (pid int) {
+ r0, _, _ := rawSysvicall6(uintptr(unsafe.Pointer(&procGetpid)), 0, 0, 0, 0, 0, 0, 0)
+ pid = int(r0)
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getpgid(pid int) (pgid int, err error) {
+ r0, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procGetpgid)), 1, uintptr(pid), 0, 0, 0, 0, 0)
+ pgid = int(r0)
+@@ -772,6 +943,8 @@ func Getpgid(pid int) (pgid int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getpgrp() (pgid int, err error) {
+ r0, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procGetpgrp)), 0, 0, 0, 0, 0, 0, 0)
+ pgid = int(r0)
+@@ -781,24 +954,32 @@ func Getpgrp() (pgid int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Geteuid() (euid int) {
+ r0, _, _ := sysvicall6(uintptr(unsafe.Pointer(&procGeteuid)), 0, 0, 0, 0, 0, 0, 0)
+ euid = int(r0)
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getegid() (egid int) {
+ r0, _, _ := sysvicall6(uintptr(unsafe.Pointer(&procGetegid)), 0, 0, 0, 0, 0, 0, 0)
+ egid = int(r0)
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getppid() (ppid int) {
+ r0, _, _ := sysvicall6(uintptr(unsafe.Pointer(&procGetppid)), 0, 0, 0, 0, 0, 0, 0)
+ ppid = int(r0)
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getpriority(which int, who int) (n int, err error) {
+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procGetpriority)), 2, uintptr(which), uintptr(who), 0, 0, 0, 0)
+ n = int(r0)
+@@ -808,6 +989,8 @@ func Getpriority(which int, who int) (n int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getrlimit(which int, lim *Rlimit) (err error) {
+ _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procGetrlimit)), 2, uintptr(which), uintptr(unsafe.Pointer(lim)), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -816,6 +999,8 @@ func Getrlimit(which int, lim *Rlimit) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getrusage(who int, rusage *Rusage) (err error) {
+ _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procGetrusage)), 2, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -824,6 +1009,8 @@ func Getrusage(who int, rusage *Rusage) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Gettimeofday(tv *Timeval) (err error) {
+ _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procGettimeofday)), 1, uintptr(unsafe.Pointer(tv)), 0, 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -832,12 +1019,16 @@ func Gettimeofday(tv *Timeval) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Getuid() (uid int) {
+ r0, _, _ := rawSysvicall6(uintptr(unsafe.Pointer(&procGetuid)), 0, 0, 0, 0, 0, 0, 0)
+ uid = int(r0)
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Kill(pid int, signum syscall.Signal) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procKill)), 2, uintptr(pid), uintptr(signum), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -846,6 +1037,8 @@ func Kill(pid int, signum syscall.Signal) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Lchown(path string, uid int, gid int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -859,6 +1052,8 @@ func Lchown(path string, uid int, gid int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Link(path string, link string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -877,6 +1072,8 @@ func Link(path string, link string) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Listen(s int, backlog int) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&proc__xnet_llisten)), 2, uintptr(s), uintptr(backlog), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -885,6 +1082,8 @@ func Listen(s int, backlog int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Lstat(path string, stat *Stat_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -898,6 +1097,8 @@ func Lstat(path string, stat *Stat_t) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Madvise(b []byte, advice int) (err error) {
+ var _p0 *byte
+ if len(b) > 0 {
+@@ -910,6 +1111,8 @@ func Madvise(b []byte, advice int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mkdir(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -923,6 +1126,8 @@ func Mkdir(path string, mode uint32) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -936,6 +1141,8 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mkfifo(path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -949,6 +1156,8 @@ func Mkfifo(path string, mode uint32) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -962,6 +1171,8 @@ func Mkfifoat(dirfd int, path string, mode uint32) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mknod(path string, mode uint32, dev int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -975,6 +1186,8 @@ func Mknod(path string, mode uint32, dev int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -988,6 +1201,8 @@ func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mlock(b []byte) (err error) {
+ var _p0 *byte
+ if len(b) > 0 {
+@@ -1000,6 +1215,8 @@ func Mlock(b []byte) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mlockall(flags int) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procMlockall)), 1, uintptr(flags), 0, 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1008,6 +1225,8 @@ func Mlockall(flags int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Mprotect(b []byte, prot int) (err error) {
+ var _p0 *byte
+ if len(b) > 0 {
+@@ -1020,6 +1239,22 @@ func Mprotect(b []byte, prot int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Msync(b []byte, flags int) (err error) {
++ var _p0 *byte
++ if len(b) > 0 {
++ _p0 = &b[0]
++ }
++ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procMsync)), 3, uintptr(unsafe.Pointer(_p0)), uintptr(len(b)), uintptr(flags), 0, 0, 0)
++ if e1 != 0 {
++ err = e1
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Munlock(b []byte) (err error) {
+ var _p0 *byte
+ if len(b) > 0 {
+@@ -1032,6 +1267,8 @@ func Munlock(b []byte) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Munlockall() (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procMunlockall)), 0, 0, 0, 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1040,6 +1277,8 @@ func Munlockall() (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procNanosleep)), 2, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1048,6 +1287,8 @@ func Nanosleep(time *Timespec, leftover *Timespec) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Open(path string, mode int, perm uint32) (fd int, err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1062,6 +1303,8 @@ func Open(path string, mode int, perm uint32) (fd int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1076,6 +1319,8 @@ func Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error)
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Pathconf(path string, name int) (val int, err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1090,6 +1335,8 @@ func Pathconf(path string, name int) (val int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Pause() (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procPause)), 0, 0, 0, 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1098,6 +1345,8 @@ func Pause() (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+ var _p0 *byte
+ if len(p) > 0 {
+@@ -1111,6 +1360,8 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+ var _p0 *byte
+ if len(p) > 0 {
+@@ -1124,6 +1375,8 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func read(fd int, p []byte) (n int, err error) {
+ var _p0 *byte
+ if len(p) > 0 {
+@@ -1137,6 +1390,8 @@ func read(fd int, p []byte) (n int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Readlink(path string, buf []byte) (n int, err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1155,6 +1410,8 @@ func Readlink(path string, buf []byte) (n int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Rename(from string, to string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(from)
+@@ -1173,6 +1430,8 @@ func Rename(from string, to string) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(oldpath)
+@@ -1191,6 +1450,8 @@ func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err e
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Rmdir(path string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1204,6 +1465,8 @@ func Rmdir(path string) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&proclseek)), 3, uintptr(fd), uintptr(offset), uintptr(whence), 0, 0, 0)
+ newoffset = int64(r0)
+@@ -1213,6 +1476,19 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
++ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procSelect)), 5, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
++ n = int(r0)
++ if e1 != 0 {
++ err = e1
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Setegid(egid int) (err error) {
+ _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSetegid)), 1, uintptr(egid), 0, 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1221,6 +1497,8 @@ func Setegid(egid int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Seteuid(euid int) (err error) {
+ _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSeteuid)), 1, uintptr(euid), 0, 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1229,6 +1507,8 @@ func Seteuid(euid int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Setgid(gid int) (err error) {
+ _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSetgid)), 1, uintptr(gid), 0, 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1237,6 +1517,8 @@ func Setgid(gid int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Sethostname(p []byte) (err error) {
+ var _p0 *byte
+ if len(p) > 0 {
+@@ -1249,6 +1531,8 @@ func Sethostname(p []byte) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Setpgid(pid int, pgid int) (err error) {
+ _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSetpgid)), 2, uintptr(pid), uintptr(pgid), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1257,6 +1541,8 @@ func Setpgid(pid int, pgid int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Setpriority(which int, who int, prio int) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procSetpriority)), 3, uintptr(which), uintptr(who), uintptr(prio), 0, 0, 0)
+ if e1 != 0 {
+@@ -1265,6 +1551,8 @@ func Setpriority(which int, who int, prio int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Setregid(rgid int, egid int) (err error) {
+ _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSetregid)), 2, uintptr(rgid), uintptr(egid), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1273,6 +1561,8 @@ func Setregid(rgid int, egid int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Setreuid(ruid int, euid int) (err error) {
+ _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSetreuid)), 2, uintptr(ruid), uintptr(euid), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1281,6 +1571,8 @@ func Setreuid(ruid int, euid int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Setrlimit(which int, lim *Rlimit) (err error) {
+ _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSetrlimit)), 2, uintptr(which), uintptr(unsafe.Pointer(lim)), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1289,6 +1581,8 @@ func Setrlimit(which int, lim *Rlimit) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Setsid() (pid int, err error) {
+ r0, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSetsid)), 0, 0, 0, 0, 0, 0, 0)
+ pid = int(r0)
+@@ -1298,6 +1592,8 @@ func Setsid() (pid int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Setuid(uid int) (err error) {
+ _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procSetuid)), 1, uintptr(uid), 0, 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1306,6 +1602,8 @@ func Setuid(uid int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Shutdown(s int, how int) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procshutdown)), 2, uintptr(s), uintptr(how), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1314,6 +1612,8 @@ func Shutdown(s int, how int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Stat(path string, stat *Stat_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1327,6 +1627,8 @@ func Stat(path string, stat *Stat_t) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Statvfs(path string, vfsstat *Statvfs_t) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1340,6 +1642,8 @@ func Statvfs(path string, vfsstat *Statvfs_t) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Symlink(path string, link string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1358,6 +1662,8 @@ func Symlink(path string, link string) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Sync() (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procSync)), 0, 0, 0, 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1366,6 +1672,8 @@ func Sync() (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Times(tms *Tms) (ticks uintptr, err error) {
+ r0, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procTimes)), 1, uintptr(unsafe.Pointer(tms)), 0, 0, 0, 0, 0)
+ ticks = uintptr(r0)
+@@ -1375,6 +1683,8 @@ func Times(tms *Tms) (ticks uintptr, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Truncate(path string, length int64) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1388,6 +1698,8 @@ func Truncate(path string, length int64) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Fsync(fd int) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFsync)), 1, uintptr(fd), 0, 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1396,6 +1708,8 @@ func Fsync(fd int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Ftruncate(fd int, length int64) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procFtruncate)), 2, uintptr(fd), uintptr(length), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1404,12 +1718,16 @@ func Ftruncate(fd int, length int64) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Umask(mask int) (oldmask int) {
+ r0, _, _ := sysvicall6(uintptr(unsafe.Pointer(&procUmask)), 1, uintptr(mask), 0, 0, 0, 0, 0)
+ oldmask = int(r0)
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Uname(buf *Utsname) (err error) {
+ _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procUname)), 1, uintptr(unsafe.Pointer(buf)), 0, 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1418,6 +1736,8 @@ func Uname(buf *Utsname) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Unmount(target string, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(target)
+@@ -1431,6 +1751,8 @@ func Unmount(target string, flags int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Unlink(path string) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1444,6 +1766,8 @@ func Unlink(path string) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Unlinkat(dirfd int, path string, flags int) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1457,6 +1781,8 @@ func Unlinkat(dirfd int, path string, flags int) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Ustat(dev int, ubuf *Ustat_t) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procUstat)), 2, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1465,6 +1791,8 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func Utime(path string, buf *Utimbuf) (err error) {
+ var _p0 *byte
+ _p0, err = BytePtrFromString(path)
+@@ -1478,6 +1806,8 @@ func Utime(path string, buf *Utimbuf) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&proc__xnet_bind)), 3, uintptr(s), uintptr(addr), uintptr(addrlen), 0, 0, 0)
+ if e1 != 0 {
+@@ -1486,6 +1816,8 @@ func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&proc__xnet_connect)), 3, uintptr(s), uintptr(addr), uintptr(addrlen), 0, 0, 0)
+ if e1 != 0 {
+@@ -1494,6 +1826,8 @@ func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) {
+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procmmap)), 6, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos))
+ ret = uintptr(r0)
+@@ -1503,6 +1837,8 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func munmap(addr uintptr, length uintptr) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procmunmap)), 2, uintptr(addr), uintptr(length), 0, 0, 0, 0)
+ if e1 != 0 {
+@@ -1511,6 +1847,19 @@ func munmap(addr uintptr, length uintptr) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
++ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procsendfile)), 4, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0)
++ written = int(r0)
++ if e1 != 0 {
++ err = e1
++ }
++ return
++}
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) {
+ var _p0 *byte
+ if len(buf) > 0 {
+@@ -1523,6 +1872,8 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func socket(domain int, typ int, proto int) (fd int, err error) {
+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&proc__xnet_socket)), 3, uintptr(domain), uintptr(typ), uintptr(proto), 0, 0, 0)
+ fd = int(r0)
+@@ -1532,6 +1883,8 @@ func socket(domain int, typ int, proto int) (fd int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
+ _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&proc__xnet_socketpair)), 4, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0)
+ if e1 != 0 {
+@@ -1540,6 +1893,8 @@ func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func write(fd int, p []byte) (n int, err error) {
+ var _p0 *byte
+ if len(p) > 0 {
+@@ -1553,6 +1908,8 @@ func write(fd int, p []byte) (n int, err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&proc__xnet_getsockopt)), 5, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0)
+ if e1 != 0 {
+@@ -1561,6 +1918,8 @@ func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
+ _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procgetpeername)), 3, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), 0, 0, 0)
+ if e1 != 0 {
+@@ -1569,6 +1928,8 @@ func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) {
+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procsetsockopt)), 5, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0)
+ if e1 != 0 {
+@@ -1577,6 +1938,8 @@ func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr)
+ return
+ }
+
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
+ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) {
+ var _p0 *byte
+ if len(p) > 0 {
+@@ -1589,12 +1952,3 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl
+ }
+ return
+ }
+-
+-func sysconf(name int) (n int64, err error) {
+- r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procsysconf)), 1, uintptr(name), 0, 0, 0, 0, 0)
+- n = int64(r0)
+- if e1 != 0 {
+- err = e1
+- }
+- return
+-}
+diff --git a/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go
+similarity index 99%
+copy from vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
+copy to vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go
+index 83bb935b..37dcc74c 100644
+--- a/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
++++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go
+@@ -1,5 +1,7 @@
+ // mksysctl_openbsd.pl
+-// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
++// Code generated by the command above; DO NOT EDIT.
++
++// +build 386,openbsd
+
+ package unix
+
+diff --git a/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go
+similarity index 91%
+copy from vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
+copy to vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go
+index 83bb935b..fe6caa6e 100644
+--- a/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
++++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go
+@@ -1,5 +1,7 @@
+-// mksysctl_openbsd.pl
+-// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
++// go run mksysctl_openbsd.go
++// Code generated by the command above; DO NOT EDIT.
++
++// +build amd64,openbsd
+
+ package unix
+
+@@ -14,6 +16,7 @@ var sysctlMib = []mibentry{
+ {"ddb.max_line", []_C_int{9, 3}},
+ {"ddb.max_width", []_C_int{9, 2}},
+ {"ddb.panic", []_C_int{9, 5}},
++ {"ddb.profile", []_C_int{9, 9}},
+ {"ddb.radix", []_C_int{9, 1}},
+ {"ddb.tab_stop_width", []_C_int{9, 4}},
+ {"ddb.trigger", []_C_int{9, 8}},
+@@ -29,6 +32,7 @@ var sysctlMib = []mibentry{
+ {"hw.ncpu", []_C_int{6, 3}},
+ {"hw.ncpufound", []_C_int{6, 21}},
+ {"hw.pagesize", []_C_int{6, 7}},
++ {"hw.perfpolicy", []_C_int{6, 23}},
+ {"hw.physmem", []_C_int{6, 19}},
+ {"hw.product", []_C_int{6, 15}},
+ {"hw.serialno", []_C_int{6, 17}},
+@@ -37,7 +41,7 @@ var sysctlMib = []mibentry{
+ {"hw.uuid", []_C_int{6, 18}},
+ {"hw.vendor", []_C_int{6, 14}},
+ {"hw.version", []_C_int{6, 16}},
+- {"kern.arandom", []_C_int{1, 37}},
++ {"kern.allowkmem", []_C_int{1, 52}},
+ {"kern.argmax", []_C_int{1, 8}},
+ {"kern.boottime", []_C_int{1, 21}},
+ {"kern.bufcachepercent", []_C_int{1, 72}},
+@@ -46,12 +50,13 @@ var sysctlMib = []mibentry{
+ {"kern.consdev", []_C_int{1, 75}},
+ {"kern.cp_time", []_C_int{1, 40}},
+ {"kern.cp_time2", []_C_int{1, 71}},
+- {"kern.cryptodevallowsoft", []_C_int{1, 53}},
++ {"kern.dnsjackport", []_C_int{1, 13}},
+ {"kern.domainname", []_C_int{1, 22}},
+ {"kern.file", []_C_int{1, 73}},
+ {"kern.forkstat", []_C_int{1, 42}},
+ {"kern.fscale", []_C_int{1, 46}},
+ {"kern.fsync", []_C_int{1, 33}},
++ {"kern.global_ptrace", []_C_int{1, 81}},
+ {"kern.hostid", []_C_int{1, 11}},
+ {"kern.hostname", []_C_int{1, 10}},
+ {"kern.intrcnt.nintrcnt", []_C_int{1, 63, 1}},
+@@ -84,7 +89,6 @@ var sysctlMib = []mibentry{
+ {"kern.pool_debug", []_C_int{1, 77}},
+ {"kern.posix1version", []_C_int{1, 17}},
+ {"kern.proc", []_C_int{1, 66}},
+- {"kern.random", []_C_int{1, 31}},
+ {"kern.rawpartition", []_C_int{1, 24}},
+ {"kern.saved_ids", []_C_int{1, 20}},
+ {"kern.securelevel", []_C_int{1, 9}},
+@@ -102,21 +106,16 @@ var sysctlMib = []mibentry{
+ {"kern.timecounter.hardware", []_C_int{1, 69, 3}},
+ {"kern.timecounter.tick", []_C_int{1, 69, 1}},
+ {"kern.timecounter.timestepwarnings", []_C_int{1, 69, 2}},
+- {"kern.tty.maxptys", []_C_int{1, 44, 6}},
+- {"kern.tty.nptys", []_C_int{1, 44, 7}},
+ {"kern.tty.tk_cancc", []_C_int{1, 44, 4}},
+ {"kern.tty.tk_nin", []_C_int{1, 44, 1}},
+ {"kern.tty.tk_nout", []_C_int{1, 44, 2}},
+ {"kern.tty.tk_rawcc", []_C_int{1, 44, 3}},
+ {"kern.tty.ttyinfo", []_C_int{1, 44, 5}},
+ {"kern.ttycount", []_C_int{1, 57}},
+- {"kern.userasymcrypto", []_C_int{1, 60}},
+- {"kern.usercrypto", []_C_int{1, 52}},
+- {"kern.usermount", []_C_int{1, 30}},
+ {"kern.version", []_C_int{1, 4}},
+- {"kern.vnode", []_C_int{1, 13}},
+ {"kern.watchdog.auto", []_C_int{1, 64, 2}},
+ {"kern.watchdog.period", []_C_int{1, 64, 1}},
++ {"kern.wxabort", []_C_int{1, 74}},
+ {"net.bpf.bufsize", []_C_int{4, 31, 1}},
+ {"net.bpf.maxbufsize", []_C_int{4, 31, 2}},
+ {"net.inet.ah.enable", []_C_int{4, 2, 51, 1}},
+@@ -144,7 +143,9 @@ var sysctlMib = []mibentry{
+ {"net.inet.icmp.stats", []_C_int{4, 2, 1, 7}},
+ {"net.inet.icmp.tstamprepl", []_C_int{4, 2, 1, 6}},
+ {"net.inet.igmp.stats", []_C_int{4, 2, 2, 1}},
++ {"net.inet.ip.arpdown", []_C_int{4, 2, 0, 40}},
+ {"net.inet.ip.arpqueued", []_C_int{4, 2, 0, 36}},
++ {"net.inet.ip.arptimeout", []_C_int{4, 2, 0, 39}},
+ {"net.inet.ip.encdebug", []_C_int{4, 2, 0, 12}},
+ {"net.inet.ip.forwarding", []_C_int{4, 2, 0, 1}},
+ {"net.inet.ip.ifq.congestion", []_C_int{4, 2, 0, 30, 4}},
+@@ -153,8 +154,10 @@ var sysctlMib = []mibentry{
+ {"net.inet.ip.ifq.maxlen", []_C_int{4, 2, 0, 30, 2}},
+ {"net.inet.ip.maxqueue", []_C_int{4, 2, 0, 11}},
+ {"net.inet.ip.mforwarding", []_C_int{4, 2, 0, 31}},
++ {"net.inet.ip.mrtmfc", []_C_int{4, 2, 0, 37}},
+ {"net.inet.ip.mrtproto", []_C_int{4, 2, 0, 34}},
+ {"net.inet.ip.mrtstats", []_C_int{4, 2, 0, 35}},
++ {"net.inet.ip.mrtvif", []_C_int{4, 2, 0, 38}},
+ {"net.inet.ip.mtu", []_C_int{4, 2, 0, 4}},
+ {"net.inet.ip.mtudisc", []_C_int{4, 2, 0, 27}},
+ {"net.inet.ip.mtudisctimeout", []_C_int{4, 2, 0, 28}},
+@@ -173,7 +176,6 @@ var sysctlMib = []mibentry{
+ {"net.inet.ipip.stats", []_C_int{4, 2, 4, 2}},
+ {"net.inet.mobileip.allow", []_C_int{4, 2, 55, 1}},
+ {"net.inet.pfsync.stats", []_C_int{4, 2, 240, 1}},
+- {"net.inet.pim.stats", []_C_int{4, 2, 103, 1}},
+ {"net.inet.tcp.ackonpush", []_C_int{4, 2, 6, 13}},
+ {"net.inet.tcp.always_keepalive", []_C_int{4, 2, 6, 22}},
+ {"net.inet.tcp.baddynamic", []_C_int{4, 2, 6, 6}},
+@@ -187,6 +189,7 @@ var sysctlMib = []mibentry{
+ {"net.inet.tcp.reasslimit", []_C_int{4, 2, 6, 18}},
+ {"net.inet.tcp.rfc1323", []_C_int{4, 2, 6, 1}},
+ {"net.inet.tcp.rfc3390", []_C_int{4, 2, 6, 17}},
++ {"net.inet.tcp.rootonly", []_C_int{4, 2, 6, 24}},
+ {"net.inet.tcp.rstppslimit", []_C_int{4, 2, 6, 12}},
+ {"net.inet.tcp.sack", []_C_int{4, 2, 6, 10}},
+ {"net.inet.tcp.sackholelimit", []_C_int{4, 2, 6, 20}},
+@@ -194,9 +197,12 @@ var sysctlMib = []mibentry{
+ {"net.inet.tcp.stats", []_C_int{4, 2, 6, 21}},
+ {"net.inet.tcp.synbucketlimit", []_C_int{4, 2, 6, 16}},
+ {"net.inet.tcp.syncachelimit", []_C_int{4, 2, 6, 15}},
++ {"net.inet.tcp.synhashsize", []_C_int{4, 2, 6, 25}},
++ {"net.inet.tcp.synuselimit", []_C_int{4, 2, 6, 23}},
+ {"net.inet.udp.baddynamic", []_C_int{4, 2, 17, 2}},
+ {"net.inet.udp.checksum", []_C_int{4, 2, 17, 1}},
+ {"net.inet.udp.recvspace", []_C_int{4, 2, 17, 3}},
++ {"net.inet.udp.rootonly", []_C_int{4, 2, 17, 6}},
+ {"net.inet.udp.sendspace", []_C_int{4, 2, 17, 4}},
+ {"net.inet.udp.stats", []_C_int{4, 2, 17, 5}},
+ {"net.inet6.divert.recvspace", []_C_int{4, 24, 86, 1}},
+@@ -209,13 +215,8 @@ var sysctlMib = []mibentry{
+ {"net.inet6.icmp6.nd6_delay", []_C_int{4, 24, 30, 8}},
+ {"net.inet6.icmp6.nd6_maxnudhint", []_C_int{4, 24, 30, 15}},
+ {"net.inet6.icmp6.nd6_mmaxtries", []_C_int{4, 24, 30, 10}},
+- {"net.inet6.icmp6.nd6_prune", []_C_int{4, 24, 30, 6}},
+ {"net.inet6.icmp6.nd6_umaxtries", []_C_int{4, 24, 30, 9}},
+- {"net.inet6.icmp6.nd6_useloopback", []_C_int{4, 24, 30, 11}},
+- {"net.inet6.icmp6.nodeinfo", []_C_int{4, 24, 30, 13}},
+- {"net.inet6.icmp6.rediraccept", []_C_int{4, 24, 30, 2}},
+ {"net.inet6.icmp6.redirtimeout", []_C_int{4, 24, 30, 3}},
+- {"net.inet6.ip6.accept_rtadv", []_C_int{4, 24, 17, 12}},
+ {"net.inet6.ip6.auto_flowlabel", []_C_int{4, 24, 17, 17}},
+ {"net.inet6.ip6.dad_count", []_C_int{4, 24, 17, 16}},
+ {"net.inet6.ip6.dad_pending", []_C_int{4, 24, 17, 49}},
+@@ -228,20 +229,19 @@ var sysctlMib = []mibentry{
+ {"net.inet6.ip6.maxdynroutes", []_C_int{4, 24, 17, 48}},
+ {"net.inet6.ip6.maxfragpackets", []_C_int{4, 24, 17, 9}},
+ {"net.inet6.ip6.maxfrags", []_C_int{4, 24, 17, 41}},
+- {"net.inet6.ip6.maxifdefrouters", []_C_int{4, 24, 17, 47}},
+- {"net.inet6.ip6.maxifprefixes", []_C_int{4, 24, 17, 46}},
+ {"net.inet6.ip6.mforwarding", []_C_int{4, 24, 17, 42}},
++ {"net.inet6.ip6.mrtmfc", []_C_int{4, 24, 17, 53}},
++ {"net.inet6.ip6.mrtmif", []_C_int{4, 24, 17, 52}},
+ {"net.inet6.ip6.mrtproto", []_C_int{4, 24, 17, 8}},
+ {"net.inet6.ip6.mtudisctimeout", []_C_int{4, 24, 17, 50}},
+ {"net.inet6.ip6.multicast_mtudisc", []_C_int{4, 24, 17, 44}},
+ {"net.inet6.ip6.multipath", []_C_int{4, 24, 17, 43}},
+ {"net.inet6.ip6.neighborgcthresh", []_C_int{4, 24, 17, 45}},
+ {"net.inet6.ip6.redirect", []_C_int{4, 24, 17, 2}},
+- {"net.inet6.ip6.rr_prune", []_C_int{4, 24, 17, 22}},
++ {"net.inet6.ip6.soiikey", []_C_int{4, 24, 17, 54}},
+ {"net.inet6.ip6.sourcecheck", []_C_int{4, 24, 17, 10}},
+ {"net.inet6.ip6.sourcecheck_logint", []_C_int{4, 24, 17, 11}},
+ {"net.inet6.ip6.use_deprecated", []_C_int{4, 24, 17, 21}},
+- {"net.inet6.ip6.v6only", []_C_int{4, 24, 17, 24}},
+ {"net.key.sadb_dump", []_C_int{4, 30, 1}},
+ {"net.key.spd_dump", []_C_int{4, 30, 2}},
+ {"net.mpls.ifq.congestion", []_C_int{4, 33, 3, 4}},
+diff --git a/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go
+similarity index 99%
+copy from vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
+copy to vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go
+index 83bb935b..6eb8c0b0 100644
+--- a/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
++++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go
+@@ -1,5 +1,7 @@
+-// mksysctl_openbsd.pl
+-// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
++// go run mksysctl_openbsd.go
++// Code generated by the command above; DO NOT EDIT.
++
++// +build arm,openbsd
+
+ package unix
+
+diff --git a/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go
+similarity index 91%
+rename from vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
+rename to vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go
+index 83bb935b..ba4304fd 100644
+--- a/vendor/golang.org/x/sys/unix/zsysctl_openbsd.go
++++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go
+@@ -1,5 +1,7 @@
+-// mksysctl_openbsd.pl
+-// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
++// go run mksysctl_openbsd.go
++// Code generated by the command above; DO NOT EDIT.
++
++// +build arm64,openbsd
+
+ package unix
+
+@@ -14,6 +16,7 @@ var sysctlMib = []mibentry{
+ {"ddb.max_line", []_C_int{9, 3}},
+ {"ddb.max_width", []_C_int{9, 2}},
+ {"ddb.panic", []_C_int{9, 5}},
++ {"ddb.profile", []_C_int{9, 9}},
+ {"ddb.radix", []_C_int{9, 1}},
+ {"ddb.tab_stop_width", []_C_int{9, 4}},
+ {"ddb.trigger", []_C_int{9, 8}},
+@@ -28,17 +31,21 @@ var sysctlMib = []mibentry{
+ {"hw.model", []_C_int{6, 2}},
+ {"hw.ncpu", []_C_int{6, 3}},
+ {"hw.ncpufound", []_C_int{6, 21}},
++ {"hw.ncpuonline", []_C_int{6, 25}},
+ {"hw.pagesize", []_C_int{6, 7}},
++ {"hw.perfpolicy", []_C_int{6, 23}},
+ {"hw.physmem", []_C_int{6, 19}},
+ {"hw.product", []_C_int{6, 15}},
+ {"hw.serialno", []_C_int{6, 17}},
+ {"hw.setperf", []_C_int{6, 13}},
++ {"hw.smt", []_C_int{6, 24}},
+ {"hw.usermem", []_C_int{6, 20}},
+ {"hw.uuid", []_C_int{6, 18}},
+ {"hw.vendor", []_C_int{6, 14}},
+ {"hw.version", []_C_int{6, 16}},
+- {"kern.arandom", []_C_int{1, 37}},
++ {"kern.allowkmem", []_C_int{1, 52}},
+ {"kern.argmax", []_C_int{1, 8}},
++ {"kern.audio", []_C_int{1, 84}},
+ {"kern.boottime", []_C_int{1, 21}},
+ {"kern.bufcachepercent", []_C_int{1, 72}},
+ {"kern.ccpu", []_C_int{1, 45}},
+@@ -46,12 +53,13 @@ var sysctlMib = []mibentry{
+ {"kern.consdev", []_C_int{1, 75}},
+ {"kern.cp_time", []_C_int{1, 40}},
+ {"kern.cp_time2", []_C_int{1, 71}},
+- {"kern.cryptodevallowsoft", []_C_int{1, 53}},
++ {"kern.cpustats", []_C_int{1, 85}},
+ {"kern.domainname", []_C_int{1, 22}},
+ {"kern.file", []_C_int{1, 73}},
+ {"kern.forkstat", []_C_int{1, 42}},
+ {"kern.fscale", []_C_int{1, 46}},
+ {"kern.fsync", []_C_int{1, 33}},
++ {"kern.global_ptrace", []_C_int{1, 81}},
+ {"kern.hostid", []_C_int{1, 11}},
+ {"kern.hostname", []_C_int{1, 10}},
+ {"kern.intrcnt.nintrcnt", []_C_int{1, 63, 1}},
+@@ -84,7 +92,6 @@ var sysctlMib = []mibentry{
+ {"kern.pool_debug", []_C_int{1, 77}},
+ {"kern.posix1version", []_C_int{1, 17}},
+ {"kern.proc", []_C_int{1, 66}},
+- {"kern.random", []_C_int{1, 31}},
+ {"kern.rawpartition", []_C_int{1, 24}},
+ {"kern.saved_ids", []_C_int{1, 20}},
+ {"kern.securelevel", []_C_int{1, 9}},
+@@ -102,21 +109,17 @@ var sysctlMib = []mibentry{
+ {"kern.timecounter.hardware", []_C_int{1, 69, 3}},
+ {"kern.timecounter.tick", []_C_int{1, 69, 1}},
+ {"kern.timecounter.timestepwarnings", []_C_int{1, 69, 2}},
+- {"kern.tty.maxptys", []_C_int{1, 44, 6}},
+- {"kern.tty.nptys", []_C_int{1, 44, 7}},
+ {"kern.tty.tk_cancc", []_C_int{1, 44, 4}},
+ {"kern.tty.tk_nin", []_C_int{1, 44, 1}},
+ {"kern.tty.tk_nout", []_C_int{1, 44, 2}},
+ {"kern.tty.tk_rawcc", []_C_int{1, 44, 3}},
+ {"kern.tty.ttyinfo", []_C_int{1, 44, 5}},
+ {"kern.ttycount", []_C_int{1, 57}},
+- {"kern.userasymcrypto", []_C_int{1, 60}},
+- {"kern.usercrypto", []_C_int{1, 52}},
+- {"kern.usermount", []_C_int{1, 30}},
+ {"kern.version", []_C_int{1, 4}},
+- {"kern.vnode", []_C_int{1, 13}},
+ {"kern.watchdog.auto", []_C_int{1, 64, 2}},
+ {"kern.watchdog.period", []_C_int{1, 64, 1}},
++ {"kern.witnesswatch", []_C_int{1, 53}},
++ {"kern.wxabort", []_C_int{1, 74}},
+ {"net.bpf.bufsize", []_C_int{4, 31, 1}},
+ {"net.bpf.maxbufsize", []_C_int{4, 31, 2}},
+ {"net.inet.ah.enable", []_C_int{4, 2, 51, 1}},
+@@ -144,7 +147,9 @@ var sysctlMib = []mibentry{
+ {"net.inet.icmp.stats", []_C_int{4, 2, 1, 7}},
+ {"net.inet.icmp.tstamprepl", []_C_int{4, 2, 1, 6}},
+ {"net.inet.igmp.stats", []_C_int{4, 2, 2, 1}},
++ {"net.inet.ip.arpdown", []_C_int{4, 2, 0, 40}},
+ {"net.inet.ip.arpqueued", []_C_int{4, 2, 0, 36}},
++ {"net.inet.ip.arptimeout", []_C_int{4, 2, 0, 39}},
+ {"net.inet.ip.encdebug", []_C_int{4, 2, 0, 12}},
+ {"net.inet.ip.forwarding", []_C_int{4, 2, 0, 1}},
+ {"net.inet.ip.ifq.congestion", []_C_int{4, 2, 0, 30, 4}},
+@@ -153,8 +158,10 @@ var sysctlMib = []mibentry{
+ {"net.inet.ip.ifq.maxlen", []_C_int{4, 2, 0, 30, 2}},
+ {"net.inet.ip.maxqueue", []_C_int{4, 2, 0, 11}},
+ {"net.inet.ip.mforwarding", []_C_int{4, 2, 0, 31}},
++ {"net.inet.ip.mrtmfc", []_C_int{4, 2, 0, 37}},
+ {"net.inet.ip.mrtproto", []_C_int{4, 2, 0, 34}},
+ {"net.inet.ip.mrtstats", []_C_int{4, 2, 0, 35}},
++ {"net.inet.ip.mrtvif", []_C_int{4, 2, 0, 38}},
+ {"net.inet.ip.mtu", []_C_int{4, 2, 0, 4}},
+ {"net.inet.ip.mtudisc", []_C_int{4, 2, 0, 27}},
+ {"net.inet.ip.mtudisctimeout", []_C_int{4, 2, 0, 28}},
+@@ -173,7 +180,6 @@ var sysctlMib = []mibentry{
+ {"net.inet.ipip.stats", []_C_int{4, 2, 4, 2}},
+ {"net.inet.mobileip.allow", []_C_int{4, 2, 55, 1}},
+ {"net.inet.pfsync.stats", []_C_int{4, 2, 240, 1}},
+- {"net.inet.pim.stats", []_C_int{4, 2, 103, 1}},
+ {"net.inet.tcp.ackonpush", []_C_int{4, 2, 6, 13}},
+ {"net.inet.tcp.always_keepalive", []_C_int{4, 2, 6, 22}},
+ {"net.inet.tcp.baddynamic", []_C_int{4, 2, 6, 6}},
+@@ -187,6 +193,7 @@ var sysctlMib = []mibentry{
+ {"net.inet.tcp.reasslimit", []_C_int{4, 2, 6, 18}},
+ {"net.inet.tcp.rfc1323", []_C_int{4, 2, 6, 1}},
+ {"net.inet.tcp.rfc3390", []_C_int{4, 2, 6, 17}},
++ {"net.inet.tcp.rootonly", []_C_int{4, 2, 6, 24}},
+ {"net.inet.tcp.rstppslimit", []_C_int{4, 2, 6, 12}},
+ {"net.inet.tcp.sack", []_C_int{4, 2, 6, 10}},
+ {"net.inet.tcp.sackholelimit", []_C_int{4, 2, 6, 20}},
+@@ -194,9 +201,12 @@ var sysctlMib = []mibentry{
+ {"net.inet.tcp.stats", []_C_int{4, 2, 6, 21}},
+ {"net.inet.tcp.synbucketlimit", []_C_int{4, 2, 6, 16}},
+ {"net.inet.tcp.syncachelimit", []_C_int{4, 2, 6, 15}},
++ {"net.inet.tcp.synhashsize", []_C_int{4, 2, 6, 25}},
++ {"net.inet.tcp.synuselimit", []_C_int{4, 2, 6, 23}},
+ {"net.inet.udp.baddynamic", []_C_int{4, 2, 17, 2}},
+ {"net.inet.udp.checksum", []_C_int{4, 2, 17, 1}},
+ {"net.inet.udp.recvspace", []_C_int{4, 2, 17, 3}},
++ {"net.inet.udp.rootonly", []_C_int{4, 2, 17, 6}},
+ {"net.inet.udp.sendspace", []_C_int{4, 2, 17, 4}},
+ {"net.inet.udp.stats", []_C_int{4, 2, 17, 5}},
+ {"net.inet6.divert.recvspace", []_C_int{4, 24, 86, 1}},
+@@ -209,13 +219,8 @@ var sysctlMib = []mibentry{
+ {"net.inet6.icmp6.nd6_delay", []_C_int{4, 24, 30, 8}},
+ {"net.inet6.icmp6.nd6_maxnudhint", []_C_int{4, 24, 30, 15}},
+ {"net.inet6.icmp6.nd6_mmaxtries", []_C_int{4, 24, 30, 10}},
+- {"net.inet6.icmp6.nd6_prune", []_C_int{4, 24, 30, 6}},
+ {"net.inet6.icmp6.nd6_umaxtries", []_C_int{4, 24, 30, 9}},
+- {"net.inet6.icmp6.nd6_useloopback", []_C_int{4, 24, 30, 11}},
+- {"net.inet6.icmp6.nodeinfo", []_C_int{4, 24, 30, 13}},
+- {"net.inet6.icmp6.rediraccept", []_C_int{4, 24, 30, 2}},
+ {"net.inet6.icmp6.redirtimeout", []_C_int{4, 24, 30, 3}},
+- {"net.inet6.ip6.accept_rtadv", []_C_int{4, 24, 17, 12}},
+ {"net.inet6.ip6.auto_flowlabel", []_C_int{4, 24, 17, 17}},
+ {"net.inet6.ip6.dad_count", []_C_int{4, 24, 17, 16}},
+ {"net.inet6.ip6.dad_pending", []_C_int{4, 24, 17, 49}},
+@@ -228,20 +233,19 @@ var sysctlMib = []mibentry{
+ {"net.inet6.ip6.maxdynroutes", []_C_int{4, 24, 17, 48}},
+ {"net.inet6.ip6.maxfragpackets", []_C_int{4, 24, 17, 9}},
+ {"net.inet6.ip6.maxfrags", []_C_int{4, 24, 17, 41}},
+- {"net.inet6.ip6.maxifdefrouters", []_C_int{4, 24, 17, 47}},
+- {"net.inet6.ip6.maxifprefixes", []_C_int{4, 24, 17, 46}},
+ {"net.inet6.ip6.mforwarding", []_C_int{4, 24, 17, 42}},
++ {"net.inet6.ip6.mrtmfc", []_C_int{4, 24, 17, 53}},
++ {"net.inet6.ip6.mrtmif", []_C_int{4, 24, 17, 52}},
+ {"net.inet6.ip6.mrtproto", []_C_int{4, 24, 17, 8}},
+ {"net.inet6.ip6.mtudisctimeout", []_C_int{4, 24, 17, 50}},
+ {"net.inet6.ip6.multicast_mtudisc", []_C_int{4, 24, 17, 44}},
+ {"net.inet6.ip6.multipath", []_C_int{4, 24, 17, 43}},
+ {"net.inet6.ip6.neighborgcthresh", []_C_int{4, 24, 17, 45}},
+ {"net.inet6.ip6.redirect", []_C_int{4, 24, 17, 2}},
+- {"net.inet6.ip6.rr_prune", []_C_int{4, 24, 17, 22}},
++ {"net.inet6.ip6.soiikey", []_C_int{4, 24, 17, 54}},
+ {"net.inet6.ip6.sourcecheck", []_C_int{4, 24, 17, 10}},
+ {"net.inet6.ip6.sourcecheck_logint", []_C_int{4, 24, 17, 11}},
+ {"net.inet6.ip6.use_deprecated", []_C_int{4, 24, 17, 21}},
+- {"net.inet6.ip6.v6only", []_C_int{4, 24, 17, 24}},
+ {"net.key.sadb_dump", []_C_int{4, 30, 1}},
+ {"net.key.spd_dump", []_C_int{4, 30, 2}},
+ {"net.mpls.ifq.congestion", []_C_int{4, 33, 3, 4}},
+@@ -256,6 +260,7 @@ var sysctlMib = []mibentry{
+ {"net.pipex.enable", []_C_int{4, 35, 1}},
+ {"vm.anonmin", []_C_int{2, 7}},
+ {"vm.loadavg", []_C_int{2, 2}},
++ {"vm.malloc_conf", []_C_int{2, 12}},
+ {"vm.maxslp", []_C_int{2, 10}},
+ {"vm.nkmempages", []_C_int{2, 6}},
+ {"vm.psstrings", []_C_int{2, 3}},
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go
+index 2786773b..f3361453 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go
+@@ -1,5 +1,5 @@
+-// mksysnum_darwin.pl /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/sys/syscall.h
+-// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
++// go run mksysnum.go /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/include/sys/syscall.h
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build 386,darwin
+
+@@ -121,13 +121,15 @@ const (
+ SYS_CSOPS = 169
+ SYS_CSOPS_AUDITTOKEN = 170
+ SYS_WAITID = 173
++ SYS_KDEBUG_TYPEFILTER = 177
++ SYS_KDEBUG_TRACE_STRING = 178
+ SYS_KDEBUG_TRACE64 = 179
+ SYS_KDEBUG_TRACE = 180
+ SYS_SETGID = 181
+ SYS_SETEGID = 182
+ SYS_SETEUID = 183
+ SYS_SIGRETURN = 184
+- SYS_CHUD = 185
++ SYS_THREAD_SELFCOUNTS = 186
+ SYS_FDATASYNC = 187
+ SYS_STAT = 188
+ SYS_FSTAT = 189
+@@ -278,7 +280,6 @@ const (
+ SYS_KQUEUE = 362
+ SYS_KEVENT = 363
+ SYS_LCHOWN = 364
+- SYS_STACK_SNAPSHOT = 365
+ SYS_BSDTHREAD_REGISTER = 366
+ SYS_WORKQ_OPEN = 367
+ SYS_WORKQ_KERNRETURN = 368
+@@ -287,6 +288,8 @@ const (
+ SYS___OLD_SEMWAIT_SIGNAL_NOCANCEL = 371
+ SYS_THREAD_SELFID = 372
+ SYS_LEDGER = 373
++ SYS_KEVENT_QOS = 374
++ SYS_KEVENT_ID = 375
+ SYS___MAC_EXECVE = 380
+ SYS___MAC_SYSCALL = 381
+ SYS___MAC_GET_FILE = 382
+@@ -298,11 +301,8 @@ const (
+ SYS___MAC_GET_FD = 388
+ SYS___MAC_SET_FD = 389
+ SYS___MAC_GET_PID = 390
+- SYS___MAC_GET_LCID = 391
+- SYS___MAC_GET_LCTX = 392
+- SYS___MAC_SET_LCTX = 393
+- SYS_SETLCID = 394
+- SYS_GETLCID = 395
++ SYS_PSELECT = 394
++ SYS_PSELECT_NOCANCEL = 395
+ SYS_READ_NOCANCEL = 396
+ SYS_WRITE_NOCANCEL = 397
+ SYS_OPEN_NOCANCEL = 398
+@@ -351,6 +351,7 @@ const (
+ SYS_GUARDED_CLOSE_NP = 442
+ SYS_GUARDED_KQUEUE_NP = 443
+ SYS_CHANGE_FDGUARD_NP = 444
++ SYS_USRCTL = 445
+ SYS_PROC_RLIMIT_CONTROL = 446
+ SYS_CONNECTX = 447
+ SYS_DISCONNECTX = 448
+@@ -367,6 +368,7 @@ const (
+ SYS_COALITION_INFO = 459
+ SYS_NECP_MATCH_POLICY = 460
+ SYS_GETATTRLISTBULK = 461
++ SYS_CLONEFILEAT = 462
+ SYS_OPENAT = 463
+ SYS_OPENAT_NOCANCEL = 464
+ SYS_RENAMEAT = 465
+@@ -392,7 +394,43 @@ const (
+ SYS_GUARDED_WRITE_NP = 485
+ SYS_GUARDED_PWRITE_NP = 486
+ SYS_GUARDED_WRITEV_NP = 487
+- SYS_RENAME_EXT = 488
++ SYS_RENAMEATX_NP = 488
+ SYS_MREMAP_ENCRYPTED = 489
+- SYS_MAXSYSCALL = 490
++ SYS_NETAGENT_TRIGGER = 490
++ SYS_STACK_SNAPSHOT_WITH_CONFIG = 491
++ SYS_MICROSTACKSHOT = 492
++ SYS_GRAB_PGO_DATA = 493
++ SYS_PERSONA = 494
++ SYS_WORK_INTERVAL_CTL = 499
++ SYS_GETENTROPY = 500
++ SYS_NECP_OPEN = 501
++ SYS_NECP_CLIENT_ACTION = 502
++ SYS___NEXUS_OPEN = 503
++ SYS___NEXUS_REGISTER = 504
++ SYS___NEXUS_DEREGISTER = 505
++ SYS___NEXUS_CREATE = 506
++ SYS___NEXUS_DESTROY = 507
++ SYS___NEXUS_GET_OPT = 508
++ SYS___NEXUS_SET_OPT = 509
++ SYS___CHANNEL_OPEN = 510
++ SYS___CHANNEL_GET_INFO = 511
++ SYS___CHANNEL_SYNC = 512
++ SYS___CHANNEL_GET_OPT = 513
++ SYS___CHANNEL_SET_OPT = 514
++ SYS_ULOCK_WAIT = 515
++ SYS_ULOCK_WAKE = 516
++ SYS_FCLONEFILEAT = 517
++ SYS_FS_SNAPSHOT = 518
++ SYS_TERMINATE_WITH_PAYLOAD = 520
++ SYS_ABORT_WITH_PAYLOAD = 521
++ SYS_NECP_SESSION_OPEN = 522
++ SYS_NECP_SESSION_ACTION = 523
++ SYS_SETATTRLISTAT = 524
++ SYS_NET_QOS_GUIDELINE = 525
++ SYS_FMOUNT = 526
++ SYS_NTP_ADJTIME = 527
++ SYS_NTP_GETTIME = 528
++ SYS_OS_FAULT_WITH_PAYLOAD = 529
++ SYS_MAXSYSCALL = 530
++ SYS_INVALID = 63
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go
+index 09de240c..654dd3da 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go
+@@ -1,5 +1,5 @@
+-// mksysnum_darwin.pl /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/sys/syscall.h
+-// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
++// go run mksysnum.go /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/syscall.h
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build amd64,darwin
+
+@@ -121,13 +121,15 @@ const (
+ SYS_CSOPS = 169
+ SYS_CSOPS_AUDITTOKEN = 170
+ SYS_WAITID = 173
++ SYS_KDEBUG_TYPEFILTER = 177
++ SYS_KDEBUG_TRACE_STRING = 178
+ SYS_KDEBUG_TRACE64 = 179
+ SYS_KDEBUG_TRACE = 180
+ SYS_SETGID = 181
+ SYS_SETEGID = 182
+ SYS_SETEUID = 183
+ SYS_SIGRETURN = 184
+- SYS_CHUD = 185
++ SYS_THREAD_SELFCOUNTS = 186
+ SYS_FDATASYNC = 187
+ SYS_STAT = 188
+ SYS_FSTAT = 189
+@@ -278,7 +280,6 @@ const (
+ SYS_KQUEUE = 362
+ SYS_KEVENT = 363
+ SYS_LCHOWN = 364
+- SYS_STACK_SNAPSHOT = 365
+ SYS_BSDTHREAD_REGISTER = 366
+ SYS_WORKQ_OPEN = 367
+ SYS_WORKQ_KERNRETURN = 368
+@@ -287,6 +288,8 @@ const (
+ SYS___OLD_SEMWAIT_SIGNAL_NOCANCEL = 371
+ SYS_THREAD_SELFID = 372
+ SYS_LEDGER = 373
++ SYS_KEVENT_QOS = 374
++ SYS_KEVENT_ID = 375
+ SYS___MAC_EXECVE = 380
+ SYS___MAC_SYSCALL = 381
+ SYS___MAC_GET_FILE = 382
+@@ -298,11 +301,8 @@ const (
+ SYS___MAC_GET_FD = 388
+ SYS___MAC_SET_FD = 389
+ SYS___MAC_GET_PID = 390
+- SYS___MAC_GET_LCID = 391
+- SYS___MAC_GET_LCTX = 392
+- SYS___MAC_SET_LCTX = 393
+- SYS_SETLCID = 394
+- SYS_GETLCID = 395
++ SYS_PSELECT = 394
++ SYS_PSELECT_NOCANCEL = 395
+ SYS_READ_NOCANCEL = 396
+ SYS_WRITE_NOCANCEL = 397
+ SYS_OPEN_NOCANCEL = 398
+@@ -351,6 +351,7 @@ const (
+ SYS_GUARDED_CLOSE_NP = 442
+ SYS_GUARDED_KQUEUE_NP = 443
+ SYS_CHANGE_FDGUARD_NP = 444
++ SYS_USRCTL = 445
+ SYS_PROC_RLIMIT_CONTROL = 446
+ SYS_CONNECTX = 447
+ SYS_DISCONNECTX = 448
+@@ -367,6 +368,7 @@ const (
+ SYS_COALITION_INFO = 459
+ SYS_NECP_MATCH_POLICY = 460
+ SYS_GETATTRLISTBULK = 461
++ SYS_CLONEFILEAT = 462
+ SYS_OPENAT = 463
+ SYS_OPENAT_NOCANCEL = 464
+ SYS_RENAMEAT = 465
+@@ -392,7 +394,45 @@ const (
+ SYS_GUARDED_WRITE_NP = 485
+ SYS_GUARDED_PWRITE_NP = 486
+ SYS_GUARDED_WRITEV_NP = 487
+- SYS_RENAME_EXT = 488
++ SYS_RENAMEATX_NP = 488
+ SYS_MREMAP_ENCRYPTED = 489
+- SYS_MAXSYSCALL = 490
++ SYS_NETAGENT_TRIGGER = 490
++ SYS_STACK_SNAPSHOT_WITH_CONFIG = 491
++ SYS_MICROSTACKSHOT = 492
++ SYS_GRAB_PGO_DATA = 493
++ SYS_PERSONA = 494
++ SYS_WORK_INTERVAL_CTL = 499
++ SYS_GETENTROPY = 500
++ SYS_NECP_OPEN = 501
++ SYS_NECP_CLIENT_ACTION = 502
++ SYS___NEXUS_OPEN = 503
++ SYS___NEXUS_REGISTER = 504
++ SYS___NEXUS_DEREGISTER = 505
++ SYS___NEXUS_CREATE = 506
++ SYS___NEXUS_DESTROY = 507
++ SYS___NEXUS_GET_OPT = 508
++ SYS___NEXUS_SET_OPT = 509
++ SYS___CHANNEL_OPEN = 510
++ SYS___CHANNEL_GET_INFO = 511
++ SYS___CHANNEL_SYNC = 512
++ SYS___CHANNEL_GET_OPT = 513
++ SYS___CHANNEL_SET_OPT = 514
++ SYS_ULOCK_WAIT = 515
++ SYS_ULOCK_WAKE = 516
++ SYS_FCLONEFILEAT = 517
++ SYS_FS_SNAPSHOT = 518
++ SYS_TERMINATE_WITH_PAYLOAD = 520
++ SYS_ABORT_WITH_PAYLOAD = 521
++ SYS_NECP_SESSION_OPEN = 522
++ SYS_NECP_SESSION_ACTION = 523
++ SYS_SETATTRLISTAT = 524
++ SYS_NET_QOS_GUIDELINE = 525
++ SYS_FMOUNT = 526
++ SYS_NTP_ADJTIME = 527
++ SYS_NTP_GETTIME = 528
++ SYS_OS_FAULT_WITH_PAYLOAD = 529
++ SYS_KQUEUE_WORKLOOP_CTL = 530
++ SYS___MACH_BRIDGE_REMOTE_TIME = 531
++ SYS_MAXSYSCALL = 532
++ SYS_INVALID = 63
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go
+index 41cb6ed3..103a72ed 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go
+@@ -1,4 +1,4 @@
+-// mksysnum_darwin.pl /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.2.sdk/usr/include/sys/syscall.h
++// go run mksysnum.go /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.1.sdk/usr/include/sys/syscall.h
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build arm,darwin
+@@ -129,6 +129,7 @@ const (
+ SYS_SETEGID = 182
+ SYS_SETEUID = 183
+ SYS_SIGRETURN = 184
++ SYS_THREAD_SELFCOUNTS = 186
+ SYS_FDATASYNC = 187
+ SYS_STAT = 188
+ SYS_FSTAT = 189
+@@ -288,6 +289,7 @@ const (
+ SYS_THREAD_SELFID = 372
+ SYS_LEDGER = 373
+ SYS_KEVENT_QOS = 374
++ SYS_KEVENT_ID = 375
+ SYS___MAC_EXECVE = 380
+ SYS___MAC_SYSCALL = 381
+ SYS___MAC_GET_FILE = 382
+@@ -421,6 +423,14 @@ const (
+ SYS_FS_SNAPSHOT = 518
+ SYS_TERMINATE_WITH_PAYLOAD = 520
+ SYS_ABORT_WITH_PAYLOAD = 521
+- SYS_MAXSYSCALL = 522
++ SYS_NECP_SESSION_OPEN = 522
++ SYS_NECP_SESSION_ACTION = 523
++ SYS_SETATTRLISTAT = 524
++ SYS_NET_QOS_GUIDELINE = 525
++ SYS_FMOUNT = 526
++ SYS_NTP_ADJTIME = 527
++ SYS_NTP_GETTIME = 528
++ SYS_OS_FAULT_WITH_PAYLOAD = 529
++ SYS_MAXSYSCALL = 530
+ SYS_INVALID = 63
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go
+index 075816c3..7ab2130b 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go
+@@ -1,4 +1,4 @@
+-// mksysnum_darwin.pl /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.2.sdk/usr/include/sys/syscall.h
++// go run mksysnum.go /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.1.sdk/usr/include/sys/syscall.h
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build arm64,darwin
+@@ -129,6 +129,7 @@ const (
+ SYS_SETEGID = 182
+ SYS_SETEUID = 183
+ SYS_SIGRETURN = 184
++ SYS_THREAD_SELFCOUNTS = 186
+ SYS_FDATASYNC = 187
+ SYS_STAT = 188
+ SYS_FSTAT = 189
+@@ -288,6 +289,7 @@ const (
+ SYS_THREAD_SELFID = 372
+ SYS_LEDGER = 373
+ SYS_KEVENT_QOS = 374
++ SYS_KEVENT_ID = 375
+ SYS___MAC_EXECVE = 380
+ SYS___MAC_SYSCALL = 381
+ SYS___MAC_GET_FILE = 382
+@@ -421,6 +423,14 @@ const (
+ SYS_FS_SNAPSHOT = 518
+ SYS_TERMINATE_WITH_PAYLOAD = 520
+ SYS_ABORT_WITH_PAYLOAD = 521
+- SYS_MAXSYSCALL = 522
++ SYS_NECP_SESSION_OPEN = 522
++ SYS_NECP_SESSION_ACTION = 523
++ SYS_SETATTRLISTAT = 524
++ SYS_NET_QOS_GUIDELINE = 525
++ SYS_FMOUNT = 526
++ SYS_NTP_ADJTIME = 527
++ SYS_NTP_GETTIME = 528
++ SYS_OS_FAULT_WITH_PAYLOAD = 529
++ SYS_MAXSYSCALL = 530
+ SYS_INVALID = 63
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go
+index b2c9ef81..464c9a98 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go
+@@ -1,4 +1,4 @@
+-// mksysnum_dragonfly.pl
++// go run mksysnum.go https://gitweb.dragonflybsd.org/dragonfly.git/blob_plain/HEAD:/sys/kern/syscalls.master
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build amd64,dragonfly
+@@ -13,7 +13,7 @@ const (
+ SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, size_t nbyte); }
+ SYS_OPEN = 5 // { int open(char *path, int flags, int mode); }
+ SYS_CLOSE = 6 // { int close(int fd); }
+- SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, \
++ SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, struct rusage *rusage); } wait4 wait_args int
+ SYS_LINK = 9 // { int link(char *path, char *link); }
+ SYS_UNLINK = 10 // { int unlink(char *path); }
+ SYS_CHDIR = 12 // { int chdir(char *path); }
+@@ -22,17 +22,17 @@ const (
+ SYS_CHMOD = 15 // { int chmod(char *path, int mode); }
+ SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); }
+ SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int
+- SYS_GETFSSTAT = 18 // { int getfsstat(struct statfs *buf, long bufsize, \
++ SYS_GETFSSTAT = 18 // { int getfsstat(struct statfs *buf, long bufsize, int flags); }
+ SYS_GETPID = 20 // { pid_t getpid(void); }
+- SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, \
++ SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); }
+ SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); }
+ SYS_SETUID = 23 // { int setuid(uid_t uid); }
+ SYS_GETUID = 24 // { uid_t getuid(void); }
+ SYS_GETEUID = 25 // { uid_t geteuid(void); }
+- SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, \
++ SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, int data); }
+ SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, int flags); }
+ SYS_SENDMSG = 28 // { int sendmsg(int s, caddr_t msg, int flags); }
+- SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, \
++ SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, int flags, caddr_t from, int *fromlenaddr); }
+ SYS_ACCEPT = 30 // { int accept(int s, caddr_t name, int *anamelen); }
+ SYS_GETPEERNAME = 31 // { int getpeername(int fdes, caddr_t asa, int *alen); }
+ SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, caddr_t asa, int *alen); }
+@@ -45,8 +45,8 @@ const (
+ SYS_DUP = 41 // { int dup(int fd); }
+ SYS_PIPE = 42 // { int pipe(void); }
+ SYS_GETEGID = 43 // { gid_t getegid(void); }
+- SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, \
+- SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, \
++ SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); }
++ SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); }
+ SYS_GETGID = 47 // { gid_t getgid(void); }
+ SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int namelen); }
+ SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); }
+@@ -67,32 +67,32 @@ const (
+ SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); }
+ SYS_MPROTECT = 74 // { int mprotect(void *addr, size_t len, int prot); }
+ SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); }
+- SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, \
++ SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); }
+ SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); }
+ SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, gid_t *gidset); }
+ SYS_GETPGRP = 81 // { int getpgrp(void); }
+ SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); }
+- SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, \
++ SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, struct itimerval *oitv); }
+ SYS_SWAPON = 85 // { int swapon(char *name); }
+ SYS_GETITIMER = 86 // { int getitimer(u_int which, struct itimerval *itv); }
+ SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); }
+ SYS_DUP2 = 90 // { int dup2(int from, int to); }
+ SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); }
+- SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, \
++ SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
+ SYS_FSYNC = 95 // { int fsync(int fd); }
+ SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, int prio); }
+ SYS_SOCKET = 97 // { int socket(int domain, int type, int protocol); }
+ SYS_CONNECT = 98 // { int connect(int s, caddr_t name, int namelen); }
+ SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); }
+ SYS_BIND = 104 // { int bind(int s, caddr_t name, int namelen); }
+- SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, \
++ SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, caddr_t val, int valsize); }
+ SYS_LISTEN = 106 // { int listen(int s, int backlog); }
+- SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, \
++ SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, struct timezone *tzp); }
+ SYS_GETRUSAGE = 117 // { int getrusage(int who, struct rusage *rusage); }
+- SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, \
++ SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, caddr_t val, int *avalsize); }
+ SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, u_int iovcnt); }
+- SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, \
+- SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, \
++ SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, u_int iovcnt); }
++ SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, struct timezone *tzp); }
+ SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); }
+ SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); }
+ SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); }
+@@ -100,15 +100,15 @@ const (
+ SYS_RENAME = 128 // { int rename(char *from, char *to); }
+ SYS_FLOCK = 131 // { int flock(int fd, int how); }
+ SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); }
+- SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, \
++ SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, int flags, caddr_t to, int tolen); }
+ SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); }
+- SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, \
++ SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, int *rsv); }
+ SYS_MKDIR = 136 // { int mkdir(char *path, int mode); }
+ SYS_RMDIR = 137 // { int rmdir(char *path); }
+ SYS_UTIMES = 138 // { int utimes(char *path, struct timeval *tptr); }
+- SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, \
++ SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, struct timeval *olddelta); }
+ SYS_SETSID = 147 // { int setsid(void); }
+- SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, \
++ SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, caddr_t arg); }
+ SYS_STATFS = 157 // { int statfs(char *path, struct statfs *buf); }
+ SYS_FSTATFS = 158 // { int fstatfs(int fd, struct statfs *buf); }
+ SYS_GETFH = 161 // { int getfh(char *fname, struct fhandle *fhp); }
+@@ -116,53 +116,53 @@ const (
+ SYS_SETDOMAINNAME = 163 // { int setdomainname(char *domainname, int len); }
+ SYS_UNAME = 164 // { int uname(struct utsname *name); }
+ SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); }
+- SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, \
+- SYS_EXTPREAD = 173 // { ssize_t extpread(int fd, void *buf, \
+- SYS_EXTPWRITE = 174 // { ssize_t extpwrite(int fd, const void *buf, \
++ SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, struct rtprio *rtp); }
++ SYS_EXTPREAD = 173 // { ssize_t extpread(int fd, void *buf, size_t nbyte, int flags, off_t offset); }
++ SYS_EXTPWRITE = 174 // { ssize_t extpwrite(int fd, const void *buf, size_t nbyte, int flags, off_t offset); }
+ SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); }
+ SYS_SETGID = 181 // { int setgid(gid_t gid); }
+ SYS_SETEGID = 182 // { int setegid(gid_t egid); }
+ SYS_SETEUID = 183 // { int seteuid(uid_t euid); }
+ SYS_PATHCONF = 191 // { int pathconf(char *path, int name); }
+ SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); }
+- SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, \
+- SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, \
+- SYS_MMAP = 197 // { caddr_t mmap(caddr_t addr, size_t len, int prot, \
++ SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int
++ SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int
++ SYS_MMAP = 197 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, int pad, off_t pos); }
+ // SYS_NOSYS = 198; // { int nosys(void); } __syscall __syscall_args int
+- SYS_LSEEK = 199 // { off_t lseek(int fd, int pad, off_t offset, \
++ SYS_LSEEK = 199 // { off_t lseek(int fd, int pad, off_t offset, int whence); }
+ SYS_TRUNCATE = 200 // { int truncate(char *path, int pad, off_t length); }
+ SYS_FTRUNCATE = 201 // { int ftruncate(int fd, int pad, off_t length); }
+- SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, \
++ SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } __sysctl sysctl_args int
+ SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); }
+ SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); }
+ SYS_UNDELETE = 205 // { int undelete(char *path); }
+ SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); }
+ SYS_GETPGID = 207 // { int getpgid(pid_t pid); }
+- SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, \
+- SYS___SEMCTL = 220 // { int __semctl(int semid, int semnum, int cmd, \
++ SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, int timeout); }
++ SYS___SEMCTL = 220 // { int __semctl(int semid, int semnum, int cmd, union semun *arg); }
+ SYS_SEMGET = 221 // { int semget(key_t key, int nsems, int semflg); }
+- SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, \
+- SYS_MSGCTL = 224 // { int msgctl(int msqid, int cmd, \
++ SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, u_int nsops); }
++ SYS_MSGCTL = 224 // { int msgctl(int msqid, int cmd, struct msqid_ds *buf); }
+ SYS_MSGGET = 225 // { int msgget(key_t key, int msgflg); }
+- SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, \
+- SYS_MSGRCV = 227 // { int msgrcv(int msqid, void *msgp, size_t msgsz, \
+- SYS_SHMAT = 228 // { caddr_t shmat(int shmid, const void *shmaddr, \
+- SYS_SHMCTL = 229 // { int shmctl(int shmid, int cmd, \
++ SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
++ SYS_MSGRCV = 227 // { int msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
++ SYS_SHMAT = 228 // { caddr_t shmat(int shmid, const void *shmaddr, int shmflg); }
++ SYS_SHMCTL = 229 // { int shmctl(int shmid, int cmd, struct shmid_ds *buf); }
+ SYS_SHMDT = 230 // { int shmdt(const void *shmaddr); }
+ SYS_SHMGET = 231 // { int shmget(key_t key, size_t size, int shmflg); }
+- SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, \
+- SYS_CLOCK_SETTIME = 233 // { int clock_settime(clockid_t clock_id, \
+- SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, \
+- SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, \
++ SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, struct timespec *tp); }
++ SYS_CLOCK_SETTIME = 233 // { int clock_settime(clockid_t clock_id, const struct timespec *tp); }
++ SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, struct timespec *tp); }
++ SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
+ SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, int inherit); }
+ SYS_RFORK = 251 // { int rfork(int flags); }
+- SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, u_int nfds, \
++ SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, u_int nfds, int timeout); }
+ SYS_ISSETUGID = 253 // { int issetugid(void); }
+ SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); }
+ SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); }
+ SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); }
+- SYS_EXTPREADV = 289 // { ssize_t extpreadv(int fd, struct iovec *iovp, \
+- SYS_EXTPWRITEV = 290 // { ssize_t extpwritev(int fd, struct iovec *iovp,\
++ SYS_EXTPREADV = 289 // { ssize_t extpreadv(int fd, struct iovec *iovp, u_int iovcnt, int flags, off_t offset); }
++ SYS_EXTPWRITEV = 290 // { ssize_t extpwritev(int fd, struct iovec *iovp,u_int iovcnt, int flags, off_t offset); }
+ SYS_FHSTATFS = 297 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); }
+ SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); }
+ SYS_MODNEXT = 300 // { int modnext(int modid); }
+@@ -200,34 +200,34 @@ const (
+ SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); }
+ SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, void *data); }
+ SYS_JAIL = 338 // { int jail(struct jail *jail); }
+- SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, const sigset_t *set, \
++ SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, const sigset_t *set, sigset_t *oset); }
+ SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); }
+- SYS_SIGACTION = 342 // { int sigaction(int sig, const struct sigaction *act, \
++ SYS_SIGACTION = 342 // { int sigaction(int sig, const struct sigaction *act, struct sigaction *oact); }
+ SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); }
+ SYS_SIGRETURN = 344 // { int sigreturn(ucontext_t *sigcntxp); }
+- SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set,\
+- SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set,\
+- SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, \
+- SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, \
+- SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, acl_type_t type, \
+- SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, acl_type_t type, \
+- SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, \
++ SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set,siginfo_t *info, const struct timespec *timeout); }
++ SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set,siginfo_t *info); }
++ SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, acl_type_t type); }
+ SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, acl_type_t type); }
+- SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, \
+- SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, \
+- SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, \
+- SYS_EXTATTR_SET_FILE = 356 // { int extattr_set_file(const char *path, \
+- SYS_EXTATTR_GET_FILE = 357 // { int extattr_get_file(const char *path, \
+- SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, \
++ SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, struct acl *aclp); }
++ SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, const char *filename, int attrnamespace, const char *attrname); }
++ SYS_EXTATTR_SET_FILE = 356 // { int extattr_set_file(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_GET_FILE = 357 // { int extattr_get_file(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, int attrnamespace, const char *attrname); }
+ SYS_AIO_WAITCOMPLETE = 359 // { int aio_waitcomplete(struct aiocb **aiocbp, struct timespec *timeout); }
+ SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
+ SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
+ SYS_KQUEUE = 362 // { int kqueue(void); }
+- SYS_KEVENT = 363 // { int kevent(int fd, \
++ SYS_KEVENT = 363 // { int kevent(int fd, const struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
+ SYS_KENV = 390 // { int kenv(int what, const char *name, char *value, int len); }
+ SYS_LCHFLAGS = 391 // { int lchflags(char *path, int flags); }
+ SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); }
+- SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, \
++ SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); }
+ SYS_VARSYM_SET = 450 // { int varsym_set(int level, const char *name, const char *data); }
+ SYS_VARSYM_GET = 451 // { int varsym_get(int mask, const char *wild, char *buf, int bufsize); }
+ SYS_VARSYM_LIST = 452 // { int varsym_list(int level, char *buf, int maxsize, int *marker); }
+@@ -245,58 +245,58 @@ const (
+ SYS_FSTAT = 476 // { int fstat(int fd, struct stat *sb); }
+ SYS_LSTAT = 477 // { int lstat(const char *path, struct stat *ub); }
+ SYS_FHSTAT = 478 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); }
+- SYS_GETDIRENTRIES = 479 // { int getdirentries(int fd, char *buf, u_int count, \
++ SYS_GETDIRENTRIES = 479 // { int getdirentries(int fd, char *buf, u_int count, long *basep); }
+ SYS_GETDENTS = 480 // { int getdents(int fd, char *buf, size_t count); }
+- SYS_USCHED_SET = 481 // { int usched_set(pid_t pid, int cmd, void *data, \
++ SYS_USCHED_SET = 481 // { int usched_set(pid_t pid, int cmd, void *data, int bytes); }
+ SYS_EXTACCEPT = 482 // { int extaccept(int s, int flags, caddr_t name, int *anamelen); }
+ SYS_EXTCONNECT = 483 // { int extconnect(int s, int flags, caddr_t name, int namelen); }
+ SYS_MCONTROL = 485 // { int mcontrol(void *addr, size_t len, int behav, off_t value); }
+ SYS_VMSPACE_CREATE = 486 // { int vmspace_create(void *id, int type, void *data); }
+ SYS_VMSPACE_DESTROY = 487 // { int vmspace_destroy(void *id); }
+- SYS_VMSPACE_CTL = 488 // { int vmspace_ctl(void *id, int cmd, \
+- SYS_VMSPACE_MMAP = 489 // { int vmspace_mmap(void *id, void *addr, size_t len, \
+- SYS_VMSPACE_MUNMAP = 490 // { int vmspace_munmap(void *id, void *addr, \
+- SYS_VMSPACE_MCONTROL = 491 // { int vmspace_mcontrol(void *id, void *addr, \
+- SYS_VMSPACE_PREAD = 492 // { ssize_t vmspace_pread(void *id, void *buf, \
+- SYS_VMSPACE_PWRITE = 493 // { ssize_t vmspace_pwrite(void *id, const void *buf, \
++ SYS_VMSPACE_CTL = 488 // { int vmspace_ctl(void *id, int cmd, struct trapframe *tframe, struct vextframe *vframe); }
++ SYS_VMSPACE_MMAP = 489 // { int vmspace_mmap(void *id, void *addr, size_t len, int prot, int flags, int fd, off_t offset); }
++ SYS_VMSPACE_MUNMAP = 490 // { int vmspace_munmap(void *id, void *addr, size_t len); }
++ SYS_VMSPACE_MCONTROL = 491 // { int vmspace_mcontrol(void *id, void *addr, size_t len, int behav, off_t value); }
++ SYS_VMSPACE_PREAD = 492 // { ssize_t vmspace_pread(void *id, void *buf, size_t nbyte, int flags, off_t offset); }
++ SYS_VMSPACE_PWRITE = 493 // { ssize_t vmspace_pwrite(void *id, const void *buf, size_t nbyte, int flags, off_t offset); }
+ SYS_EXTEXIT = 494 // { void extexit(int how, int status, void *addr); }
+ SYS_LWP_CREATE = 495 // { int lwp_create(struct lwp_params *params); }
+ SYS_LWP_GETTID = 496 // { lwpid_t lwp_gettid(void); }
+ SYS_LWP_KILL = 497 // { int lwp_kill(pid_t pid, lwpid_t tid, int signum); }
+ SYS_LWP_RTPRIO = 498 // { int lwp_rtprio(int function, pid_t pid, lwpid_t tid, struct rtprio *rtp); }
+- SYS_PSELECT = 499 // { int pselect(int nd, fd_set *in, fd_set *ou, \
++ SYS_PSELECT = 499 // { int pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *sigmask); }
+ SYS_STATVFS = 500 // { int statvfs(const char *path, struct statvfs *buf); }
+ SYS_FSTATVFS = 501 // { int fstatvfs(int fd, struct statvfs *buf); }
+ SYS_FHSTATVFS = 502 // { int fhstatvfs(const struct fhandle *u_fhp, struct statvfs *buf); }
+- SYS_GETVFSSTAT = 503 // { int getvfsstat(struct statfs *buf, \
++ SYS_GETVFSSTAT = 503 // { int getvfsstat(struct statfs *buf, struct statvfs *vbuf, long vbufsize, int flags); }
+ SYS_OPENAT = 504 // { int openat(int fd, char *path, int flags, int mode); }
+- SYS_FSTATAT = 505 // { int fstatat(int fd, char *path, \
+- SYS_FCHMODAT = 506 // { int fchmodat(int fd, char *path, int mode, \
+- SYS_FCHOWNAT = 507 // { int fchownat(int fd, char *path, int uid, int gid, \
++ SYS_FSTATAT = 505 // { int fstatat(int fd, char *path, struct stat *sb, int flags); }
++ SYS_FCHMODAT = 506 // { int fchmodat(int fd, char *path, int mode, int flags); }
++ SYS_FCHOWNAT = 507 // { int fchownat(int fd, char *path, int uid, int gid, int flags); }
+ SYS_UNLINKAT = 508 // { int unlinkat(int fd, char *path, int flags); }
+- SYS_FACCESSAT = 509 // { int faccessat(int fd, char *path, int amode, \
+- SYS_MQ_OPEN = 510 // { mqd_t mq_open(const char * name, int oflag, \
++ SYS_FACCESSAT = 509 // { int faccessat(int fd, char *path, int amode, int flags); }
++ SYS_MQ_OPEN = 510 // { mqd_t mq_open(const char * name, int oflag, mode_t mode, struct mq_attr *attr); }
+ SYS_MQ_CLOSE = 511 // { int mq_close(mqd_t mqdes); }
+ SYS_MQ_UNLINK = 512 // { int mq_unlink(const char *name); }
+- SYS_MQ_GETATTR = 513 // { int mq_getattr(mqd_t mqdes, \
+- SYS_MQ_SETATTR = 514 // { int mq_setattr(mqd_t mqdes, \
+- SYS_MQ_NOTIFY = 515 // { int mq_notify(mqd_t mqdes, \
+- SYS_MQ_SEND = 516 // { int mq_send(mqd_t mqdes, const char *msg_ptr, \
+- SYS_MQ_RECEIVE = 517 // { ssize_t mq_receive(mqd_t mqdes, char *msg_ptr, \
+- SYS_MQ_TIMEDSEND = 518 // { int mq_timedsend(mqd_t mqdes, \
+- SYS_MQ_TIMEDRECEIVE = 519 // { ssize_t mq_timedreceive(mqd_t mqdes, \
++ SYS_MQ_GETATTR = 513 // { int mq_getattr(mqd_t mqdes, struct mq_attr *mqstat); }
++ SYS_MQ_SETATTR = 514 // { int mq_setattr(mqd_t mqdes, const struct mq_attr *mqstat, struct mq_attr *omqstat); }
++ SYS_MQ_NOTIFY = 515 // { int mq_notify(mqd_t mqdes, const struct sigevent *notification); }
++ SYS_MQ_SEND = 516 // { int mq_send(mqd_t mqdes, const char *msg_ptr, size_t msg_len, unsigned msg_prio); }
++ SYS_MQ_RECEIVE = 517 // { ssize_t mq_receive(mqd_t mqdes, char *msg_ptr, size_t msg_len, unsigned *msg_prio); }
++ SYS_MQ_TIMEDSEND = 518 // { int mq_timedsend(mqd_t mqdes, const char *msg_ptr, size_t msg_len, unsigned msg_prio, const struct timespec *abs_timeout); }
++ SYS_MQ_TIMEDRECEIVE = 519 // { ssize_t mq_timedreceive(mqd_t mqdes, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); }
+ SYS_IOPRIO_SET = 520 // { int ioprio_set(int which, int who, int prio); }
+ SYS_IOPRIO_GET = 521 // { int ioprio_get(int which, int who); }
+ SYS_CHROOT_KERNEL = 522 // { int chroot_kernel(char *path); }
+- SYS_RENAMEAT = 523 // { int renameat(int oldfd, char *old, int newfd, \
++ SYS_RENAMEAT = 523 // { int renameat(int oldfd, char *old, int newfd, char *new); }
+ SYS_MKDIRAT = 524 // { int mkdirat(int fd, char *path, mode_t mode); }
+ SYS_MKFIFOAT = 525 // { int mkfifoat(int fd, char *path, mode_t mode); }
+- SYS_MKNODAT = 526 // { int mknodat(int fd, char *path, mode_t mode, \
+- SYS_READLINKAT = 527 // { int readlinkat(int fd, char *path, char *buf, \
++ SYS_MKNODAT = 526 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); }
++ SYS_READLINKAT = 527 // { int readlinkat(int fd, char *path, char *buf, size_t bufsize); }
+ SYS_SYMLINKAT = 528 // { int symlinkat(char *path1, int fd, char *path2); }
+ SYS_SWAPOFF = 529 // { int swapoff(char *name); }
+- SYS_VQUOTACTL = 530 // { int vquotactl(const char *path, \
+- SYS_LINKAT = 531 // { int linkat(int fd1, char *path1, int fd2, \
++ SYS_VQUOTACTL = 530 // { int vquotactl(const char *path, struct plistref *pref); }
++ SYS_LINKAT = 531 // { int linkat(int fd1, char *path1, int fd2, char *path2, int flags); }
+ SYS_EACCESS = 532 // { int eaccess(char *path, int flags); }
+ SYS_LPATHCONF = 533 // { int lpathconf(char *path, int name); }
+ SYS_VMM_GUEST_CTL = 534 // { int vmm_guest_ctl(int op, struct vmm_guest_options *options); }
+@@ -308,7 +308,7 @@ const (
+ SYS_FUTIMENS = 540 // { int futimens(int fd, const struct timespec *ts); }
+ SYS_ACCEPT4 = 541 // { int accept4(int s, caddr_t name, int *anamelen, int flags); }
+ SYS_LWP_SETNAME = 542 // { int lwp_setname(lwpid_t tid, const char *name); }
+- SYS_PPOLL = 543 // { int ppoll(struct pollfd *fds, u_int nfds, \
++ SYS_PPOLL = 543 // { int ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *sigmask); }
+ SYS_LWP_SETAFFINITY = 544 // { int lwp_setaffinity(pid_t pid, lwpid_t tid, const cpumask_t *mask); }
+ SYS_LWP_GETAFFINITY = 545 // { int lwp_getaffinity(pid_t pid, lwpid_t tid, cpumask_t *mask); }
+ SYS_LWP_CREATE2 = 546 // { int lwp_create2(struct lwp_params *params, const cpumask_t *mask); }
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go
+index b64a8122..9474974b 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go
+@@ -1,4 +1,4 @@
+-// mksysnum_freebsd.pl
++// go run mksysnum.go https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build 386,freebsd
+@@ -7,347 +7,390 @@ package unix
+
+ const (
+ // SYS_NOSYS = 0; // { int nosys(void); } syscall nosys_args int
+- SYS_EXIT = 1 // { void sys_exit(int rval); } exit \
+- SYS_FORK = 2 // { int fork(void); }
+- SYS_READ = 3 // { ssize_t read(int fd, void *buf, \
+- SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, \
+- SYS_OPEN = 5 // { int open(char *path, int flags, int mode); }
+- SYS_CLOSE = 6 // { int close(int fd); }
+- SYS_WAIT4 = 7 // { int wait4(int pid, int *status, \
+- SYS_LINK = 9 // { int link(char *path, char *link); }
+- SYS_UNLINK = 10 // { int unlink(char *path); }
+- SYS_CHDIR = 12 // { int chdir(char *path); }
+- SYS_FCHDIR = 13 // { int fchdir(int fd); }
+- SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); }
+- SYS_CHMOD = 15 // { int chmod(char *path, int mode); }
+- SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); }
+- SYS_OBREAK = 17 // { int obreak(char *nsize); } break \
+- SYS_GETPID = 20 // { pid_t getpid(void); }
+- SYS_MOUNT = 21 // { int mount(char *type, char *path, \
+- SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); }
+- SYS_SETUID = 23 // { int setuid(uid_t uid); }
+- SYS_GETUID = 24 // { uid_t getuid(void); }
+- SYS_GETEUID = 25 // { uid_t geteuid(void); }
+- SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, \
+- SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, \
+- SYS_SENDMSG = 28 // { int sendmsg(int s, struct msghdr *msg, \
+- SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, \
+- SYS_ACCEPT = 30 // { int accept(int s, \
+- SYS_GETPEERNAME = 31 // { int getpeername(int fdes, \
+- SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, \
+- SYS_ACCESS = 33 // { int access(char *path, int amode); }
+- SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); }
+- SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); }
+- SYS_SYNC = 36 // { int sync(void); }
+- SYS_KILL = 37 // { int kill(int pid, int signum); }
+- SYS_GETPPID = 39 // { pid_t getppid(void); }
+- SYS_DUP = 41 // { int dup(u_int fd); }
+- SYS_PIPE = 42 // { int pipe(void); }
+- SYS_GETEGID = 43 // { gid_t getegid(void); }
+- SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, \
+- SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, \
+- SYS_GETGID = 47 // { gid_t getgid(void); }
+- SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int \
+- SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); }
+- SYS_ACCT = 51 // { int acct(char *path); }
+- SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, \
+- SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, \
+- SYS_REBOOT = 55 // { int reboot(int opt); }
+- SYS_REVOKE = 56 // { int revoke(char *path); }
+- SYS_SYMLINK = 57 // { int symlink(char *path, char *link); }
+- SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, \
+- SYS_EXECVE = 59 // { int execve(char *fname, char **argv, \
+- SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args \
+- SYS_CHROOT = 61 // { int chroot(char *path); }
+- SYS_MSYNC = 65 // { int msync(void *addr, size_t len, \
+- SYS_VFORK = 66 // { int vfork(void); }
+- SYS_SBRK = 69 // { int sbrk(int incr); }
+- SYS_SSTK = 70 // { int sstk(int incr); }
+- SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise \
+- SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); }
+- SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, \
+- SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, \
+- SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, \
+- SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, \
+- SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, \
+- SYS_GETPGRP = 81 // { int getpgrp(void); }
+- SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); }
+- SYS_SETITIMER = 83 // { int setitimer(u_int which, struct \
+- SYS_SWAPON = 85 // { int swapon(char *name); }
+- SYS_GETITIMER = 86 // { int getitimer(u_int which, \
+- SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); }
+- SYS_DUP2 = 90 // { int dup2(u_int from, u_int to); }
+- SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); }
+- SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, \
+- SYS_FSYNC = 95 // { int fsync(int fd); }
+- SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, \
+- SYS_SOCKET = 97 // { int socket(int domain, int type, \
+- SYS_CONNECT = 98 // { int connect(int s, caddr_t name, \
+- SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); }
+- SYS_BIND = 104 // { int bind(int s, caddr_t name, \
+- SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, \
+- SYS_LISTEN = 106 // { int listen(int s, int backlog); }
+- SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, \
+- SYS_GETRUSAGE = 117 // { int getrusage(int who, \
+- SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, \
+- SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, \
+- SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, \
+- SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, \
+- SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); }
+- SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); }
+- SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); }
+- SYS_SETREGID = 127 // { int setregid(int rgid, int egid); }
+- SYS_RENAME = 128 // { int rename(char *from, char *to); }
+- SYS_FLOCK = 131 // { int flock(int fd, int how); }
+- SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); }
+- SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, \
+- SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); }
+- SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, \
+- SYS_MKDIR = 136 // { int mkdir(char *path, int mode); }
+- SYS_RMDIR = 137 // { int rmdir(char *path); }
+- SYS_UTIMES = 138 // { int utimes(char *path, \
+- SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, \
+- SYS_SETSID = 147 // { int setsid(void); }
+- SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, \
+- SYS_LGETFH = 160 // { int lgetfh(char *fname, \
+- SYS_GETFH = 161 // { int getfh(char *fname, \
+- SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); }
+- SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, \
+- SYS_FREEBSD6_PREAD = 173 // { ssize_t freebsd6_pread(int fd, void *buf, \
+- SYS_FREEBSD6_PWRITE = 174 // { ssize_t freebsd6_pwrite(int fd, \
+- SYS_SETFIB = 175 // { int setfib(int fibnum); }
+- SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); }
+- SYS_SETGID = 181 // { int setgid(gid_t gid); }
+- SYS_SETEGID = 182 // { int setegid(gid_t egid); }
+- SYS_SETEUID = 183 // { int seteuid(uid_t euid); }
+- SYS_STAT = 188 // { int stat(char *path, struct stat *ub); }
+- SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); }
+- SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); }
+- SYS_PATHCONF = 191 // { int pathconf(char *path, int name); }
+- SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); }
+- SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, \
+- SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, \
+- SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, \
+- SYS_FREEBSD6_MMAP = 197 // { caddr_t freebsd6_mmap(caddr_t addr, \
+- SYS_FREEBSD6_LSEEK = 199 // { off_t freebsd6_lseek(int fd, int pad, \
+- SYS_FREEBSD6_TRUNCATE = 200 // { int freebsd6_truncate(char *path, int pad, \
+- SYS_FREEBSD6_FTRUNCATE = 201 // { int freebsd6_ftruncate(int fd, int pad, \
+- SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, \
+- SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); }
+- SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); }
+- SYS_UNDELETE = 205 // { int undelete(char *path); }
+- SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); }
+- SYS_GETPGID = 207 // { int getpgid(pid_t pid); }
+- SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, \
+- SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, \
+- SYS_CLOCK_SETTIME = 233 // { int clock_settime( \
+- SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, \
+- SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, \
+- SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); }
+- SYS_KTIMER_SETTIME = 237 // { int ktimer_settime(int timerid, int flags, \
+- SYS_KTIMER_GETTIME = 238 // { int ktimer_gettime(int timerid, struct \
+- SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); }
+- SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, \
+- SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); }
+- SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( \
+- SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( \
+- SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,\
+- SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); }
+- SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, \
+- SYS_RFORK = 251 // { int rfork(int flags); }
+- SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, \
+- SYS_ISSETUGID = 253 // { int issetugid(void); }
+- SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); }
+- SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, \
+- SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); }
+- SYS_LUTIMES = 276 // { int lutimes(char *path, \
+- SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); }
+- SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); }
+- SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); }
+- SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, \
+- SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, \
+- SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, \
+- SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, \
+- SYS_MODNEXT = 300 // { int modnext(int modid); }
+- SYS_MODSTAT = 301 // { int modstat(int modid, \
+- SYS_MODFNEXT = 302 // { int modfnext(int modid); }
+- SYS_MODFIND = 303 // { int modfind(const char *name); }
+- SYS_KLDLOAD = 304 // { int kldload(const char *file); }
+- SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); }
+- SYS_KLDFIND = 306 // { int kldfind(const char *file); }
+- SYS_KLDNEXT = 307 // { int kldnext(int fileid); }
+- SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct \
+- SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); }
+- SYS_GETSID = 310 // { int getsid(pid_t pid); }
+- SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, \
+- SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, \
+- SYS_YIELD = 321 // { int yield(void); }
+- SYS_MLOCKALL = 324 // { int mlockall(int how); }
+- SYS_MUNLOCKALL = 325 // { int munlockall(void); }
+- SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); }
+- SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, \
+- SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct \
+- SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int \
+- SYS_SCHED_GETSCHEDULER = 330 // { int sched_getscheduler (pid_t pid); }
+- SYS_SCHED_YIELD = 331 // { int sched_yield (void); }
+- SYS_SCHED_GET_PRIORITY_MAX = 332 // { int sched_get_priority_max (int policy); }
+- SYS_SCHED_GET_PRIORITY_MIN = 333 // { int sched_get_priority_min (int policy); }
+- SYS_SCHED_RR_GET_INTERVAL = 334 // { int sched_rr_get_interval (pid_t pid, \
+- SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); }
+- SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, \
+- SYS_JAIL = 338 // { int jail(struct jail *jail); }
+- SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, \
+- SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); }
+- SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); }
+- SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set, \
+- SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set, \
+- SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, \
+- SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, \
+- SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, \
+- SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, \
+- SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, \
+- SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, \
+- SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, \
+- SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, \
+- SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, \
+- SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( \
+- SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( \
+- SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, \
+- SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, \
+- SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, \
+- SYS_KQUEUE = 362 // { int kqueue(void); }
+- SYS_KEVENT = 363 // { int kevent(int fd, \
+- SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, \
+- SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, \
+- SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, \
+- SYS___SETUGID = 374 // { int __setugid(int flag); }
+- SYS_EACCESS = 376 // { int eaccess(char *path, int amode); }
+- SYS_NMOUNT = 378 // { int nmount(struct iovec *iovp, \
+- SYS___MAC_GET_PROC = 384 // { int __mac_get_proc(struct mac *mac_p); }
+- SYS___MAC_SET_PROC = 385 // { int __mac_set_proc(struct mac *mac_p); }
+- SYS___MAC_GET_FD = 386 // { int __mac_get_fd(int fd, \
+- SYS___MAC_GET_FILE = 387 // { int __mac_get_file(const char *path_p, \
+- SYS___MAC_SET_FD = 388 // { int __mac_set_fd(int fd, \
+- SYS___MAC_SET_FILE = 389 // { int __mac_set_file(const char *path_p, \
+- SYS_KENV = 390 // { int kenv(int what, const char *name, \
+- SYS_LCHFLAGS = 391 // { int lchflags(const char *path, \
+- SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, \
+- SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, \
+- SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, \
+- SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, \
+- SYS_STATFS = 396 // { int statfs(char *path, \
+- SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); }
+- SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, \
+- SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, \
+- SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, \
+- SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, \
+- SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( \
+- SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( \
+- SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( \
+- SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, \
+- SYS_SIGACTION = 416 // { int sigaction(int sig, \
+- SYS_SIGRETURN = 417 // { int sigreturn( \
+- SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); }
+- SYS_SETCONTEXT = 422 // { int setcontext( \
+- SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, \
+- SYS_SWAPOFF = 424 // { int swapoff(const char *name); }
+- SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, \
+- SYS___ACL_SET_LINK = 426 // { int __acl_set_link(const char *path, \
+- SYS___ACL_DELETE_LINK = 427 // { int __acl_delete_link(const char *path, \
+- SYS___ACL_ACLCHECK_LINK = 428 // { int __acl_aclcheck_link(const char *path, \
+- SYS_SIGWAIT = 429 // { int sigwait(const sigset_t *set, \
+- SYS_THR_CREATE = 430 // { int thr_create(ucontext_t *ctx, long *id, \
+- SYS_THR_EXIT = 431 // { void thr_exit(long *state); }
+- SYS_THR_SELF = 432 // { int thr_self(long *id); }
+- SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); }
+- SYS__UMTX_LOCK = 434 // { int _umtx_lock(struct umtx *umtx); }
+- SYS__UMTX_UNLOCK = 435 // { int _umtx_unlock(struct umtx *umtx); }
+- SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); }
+- SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, \
+- SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( \
+- SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( \
+- SYS_THR_SUSPEND = 442 // { int thr_suspend( \
+- SYS_THR_WAKE = 443 // { int thr_wake(long id); }
+- SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); }
+- SYS_AUDIT = 445 // { int audit(const void *record, \
+- SYS_AUDITON = 446 // { int auditon(int cmd, void *data, \
+- SYS_GETAUID = 447 // { int getauid(uid_t *auid); }
+- SYS_SETAUID = 448 // { int setauid(uid_t *auid); }
+- SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); }
+- SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); }
+- SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( \
+- SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( \
+- SYS_AUDITCTL = 453 // { int auditctl(char *path); }
+- SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, \
+- SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, \
+- SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); }
+- SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); }
+- SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); }
+- SYS_RTPRIO_THREAD = 466 // { int rtprio_thread(int function, \
+- SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, \
+- SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, \
+- SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, \
+- SYS_LSEEK = 478 // { off_t lseek(int fd, off_t offset, \
+- SYS_TRUNCATE = 479 // { int truncate(char *path, off_t length); }
+- SYS_FTRUNCATE = 480 // { int ftruncate(int fd, off_t length); }
+- SYS_THR_KILL2 = 481 // { int thr_kill2(pid_t pid, long id, int sig); }
+- SYS_SHM_OPEN = 482 // { int shm_open(const char *path, int flags, \
+- SYS_SHM_UNLINK = 483 // { int shm_unlink(const char *path); }
+- SYS_CPUSET = 484 // { int cpuset(cpusetid_t *setid); }
+- SYS_CPUSET_SETID = 485 // { int cpuset_setid(cpuwhich_t which, id_t id, \
+- SYS_CPUSET_GETID = 486 // { int cpuset_getid(cpulevel_t level, \
+- SYS_CPUSET_GETAFFINITY = 487 // { int cpuset_getaffinity(cpulevel_t level, \
+- SYS_CPUSET_SETAFFINITY = 488 // { int cpuset_setaffinity(cpulevel_t level, \
+- SYS_FACCESSAT = 489 // { int faccessat(int fd, char *path, int amode, \
+- SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, \
+- SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, \
+- SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, \
+- SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, \
+- SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, \
+- SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, \
+- SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); }
+- SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); }
+- SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, \
+- SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, \
+- SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, \
+- SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, \
+- SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, \
+- SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); }
+- SYS_POSIX_OPENPT = 504 // { int posix_openpt(int flags); }
+- SYS_JAIL_GET = 506 // { int jail_get(struct iovec *iovp, \
+- SYS_JAIL_SET = 507 // { int jail_set(struct iovec *iovp, \
+- SYS_JAIL_REMOVE = 508 // { int jail_remove(int jid); }
+- SYS_CLOSEFROM = 509 // { int closefrom(int lowfd); }
+- SYS_LPATHCONF = 513 // { int lpathconf(char *path, int name); }
+- SYS___CAP_RIGHTS_GET = 515 // { int __cap_rights_get(int version, \
+- SYS_CAP_ENTER = 516 // { int cap_enter(void); }
+- SYS_CAP_GETMODE = 517 // { int cap_getmode(u_int *modep); }
+- SYS_PDFORK = 518 // { int pdfork(int *fdp, int flags); }
+- SYS_PDKILL = 519 // { int pdkill(int fd, int signum); }
+- SYS_PDGETPID = 520 // { int pdgetpid(int fd, pid_t *pidp); }
+- SYS_PSELECT = 522 // { int pselect(int nd, fd_set *in, \
+- SYS_GETLOGINCLASS = 523 // { int getloginclass(char *namebuf, \
+- SYS_SETLOGINCLASS = 524 // { int setloginclass(const char *namebuf); }
+- SYS_RCTL_GET_RACCT = 525 // { int rctl_get_racct(const void *inbufp, \
+- SYS_RCTL_GET_RULES = 526 // { int rctl_get_rules(const void *inbufp, \
+- SYS_RCTL_GET_LIMITS = 527 // { int rctl_get_limits(const void *inbufp, \
+- SYS_RCTL_ADD_RULE = 528 // { int rctl_add_rule(const void *inbufp, \
+- SYS_RCTL_REMOVE_RULE = 529 // { int rctl_remove_rule(const void *inbufp, \
+- SYS_POSIX_FALLOCATE = 530 // { int posix_fallocate(int fd, \
+- SYS_POSIX_FADVISE = 531 // { int posix_fadvise(int fd, off_t offset, \
+- SYS_WAIT6 = 532 // { int wait6(idtype_t idtype, id_t id, \
+- SYS_CAP_RIGHTS_LIMIT = 533 // { int cap_rights_limit(int fd, \
+- SYS_CAP_IOCTLS_LIMIT = 534 // { int cap_ioctls_limit(int fd, \
+- SYS_CAP_IOCTLS_GET = 535 // { ssize_t cap_ioctls_get(int fd, \
+- SYS_CAP_FCNTLS_LIMIT = 536 // { int cap_fcntls_limit(int fd, \
+- SYS_CAP_FCNTLS_GET = 537 // { int cap_fcntls_get(int fd, \
+- SYS_BINDAT = 538 // { int bindat(int fd, int s, caddr_t name, \
+- SYS_CONNECTAT = 539 // { int connectat(int fd, int s, caddr_t name, \
+- SYS_CHFLAGSAT = 540 // { int chflagsat(int fd, const char *path, \
+- SYS_ACCEPT4 = 541 // { int accept4(int s, \
+- SYS_PIPE2 = 542 // { int pipe2(int *fildes, int flags); }
+- SYS_PROCCTL = 544 // { int procctl(idtype_t idtype, id_t id, \
+- SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, \
+- SYS_FUTIMENS = 546 // { int futimens(int fd, \
+- SYS_UTIMENSAT = 547 // { int utimensat(int fd, \
++ SYS_EXIT = 1 // { void sys_exit(int rval); } exit sys_exit_args void
++ SYS_FORK = 2 // { int fork(void); }
++ SYS_READ = 3 // { ssize_t read(int fd, void *buf, size_t nbyte); }
++ SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, size_t nbyte); }
++ SYS_OPEN = 5 // { int open(char *path, int flags, int mode); }
++ SYS_CLOSE = 6 // { int close(int fd); }
++ SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, struct rusage *rusage); }
++ SYS_LINK = 9 // { int link(char *path, char *link); }
++ SYS_UNLINK = 10 // { int unlink(char *path); }
++ SYS_CHDIR = 12 // { int chdir(char *path); }
++ SYS_FCHDIR = 13 // { int fchdir(int fd); }
++ SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); }
++ SYS_CHMOD = 15 // { int chmod(char *path, int mode); }
++ SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); }
++ SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int
++ SYS_GETPID = 20 // { pid_t getpid(void); }
++ SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); }
++ SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); }
++ SYS_SETUID = 23 // { int setuid(uid_t uid); }
++ SYS_GETUID = 24 // { uid_t getuid(void); }
++ SYS_GETEUID = 25 // { uid_t geteuid(void); }
++ SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, int data); }
++ SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, int flags); }
++ SYS_SENDMSG = 28 // { int sendmsg(int s, struct msghdr *msg, int flags); }
++ SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, int flags, struct sockaddr * __restrict from, __socklen_t * __restrict fromlenaddr); }
++ SYS_ACCEPT = 30 // { int accept(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen); }
++ SYS_GETPEERNAME = 31 // { int getpeername(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
++ SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
++ SYS_ACCESS = 33 // { int access(char *path, int amode); }
++ SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); }
++ SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); }
++ SYS_SYNC = 36 // { int sync(void); }
++ SYS_KILL = 37 // { int kill(int pid, int signum); }
++ SYS_GETPPID = 39 // { pid_t getppid(void); }
++ SYS_DUP = 41 // { int dup(u_int fd); }
++ SYS_PIPE = 42 // { int pipe(void); }
++ SYS_GETEGID = 43 // { gid_t getegid(void); }
++ SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); }
++ SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); }
++ SYS_GETGID = 47 // { gid_t getgid(void); }
++ SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int namelen); }
++ SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); }
++ SYS_ACCT = 51 // { int acct(char *path); }
++ SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, stack_t *oss); }
++ SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, caddr_t data); }
++ SYS_REBOOT = 55 // { int reboot(int opt); }
++ SYS_REVOKE = 56 // { int revoke(char *path); }
++ SYS_SYMLINK = 57 // { int symlink(char *path, char *link); }
++ SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, size_t count); }
++ SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); }
++ SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args int
++ SYS_CHROOT = 61 // { int chroot(char *path); }
++ SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); }
++ SYS_VFORK = 66 // { int vfork(void); }
++ SYS_SBRK = 69 // { int sbrk(int incr); }
++ SYS_SSTK = 70 // { int sstk(int incr); }
++ SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise ovadvise_args int
++ SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); }
++ SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, int prot); }
++ SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); }
++ SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); }
++ SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); }
++ SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, gid_t *gidset); }
++ SYS_GETPGRP = 81 // { int getpgrp(void); }
++ SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); }
++ SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, struct itimerval *oitv); }
++ SYS_SWAPON = 85 // { int swapon(char *name); }
++ SYS_GETITIMER = 86 // { int getitimer(u_int which, struct itimerval *itv); }
++ SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); }
++ SYS_DUP2 = 90 // { int dup2(u_int from, u_int to); }
++ SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); }
++ SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
++ SYS_FSYNC = 95 // { int fsync(int fd); }
++ SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, int prio); }
++ SYS_SOCKET = 97 // { int socket(int domain, int type, int protocol); }
++ SYS_CONNECT = 98 // { int connect(int s, caddr_t name, int namelen); }
++ SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); }
++ SYS_BIND = 104 // { int bind(int s, caddr_t name, int namelen); }
++ SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, caddr_t val, int valsize); }
++ SYS_LISTEN = 106 // { int listen(int s, int backlog); }
++ SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, struct timezone *tzp); }
++ SYS_GETRUSAGE = 117 // { int getrusage(int who, struct rusage *rusage); }
++ SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, caddr_t val, int *avalsize); }
++ SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, u_int iovcnt); }
++ SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, u_int iovcnt); }
++ SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, struct timezone *tzp); }
++ SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); }
++ SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); }
++ SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); }
++ SYS_SETREGID = 127 // { int setregid(int rgid, int egid); }
++ SYS_RENAME = 128 // { int rename(char *from, char *to); }
++ SYS_FLOCK = 131 // { int flock(int fd, int how); }
++ SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); }
++ SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, int flags, caddr_t to, int tolen); }
++ SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); }
++ SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, int *rsv); }
++ SYS_MKDIR = 136 // { int mkdir(char *path, int mode); }
++ SYS_RMDIR = 137 // { int rmdir(char *path); }
++ SYS_UTIMES = 138 // { int utimes(char *path, struct timeval *tptr); }
++ SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, struct timeval *olddelta); }
++ SYS_SETSID = 147 // { int setsid(void); }
++ SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, caddr_t arg); }
++ SYS_NLM_SYSCALL = 154 // { int nlm_syscall(int debug_level, int grace_period, int addr_count, char **addrs); }
++ SYS_NFSSVC = 155 // { int nfssvc(int flag, caddr_t argp); }
++ SYS_LGETFH = 160 // { int lgetfh(char *fname, struct fhandle *fhp); }
++ SYS_GETFH = 161 // { int getfh(char *fname, struct fhandle *fhp); }
++ SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); }
++ SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, struct rtprio *rtp); }
++ SYS_SEMSYS = 169 // { int semsys(int which, int a2, int a3, int a4, int a5); }
++ SYS_MSGSYS = 170 // { int msgsys(int which, int a2, int a3, int a4, int a5, int a6); }
++ SYS_SHMSYS = 171 // { int shmsys(int which, int a2, int a3, int a4); }
++ SYS_SETFIB = 175 // { int setfib(int fibnum); }
++ SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); }
++ SYS_SETGID = 181 // { int setgid(gid_t gid); }
++ SYS_SETEGID = 182 // { int setegid(gid_t egid); }
++ SYS_SETEUID = 183 // { int seteuid(uid_t euid); }
++ SYS_STAT = 188 // { int stat(char *path, struct stat *ub); }
++ SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); }
++ SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); }
++ SYS_PATHCONF = 191 // { int pathconf(char *path, int name); }
++ SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); }
++ SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int
++ SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int
++ SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, u_int count, long *basep); }
++ SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } __sysctl sysctl_args int
++ SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); }
++ SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); }
++ SYS_UNDELETE = 205 // { int undelete(char *path); }
++ SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); }
++ SYS_GETPGID = 207 // { int getpgid(pid_t pid); }
++ SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, int timeout); }
++ SYS_SEMGET = 221 // { int semget(key_t key, int nsems, int semflg); }
++ SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, size_t nsops); }
++ SYS_MSGGET = 225 // { int msgget(key_t key, int msgflg); }
++ SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
++ SYS_MSGRCV = 227 // { int msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
++ SYS_SHMAT = 228 // { int shmat(int shmid, const void *shmaddr, int shmflg); }
++ SYS_SHMDT = 230 // { int shmdt(const void *shmaddr); }
++ SYS_SHMGET = 231 // { int shmget(key_t key, size_t size, int shmflg); }
++ SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, struct timespec *tp); }
++ SYS_CLOCK_SETTIME = 233 // { int clock_settime( clockid_t clock_id, const struct timespec *tp); }
++ SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, struct timespec *tp); }
++ SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, struct sigevent *evp, int *timerid); }
++ SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); }
++ SYS_KTIMER_SETTIME = 237 // { int ktimer_settime(int timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue); }
++ SYS_KTIMER_GETTIME = 238 // { int ktimer_gettime(int timerid, struct itimerspec *value); }
++ SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); }
++ SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
++ SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); }
++ SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( struct ffclock_estimate *cest); }
++ SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( struct ffclock_estimate *cest); }
++ SYS_CLOCK_NANOSLEEP = 244 // { int clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *rqtp, struct timespec *rmtp); }
++ SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,int which, clockid_t *clock_id); }
++ SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); }
++ SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, int inherit); }
++ SYS_RFORK = 251 // { int rfork(int flags); }
++ SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, u_int nfds, int timeout); }
++ SYS_ISSETUGID = 253 // { int issetugid(void); }
++ SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); }
++ SYS_AIO_READ = 255 // { int aio_read(struct aiocb *aiocbp); }
++ SYS_AIO_WRITE = 256 // { int aio_write(struct aiocb *aiocbp); }
++ SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); }
++ SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, size_t count); }
++ SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); }
++ SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); }
++ SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); }
++ SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); }
++ SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); }
++ SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); }
++ SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); }
++ SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); }
++ SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); }
++ SYS_MODNEXT = 300 // { int modnext(int modid); }
++ SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat *stat); }
++ SYS_MODFNEXT = 302 // { int modfnext(int modid); }
++ SYS_MODFIND = 303 // { int modfind(const char *name); }
++ SYS_KLDLOAD = 304 // { int kldload(const char *file); }
++ SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); }
++ SYS_KLDFIND = 306 // { int kldfind(const char *file); }
++ SYS_KLDNEXT = 307 // { int kldnext(int fileid); }
++ SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat* stat); }
++ SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); }
++ SYS_GETSID = 310 // { int getsid(pid_t pid); }
++ SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, uid_t suid); }
++ SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
++ SYS_AIO_RETURN = 314 // { ssize_t aio_return(struct aiocb *aiocbp); }
++ SYS_AIO_SUSPEND = 315 // { int aio_suspend( struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); }
++ SYS_AIO_CANCEL = 316 // { int aio_cancel(int fd, struct aiocb *aiocbp); }
++ SYS_AIO_ERROR = 317 // { int aio_error(struct aiocb *aiocbp); }
++ SYS_YIELD = 321 // { int yield(void); }
++ SYS_MLOCKALL = 324 // { int mlockall(int how); }
++ SYS_MUNLOCKALL = 325 // { int munlockall(void); }
++ SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); }
++ SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, const struct sched_param *param); }
++ SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct sched_param *param); }
++ SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); }
++ SYS_SCHED_GETSCHEDULER = 330 // { int sched_getscheduler (pid_t pid); }
++ SYS_SCHED_YIELD = 331 // { int sched_yield (void); }
++ SYS_SCHED_GET_PRIORITY_MAX = 332 // { int sched_get_priority_max (int policy); }
++ SYS_SCHED_GET_PRIORITY_MIN = 333 // { int sched_get_priority_min (int policy); }
++ SYS_SCHED_RR_GET_INTERVAL = 334 // { int sched_rr_get_interval (pid_t pid, struct timespec *interval); }
++ SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); }
++ SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, void *data); }
++ SYS_JAIL = 338 // { int jail(struct jail *jail); }
++ SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, const sigset_t *set, sigset_t *oset); }
++ SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); }
++ SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); }
++ SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set, siginfo_t *info, const struct timespec *timeout); }
++ SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set, siginfo_t *info); }
++ SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, acl_type_t type); }
++ SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, acl_type_t type); }
++ SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, struct acl *aclp); }
++ SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, const char *filename, int attrnamespace, const char *attrname); }
++ SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, int attrnamespace, const char *attrname); }
++ SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete( struct aiocb **aiocbp, struct timespec *timeout); }
++ SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
++ SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
++ SYS_KQUEUE = 362 // { int kqueue(void); }
++ SYS_KEVENT = 363 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
++ SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, int attrnamespace, const char *attrname); }
++ SYS___SETUGID = 374 // { int __setugid(int flag); }
++ SYS_EACCESS = 376 // { int eaccess(char *path, int amode); }
++ SYS_NMOUNT = 378 // { int nmount(struct iovec *iovp, unsigned int iovcnt, int flags); }
++ SYS___MAC_GET_PROC = 384 // { int __mac_get_proc(struct mac *mac_p); }
++ SYS___MAC_SET_PROC = 385 // { int __mac_set_proc(struct mac *mac_p); }
++ SYS___MAC_GET_FD = 386 // { int __mac_get_fd(int fd, struct mac *mac_p); }
++ SYS___MAC_GET_FILE = 387 // { int __mac_get_file(const char *path_p, struct mac *mac_p); }
++ SYS___MAC_SET_FD = 388 // { int __mac_set_fd(int fd, struct mac *mac_p); }
++ SYS___MAC_SET_FILE = 389 // { int __mac_set_file(const char *path_p, struct mac *mac_p); }
++ SYS_KENV = 390 // { int kenv(int what, const char *name, char *value, int len); }
++ SYS_LCHFLAGS = 391 // { int lchflags(const char *path, u_long flags); }
++ SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); }
++ SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); }
++ SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, int call, void *arg); }
++ SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, long bufsize, int mode); }
++ SYS_STATFS = 396 // { int statfs(char *path, struct statfs *buf); }
++ SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); }
++ SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); }
++ SYS_KSEM_CLOSE = 400 // { int ksem_close(semid_t id); }
++ SYS_KSEM_POST = 401 // { int ksem_post(semid_t id); }
++ SYS_KSEM_WAIT = 402 // { int ksem_wait(semid_t id); }
++ SYS_KSEM_TRYWAIT = 403 // { int ksem_trywait(semid_t id); }
++ SYS_KSEM_INIT = 404 // { int ksem_init(semid_t *idp, unsigned int value); }
++ SYS_KSEM_OPEN = 405 // { int ksem_open(semid_t *idp, const char *name, int oflag, mode_t mode, unsigned int value); }
++ SYS_KSEM_UNLINK = 406 // { int ksem_unlink(const char *name); }
++ SYS_KSEM_GETVALUE = 407 // { int ksem_getvalue(semid_t id, int *val); }
++ SYS_KSEM_DESTROY = 408 // { int ksem_destroy(semid_t id); }
++ SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, struct mac *mac_p); }
++ SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, struct mac *mac_p); }
++ SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, struct mac *mac_p); }
++ SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( const char *path, int attrnamespace, const char *attrname); }
++ SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, char **envv, struct mac *mac_p); }
++ SYS_SIGACTION = 416 // { int sigaction(int sig, const struct sigaction *act, struct sigaction *oact); }
++ SYS_SIGRETURN = 417 // { int sigreturn( const struct __ucontext *sigcntxp); }
++ SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); }
++ SYS_SETCONTEXT = 422 // { int setcontext( const struct __ucontext *ucp); }
++ SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, const struct __ucontext *ucp); }
++ SYS_SWAPOFF = 424 // { int swapoff(const char *name); }
++ SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_SET_LINK = 426 // { int __acl_set_link(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_DELETE_LINK = 427 // { int __acl_delete_link(const char *path, acl_type_t type); }
++ SYS___ACL_ACLCHECK_LINK = 428 // { int __acl_aclcheck_link(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS_SIGWAIT = 429 // { int sigwait(const sigset_t *set, int *sig); }
++ SYS_THR_CREATE = 430 // { int thr_create(ucontext_t *ctx, long *id, int flags); }
++ SYS_THR_EXIT = 431 // { void thr_exit(long *state); }
++ SYS_THR_SELF = 432 // { int thr_self(long *id); }
++ SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); }
++ SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); }
++ SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, int attrnamespace, void *data, size_t nbytes); }
++ SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( const char *path, int attrnamespace, void *data, size_t nbytes); }
++ SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( const char *path, int attrnamespace, void *data, size_t nbytes); }
++ SYS_KSEM_TIMEDWAIT = 441 // { int ksem_timedwait(semid_t id, const struct timespec *abstime); }
++ SYS_THR_SUSPEND = 442 // { int thr_suspend( const struct timespec *timeout); }
++ SYS_THR_WAKE = 443 // { int thr_wake(long id); }
++ SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); }
++ SYS_AUDIT = 445 // { int audit(const void *record, u_int length); }
++ SYS_AUDITON = 446 // { int auditon(int cmd, void *data, u_int length); }
++ SYS_GETAUID = 447 // { int getauid(uid_t *auid); }
++ SYS_SETAUID = 448 // { int setauid(uid_t *auid); }
++ SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); }
++ SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); }
++ SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); }
++ SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); }
++ SYS_AUDITCTL = 453 // { int auditctl(char *path); }
++ SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, u_long val, void *uaddr1, void *uaddr2); }
++ SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, int param_size); }
++ SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); }
++ SYS_KMQ_OPEN = 457 // { int kmq_open(const char *path, int flags, mode_t mode, const struct mq_attr *attr); }
++ SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); }
++ SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); }
++ SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len,unsigned msg_prio, const struct timespec *abs_timeout);}
++ SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); }
++ SYS_KMQ_UNLINK = 462 // { int kmq_unlink(const char *path); }
++ SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); }
++ SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); }
++ SYS_AIO_FSYNC = 465 // { int aio_fsync(int op, struct aiocb *aiocbp); }
++ SYS_RTPRIO_THREAD = 466 // { int rtprio_thread(int function, lwpid_t lwpid, struct rtprio *rtp); }
++ SYS_SCTP_PEELOFF = 471 // { int sctp_peeloff(int sd, uint32_t name); }
++ SYS_SCTP_GENERIC_SENDMSG = 472 // { int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); }
++ SYS_SCTP_GENERIC_SENDMSG_IOV = 473 // { int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); }
++ SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr * from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); }
++ SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, size_t nbyte, off_t offset); }
++ SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, size_t nbyte, off_t offset); }
++ SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, off_t pos); }
++ SYS_LSEEK = 478 // { off_t lseek(int fd, off_t offset, int whence); }
++ SYS_TRUNCATE = 479 // { int truncate(char *path, off_t length); }
++ SYS_FTRUNCATE = 480 // { int ftruncate(int fd, off_t length); }
++ SYS_THR_KILL2 = 481 // { int thr_kill2(pid_t pid, long id, int sig); }
++ SYS_SHM_OPEN = 482 // { int shm_open(const char *path, int flags, mode_t mode); }
++ SYS_SHM_UNLINK = 483 // { int shm_unlink(const char *path); }
++ SYS_CPUSET = 484 // { int cpuset(cpusetid_t *setid); }
++ SYS_CPUSET_SETID = 485 // { int cpuset_setid(cpuwhich_t which, id_t id, cpusetid_t setid); }
++ SYS_CPUSET_GETID = 486 // { int cpuset_getid(cpulevel_t level, cpuwhich_t which, id_t id, cpusetid_t *setid); }
++ SYS_CPUSET_GETAFFINITY = 487 // { int cpuset_getaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, cpuset_t *mask); }
++ SYS_CPUSET_SETAFFINITY = 488 // { int cpuset_setaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, const cpuset_t *mask); }
++ SYS_FACCESSAT = 489 // { int faccessat(int fd, char *path, int amode, int flag); }
++ SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, int flag); }
++ SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, gid_t gid, int flag); }
++ SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, char **envv); }
++ SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, struct stat *buf, int flag); }
++ SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, struct timeval *times); }
++ SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, char *path2, int flag); }
++ SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); }
++ SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); }
++ SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); }
++ SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, mode_t mode); }
++ SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, size_t bufsize); }
++ SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, char *new); }
++ SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, char *path2); }
++ SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); }
++ SYS_POSIX_OPENPT = 504 // { int posix_openpt(int flags); }
++ SYS_GSSD_SYSCALL = 505 // { int gssd_syscall(char *path); }
++ SYS_JAIL_GET = 506 // { int jail_get(struct iovec *iovp, unsigned int iovcnt, int flags); }
++ SYS_JAIL_SET = 507 // { int jail_set(struct iovec *iovp, unsigned int iovcnt, int flags); }
++ SYS_JAIL_REMOVE = 508 // { int jail_remove(int jid); }
++ SYS_CLOSEFROM = 509 // { int closefrom(int lowfd); }
++ SYS___SEMCTL = 510 // { int __semctl(int semid, int semnum, int cmd, union semun *arg); }
++ SYS_MSGCTL = 511 // { int msgctl(int msqid, int cmd, struct msqid_ds *buf); }
++ SYS_SHMCTL = 512 // { int shmctl(int shmid, int cmd, struct shmid_ds *buf); }
++ SYS_LPATHCONF = 513 // { int lpathconf(char *path, int name); }
++ SYS___CAP_RIGHTS_GET = 515 // { int __cap_rights_get(int version, int fd, cap_rights_t *rightsp); }
++ SYS_CAP_ENTER = 516 // { int cap_enter(void); }
++ SYS_CAP_GETMODE = 517 // { int cap_getmode(u_int *modep); }
++ SYS_PDFORK = 518 // { int pdfork(int *fdp, int flags); }
++ SYS_PDKILL = 519 // { int pdkill(int fd, int signum); }
++ SYS_PDGETPID = 520 // { int pdgetpid(int fd, pid_t *pidp); }
++ SYS_PSELECT = 522 // { int pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *sm); }
++ SYS_GETLOGINCLASS = 523 // { int getloginclass(char *namebuf, size_t namelen); }
++ SYS_SETLOGINCLASS = 524 // { int setloginclass(const char *namebuf); }
++ SYS_RCTL_GET_RACCT = 525 // { int rctl_get_racct(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_RCTL_GET_RULES = 526 // { int rctl_get_rules(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_RCTL_GET_LIMITS = 527 // { int rctl_get_limits(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_RCTL_ADD_RULE = 528 // { int rctl_add_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_RCTL_REMOVE_RULE = 529 // { int rctl_remove_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_POSIX_FALLOCATE = 530 // { int posix_fallocate(int fd, off_t offset, off_t len); }
++ SYS_POSIX_FADVISE = 531 // { int posix_fadvise(int fd, off_t offset, off_t len, int advice); }
++ SYS_WAIT6 = 532 // { int wait6(idtype_t idtype, id_t id, int *status, int options, struct __wrusage *wrusage, siginfo_t *info); }
++ SYS_CAP_RIGHTS_LIMIT = 533 // { int cap_rights_limit(int fd, cap_rights_t *rightsp); }
++ SYS_CAP_IOCTLS_LIMIT = 534 // { int cap_ioctls_limit(int fd, const u_long *cmds, size_t ncmds); }
++ SYS_CAP_IOCTLS_GET = 535 // { ssize_t cap_ioctls_get(int fd, u_long *cmds, size_t maxcmds); }
++ SYS_CAP_FCNTLS_LIMIT = 536 // { int cap_fcntls_limit(int fd, uint32_t fcntlrights); }
++ SYS_CAP_FCNTLS_GET = 537 // { int cap_fcntls_get(int fd, uint32_t *fcntlrightsp); }
++ SYS_BINDAT = 538 // { int bindat(int fd, int s, caddr_t name, int namelen); }
++ SYS_CONNECTAT = 539 // { int connectat(int fd, int s, caddr_t name, int namelen); }
++ SYS_CHFLAGSAT = 540 // { int chflagsat(int fd, const char *path, u_long flags, int atflag); }
++ SYS_ACCEPT4 = 541 // { int accept4(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen, int flags); }
++ SYS_PIPE2 = 542 // { int pipe2(int *fildes, int flags); }
++ SYS_AIO_MLOCK = 543 // { int aio_mlock(struct aiocb *aiocbp); }
++ SYS_PROCCTL = 544 // { int procctl(idtype_t idtype, id_t id, int com, void *data); }
++ SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *set); }
++ SYS_FUTIMENS = 546 // { int futimens(int fd, struct timespec *times); }
++ SYS_UTIMENSAT = 547 // { int utimensat(int fd, char *path, struct timespec *times, int flag); }
++ SYS_NUMA_GETAFFINITY = 548 // { int numa_getaffinity(cpuwhich_t which, id_t id, struct vm_domain_policy_entry *policy); }
++ SYS_NUMA_SETAFFINITY = 549 // { int numa_setaffinity(cpuwhich_t which, id_t id, const struct vm_domain_policy_entry *policy); }
++ SYS_FDATASYNC = 550 // { int fdatasync(int fd); }
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go
+index 81722ac9..48a7beae 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go
+@@ -1,4 +1,4 @@
+-// mksysnum_freebsd.pl
++// go run mksysnum.go https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build amd64,freebsd
+@@ -7,347 +7,390 @@ package unix
+
+ const (
+ // SYS_NOSYS = 0; // { int nosys(void); } syscall nosys_args int
+- SYS_EXIT = 1 // { void sys_exit(int rval); } exit \
+- SYS_FORK = 2 // { int fork(void); }
+- SYS_READ = 3 // { ssize_t read(int fd, void *buf, \
+- SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, \
+- SYS_OPEN = 5 // { int open(char *path, int flags, int mode); }
+- SYS_CLOSE = 6 // { int close(int fd); }
+- SYS_WAIT4 = 7 // { int wait4(int pid, int *status, \
+- SYS_LINK = 9 // { int link(char *path, char *link); }
+- SYS_UNLINK = 10 // { int unlink(char *path); }
+- SYS_CHDIR = 12 // { int chdir(char *path); }
+- SYS_FCHDIR = 13 // { int fchdir(int fd); }
+- SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); }
+- SYS_CHMOD = 15 // { int chmod(char *path, int mode); }
+- SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); }
+- SYS_OBREAK = 17 // { int obreak(char *nsize); } break \
+- SYS_GETPID = 20 // { pid_t getpid(void); }
+- SYS_MOUNT = 21 // { int mount(char *type, char *path, \
+- SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); }
+- SYS_SETUID = 23 // { int setuid(uid_t uid); }
+- SYS_GETUID = 24 // { uid_t getuid(void); }
+- SYS_GETEUID = 25 // { uid_t geteuid(void); }
+- SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, \
+- SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, \
+- SYS_SENDMSG = 28 // { int sendmsg(int s, struct msghdr *msg, \
+- SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, \
+- SYS_ACCEPT = 30 // { int accept(int s, \
+- SYS_GETPEERNAME = 31 // { int getpeername(int fdes, \
+- SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, \
+- SYS_ACCESS = 33 // { int access(char *path, int amode); }
+- SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); }
+- SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); }
+- SYS_SYNC = 36 // { int sync(void); }
+- SYS_KILL = 37 // { int kill(int pid, int signum); }
+- SYS_GETPPID = 39 // { pid_t getppid(void); }
+- SYS_DUP = 41 // { int dup(u_int fd); }
+- SYS_PIPE = 42 // { int pipe(void); }
+- SYS_GETEGID = 43 // { gid_t getegid(void); }
+- SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, \
+- SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, \
+- SYS_GETGID = 47 // { gid_t getgid(void); }
+- SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int \
+- SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); }
+- SYS_ACCT = 51 // { int acct(char *path); }
+- SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, \
+- SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, \
+- SYS_REBOOT = 55 // { int reboot(int opt); }
+- SYS_REVOKE = 56 // { int revoke(char *path); }
+- SYS_SYMLINK = 57 // { int symlink(char *path, char *link); }
+- SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, \
+- SYS_EXECVE = 59 // { int execve(char *fname, char **argv, \
+- SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args \
+- SYS_CHROOT = 61 // { int chroot(char *path); }
+- SYS_MSYNC = 65 // { int msync(void *addr, size_t len, \
+- SYS_VFORK = 66 // { int vfork(void); }
+- SYS_SBRK = 69 // { int sbrk(int incr); }
+- SYS_SSTK = 70 // { int sstk(int incr); }
+- SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise \
+- SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); }
+- SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, \
+- SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, \
+- SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, \
+- SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, \
+- SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, \
+- SYS_GETPGRP = 81 // { int getpgrp(void); }
+- SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); }
+- SYS_SETITIMER = 83 // { int setitimer(u_int which, struct \
+- SYS_SWAPON = 85 // { int swapon(char *name); }
+- SYS_GETITIMER = 86 // { int getitimer(u_int which, \
+- SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); }
+- SYS_DUP2 = 90 // { int dup2(u_int from, u_int to); }
+- SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); }
+- SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, \
+- SYS_FSYNC = 95 // { int fsync(int fd); }
+- SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, \
+- SYS_SOCKET = 97 // { int socket(int domain, int type, \
+- SYS_CONNECT = 98 // { int connect(int s, caddr_t name, \
+- SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); }
+- SYS_BIND = 104 // { int bind(int s, caddr_t name, \
+- SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, \
+- SYS_LISTEN = 106 // { int listen(int s, int backlog); }
+- SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, \
+- SYS_GETRUSAGE = 117 // { int getrusage(int who, \
+- SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, \
+- SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, \
+- SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, \
+- SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, \
+- SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); }
+- SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); }
+- SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); }
+- SYS_SETREGID = 127 // { int setregid(int rgid, int egid); }
+- SYS_RENAME = 128 // { int rename(char *from, char *to); }
+- SYS_FLOCK = 131 // { int flock(int fd, int how); }
+- SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); }
+- SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, \
+- SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); }
+- SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, \
+- SYS_MKDIR = 136 // { int mkdir(char *path, int mode); }
+- SYS_RMDIR = 137 // { int rmdir(char *path); }
+- SYS_UTIMES = 138 // { int utimes(char *path, \
+- SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, \
+- SYS_SETSID = 147 // { int setsid(void); }
+- SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, \
+- SYS_LGETFH = 160 // { int lgetfh(char *fname, \
+- SYS_GETFH = 161 // { int getfh(char *fname, \
+- SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); }
+- SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, \
+- SYS_FREEBSD6_PREAD = 173 // { ssize_t freebsd6_pread(int fd, void *buf, \
+- SYS_FREEBSD6_PWRITE = 174 // { ssize_t freebsd6_pwrite(int fd, \
+- SYS_SETFIB = 175 // { int setfib(int fibnum); }
+- SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); }
+- SYS_SETGID = 181 // { int setgid(gid_t gid); }
+- SYS_SETEGID = 182 // { int setegid(gid_t egid); }
+- SYS_SETEUID = 183 // { int seteuid(uid_t euid); }
+- SYS_STAT = 188 // { int stat(char *path, struct stat *ub); }
+- SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); }
+- SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); }
+- SYS_PATHCONF = 191 // { int pathconf(char *path, int name); }
+- SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); }
+- SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, \
+- SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, \
+- SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, \
+- SYS_FREEBSD6_MMAP = 197 // { caddr_t freebsd6_mmap(caddr_t addr, \
+- SYS_FREEBSD6_LSEEK = 199 // { off_t freebsd6_lseek(int fd, int pad, \
+- SYS_FREEBSD6_TRUNCATE = 200 // { int freebsd6_truncate(char *path, int pad, \
+- SYS_FREEBSD6_FTRUNCATE = 201 // { int freebsd6_ftruncate(int fd, int pad, \
+- SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, \
+- SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); }
+- SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); }
+- SYS_UNDELETE = 205 // { int undelete(char *path); }
+- SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); }
+- SYS_GETPGID = 207 // { int getpgid(pid_t pid); }
+- SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, \
+- SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, \
+- SYS_CLOCK_SETTIME = 233 // { int clock_settime( \
+- SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, \
+- SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, \
+- SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); }
+- SYS_KTIMER_SETTIME = 237 // { int ktimer_settime(int timerid, int flags, \
+- SYS_KTIMER_GETTIME = 238 // { int ktimer_gettime(int timerid, struct \
+- SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); }
+- SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, \
+- SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); }
+- SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( \
+- SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( \
+- SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,\
+- SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); }
+- SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, \
+- SYS_RFORK = 251 // { int rfork(int flags); }
+- SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, \
+- SYS_ISSETUGID = 253 // { int issetugid(void); }
+- SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); }
+- SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, \
+- SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); }
+- SYS_LUTIMES = 276 // { int lutimes(char *path, \
+- SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); }
+- SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); }
+- SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); }
+- SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, \
+- SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, \
+- SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, \
+- SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, \
+- SYS_MODNEXT = 300 // { int modnext(int modid); }
+- SYS_MODSTAT = 301 // { int modstat(int modid, \
+- SYS_MODFNEXT = 302 // { int modfnext(int modid); }
+- SYS_MODFIND = 303 // { int modfind(const char *name); }
+- SYS_KLDLOAD = 304 // { int kldload(const char *file); }
+- SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); }
+- SYS_KLDFIND = 306 // { int kldfind(const char *file); }
+- SYS_KLDNEXT = 307 // { int kldnext(int fileid); }
+- SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct \
+- SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); }
+- SYS_GETSID = 310 // { int getsid(pid_t pid); }
+- SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, \
+- SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, \
+- SYS_YIELD = 321 // { int yield(void); }
+- SYS_MLOCKALL = 324 // { int mlockall(int how); }
+- SYS_MUNLOCKALL = 325 // { int munlockall(void); }
+- SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); }
+- SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, \
+- SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct \
+- SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int \
+- SYS_SCHED_GETSCHEDULER = 330 // { int sched_getscheduler (pid_t pid); }
+- SYS_SCHED_YIELD = 331 // { int sched_yield (void); }
+- SYS_SCHED_GET_PRIORITY_MAX = 332 // { int sched_get_priority_max (int policy); }
+- SYS_SCHED_GET_PRIORITY_MIN = 333 // { int sched_get_priority_min (int policy); }
+- SYS_SCHED_RR_GET_INTERVAL = 334 // { int sched_rr_get_interval (pid_t pid, \
+- SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); }
+- SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, \
+- SYS_JAIL = 338 // { int jail(struct jail *jail); }
+- SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, \
+- SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); }
+- SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); }
+- SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set, \
+- SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set, \
+- SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, \
+- SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, \
+- SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, \
+- SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, \
+- SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, \
+- SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, \
+- SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, \
+- SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, \
+- SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, \
+- SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( \
+- SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( \
+- SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, \
+- SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, \
+- SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, \
+- SYS_KQUEUE = 362 // { int kqueue(void); }
+- SYS_KEVENT = 363 // { int kevent(int fd, \
+- SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, \
+- SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, \
+- SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, \
+- SYS___SETUGID = 374 // { int __setugid(int flag); }
+- SYS_EACCESS = 376 // { int eaccess(char *path, int amode); }
+- SYS_NMOUNT = 378 // { int nmount(struct iovec *iovp, \
+- SYS___MAC_GET_PROC = 384 // { int __mac_get_proc(struct mac *mac_p); }
+- SYS___MAC_SET_PROC = 385 // { int __mac_set_proc(struct mac *mac_p); }
+- SYS___MAC_GET_FD = 386 // { int __mac_get_fd(int fd, \
+- SYS___MAC_GET_FILE = 387 // { int __mac_get_file(const char *path_p, \
+- SYS___MAC_SET_FD = 388 // { int __mac_set_fd(int fd, \
+- SYS___MAC_SET_FILE = 389 // { int __mac_set_file(const char *path_p, \
+- SYS_KENV = 390 // { int kenv(int what, const char *name, \
+- SYS_LCHFLAGS = 391 // { int lchflags(const char *path, \
+- SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, \
+- SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, \
+- SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, \
+- SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, \
+- SYS_STATFS = 396 // { int statfs(char *path, \
+- SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); }
+- SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, \
+- SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, \
+- SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, \
+- SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, \
+- SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( \
+- SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( \
+- SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( \
+- SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, \
+- SYS_SIGACTION = 416 // { int sigaction(int sig, \
+- SYS_SIGRETURN = 417 // { int sigreturn( \
+- SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); }
+- SYS_SETCONTEXT = 422 // { int setcontext( \
+- SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, \
+- SYS_SWAPOFF = 424 // { int swapoff(const char *name); }
+- SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, \
+- SYS___ACL_SET_LINK = 426 // { int __acl_set_link(const char *path, \
+- SYS___ACL_DELETE_LINK = 427 // { int __acl_delete_link(const char *path, \
+- SYS___ACL_ACLCHECK_LINK = 428 // { int __acl_aclcheck_link(const char *path, \
+- SYS_SIGWAIT = 429 // { int sigwait(const sigset_t *set, \
+- SYS_THR_CREATE = 430 // { int thr_create(ucontext_t *ctx, long *id, \
+- SYS_THR_EXIT = 431 // { void thr_exit(long *state); }
+- SYS_THR_SELF = 432 // { int thr_self(long *id); }
+- SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); }
+- SYS__UMTX_LOCK = 434 // { int _umtx_lock(struct umtx *umtx); }
+- SYS__UMTX_UNLOCK = 435 // { int _umtx_unlock(struct umtx *umtx); }
+- SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); }
+- SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, \
+- SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( \
+- SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( \
+- SYS_THR_SUSPEND = 442 // { int thr_suspend( \
+- SYS_THR_WAKE = 443 // { int thr_wake(long id); }
+- SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); }
+- SYS_AUDIT = 445 // { int audit(const void *record, \
+- SYS_AUDITON = 446 // { int auditon(int cmd, void *data, \
+- SYS_GETAUID = 447 // { int getauid(uid_t *auid); }
+- SYS_SETAUID = 448 // { int setauid(uid_t *auid); }
+- SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); }
+- SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); }
+- SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( \
+- SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( \
+- SYS_AUDITCTL = 453 // { int auditctl(char *path); }
+- SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, \
+- SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, \
+- SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); }
+- SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); }
+- SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); }
+- SYS_RTPRIO_THREAD = 466 // { int rtprio_thread(int function, \
+- SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, \
+- SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, \
+- SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, \
+- SYS_LSEEK = 478 // { off_t lseek(int fd, off_t offset, \
+- SYS_TRUNCATE = 479 // { int truncate(char *path, off_t length); }
+- SYS_FTRUNCATE = 480 // { int ftruncate(int fd, off_t length); }
+- SYS_THR_KILL2 = 481 // { int thr_kill2(pid_t pid, long id, int sig); }
+- SYS_SHM_OPEN = 482 // { int shm_open(const char *path, int flags, \
+- SYS_SHM_UNLINK = 483 // { int shm_unlink(const char *path); }
+- SYS_CPUSET = 484 // { int cpuset(cpusetid_t *setid); }
+- SYS_CPUSET_SETID = 485 // { int cpuset_setid(cpuwhich_t which, id_t id, \
+- SYS_CPUSET_GETID = 486 // { int cpuset_getid(cpulevel_t level, \
+- SYS_CPUSET_GETAFFINITY = 487 // { int cpuset_getaffinity(cpulevel_t level, \
+- SYS_CPUSET_SETAFFINITY = 488 // { int cpuset_setaffinity(cpulevel_t level, \
+- SYS_FACCESSAT = 489 // { int faccessat(int fd, char *path, int amode, \
+- SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, \
+- SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, \
+- SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, \
+- SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, \
+- SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, \
+- SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, \
+- SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); }
+- SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); }
+- SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, \
+- SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, \
+- SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, \
+- SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, \
+- SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, \
+- SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); }
+- SYS_POSIX_OPENPT = 504 // { int posix_openpt(int flags); }
+- SYS_JAIL_GET = 506 // { int jail_get(struct iovec *iovp, \
+- SYS_JAIL_SET = 507 // { int jail_set(struct iovec *iovp, \
+- SYS_JAIL_REMOVE = 508 // { int jail_remove(int jid); }
+- SYS_CLOSEFROM = 509 // { int closefrom(int lowfd); }
+- SYS_LPATHCONF = 513 // { int lpathconf(char *path, int name); }
+- SYS___CAP_RIGHTS_GET = 515 // { int __cap_rights_get(int version, \
+- SYS_CAP_ENTER = 516 // { int cap_enter(void); }
+- SYS_CAP_GETMODE = 517 // { int cap_getmode(u_int *modep); }
+- SYS_PDFORK = 518 // { int pdfork(int *fdp, int flags); }
+- SYS_PDKILL = 519 // { int pdkill(int fd, int signum); }
+- SYS_PDGETPID = 520 // { int pdgetpid(int fd, pid_t *pidp); }
+- SYS_PSELECT = 522 // { int pselect(int nd, fd_set *in, \
+- SYS_GETLOGINCLASS = 523 // { int getloginclass(char *namebuf, \
+- SYS_SETLOGINCLASS = 524 // { int setloginclass(const char *namebuf); }
+- SYS_RCTL_GET_RACCT = 525 // { int rctl_get_racct(const void *inbufp, \
+- SYS_RCTL_GET_RULES = 526 // { int rctl_get_rules(const void *inbufp, \
+- SYS_RCTL_GET_LIMITS = 527 // { int rctl_get_limits(const void *inbufp, \
+- SYS_RCTL_ADD_RULE = 528 // { int rctl_add_rule(const void *inbufp, \
+- SYS_RCTL_REMOVE_RULE = 529 // { int rctl_remove_rule(const void *inbufp, \
+- SYS_POSIX_FALLOCATE = 530 // { int posix_fallocate(int fd, \
+- SYS_POSIX_FADVISE = 531 // { int posix_fadvise(int fd, off_t offset, \
+- SYS_WAIT6 = 532 // { int wait6(idtype_t idtype, id_t id, \
+- SYS_CAP_RIGHTS_LIMIT = 533 // { int cap_rights_limit(int fd, \
+- SYS_CAP_IOCTLS_LIMIT = 534 // { int cap_ioctls_limit(int fd, \
+- SYS_CAP_IOCTLS_GET = 535 // { ssize_t cap_ioctls_get(int fd, \
+- SYS_CAP_FCNTLS_LIMIT = 536 // { int cap_fcntls_limit(int fd, \
+- SYS_CAP_FCNTLS_GET = 537 // { int cap_fcntls_get(int fd, \
+- SYS_BINDAT = 538 // { int bindat(int fd, int s, caddr_t name, \
+- SYS_CONNECTAT = 539 // { int connectat(int fd, int s, caddr_t name, \
+- SYS_CHFLAGSAT = 540 // { int chflagsat(int fd, const char *path, \
+- SYS_ACCEPT4 = 541 // { int accept4(int s, \
+- SYS_PIPE2 = 542 // { int pipe2(int *fildes, int flags); }
+- SYS_PROCCTL = 544 // { int procctl(idtype_t idtype, id_t id, \
+- SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, \
+- SYS_FUTIMENS = 546 // { int futimens(int fd, \
+- SYS_UTIMENSAT = 547 // { int utimensat(int fd, \
++ SYS_EXIT = 1 // { void sys_exit(int rval); } exit sys_exit_args void
++ SYS_FORK = 2 // { int fork(void); }
++ SYS_READ = 3 // { ssize_t read(int fd, void *buf, size_t nbyte); }
++ SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, size_t nbyte); }
++ SYS_OPEN = 5 // { int open(char *path, int flags, int mode); }
++ SYS_CLOSE = 6 // { int close(int fd); }
++ SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, struct rusage *rusage); }
++ SYS_LINK = 9 // { int link(char *path, char *link); }
++ SYS_UNLINK = 10 // { int unlink(char *path); }
++ SYS_CHDIR = 12 // { int chdir(char *path); }
++ SYS_FCHDIR = 13 // { int fchdir(int fd); }
++ SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); }
++ SYS_CHMOD = 15 // { int chmod(char *path, int mode); }
++ SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); }
++ SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int
++ SYS_GETPID = 20 // { pid_t getpid(void); }
++ SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); }
++ SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); }
++ SYS_SETUID = 23 // { int setuid(uid_t uid); }
++ SYS_GETUID = 24 // { uid_t getuid(void); }
++ SYS_GETEUID = 25 // { uid_t geteuid(void); }
++ SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, int data); }
++ SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, int flags); }
++ SYS_SENDMSG = 28 // { int sendmsg(int s, struct msghdr *msg, int flags); }
++ SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, int flags, struct sockaddr * __restrict from, __socklen_t * __restrict fromlenaddr); }
++ SYS_ACCEPT = 30 // { int accept(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen); }
++ SYS_GETPEERNAME = 31 // { int getpeername(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
++ SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
++ SYS_ACCESS = 33 // { int access(char *path, int amode); }
++ SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); }
++ SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); }
++ SYS_SYNC = 36 // { int sync(void); }
++ SYS_KILL = 37 // { int kill(int pid, int signum); }
++ SYS_GETPPID = 39 // { pid_t getppid(void); }
++ SYS_DUP = 41 // { int dup(u_int fd); }
++ SYS_PIPE = 42 // { int pipe(void); }
++ SYS_GETEGID = 43 // { gid_t getegid(void); }
++ SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); }
++ SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); }
++ SYS_GETGID = 47 // { gid_t getgid(void); }
++ SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int namelen); }
++ SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); }
++ SYS_ACCT = 51 // { int acct(char *path); }
++ SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, stack_t *oss); }
++ SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, caddr_t data); }
++ SYS_REBOOT = 55 // { int reboot(int opt); }
++ SYS_REVOKE = 56 // { int revoke(char *path); }
++ SYS_SYMLINK = 57 // { int symlink(char *path, char *link); }
++ SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, size_t count); }
++ SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); }
++ SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args int
++ SYS_CHROOT = 61 // { int chroot(char *path); }
++ SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); }
++ SYS_VFORK = 66 // { int vfork(void); }
++ SYS_SBRK = 69 // { int sbrk(int incr); }
++ SYS_SSTK = 70 // { int sstk(int incr); }
++ SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise ovadvise_args int
++ SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); }
++ SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, int prot); }
++ SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); }
++ SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); }
++ SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); }
++ SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, gid_t *gidset); }
++ SYS_GETPGRP = 81 // { int getpgrp(void); }
++ SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); }
++ SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, struct itimerval *oitv); }
++ SYS_SWAPON = 85 // { int swapon(char *name); }
++ SYS_GETITIMER = 86 // { int getitimer(u_int which, struct itimerval *itv); }
++ SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); }
++ SYS_DUP2 = 90 // { int dup2(u_int from, u_int to); }
++ SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); }
++ SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
++ SYS_FSYNC = 95 // { int fsync(int fd); }
++ SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, int prio); }
++ SYS_SOCKET = 97 // { int socket(int domain, int type, int protocol); }
++ SYS_CONNECT = 98 // { int connect(int s, caddr_t name, int namelen); }
++ SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); }
++ SYS_BIND = 104 // { int bind(int s, caddr_t name, int namelen); }
++ SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, caddr_t val, int valsize); }
++ SYS_LISTEN = 106 // { int listen(int s, int backlog); }
++ SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, struct timezone *tzp); }
++ SYS_GETRUSAGE = 117 // { int getrusage(int who, struct rusage *rusage); }
++ SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, caddr_t val, int *avalsize); }
++ SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, u_int iovcnt); }
++ SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, u_int iovcnt); }
++ SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, struct timezone *tzp); }
++ SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); }
++ SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); }
++ SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); }
++ SYS_SETREGID = 127 // { int setregid(int rgid, int egid); }
++ SYS_RENAME = 128 // { int rename(char *from, char *to); }
++ SYS_FLOCK = 131 // { int flock(int fd, int how); }
++ SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); }
++ SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, int flags, caddr_t to, int tolen); }
++ SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); }
++ SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, int *rsv); }
++ SYS_MKDIR = 136 // { int mkdir(char *path, int mode); }
++ SYS_RMDIR = 137 // { int rmdir(char *path); }
++ SYS_UTIMES = 138 // { int utimes(char *path, struct timeval *tptr); }
++ SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, struct timeval *olddelta); }
++ SYS_SETSID = 147 // { int setsid(void); }
++ SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, caddr_t arg); }
++ SYS_NLM_SYSCALL = 154 // { int nlm_syscall(int debug_level, int grace_period, int addr_count, char **addrs); }
++ SYS_NFSSVC = 155 // { int nfssvc(int flag, caddr_t argp); }
++ SYS_LGETFH = 160 // { int lgetfh(char *fname, struct fhandle *fhp); }
++ SYS_GETFH = 161 // { int getfh(char *fname, struct fhandle *fhp); }
++ SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); }
++ SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, struct rtprio *rtp); }
++ SYS_SEMSYS = 169 // { int semsys(int which, int a2, int a3, int a4, int a5); }
++ SYS_MSGSYS = 170 // { int msgsys(int which, int a2, int a3, int a4, int a5, int a6); }
++ SYS_SHMSYS = 171 // { int shmsys(int which, int a2, int a3, int a4); }
++ SYS_SETFIB = 175 // { int setfib(int fibnum); }
++ SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); }
++ SYS_SETGID = 181 // { int setgid(gid_t gid); }
++ SYS_SETEGID = 182 // { int setegid(gid_t egid); }
++ SYS_SETEUID = 183 // { int seteuid(uid_t euid); }
++ SYS_STAT = 188 // { int stat(char *path, struct stat *ub); }
++ SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); }
++ SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); }
++ SYS_PATHCONF = 191 // { int pathconf(char *path, int name); }
++ SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); }
++ SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int
++ SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int
++ SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, u_int count, long *basep); }
++ SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } __sysctl sysctl_args int
++ SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); }
++ SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); }
++ SYS_UNDELETE = 205 // { int undelete(char *path); }
++ SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); }
++ SYS_GETPGID = 207 // { int getpgid(pid_t pid); }
++ SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, int timeout); }
++ SYS_SEMGET = 221 // { int semget(key_t key, int nsems, int semflg); }
++ SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, size_t nsops); }
++ SYS_MSGGET = 225 // { int msgget(key_t key, int msgflg); }
++ SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
++ SYS_MSGRCV = 227 // { int msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
++ SYS_SHMAT = 228 // { int shmat(int shmid, const void *shmaddr, int shmflg); }
++ SYS_SHMDT = 230 // { int shmdt(const void *shmaddr); }
++ SYS_SHMGET = 231 // { int shmget(key_t key, size_t size, int shmflg); }
++ SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, struct timespec *tp); }
++ SYS_CLOCK_SETTIME = 233 // { int clock_settime( clockid_t clock_id, const struct timespec *tp); }
++ SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, struct timespec *tp); }
++ SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, struct sigevent *evp, int *timerid); }
++ SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); }
++ SYS_KTIMER_SETTIME = 237 // { int ktimer_settime(int timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue); }
++ SYS_KTIMER_GETTIME = 238 // { int ktimer_gettime(int timerid, struct itimerspec *value); }
++ SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); }
++ SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
++ SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); }
++ SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( struct ffclock_estimate *cest); }
++ SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( struct ffclock_estimate *cest); }
++ SYS_CLOCK_NANOSLEEP = 244 // { int clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *rqtp, struct timespec *rmtp); }
++ SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,int which, clockid_t *clock_id); }
++ SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); }
++ SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, int inherit); }
++ SYS_RFORK = 251 // { int rfork(int flags); }
++ SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, u_int nfds, int timeout); }
++ SYS_ISSETUGID = 253 // { int issetugid(void); }
++ SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); }
++ SYS_AIO_READ = 255 // { int aio_read(struct aiocb *aiocbp); }
++ SYS_AIO_WRITE = 256 // { int aio_write(struct aiocb *aiocbp); }
++ SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); }
++ SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, size_t count); }
++ SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); }
++ SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); }
++ SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); }
++ SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); }
++ SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); }
++ SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); }
++ SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); }
++ SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); }
++ SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); }
++ SYS_MODNEXT = 300 // { int modnext(int modid); }
++ SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat *stat); }
++ SYS_MODFNEXT = 302 // { int modfnext(int modid); }
++ SYS_MODFIND = 303 // { int modfind(const char *name); }
++ SYS_KLDLOAD = 304 // { int kldload(const char *file); }
++ SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); }
++ SYS_KLDFIND = 306 // { int kldfind(const char *file); }
++ SYS_KLDNEXT = 307 // { int kldnext(int fileid); }
++ SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat* stat); }
++ SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); }
++ SYS_GETSID = 310 // { int getsid(pid_t pid); }
++ SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, uid_t suid); }
++ SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
++ SYS_AIO_RETURN = 314 // { ssize_t aio_return(struct aiocb *aiocbp); }
++ SYS_AIO_SUSPEND = 315 // { int aio_suspend( struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); }
++ SYS_AIO_CANCEL = 316 // { int aio_cancel(int fd, struct aiocb *aiocbp); }
++ SYS_AIO_ERROR = 317 // { int aio_error(struct aiocb *aiocbp); }
++ SYS_YIELD = 321 // { int yield(void); }
++ SYS_MLOCKALL = 324 // { int mlockall(int how); }
++ SYS_MUNLOCKALL = 325 // { int munlockall(void); }
++ SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); }
++ SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, const struct sched_param *param); }
++ SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct sched_param *param); }
++ SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); }
++ SYS_SCHED_GETSCHEDULER = 330 // { int sched_getscheduler (pid_t pid); }
++ SYS_SCHED_YIELD = 331 // { int sched_yield (void); }
++ SYS_SCHED_GET_PRIORITY_MAX = 332 // { int sched_get_priority_max (int policy); }
++ SYS_SCHED_GET_PRIORITY_MIN = 333 // { int sched_get_priority_min (int policy); }
++ SYS_SCHED_RR_GET_INTERVAL = 334 // { int sched_rr_get_interval (pid_t pid, struct timespec *interval); }
++ SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); }
++ SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, void *data); }
++ SYS_JAIL = 338 // { int jail(struct jail *jail); }
++ SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, const sigset_t *set, sigset_t *oset); }
++ SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); }
++ SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); }
++ SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set, siginfo_t *info, const struct timespec *timeout); }
++ SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set, siginfo_t *info); }
++ SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, acl_type_t type); }
++ SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, acl_type_t type); }
++ SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, struct acl *aclp); }
++ SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, const char *filename, int attrnamespace, const char *attrname); }
++ SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, int attrnamespace, const char *attrname); }
++ SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete( struct aiocb **aiocbp, struct timespec *timeout); }
++ SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
++ SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
++ SYS_KQUEUE = 362 // { int kqueue(void); }
++ SYS_KEVENT = 363 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
++ SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, int attrnamespace, const char *attrname); }
++ SYS___SETUGID = 374 // { int __setugid(int flag); }
++ SYS_EACCESS = 376 // { int eaccess(char *path, int amode); }
++ SYS_NMOUNT = 378 // { int nmount(struct iovec *iovp, unsigned int iovcnt, int flags); }
++ SYS___MAC_GET_PROC = 384 // { int __mac_get_proc(struct mac *mac_p); }
++ SYS___MAC_SET_PROC = 385 // { int __mac_set_proc(struct mac *mac_p); }
++ SYS___MAC_GET_FD = 386 // { int __mac_get_fd(int fd, struct mac *mac_p); }
++ SYS___MAC_GET_FILE = 387 // { int __mac_get_file(const char *path_p, struct mac *mac_p); }
++ SYS___MAC_SET_FD = 388 // { int __mac_set_fd(int fd, struct mac *mac_p); }
++ SYS___MAC_SET_FILE = 389 // { int __mac_set_file(const char *path_p, struct mac *mac_p); }
++ SYS_KENV = 390 // { int kenv(int what, const char *name, char *value, int len); }
++ SYS_LCHFLAGS = 391 // { int lchflags(const char *path, u_long flags); }
++ SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); }
++ SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); }
++ SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, int call, void *arg); }
++ SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, long bufsize, int mode); }
++ SYS_STATFS = 396 // { int statfs(char *path, struct statfs *buf); }
++ SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); }
++ SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); }
++ SYS_KSEM_CLOSE = 400 // { int ksem_close(semid_t id); }
++ SYS_KSEM_POST = 401 // { int ksem_post(semid_t id); }
++ SYS_KSEM_WAIT = 402 // { int ksem_wait(semid_t id); }
++ SYS_KSEM_TRYWAIT = 403 // { int ksem_trywait(semid_t id); }
++ SYS_KSEM_INIT = 404 // { int ksem_init(semid_t *idp, unsigned int value); }
++ SYS_KSEM_OPEN = 405 // { int ksem_open(semid_t *idp, const char *name, int oflag, mode_t mode, unsigned int value); }
++ SYS_KSEM_UNLINK = 406 // { int ksem_unlink(const char *name); }
++ SYS_KSEM_GETVALUE = 407 // { int ksem_getvalue(semid_t id, int *val); }
++ SYS_KSEM_DESTROY = 408 // { int ksem_destroy(semid_t id); }
++ SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, struct mac *mac_p); }
++ SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, struct mac *mac_p); }
++ SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, struct mac *mac_p); }
++ SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( const char *path, int attrnamespace, const char *attrname); }
++ SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, char **envv, struct mac *mac_p); }
++ SYS_SIGACTION = 416 // { int sigaction(int sig, const struct sigaction *act, struct sigaction *oact); }
++ SYS_SIGRETURN = 417 // { int sigreturn( const struct __ucontext *sigcntxp); }
++ SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); }
++ SYS_SETCONTEXT = 422 // { int setcontext( const struct __ucontext *ucp); }
++ SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, const struct __ucontext *ucp); }
++ SYS_SWAPOFF = 424 // { int swapoff(const char *name); }
++ SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_SET_LINK = 426 // { int __acl_set_link(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_DELETE_LINK = 427 // { int __acl_delete_link(const char *path, acl_type_t type); }
++ SYS___ACL_ACLCHECK_LINK = 428 // { int __acl_aclcheck_link(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS_SIGWAIT = 429 // { int sigwait(const sigset_t *set, int *sig); }
++ SYS_THR_CREATE = 430 // { int thr_create(ucontext_t *ctx, long *id, int flags); }
++ SYS_THR_EXIT = 431 // { void thr_exit(long *state); }
++ SYS_THR_SELF = 432 // { int thr_self(long *id); }
++ SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); }
++ SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); }
++ SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, int attrnamespace, void *data, size_t nbytes); }
++ SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( const char *path, int attrnamespace, void *data, size_t nbytes); }
++ SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( const char *path, int attrnamespace, void *data, size_t nbytes); }
++ SYS_KSEM_TIMEDWAIT = 441 // { int ksem_timedwait(semid_t id, const struct timespec *abstime); }
++ SYS_THR_SUSPEND = 442 // { int thr_suspend( const struct timespec *timeout); }
++ SYS_THR_WAKE = 443 // { int thr_wake(long id); }
++ SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); }
++ SYS_AUDIT = 445 // { int audit(const void *record, u_int length); }
++ SYS_AUDITON = 446 // { int auditon(int cmd, void *data, u_int length); }
++ SYS_GETAUID = 447 // { int getauid(uid_t *auid); }
++ SYS_SETAUID = 448 // { int setauid(uid_t *auid); }
++ SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); }
++ SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); }
++ SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); }
++ SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); }
++ SYS_AUDITCTL = 453 // { int auditctl(char *path); }
++ SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, u_long val, void *uaddr1, void *uaddr2); }
++ SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, int param_size); }
++ SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); }
++ SYS_KMQ_OPEN = 457 // { int kmq_open(const char *path, int flags, mode_t mode, const struct mq_attr *attr); }
++ SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); }
++ SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); }
++ SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len,unsigned msg_prio, const struct timespec *abs_timeout);}
++ SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); }
++ SYS_KMQ_UNLINK = 462 // { int kmq_unlink(const char *path); }
++ SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); }
++ SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); }
++ SYS_AIO_FSYNC = 465 // { int aio_fsync(int op, struct aiocb *aiocbp); }
++ SYS_RTPRIO_THREAD = 466 // { int rtprio_thread(int function, lwpid_t lwpid, struct rtprio *rtp); }
++ SYS_SCTP_PEELOFF = 471 // { int sctp_peeloff(int sd, uint32_t name); }
++ SYS_SCTP_GENERIC_SENDMSG = 472 // { int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); }
++ SYS_SCTP_GENERIC_SENDMSG_IOV = 473 // { int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); }
++ SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr * from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); }
++ SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, size_t nbyte, off_t offset); }
++ SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, size_t nbyte, off_t offset); }
++ SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, off_t pos); }
++ SYS_LSEEK = 478 // { off_t lseek(int fd, off_t offset, int whence); }
++ SYS_TRUNCATE = 479 // { int truncate(char *path, off_t length); }
++ SYS_FTRUNCATE = 480 // { int ftruncate(int fd, off_t length); }
++ SYS_THR_KILL2 = 481 // { int thr_kill2(pid_t pid, long id, int sig); }
++ SYS_SHM_OPEN = 482 // { int shm_open(const char *path, int flags, mode_t mode); }
++ SYS_SHM_UNLINK = 483 // { int shm_unlink(const char *path); }
++ SYS_CPUSET = 484 // { int cpuset(cpusetid_t *setid); }
++ SYS_CPUSET_SETID = 485 // { int cpuset_setid(cpuwhich_t which, id_t id, cpusetid_t setid); }
++ SYS_CPUSET_GETID = 486 // { int cpuset_getid(cpulevel_t level, cpuwhich_t which, id_t id, cpusetid_t *setid); }
++ SYS_CPUSET_GETAFFINITY = 487 // { int cpuset_getaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, cpuset_t *mask); }
++ SYS_CPUSET_SETAFFINITY = 488 // { int cpuset_setaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, const cpuset_t *mask); }
++ SYS_FACCESSAT = 489 // { int faccessat(int fd, char *path, int amode, int flag); }
++ SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, int flag); }
++ SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, gid_t gid, int flag); }
++ SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, char **envv); }
++ SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, struct stat *buf, int flag); }
++ SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, struct timeval *times); }
++ SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, char *path2, int flag); }
++ SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); }
++ SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); }
++ SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); }
++ SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, mode_t mode); }
++ SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, size_t bufsize); }
++ SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, char *new); }
++ SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, char *path2); }
++ SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); }
++ SYS_POSIX_OPENPT = 504 // { int posix_openpt(int flags); }
++ SYS_GSSD_SYSCALL = 505 // { int gssd_syscall(char *path); }
++ SYS_JAIL_GET = 506 // { int jail_get(struct iovec *iovp, unsigned int iovcnt, int flags); }
++ SYS_JAIL_SET = 507 // { int jail_set(struct iovec *iovp, unsigned int iovcnt, int flags); }
++ SYS_JAIL_REMOVE = 508 // { int jail_remove(int jid); }
++ SYS_CLOSEFROM = 509 // { int closefrom(int lowfd); }
++ SYS___SEMCTL = 510 // { int __semctl(int semid, int semnum, int cmd, union semun *arg); }
++ SYS_MSGCTL = 511 // { int msgctl(int msqid, int cmd, struct msqid_ds *buf); }
++ SYS_SHMCTL = 512 // { int shmctl(int shmid, int cmd, struct shmid_ds *buf); }
++ SYS_LPATHCONF = 513 // { int lpathconf(char *path, int name); }
++ SYS___CAP_RIGHTS_GET = 515 // { int __cap_rights_get(int version, int fd, cap_rights_t *rightsp); }
++ SYS_CAP_ENTER = 516 // { int cap_enter(void); }
++ SYS_CAP_GETMODE = 517 // { int cap_getmode(u_int *modep); }
++ SYS_PDFORK = 518 // { int pdfork(int *fdp, int flags); }
++ SYS_PDKILL = 519 // { int pdkill(int fd, int signum); }
++ SYS_PDGETPID = 520 // { int pdgetpid(int fd, pid_t *pidp); }
++ SYS_PSELECT = 522 // { int pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *sm); }
++ SYS_GETLOGINCLASS = 523 // { int getloginclass(char *namebuf, size_t namelen); }
++ SYS_SETLOGINCLASS = 524 // { int setloginclass(const char *namebuf); }
++ SYS_RCTL_GET_RACCT = 525 // { int rctl_get_racct(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_RCTL_GET_RULES = 526 // { int rctl_get_rules(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_RCTL_GET_LIMITS = 527 // { int rctl_get_limits(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_RCTL_ADD_RULE = 528 // { int rctl_add_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_RCTL_REMOVE_RULE = 529 // { int rctl_remove_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_POSIX_FALLOCATE = 530 // { int posix_fallocate(int fd, off_t offset, off_t len); }
++ SYS_POSIX_FADVISE = 531 // { int posix_fadvise(int fd, off_t offset, off_t len, int advice); }
++ SYS_WAIT6 = 532 // { int wait6(idtype_t idtype, id_t id, int *status, int options, struct __wrusage *wrusage, siginfo_t *info); }
++ SYS_CAP_RIGHTS_LIMIT = 533 // { int cap_rights_limit(int fd, cap_rights_t *rightsp); }
++ SYS_CAP_IOCTLS_LIMIT = 534 // { int cap_ioctls_limit(int fd, const u_long *cmds, size_t ncmds); }
++ SYS_CAP_IOCTLS_GET = 535 // { ssize_t cap_ioctls_get(int fd, u_long *cmds, size_t maxcmds); }
++ SYS_CAP_FCNTLS_LIMIT = 536 // { int cap_fcntls_limit(int fd, uint32_t fcntlrights); }
++ SYS_CAP_FCNTLS_GET = 537 // { int cap_fcntls_get(int fd, uint32_t *fcntlrightsp); }
++ SYS_BINDAT = 538 // { int bindat(int fd, int s, caddr_t name, int namelen); }
++ SYS_CONNECTAT = 539 // { int connectat(int fd, int s, caddr_t name, int namelen); }
++ SYS_CHFLAGSAT = 540 // { int chflagsat(int fd, const char *path, u_long flags, int atflag); }
++ SYS_ACCEPT4 = 541 // { int accept4(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen, int flags); }
++ SYS_PIPE2 = 542 // { int pipe2(int *fildes, int flags); }
++ SYS_AIO_MLOCK = 543 // { int aio_mlock(struct aiocb *aiocbp); }
++ SYS_PROCCTL = 544 // { int procctl(idtype_t idtype, id_t id, int com, void *data); }
++ SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *set); }
++ SYS_FUTIMENS = 546 // { int futimens(int fd, struct timespec *times); }
++ SYS_UTIMENSAT = 547 // { int utimensat(int fd, char *path, struct timespec *times, int flag); }
++ SYS_NUMA_GETAFFINITY = 548 // { int numa_getaffinity(cpuwhich_t which, id_t id, struct vm_domain_policy_entry *policy); }
++ SYS_NUMA_SETAFFINITY = 549 // { int numa_setaffinity(cpuwhich_t which, id_t id, const struct vm_domain_policy_entry *policy); }
++ SYS_FDATASYNC = 550 // { int fdatasync(int fd); }
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go
+index 44883141..4a6dfd4a 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go
+@@ -1,4 +1,4 @@
+-// mksysnum_freebsd.pl
++// go run mksysnum.go https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build arm,freebsd
+@@ -7,347 +7,390 @@ package unix
+
+ const (
+ // SYS_NOSYS = 0; // { int nosys(void); } syscall nosys_args int
+- SYS_EXIT = 1 // { void sys_exit(int rval); } exit \
+- SYS_FORK = 2 // { int fork(void); }
+- SYS_READ = 3 // { ssize_t read(int fd, void *buf, \
+- SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, \
+- SYS_OPEN = 5 // { int open(char *path, int flags, int mode); }
+- SYS_CLOSE = 6 // { int close(int fd); }
+- SYS_WAIT4 = 7 // { int wait4(int pid, int *status, \
+- SYS_LINK = 9 // { int link(char *path, char *link); }
+- SYS_UNLINK = 10 // { int unlink(char *path); }
+- SYS_CHDIR = 12 // { int chdir(char *path); }
+- SYS_FCHDIR = 13 // { int fchdir(int fd); }
+- SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); }
+- SYS_CHMOD = 15 // { int chmod(char *path, int mode); }
+- SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); }
+- SYS_OBREAK = 17 // { int obreak(char *nsize); } break \
+- SYS_GETPID = 20 // { pid_t getpid(void); }
+- SYS_MOUNT = 21 // { int mount(char *type, char *path, \
+- SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); }
+- SYS_SETUID = 23 // { int setuid(uid_t uid); }
+- SYS_GETUID = 24 // { uid_t getuid(void); }
+- SYS_GETEUID = 25 // { uid_t geteuid(void); }
+- SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, \
+- SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, \
+- SYS_SENDMSG = 28 // { int sendmsg(int s, struct msghdr *msg, \
+- SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, \
+- SYS_ACCEPT = 30 // { int accept(int s, \
+- SYS_GETPEERNAME = 31 // { int getpeername(int fdes, \
+- SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, \
+- SYS_ACCESS = 33 // { int access(char *path, int amode); }
+- SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); }
+- SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); }
+- SYS_SYNC = 36 // { int sync(void); }
+- SYS_KILL = 37 // { int kill(int pid, int signum); }
+- SYS_GETPPID = 39 // { pid_t getppid(void); }
+- SYS_DUP = 41 // { int dup(u_int fd); }
+- SYS_PIPE = 42 // { int pipe(void); }
+- SYS_GETEGID = 43 // { gid_t getegid(void); }
+- SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, \
+- SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, \
+- SYS_GETGID = 47 // { gid_t getgid(void); }
+- SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int \
+- SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); }
+- SYS_ACCT = 51 // { int acct(char *path); }
+- SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, \
+- SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, \
+- SYS_REBOOT = 55 // { int reboot(int opt); }
+- SYS_REVOKE = 56 // { int revoke(char *path); }
+- SYS_SYMLINK = 57 // { int symlink(char *path, char *link); }
+- SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, \
+- SYS_EXECVE = 59 // { int execve(char *fname, char **argv, \
+- SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args \
+- SYS_CHROOT = 61 // { int chroot(char *path); }
+- SYS_MSYNC = 65 // { int msync(void *addr, size_t len, \
+- SYS_VFORK = 66 // { int vfork(void); }
+- SYS_SBRK = 69 // { int sbrk(int incr); }
+- SYS_SSTK = 70 // { int sstk(int incr); }
+- SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise \
+- SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); }
+- SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, \
+- SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, \
+- SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, \
+- SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, \
+- SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, \
+- SYS_GETPGRP = 81 // { int getpgrp(void); }
+- SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); }
+- SYS_SETITIMER = 83 // { int setitimer(u_int which, struct \
+- SYS_SWAPON = 85 // { int swapon(char *name); }
+- SYS_GETITIMER = 86 // { int getitimer(u_int which, \
+- SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); }
+- SYS_DUP2 = 90 // { int dup2(u_int from, u_int to); }
+- SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); }
+- SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, \
+- SYS_FSYNC = 95 // { int fsync(int fd); }
+- SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, \
+- SYS_SOCKET = 97 // { int socket(int domain, int type, \
+- SYS_CONNECT = 98 // { int connect(int s, caddr_t name, \
+- SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); }
+- SYS_BIND = 104 // { int bind(int s, caddr_t name, \
+- SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, \
+- SYS_LISTEN = 106 // { int listen(int s, int backlog); }
+- SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, \
+- SYS_GETRUSAGE = 117 // { int getrusage(int who, \
+- SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, \
+- SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, \
+- SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, \
+- SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, \
+- SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); }
+- SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); }
+- SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); }
+- SYS_SETREGID = 127 // { int setregid(int rgid, int egid); }
+- SYS_RENAME = 128 // { int rename(char *from, char *to); }
+- SYS_FLOCK = 131 // { int flock(int fd, int how); }
+- SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); }
+- SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, \
+- SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); }
+- SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, \
+- SYS_MKDIR = 136 // { int mkdir(char *path, int mode); }
+- SYS_RMDIR = 137 // { int rmdir(char *path); }
+- SYS_UTIMES = 138 // { int utimes(char *path, \
+- SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, \
+- SYS_SETSID = 147 // { int setsid(void); }
+- SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, \
+- SYS_LGETFH = 160 // { int lgetfh(char *fname, \
+- SYS_GETFH = 161 // { int getfh(char *fname, \
+- SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); }
+- SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, \
+- SYS_FREEBSD6_PREAD = 173 // { ssize_t freebsd6_pread(int fd, void *buf, \
+- SYS_FREEBSD6_PWRITE = 174 // { ssize_t freebsd6_pwrite(int fd, \
+- SYS_SETFIB = 175 // { int setfib(int fibnum); }
+- SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); }
+- SYS_SETGID = 181 // { int setgid(gid_t gid); }
+- SYS_SETEGID = 182 // { int setegid(gid_t egid); }
+- SYS_SETEUID = 183 // { int seteuid(uid_t euid); }
+- SYS_STAT = 188 // { int stat(char *path, struct stat *ub); }
+- SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); }
+- SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); }
+- SYS_PATHCONF = 191 // { int pathconf(char *path, int name); }
+- SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); }
+- SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, \
+- SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, \
+- SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, \
+- SYS_FREEBSD6_MMAP = 197 // { caddr_t freebsd6_mmap(caddr_t addr, \
+- SYS_FREEBSD6_LSEEK = 199 // { off_t freebsd6_lseek(int fd, int pad, \
+- SYS_FREEBSD6_TRUNCATE = 200 // { int freebsd6_truncate(char *path, int pad, \
+- SYS_FREEBSD6_FTRUNCATE = 201 // { int freebsd6_ftruncate(int fd, int pad, \
+- SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, \
+- SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); }
+- SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); }
+- SYS_UNDELETE = 205 // { int undelete(char *path); }
+- SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); }
+- SYS_GETPGID = 207 // { int getpgid(pid_t pid); }
+- SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, \
+- SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, \
+- SYS_CLOCK_SETTIME = 233 // { int clock_settime( \
+- SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, \
+- SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, \
+- SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); }
+- SYS_KTIMER_SETTIME = 237 // { int ktimer_settime(int timerid, int flags, \
+- SYS_KTIMER_GETTIME = 238 // { int ktimer_gettime(int timerid, struct \
+- SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); }
+- SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, \
+- SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); }
+- SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( \
+- SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( \
+- SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,\
+- SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); }
+- SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, \
+- SYS_RFORK = 251 // { int rfork(int flags); }
+- SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, \
+- SYS_ISSETUGID = 253 // { int issetugid(void); }
+- SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); }
+- SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, \
+- SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); }
+- SYS_LUTIMES = 276 // { int lutimes(char *path, \
+- SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); }
+- SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); }
+- SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); }
+- SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, \
+- SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, \
+- SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, \
+- SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, \
+- SYS_MODNEXT = 300 // { int modnext(int modid); }
+- SYS_MODSTAT = 301 // { int modstat(int modid, \
+- SYS_MODFNEXT = 302 // { int modfnext(int modid); }
+- SYS_MODFIND = 303 // { int modfind(const char *name); }
+- SYS_KLDLOAD = 304 // { int kldload(const char *file); }
+- SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); }
+- SYS_KLDFIND = 306 // { int kldfind(const char *file); }
+- SYS_KLDNEXT = 307 // { int kldnext(int fileid); }
+- SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct \
+- SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); }
+- SYS_GETSID = 310 // { int getsid(pid_t pid); }
+- SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, \
+- SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, \
+- SYS_YIELD = 321 // { int yield(void); }
+- SYS_MLOCKALL = 324 // { int mlockall(int how); }
+- SYS_MUNLOCKALL = 325 // { int munlockall(void); }
+- SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); }
+- SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, \
+- SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct \
+- SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int \
+- SYS_SCHED_GETSCHEDULER = 330 // { int sched_getscheduler (pid_t pid); }
+- SYS_SCHED_YIELD = 331 // { int sched_yield (void); }
+- SYS_SCHED_GET_PRIORITY_MAX = 332 // { int sched_get_priority_max (int policy); }
+- SYS_SCHED_GET_PRIORITY_MIN = 333 // { int sched_get_priority_min (int policy); }
+- SYS_SCHED_RR_GET_INTERVAL = 334 // { int sched_rr_get_interval (pid_t pid, \
+- SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); }
+- SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, \
+- SYS_JAIL = 338 // { int jail(struct jail *jail); }
+- SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, \
+- SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); }
+- SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); }
+- SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set, \
+- SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set, \
+- SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, \
+- SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, \
+- SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, \
+- SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, \
+- SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, \
+- SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, \
+- SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, \
+- SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, \
+- SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, \
+- SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( \
+- SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( \
+- SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, \
+- SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, \
+- SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, \
+- SYS_KQUEUE = 362 // { int kqueue(void); }
+- SYS_KEVENT = 363 // { int kevent(int fd, \
+- SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, \
+- SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, \
+- SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, \
+- SYS___SETUGID = 374 // { int __setugid(int flag); }
+- SYS_EACCESS = 376 // { int eaccess(char *path, int amode); }
+- SYS_NMOUNT = 378 // { int nmount(struct iovec *iovp, \
+- SYS___MAC_GET_PROC = 384 // { int __mac_get_proc(struct mac *mac_p); }
+- SYS___MAC_SET_PROC = 385 // { int __mac_set_proc(struct mac *mac_p); }
+- SYS___MAC_GET_FD = 386 // { int __mac_get_fd(int fd, \
+- SYS___MAC_GET_FILE = 387 // { int __mac_get_file(const char *path_p, \
+- SYS___MAC_SET_FD = 388 // { int __mac_set_fd(int fd, \
+- SYS___MAC_SET_FILE = 389 // { int __mac_set_file(const char *path_p, \
+- SYS_KENV = 390 // { int kenv(int what, const char *name, \
+- SYS_LCHFLAGS = 391 // { int lchflags(const char *path, \
+- SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, \
+- SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, \
+- SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, \
+- SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, \
+- SYS_STATFS = 396 // { int statfs(char *path, \
+- SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); }
+- SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, \
+- SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, \
+- SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, \
+- SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, \
+- SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( \
+- SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( \
+- SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( \
+- SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, \
+- SYS_SIGACTION = 416 // { int sigaction(int sig, \
+- SYS_SIGRETURN = 417 // { int sigreturn( \
+- SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); }
+- SYS_SETCONTEXT = 422 // { int setcontext( \
+- SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, \
+- SYS_SWAPOFF = 424 // { int swapoff(const char *name); }
+- SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, \
+- SYS___ACL_SET_LINK = 426 // { int __acl_set_link(const char *path, \
+- SYS___ACL_DELETE_LINK = 427 // { int __acl_delete_link(const char *path, \
+- SYS___ACL_ACLCHECK_LINK = 428 // { int __acl_aclcheck_link(const char *path, \
+- SYS_SIGWAIT = 429 // { int sigwait(const sigset_t *set, \
+- SYS_THR_CREATE = 430 // { int thr_create(ucontext_t *ctx, long *id, \
+- SYS_THR_EXIT = 431 // { void thr_exit(long *state); }
+- SYS_THR_SELF = 432 // { int thr_self(long *id); }
+- SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); }
+- SYS__UMTX_LOCK = 434 // { int _umtx_lock(struct umtx *umtx); }
+- SYS__UMTX_UNLOCK = 435 // { int _umtx_unlock(struct umtx *umtx); }
+- SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); }
+- SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, \
+- SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( \
+- SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( \
+- SYS_THR_SUSPEND = 442 // { int thr_suspend( \
+- SYS_THR_WAKE = 443 // { int thr_wake(long id); }
+- SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); }
+- SYS_AUDIT = 445 // { int audit(const void *record, \
+- SYS_AUDITON = 446 // { int auditon(int cmd, void *data, \
+- SYS_GETAUID = 447 // { int getauid(uid_t *auid); }
+- SYS_SETAUID = 448 // { int setauid(uid_t *auid); }
+- SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); }
+- SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); }
+- SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( \
+- SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( \
+- SYS_AUDITCTL = 453 // { int auditctl(char *path); }
+- SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, \
+- SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, \
+- SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); }
+- SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); }
+- SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); }
+- SYS_RTPRIO_THREAD = 466 // { int rtprio_thread(int function, \
+- SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, \
+- SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, \
+- SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, \
+- SYS_LSEEK = 478 // { off_t lseek(int fd, off_t offset, \
+- SYS_TRUNCATE = 479 // { int truncate(char *path, off_t length); }
+- SYS_FTRUNCATE = 480 // { int ftruncate(int fd, off_t length); }
+- SYS_THR_KILL2 = 481 // { int thr_kill2(pid_t pid, long id, int sig); }
+- SYS_SHM_OPEN = 482 // { int shm_open(const char *path, int flags, \
+- SYS_SHM_UNLINK = 483 // { int shm_unlink(const char *path); }
+- SYS_CPUSET = 484 // { int cpuset(cpusetid_t *setid); }
+- SYS_CPUSET_SETID = 485 // { int cpuset_setid(cpuwhich_t which, id_t id, \
+- SYS_CPUSET_GETID = 486 // { int cpuset_getid(cpulevel_t level, \
+- SYS_CPUSET_GETAFFINITY = 487 // { int cpuset_getaffinity(cpulevel_t level, \
+- SYS_CPUSET_SETAFFINITY = 488 // { int cpuset_setaffinity(cpulevel_t level, \
+- SYS_FACCESSAT = 489 // { int faccessat(int fd, char *path, int amode, \
+- SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, \
+- SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, \
+- SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, \
+- SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, \
+- SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, \
+- SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, \
+- SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); }
+- SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); }
+- SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, \
+- SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, \
+- SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, \
+- SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, \
+- SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, \
+- SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); }
+- SYS_POSIX_OPENPT = 504 // { int posix_openpt(int flags); }
+- SYS_JAIL_GET = 506 // { int jail_get(struct iovec *iovp, \
+- SYS_JAIL_SET = 507 // { int jail_set(struct iovec *iovp, \
+- SYS_JAIL_REMOVE = 508 // { int jail_remove(int jid); }
+- SYS_CLOSEFROM = 509 // { int closefrom(int lowfd); }
+- SYS_LPATHCONF = 513 // { int lpathconf(char *path, int name); }
+- SYS___CAP_RIGHTS_GET = 515 // { int __cap_rights_get(int version, \
+- SYS_CAP_ENTER = 516 // { int cap_enter(void); }
+- SYS_CAP_GETMODE = 517 // { int cap_getmode(u_int *modep); }
+- SYS_PDFORK = 518 // { int pdfork(int *fdp, int flags); }
+- SYS_PDKILL = 519 // { int pdkill(int fd, int signum); }
+- SYS_PDGETPID = 520 // { int pdgetpid(int fd, pid_t *pidp); }
+- SYS_PSELECT = 522 // { int pselect(int nd, fd_set *in, \
+- SYS_GETLOGINCLASS = 523 // { int getloginclass(char *namebuf, \
+- SYS_SETLOGINCLASS = 524 // { int setloginclass(const char *namebuf); }
+- SYS_RCTL_GET_RACCT = 525 // { int rctl_get_racct(const void *inbufp, \
+- SYS_RCTL_GET_RULES = 526 // { int rctl_get_rules(const void *inbufp, \
+- SYS_RCTL_GET_LIMITS = 527 // { int rctl_get_limits(const void *inbufp, \
+- SYS_RCTL_ADD_RULE = 528 // { int rctl_add_rule(const void *inbufp, \
+- SYS_RCTL_REMOVE_RULE = 529 // { int rctl_remove_rule(const void *inbufp, \
+- SYS_POSIX_FALLOCATE = 530 // { int posix_fallocate(int fd, \
+- SYS_POSIX_FADVISE = 531 // { int posix_fadvise(int fd, off_t offset, \
+- SYS_WAIT6 = 532 // { int wait6(idtype_t idtype, id_t id, \
+- SYS_CAP_RIGHTS_LIMIT = 533 // { int cap_rights_limit(int fd, \
+- SYS_CAP_IOCTLS_LIMIT = 534 // { int cap_ioctls_limit(int fd, \
+- SYS_CAP_IOCTLS_GET = 535 // { ssize_t cap_ioctls_get(int fd, \
+- SYS_CAP_FCNTLS_LIMIT = 536 // { int cap_fcntls_limit(int fd, \
+- SYS_CAP_FCNTLS_GET = 537 // { int cap_fcntls_get(int fd, \
+- SYS_BINDAT = 538 // { int bindat(int fd, int s, caddr_t name, \
+- SYS_CONNECTAT = 539 // { int connectat(int fd, int s, caddr_t name, \
+- SYS_CHFLAGSAT = 540 // { int chflagsat(int fd, const char *path, \
+- SYS_ACCEPT4 = 541 // { int accept4(int s, \
+- SYS_PIPE2 = 542 // { int pipe2(int *fildes, int flags); }
+- SYS_PROCCTL = 544 // { int procctl(idtype_t idtype, id_t id, \
+- SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, \
+- SYS_FUTIMENS = 546 // { int futimens(int fd, \
+- SYS_UTIMENSAT = 547 // { int utimensat(int fd, \
++ SYS_EXIT = 1 // { void sys_exit(int rval); } exit sys_exit_args void
++ SYS_FORK = 2 // { int fork(void); }
++ SYS_READ = 3 // { ssize_t read(int fd, void *buf, size_t nbyte); }
++ SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, size_t nbyte); }
++ SYS_OPEN = 5 // { int open(char *path, int flags, int mode); }
++ SYS_CLOSE = 6 // { int close(int fd); }
++ SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, struct rusage *rusage); }
++ SYS_LINK = 9 // { int link(char *path, char *link); }
++ SYS_UNLINK = 10 // { int unlink(char *path); }
++ SYS_CHDIR = 12 // { int chdir(char *path); }
++ SYS_FCHDIR = 13 // { int fchdir(int fd); }
++ SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); }
++ SYS_CHMOD = 15 // { int chmod(char *path, int mode); }
++ SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); }
++ SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int
++ SYS_GETPID = 20 // { pid_t getpid(void); }
++ SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); }
++ SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); }
++ SYS_SETUID = 23 // { int setuid(uid_t uid); }
++ SYS_GETUID = 24 // { uid_t getuid(void); }
++ SYS_GETEUID = 25 // { uid_t geteuid(void); }
++ SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, int data); }
++ SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, int flags); }
++ SYS_SENDMSG = 28 // { int sendmsg(int s, struct msghdr *msg, int flags); }
++ SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, int flags, struct sockaddr * __restrict from, __socklen_t * __restrict fromlenaddr); }
++ SYS_ACCEPT = 30 // { int accept(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen); }
++ SYS_GETPEERNAME = 31 // { int getpeername(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
++ SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
++ SYS_ACCESS = 33 // { int access(char *path, int amode); }
++ SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); }
++ SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); }
++ SYS_SYNC = 36 // { int sync(void); }
++ SYS_KILL = 37 // { int kill(int pid, int signum); }
++ SYS_GETPPID = 39 // { pid_t getppid(void); }
++ SYS_DUP = 41 // { int dup(u_int fd); }
++ SYS_PIPE = 42 // { int pipe(void); }
++ SYS_GETEGID = 43 // { gid_t getegid(void); }
++ SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); }
++ SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); }
++ SYS_GETGID = 47 // { gid_t getgid(void); }
++ SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int namelen); }
++ SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); }
++ SYS_ACCT = 51 // { int acct(char *path); }
++ SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, stack_t *oss); }
++ SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, caddr_t data); }
++ SYS_REBOOT = 55 // { int reboot(int opt); }
++ SYS_REVOKE = 56 // { int revoke(char *path); }
++ SYS_SYMLINK = 57 // { int symlink(char *path, char *link); }
++ SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, size_t count); }
++ SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); }
++ SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args int
++ SYS_CHROOT = 61 // { int chroot(char *path); }
++ SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); }
++ SYS_VFORK = 66 // { int vfork(void); }
++ SYS_SBRK = 69 // { int sbrk(int incr); }
++ SYS_SSTK = 70 // { int sstk(int incr); }
++ SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise ovadvise_args int
++ SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); }
++ SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, int prot); }
++ SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); }
++ SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); }
++ SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); }
++ SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, gid_t *gidset); }
++ SYS_GETPGRP = 81 // { int getpgrp(void); }
++ SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); }
++ SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, struct itimerval *oitv); }
++ SYS_SWAPON = 85 // { int swapon(char *name); }
++ SYS_GETITIMER = 86 // { int getitimer(u_int which, struct itimerval *itv); }
++ SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); }
++ SYS_DUP2 = 90 // { int dup2(u_int from, u_int to); }
++ SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); }
++ SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
++ SYS_FSYNC = 95 // { int fsync(int fd); }
++ SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, int prio); }
++ SYS_SOCKET = 97 // { int socket(int domain, int type, int protocol); }
++ SYS_CONNECT = 98 // { int connect(int s, caddr_t name, int namelen); }
++ SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); }
++ SYS_BIND = 104 // { int bind(int s, caddr_t name, int namelen); }
++ SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, caddr_t val, int valsize); }
++ SYS_LISTEN = 106 // { int listen(int s, int backlog); }
++ SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, struct timezone *tzp); }
++ SYS_GETRUSAGE = 117 // { int getrusage(int who, struct rusage *rusage); }
++ SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, caddr_t val, int *avalsize); }
++ SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, u_int iovcnt); }
++ SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, u_int iovcnt); }
++ SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, struct timezone *tzp); }
++ SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); }
++ SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); }
++ SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); }
++ SYS_SETREGID = 127 // { int setregid(int rgid, int egid); }
++ SYS_RENAME = 128 // { int rename(char *from, char *to); }
++ SYS_FLOCK = 131 // { int flock(int fd, int how); }
++ SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); }
++ SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, int flags, caddr_t to, int tolen); }
++ SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); }
++ SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, int *rsv); }
++ SYS_MKDIR = 136 // { int mkdir(char *path, int mode); }
++ SYS_RMDIR = 137 // { int rmdir(char *path); }
++ SYS_UTIMES = 138 // { int utimes(char *path, struct timeval *tptr); }
++ SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, struct timeval *olddelta); }
++ SYS_SETSID = 147 // { int setsid(void); }
++ SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, caddr_t arg); }
++ SYS_NLM_SYSCALL = 154 // { int nlm_syscall(int debug_level, int grace_period, int addr_count, char **addrs); }
++ SYS_NFSSVC = 155 // { int nfssvc(int flag, caddr_t argp); }
++ SYS_LGETFH = 160 // { int lgetfh(char *fname, struct fhandle *fhp); }
++ SYS_GETFH = 161 // { int getfh(char *fname, struct fhandle *fhp); }
++ SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); }
++ SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, struct rtprio *rtp); }
++ SYS_SEMSYS = 169 // { int semsys(int which, int a2, int a3, int a4, int a5); }
++ SYS_MSGSYS = 170 // { int msgsys(int which, int a2, int a3, int a4, int a5, int a6); }
++ SYS_SHMSYS = 171 // { int shmsys(int which, int a2, int a3, int a4); }
++ SYS_SETFIB = 175 // { int setfib(int fibnum); }
++ SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); }
++ SYS_SETGID = 181 // { int setgid(gid_t gid); }
++ SYS_SETEGID = 182 // { int setegid(gid_t egid); }
++ SYS_SETEUID = 183 // { int seteuid(uid_t euid); }
++ SYS_STAT = 188 // { int stat(char *path, struct stat *ub); }
++ SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); }
++ SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); }
++ SYS_PATHCONF = 191 // { int pathconf(char *path, int name); }
++ SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); }
++ SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int
++ SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int
++ SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, u_int count, long *basep); }
++ SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } __sysctl sysctl_args int
++ SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); }
++ SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); }
++ SYS_UNDELETE = 205 // { int undelete(char *path); }
++ SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); }
++ SYS_GETPGID = 207 // { int getpgid(pid_t pid); }
++ SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, int timeout); }
++ SYS_SEMGET = 221 // { int semget(key_t key, int nsems, int semflg); }
++ SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, size_t nsops); }
++ SYS_MSGGET = 225 // { int msgget(key_t key, int msgflg); }
++ SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
++ SYS_MSGRCV = 227 // { int msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
++ SYS_SHMAT = 228 // { int shmat(int shmid, const void *shmaddr, int shmflg); }
++ SYS_SHMDT = 230 // { int shmdt(const void *shmaddr); }
++ SYS_SHMGET = 231 // { int shmget(key_t key, size_t size, int shmflg); }
++ SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, struct timespec *tp); }
++ SYS_CLOCK_SETTIME = 233 // { int clock_settime( clockid_t clock_id, const struct timespec *tp); }
++ SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, struct timespec *tp); }
++ SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, struct sigevent *evp, int *timerid); }
++ SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); }
++ SYS_KTIMER_SETTIME = 237 // { int ktimer_settime(int timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue); }
++ SYS_KTIMER_GETTIME = 238 // { int ktimer_gettime(int timerid, struct itimerspec *value); }
++ SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); }
++ SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
++ SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); }
++ SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( struct ffclock_estimate *cest); }
++ SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( struct ffclock_estimate *cest); }
++ SYS_CLOCK_NANOSLEEP = 244 // { int clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *rqtp, struct timespec *rmtp); }
++ SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,int which, clockid_t *clock_id); }
++ SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); }
++ SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, int inherit); }
++ SYS_RFORK = 251 // { int rfork(int flags); }
++ SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, u_int nfds, int timeout); }
++ SYS_ISSETUGID = 253 // { int issetugid(void); }
++ SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); }
++ SYS_AIO_READ = 255 // { int aio_read(struct aiocb *aiocbp); }
++ SYS_AIO_WRITE = 256 // { int aio_write(struct aiocb *aiocbp); }
++ SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); }
++ SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, size_t count); }
++ SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); }
++ SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); }
++ SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); }
++ SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); }
++ SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); }
++ SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); }
++ SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); }
++ SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); }
++ SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); }
++ SYS_MODNEXT = 300 // { int modnext(int modid); }
++ SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat *stat); }
++ SYS_MODFNEXT = 302 // { int modfnext(int modid); }
++ SYS_MODFIND = 303 // { int modfind(const char *name); }
++ SYS_KLDLOAD = 304 // { int kldload(const char *file); }
++ SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); }
++ SYS_KLDFIND = 306 // { int kldfind(const char *file); }
++ SYS_KLDNEXT = 307 // { int kldnext(int fileid); }
++ SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat* stat); }
++ SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); }
++ SYS_GETSID = 310 // { int getsid(pid_t pid); }
++ SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, uid_t suid); }
++ SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
++ SYS_AIO_RETURN = 314 // { ssize_t aio_return(struct aiocb *aiocbp); }
++ SYS_AIO_SUSPEND = 315 // { int aio_suspend( struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); }
++ SYS_AIO_CANCEL = 316 // { int aio_cancel(int fd, struct aiocb *aiocbp); }
++ SYS_AIO_ERROR = 317 // { int aio_error(struct aiocb *aiocbp); }
++ SYS_YIELD = 321 // { int yield(void); }
++ SYS_MLOCKALL = 324 // { int mlockall(int how); }
++ SYS_MUNLOCKALL = 325 // { int munlockall(void); }
++ SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); }
++ SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, const struct sched_param *param); }
++ SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct sched_param *param); }
++ SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); }
++ SYS_SCHED_GETSCHEDULER = 330 // { int sched_getscheduler (pid_t pid); }
++ SYS_SCHED_YIELD = 331 // { int sched_yield (void); }
++ SYS_SCHED_GET_PRIORITY_MAX = 332 // { int sched_get_priority_max (int policy); }
++ SYS_SCHED_GET_PRIORITY_MIN = 333 // { int sched_get_priority_min (int policy); }
++ SYS_SCHED_RR_GET_INTERVAL = 334 // { int sched_rr_get_interval (pid_t pid, struct timespec *interval); }
++ SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); }
++ SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, void *data); }
++ SYS_JAIL = 338 // { int jail(struct jail *jail); }
++ SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, const sigset_t *set, sigset_t *oset); }
++ SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); }
++ SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); }
++ SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set, siginfo_t *info, const struct timespec *timeout); }
++ SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set, siginfo_t *info); }
++ SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, acl_type_t type); }
++ SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, acl_type_t type); }
++ SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, struct acl *aclp); }
++ SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, const char *filename, int attrnamespace, const char *attrname); }
++ SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, int attrnamespace, const char *attrname); }
++ SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete( struct aiocb **aiocbp, struct timespec *timeout); }
++ SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
++ SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
++ SYS_KQUEUE = 362 // { int kqueue(void); }
++ SYS_KEVENT = 363 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
++ SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, int attrnamespace, const char *attrname); }
++ SYS___SETUGID = 374 // { int __setugid(int flag); }
++ SYS_EACCESS = 376 // { int eaccess(char *path, int amode); }
++ SYS_NMOUNT = 378 // { int nmount(struct iovec *iovp, unsigned int iovcnt, int flags); }
++ SYS___MAC_GET_PROC = 384 // { int __mac_get_proc(struct mac *mac_p); }
++ SYS___MAC_SET_PROC = 385 // { int __mac_set_proc(struct mac *mac_p); }
++ SYS___MAC_GET_FD = 386 // { int __mac_get_fd(int fd, struct mac *mac_p); }
++ SYS___MAC_GET_FILE = 387 // { int __mac_get_file(const char *path_p, struct mac *mac_p); }
++ SYS___MAC_SET_FD = 388 // { int __mac_set_fd(int fd, struct mac *mac_p); }
++ SYS___MAC_SET_FILE = 389 // { int __mac_set_file(const char *path_p, struct mac *mac_p); }
++ SYS_KENV = 390 // { int kenv(int what, const char *name, char *value, int len); }
++ SYS_LCHFLAGS = 391 // { int lchflags(const char *path, u_long flags); }
++ SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); }
++ SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); }
++ SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, int call, void *arg); }
++ SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, long bufsize, int mode); }
++ SYS_STATFS = 396 // { int statfs(char *path, struct statfs *buf); }
++ SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); }
++ SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); }
++ SYS_KSEM_CLOSE = 400 // { int ksem_close(semid_t id); }
++ SYS_KSEM_POST = 401 // { int ksem_post(semid_t id); }
++ SYS_KSEM_WAIT = 402 // { int ksem_wait(semid_t id); }
++ SYS_KSEM_TRYWAIT = 403 // { int ksem_trywait(semid_t id); }
++ SYS_KSEM_INIT = 404 // { int ksem_init(semid_t *idp, unsigned int value); }
++ SYS_KSEM_OPEN = 405 // { int ksem_open(semid_t *idp, const char *name, int oflag, mode_t mode, unsigned int value); }
++ SYS_KSEM_UNLINK = 406 // { int ksem_unlink(const char *name); }
++ SYS_KSEM_GETVALUE = 407 // { int ksem_getvalue(semid_t id, int *val); }
++ SYS_KSEM_DESTROY = 408 // { int ksem_destroy(semid_t id); }
++ SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, struct mac *mac_p); }
++ SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, struct mac *mac_p); }
++ SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, struct mac *mac_p); }
++ SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( const char *path, int attrnamespace, const char *attrname); }
++ SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, char **envv, struct mac *mac_p); }
++ SYS_SIGACTION = 416 // { int sigaction(int sig, const struct sigaction *act, struct sigaction *oact); }
++ SYS_SIGRETURN = 417 // { int sigreturn( const struct __ucontext *sigcntxp); }
++ SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); }
++ SYS_SETCONTEXT = 422 // { int setcontext( const struct __ucontext *ucp); }
++ SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, const struct __ucontext *ucp); }
++ SYS_SWAPOFF = 424 // { int swapoff(const char *name); }
++ SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_SET_LINK = 426 // { int __acl_set_link(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_DELETE_LINK = 427 // { int __acl_delete_link(const char *path, acl_type_t type); }
++ SYS___ACL_ACLCHECK_LINK = 428 // { int __acl_aclcheck_link(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS_SIGWAIT = 429 // { int sigwait(const sigset_t *set, int *sig); }
++ SYS_THR_CREATE = 430 // { int thr_create(ucontext_t *ctx, long *id, int flags); }
++ SYS_THR_EXIT = 431 // { void thr_exit(long *state); }
++ SYS_THR_SELF = 432 // { int thr_self(long *id); }
++ SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); }
++ SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); }
++ SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, int attrnamespace, void *data, size_t nbytes); }
++ SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( const char *path, int attrnamespace, void *data, size_t nbytes); }
++ SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( const char *path, int attrnamespace, void *data, size_t nbytes); }
++ SYS_KSEM_TIMEDWAIT = 441 // { int ksem_timedwait(semid_t id, const struct timespec *abstime); }
++ SYS_THR_SUSPEND = 442 // { int thr_suspend( const struct timespec *timeout); }
++ SYS_THR_WAKE = 443 // { int thr_wake(long id); }
++ SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); }
++ SYS_AUDIT = 445 // { int audit(const void *record, u_int length); }
++ SYS_AUDITON = 446 // { int auditon(int cmd, void *data, u_int length); }
++ SYS_GETAUID = 447 // { int getauid(uid_t *auid); }
++ SYS_SETAUID = 448 // { int setauid(uid_t *auid); }
++ SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); }
++ SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); }
++ SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); }
++ SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); }
++ SYS_AUDITCTL = 453 // { int auditctl(char *path); }
++ SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, u_long val, void *uaddr1, void *uaddr2); }
++ SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, int param_size); }
++ SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); }
++ SYS_KMQ_OPEN = 457 // { int kmq_open(const char *path, int flags, mode_t mode, const struct mq_attr *attr); }
++ SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); }
++ SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); }
++ SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len,unsigned msg_prio, const struct timespec *abs_timeout);}
++ SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); }
++ SYS_KMQ_UNLINK = 462 // { int kmq_unlink(const char *path); }
++ SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); }
++ SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); }
++ SYS_AIO_FSYNC = 465 // { int aio_fsync(int op, struct aiocb *aiocbp); }
++ SYS_RTPRIO_THREAD = 466 // { int rtprio_thread(int function, lwpid_t lwpid, struct rtprio *rtp); }
++ SYS_SCTP_PEELOFF = 471 // { int sctp_peeloff(int sd, uint32_t name); }
++ SYS_SCTP_GENERIC_SENDMSG = 472 // { int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); }
++ SYS_SCTP_GENERIC_SENDMSG_IOV = 473 // { int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); }
++ SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr * from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); }
++ SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, size_t nbyte, off_t offset); }
++ SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, size_t nbyte, off_t offset); }
++ SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, off_t pos); }
++ SYS_LSEEK = 478 // { off_t lseek(int fd, off_t offset, int whence); }
++ SYS_TRUNCATE = 479 // { int truncate(char *path, off_t length); }
++ SYS_FTRUNCATE = 480 // { int ftruncate(int fd, off_t length); }
++ SYS_THR_KILL2 = 481 // { int thr_kill2(pid_t pid, long id, int sig); }
++ SYS_SHM_OPEN = 482 // { int shm_open(const char *path, int flags, mode_t mode); }
++ SYS_SHM_UNLINK = 483 // { int shm_unlink(const char *path); }
++ SYS_CPUSET = 484 // { int cpuset(cpusetid_t *setid); }
++ SYS_CPUSET_SETID = 485 // { int cpuset_setid(cpuwhich_t which, id_t id, cpusetid_t setid); }
++ SYS_CPUSET_GETID = 486 // { int cpuset_getid(cpulevel_t level, cpuwhich_t which, id_t id, cpusetid_t *setid); }
++ SYS_CPUSET_GETAFFINITY = 487 // { int cpuset_getaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, cpuset_t *mask); }
++ SYS_CPUSET_SETAFFINITY = 488 // { int cpuset_setaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, const cpuset_t *mask); }
++ SYS_FACCESSAT = 489 // { int faccessat(int fd, char *path, int amode, int flag); }
++ SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, int flag); }
++ SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, gid_t gid, int flag); }
++ SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, char **envv); }
++ SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, struct stat *buf, int flag); }
++ SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, struct timeval *times); }
++ SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, char *path2, int flag); }
++ SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); }
++ SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); }
++ SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); }
++ SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, mode_t mode); }
++ SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, size_t bufsize); }
++ SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, char *new); }
++ SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, char *path2); }
++ SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); }
++ SYS_POSIX_OPENPT = 504 // { int posix_openpt(int flags); }
++ SYS_GSSD_SYSCALL = 505 // { int gssd_syscall(char *path); }
++ SYS_JAIL_GET = 506 // { int jail_get(struct iovec *iovp, unsigned int iovcnt, int flags); }
++ SYS_JAIL_SET = 507 // { int jail_set(struct iovec *iovp, unsigned int iovcnt, int flags); }
++ SYS_JAIL_REMOVE = 508 // { int jail_remove(int jid); }
++ SYS_CLOSEFROM = 509 // { int closefrom(int lowfd); }
++ SYS___SEMCTL = 510 // { int __semctl(int semid, int semnum, int cmd, union semun *arg); }
++ SYS_MSGCTL = 511 // { int msgctl(int msqid, int cmd, struct msqid_ds *buf); }
++ SYS_SHMCTL = 512 // { int shmctl(int shmid, int cmd, struct shmid_ds *buf); }
++ SYS_LPATHCONF = 513 // { int lpathconf(char *path, int name); }
++ SYS___CAP_RIGHTS_GET = 515 // { int __cap_rights_get(int version, int fd, cap_rights_t *rightsp); }
++ SYS_CAP_ENTER = 516 // { int cap_enter(void); }
++ SYS_CAP_GETMODE = 517 // { int cap_getmode(u_int *modep); }
++ SYS_PDFORK = 518 // { int pdfork(int *fdp, int flags); }
++ SYS_PDKILL = 519 // { int pdkill(int fd, int signum); }
++ SYS_PDGETPID = 520 // { int pdgetpid(int fd, pid_t *pidp); }
++ SYS_PSELECT = 522 // { int pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *sm); }
++ SYS_GETLOGINCLASS = 523 // { int getloginclass(char *namebuf, size_t namelen); }
++ SYS_SETLOGINCLASS = 524 // { int setloginclass(const char *namebuf); }
++ SYS_RCTL_GET_RACCT = 525 // { int rctl_get_racct(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_RCTL_GET_RULES = 526 // { int rctl_get_rules(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_RCTL_GET_LIMITS = 527 // { int rctl_get_limits(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_RCTL_ADD_RULE = 528 // { int rctl_add_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_RCTL_REMOVE_RULE = 529 // { int rctl_remove_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_POSIX_FALLOCATE = 530 // { int posix_fallocate(int fd, off_t offset, off_t len); }
++ SYS_POSIX_FADVISE = 531 // { int posix_fadvise(int fd, off_t offset, off_t len, int advice); }
++ SYS_WAIT6 = 532 // { int wait6(idtype_t idtype, id_t id, int *status, int options, struct __wrusage *wrusage, siginfo_t *info); }
++ SYS_CAP_RIGHTS_LIMIT = 533 // { int cap_rights_limit(int fd, cap_rights_t *rightsp); }
++ SYS_CAP_IOCTLS_LIMIT = 534 // { int cap_ioctls_limit(int fd, const u_long *cmds, size_t ncmds); }
++ SYS_CAP_IOCTLS_GET = 535 // { ssize_t cap_ioctls_get(int fd, u_long *cmds, size_t maxcmds); }
++ SYS_CAP_FCNTLS_LIMIT = 536 // { int cap_fcntls_limit(int fd, uint32_t fcntlrights); }
++ SYS_CAP_FCNTLS_GET = 537 // { int cap_fcntls_get(int fd, uint32_t *fcntlrightsp); }
++ SYS_BINDAT = 538 // { int bindat(int fd, int s, caddr_t name, int namelen); }
++ SYS_CONNECTAT = 539 // { int connectat(int fd, int s, caddr_t name, int namelen); }
++ SYS_CHFLAGSAT = 540 // { int chflagsat(int fd, const char *path, u_long flags, int atflag); }
++ SYS_ACCEPT4 = 541 // { int accept4(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen, int flags); }
++ SYS_PIPE2 = 542 // { int pipe2(int *fildes, int flags); }
++ SYS_AIO_MLOCK = 543 // { int aio_mlock(struct aiocb *aiocbp); }
++ SYS_PROCCTL = 544 // { int procctl(idtype_t idtype, id_t id, int com, void *data); }
++ SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *set); }
++ SYS_FUTIMENS = 546 // { int futimens(int fd, struct timespec *times); }
++ SYS_UTIMENSAT = 547 // { int utimensat(int fd, char *path, struct timespec *times, int flag); }
++ SYS_NUMA_GETAFFINITY = 548 // { int numa_getaffinity(cpuwhich_t which, id_t id, struct vm_domain_policy_entry *policy); }
++ SYS_NUMA_SETAFFINITY = 549 // { int numa_setaffinity(cpuwhich_t which, id_t id, const struct vm_domain_policy_entry *policy); }
++ SYS_FDATASYNC = 550 // { int fdatasync(int fd); }
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go
+new file mode 100644
+index 00000000..3e51af8e
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go
+@@ -0,0 +1,396 @@
++// go run mksysnum.go https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build arm64,freebsd
++
++package unix
++
++const (
++ // SYS_NOSYS = 0; // { int nosys(void); } syscall nosys_args int
++ SYS_EXIT = 1 // { void sys_exit(int rval); } exit sys_exit_args void
++ SYS_FORK = 2 // { int fork(void); }
++ SYS_READ = 3 // { ssize_t read(int fd, void *buf, size_t nbyte); }
++ SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, size_t nbyte); }
++ SYS_OPEN = 5 // { int open(char *path, int flags, int mode); }
++ SYS_CLOSE = 6 // { int close(int fd); }
++ SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, struct rusage *rusage); }
++ SYS_LINK = 9 // { int link(char *path, char *link); }
++ SYS_UNLINK = 10 // { int unlink(char *path); }
++ SYS_CHDIR = 12 // { int chdir(char *path); }
++ SYS_FCHDIR = 13 // { int fchdir(int fd); }
++ SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); }
++ SYS_CHMOD = 15 // { int chmod(char *path, int mode); }
++ SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); }
++ SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int
++ SYS_GETPID = 20 // { pid_t getpid(void); }
++ SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); }
++ SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); }
++ SYS_SETUID = 23 // { int setuid(uid_t uid); }
++ SYS_GETUID = 24 // { uid_t getuid(void); }
++ SYS_GETEUID = 25 // { uid_t geteuid(void); }
++ SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, int data); }
++ SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, int flags); }
++ SYS_SENDMSG = 28 // { int sendmsg(int s, struct msghdr *msg, int flags); }
++ SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, int flags, struct sockaddr * __restrict from, __socklen_t * __restrict fromlenaddr); }
++ SYS_ACCEPT = 30 // { int accept(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen); }
++ SYS_GETPEERNAME = 31 // { int getpeername(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
++ SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
++ SYS_ACCESS = 33 // { int access(char *path, int amode); }
++ SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); }
++ SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); }
++ SYS_SYNC = 36 // { int sync(void); }
++ SYS_KILL = 37 // { int kill(int pid, int signum); }
++ SYS_GETPPID = 39 // { pid_t getppid(void); }
++ SYS_DUP = 41 // { int dup(u_int fd); }
++ SYS_PIPE = 42 // { int pipe(void); }
++ SYS_GETEGID = 43 // { gid_t getegid(void); }
++ SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); }
++ SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); }
++ SYS_GETGID = 47 // { gid_t getgid(void); }
++ SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int namelen); }
++ SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); }
++ SYS_ACCT = 51 // { int acct(char *path); }
++ SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, stack_t *oss); }
++ SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, caddr_t data); }
++ SYS_REBOOT = 55 // { int reboot(int opt); }
++ SYS_REVOKE = 56 // { int revoke(char *path); }
++ SYS_SYMLINK = 57 // { int symlink(char *path, char *link); }
++ SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, size_t count); }
++ SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); }
++ SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args int
++ SYS_CHROOT = 61 // { int chroot(char *path); }
++ SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); }
++ SYS_VFORK = 66 // { int vfork(void); }
++ SYS_SBRK = 69 // { int sbrk(int incr); }
++ SYS_SSTK = 70 // { int sstk(int incr); }
++ SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise ovadvise_args int
++ SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); }
++ SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, int prot); }
++ SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); }
++ SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); }
++ SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); }
++ SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, gid_t *gidset); }
++ SYS_GETPGRP = 81 // { int getpgrp(void); }
++ SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); }
++ SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, struct itimerval *oitv); }
++ SYS_SWAPON = 85 // { int swapon(char *name); }
++ SYS_GETITIMER = 86 // { int getitimer(u_int which, struct itimerval *itv); }
++ SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); }
++ SYS_DUP2 = 90 // { int dup2(u_int from, u_int to); }
++ SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); }
++ SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
++ SYS_FSYNC = 95 // { int fsync(int fd); }
++ SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, int prio); }
++ SYS_SOCKET = 97 // { int socket(int domain, int type, int protocol); }
++ SYS_CONNECT = 98 // { int connect(int s, caddr_t name, int namelen); }
++ SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); }
++ SYS_BIND = 104 // { int bind(int s, caddr_t name, int namelen); }
++ SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, caddr_t val, int valsize); }
++ SYS_LISTEN = 106 // { int listen(int s, int backlog); }
++ SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, struct timezone *tzp); }
++ SYS_GETRUSAGE = 117 // { int getrusage(int who, struct rusage *rusage); }
++ SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, caddr_t val, int *avalsize); }
++ SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, u_int iovcnt); }
++ SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, u_int iovcnt); }
++ SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, struct timezone *tzp); }
++ SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); }
++ SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); }
++ SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); }
++ SYS_SETREGID = 127 // { int setregid(int rgid, int egid); }
++ SYS_RENAME = 128 // { int rename(char *from, char *to); }
++ SYS_FLOCK = 131 // { int flock(int fd, int how); }
++ SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); }
++ SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, int flags, caddr_t to, int tolen); }
++ SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); }
++ SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, int *rsv); }
++ SYS_MKDIR = 136 // { int mkdir(char *path, int mode); }
++ SYS_RMDIR = 137 // { int rmdir(char *path); }
++ SYS_UTIMES = 138 // { int utimes(char *path, struct timeval *tptr); }
++ SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, struct timeval *olddelta); }
++ SYS_SETSID = 147 // { int setsid(void); }
++ SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, caddr_t arg); }
++ SYS_NLM_SYSCALL = 154 // { int nlm_syscall(int debug_level, int grace_period, int addr_count, char **addrs); }
++ SYS_NFSSVC = 155 // { int nfssvc(int flag, caddr_t argp); }
++ SYS_LGETFH = 160 // { int lgetfh(char *fname, struct fhandle *fhp); }
++ SYS_GETFH = 161 // { int getfh(char *fname, struct fhandle *fhp); }
++ SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); }
++ SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, struct rtprio *rtp); }
++ SYS_SEMSYS = 169 // { int semsys(int which, int a2, int a3, int a4, int a5); }
++ SYS_MSGSYS = 170 // { int msgsys(int which, int a2, int a3, int a4, int a5, int a6); }
++ SYS_SHMSYS = 171 // { int shmsys(int which, int a2, int a3, int a4); }
++ SYS_SETFIB = 175 // { int setfib(int fibnum); }
++ SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); }
++ SYS_SETGID = 181 // { int setgid(gid_t gid); }
++ SYS_SETEGID = 182 // { int setegid(gid_t egid); }
++ SYS_SETEUID = 183 // { int seteuid(uid_t euid); }
++ SYS_STAT = 188 // { int stat(char *path, struct stat *ub); }
++ SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); }
++ SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); }
++ SYS_PATHCONF = 191 // { int pathconf(char *path, int name); }
++ SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); }
++ SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int
++ SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int
++ SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, u_int count, long *basep); }
++ SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } __sysctl sysctl_args int
++ SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); }
++ SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); }
++ SYS_UNDELETE = 205 // { int undelete(char *path); }
++ SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); }
++ SYS_GETPGID = 207 // { int getpgid(pid_t pid); }
++ SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, int timeout); }
++ SYS_SEMGET = 221 // { int semget(key_t key, int nsems, int semflg); }
++ SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, size_t nsops); }
++ SYS_MSGGET = 225 // { int msgget(key_t key, int msgflg); }
++ SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
++ SYS_MSGRCV = 227 // { int msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
++ SYS_SHMAT = 228 // { int shmat(int shmid, const void *shmaddr, int shmflg); }
++ SYS_SHMDT = 230 // { int shmdt(const void *shmaddr); }
++ SYS_SHMGET = 231 // { int shmget(key_t key, size_t size, int shmflg); }
++ SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, struct timespec *tp); }
++ SYS_CLOCK_SETTIME = 233 // { int clock_settime( clockid_t clock_id, const struct timespec *tp); }
++ SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, struct timespec *tp); }
++ SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, struct sigevent *evp, int *timerid); }
++ SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); }
++ SYS_KTIMER_SETTIME = 237 // { int ktimer_settime(int timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue); }
++ SYS_KTIMER_GETTIME = 238 // { int ktimer_gettime(int timerid, struct itimerspec *value); }
++ SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); }
++ SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
++ SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); }
++ SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( struct ffclock_estimate *cest); }
++ SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( struct ffclock_estimate *cest); }
++ SYS_CLOCK_NANOSLEEP = 244 // { int clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *rqtp, struct timespec *rmtp); }
++ SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,int which, clockid_t *clock_id); }
++ SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); }
++ SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, int inherit); }
++ SYS_RFORK = 251 // { int rfork(int flags); }
++ SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, u_int nfds, int timeout); }
++ SYS_ISSETUGID = 253 // { int issetugid(void); }
++ SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); }
++ SYS_AIO_READ = 255 // { int aio_read(struct aiocb *aiocbp); }
++ SYS_AIO_WRITE = 256 // { int aio_write(struct aiocb *aiocbp); }
++ SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); }
++ SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, size_t count); }
++ SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); }
++ SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); }
++ SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); }
++ SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); }
++ SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); }
++ SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); }
++ SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); }
++ SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); }
++ SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); }
++ SYS_MODNEXT = 300 // { int modnext(int modid); }
++ SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat *stat); }
++ SYS_MODFNEXT = 302 // { int modfnext(int modid); }
++ SYS_MODFIND = 303 // { int modfind(const char *name); }
++ SYS_KLDLOAD = 304 // { int kldload(const char *file); }
++ SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); }
++ SYS_KLDFIND = 306 // { int kldfind(const char *file); }
++ SYS_KLDNEXT = 307 // { int kldnext(int fileid); }
++ SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat* stat); }
++ SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); }
++ SYS_GETSID = 310 // { int getsid(pid_t pid); }
++ SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, uid_t suid); }
++ SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
++ SYS_AIO_RETURN = 314 // { ssize_t aio_return(struct aiocb *aiocbp); }
++ SYS_AIO_SUSPEND = 315 // { int aio_suspend( struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); }
++ SYS_AIO_CANCEL = 316 // { int aio_cancel(int fd, struct aiocb *aiocbp); }
++ SYS_AIO_ERROR = 317 // { int aio_error(struct aiocb *aiocbp); }
++ SYS_YIELD = 321 // { int yield(void); }
++ SYS_MLOCKALL = 324 // { int mlockall(int how); }
++ SYS_MUNLOCKALL = 325 // { int munlockall(void); }
++ SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); }
++ SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, const struct sched_param *param); }
++ SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct sched_param *param); }
++ SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); }
++ SYS_SCHED_GETSCHEDULER = 330 // { int sched_getscheduler (pid_t pid); }
++ SYS_SCHED_YIELD = 331 // { int sched_yield (void); }
++ SYS_SCHED_GET_PRIORITY_MAX = 332 // { int sched_get_priority_max (int policy); }
++ SYS_SCHED_GET_PRIORITY_MIN = 333 // { int sched_get_priority_min (int policy); }
++ SYS_SCHED_RR_GET_INTERVAL = 334 // { int sched_rr_get_interval (pid_t pid, struct timespec *interval); }
++ SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); }
++ SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, void *data); }
++ SYS_JAIL = 338 // { int jail(struct jail *jail); }
++ SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, const sigset_t *set, sigset_t *oset); }
++ SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); }
++ SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); }
++ SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set, siginfo_t *info, const struct timespec *timeout); }
++ SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set, siginfo_t *info); }
++ SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, acl_type_t type); }
++ SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, acl_type_t type); }
++ SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, struct acl *aclp); }
++ SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, const char *filename, int attrnamespace, const char *attrname); }
++ SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, int attrnamespace, const char *attrname); }
++ SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete( struct aiocb **aiocbp, struct timespec *timeout); }
++ SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
++ SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
++ SYS_KQUEUE = 362 // { int kqueue(void); }
++ SYS_KEVENT = 363 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
++ SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, int attrnamespace, const char *attrname); }
++ SYS___SETUGID = 374 // { int __setugid(int flag); }
++ SYS_EACCESS = 376 // { int eaccess(char *path, int amode); }
++ SYS_NMOUNT = 378 // { int nmount(struct iovec *iovp, unsigned int iovcnt, int flags); }
++ SYS___MAC_GET_PROC = 384 // { int __mac_get_proc(struct mac *mac_p); }
++ SYS___MAC_SET_PROC = 385 // { int __mac_set_proc(struct mac *mac_p); }
++ SYS___MAC_GET_FD = 386 // { int __mac_get_fd(int fd, struct mac *mac_p); }
++ SYS___MAC_GET_FILE = 387 // { int __mac_get_file(const char *path_p, struct mac *mac_p); }
++ SYS___MAC_SET_FD = 388 // { int __mac_set_fd(int fd, struct mac *mac_p); }
++ SYS___MAC_SET_FILE = 389 // { int __mac_set_file(const char *path_p, struct mac *mac_p); }
++ SYS_KENV = 390 // { int kenv(int what, const char *name, char *value, int len); }
++ SYS_LCHFLAGS = 391 // { int lchflags(const char *path, u_long flags); }
++ SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); }
++ SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); }
++ SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, int call, void *arg); }
++ SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, long bufsize, int mode); }
++ SYS_STATFS = 396 // { int statfs(char *path, struct statfs *buf); }
++ SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); }
++ SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); }
++ SYS_KSEM_CLOSE = 400 // { int ksem_close(semid_t id); }
++ SYS_KSEM_POST = 401 // { int ksem_post(semid_t id); }
++ SYS_KSEM_WAIT = 402 // { int ksem_wait(semid_t id); }
++ SYS_KSEM_TRYWAIT = 403 // { int ksem_trywait(semid_t id); }
++ SYS_KSEM_INIT = 404 // { int ksem_init(semid_t *idp, unsigned int value); }
++ SYS_KSEM_OPEN = 405 // { int ksem_open(semid_t *idp, const char *name, int oflag, mode_t mode, unsigned int value); }
++ SYS_KSEM_UNLINK = 406 // { int ksem_unlink(const char *name); }
++ SYS_KSEM_GETVALUE = 407 // { int ksem_getvalue(semid_t id, int *val); }
++ SYS_KSEM_DESTROY = 408 // { int ksem_destroy(semid_t id); }
++ SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, struct mac *mac_p); }
++ SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, struct mac *mac_p); }
++ SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, struct mac *mac_p); }
++ SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
++ SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( const char *path, int attrnamespace, const char *attrname); }
++ SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, char **envv, struct mac *mac_p); }
++ SYS_SIGACTION = 416 // { int sigaction(int sig, const struct sigaction *act, struct sigaction *oact); }
++ SYS_SIGRETURN = 417 // { int sigreturn( const struct __ucontext *sigcntxp); }
++ SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); }
++ SYS_SETCONTEXT = 422 // { int setcontext( const struct __ucontext *ucp); }
++ SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, const struct __ucontext *ucp); }
++ SYS_SWAPOFF = 424 // { int swapoff(const char *name); }
++ SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_SET_LINK = 426 // { int __acl_set_link(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS___ACL_DELETE_LINK = 427 // { int __acl_delete_link(const char *path, acl_type_t type); }
++ SYS___ACL_ACLCHECK_LINK = 428 // { int __acl_aclcheck_link(const char *path, acl_type_t type, struct acl *aclp); }
++ SYS_SIGWAIT = 429 // { int sigwait(const sigset_t *set, int *sig); }
++ SYS_THR_CREATE = 430 // { int thr_create(ucontext_t *ctx, long *id, int flags); }
++ SYS_THR_EXIT = 431 // { void thr_exit(long *state); }
++ SYS_THR_SELF = 432 // { int thr_self(long *id); }
++ SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); }
++ SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); }
++ SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, int attrnamespace, void *data, size_t nbytes); }
++ SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( const char *path, int attrnamespace, void *data, size_t nbytes); }
++ SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( const char *path, int attrnamespace, void *data, size_t nbytes); }
++ SYS_KSEM_TIMEDWAIT = 441 // { int ksem_timedwait(semid_t id, const struct timespec *abstime); }
++ SYS_THR_SUSPEND = 442 // { int thr_suspend( const struct timespec *timeout); }
++ SYS_THR_WAKE = 443 // { int thr_wake(long id); }
++ SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); }
++ SYS_AUDIT = 445 // { int audit(const void *record, u_int length); }
++ SYS_AUDITON = 446 // { int auditon(int cmd, void *data, u_int length); }
++ SYS_GETAUID = 447 // { int getauid(uid_t *auid); }
++ SYS_SETAUID = 448 // { int setauid(uid_t *auid); }
++ SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); }
++ SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); }
++ SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); }
++ SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); }
++ SYS_AUDITCTL = 453 // { int auditctl(char *path); }
++ SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, u_long val, void *uaddr1, void *uaddr2); }
++ SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, int param_size); }
++ SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); }
++ SYS_KMQ_OPEN = 457 // { int kmq_open(const char *path, int flags, mode_t mode, const struct mq_attr *attr); }
++ SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); }
++ SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); }
++ SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len,unsigned msg_prio, const struct timespec *abs_timeout);}
++ SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); }
++ SYS_KMQ_UNLINK = 462 // { int kmq_unlink(const char *path); }
++ SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); }
++ SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); }
++ SYS_AIO_FSYNC = 465 // { int aio_fsync(int op, struct aiocb *aiocbp); }
++ SYS_RTPRIO_THREAD = 466 // { int rtprio_thread(int function, lwpid_t lwpid, struct rtprio *rtp); }
++ SYS_SCTP_PEELOFF = 471 // { int sctp_peeloff(int sd, uint32_t name); }
++ SYS_SCTP_GENERIC_SENDMSG = 472 // { int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); }
++ SYS_SCTP_GENERIC_SENDMSG_IOV = 473 // { int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); }
++ SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr * from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); }
++ SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, size_t nbyte, off_t offset); }
++ SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, size_t nbyte, off_t offset); }
++ SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, off_t pos); }
++ SYS_LSEEK = 478 // { off_t lseek(int fd, off_t offset, int whence); }
++ SYS_TRUNCATE = 479 // { int truncate(char *path, off_t length); }
++ SYS_FTRUNCATE = 480 // { int ftruncate(int fd, off_t length); }
++ SYS_THR_KILL2 = 481 // { int thr_kill2(pid_t pid, long id, int sig); }
++ SYS_SHM_OPEN = 482 // { int shm_open(const char *path, int flags, mode_t mode); }
++ SYS_SHM_UNLINK = 483 // { int shm_unlink(const char *path); }
++ SYS_CPUSET = 484 // { int cpuset(cpusetid_t *setid); }
++ SYS_CPUSET_SETID = 485 // { int cpuset_setid(cpuwhich_t which, id_t id, cpusetid_t setid); }
++ SYS_CPUSET_GETID = 486 // { int cpuset_getid(cpulevel_t level, cpuwhich_t which, id_t id, cpusetid_t *setid); }
++ SYS_CPUSET_GETAFFINITY = 487 // { int cpuset_getaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, cpuset_t *mask); }
++ SYS_CPUSET_SETAFFINITY = 488 // { int cpuset_setaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, const cpuset_t *mask); }
++ SYS_FACCESSAT = 489 // { int faccessat(int fd, char *path, int amode, int flag); }
++ SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, int flag); }
++ SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, gid_t gid, int flag); }
++ SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, char **envv); }
++ SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, struct stat *buf, int flag); }
++ SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, struct timeval *times); }
++ SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, char *path2, int flag); }
++ SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); }
++ SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); }
++ SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); }
++ SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, mode_t mode); }
++ SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, size_t bufsize); }
++ SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, char *new); }
++ SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, char *path2); }
++ SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); }
++ SYS_POSIX_OPENPT = 504 // { int posix_openpt(int flags); }
++ SYS_GSSD_SYSCALL = 505 // { int gssd_syscall(char *path); }
++ SYS_JAIL_GET = 506 // { int jail_get(struct iovec *iovp, unsigned int iovcnt, int flags); }
++ SYS_JAIL_SET = 507 // { int jail_set(struct iovec *iovp, unsigned int iovcnt, int flags); }
++ SYS_JAIL_REMOVE = 508 // { int jail_remove(int jid); }
++ SYS_CLOSEFROM = 509 // { int closefrom(int lowfd); }
++ SYS___SEMCTL = 510 // { int __semctl(int semid, int semnum, int cmd, union semun *arg); }
++ SYS_MSGCTL = 511 // { int msgctl(int msqid, int cmd, struct msqid_ds *buf); }
++ SYS_SHMCTL = 512 // { int shmctl(int shmid, int cmd, struct shmid_ds *buf); }
++ SYS_LPATHCONF = 513 // { int lpathconf(char *path, int name); }
++ SYS___CAP_RIGHTS_GET = 515 // { int __cap_rights_get(int version, int fd, cap_rights_t *rightsp); }
++ SYS_CAP_ENTER = 516 // { int cap_enter(void); }
++ SYS_CAP_GETMODE = 517 // { int cap_getmode(u_int *modep); }
++ SYS_PDFORK = 518 // { int pdfork(int *fdp, int flags); }
++ SYS_PDKILL = 519 // { int pdkill(int fd, int signum); }
++ SYS_PDGETPID = 520 // { int pdgetpid(int fd, pid_t *pidp); }
++ SYS_PSELECT = 522 // { int pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *sm); }
++ SYS_GETLOGINCLASS = 523 // { int getloginclass(char *namebuf, size_t namelen); }
++ SYS_SETLOGINCLASS = 524 // { int setloginclass(const char *namebuf); }
++ SYS_RCTL_GET_RACCT = 525 // { int rctl_get_racct(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_RCTL_GET_RULES = 526 // { int rctl_get_rules(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_RCTL_GET_LIMITS = 527 // { int rctl_get_limits(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_RCTL_ADD_RULE = 528 // { int rctl_add_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_RCTL_REMOVE_RULE = 529 // { int rctl_remove_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); }
++ SYS_POSIX_FALLOCATE = 530 // { int posix_fallocate(int fd, off_t offset, off_t len); }
++ SYS_POSIX_FADVISE = 531 // { int posix_fadvise(int fd, off_t offset, off_t len, int advice); }
++ SYS_WAIT6 = 532 // { int wait6(idtype_t idtype, id_t id, int *status, int options, struct __wrusage *wrusage, siginfo_t *info); }
++ SYS_CAP_RIGHTS_LIMIT = 533 // { int cap_rights_limit(int fd, cap_rights_t *rightsp); }
++ SYS_CAP_IOCTLS_LIMIT = 534 // { int cap_ioctls_limit(int fd, const u_long *cmds, size_t ncmds); }
++ SYS_CAP_IOCTLS_GET = 535 // { ssize_t cap_ioctls_get(int fd, u_long *cmds, size_t maxcmds); }
++ SYS_CAP_FCNTLS_LIMIT = 536 // { int cap_fcntls_limit(int fd, uint32_t fcntlrights); }
++ SYS_CAP_FCNTLS_GET = 537 // { int cap_fcntls_get(int fd, uint32_t *fcntlrightsp); }
++ SYS_BINDAT = 538 // { int bindat(int fd, int s, caddr_t name, int namelen); }
++ SYS_CONNECTAT = 539 // { int connectat(int fd, int s, caddr_t name, int namelen); }
++ SYS_CHFLAGSAT = 540 // { int chflagsat(int fd, const char *path, u_long flags, int atflag); }
++ SYS_ACCEPT4 = 541 // { int accept4(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen, int flags); }
++ SYS_PIPE2 = 542 // { int pipe2(int *fildes, int flags); }
++ SYS_AIO_MLOCK = 543 // { int aio_mlock(struct aiocb *aiocbp); }
++ SYS_PROCCTL = 544 // { int procctl(idtype_t idtype, id_t id, int com, void *data); }
++ SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *set); }
++ SYS_FUTIMENS = 546 // { int futimens(int fd, struct timespec *times); }
++ SYS_UTIMENSAT = 547 // { int utimensat(int fd, char *path, struct timespec *times, int flag); }
++ SYS_NUMA_GETAFFINITY = 548 // { int numa_getaffinity(cpuwhich_t which, id_t id, struct vm_domain_policy_entry *policy); }
++ SYS_NUMA_SETAFFINITY = 549 // { int numa_setaffinity(cpuwhich_t which, id_t id, const struct vm_domain_policy_entry *policy); }
++ SYS_FDATASYNC = 550 // { int fdatasync(int fd); }
++)
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
+index cef4fed0..54559a89 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
+@@ -1,4 +1,4 @@
+-// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include -m32 /tmp/include/asm/unistd.h
++// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include -m32 /tmp/include/asm/unistd.h
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build 386,linux
+@@ -6,383 +6,431 @@
+ package unix
+
+ const (
+- SYS_RESTART_SYSCALL = 0
+- SYS_EXIT = 1
+- SYS_FORK = 2
+- SYS_READ = 3
+- SYS_WRITE = 4
+- SYS_OPEN = 5
+- SYS_CLOSE = 6
+- SYS_WAITPID = 7
+- SYS_CREAT = 8
+- SYS_LINK = 9
+- SYS_UNLINK = 10
+- SYS_EXECVE = 11
+- SYS_CHDIR = 12
+- SYS_TIME = 13
+- SYS_MKNOD = 14
+- SYS_CHMOD = 15
+- SYS_LCHOWN = 16
+- SYS_BREAK = 17
+- SYS_OLDSTAT = 18
+- SYS_LSEEK = 19
+- SYS_GETPID = 20
+- SYS_MOUNT = 21
+- SYS_UMOUNT = 22
+- SYS_SETUID = 23
+- SYS_GETUID = 24
+- SYS_STIME = 25
+- SYS_PTRACE = 26
+- SYS_ALARM = 27
+- SYS_OLDFSTAT = 28
+- SYS_PAUSE = 29
+- SYS_UTIME = 30
+- SYS_STTY = 31
+- SYS_GTTY = 32
+- SYS_ACCESS = 33
+- SYS_NICE = 34
+- SYS_FTIME = 35
+- SYS_SYNC = 36
+- SYS_KILL = 37
+- SYS_RENAME = 38
+- SYS_MKDIR = 39
+- SYS_RMDIR = 40
+- SYS_DUP = 41
+- SYS_PIPE = 42
+- SYS_TIMES = 43
+- SYS_PROF = 44
+- SYS_BRK = 45
+- SYS_SETGID = 46
+- SYS_GETGID = 47
+- SYS_SIGNAL = 48
+- SYS_GETEUID = 49
+- SYS_GETEGID = 50
+- SYS_ACCT = 51
+- SYS_UMOUNT2 = 52
+- SYS_LOCK = 53
+- SYS_IOCTL = 54
+- SYS_FCNTL = 55
+- SYS_MPX = 56
+- SYS_SETPGID = 57
+- SYS_ULIMIT = 58
+- SYS_OLDOLDUNAME = 59
+- SYS_UMASK = 60
+- SYS_CHROOT = 61
+- SYS_USTAT = 62
+- SYS_DUP2 = 63
+- SYS_GETPPID = 64
+- SYS_GETPGRP = 65
+- SYS_SETSID = 66
+- SYS_SIGACTION = 67
+- SYS_SGETMASK = 68
+- SYS_SSETMASK = 69
+- SYS_SETREUID = 70
+- SYS_SETREGID = 71
+- SYS_SIGSUSPEND = 72
+- SYS_SIGPENDING = 73
+- SYS_SETHOSTNAME = 74
+- SYS_SETRLIMIT = 75
+- SYS_GETRLIMIT = 76
+- SYS_GETRUSAGE = 77
+- SYS_GETTIMEOFDAY = 78
+- SYS_SETTIMEOFDAY = 79
+- SYS_GETGROUPS = 80
+- SYS_SETGROUPS = 81
+- SYS_SELECT = 82
+- SYS_SYMLINK = 83
+- SYS_OLDLSTAT = 84
+- SYS_READLINK = 85
+- SYS_USELIB = 86
+- SYS_SWAPON = 87
+- SYS_REBOOT = 88
+- SYS_READDIR = 89
+- SYS_MMAP = 90
+- SYS_MUNMAP = 91
+- SYS_TRUNCATE = 92
+- SYS_FTRUNCATE = 93
+- SYS_FCHMOD = 94
+- SYS_FCHOWN = 95
+- SYS_GETPRIORITY = 96
+- SYS_SETPRIORITY = 97
+- SYS_PROFIL = 98
+- SYS_STATFS = 99
+- SYS_FSTATFS = 100
+- SYS_IOPERM = 101
+- SYS_SOCKETCALL = 102
+- SYS_SYSLOG = 103
+- SYS_SETITIMER = 104
+- SYS_GETITIMER = 105
+- SYS_STAT = 106
+- SYS_LSTAT = 107
+- SYS_FSTAT = 108
+- SYS_OLDUNAME = 109
+- SYS_IOPL = 110
+- SYS_VHANGUP = 111
+- SYS_IDLE = 112
+- SYS_VM86OLD = 113
+- SYS_WAIT4 = 114
+- SYS_SWAPOFF = 115
+- SYS_SYSINFO = 116
+- SYS_IPC = 117
+- SYS_FSYNC = 118
+- SYS_SIGRETURN = 119
+- SYS_CLONE = 120
+- SYS_SETDOMAINNAME = 121
+- SYS_UNAME = 122
+- SYS_MODIFY_LDT = 123
+- SYS_ADJTIMEX = 124
+- SYS_MPROTECT = 125
+- SYS_SIGPROCMASK = 126
+- SYS_CREATE_MODULE = 127
+- SYS_INIT_MODULE = 128
+- SYS_DELETE_MODULE = 129
+- SYS_GET_KERNEL_SYMS = 130
+- SYS_QUOTACTL = 131
+- SYS_GETPGID = 132
+- SYS_FCHDIR = 133
+- SYS_BDFLUSH = 134
+- SYS_SYSFS = 135
+- SYS_PERSONALITY = 136
+- SYS_AFS_SYSCALL = 137
+- SYS_SETFSUID = 138
+- SYS_SETFSGID = 139
+- SYS__LLSEEK = 140
+- SYS_GETDENTS = 141
+- SYS__NEWSELECT = 142
+- SYS_FLOCK = 143
+- SYS_MSYNC = 144
+- SYS_READV = 145
+- SYS_WRITEV = 146
+- SYS_GETSID = 147
+- SYS_FDATASYNC = 148
+- SYS__SYSCTL = 149
+- SYS_MLOCK = 150
+- SYS_MUNLOCK = 151
+- SYS_MLOCKALL = 152
+- SYS_MUNLOCKALL = 153
+- SYS_SCHED_SETPARAM = 154
+- SYS_SCHED_GETPARAM = 155
+- SYS_SCHED_SETSCHEDULER = 156
+- SYS_SCHED_GETSCHEDULER = 157
+- SYS_SCHED_YIELD = 158
+- SYS_SCHED_GET_PRIORITY_MAX = 159
+- SYS_SCHED_GET_PRIORITY_MIN = 160
+- SYS_SCHED_RR_GET_INTERVAL = 161
+- SYS_NANOSLEEP = 162
+- SYS_MREMAP = 163
+- SYS_SETRESUID = 164
+- SYS_GETRESUID = 165
+- SYS_VM86 = 166
+- SYS_QUERY_MODULE = 167
+- SYS_POLL = 168
+- SYS_NFSSERVCTL = 169
+- SYS_SETRESGID = 170
+- SYS_GETRESGID = 171
+- SYS_PRCTL = 172
+- SYS_RT_SIGRETURN = 173
+- SYS_RT_SIGACTION = 174
+- SYS_RT_SIGPROCMASK = 175
+- SYS_RT_SIGPENDING = 176
+- SYS_RT_SIGTIMEDWAIT = 177
+- SYS_RT_SIGQUEUEINFO = 178
+- SYS_RT_SIGSUSPEND = 179
+- SYS_PREAD64 = 180
+- SYS_PWRITE64 = 181
+- SYS_CHOWN = 182
+- SYS_GETCWD = 183
+- SYS_CAPGET = 184
+- SYS_CAPSET = 185
+- SYS_SIGALTSTACK = 186
+- SYS_SENDFILE = 187
+- SYS_GETPMSG = 188
+- SYS_PUTPMSG = 189
+- SYS_VFORK = 190
+- SYS_UGETRLIMIT = 191
+- SYS_MMAP2 = 192
+- SYS_TRUNCATE64 = 193
+- SYS_FTRUNCATE64 = 194
+- SYS_STAT64 = 195
+- SYS_LSTAT64 = 196
+- SYS_FSTAT64 = 197
+- SYS_LCHOWN32 = 198
+- SYS_GETUID32 = 199
+- SYS_GETGID32 = 200
+- SYS_GETEUID32 = 201
+- SYS_GETEGID32 = 202
+- SYS_SETREUID32 = 203
+- SYS_SETREGID32 = 204
+- SYS_GETGROUPS32 = 205
+- SYS_SETGROUPS32 = 206
+- SYS_FCHOWN32 = 207
+- SYS_SETRESUID32 = 208
+- SYS_GETRESUID32 = 209
+- SYS_SETRESGID32 = 210
+- SYS_GETRESGID32 = 211
+- SYS_CHOWN32 = 212
+- SYS_SETUID32 = 213
+- SYS_SETGID32 = 214
+- SYS_SETFSUID32 = 215
+- SYS_SETFSGID32 = 216
+- SYS_PIVOT_ROOT = 217
+- SYS_MINCORE = 218
+- SYS_MADVISE = 219
+- SYS_GETDENTS64 = 220
+- SYS_FCNTL64 = 221
+- SYS_GETTID = 224
+- SYS_READAHEAD = 225
+- SYS_SETXATTR = 226
+- SYS_LSETXATTR = 227
+- SYS_FSETXATTR = 228
+- SYS_GETXATTR = 229
+- SYS_LGETXATTR = 230
+- SYS_FGETXATTR = 231
+- SYS_LISTXATTR = 232
+- SYS_LLISTXATTR = 233
+- SYS_FLISTXATTR = 234
+- SYS_REMOVEXATTR = 235
+- SYS_LREMOVEXATTR = 236
+- SYS_FREMOVEXATTR = 237
+- SYS_TKILL = 238
+- SYS_SENDFILE64 = 239
+- SYS_FUTEX = 240
+- SYS_SCHED_SETAFFINITY = 241
+- SYS_SCHED_GETAFFINITY = 242
+- SYS_SET_THREAD_AREA = 243
+- SYS_GET_THREAD_AREA = 244
+- SYS_IO_SETUP = 245
+- SYS_IO_DESTROY = 246
+- SYS_IO_GETEVENTS = 247
+- SYS_IO_SUBMIT = 248
+- SYS_IO_CANCEL = 249
+- SYS_FADVISE64 = 250
+- SYS_EXIT_GROUP = 252
+- SYS_LOOKUP_DCOOKIE = 253
+- SYS_EPOLL_CREATE = 254
+- SYS_EPOLL_CTL = 255
+- SYS_EPOLL_WAIT = 256
+- SYS_REMAP_FILE_PAGES = 257
+- SYS_SET_TID_ADDRESS = 258
+- SYS_TIMER_CREATE = 259
+- SYS_TIMER_SETTIME = 260
+- SYS_TIMER_GETTIME = 261
+- SYS_TIMER_GETOVERRUN = 262
+- SYS_TIMER_DELETE = 263
+- SYS_CLOCK_SETTIME = 264
+- SYS_CLOCK_GETTIME = 265
+- SYS_CLOCK_GETRES = 266
+- SYS_CLOCK_NANOSLEEP = 267
+- SYS_STATFS64 = 268
+- SYS_FSTATFS64 = 269
+- SYS_TGKILL = 270
+- SYS_UTIMES = 271
+- SYS_FADVISE64_64 = 272
+- SYS_VSERVER = 273
+- SYS_MBIND = 274
+- SYS_GET_MEMPOLICY = 275
+- SYS_SET_MEMPOLICY = 276
+- SYS_MQ_OPEN = 277
+- SYS_MQ_UNLINK = 278
+- SYS_MQ_TIMEDSEND = 279
+- SYS_MQ_TIMEDRECEIVE = 280
+- SYS_MQ_NOTIFY = 281
+- SYS_MQ_GETSETATTR = 282
+- SYS_KEXEC_LOAD = 283
+- SYS_WAITID = 284
+- SYS_ADD_KEY = 286
+- SYS_REQUEST_KEY = 287
+- SYS_KEYCTL = 288
+- SYS_IOPRIO_SET = 289
+- SYS_IOPRIO_GET = 290
+- SYS_INOTIFY_INIT = 291
+- SYS_INOTIFY_ADD_WATCH = 292
+- SYS_INOTIFY_RM_WATCH = 293
+- SYS_MIGRATE_PAGES = 294
+- SYS_OPENAT = 295
+- SYS_MKDIRAT = 296
+- SYS_MKNODAT = 297
+- SYS_FCHOWNAT = 298
+- SYS_FUTIMESAT = 299
+- SYS_FSTATAT64 = 300
+- SYS_UNLINKAT = 301
+- SYS_RENAMEAT = 302
+- SYS_LINKAT = 303
+- SYS_SYMLINKAT = 304
+- SYS_READLINKAT = 305
+- SYS_FCHMODAT = 306
+- SYS_FACCESSAT = 307
+- SYS_PSELECT6 = 308
+- SYS_PPOLL = 309
+- SYS_UNSHARE = 310
+- SYS_SET_ROBUST_LIST = 311
+- SYS_GET_ROBUST_LIST = 312
+- SYS_SPLICE = 313
+- SYS_SYNC_FILE_RANGE = 314
+- SYS_TEE = 315
+- SYS_VMSPLICE = 316
+- SYS_MOVE_PAGES = 317
+- SYS_GETCPU = 318
+- SYS_EPOLL_PWAIT = 319
+- SYS_UTIMENSAT = 320
+- SYS_SIGNALFD = 321
+- SYS_TIMERFD_CREATE = 322
+- SYS_EVENTFD = 323
+- SYS_FALLOCATE = 324
+- SYS_TIMERFD_SETTIME = 325
+- SYS_TIMERFD_GETTIME = 326
+- SYS_SIGNALFD4 = 327
+- SYS_EVENTFD2 = 328
+- SYS_EPOLL_CREATE1 = 329
+- SYS_DUP3 = 330
+- SYS_PIPE2 = 331
+- SYS_INOTIFY_INIT1 = 332
+- SYS_PREADV = 333
+- SYS_PWRITEV = 334
+- SYS_RT_TGSIGQUEUEINFO = 335
+- SYS_PERF_EVENT_OPEN = 336
+- SYS_RECVMMSG = 337
+- SYS_FANOTIFY_INIT = 338
+- SYS_FANOTIFY_MARK = 339
+- SYS_PRLIMIT64 = 340
+- SYS_NAME_TO_HANDLE_AT = 341
+- SYS_OPEN_BY_HANDLE_AT = 342
+- SYS_CLOCK_ADJTIME = 343
+- SYS_SYNCFS = 344
+- SYS_SENDMMSG = 345
+- SYS_SETNS = 346
+- SYS_PROCESS_VM_READV = 347
+- SYS_PROCESS_VM_WRITEV = 348
+- SYS_KCMP = 349
+- SYS_FINIT_MODULE = 350
+- SYS_SCHED_SETATTR = 351
+- SYS_SCHED_GETATTR = 352
+- SYS_RENAMEAT2 = 353
+- SYS_SECCOMP = 354
+- SYS_GETRANDOM = 355
+- SYS_MEMFD_CREATE = 356
+- SYS_BPF = 357
+- SYS_EXECVEAT = 358
+- SYS_SOCKET = 359
+- SYS_SOCKETPAIR = 360
+- SYS_BIND = 361
+- SYS_CONNECT = 362
+- SYS_LISTEN = 363
+- SYS_ACCEPT4 = 364
+- SYS_GETSOCKOPT = 365
+- SYS_SETSOCKOPT = 366
+- SYS_GETSOCKNAME = 367
+- SYS_GETPEERNAME = 368
+- SYS_SENDTO = 369
+- SYS_SENDMSG = 370
+- SYS_RECVFROM = 371
+- SYS_RECVMSG = 372
+- SYS_SHUTDOWN = 373
+- SYS_USERFAULTFD = 374
+- SYS_MEMBARRIER = 375
+- SYS_MLOCK2 = 376
+- SYS_COPY_FILE_RANGE = 377
+- SYS_PREADV2 = 378
+- SYS_PWRITEV2 = 379
+- SYS_PKEY_MPROTECT = 380
+- SYS_PKEY_ALLOC = 381
+- SYS_PKEY_FREE = 382
++ SYS_RESTART_SYSCALL = 0
++ SYS_EXIT = 1
++ SYS_FORK = 2
++ SYS_READ = 3
++ SYS_WRITE = 4
++ SYS_OPEN = 5
++ SYS_CLOSE = 6
++ SYS_WAITPID = 7
++ SYS_CREAT = 8
++ SYS_LINK = 9
++ SYS_UNLINK = 10
++ SYS_EXECVE = 11
++ SYS_CHDIR = 12
++ SYS_TIME = 13
++ SYS_MKNOD = 14
++ SYS_CHMOD = 15
++ SYS_LCHOWN = 16
++ SYS_BREAK = 17
++ SYS_OLDSTAT = 18
++ SYS_LSEEK = 19
++ SYS_GETPID = 20
++ SYS_MOUNT = 21
++ SYS_UMOUNT = 22
++ SYS_SETUID = 23
++ SYS_GETUID = 24
++ SYS_STIME = 25
++ SYS_PTRACE = 26
++ SYS_ALARM = 27
++ SYS_OLDFSTAT = 28
++ SYS_PAUSE = 29
++ SYS_UTIME = 30
++ SYS_STTY = 31
++ SYS_GTTY = 32
++ SYS_ACCESS = 33
++ SYS_NICE = 34
++ SYS_FTIME = 35
++ SYS_SYNC = 36
++ SYS_KILL = 37
++ SYS_RENAME = 38
++ SYS_MKDIR = 39
++ SYS_RMDIR = 40
++ SYS_DUP = 41
++ SYS_PIPE = 42
++ SYS_TIMES = 43
++ SYS_PROF = 44
++ SYS_BRK = 45
++ SYS_SETGID = 46
++ SYS_GETGID = 47
++ SYS_SIGNAL = 48
++ SYS_GETEUID = 49
++ SYS_GETEGID = 50
++ SYS_ACCT = 51
++ SYS_UMOUNT2 = 52
++ SYS_LOCK = 53
++ SYS_IOCTL = 54
++ SYS_FCNTL = 55
++ SYS_MPX = 56
++ SYS_SETPGID = 57
++ SYS_ULIMIT = 58
++ SYS_OLDOLDUNAME = 59
++ SYS_UMASK = 60
++ SYS_CHROOT = 61
++ SYS_USTAT = 62
++ SYS_DUP2 = 63
++ SYS_GETPPID = 64
++ SYS_GETPGRP = 65
++ SYS_SETSID = 66
++ SYS_SIGACTION = 67
++ SYS_SGETMASK = 68
++ SYS_SSETMASK = 69
++ SYS_SETREUID = 70
++ SYS_SETREGID = 71
++ SYS_SIGSUSPEND = 72
++ SYS_SIGPENDING = 73
++ SYS_SETHOSTNAME = 74
++ SYS_SETRLIMIT = 75
++ SYS_GETRLIMIT = 76
++ SYS_GETRUSAGE = 77
++ SYS_GETTIMEOFDAY = 78
++ SYS_SETTIMEOFDAY = 79
++ SYS_GETGROUPS = 80
++ SYS_SETGROUPS = 81
++ SYS_SELECT = 82
++ SYS_SYMLINK = 83
++ SYS_OLDLSTAT = 84
++ SYS_READLINK = 85
++ SYS_USELIB = 86
++ SYS_SWAPON = 87
++ SYS_REBOOT = 88
++ SYS_READDIR = 89
++ SYS_MMAP = 90
++ SYS_MUNMAP = 91
++ SYS_TRUNCATE = 92
++ SYS_FTRUNCATE = 93
++ SYS_FCHMOD = 94
++ SYS_FCHOWN = 95
++ SYS_GETPRIORITY = 96
++ SYS_SETPRIORITY = 97
++ SYS_PROFIL = 98
++ SYS_STATFS = 99
++ SYS_FSTATFS = 100
++ SYS_IOPERM = 101
++ SYS_SOCKETCALL = 102
++ SYS_SYSLOG = 103
++ SYS_SETITIMER = 104
++ SYS_GETITIMER = 105
++ SYS_STAT = 106
++ SYS_LSTAT = 107
++ SYS_FSTAT = 108
++ SYS_OLDUNAME = 109
++ SYS_IOPL = 110
++ SYS_VHANGUP = 111
++ SYS_IDLE = 112
++ SYS_VM86OLD = 113
++ SYS_WAIT4 = 114
++ SYS_SWAPOFF = 115
++ SYS_SYSINFO = 116
++ SYS_IPC = 117
++ SYS_FSYNC = 118
++ SYS_SIGRETURN = 119
++ SYS_CLONE = 120
++ SYS_SETDOMAINNAME = 121
++ SYS_UNAME = 122
++ SYS_MODIFY_LDT = 123
++ SYS_ADJTIMEX = 124
++ SYS_MPROTECT = 125
++ SYS_SIGPROCMASK = 126
++ SYS_CREATE_MODULE = 127
++ SYS_INIT_MODULE = 128
++ SYS_DELETE_MODULE = 129
++ SYS_GET_KERNEL_SYMS = 130
++ SYS_QUOTACTL = 131
++ SYS_GETPGID = 132
++ SYS_FCHDIR = 133
++ SYS_BDFLUSH = 134
++ SYS_SYSFS = 135
++ SYS_PERSONALITY = 136
++ SYS_AFS_SYSCALL = 137
++ SYS_SETFSUID = 138
++ SYS_SETFSGID = 139
++ SYS__LLSEEK = 140
++ SYS_GETDENTS = 141
++ SYS__NEWSELECT = 142
++ SYS_FLOCK = 143
++ SYS_MSYNC = 144
++ SYS_READV = 145
++ SYS_WRITEV = 146
++ SYS_GETSID = 147
++ SYS_FDATASYNC = 148
++ SYS__SYSCTL = 149
++ SYS_MLOCK = 150
++ SYS_MUNLOCK = 151
++ SYS_MLOCKALL = 152
++ SYS_MUNLOCKALL = 153
++ SYS_SCHED_SETPARAM = 154
++ SYS_SCHED_GETPARAM = 155
++ SYS_SCHED_SETSCHEDULER = 156
++ SYS_SCHED_GETSCHEDULER = 157
++ SYS_SCHED_YIELD = 158
++ SYS_SCHED_GET_PRIORITY_MAX = 159
++ SYS_SCHED_GET_PRIORITY_MIN = 160
++ SYS_SCHED_RR_GET_INTERVAL = 161
++ SYS_NANOSLEEP = 162
++ SYS_MREMAP = 163
++ SYS_SETRESUID = 164
++ SYS_GETRESUID = 165
++ SYS_VM86 = 166
++ SYS_QUERY_MODULE = 167
++ SYS_POLL = 168
++ SYS_NFSSERVCTL = 169
++ SYS_SETRESGID = 170
++ SYS_GETRESGID = 171
++ SYS_PRCTL = 172
++ SYS_RT_SIGRETURN = 173
++ SYS_RT_SIGACTION = 174
++ SYS_RT_SIGPROCMASK = 175
++ SYS_RT_SIGPENDING = 176
++ SYS_RT_SIGTIMEDWAIT = 177
++ SYS_RT_SIGQUEUEINFO = 178
++ SYS_RT_SIGSUSPEND = 179
++ SYS_PREAD64 = 180
++ SYS_PWRITE64 = 181
++ SYS_CHOWN = 182
++ SYS_GETCWD = 183
++ SYS_CAPGET = 184
++ SYS_CAPSET = 185
++ SYS_SIGALTSTACK = 186
++ SYS_SENDFILE = 187
++ SYS_GETPMSG = 188
++ SYS_PUTPMSG = 189
++ SYS_VFORK = 190
++ SYS_UGETRLIMIT = 191
++ SYS_MMAP2 = 192
++ SYS_TRUNCATE64 = 193
++ SYS_FTRUNCATE64 = 194
++ SYS_STAT64 = 195
++ SYS_LSTAT64 = 196
++ SYS_FSTAT64 = 197
++ SYS_LCHOWN32 = 198
++ SYS_GETUID32 = 199
++ SYS_GETGID32 = 200
++ SYS_GETEUID32 = 201
++ SYS_GETEGID32 = 202
++ SYS_SETREUID32 = 203
++ SYS_SETREGID32 = 204
++ SYS_GETGROUPS32 = 205
++ SYS_SETGROUPS32 = 206
++ SYS_FCHOWN32 = 207
++ SYS_SETRESUID32 = 208
++ SYS_GETRESUID32 = 209
++ SYS_SETRESGID32 = 210
++ SYS_GETRESGID32 = 211
++ SYS_CHOWN32 = 212
++ SYS_SETUID32 = 213
++ SYS_SETGID32 = 214
++ SYS_SETFSUID32 = 215
++ SYS_SETFSGID32 = 216
++ SYS_PIVOT_ROOT = 217
++ SYS_MINCORE = 218
++ SYS_MADVISE = 219
++ SYS_GETDENTS64 = 220
++ SYS_FCNTL64 = 221
++ SYS_GETTID = 224
++ SYS_READAHEAD = 225
++ SYS_SETXATTR = 226
++ SYS_LSETXATTR = 227
++ SYS_FSETXATTR = 228
++ SYS_GETXATTR = 229
++ SYS_LGETXATTR = 230
++ SYS_FGETXATTR = 231
++ SYS_LISTXATTR = 232
++ SYS_LLISTXATTR = 233
++ SYS_FLISTXATTR = 234
++ SYS_REMOVEXATTR = 235
++ SYS_LREMOVEXATTR = 236
++ SYS_FREMOVEXATTR = 237
++ SYS_TKILL = 238
++ SYS_SENDFILE64 = 239
++ SYS_FUTEX = 240
++ SYS_SCHED_SETAFFINITY = 241
++ SYS_SCHED_GETAFFINITY = 242
++ SYS_SET_THREAD_AREA = 243
++ SYS_GET_THREAD_AREA = 244
++ SYS_IO_SETUP = 245
++ SYS_IO_DESTROY = 246
++ SYS_IO_GETEVENTS = 247
++ SYS_IO_SUBMIT = 248
++ SYS_IO_CANCEL = 249
++ SYS_FADVISE64 = 250
++ SYS_EXIT_GROUP = 252
++ SYS_LOOKUP_DCOOKIE = 253
++ SYS_EPOLL_CREATE = 254
++ SYS_EPOLL_CTL = 255
++ SYS_EPOLL_WAIT = 256
++ SYS_REMAP_FILE_PAGES = 257
++ SYS_SET_TID_ADDRESS = 258
++ SYS_TIMER_CREATE = 259
++ SYS_TIMER_SETTIME = 260
++ SYS_TIMER_GETTIME = 261
++ SYS_TIMER_GETOVERRUN = 262
++ SYS_TIMER_DELETE = 263
++ SYS_CLOCK_SETTIME = 264
++ SYS_CLOCK_GETTIME = 265
++ SYS_CLOCK_GETRES = 266
++ SYS_CLOCK_NANOSLEEP = 267
++ SYS_STATFS64 = 268
++ SYS_FSTATFS64 = 269
++ SYS_TGKILL = 270
++ SYS_UTIMES = 271
++ SYS_FADVISE64_64 = 272
++ SYS_VSERVER = 273
++ SYS_MBIND = 274
++ SYS_GET_MEMPOLICY = 275
++ SYS_SET_MEMPOLICY = 276
++ SYS_MQ_OPEN = 277
++ SYS_MQ_UNLINK = 278
++ SYS_MQ_TIMEDSEND = 279
++ SYS_MQ_TIMEDRECEIVE = 280
++ SYS_MQ_NOTIFY = 281
++ SYS_MQ_GETSETATTR = 282
++ SYS_KEXEC_LOAD = 283
++ SYS_WAITID = 284
++ SYS_ADD_KEY = 286
++ SYS_REQUEST_KEY = 287
++ SYS_KEYCTL = 288
++ SYS_IOPRIO_SET = 289
++ SYS_IOPRIO_GET = 290
++ SYS_INOTIFY_INIT = 291
++ SYS_INOTIFY_ADD_WATCH = 292
++ SYS_INOTIFY_RM_WATCH = 293
++ SYS_MIGRATE_PAGES = 294
++ SYS_OPENAT = 295
++ SYS_MKDIRAT = 296
++ SYS_MKNODAT = 297
++ SYS_FCHOWNAT = 298
++ SYS_FUTIMESAT = 299
++ SYS_FSTATAT64 = 300
++ SYS_UNLINKAT = 301
++ SYS_RENAMEAT = 302
++ SYS_LINKAT = 303
++ SYS_SYMLINKAT = 304
++ SYS_READLINKAT = 305
++ SYS_FCHMODAT = 306
++ SYS_FACCESSAT = 307
++ SYS_PSELECT6 = 308
++ SYS_PPOLL = 309
++ SYS_UNSHARE = 310
++ SYS_SET_ROBUST_LIST = 311
++ SYS_GET_ROBUST_LIST = 312
++ SYS_SPLICE = 313
++ SYS_SYNC_FILE_RANGE = 314
++ SYS_TEE = 315
++ SYS_VMSPLICE = 316
++ SYS_MOVE_PAGES = 317
++ SYS_GETCPU = 318
++ SYS_EPOLL_PWAIT = 319
++ SYS_UTIMENSAT = 320
++ SYS_SIGNALFD = 321
++ SYS_TIMERFD_CREATE = 322
++ SYS_EVENTFD = 323
++ SYS_FALLOCATE = 324
++ SYS_TIMERFD_SETTIME = 325
++ SYS_TIMERFD_GETTIME = 326
++ SYS_SIGNALFD4 = 327
++ SYS_EVENTFD2 = 328
++ SYS_EPOLL_CREATE1 = 329
++ SYS_DUP3 = 330
++ SYS_PIPE2 = 331
++ SYS_INOTIFY_INIT1 = 332
++ SYS_PREADV = 333
++ SYS_PWRITEV = 334
++ SYS_RT_TGSIGQUEUEINFO = 335
++ SYS_PERF_EVENT_OPEN = 336
++ SYS_RECVMMSG = 337
++ SYS_FANOTIFY_INIT = 338
++ SYS_FANOTIFY_MARK = 339
++ SYS_PRLIMIT64 = 340
++ SYS_NAME_TO_HANDLE_AT = 341
++ SYS_OPEN_BY_HANDLE_AT = 342
++ SYS_CLOCK_ADJTIME = 343
++ SYS_SYNCFS = 344
++ SYS_SENDMMSG = 345
++ SYS_SETNS = 346
++ SYS_PROCESS_VM_READV = 347
++ SYS_PROCESS_VM_WRITEV = 348
++ SYS_KCMP = 349
++ SYS_FINIT_MODULE = 350
++ SYS_SCHED_SETATTR = 351
++ SYS_SCHED_GETATTR = 352
++ SYS_RENAMEAT2 = 353
++ SYS_SECCOMP = 354
++ SYS_GETRANDOM = 355
++ SYS_MEMFD_CREATE = 356
++ SYS_BPF = 357
++ SYS_EXECVEAT = 358
++ SYS_SOCKET = 359
++ SYS_SOCKETPAIR = 360
++ SYS_BIND = 361
++ SYS_CONNECT = 362
++ SYS_LISTEN = 363
++ SYS_ACCEPT4 = 364
++ SYS_GETSOCKOPT = 365
++ SYS_SETSOCKOPT = 366
++ SYS_GETSOCKNAME = 367
++ SYS_GETPEERNAME = 368
++ SYS_SENDTO = 369
++ SYS_SENDMSG = 370
++ SYS_RECVFROM = 371
++ SYS_RECVMSG = 372
++ SYS_SHUTDOWN = 373
++ SYS_USERFAULTFD = 374
++ SYS_MEMBARRIER = 375
++ SYS_MLOCK2 = 376
++ SYS_COPY_FILE_RANGE = 377
++ SYS_PREADV2 = 378
++ SYS_PWRITEV2 = 379
++ SYS_PKEY_MPROTECT = 380
++ SYS_PKEY_ALLOC = 381
++ SYS_PKEY_FREE = 382
++ SYS_STATX = 383
++ SYS_ARCH_PRCTL = 384
++ SYS_IO_PGETEVENTS = 385
++ SYS_RSEQ = 386
++ SYS_SEMGET = 393
++ SYS_SEMCTL = 394
++ SYS_SHMGET = 395
++ SYS_SHMCTL = 396
++ SYS_SHMAT = 397
++ SYS_SHMDT = 398
++ SYS_MSGGET = 399
++ SYS_MSGSND = 400
++ SYS_MSGRCV = 401
++ SYS_MSGCTL = 402
++ SYS_CLOCK_GETTIME64 = 403
++ SYS_CLOCK_SETTIME64 = 404
++ SYS_CLOCK_ADJTIME64 = 405
++ SYS_CLOCK_GETRES_TIME64 = 406
++ SYS_CLOCK_NANOSLEEP_TIME64 = 407
++ SYS_TIMER_GETTIME64 = 408
++ SYS_TIMER_SETTIME64 = 409
++ SYS_TIMERFD_GETTIME64 = 410
++ SYS_TIMERFD_SETTIME64 = 411
++ SYS_UTIMENSAT_TIME64 = 412
++ SYS_PSELECT6_TIME64 = 413
++ SYS_PPOLL_TIME64 = 414
++ SYS_IO_PGETEVENTS_TIME64 = 416
++ SYS_RECVMMSG_TIME64 = 417
++ SYS_MQ_TIMEDSEND_TIME64 = 418
++ SYS_MQ_TIMEDRECEIVE_TIME64 = 419
++ SYS_SEMTIMEDOP_TIME64 = 420
++ SYS_RT_SIGTIMEDWAIT_TIME64 = 421
++ SYS_FUTEX_TIME64 = 422
++ SYS_SCHED_RR_GET_INTERVAL_TIME64 = 423
++ SYS_PIDFD_SEND_SIGNAL = 424
++ SYS_IO_URING_SETUP = 425
++ SYS_IO_URING_ENTER = 426
++ SYS_IO_URING_REGISTER = 427
++ SYS_OPEN_TREE = 428
++ SYS_MOVE_MOUNT = 429
++ SYS_FSOPEN = 430
++ SYS_FSCONFIG = 431
++ SYS_FSMOUNT = 432
++ SYS_FSPICK = 433
++ SYS_PIDFD_OPEN = 434
++ SYS_CLONE3 = 435
++ SYS_OPENAT2 = 437
++ SYS_PIDFD_GETFD = 438
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go
+index 49bfa127..054a741b 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go
+@@ -1,4 +1,4 @@
+-// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include -m64 /tmp/include/asm/unistd.h
++// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include -m64 /tmp/include/asm/unistd.h
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build amd64,linux
+@@ -338,4 +338,21 @@ const (
+ SYS_PKEY_MPROTECT = 329
+ SYS_PKEY_ALLOC = 330
+ SYS_PKEY_FREE = 331
++ SYS_STATX = 332
++ SYS_IO_PGETEVENTS = 333
++ SYS_RSEQ = 334
++ SYS_PIDFD_SEND_SIGNAL = 424
++ SYS_IO_URING_SETUP = 425
++ SYS_IO_URING_ENTER = 426
++ SYS_IO_URING_REGISTER = 427
++ SYS_OPEN_TREE = 428
++ SYS_MOVE_MOUNT = 429
++ SYS_FSOPEN = 430
++ SYS_FSCONFIG = 431
++ SYS_FSMOUNT = 432
++ SYS_FSPICK = 433
++ SYS_PIDFD_OPEN = 434
++ SYS_CLONE3 = 435
++ SYS_OPENAT2 = 437
++ SYS_PIDFD_GETFD = 438
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go
+index 97b182ef..307f2ba1 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go
+@@ -1,4 +1,4 @@
+-// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
++// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build arm,linux
+@@ -6,356 +6,395 @@
+ package unix
+
+ const (
+- SYS_RESTART_SYSCALL = 0
+- SYS_EXIT = 1
+- SYS_FORK = 2
+- SYS_READ = 3
+- SYS_WRITE = 4
+- SYS_OPEN = 5
+- SYS_CLOSE = 6
+- SYS_CREAT = 8
+- SYS_LINK = 9
+- SYS_UNLINK = 10
+- SYS_EXECVE = 11
+- SYS_CHDIR = 12
+- SYS_MKNOD = 14
+- SYS_CHMOD = 15
+- SYS_LCHOWN = 16
+- SYS_LSEEK = 19
+- SYS_GETPID = 20
+- SYS_MOUNT = 21
+- SYS_SETUID = 23
+- SYS_GETUID = 24
+- SYS_PTRACE = 26
+- SYS_PAUSE = 29
+- SYS_ACCESS = 33
+- SYS_NICE = 34
+- SYS_SYNC = 36
+- SYS_KILL = 37
+- SYS_RENAME = 38
+- SYS_MKDIR = 39
+- SYS_RMDIR = 40
+- SYS_DUP = 41
+- SYS_PIPE = 42
+- SYS_TIMES = 43
+- SYS_BRK = 45
+- SYS_SETGID = 46
+- SYS_GETGID = 47
+- SYS_GETEUID = 49
+- SYS_GETEGID = 50
+- SYS_ACCT = 51
+- SYS_UMOUNT2 = 52
+- SYS_IOCTL = 54
+- SYS_FCNTL = 55
+- SYS_SETPGID = 57
+- SYS_UMASK = 60
+- SYS_CHROOT = 61
+- SYS_USTAT = 62
+- SYS_DUP2 = 63
+- SYS_GETPPID = 64
+- SYS_GETPGRP = 65
+- SYS_SETSID = 66
+- SYS_SIGACTION = 67
+- SYS_SETREUID = 70
+- SYS_SETREGID = 71
+- SYS_SIGSUSPEND = 72
+- SYS_SIGPENDING = 73
+- SYS_SETHOSTNAME = 74
+- SYS_SETRLIMIT = 75
+- SYS_GETRUSAGE = 77
+- SYS_GETTIMEOFDAY = 78
+- SYS_SETTIMEOFDAY = 79
+- SYS_GETGROUPS = 80
+- SYS_SETGROUPS = 81
+- SYS_SYMLINK = 83
+- SYS_READLINK = 85
+- SYS_USELIB = 86
+- SYS_SWAPON = 87
+- SYS_REBOOT = 88
+- SYS_MUNMAP = 91
+- SYS_TRUNCATE = 92
+- SYS_FTRUNCATE = 93
+- SYS_FCHMOD = 94
+- SYS_FCHOWN = 95
+- SYS_GETPRIORITY = 96
+- SYS_SETPRIORITY = 97
+- SYS_STATFS = 99
+- SYS_FSTATFS = 100
+- SYS_SYSLOG = 103
+- SYS_SETITIMER = 104
+- SYS_GETITIMER = 105
+- SYS_STAT = 106
+- SYS_LSTAT = 107
+- SYS_FSTAT = 108
+- SYS_VHANGUP = 111
+- SYS_WAIT4 = 114
+- SYS_SWAPOFF = 115
+- SYS_SYSINFO = 116
+- SYS_FSYNC = 118
+- SYS_SIGRETURN = 119
+- SYS_CLONE = 120
+- SYS_SETDOMAINNAME = 121
+- SYS_UNAME = 122
+- SYS_ADJTIMEX = 124
+- SYS_MPROTECT = 125
+- SYS_SIGPROCMASK = 126
+- SYS_INIT_MODULE = 128
+- SYS_DELETE_MODULE = 129
+- SYS_QUOTACTL = 131
+- SYS_GETPGID = 132
+- SYS_FCHDIR = 133
+- SYS_BDFLUSH = 134
+- SYS_SYSFS = 135
+- SYS_PERSONALITY = 136
+- SYS_SETFSUID = 138
+- SYS_SETFSGID = 139
+- SYS__LLSEEK = 140
+- SYS_GETDENTS = 141
+- SYS__NEWSELECT = 142
+- SYS_FLOCK = 143
+- SYS_MSYNC = 144
+- SYS_READV = 145
+- SYS_WRITEV = 146
+- SYS_GETSID = 147
+- SYS_FDATASYNC = 148
+- SYS__SYSCTL = 149
+- SYS_MLOCK = 150
+- SYS_MUNLOCK = 151
+- SYS_MLOCKALL = 152
+- SYS_MUNLOCKALL = 153
+- SYS_SCHED_SETPARAM = 154
+- SYS_SCHED_GETPARAM = 155
+- SYS_SCHED_SETSCHEDULER = 156
+- SYS_SCHED_GETSCHEDULER = 157
+- SYS_SCHED_YIELD = 158
+- SYS_SCHED_GET_PRIORITY_MAX = 159
+- SYS_SCHED_GET_PRIORITY_MIN = 160
+- SYS_SCHED_RR_GET_INTERVAL = 161
+- SYS_NANOSLEEP = 162
+- SYS_MREMAP = 163
+- SYS_SETRESUID = 164
+- SYS_GETRESUID = 165
+- SYS_POLL = 168
+- SYS_NFSSERVCTL = 169
+- SYS_SETRESGID = 170
+- SYS_GETRESGID = 171
+- SYS_PRCTL = 172
+- SYS_RT_SIGRETURN = 173
+- SYS_RT_SIGACTION = 174
+- SYS_RT_SIGPROCMASK = 175
+- SYS_RT_SIGPENDING = 176
+- SYS_RT_SIGTIMEDWAIT = 177
+- SYS_RT_SIGQUEUEINFO = 178
+- SYS_RT_SIGSUSPEND = 179
+- SYS_PREAD64 = 180
+- SYS_PWRITE64 = 181
+- SYS_CHOWN = 182
+- SYS_GETCWD = 183
+- SYS_CAPGET = 184
+- SYS_CAPSET = 185
+- SYS_SIGALTSTACK = 186
+- SYS_SENDFILE = 187
+- SYS_VFORK = 190
+- SYS_UGETRLIMIT = 191
+- SYS_MMAP2 = 192
+- SYS_TRUNCATE64 = 193
+- SYS_FTRUNCATE64 = 194
+- SYS_STAT64 = 195
+- SYS_LSTAT64 = 196
+- SYS_FSTAT64 = 197
+- SYS_LCHOWN32 = 198
+- SYS_GETUID32 = 199
+- SYS_GETGID32 = 200
+- SYS_GETEUID32 = 201
+- SYS_GETEGID32 = 202
+- SYS_SETREUID32 = 203
+- SYS_SETREGID32 = 204
+- SYS_GETGROUPS32 = 205
+- SYS_SETGROUPS32 = 206
+- SYS_FCHOWN32 = 207
+- SYS_SETRESUID32 = 208
+- SYS_GETRESUID32 = 209
+- SYS_SETRESGID32 = 210
+- SYS_GETRESGID32 = 211
+- SYS_CHOWN32 = 212
+- SYS_SETUID32 = 213
+- SYS_SETGID32 = 214
+- SYS_SETFSUID32 = 215
+- SYS_SETFSGID32 = 216
+- SYS_GETDENTS64 = 217
+- SYS_PIVOT_ROOT = 218
+- SYS_MINCORE = 219
+- SYS_MADVISE = 220
+- SYS_FCNTL64 = 221
+- SYS_GETTID = 224
+- SYS_READAHEAD = 225
+- SYS_SETXATTR = 226
+- SYS_LSETXATTR = 227
+- SYS_FSETXATTR = 228
+- SYS_GETXATTR = 229
+- SYS_LGETXATTR = 230
+- SYS_FGETXATTR = 231
+- SYS_LISTXATTR = 232
+- SYS_LLISTXATTR = 233
+- SYS_FLISTXATTR = 234
+- SYS_REMOVEXATTR = 235
+- SYS_LREMOVEXATTR = 236
+- SYS_FREMOVEXATTR = 237
+- SYS_TKILL = 238
+- SYS_SENDFILE64 = 239
+- SYS_FUTEX = 240
+- SYS_SCHED_SETAFFINITY = 241
+- SYS_SCHED_GETAFFINITY = 242
+- SYS_IO_SETUP = 243
+- SYS_IO_DESTROY = 244
+- SYS_IO_GETEVENTS = 245
+- SYS_IO_SUBMIT = 246
+- SYS_IO_CANCEL = 247
+- SYS_EXIT_GROUP = 248
+- SYS_LOOKUP_DCOOKIE = 249
+- SYS_EPOLL_CREATE = 250
+- SYS_EPOLL_CTL = 251
+- SYS_EPOLL_WAIT = 252
+- SYS_REMAP_FILE_PAGES = 253
+- SYS_SET_TID_ADDRESS = 256
+- SYS_TIMER_CREATE = 257
+- SYS_TIMER_SETTIME = 258
+- SYS_TIMER_GETTIME = 259
+- SYS_TIMER_GETOVERRUN = 260
+- SYS_TIMER_DELETE = 261
+- SYS_CLOCK_SETTIME = 262
+- SYS_CLOCK_GETTIME = 263
+- SYS_CLOCK_GETRES = 264
+- SYS_CLOCK_NANOSLEEP = 265
+- SYS_STATFS64 = 266
+- SYS_FSTATFS64 = 267
+- SYS_TGKILL = 268
+- SYS_UTIMES = 269
+- SYS_ARM_FADVISE64_64 = 270
+- SYS_PCICONFIG_IOBASE = 271
+- SYS_PCICONFIG_READ = 272
+- SYS_PCICONFIG_WRITE = 273
+- SYS_MQ_OPEN = 274
+- SYS_MQ_UNLINK = 275
+- SYS_MQ_TIMEDSEND = 276
+- SYS_MQ_TIMEDRECEIVE = 277
+- SYS_MQ_NOTIFY = 278
+- SYS_MQ_GETSETATTR = 279
+- SYS_WAITID = 280
+- SYS_SOCKET = 281
+- SYS_BIND = 282
+- SYS_CONNECT = 283
+- SYS_LISTEN = 284
+- SYS_ACCEPT = 285
+- SYS_GETSOCKNAME = 286
+- SYS_GETPEERNAME = 287
+- SYS_SOCKETPAIR = 288
+- SYS_SEND = 289
+- SYS_SENDTO = 290
+- SYS_RECV = 291
+- SYS_RECVFROM = 292
+- SYS_SHUTDOWN = 293
+- SYS_SETSOCKOPT = 294
+- SYS_GETSOCKOPT = 295
+- SYS_SENDMSG = 296
+- SYS_RECVMSG = 297
+- SYS_SEMOP = 298
+- SYS_SEMGET = 299
+- SYS_SEMCTL = 300
+- SYS_MSGSND = 301
+- SYS_MSGRCV = 302
+- SYS_MSGGET = 303
+- SYS_MSGCTL = 304
+- SYS_SHMAT = 305
+- SYS_SHMDT = 306
+- SYS_SHMGET = 307
+- SYS_SHMCTL = 308
+- SYS_ADD_KEY = 309
+- SYS_REQUEST_KEY = 310
+- SYS_KEYCTL = 311
+- SYS_SEMTIMEDOP = 312
+- SYS_VSERVER = 313
+- SYS_IOPRIO_SET = 314
+- SYS_IOPRIO_GET = 315
+- SYS_INOTIFY_INIT = 316
+- SYS_INOTIFY_ADD_WATCH = 317
+- SYS_INOTIFY_RM_WATCH = 318
+- SYS_MBIND = 319
+- SYS_GET_MEMPOLICY = 320
+- SYS_SET_MEMPOLICY = 321
+- SYS_OPENAT = 322
+- SYS_MKDIRAT = 323
+- SYS_MKNODAT = 324
+- SYS_FCHOWNAT = 325
+- SYS_FUTIMESAT = 326
+- SYS_FSTATAT64 = 327
+- SYS_UNLINKAT = 328
+- SYS_RENAMEAT = 329
+- SYS_LINKAT = 330
+- SYS_SYMLINKAT = 331
+- SYS_READLINKAT = 332
+- SYS_FCHMODAT = 333
+- SYS_FACCESSAT = 334
+- SYS_PSELECT6 = 335
+- SYS_PPOLL = 336
+- SYS_UNSHARE = 337
+- SYS_SET_ROBUST_LIST = 338
+- SYS_GET_ROBUST_LIST = 339
+- SYS_SPLICE = 340
+- SYS_ARM_SYNC_FILE_RANGE = 341
+- SYS_TEE = 342
+- SYS_VMSPLICE = 343
+- SYS_MOVE_PAGES = 344
+- SYS_GETCPU = 345
+- SYS_EPOLL_PWAIT = 346
+- SYS_KEXEC_LOAD = 347
+- SYS_UTIMENSAT = 348
+- SYS_SIGNALFD = 349
+- SYS_TIMERFD_CREATE = 350
+- SYS_EVENTFD = 351
+- SYS_FALLOCATE = 352
+- SYS_TIMERFD_SETTIME = 353
+- SYS_TIMERFD_GETTIME = 354
+- SYS_SIGNALFD4 = 355
+- SYS_EVENTFD2 = 356
+- SYS_EPOLL_CREATE1 = 357
+- SYS_DUP3 = 358
+- SYS_PIPE2 = 359
+- SYS_INOTIFY_INIT1 = 360
+- SYS_PREADV = 361
+- SYS_PWRITEV = 362
+- SYS_RT_TGSIGQUEUEINFO = 363
+- SYS_PERF_EVENT_OPEN = 364
+- SYS_RECVMMSG = 365
+- SYS_ACCEPT4 = 366
+- SYS_FANOTIFY_INIT = 367
+- SYS_FANOTIFY_MARK = 368
+- SYS_PRLIMIT64 = 369
+- SYS_NAME_TO_HANDLE_AT = 370
+- SYS_OPEN_BY_HANDLE_AT = 371
+- SYS_CLOCK_ADJTIME = 372
+- SYS_SYNCFS = 373
+- SYS_SENDMMSG = 374
+- SYS_SETNS = 375
+- SYS_PROCESS_VM_READV = 376
+- SYS_PROCESS_VM_WRITEV = 377
+- SYS_KCMP = 378
+- SYS_FINIT_MODULE = 379
+- SYS_SCHED_SETATTR = 380
+- SYS_SCHED_GETATTR = 381
+- SYS_RENAMEAT2 = 382
+- SYS_SECCOMP = 383
+- SYS_GETRANDOM = 384
+- SYS_MEMFD_CREATE = 385
+- SYS_BPF = 386
+- SYS_EXECVEAT = 387
+- SYS_USERFAULTFD = 388
+- SYS_MEMBARRIER = 389
+- SYS_MLOCK2 = 390
+- SYS_COPY_FILE_RANGE = 391
+- SYS_PREADV2 = 392
+- SYS_PWRITEV2 = 393
+- SYS_PKEY_MPROTECT = 394
+- SYS_PKEY_ALLOC = 395
+- SYS_PKEY_FREE = 396
++ SYS_RESTART_SYSCALL = 0
++ SYS_EXIT = 1
++ SYS_FORK = 2
++ SYS_READ = 3
++ SYS_WRITE = 4
++ SYS_OPEN = 5
++ SYS_CLOSE = 6
++ SYS_CREAT = 8
++ SYS_LINK = 9
++ SYS_UNLINK = 10
++ SYS_EXECVE = 11
++ SYS_CHDIR = 12
++ SYS_MKNOD = 14
++ SYS_CHMOD = 15
++ SYS_LCHOWN = 16
++ SYS_LSEEK = 19
++ SYS_GETPID = 20
++ SYS_MOUNT = 21
++ SYS_SETUID = 23
++ SYS_GETUID = 24
++ SYS_PTRACE = 26
++ SYS_PAUSE = 29
++ SYS_ACCESS = 33
++ SYS_NICE = 34
++ SYS_SYNC = 36
++ SYS_KILL = 37
++ SYS_RENAME = 38
++ SYS_MKDIR = 39
++ SYS_RMDIR = 40
++ SYS_DUP = 41
++ SYS_PIPE = 42
++ SYS_TIMES = 43
++ SYS_BRK = 45
++ SYS_SETGID = 46
++ SYS_GETGID = 47
++ SYS_GETEUID = 49
++ SYS_GETEGID = 50
++ SYS_ACCT = 51
++ SYS_UMOUNT2 = 52
++ SYS_IOCTL = 54
++ SYS_FCNTL = 55
++ SYS_SETPGID = 57
++ SYS_UMASK = 60
++ SYS_CHROOT = 61
++ SYS_USTAT = 62
++ SYS_DUP2 = 63
++ SYS_GETPPID = 64
++ SYS_GETPGRP = 65
++ SYS_SETSID = 66
++ SYS_SIGACTION = 67
++ SYS_SETREUID = 70
++ SYS_SETREGID = 71
++ SYS_SIGSUSPEND = 72
++ SYS_SIGPENDING = 73
++ SYS_SETHOSTNAME = 74
++ SYS_SETRLIMIT = 75
++ SYS_GETRUSAGE = 77
++ SYS_GETTIMEOFDAY = 78
++ SYS_SETTIMEOFDAY = 79
++ SYS_GETGROUPS = 80
++ SYS_SETGROUPS = 81
++ SYS_SYMLINK = 83
++ SYS_READLINK = 85
++ SYS_USELIB = 86
++ SYS_SWAPON = 87
++ SYS_REBOOT = 88
++ SYS_MUNMAP = 91
++ SYS_TRUNCATE = 92
++ SYS_FTRUNCATE = 93
++ SYS_FCHMOD = 94
++ SYS_FCHOWN = 95
++ SYS_GETPRIORITY = 96
++ SYS_SETPRIORITY = 97
++ SYS_STATFS = 99
++ SYS_FSTATFS = 100
++ SYS_SYSLOG = 103
++ SYS_SETITIMER = 104
++ SYS_GETITIMER = 105
++ SYS_STAT = 106
++ SYS_LSTAT = 107
++ SYS_FSTAT = 108
++ SYS_VHANGUP = 111
++ SYS_WAIT4 = 114
++ SYS_SWAPOFF = 115
++ SYS_SYSINFO = 116
++ SYS_FSYNC = 118
++ SYS_SIGRETURN = 119
++ SYS_CLONE = 120
++ SYS_SETDOMAINNAME = 121
++ SYS_UNAME = 122
++ SYS_ADJTIMEX = 124
++ SYS_MPROTECT = 125
++ SYS_SIGPROCMASK = 126
++ SYS_INIT_MODULE = 128
++ SYS_DELETE_MODULE = 129
++ SYS_QUOTACTL = 131
++ SYS_GETPGID = 132
++ SYS_FCHDIR = 133
++ SYS_BDFLUSH = 134
++ SYS_SYSFS = 135
++ SYS_PERSONALITY = 136
++ SYS_SETFSUID = 138
++ SYS_SETFSGID = 139
++ SYS__LLSEEK = 140
++ SYS_GETDENTS = 141
++ SYS__NEWSELECT = 142
++ SYS_FLOCK = 143
++ SYS_MSYNC = 144
++ SYS_READV = 145
++ SYS_WRITEV = 146
++ SYS_GETSID = 147
++ SYS_FDATASYNC = 148
++ SYS__SYSCTL = 149
++ SYS_MLOCK = 150
++ SYS_MUNLOCK = 151
++ SYS_MLOCKALL = 152
++ SYS_MUNLOCKALL = 153
++ SYS_SCHED_SETPARAM = 154
++ SYS_SCHED_GETPARAM = 155
++ SYS_SCHED_SETSCHEDULER = 156
++ SYS_SCHED_GETSCHEDULER = 157
++ SYS_SCHED_YIELD = 158
++ SYS_SCHED_GET_PRIORITY_MAX = 159
++ SYS_SCHED_GET_PRIORITY_MIN = 160
++ SYS_SCHED_RR_GET_INTERVAL = 161
++ SYS_NANOSLEEP = 162
++ SYS_MREMAP = 163
++ SYS_SETRESUID = 164
++ SYS_GETRESUID = 165
++ SYS_POLL = 168
++ SYS_NFSSERVCTL = 169
++ SYS_SETRESGID = 170
++ SYS_GETRESGID = 171
++ SYS_PRCTL = 172
++ SYS_RT_SIGRETURN = 173
++ SYS_RT_SIGACTION = 174
++ SYS_RT_SIGPROCMASK = 175
++ SYS_RT_SIGPENDING = 176
++ SYS_RT_SIGTIMEDWAIT = 177
++ SYS_RT_SIGQUEUEINFO = 178
++ SYS_RT_SIGSUSPEND = 179
++ SYS_PREAD64 = 180
++ SYS_PWRITE64 = 181
++ SYS_CHOWN = 182
++ SYS_GETCWD = 183
++ SYS_CAPGET = 184
++ SYS_CAPSET = 185
++ SYS_SIGALTSTACK = 186
++ SYS_SENDFILE = 187
++ SYS_VFORK = 190
++ SYS_UGETRLIMIT = 191
++ SYS_MMAP2 = 192
++ SYS_TRUNCATE64 = 193
++ SYS_FTRUNCATE64 = 194
++ SYS_STAT64 = 195
++ SYS_LSTAT64 = 196
++ SYS_FSTAT64 = 197
++ SYS_LCHOWN32 = 198
++ SYS_GETUID32 = 199
++ SYS_GETGID32 = 200
++ SYS_GETEUID32 = 201
++ SYS_GETEGID32 = 202
++ SYS_SETREUID32 = 203
++ SYS_SETREGID32 = 204
++ SYS_GETGROUPS32 = 205
++ SYS_SETGROUPS32 = 206
++ SYS_FCHOWN32 = 207
++ SYS_SETRESUID32 = 208
++ SYS_GETRESUID32 = 209
++ SYS_SETRESGID32 = 210
++ SYS_GETRESGID32 = 211
++ SYS_CHOWN32 = 212
++ SYS_SETUID32 = 213
++ SYS_SETGID32 = 214
++ SYS_SETFSUID32 = 215
++ SYS_SETFSGID32 = 216
++ SYS_GETDENTS64 = 217
++ SYS_PIVOT_ROOT = 218
++ SYS_MINCORE = 219
++ SYS_MADVISE = 220
++ SYS_FCNTL64 = 221
++ SYS_GETTID = 224
++ SYS_READAHEAD = 225
++ SYS_SETXATTR = 226
++ SYS_LSETXATTR = 227
++ SYS_FSETXATTR = 228
++ SYS_GETXATTR = 229
++ SYS_LGETXATTR = 230
++ SYS_FGETXATTR = 231
++ SYS_LISTXATTR = 232
++ SYS_LLISTXATTR = 233
++ SYS_FLISTXATTR = 234
++ SYS_REMOVEXATTR = 235
++ SYS_LREMOVEXATTR = 236
++ SYS_FREMOVEXATTR = 237
++ SYS_TKILL = 238
++ SYS_SENDFILE64 = 239
++ SYS_FUTEX = 240
++ SYS_SCHED_SETAFFINITY = 241
++ SYS_SCHED_GETAFFINITY = 242
++ SYS_IO_SETUP = 243
++ SYS_IO_DESTROY = 244
++ SYS_IO_GETEVENTS = 245
++ SYS_IO_SUBMIT = 246
++ SYS_IO_CANCEL = 247
++ SYS_EXIT_GROUP = 248
++ SYS_LOOKUP_DCOOKIE = 249
++ SYS_EPOLL_CREATE = 250
++ SYS_EPOLL_CTL = 251
++ SYS_EPOLL_WAIT = 252
++ SYS_REMAP_FILE_PAGES = 253
++ SYS_SET_TID_ADDRESS = 256
++ SYS_TIMER_CREATE = 257
++ SYS_TIMER_SETTIME = 258
++ SYS_TIMER_GETTIME = 259
++ SYS_TIMER_GETOVERRUN = 260
++ SYS_TIMER_DELETE = 261
++ SYS_CLOCK_SETTIME = 262
++ SYS_CLOCK_GETTIME = 263
++ SYS_CLOCK_GETRES = 264
++ SYS_CLOCK_NANOSLEEP = 265
++ SYS_STATFS64 = 266
++ SYS_FSTATFS64 = 267
++ SYS_TGKILL = 268
++ SYS_UTIMES = 269
++ SYS_ARM_FADVISE64_64 = 270
++ SYS_PCICONFIG_IOBASE = 271
++ SYS_PCICONFIG_READ = 272
++ SYS_PCICONFIG_WRITE = 273
++ SYS_MQ_OPEN = 274
++ SYS_MQ_UNLINK = 275
++ SYS_MQ_TIMEDSEND = 276
++ SYS_MQ_TIMEDRECEIVE = 277
++ SYS_MQ_NOTIFY = 278
++ SYS_MQ_GETSETATTR = 279
++ SYS_WAITID = 280
++ SYS_SOCKET = 281
++ SYS_BIND = 282
++ SYS_CONNECT = 283
++ SYS_LISTEN = 284
++ SYS_ACCEPT = 285
++ SYS_GETSOCKNAME = 286
++ SYS_GETPEERNAME = 287
++ SYS_SOCKETPAIR = 288
++ SYS_SEND = 289
++ SYS_SENDTO = 290
++ SYS_RECV = 291
++ SYS_RECVFROM = 292
++ SYS_SHUTDOWN = 293
++ SYS_SETSOCKOPT = 294
++ SYS_GETSOCKOPT = 295
++ SYS_SENDMSG = 296
++ SYS_RECVMSG = 297
++ SYS_SEMOP = 298
++ SYS_SEMGET = 299
++ SYS_SEMCTL = 300
++ SYS_MSGSND = 301
++ SYS_MSGRCV = 302
++ SYS_MSGGET = 303
++ SYS_MSGCTL = 304
++ SYS_SHMAT = 305
++ SYS_SHMDT = 306
++ SYS_SHMGET = 307
++ SYS_SHMCTL = 308
++ SYS_ADD_KEY = 309
++ SYS_REQUEST_KEY = 310
++ SYS_KEYCTL = 311
++ SYS_SEMTIMEDOP = 312
++ SYS_VSERVER = 313
++ SYS_IOPRIO_SET = 314
++ SYS_IOPRIO_GET = 315
++ SYS_INOTIFY_INIT = 316
++ SYS_INOTIFY_ADD_WATCH = 317
++ SYS_INOTIFY_RM_WATCH = 318
++ SYS_MBIND = 319
++ SYS_GET_MEMPOLICY = 320
++ SYS_SET_MEMPOLICY = 321
++ SYS_OPENAT = 322
++ SYS_MKDIRAT = 323
++ SYS_MKNODAT = 324
++ SYS_FCHOWNAT = 325
++ SYS_FUTIMESAT = 326
++ SYS_FSTATAT64 = 327
++ SYS_UNLINKAT = 328
++ SYS_RENAMEAT = 329
++ SYS_LINKAT = 330
++ SYS_SYMLINKAT = 331
++ SYS_READLINKAT = 332
++ SYS_FCHMODAT = 333
++ SYS_FACCESSAT = 334
++ SYS_PSELECT6 = 335
++ SYS_PPOLL = 336
++ SYS_UNSHARE = 337
++ SYS_SET_ROBUST_LIST = 338
++ SYS_GET_ROBUST_LIST = 339
++ SYS_SPLICE = 340
++ SYS_ARM_SYNC_FILE_RANGE = 341
++ SYS_TEE = 342
++ SYS_VMSPLICE = 343
++ SYS_MOVE_PAGES = 344
++ SYS_GETCPU = 345
++ SYS_EPOLL_PWAIT = 346
++ SYS_KEXEC_LOAD = 347
++ SYS_UTIMENSAT = 348
++ SYS_SIGNALFD = 349
++ SYS_TIMERFD_CREATE = 350
++ SYS_EVENTFD = 351
++ SYS_FALLOCATE = 352
++ SYS_TIMERFD_SETTIME = 353
++ SYS_TIMERFD_GETTIME = 354
++ SYS_SIGNALFD4 = 355
++ SYS_EVENTFD2 = 356
++ SYS_EPOLL_CREATE1 = 357
++ SYS_DUP3 = 358
++ SYS_PIPE2 = 359
++ SYS_INOTIFY_INIT1 = 360
++ SYS_PREADV = 361
++ SYS_PWRITEV = 362
++ SYS_RT_TGSIGQUEUEINFO = 363
++ SYS_PERF_EVENT_OPEN = 364
++ SYS_RECVMMSG = 365
++ SYS_ACCEPT4 = 366
++ SYS_FANOTIFY_INIT = 367
++ SYS_FANOTIFY_MARK = 368
++ SYS_PRLIMIT64 = 369
++ SYS_NAME_TO_HANDLE_AT = 370
++ SYS_OPEN_BY_HANDLE_AT = 371
++ SYS_CLOCK_ADJTIME = 372
++ SYS_SYNCFS = 373
++ SYS_SENDMMSG = 374
++ SYS_SETNS = 375
++ SYS_PROCESS_VM_READV = 376
++ SYS_PROCESS_VM_WRITEV = 377
++ SYS_KCMP = 378
++ SYS_FINIT_MODULE = 379
++ SYS_SCHED_SETATTR = 380
++ SYS_SCHED_GETATTR = 381
++ SYS_RENAMEAT2 = 382
++ SYS_SECCOMP = 383
++ SYS_GETRANDOM = 384
++ SYS_MEMFD_CREATE = 385
++ SYS_BPF = 386
++ SYS_EXECVEAT = 387
++ SYS_USERFAULTFD = 388
++ SYS_MEMBARRIER = 389
++ SYS_MLOCK2 = 390
++ SYS_COPY_FILE_RANGE = 391
++ SYS_PREADV2 = 392
++ SYS_PWRITEV2 = 393
++ SYS_PKEY_MPROTECT = 394
++ SYS_PKEY_ALLOC = 395
++ SYS_PKEY_FREE = 396
++ SYS_STATX = 397
++ SYS_RSEQ = 398
++ SYS_IO_PGETEVENTS = 399
++ SYS_MIGRATE_PAGES = 400
++ SYS_KEXEC_FILE_LOAD = 401
++ SYS_CLOCK_GETTIME64 = 403
++ SYS_CLOCK_SETTIME64 = 404
++ SYS_CLOCK_ADJTIME64 = 405
++ SYS_CLOCK_GETRES_TIME64 = 406
++ SYS_CLOCK_NANOSLEEP_TIME64 = 407
++ SYS_TIMER_GETTIME64 = 408
++ SYS_TIMER_SETTIME64 = 409
++ SYS_TIMERFD_GETTIME64 = 410
++ SYS_TIMERFD_SETTIME64 = 411
++ SYS_UTIMENSAT_TIME64 = 412
++ SYS_PSELECT6_TIME64 = 413
++ SYS_PPOLL_TIME64 = 414
++ SYS_IO_PGETEVENTS_TIME64 = 416
++ SYS_RECVMMSG_TIME64 = 417
++ SYS_MQ_TIMEDSEND_TIME64 = 418
++ SYS_MQ_TIMEDRECEIVE_TIME64 = 419
++ SYS_SEMTIMEDOP_TIME64 = 420
++ SYS_RT_SIGTIMEDWAIT_TIME64 = 421
++ SYS_FUTEX_TIME64 = 422
++ SYS_SCHED_RR_GET_INTERVAL_TIME64 = 423
++ SYS_PIDFD_SEND_SIGNAL = 424
++ SYS_IO_URING_SETUP = 425
++ SYS_IO_URING_ENTER = 426
++ SYS_IO_URING_REGISTER = 427
++ SYS_OPEN_TREE = 428
++ SYS_MOVE_MOUNT = 429
++ SYS_FSOPEN = 430
++ SYS_FSCONFIG = 431
++ SYS_FSMOUNT = 432
++ SYS_FSPICK = 433
++ SYS_PIDFD_OPEN = 434
++ SYS_CLONE3 = 435
++ SYS_OPENAT2 = 437
++ SYS_PIDFD_GETFD = 438
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
+index 64078435..e9404dd5 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
+@@ -1,4 +1,4 @@
+-// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include -fsigned-char /tmp/include/asm/unistd.h
++// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include -fsigned-char /tmp/include/asm/unistd.h
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build arm64,linux
+@@ -282,4 +282,22 @@ const (
+ SYS_PKEY_MPROTECT = 288
+ SYS_PKEY_ALLOC = 289
+ SYS_PKEY_FREE = 290
++ SYS_STATX = 291
++ SYS_IO_PGETEVENTS = 292
++ SYS_RSEQ = 293
++ SYS_KEXEC_FILE_LOAD = 294
++ SYS_PIDFD_SEND_SIGNAL = 424
++ SYS_IO_URING_SETUP = 425
++ SYS_IO_URING_ENTER = 426
++ SYS_IO_URING_REGISTER = 427
++ SYS_OPEN_TREE = 428
++ SYS_MOVE_MOUNT = 429
++ SYS_FSOPEN = 430
++ SYS_FSCONFIG = 431
++ SYS_FSMOUNT = 432
++ SYS_FSPICK = 433
++ SYS_PIDFD_OPEN = 434
++ SYS_CLONE3 = 435
++ SYS_OPENAT2 = 437
++ SYS_PIDFD_GETFD = 438
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go
+index 939567c0..68bb6d29 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go
+@@ -1,4 +1,4 @@
+-// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
++// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build mips,linux
+@@ -6,369 +6,416 @@
+ package unix
+
+ const (
+- SYS_SYSCALL = 4000
+- SYS_EXIT = 4001
+- SYS_FORK = 4002
+- SYS_READ = 4003
+- SYS_WRITE = 4004
+- SYS_OPEN = 4005
+- SYS_CLOSE = 4006
+- SYS_WAITPID = 4007
+- SYS_CREAT = 4008
+- SYS_LINK = 4009
+- SYS_UNLINK = 4010
+- SYS_EXECVE = 4011
+- SYS_CHDIR = 4012
+- SYS_TIME = 4013
+- SYS_MKNOD = 4014
+- SYS_CHMOD = 4015
+- SYS_LCHOWN = 4016
+- SYS_BREAK = 4017
+- SYS_UNUSED18 = 4018
+- SYS_LSEEK = 4019
+- SYS_GETPID = 4020
+- SYS_MOUNT = 4021
+- SYS_UMOUNT = 4022
+- SYS_SETUID = 4023
+- SYS_GETUID = 4024
+- SYS_STIME = 4025
+- SYS_PTRACE = 4026
+- SYS_ALARM = 4027
+- SYS_UNUSED28 = 4028
+- SYS_PAUSE = 4029
+- SYS_UTIME = 4030
+- SYS_STTY = 4031
+- SYS_GTTY = 4032
+- SYS_ACCESS = 4033
+- SYS_NICE = 4034
+- SYS_FTIME = 4035
+- SYS_SYNC = 4036
+- SYS_KILL = 4037
+- SYS_RENAME = 4038
+- SYS_MKDIR = 4039
+- SYS_RMDIR = 4040
+- SYS_DUP = 4041
+- SYS_PIPE = 4042
+- SYS_TIMES = 4043
+- SYS_PROF = 4044
+- SYS_BRK = 4045
+- SYS_SETGID = 4046
+- SYS_GETGID = 4047
+- SYS_SIGNAL = 4048
+- SYS_GETEUID = 4049
+- SYS_GETEGID = 4050
+- SYS_ACCT = 4051
+- SYS_UMOUNT2 = 4052
+- SYS_LOCK = 4053
+- SYS_IOCTL = 4054
+- SYS_FCNTL = 4055
+- SYS_MPX = 4056
+- SYS_SETPGID = 4057
+- SYS_ULIMIT = 4058
+- SYS_UNUSED59 = 4059
+- SYS_UMASK = 4060
+- SYS_CHROOT = 4061
+- SYS_USTAT = 4062
+- SYS_DUP2 = 4063
+- SYS_GETPPID = 4064
+- SYS_GETPGRP = 4065
+- SYS_SETSID = 4066
+- SYS_SIGACTION = 4067
+- SYS_SGETMASK = 4068
+- SYS_SSETMASK = 4069
+- SYS_SETREUID = 4070
+- SYS_SETREGID = 4071
+- SYS_SIGSUSPEND = 4072
+- SYS_SIGPENDING = 4073
+- SYS_SETHOSTNAME = 4074
+- SYS_SETRLIMIT = 4075
+- SYS_GETRLIMIT = 4076
+- SYS_GETRUSAGE = 4077
+- SYS_GETTIMEOFDAY = 4078
+- SYS_SETTIMEOFDAY = 4079
+- SYS_GETGROUPS = 4080
+- SYS_SETGROUPS = 4081
+- SYS_RESERVED82 = 4082
+- SYS_SYMLINK = 4083
+- SYS_UNUSED84 = 4084
+- SYS_READLINK = 4085
+- SYS_USELIB = 4086
+- SYS_SWAPON = 4087
+- SYS_REBOOT = 4088
+- SYS_READDIR = 4089
+- SYS_MMAP = 4090
+- SYS_MUNMAP = 4091
+- SYS_TRUNCATE = 4092
+- SYS_FTRUNCATE = 4093
+- SYS_FCHMOD = 4094
+- SYS_FCHOWN = 4095
+- SYS_GETPRIORITY = 4096
+- SYS_SETPRIORITY = 4097
+- SYS_PROFIL = 4098
+- SYS_STATFS = 4099
+- SYS_FSTATFS = 4100
+- SYS_IOPERM = 4101
+- SYS_SOCKETCALL = 4102
+- SYS_SYSLOG = 4103
+- SYS_SETITIMER = 4104
+- SYS_GETITIMER = 4105
+- SYS_STAT = 4106
+- SYS_LSTAT = 4107
+- SYS_FSTAT = 4108
+- SYS_UNUSED109 = 4109
+- SYS_IOPL = 4110
+- SYS_VHANGUP = 4111
+- SYS_IDLE = 4112
+- SYS_VM86 = 4113
+- SYS_WAIT4 = 4114
+- SYS_SWAPOFF = 4115
+- SYS_SYSINFO = 4116
+- SYS_IPC = 4117
+- SYS_FSYNC = 4118
+- SYS_SIGRETURN = 4119
+- SYS_CLONE = 4120
+- SYS_SETDOMAINNAME = 4121
+- SYS_UNAME = 4122
+- SYS_MODIFY_LDT = 4123
+- SYS_ADJTIMEX = 4124
+- SYS_MPROTECT = 4125
+- SYS_SIGPROCMASK = 4126
+- SYS_CREATE_MODULE = 4127
+- SYS_INIT_MODULE = 4128
+- SYS_DELETE_MODULE = 4129
+- SYS_GET_KERNEL_SYMS = 4130
+- SYS_QUOTACTL = 4131
+- SYS_GETPGID = 4132
+- SYS_FCHDIR = 4133
+- SYS_BDFLUSH = 4134
+- SYS_SYSFS = 4135
+- SYS_PERSONALITY = 4136
+- SYS_AFS_SYSCALL = 4137
+- SYS_SETFSUID = 4138
+- SYS_SETFSGID = 4139
+- SYS__LLSEEK = 4140
+- SYS_GETDENTS = 4141
+- SYS__NEWSELECT = 4142
+- SYS_FLOCK = 4143
+- SYS_MSYNC = 4144
+- SYS_READV = 4145
+- SYS_WRITEV = 4146
+- SYS_CACHEFLUSH = 4147
+- SYS_CACHECTL = 4148
+- SYS_SYSMIPS = 4149
+- SYS_UNUSED150 = 4150
+- SYS_GETSID = 4151
+- SYS_FDATASYNC = 4152
+- SYS__SYSCTL = 4153
+- SYS_MLOCK = 4154
+- SYS_MUNLOCK = 4155
+- SYS_MLOCKALL = 4156
+- SYS_MUNLOCKALL = 4157
+- SYS_SCHED_SETPARAM = 4158
+- SYS_SCHED_GETPARAM = 4159
+- SYS_SCHED_SETSCHEDULER = 4160
+- SYS_SCHED_GETSCHEDULER = 4161
+- SYS_SCHED_YIELD = 4162
+- SYS_SCHED_GET_PRIORITY_MAX = 4163
+- SYS_SCHED_GET_PRIORITY_MIN = 4164
+- SYS_SCHED_RR_GET_INTERVAL = 4165
+- SYS_NANOSLEEP = 4166
+- SYS_MREMAP = 4167
+- SYS_ACCEPT = 4168
+- SYS_BIND = 4169
+- SYS_CONNECT = 4170
+- SYS_GETPEERNAME = 4171
+- SYS_GETSOCKNAME = 4172
+- SYS_GETSOCKOPT = 4173
+- SYS_LISTEN = 4174
+- SYS_RECV = 4175
+- SYS_RECVFROM = 4176
+- SYS_RECVMSG = 4177
+- SYS_SEND = 4178
+- SYS_SENDMSG = 4179
+- SYS_SENDTO = 4180
+- SYS_SETSOCKOPT = 4181
+- SYS_SHUTDOWN = 4182
+- SYS_SOCKET = 4183
+- SYS_SOCKETPAIR = 4184
+- SYS_SETRESUID = 4185
+- SYS_GETRESUID = 4186
+- SYS_QUERY_MODULE = 4187
+- SYS_POLL = 4188
+- SYS_NFSSERVCTL = 4189
+- SYS_SETRESGID = 4190
+- SYS_GETRESGID = 4191
+- SYS_PRCTL = 4192
+- SYS_RT_SIGRETURN = 4193
+- SYS_RT_SIGACTION = 4194
+- SYS_RT_SIGPROCMASK = 4195
+- SYS_RT_SIGPENDING = 4196
+- SYS_RT_SIGTIMEDWAIT = 4197
+- SYS_RT_SIGQUEUEINFO = 4198
+- SYS_RT_SIGSUSPEND = 4199
+- SYS_PREAD64 = 4200
+- SYS_PWRITE64 = 4201
+- SYS_CHOWN = 4202
+- SYS_GETCWD = 4203
+- SYS_CAPGET = 4204
+- SYS_CAPSET = 4205
+- SYS_SIGALTSTACK = 4206
+- SYS_SENDFILE = 4207
+- SYS_GETPMSG = 4208
+- SYS_PUTPMSG = 4209
+- SYS_MMAP2 = 4210
+- SYS_TRUNCATE64 = 4211
+- SYS_FTRUNCATE64 = 4212
+- SYS_STAT64 = 4213
+- SYS_LSTAT64 = 4214
+- SYS_FSTAT64 = 4215
+- SYS_PIVOT_ROOT = 4216
+- SYS_MINCORE = 4217
+- SYS_MADVISE = 4218
+- SYS_GETDENTS64 = 4219
+- SYS_FCNTL64 = 4220
+- SYS_RESERVED221 = 4221
+- SYS_GETTID = 4222
+- SYS_READAHEAD = 4223
+- SYS_SETXATTR = 4224
+- SYS_LSETXATTR = 4225
+- SYS_FSETXATTR = 4226
+- SYS_GETXATTR = 4227
+- SYS_LGETXATTR = 4228
+- SYS_FGETXATTR = 4229
+- SYS_LISTXATTR = 4230
+- SYS_LLISTXATTR = 4231
+- SYS_FLISTXATTR = 4232
+- SYS_REMOVEXATTR = 4233
+- SYS_LREMOVEXATTR = 4234
+- SYS_FREMOVEXATTR = 4235
+- SYS_TKILL = 4236
+- SYS_SENDFILE64 = 4237
+- SYS_FUTEX = 4238
+- SYS_SCHED_SETAFFINITY = 4239
+- SYS_SCHED_GETAFFINITY = 4240
+- SYS_IO_SETUP = 4241
+- SYS_IO_DESTROY = 4242
+- SYS_IO_GETEVENTS = 4243
+- SYS_IO_SUBMIT = 4244
+- SYS_IO_CANCEL = 4245
+- SYS_EXIT_GROUP = 4246
+- SYS_LOOKUP_DCOOKIE = 4247
+- SYS_EPOLL_CREATE = 4248
+- SYS_EPOLL_CTL = 4249
+- SYS_EPOLL_WAIT = 4250
+- SYS_REMAP_FILE_PAGES = 4251
+- SYS_SET_TID_ADDRESS = 4252
+- SYS_RESTART_SYSCALL = 4253
+- SYS_FADVISE64 = 4254
+- SYS_STATFS64 = 4255
+- SYS_FSTATFS64 = 4256
+- SYS_TIMER_CREATE = 4257
+- SYS_TIMER_SETTIME = 4258
+- SYS_TIMER_GETTIME = 4259
+- SYS_TIMER_GETOVERRUN = 4260
+- SYS_TIMER_DELETE = 4261
+- SYS_CLOCK_SETTIME = 4262
+- SYS_CLOCK_GETTIME = 4263
+- SYS_CLOCK_GETRES = 4264
+- SYS_CLOCK_NANOSLEEP = 4265
+- SYS_TGKILL = 4266
+- SYS_UTIMES = 4267
+- SYS_MBIND = 4268
+- SYS_GET_MEMPOLICY = 4269
+- SYS_SET_MEMPOLICY = 4270
+- SYS_MQ_OPEN = 4271
+- SYS_MQ_UNLINK = 4272
+- SYS_MQ_TIMEDSEND = 4273
+- SYS_MQ_TIMEDRECEIVE = 4274
+- SYS_MQ_NOTIFY = 4275
+- SYS_MQ_GETSETATTR = 4276
+- SYS_VSERVER = 4277
+- SYS_WAITID = 4278
+- SYS_ADD_KEY = 4280
+- SYS_REQUEST_KEY = 4281
+- SYS_KEYCTL = 4282
+- SYS_SET_THREAD_AREA = 4283
+- SYS_INOTIFY_INIT = 4284
+- SYS_INOTIFY_ADD_WATCH = 4285
+- SYS_INOTIFY_RM_WATCH = 4286
+- SYS_MIGRATE_PAGES = 4287
+- SYS_OPENAT = 4288
+- SYS_MKDIRAT = 4289
+- SYS_MKNODAT = 4290
+- SYS_FCHOWNAT = 4291
+- SYS_FUTIMESAT = 4292
+- SYS_FSTATAT64 = 4293
+- SYS_UNLINKAT = 4294
+- SYS_RENAMEAT = 4295
+- SYS_LINKAT = 4296
+- SYS_SYMLINKAT = 4297
+- SYS_READLINKAT = 4298
+- SYS_FCHMODAT = 4299
+- SYS_FACCESSAT = 4300
+- SYS_PSELECT6 = 4301
+- SYS_PPOLL = 4302
+- SYS_UNSHARE = 4303
+- SYS_SPLICE = 4304
+- SYS_SYNC_FILE_RANGE = 4305
+- SYS_TEE = 4306
+- SYS_VMSPLICE = 4307
+- SYS_MOVE_PAGES = 4308
+- SYS_SET_ROBUST_LIST = 4309
+- SYS_GET_ROBUST_LIST = 4310
+- SYS_KEXEC_LOAD = 4311
+- SYS_GETCPU = 4312
+- SYS_EPOLL_PWAIT = 4313
+- SYS_IOPRIO_SET = 4314
+- SYS_IOPRIO_GET = 4315
+- SYS_UTIMENSAT = 4316
+- SYS_SIGNALFD = 4317
+- SYS_TIMERFD = 4318
+- SYS_EVENTFD = 4319
+- SYS_FALLOCATE = 4320
+- SYS_TIMERFD_CREATE = 4321
+- SYS_TIMERFD_GETTIME = 4322
+- SYS_TIMERFD_SETTIME = 4323
+- SYS_SIGNALFD4 = 4324
+- SYS_EVENTFD2 = 4325
+- SYS_EPOLL_CREATE1 = 4326
+- SYS_DUP3 = 4327
+- SYS_PIPE2 = 4328
+- SYS_INOTIFY_INIT1 = 4329
+- SYS_PREADV = 4330
+- SYS_PWRITEV = 4331
+- SYS_RT_TGSIGQUEUEINFO = 4332
+- SYS_PERF_EVENT_OPEN = 4333
+- SYS_ACCEPT4 = 4334
+- SYS_RECVMMSG = 4335
+- SYS_FANOTIFY_INIT = 4336
+- SYS_FANOTIFY_MARK = 4337
+- SYS_PRLIMIT64 = 4338
+- SYS_NAME_TO_HANDLE_AT = 4339
+- SYS_OPEN_BY_HANDLE_AT = 4340
+- SYS_CLOCK_ADJTIME = 4341
+- SYS_SYNCFS = 4342
+- SYS_SENDMMSG = 4343
+- SYS_SETNS = 4344
+- SYS_PROCESS_VM_READV = 4345
+- SYS_PROCESS_VM_WRITEV = 4346
+- SYS_KCMP = 4347
+- SYS_FINIT_MODULE = 4348
+- SYS_SCHED_SETATTR = 4349
+- SYS_SCHED_GETATTR = 4350
+- SYS_RENAMEAT2 = 4351
+- SYS_SECCOMP = 4352
+- SYS_GETRANDOM = 4353
+- SYS_MEMFD_CREATE = 4354
+- SYS_BPF = 4355
+- SYS_EXECVEAT = 4356
+- SYS_USERFAULTFD = 4357
+- SYS_MEMBARRIER = 4358
+- SYS_MLOCK2 = 4359
+- SYS_COPY_FILE_RANGE = 4360
+- SYS_PREADV2 = 4361
+- SYS_PWRITEV2 = 4362
+- SYS_PKEY_MPROTECT = 4363
+- SYS_PKEY_ALLOC = 4364
+- SYS_PKEY_FREE = 4365
++ SYS_SYSCALL = 4000
++ SYS_EXIT = 4001
++ SYS_FORK = 4002
++ SYS_READ = 4003
++ SYS_WRITE = 4004
++ SYS_OPEN = 4005
++ SYS_CLOSE = 4006
++ SYS_WAITPID = 4007
++ SYS_CREAT = 4008
++ SYS_LINK = 4009
++ SYS_UNLINK = 4010
++ SYS_EXECVE = 4011
++ SYS_CHDIR = 4012
++ SYS_TIME = 4013
++ SYS_MKNOD = 4014
++ SYS_CHMOD = 4015
++ SYS_LCHOWN = 4016
++ SYS_BREAK = 4017
++ SYS_UNUSED18 = 4018
++ SYS_LSEEK = 4019
++ SYS_GETPID = 4020
++ SYS_MOUNT = 4021
++ SYS_UMOUNT = 4022
++ SYS_SETUID = 4023
++ SYS_GETUID = 4024
++ SYS_STIME = 4025
++ SYS_PTRACE = 4026
++ SYS_ALARM = 4027
++ SYS_UNUSED28 = 4028
++ SYS_PAUSE = 4029
++ SYS_UTIME = 4030
++ SYS_STTY = 4031
++ SYS_GTTY = 4032
++ SYS_ACCESS = 4033
++ SYS_NICE = 4034
++ SYS_FTIME = 4035
++ SYS_SYNC = 4036
++ SYS_KILL = 4037
++ SYS_RENAME = 4038
++ SYS_MKDIR = 4039
++ SYS_RMDIR = 4040
++ SYS_DUP = 4041
++ SYS_PIPE = 4042
++ SYS_TIMES = 4043
++ SYS_PROF = 4044
++ SYS_BRK = 4045
++ SYS_SETGID = 4046
++ SYS_GETGID = 4047
++ SYS_SIGNAL = 4048
++ SYS_GETEUID = 4049
++ SYS_GETEGID = 4050
++ SYS_ACCT = 4051
++ SYS_UMOUNT2 = 4052
++ SYS_LOCK = 4053
++ SYS_IOCTL = 4054
++ SYS_FCNTL = 4055
++ SYS_MPX = 4056
++ SYS_SETPGID = 4057
++ SYS_ULIMIT = 4058
++ SYS_UNUSED59 = 4059
++ SYS_UMASK = 4060
++ SYS_CHROOT = 4061
++ SYS_USTAT = 4062
++ SYS_DUP2 = 4063
++ SYS_GETPPID = 4064
++ SYS_GETPGRP = 4065
++ SYS_SETSID = 4066
++ SYS_SIGACTION = 4067
++ SYS_SGETMASK = 4068
++ SYS_SSETMASK = 4069
++ SYS_SETREUID = 4070
++ SYS_SETREGID = 4071
++ SYS_SIGSUSPEND = 4072
++ SYS_SIGPENDING = 4073
++ SYS_SETHOSTNAME = 4074
++ SYS_SETRLIMIT = 4075
++ SYS_GETRLIMIT = 4076
++ SYS_GETRUSAGE = 4077
++ SYS_GETTIMEOFDAY = 4078
++ SYS_SETTIMEOFDAY = 4079
++ SYS_GETGROUPS = 4080
++ SYS_SETGROUPS = 4081
++ SYS_RESERVED82 = 4082
++ SYS_SYMLINK = 4083
++ SYS_UNUSED84 = 4084
++ SYS_READLINK = 4085
++ SYS_USELIB = 4086
++ SYS_SWAPON = 4087
++ SYS_REBOOT = 4088
++ SYS_READDIR = 4089
++ SYS_MMAP = 4090
++ SYS_MUNMAP = 4091
++ SYS_TRUNCATE = 4092
++ SYS_FTRUNCATE = 4093
++ SYS_FCHMOD = 4094
++ SYS_FCHOWN = 4095
++ SYS_GETPRIORITY = 4096
++ SYS_SETPRIORITY = 4097
++ SYS_PROFIL = 4098
++ SYS_STATFS = 4099
++ SYS_FSTATFS = 4100
++ SYS_IOPERM = 4101
++ SYS_SOCKETCALL = 4102
++ SYS_SYSLOG = 4103
++ SYS_SETITIMER = 4104
++ SYS_GETITIMER = 4105
++ SYS_STAT = 4106
++ SYS_LSTAT = 4107
++ SYS_FSTAT = 4108
++ SYS_UNUSED109 = 4109
++ SYS_IOPL = 4110
++ SYS_VHANGUP = 4111
++ SYS_IDLE = 4112
++ SYS_VM86 = 4113
++ SYS_WAIT4 = 4114
++ SYS_SWAPOFF = 4115
++ SYS_SYSINFO = 4116
++ SYS_IPC = 4117
++ SYS_FSYNC = 4118
++ SYS_SIGRETURN = 4119
++ SYS_CLONE = 4120
++ SYS_SETDOMAINNAME = 4121
++ SYS_UNAME = 4122
++ SYS_MODIFY_LDT = 4123
++ SYS_ADJTIMEX = 4124
++ SYS_MPROTECT = 4125
++ SYS_SIGPROCMASK = 4126
++ SYS_CREATE_MODULE = 4127
++ SYS_INIT_MODULE = 4128
++ SYS_DELETE_MODULE = 4129
++ SYS_GET_KERNEL_SYMS = 4130
++ SYS_QUOTACTL = 4131
++ SYS_GETPGID = 4132
++ SYS_FCHDIR = 4133
++ SYS_BDFLUSH = 4134
++ SYS_SYSFS = 4135
++ SYS_PERSONALITY = 4136
++ SYS_AFS_SYSCALL = 4137
++ SYS_SETFSUID = 4138
++ SYS_SETFSGID = 4139
++ SYS__LLSEEK = 4140
++ SYS_GETDENTS = 4141
++ SYS__NEWSELECT = 4142
++ SYS_FLOCK = 4143
++ SYS_MSYNC = 4144
++ SYS_READV = 4145
++ SYS_WRITEV = 4146
++ SYS_CACHEFLUSH = 4147
++ SYS_CACHECTL = 4148
++ SYS_SYSMIPS = 4149
++ SYS_UNUSED150 = 4150
++ SYS_GETSID = 4151
++ SYS_FDATASYNC = 4152
++ SYS__SYSCTL = 4153
++ SYS_MLOCK = 4154
++ SYS_MUNLOCK = 4155
++ SYS_MLOCKALL = 4156
++ SYS_MUNLOCKALL = 4157
++ SYS_SCHED_SETPARAM = 4158
++ SYS_SCHED_GETPARAM = 4159
++ SYS_SCHED_SETSCHEDULER = 4160
++ SYS_SCHED_GETSCHEDULER = 4161
++ SYS_SCHED_YIELD = 4162
++ SYS_SCHED_GET_PRIORITY_MAX = 4163
++ SYS_SCHED_GET_PRIORITY_MIN = 4164
++ SYS_SCHED_RR_GET_INTERVAL = 4165
++ SYS_NANOSLEEP = 4166
++ SYS_MREMAP = 4167
++ SYS_ACCEPT = 4168
++ SYS_BIND = 4169
++ SYS_CONNECT = 4170
++ SYS_GETPEERNAME = 4171
++ SYS_GETSOCKNAME = 4172
++ SYS_GETSOCKOPT = 4173
++ SYS_LISTEN = 4174
++ SYS_RECV = 4175
++ SYS_RECVFROM = 4176
++ SYS_RECVMSG = 4177
++ SYS_SEND = 4178
++ SYS_SENDMSG = 4179
++ SYS_SENDTO = 4180
++ SYS_SETSOCKOPT = 4181
++ SYS_SHUTDOWN = 4182
++ SYS_SOCKET = 4183
++ SYS_SOCKETPAIR = 4184
++ SYS_SETRESUID = 4185
++ SYS_GETRESUID = 4186
++ SYS_QUERY_MODULE = 4187
++ SYS_POLL = 4188
++ SYS_NFSSERVCTL = 4189
++ SYS_SETRESGID = 4190
++ SYS_GETRESGID = 4191
++ SYS_PRCTL = 4192
++ SYS_RT_SIGRETURN = 4193
++ SYS_RT_SIGACTION = 4194
++ SYS_RT_SIGPROCMASK = 4195
++ SYS_RT_SIGPENDING = 4196
++ SYS_RT_SIGTIMEDWAIT = 4197
++ SYS_RT_SIGQUEUEINFO = 4198
++ SYS_RT_SIGSUSPEND = 4199
++ SYS_PREAD64 = 4200
++ SYS_PWRITE64 = 4201
++ SYS_CHOWN = 4202
++ SYS_GETCWD = 4203
++ SYS_CAPGET = 4204
++ SYS_CAPSET = 4205
++ SYS_SIGALTSTACK = 4206
++ SYS_SENDFILE = 4207
++ SYS_GETPMSG = 4208
++ SYS_PUTPMSG = 4209
++ SYS_MMAP2 = 4210
++ SYS_TRUNCATE64 = 4211
++ SYS_FTRUNCATE64 = 4212
++ SYS_STAT64 = 4213
++ SYS_LSTAT64 = 4214
++ SYS_FSTAT64 = 4215
++ SYS_PIVOT_ROOT = 4216
++ SYS_MINCORE = 4217
++ SYS_MADVISE = 4218
++ SYS_GETDENTS64 = 4219
++ SYS_FCNTL64 = 4220
++ SYS_RESERVED221 = 4221
++ SYS_GETTID = 4222
++ SYS_READAHEAD = 4223
++ SYS_SETXATTR = 4224
++ SYS_LSETXATTR = 4225
++ SYS_FSETXATTR = 4226
++ SYS_GETXATTR = 4227
++ SYS_LGETXATTR = 4228
++ SYS_FGETXATTR = 4229
++ SYS_LISTXATTR = 4230
++ SYS_LLISTXATTR = 4231
++ SYS_FLISTXATTR = 4232
++ SYS_REMOVEXATTR = 4233
++ SYS_LREMOVEXATTR = 4234
++ SYS_FREMOVEXATTR = 4235
++ SYS_TKILL = 4236
++ SYS_SENDFILE64 = 4237
++ SYS_FUTEX = 4238
++ SYS_SCHED_SETAFFINITY = 4239
++ SYS_SCHED_GETAFFINITY = 4240
++ SYS_IO_SETUP = 4241
++ SYS_IO_DESTROY = 4242
++ SYS_IO_GETEVENTS = 4243
++ SYS_IO_SUBMIT = 4244
++ SYS_IO_CANCEL = 4245
++ SYS_EXIT_GROUP = 4246
++ SYS_LOOKUP_DCOOKIE = 4247
++ SYS_EPOLL_CREATE = 4248
++ SYS_EPOLL_CTL = 4249
++ SYS_EPOLL_WAIT = 4250
++ SYS_REMAP_FILE_PAGES = 4251
++ SYS_SET_TID_ADDRESS = 4252
++ SYS_RESTART_SYSCALL = 4253
++ SYS_FADVISE64 = 4254
++ SYS_STATFS64 = 4255
++ SYS_FSTATFS64 = 4256
++ SYS_TIMER_CREATE = 4257
++ SYS_TIMER_SETTIME = 4258
++ SYS_TIMER_GETTIME = 4259
++ SYS_TIMER_GETOVERRUN = 4260
++ SYS_TIMER_DELETE = 4261
++ SYS_CLOCK_SETTIME = 4262
++ SYS_CLOCK_GETTIME = 4263
++ SYS_CLOCK_GETRES = 4264
++ SYS_CLOCK_NANOSLEEP = 4265
++ SYS_TGKILL = 4266
++ SYS_UTIMES = 4267
++ SYS_MBIND = 4268
++ SYS_GET_MEMPOLICY = 4269
++ SYS_SET_MEMPOLICY = 4270
++ SYS_MQ_OPEN = 4271
++ SYS_MQ_UNLINK = 4272
++ SYS_MQ_TIMEDSEND = 4273
++ SYS_MQ_TIMEDRECEIVE = 4274
++ SYS_MQ_NOTIFY = 4275
++ SYS_MQ_GETSETATTR = 4276
++ SYS_VSERVER = 4277
++ SYS_WAITID = 4278
++ SYS_ADD_KEY = 4280
++ SYS_REQUEST_KEY = 4281
++ SYS_KEYCTL = 4282
++ SYS_SET_THREAD_AREA = 4283
++ SYS_INOTIFY_INIT = 4284
++ SYS_INOTIFY_ADD_WATCH = 4285
++ SYS_INOTIFY_RM_WATCH = 4286
++ SYS_MIGRATE_PAGES = 4287
++ SYS_OPENAT = 4288
++ SYS_MKDIRAT = 4289
++ SYS_MKNODAT = 4290
++ SYS_FCHOWNAT = 4291
++ SYS_FUTIMESAT = 4292
++ SYS_FSTATAT64 = 4293
++ SYS_UNLINKAT = 4294
++ SYS_RENAMEAT = 4295
++ SYS_LINKAT = 4296
++ SYS_SYMLINKAT = 4297
++ SYS_READLINKAT = 4298
++ SYS_FCHMODAT = 4299
++ SYS_FACCESSAT = 4300
++ SYS_PSELECT6 = 4301
++ SYS_PPOLL = 4302
++ SYS_UNSHARE = 4303
++ SYS_SPLICE = 4304
++ SYS_SYNC_FILE_RANGE = 4305
++ SYS_TEE = 4306
++ SYS_VMSPLICE = 4307
++ SYS_MOVE_PAGES = 4308
++ SYS_SET_ROBUST_LIST = 4309
++ SYS_GET_ROBUST_LIST = 4310
++ SYS_KEXEC_LOAD = 4311
++ SYS_GETCPU = 4312
++ SYS_EPOLL_PWAIT = 4313
++ SYS_IOPRIO_SET = 4314
++ SYS_IOPRIO_GET = 4315
++ SYS_UTIMENSAT = 4316
++ SYS_SIGNALFD = 4317
++ SYS_TIMERFD = 4318
++ SYS_EVENTFD = 4319
++ SYS_FALLOCATE = 4320
++ SYS_TIMERFD_CREATE = 4321
++ SYS_TIMERFD_GETTIME = 4322
++ SYS_TIMERFD_SETTIME = 4323
++ SYS_SIGNALFD4 = 4324
++ SYS_EVENTFD2 = 4325
++ SYS_EPOLL_CREATE1 = 4326
++ SYS_DUP3 = 4327
++ SYS_PIPE2 = 4328
++ SYS_INOTIFY_INIT1 = 4329
++ SYS_PREADV = 4330
++ SYS_PWRITEV = 4331
++ SYS_RT_TGSIGQUEUEINFO = 4332
++ SYS_PERF_EVENT_OPEN = 4333
++ SYS_ACCEPT4 = 4334
++ SYS_RECVMMSG = 4335
++ SYS_FANOTIFY_INIT = 4336
++ SYS_FANOTIFY_MARK = 4337
++ SYS_PRLIMIT64 = 4338
++ SYS_NAME_TO_HANDLE_AT = 4339
++ SYS_OPEN_BY_HANDLE_AT = 4340
++ SYS_CLOCK_ADJTIME = 4341
++ SYS_SYNCFS = 4342
++ SYS_SENDMMSG = 4343
++ SYS_SETNS = 4344
++ SYS_PROCESS_VM_READV = 4345
++ SYS_PROCESS_VM_WRITEV = 4346
++ SYS_KCMP = 4347
++ SYS_FINIT_MODULE = 4348
++ SYS_SCHED_SETATTR = 4349
++ SYS_SCHED_GETATTR = 4350
++ SYS_RENAMEAT2 = 4351
++ SYS_SECCOMP = 4352
++ SYS_GETRANDOM = 4353
++ SYS_MEMFD_CREATE = 4354
++ SYS_BPF = 4355
++ SYS_EXECVEAT = 4356
++ SYS_USERFAULTFD = 4357
++ SYS_MEMBARRIER = 4358
++ SYS_MLOCK2 = 4359
++ SYS_COPY_FILE_RANGE = 4360
++ SYS_PREADV2 = 4361
++ SYS_PWRITEV2 = 4362
++ SYS_PKEY_MPROTECT = 4363
++ SYS_PKEY_ALLOC = 4364
++ SYS_PKEY_FREE = 4365
++ SYS_STATX = 4366
++ SYS_RSEQ = 4367
++ SYS_IO_PGETEVENTS = 4368
++ SYS_SEMGET = 4393
++ SYS_SEMCTL = 4394
++ SYS_SHMGET = 4395
++ SYS_SHMCTL = 4396
++ SYS_SHMAT = 4397
++ SYS_SHMDT = 4398
++ SYS_MSGGET = 4399
++ SYS_MSGSND = 4400
++ SYS_MSGRCV = 4401
++ SYS_MSGCTL = 4402
++ SYS_CLOCK_GETTIME64 = 4403
++ SYS_CLOCK_SETTIME64 = 4404
++ SYS_CLOCK_ADJTIME64 = 4405
++ SYS_CLOCK_GETRES_TIME64 = 4406
++ SYS_CLOCK_NANOSLEEP_TIME64 = 4407
++ SYS_TIMER_GETTIME64 = 4408
++ SYS_TIMER_SETTIME64 = 4409
++ SYS_TIMERFD_GETTIME64 = 4410
++ SYS_TIMERFD_SETTIME64 = 4411
++ SYS_UTIMENSAT_TIME64 = 4412
++ SYS_PSELECT6_TIME64 = 4413
++ SYS_PPOLL_TIME64 = 4414
++ SYS_IO_PGETEVENTS_TIME64 = 4416
++ SYS_RECVMMSG_TIME64 = 4417
++ SYS_MQ_TIMEDSEND_TIME64 = 4418
++ SYS_MQ_TIMEDRECEIVE_TIME64 = 4419
++ SYS_SEMTIMEDOP_TIME64 = 4420
++ SYS_RT_SIGTIMEDWAIT_TIME64 = 4421
++ SYS_FUTEX_TIME64 = 4422
++ SYS_SCHED_RR_GET_INTERVAL_TIME64 = 4423
++ SYS_PIDFD_SEND_SIGNAL = 4424
++ SYS_IO_URING_SETUP = 4425
++ SYS_IO_URING_ENTER = 4426
++ SYS_IO_URING_REGISTER = 4427
++ SYS_OPEN_TREE = 4428
++ SYS_MOVE_MOUNT = 4429
++ SYS_FSOPEN = 4430
++ SYS_FSCONFIG = 4431
++ SYS_FSMOUNT = 4432
++ SYS_FSPICK = 4433
++ SYS_PIDFD_OPEN = 4434
++ SYS_CLONE3 = 4435
++ SYS_OPENAT2 = 4437
++ SYS_PIDFD_GETFD = 4438
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go
+index 09db9596..4e525118 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go
+@@ -1,4 +1,4 @@
+-// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
++// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build mips64,linux
+@@ -331,4 +331,21 @@ const (
+ SYS_PKEY_MPROTECT = 5323
+ SYS_PKEY_ALLOC = 5324
+ SYS_PKEY_FREE = 5325
++ SYS_STATX = 5326
++ SYS_RSEQ = 5327
++ SYS_IO_PGETEVENTS = 5328
++ SYS_PIDFD_SEND_SIGNAL = 5424
++ SYS_IO_URING_SETUP = 5425
++ SYS_IO_URING_ENTER = 5426
++ SYS_IO_URING_REGISTER = 5427
++ SYS_OPEN_TREE = 5428
++ SYS_MOVE_MOUNT = 5429
++ SYS_FSOPEN = 5430
++ SYS_FSCONFIG = 5431
++ SYS_FSMOUNT = 5432
++ SYS_FSPICK = 5433
++ SYS_PIDFD_OPEN = 5434
++ SYS_CLONE3 = 5435
++ SYS_OPENAT2 = 5437
++ SYS_PIDFD_GETFD = 5438
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go
+index d1b872a0..4d9aa300 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go
+@@ -1,4 +1,4 @@
+-// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
++// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build mips64le,linux
+@@ -331,4 +331,21 @@ const (
+ SYS_PKEY_MPROTECT = 5323
+ SYS_PKEY_ALLOC = 5324
+ SYS_PKEY_FREE = 5325
++ SYS_STATX = 5326
++ SYS_RSEQ = 5327
++ SYS_IO_PGETEVENTS = 5328
++ SYS_PIDFD_SEND_SIGNAL = 5424
++ SYS_IO_URING_SETUP = 5425
++ SYS_IO_URING_ENTER = 5426
++ SYS_IO_URING_REGISTER = 5427
++ SYS_OPEN_TREE = 5428
++ SYS_MOVE_MOUNT = 5429
++ SYS_FSOPEN = 5430
++ SYS_FSCONFIG = 5431
++ SYS_FSMOUNT = 5432
++ SYS_FSPICK = 5433
++ SYS_PIDFD_OPEN = 5434
++ SYS_CLONE3 = 5435
++ SYS_OPENAT2 = 5437
++ SYS_PIDFD_GETFD = 5438
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go
+index 82ba20f2..64af0707 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go
+@@ -1,4 +1,4 @@
+-// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
++// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build mipsle,linux
+@@ -6,369 +6,416 @@
+ package unix
+
+ const (
+- SYS_SYSCALL = 4000
+- SYS_EXIT = 4001
+- SYS_FORK = 4002
+- SYS_READ = 4003
+- SYS_WRITE = 4004
+- SYS_OPEN = 4005
+- SYS_CLOSE = 4006
+- SYS_WAITPID = 4007
+- SYS_CREAT = 4008
+- SYS_LINK = 4009
+- SYS_UNLINK = 4010
+- SYS_EXECVE = 4011
+- SYS_CHDIR = 4012
+- SYS_TIME = 4013
+- SYS_MKNOD = 4014
+- SYS_CHMOD = 4015
+- SYS_LCHOWN = 4016
+- SYS_BREAK = 4017
+- SYS_UNUSED18 = 4018
+- SYS_LSEEK = 4019
+- SYS_GETPID = 4020
+- SYS_MOUNT = 4021
+- SYS_UMOUNT = 4022
+- SYS_SETUID = 4023
+- SYS_GETUID = 4024
+- SYS_STIME = 4025
+- SYS_PTRACE = 4026
+- SYS_ALARM = 4027
+- SYS_UNUSED28 = 4028
+- SYS_PAUSE = 4029
+- SYS_UTIME = 4030
+- SYS_STTY = 4031
+- SYS_GTTY = 4032
+- SYS_ACCESS = 4033
+- SYS_NICE = 4034
+- SYS_FTIME = 4035
+- SYS_SYNC = 4036
+- SYS_KILL = 4037
+- SYS_RENAME = 4038
+- SYS_MKDIR = 4039
+- SYS_RMDIR = 4040
+- SYS_DUP = 4041
+- SYS_PIPE = 4042
+- SYS_TIMES = 4043
+- SYS_PROF = 4044
+- SYS_BRK = 4045
+- SYS_SETGID = 4046
+- SYS_GETGID = 4047
+- SYS_SIGNAL = 4048
+- SYS_GETEUID = 4049
+- SYS_GETEGID = 4050
+- SYS_ACCT = 4051
+- SYS_UMOUNT2 = 4052
+- SYS_LOCK = 4053
+- SYS_IOCTL = 4054
+- SYS_FCNTL = 4055
+- SYS_MPX = 4056
+- SYS_SETPGID = 4057
+- SYS_ULIMIT = 4058
+- SYS_UNUSED59 = 4059
+- SYS_UMASK = 4060
+- SYS_CHROOT = 4061
+- SYS_USTAT = 4062
+- SYS_DUP2 = 4063
+- SYS_GETPPID = 4064
+- SYS_GETPGRP = 4065
+- SYS_SETSID = 4066
+- SYS_SIGACTION = 4067
+- SYS_SGETMASK = 4068
+- SYS_SSETMASK = 4069
+- SYS_SETREUID = 4070
+- SYS_SETREGID = 4071
+- SYS_SIGSUSPEND = 4072
+- SYS_SIGPENDING = 4073
+- SYS_SETHOSTNAME = 4074
+- SYS_SETRLIMIT = 4075
+- SYS_GETRLIMIT = 4076
+- SYS_GETRUSAGE = 4077
+- SYS_GETTIMEOFDAY = 4078
+- SYS_SETTIMEOFDAY = 4079
+- SYS_GETGROUPS = 4080
+- SYS_SETGROUPS = 4081
+- SYS_RESERVED82 = 4082
+- SYS_SYMLINK = 4083
+- SYS_UNUSED84 = 4084
+- SYS_READLINK = 4085
+- SYS_USELIB = 4086
+- SYS_SWAPON = 4087
+- SYS_REBOOT = 4088
+- SYS_READDIR = 4089
+- SYS_MMAP = 4090
+- SYS_MUNMAP = 4091
+- SYS_TRUNCATE = 4092
+- SYS_FTRUNCATE = 4093
+- SYS_FCHMOD = 4094
+- SYS_FCHOWN = 4095
+- SYS_GETPRIORITY = 4096
+- SYS_SETPRIORITY = 4097
+- SYS_PROFIL = 4098
+- SYS_STATFS = 4099
+- SYS_FSTATFS = 4100
+- SYS_IOPERM = 4101
+- SYS_SOCKETCALL = 4102
+- SYS_SYSLOG = 4103
+- SYS_SETITIMER = 4104
+- SYS_GETITIMER = 4105
+- SYS_STAT = 4106
+- SYS_LSTAT = 4107
+- SYS_FSTAT = 4108
+- SYS_UNUSED109 = 4109
+- SYS_IOPL = 4110
+- SYS_VHANGUP = 4111
+- SYS_IDLE = 4112
+- SYS_VM86 = 4113
+- SYS_WAIT4 = 4114
+- SYS_SWAPOFF = 4115
+- SYS_SYSINFO = 4116
+- SYS_IPC = 4117
+- SYS_FSYNC = 4118
+- SYS_SIGRETURN = 4119
+- SYS_CLONE = 4120
+- SYS_SETDOMAINNAME = 4121
+- SYS_UNAME = 4122
+- SYS_MODIFY_LDT = 4123
+- SYS_ADJTIMEX = 4124
+- SYS_MPROTECT = 4125
+- SYS_SIGPROCMASK = 4126
+- SYS_CREATE_MODULE = 4127
+- SYS_INIT_MODULE = 4128
+- SYS_DELETE_MODULE = 4129
+- SYS_GET_KERNEL_SYMS = 4130
+- SYS_QUOTACTL = 4131
+- SYS_GETPGID = 4132
+- SYS_FCHDIR = 4133
+- SYS_BDFLUSH = 4134
+- SYS_SYSFS = 4135
+- SYS_PERSONALITY = 4136
+- SYS_AFS_SYSCALL = 4137
+- SYS_SETFSUID = 4138
+- SYS_SETFSGID = 4139
+- SYS__LLSEEK = 4140
+- SYS_GETDENTS = 4141
+- SYS__NEWSELECT = 4142
+- SYS_FLOCK = 4143
+- SYS_MSYNC = 4144
+- SYS_READV = 4145
+- SYS_WRITEV = 4146
+- SYS_CACHEFLUSH = 4147
+- SYS_CACHECTL = 4148
+- SYS_SYSMIPS = 4149
+- SYS_UNUSED150 = 4150
+- SYS_GETSID = 4151
+- SYS_FDATASYNC = 4152
+- SYS__SYSCTL = 4153
+- SYS_MLOCK = 4154
+- SYS_MUNLOCK = 4155
+- SYS_MLOCKALL = 4156
+- SYS_MUNLOCKALL = 4157
+- SYS_SCHED_SETPARAM = 4158
+- SYS_SCHED_GETPARAM = 4159
+- SYS_SCHED_SETSCHEDULER = 4160
+- SYS_SCHED_GETSCHEDULER = 4161
+- SYS_SCHED_YIELD = 4162
+- SYS_SCHED_GET_PRIORITY_MAX = 4163
+- SYS_SCHED_GET_PRIORITY_MIN = 4164
+- SYS_SCHED_RR_GET_INTERVAL = 4165
+- SYS_NANOSLEEP = 4166
+- SYS_MREMAP = 4167
+- SYS_ACCEPT = 4168
+- SYS_BIND = 4169
+- SYS_CONNECT = 4170
+- SYS_GETPEERNAME = 4171
+- SYS_GETSOCKNAME = 4172
+- SYS_GETSOCKOPT = 4173
+- SYS_LISTEN = 4174
+- SYS_RECV = 4175
+- SYS_RECVFROM = 4176
+- SYS_RECVMSG = 4177
+- SYS_SEND = 4178
+- SYS_SENDMSG = 4179
+- SYS_SENDTO = 4180
+- SYS_SETSOCKOPT = 4181
+- SYS_SHUTDOWN = 4182
+- SYS_SOCKET = 4183
+- SYS_SOCKETPAIR = 4184
+- SYS_SETRESUID = 4185
+- SYS_GETRESUID = 4186
+- SYS_QUERY_MODULE = 4187
+- SYS_POLL = 4188
+- SYS_NFSSERVCTL = 4189
+- SYS_SETRESGID = 4190
+- SYS_GETRESGID = 4191
+- SYS_PRCTL = 4192
+- SYS_RT_SIGRETURN = 4193
+- SYS_RT_SIGACTION = 4194
+- SYS_RT_SIGPROCMASK = 4195
+- SYS_RT_SIGPENDING = 4196
+- SYS_RT_SIGTIMEDWAIT = 4197
+- SYS_RT_SIGQUEUEINFO = 4198
+- SYS_RT_SIGSUSPEND = 4199
+- SYS_PREAD64 = 4200
+- SYS_PWRITE64 = 4201
+- SYS_CHOWN = 4202
+- SYS_GETCWD = 4203
+- SYS_CAPGET = 4204
+- SYS_CAPSET = 4205
+- SYS_SIGALTSTACK = 4206
+- SYS_SENDFILE = 4207
+- SYS_GETPMSG = 4208
+- SYS_PUTPMSG = 4209
+- SYS_MMAP2 = 4210
+- SYS_TRUNCATE64 = 4211
+- SYS_FTRUNCATE64 = 4212
+- SYS_STAT64 = 4213
+- SYS_LSTAT64 = 4214
+- SYS_FSTAT64 = 4215
+- SYS_PIVOT_ROOT = 4216
+- SYS_MINCORE = 4217
+- SYS_MADVISE = 4218
+- SYS_GETDENTS64 = 4219
+- SYS_FCNTL64 = 4220
+- SYS_RESERVED221 = 4221
+- SYS_GETTID = 4222
+- SYS_READAHEAD = 4223
+- SYS_SETXATTR = 4224
+- SYS_LSETXATTR = 4225
+- SYS_FSETXATTR = 4226
+- SYS_GETXATTR = 4227
+- SYS_LGETXATTR = 4228
+- SYS_FGETXATTR = 4229
+- SYS_LISTXATTR = 4230
+- SYS_LLISTXATTR = 4231
+- SYS_FLISTXATTR = 4232
+- SYS_REMOVEXATTR = 4233
+- SYS_LREMOVEXATTR = 4234
+- SYS_FREMOVEXATTR = 4235
+- SYS_TKILL = 4236
+- SYS_SENDFILE64 = 4237
+- SYS_FUTEX = 4238
+- SYS_SCHED_SETAFFINITY = 4239
+- SYS_SCHED_GETAFFINITY = 4240
+- SYS_IO_SETUP = 4241
+- SYS_IO_DESTROY = 4242
+- SYS_IO_GETEVENTS = 4243
+- SYS_IO_SUBMIT = 4244
+- SYS_IO_CANCEL = 4245
+- SYS_EXIT_GROUP = 4246
+- SYS_LOOKUP_DCOOKIE = 4247
+- SYS_EPOLL_CREATE = 4248
+- SYS_EPOLL_CTL = 4249
+- SYS_EPOLL_WAIT = 4250
+- SYS_REMAP_FILE_PAGES = 4251
+- SYS_SET_TID_ADDRESS = 4252
+- SYS_RESTART_SYSCALL = 4253
+- SYS_FADVISE64 = 4254
+- SYS_STATFS64 = 4255
+- SYS_FSTATFS64 = 4256
+- SYS_TIMER_CREATE = 4257
+- SYS_TIMER_SETTIME = 4258
+- SYS_TIMER_GETTIME = 4259
+- SYS_TIMER_GETOVERRUN = 4260
+- SYS_TIMER_DELETE = 4261
+- SYS_CLOCK_SETTIME = 4262
+- SYS_CLOCK_GETTIME = 4263
+- SYS_CLOCK_GETRES = 4264
+- SYS_CLOCK_NANOSLEEP = 4265
+- SYS_TGKILL = 4266
+- SYS_UTIMES = 4267
+- SYS_MBIND = 4268
+- SYS_GET_MEMPOLICY = 4269
+- SYS_SET_MEMPOLICY = 4270
+- SYS_MQ_OPEN = 4271
+- SYS_MQ_UNLINK = 4272
+- SYS_MQ_TIMEDSEND = 4273
+- SYS_MQ_TIMEDRECEIVE = 4274
+- SYS_MQ_NOTIFY = 4275
+- SYS_MQ_GETSETATTR = 4276
+- SYS_VSERVER = 4277
+- SYS_WAITID = 4278
+- SYS_ADD_KEY = 4280
+- SYS_REQUEST_KEY = 4281
+- SYS_KEYCTL = 4282
+- SYS_SET_THREAD_AREA = 4283
+- SYS_INOTIFY_INIT = 4284
+- SYS_INOTIFY_ADD_WATCH = 4285
+- SYS_INOTIFY_RM_WATCH = 4286
+- SYS_MIGRATE_PAGES = 4287
+- SYS_OPENAT = 4288
+- SYS_MKDIRAT = 4289
+- SYS_MKNODAT = 4290
+- SYS_FCHOWNAT = 4291
+- SYS_FUTIMESAT = 4292
+- SYS_FSTATAT64 = 4293
+- SYS_UNLINKAT = 4294
+- SYS_RENAMEAT = 4295
+- SYS_LINKAT = 4296
+- SYS_SYMLINKAT = 4297
+- SYS_READLINKAT = 4298
+- SYS_FCHMODAT = 4299
+- SYS_FACCESSAT = 4300
+- SYS_PSELECT6 = 4301
+- SYS_PPOLL = 4302
+- SYS_UNSHARE = 4303
+- SYS_SPLICE = 4304
+- SYS_SYNC_FILE_RANGE = 4305
+- SYS_TEE = 4306
+- SYS_VMSPLICE = 4307
+- SYS_MOVE_PAGES = 4308
+- SYS_SET_ROBUST_LIST = 4309
+- SYS_GET_ROBUST_LIST = 4310
+- SYS_KEXEC_LOAD = 4311
+- SYS_GETCPU = 4312
+- SYS_EPOLL_PWAIT = 4313
+- SYS_IOPRIO_SET = 4314
+- SYS_IOPRIO_GET = 4315
+- SYS_UTIMENSAT = 4316
+- SYS_SIGNALFD = 4317
+- SYS_TIMERFD = 4318
+- SYS_EVENTFD = 4319
+- SYS_FALLOCATE = 4320
+- SYS_TIMERFD_CREATE = 4321
+- SYS_TIMERFD_GETTIME = 4322
+- SYS_TIMERFD_SETTIME = 4323
+- SYS_SIGNALFD4 = 4324
+- SYS_EVENTFD2 = 4325
+- SYS_EPOLL_CREATE1 = 4326
+- SYS_DUP3 = 4327
+- SYS_PIPE2 = 4328
+- SYS_INOTIFY_INIT1 = 4329
+- SYS_PREADV = 4330
+- SYS_PWRITEV = 4331
+- SYS_RT_TGSIGQUEUEINFO = 4332
+- SYS_PERF_EVENT_OPEN = 4333
+- SYS_ACCEPT4 = 4334
+- SYS_RECVMMSG = 4335
+- SYS_FANOTIFY_INIT = 4336
+- SYS_FANOTIFY_MARK = 4337
+- SYS_PRLIMIT64 = 4338
+- SYS_NAME_TO_HANDLE_AT = 4339
+- SYS_OPEN_BY_HANDLE_AT = 4340
+- SYS_CLOCK_ADJTIME = 4341
+- SYS_SYNCFS = 4342
+- SYS_SENDMMSG = 4343
+- SYS_SETNS = 4344
+- SYS_PROCESS_VM_READV = 4345
+- SYS_PROCESS_VM_WRITEV = 4346
+- SYS_KCMP = 4347
+- SYS_FINIT_MODULE = 4348
+- SYS_SCHED_SETATTR = 4349
+- SYS_SCHED_GETATTR = 4350
+- SYS_RENAMEAT2 = 4351
+- SYS_SECCOMP = 4352
+- SYS_GETRANDOM = 4353
+- SYS_MEMFD_CREATE = 4354
+- SYS_BPF = 4355
+- SYS_EXECVEAT = 4356
+- SYS_USERFAULTFD = 4357
+- SYS_MEMBARRIER = 4358
+- SYS_MLOCK2 = 4359
+- SYS_COPY_FILE_RANGE = 4360
+- SYS_PREADV2 = 4361
+- SYS_PWRITEV2 = 4362
+- SYS_PKEY_MPROTECT = 4363
+- SYS_PKEY_ALLOC = 4364
+- SYS_PKEY_FREE = 4365
++ SYS_SYSCALL = 4000
++ SYS_EXIT = 4001
++ SYS_FORK = 4002
++ SYS_READ = 4003
++ SYS_WRITE = 4004
++ SYS_OPEN = 4005
++ SYS_CLOSE = 4006
++ SYS_WAITPID = 4007
++ SYS_CREAT = 4008
++ SYS_LINK = 4009
++ SYS_UNLINK = 4010
++ SYS_EXECVE = 4011
++ SYS_CHDIR = 4012
++ SYS_TIME = 4013
++ SYS_MKNOD = 4014
++ SYS_CHMOD = 4015
++ SYS_LCHOWN = 4016
++ SYS_BREAK = 4017
++ SYS_UNUSED18 = 4018
++ SYS_LSEEK = 4019
++ SYS_GETPID = 4020
++ SYS_MOUNT = 4021
++ SYS_UMOUNT = 4022
++ SYS_SETUID = 4023
++ SYS_GETUID = 4024
++ SYS_STIME = 4025
++ SYS_PTRACE = 4026
++ SYS_ALARM = 4027
++ SYS_UNUSED28 = 4028
++ SYS_PAUSE = 4029
++ SYS_UTIME = 4030
++ SYS_STTY = 4031
++ SYS_GTTY = 4032
++ SYS_ACCESS = 4033
++ SYS_NICE = 4034
++ SYS_FTIME = 4035
++ SYS_SYNC = 4036
++ SYS_KILL = 4037
++ SYS_RENAME = 4038
++ SYS_MKDIR = 4039
++ SYS_RMDIR = 4040
++ SYS_DUP = 4041
++ SYS_PIPE = 4042
++ SYS_TIMES = 4043
++ SYS_PROF = 4044
++ SYS_BRK = 4045
++ SYS_SETGID = 4046
++ SYS_GETGID = 4047
++ SYS_SIGNAL = 4048
++ SYS_GETEUID = 4049
++ SYS_GETEGID = 4050
++ SYS_ACCT = 4051
++ SYS_UMOUNT2 = 4052
++ SYS_LOCK = 4053
++ SYS_IOCTL = 4054
++ SYS_FCNTL = 4055
++ SYS_MPX = 4056
++ SYS_SETPGID = 4057
++ SYS_ULIMIT = 4058
++ SYS_UNUSED59 = 4059
++ SYS_UMASK = 4060
++ SYS_CHROOT = 4061
++ SYS_USTAT = 4062
++ SYS_DUP2 = 4063
++ SYS_GETPPID = 4064
++ SYS_GETPGRP = 4065
++ SYS_SETSID = 4066
++ SYS_SIGACTION = 4067
++ SYS_SGETMASK = 4068
++ SYS_SSETMASK = 4069
++ SYS_SETREUID = 4070
++ SYS_SETREGID = 4071
++ SYS_SIGSUSPEND = 4072
++ SYS_SIGPENDING = 4073
++ SYS_SETHOSTNAME = 4074
++ SYS_SETRLIMIT = 4075
++ SYS_GETRLIMIT = 4076
++ SYS_GETRUSAGE = 4077
++ SYS_GETTIMEOFDAY = 4078
++ SYS_SETTIMEOFDAY = 4079
++ SYS_GETGROUPS = 4080
++ SYS_SETGROUPS = 4081
++ SYS_RESERVED82 = 4082
++ SYS_SYMLINK = 4083
++ SYS_UNUSED84 = 4084
++ SYS_READLINK = 4085
++ SYS_USELIB = 4086
++ SYS_SWAPON = 4087
++ SYS_REBOOT = 4088
++ SYS_READDIR = 4089
++ SYS_MMAP = 4090
++ SYS_MUNMAP = 4091
++ SYS_TRUNCATE = 4092
++ SYS_FTRUNCATE = 4093
++ SYS_FCHMOD = 4094
++ SYS_FCHOWN = 4095
++ SYS_GETPRIORITY = 4096
++ SYS_SETPRIORITY = 4097
++ SYS_PROFIL = 4098
++ SYS_STATFS = 4099
++ SYS_FSTATFS = 4100
++ SYS_IOPERM = 4101
++ SYS_SOCKETCALL = 4102
++ SYS_SYSLOG = 4103
++ SYS_SETITIMER = 4104
++ SYS_GETITIMER = 4105
++ SYS_STAT = 4106
++ SYS_LSTAT = 4107
++ SYS_FSTAT = 4108
++ SYS_UNUSED109 = 4109
++ SYS_IOPL = 4110
++ SYS_VHANGUP = 4111
++ SYS_IDLE = 4112
++ SYS_VM86 = 4113
++ SYS_WAIT4 = 4114
++ SYS_SWAPOFF = 4115
++ SYS_SYSINFO = 4116
++ SYS_IPC = 4117
++ SYS_FSYNC = 4118
++ SYS_SIGRETURN = 4119
++ SYS_CLONE = 4120
++ SYS_SETDOMAINNAME = 4121
++ SYS_UNAME = 4122
++ SYS_MODIFY_LDT = 4123
++ SYS_ADJTIMEX = 4124
++ SYS_MPROTECT = 4125
++ SYS_SIGPROCMASK = 4126
++ SYS_CREATE_MODULE = 4127
++ SYS_INIT_MODULE = 4128
++ SYS_DELETE_MODULE = 4129
++ SYS_GET_KERNEL_SYMS = 4130
++ SYS_QUOTACTL = 4131
++ SYS_GETPGID = 4132
++ SYS_FCHDIR = 4133
++ SYS_BDFLUSH = 4134
++ SYS_SYSFS = 4135
++ SYS_PERSONALITY = 4136
++ SYS_AFS_SYSCALL = 4137
++ SYS_SETFSUID = 4138
++ SYS_SETFSGID = 4139
++ SYS__LLSEEK = 4140
++ SYS_GETDENTS = 4141
++ SYS__NEWSELECT = 4142
++ SYS_FLOCK = 4143
++ SYS_MSYNC = 4144
++ SYS_READV = 4145
++ SYS_WRITEV = 4146
++ SYS_CACHEFLUSH = 4147
++ SYS_CACHECTL = 4148
++ SYS_SYSMIPS = 4149
++ SYS_UNUSED150 = 4150
++ SYS_GETSID = 4151
++ SYS_FDATASYNC = 4152
++ SYS__SYSCTL = 4153
++ SYS_MLOCK = 4154
++ SYS_MUNLOCK = 4155
++ SYS_MLOCKALL = 4156
++ SYS_MUNLOCKALL = 4157
++ SYS_SCHED_SETPARAM = 4158
++ SYS_SCHED_GETPARAM = 4159
++ SYS_SCHED_SETSCHEDULER = 4160
++ SYS_SCHED_GETSCHEDULER = 4161
++ SYS_SCHED_YIELD = 4162
++ SYS_SCHED_GET_PRIORITY_MAX = 4163
++ SYS_SCHED_GET_PRIORITY_MIN = 4164
++ SYS_SCHED_RR_GET_INTERVAL = 4165
++ SYS_NANOSLEEP = 4166
++ SYS_MREMAP = 4167
++ SYS_ACCEPT = 4168
++ SYS_BIND = 4169
++ SYS_CONNECT = 4170
++ SYS_GETPEERNAME = 4171
++ SYS_GETSOCKNAME = 4172
++ SYS_GETSOCKOPT = 4173
++ SYS_LISTEN = 4174
++ SYS_RECV = 4175
++ SYS_RECVFROM = 4176
++ SYS_RECVMSG = 4177
++ SYS_SEND = 4178
++ SYS_SENDMSG = 4179
++ SYS_SENDTO = 4180
++ SYS_SETSOCKOPT = 4181
++ SYS_SHUTDOWN = 4182
++ SYS_SOCKET = 4183
++ SYS_SOCKETPAIR = 4184
++ SYS_SETRESUID = 4185
++ SYS_GETRESUID = 4186
++ SYS_QUERY_MODULE = 4187
++ SYS_POLL = 4188
++ SYS_NFSSERVCTL = 4189
++ SYS_SETRESGID = 4190
++ SYS_GETRESGID = 4191
++ SYS_PRCTL = 4192
++ SYS_RT_SIGRETURN = 4193
++ SYS_RT_SIGACTION = 4194
++ SYS_RT_SIGPROCMASK = 4195
++ SYS_RT_SIGPENDING = 4196
++ SYS_RT_SIGTIMEDWAIT = 4197
++ SYS_RT_SIGQUEUEINFO = 4198
++ SYS_RT_SIGSUSPEND = 4199
++ SYS_PREAD64 = 4200
++ SYS_PWRITE64 = 4201
++ SYS_CHOWN = 4202
++ SYS_GETCWD = 4203
++ SYS_CAPGET = 4204
++ SYS_CAPSET = 4205
++ SYS_SIGALTSTACK = 4206
++ SYS_SENDFILE = 4207
++ SYS_GETPMSG = 4208
++ SYS_PUTPMSG = 4209
++ SYS_MMAP2 = 4210
++ SYS_TRUNCATE64 = 4211
++ SYS_FTRUNCATE64 = 4212
++ SYS_STAT64 = 4213
++ SYS_LSTAT64 = 4214
++ SYS_FSTAT64 = 4215
++ SYS_PIVOT_ROOT = 4216
++ SYS_MINCORE = 4217
++ SYS_MADVISE = 4218
++ SYS_GETDENTS64 = 4219
++ SYS_FCNTL64 = 4220
++ SYS_RESERVED221 = 4221
++ SYS_GETTID = 4222
++ SYS_READAHEAD = 4223
++ SYS_SETXATTR = 4224
++ SYS_LSETXATTR = 4225
++ SYS_FSETXATTR = 4226
++ SYS_GETXATTR = 4227
++ SYS_LGETXATTR = 4228
++ SYS_FGETXATTR = 4229
++ SYS_LISTXATTR = 4230
++ SYS_LLISTXATTR = 4231
++ SYS_FLISTXATTR = 4232
++ SYS_REMOVEXATTR = 4233
++ SYS_LREMOVEXATTR = 4234
++ SYS_FREMOVEXATTR = 4235
++ SYS_TKILL = 4236
++ SYS_SENDFILE64 = 4237
++ SYS_FUTEX = 4238
++ SYS_SCHED_SETAFFINITY = 4239
++ SYS_SCHED_GETAFFINITY = 4240
++ SYS_IO_SETUP = 4241
++ SYS_IO_DESTROY = 4242
++ SYS_IO_GETEVENTS = 4243
++ SYS_IO_SUBMIT = 4244
++ SYS_IO_CANCEL = 4245
++ SYS_EXIT_GROUP = 4246
++ SYS_LOOKUP_DCOOKIE = 4247
++ SYS_EPOLL_CREATE = 4248
++ SYS_EPOLL_CTL = 4249
++ SYS_EPOLL_WAIT = 4250
++ SYS_REMAP_FILE_PAGES = 4251
++ SYS_SET_TID_ADDRESS = 4252
++ SYS_RESTART_SYSCALL = 4253
++ SYS_FADVISE64 = 4254
++ SYS_STATFS64 = 4255
++ SYS_FSTATFS64 = 4256
++ SYS_TIMER_CREATE = 4257
++ SYS_TIMER_SETTIME = 4258
++ SYS_TIMER_GETTIME = 4259
++ SYS_TIMER_GETOVERRUN = 4260
++ SYS_TIMER_DELETE = 4261
++ SYS_CLOCK_SETTIME = 4262
++ SYS_CLOCK_GETTIME = 4263
++ SYS_CLOCK_GETRES = 4264
++ SYS_CLOCK_NANOSLEEP = 4265
++ SYS_TGKILL = 4266
++ SYS_UTIMES = 4267
++ SYS_MBIND = 4268
++ SYS_GET_MEMPOLICY = 4269
++ SYS_SET_MEMPOLICY = 4270
++ SYS_MQ_OPEN = 4271
++ SYS_MQ_UNLINK = 4272
++ SYS_MQ_TIMEDSEND = 4273
++ SYS_MQ_TIMEDRECEIVE = 4274
++ SYS_MQ_NOTIFY = 4275
++ SYS_MQ_GETSETATTR = 4276
++ SYS_VSERVER = 4277
++ SYS_WAITID = 4278
++ SYS_ADD_KEY = 4280
++ SYS_REQUEST_KEY = 4281
++ SYS_KEYCTL = 4282
++ SYS_SET_THREAD_AREA = 4283
++ SYS_INOTIFY_INIT = 4284
++ SYS_INOTIFY_ADD_WATCH = 4285
++ SYS_INOTIFY_RM_WATCH = 4286
++ SYS_MIGRATE_PAGES = 4287
++ SYS_OPENAT = 4288
++ SYS_MKDIRAT = 4289
++ SYS_MKNODAT = 4290
++ SYS_FCHOWNAT = 4291
++ SYS_FUTIMESAT = 4292
++ SYS_FSTATAT64 = 4293
++ SYS_UNLINKAT = 4294
++ SYS_RENAMEAT = 4295
++ SYS_LINKAT = 4296
++ SYS_SYMLINKAT = 4297
++ SYS_READLINKAT = 4298
++ SYS_FCHMODAT = 4299
++ SYS_FACCESSAT = 4300
++ SYS_PSELECT6 = 4301
++ SYS_PPOLL = 4302
++ SYS_UNSHARE = 4303
++ SYS_SPLICE = 4304
++ SYS_SYNC_FILE_RANGE = 4305
++ SYS_TEE = 4306
++ SYS_VMSPLICE = 4307
++ SYS_MOVE_PAGES = 4308
++ SYS_SET_ROBUST_LIST = 4309
++ SYS_GET_ROBUST_LIST = 4310
++ SYS_KEXEC_LOAD = 4311
++ SYS_GETCPU = 4312
++ SYS_EPOLL_PWAIT = 4313
++ SYS_IOPRIO_SET = 4314
++ SYS_IOPRIO_GET = 4315
++ SYS_UTIMENSAT = 4316
++ SYS_SIGNALFD = 4317
++ SYS_TIMERFD = 4318
++ SYS_EVENTFD = 4319
++ SYS_FALLOCATE = 4320
++ SYS_TIMERFD_CREATE = 4321
++ SYS_TIMERFD_GETTIME = 4322
++ SYS_TIMERFD_SETTIME = 4323
++ SYS_SIGNALFD4 = 4324
++ SYS_EVENTFD2 = 4325
++ SYS_EPOLL_CREATE1 = 4326
++ SYS_DUP3 = 4327
++ SYS_PIPE2 = 4328
++ SYS_INOTIFY_INIT1 = 4329
++ SYS_PREADV = 4330
++ SYS_PWRITEV = 4331
++ SYS_RT_TGSIGQUEUEINFO = 4332
++ SYS_PERF_EVENT_OPEN = 4333
++ SYS_ACCEPT4 = 4334
++ SYS_RECVMMSG = 4335
++ SYS_FANOTIFY_INIT = 4336
++ SYS_FANOTIFY_MARK = 4337
++ SYS_PRLIMIT64 = 4338
++ SYS_NAME_TO_HANDLE_AT = 4339
++ SYS_OPEN_BY_HANDLE_AT = 4340
++ SYS_CLOCK_ADJTIME = 4341
++ SYS_SYNCFS = 4342
++ SYS_SENDMMSG = 4343
++ SYS_SETNS = 4344
++ SYS_PROCESS_VM_READV = 4345
++ SYS_PROCESS_VM_WRITEV = 4346
++ SYS_KCMP = 4347
++ SYS_FINIT_MODULE = 4348
++ SYS_SCHED_SETATTR = 4349
++ SYS_SCHED_GETATTR = 4350
++ SYS_RENAMEAT2 = 4351
++ SYS_SECCOMP = 4352
++ SYS_GETRANDOM = 4353
++ SYS_MEMFD_CREATE = 4354
++ SYS_BPF = 4355
++ SYS_EXECVEAT = 4356
++ SYS_USERFAULTFD = 4357
++ SYS_MEMBARRIER = 4358
++ SYS_MLOCK2 = 4359
++ SYS_COPY_FILE_RANGE = 4360
++ SYS_PREADV2 = 4361
++ SYS_PWRITEV2 = 4362
++ SYS_PKEY_MPROTECT = 4363
++ SYS_PKEY_ALLOC = 4364
++ SYS_PKEY_FREE = 4365
++ SYS_STATX = 4366
++ SYS_RSEQ = 4367
++ SYS_IO_PGETEVENTS = 4368
++ SYS_SEMGET = 4393
++ SYS_SEMCTL = 4394
++ SYS_SHMGET = 4395
++ SYS_SHMCTL = 4396
++ SYS_SHMAT = 4397
++ SYS_SHMDT = 4398
++ SYS_MSGGET = 4399
++ SYS_MSGSND = 4400
++ SYS_MSGRCV = 4401
++ SYS_MSGCTL = 4402
++ SYS_CLOCK_GETTIME64 = 4403
++ SYS_CLOCK_SETTIME64 = 4404
++ SYS_CLOCK_ADJTIME64 = 4405
++ SYS_CLOCK_GETRES_TIME64 = 4406
++ SYS_CLOCK_NANOSLEEP_TIME64 = 4407
++ SYS_TIMER_GETTIME64 = 4408
++ SYS_TIMER_SETTIME64 = 4409
++ SYS_TIMERFD_GETTIME64 = 4410
++ SYS_TIMERFD_SETTIME64 = 4411
++ SYS_UTIMENSAT_TIME64 = 4412
++ SYS_PSELECT6_TIME64 = 4413
++ SYS_PPOLL_TIME64 = 4414
++ SYS_IO_PGETEVENTS_TIME64 = 4416
++ SYS_RECVMMSG_TIME64 = 4417
++ SYS_MQ_TIMEDSEND_TIME64 = 4418
++ SYS_MQ_TIMEDRECEIVE_TIME64 = 4419
++ SYS_SEMTIMEDOP_TIME64 = 4420
++ SYS_RT_SIGTIMEDWAIT_TIME64 = 4421
++ SYS_FUTEX_TIME64 = 4422
++ SYS_SCHED_RR_GET_INTERVAL_TIME64 = 4423
++ SYS_PIDFD_SEND_SIGNAL = 4424
++ SYS_IO_URING_SETUP = 4425
++ SYS_IO_URING_ENTER = 4426
++ SYS_IO_URING_REGISTER = 4427
++ SYS_OPEN_TREE = 4428
++ SYS_MOVE_MOUNT = 4429
++ SYS_FSOPEN = 4430
++ SYS_FSCONFIG = 4431
++ SYS_FSMOUNT = 4432
++ SYS_FSPICK = 4433
++ SYS_PIDFD_OPEN = 4434
++ SYS_CLONE3 = 4435
++ SYS_OPENAT2 = 4437
++ SYS_PIDFD_GETFD = 4438
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
+index 8944448a..cc3c067b 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
+@@ -1,4 +1,4 @@
+-// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
++// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build ppc64,linux
+@@ -366,4 +366,35 @@ const (
+ SYS_PREADV2 = 380
+ SYS_PWRITEV2 = 381
+ SYS_KEXEC_FILE_LOAD = 382
++ SYS_STATX = 383
++ SYS_PKEY_ALLOC = 384
++ SYS_PKEY_FREE = 385
++ SYS_PKEY_MPROTECT = 386
++ SYS_RSEQ = 387
++ SYS_IO_PGETEVENTS = 388
++ SYS_SEMTIMEDOP = 392
++ SYS_SEMGET = 393
++ SYS_SEMCTL = 394
++ SYS_SHMGET = 395
++ SYS_SHMCTL = 396
++ SYS_SHMAT = 397
++ SYS_SHMDT = 398
++ SYS_MSGGET = 399
++ SYS_MSGSND = 400
++ SYS_MSGRCV = 401
++ SYS_MSGCTL = 402
++ SYS_PIDFD_SEND_SIGNAL = 424
++ SYS_IO_URING_SETUP = 425
++ SYS_IO_URING_ENTER = 426
++ SYS_IO_URING_REGISTER = 427
++ SYS_OPEN_TREE = 428
++ SYS_MOVE_MOUNT = 429
++ SYS_FSOPEN = 430
++ SYS_FSCONFIG = 431
++ SYS_FSMOUNT = 432
++ SYS_FSPICK = 433
++ SYS_PIDFD_OPEN = 434
++ SYS_CLONE3 = 435
++ SYS_OPENAT2 = 437
++ SYS_PIDFD_GETFD = 438
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
+index 90a039be..4050ff98 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
+@@ -1,4 +1,4 @@
+-// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
++// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build ppc64le,linux
+@@ -366,4 +366,35 @@ const (
+ SYS_PREADV2 = 380
+ SYS_PWRITEV2 = 381
+ SYS_KEXEC_FILE_LOAD = 382
++ SYS_STATX = 383
++ SYS_PKEY_ALLOC = 384
++ SYS_PKEY_FREE = 385
++ SYS_PKEY_MPROTECT = 386
++ SYS_RSEQ = 387
++ SYS_IO_PGETEVENTS = 388
++ SYS_SEMTIMEDOP = 392
++ SYS_SEMGET = 393
++ SYS_SEMCTL = 394
++ SYS_SHMGET = 395
++ SYS_SHMCTL = 396
++ SYS_SHMAT = 397
++ SYS_SHMDT = 398
++ SYS_MSGGET = 399
++ SYS_MSGSND = 400
++ SYS_MSGRCV = 401
++ SYS_MSGCTL = 402
++ SYS_PIDFD_SEND_SIGNAL = 424
++ SYS_IO_URING_SETUP = 425
++ SYS_IO_URING_ENTER = 426
++ SYS_IO_URING_REGISTER = 427
++ SYS_OPEN_TREE = 428
++ SYS_MOVE_MOUNT = 429
++ SYS_FSOPEN = 430
++ SYS_FSCONFIG = 431
++ SYS_FSMOUNT = 432
++ SYS_FSPICK = 433
++ SYS_PIDFD_OPEN = 434
++ SYS_CLONE3 = 435
++ SYS_OPENAT2 = 437
++ SYS_PIDFD_GETFD = 438
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go
+similarity index 92%
+copy from vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
+copy to vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go
+index 64078435..529abb6a 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go
+@@ -1,7 +1,7 @@
+-// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include -fsigned-char /tmp/include/asm/unistd.h
++// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build arm64,linux
++// +build riscv64,linux
+
+ package unix
+
+@@ -44,7 +44,6 @@ const (
+ SYS_UNLINKAT = 35
+ SYS_SYMLINKAT = 36
+ SYS_LINKAT = 37
+- SYS_RENAMEAT = 38
+ SYS_UMOUNT2 = 39
+ SYS_MOUNT = 40
+ SYS_PIVOT_ROOT = 41
+@@ -282,4 +281,22 @@ const (
+ SYS_PKEY_MPROTECT = 288
+ SYS_PKEY_ALLOC = 289
+ SYS_PKEY_FREE = 290
++ SYS_STATX = 291
++ SYS_IO_PGETEVENTS = 292
++ SYS_RSEQ = 293
++ SYS_KEXEC_FILE_LOAD = 294
++ SYS_PIDFD_SEND_SIGNAL = 424
++ SYS_IO_URING_SETUP = 425
++ SYS_IO_URING_ENTER = 426
++ SYS_IO_URING_REGISTER = 427
++ SYS_OPEN_TREE = 428
++ SYS_MOVE_MOUNT = 429
++ SYS_FSOPEN = 430
++ SYS_FSCONFIG = 431
++ SYS_FSMOUNT = 432
++ SYS_FSPICK = 433
++ SYS_PIDFD_OPEN = 434
++ SYS_CLONE3 = 435
++ SYS_OPENAT2 = 437
++ SYS_PIDFD_GETFD = 438
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go
+index aab0cdb1..27665001 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go
+@@ -1,4 +1,4 @@
+-// linux/mksysnum.pl -Wall -Werror -static -I/tmp/include -fsigned-char /tmp/include/asm/unistd.h
++// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include -fsigned-char /tmp/include/asm/unistd.h
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build s390x,linux
+@@ -109,6 +109,7 @@ const (
+ SYS_PERSONALITY = 136
+ SYS_AFS_SYSCALL = 137
+ SYS_GETDENTS = 141
++ SYS_SELECT = 142
+ SYS_FLOCK = 143
+ SYS_MSYNC = 144
+ SYS_READV = 145
+@@ -151,6 +152,26 @@ const (
+ SYS_GETPMSG = 188
+ SYS_PUTPMSG = 189
+ SYS_VFORK = 190
++ SYS_GETRLIMIT = 191
++ SYS_LCHOWN = 198
++ SYS_GETUID = 199
++ SYS_GETGID = 200
++ SYS_GETEUID = 201
++ SYS_GETEGID = 202
++ SYS_SETREUID = 203
++ SYS_SETREGID = 204
++ SYS_GETGROUPS = 205
++ SYS_SETGROUPS = 206
++ SYS_FCHOWN = 207
++ SYS_SETRESUID = 208
++ SYS_GETRESUID = 209
++ SYS_SETRESGID = 210
++ SYS_GETRESGID = 211
++ SYS_CHOWN = 212
++ SYS_SETUID = 213
++ SYS_SETGID = 214
++ SYS_SETFSUID = 215
++ SYS_SETFSGID = 216
+ SYS_PIVOT_ROOT = 217
+ SYS_MINCORE = 218
+ SYS_MADVISE = 219
+@@ -222,6 +243,7 @@ const (
+ SYS_MKNODAT = 290
+ SYS_FCHOWNAT = 291
+ SYS_FUTIMESAT = 292
++ SYS_NEWFSTATAT = 293
+ SYS_UNLINKAT = 294
+ SYS_RENAMEAT = 295
+ SYS_LINKAT = 296
+@@ -306,26 +328,38 @@ const (
+ SYS_COPY_FILE_RANGE = 375
+ SYS_PREADV2 = 376
+ SYS_PWRITEV2 = 377
+- SYS_SELECT = 142
+- SYS_GETRLIMIT = 191
+- SYS_LCHOWN = 198
+- SYS_GETUID = 199
+- SYS_GETGID = 200
+- SYS_GETEUID = 201
+- SYS_GETEGID = 202
+- SYS_SETREUID = 203
+- SYS_SETREGID = 204
+- SYS_GETGROUPS = 205
+- SYS_SETGROUPS = 206
+- SYS_FCHOWN = 207
+- SYS_SETRESUID = 208
+- SYS_GETRESUID = 209
+- SYS_SETRESGID = 210
+- SYS_GETRESGID = 211
+- SYS_CHOWN = 212
+- SYS_SETUID = 213
+- SYS_SETGID = 214
+- SYS_SETFSUID = 215
+- SYS_SETFSGID = 216
+- SYS_NEWFSTATAT = 293
++ SYS_S390_GUARDED_STORAGE = 378
++ SYS_STATX = 379
++ SYS_S390_STHYI = 380
++ SYS_KEXEC_FILE_LOAD = 381
++ SYS_IO_PGETEVENTS = 382
++ SYS_RSEQ = 383
++ SYS_PKEY_MPROTECT = 384
++ SYS_PKEY_ALLOC = 385
++ SYS_PKEY_FREE = 386
++ SYS_SEMTIMEDOP = 392
++ SYS_SEMGET = 393
++ SYS_SEMCTL = 394
++ SYS_SHMGET = 395
++ SYS_SHMCTL = 396
++ SYS_SHMAT = 397
++ SYS_SHMDT = 398
++ SYS_MSGGET = 399
++ SYS_MSGSND = 400
++ SYS_MSGRCV = 401
++ SYS_MSGCTL = 402
++ SYS_PIDFD_SEND_SIGNAL = 424
++ SYS_IO_URING_SETUP = 425
++ SYS_IO_URING_ENTER = 426
++ SYS_IO_URING_REGISTER = 427
++ SYS_OPEN_TREE = 428
++ SYS_MOVE_MOUNT = 429
++ SYS_FSOPEN = 430
++ SYS_FSCONFIG = 431
++ SYS_FSMOUNT = 432
++ SYS_FSPICK = 433
++ SYS_PIDFD_OPEN = 434
++ SYS_CLONE3 = 435
++ SYS_OPENAT2 = 437
++ SYS_PIDFD_GETFD = 438
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go
+index c9c129dc..4dc82bb2 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go
+@@ -1,5 +1,5 @@
+-// mksysnum_linux.pl -Ilinux/usr/include -m64 -D__arch64__ linux/usr/include/asm/unistd.h
+-// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
++// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build sparc64,linux
+
+@@ -253,6 +253,7 @@ const (
+ SYS_TIMER_GETOVERRUN = 264
+ SYS_TIMER_DELETE = 265
+ SYS_TIMER_CREATE = 266
++ SYS_VSERVER = 267
+ SYS_IO_SETUP = 268
+ SYS_IO_DESTROY = 269
+ SYS_IO_SUBMIT = 270
+@@ -345,4 +346,34 @@ const (
+ SYS_COPY_FILE_RANGE = 357
+ SYS_PREADV2 = 358
+ SYS_PWRITEV2 = 359
++ SYS_STATX = 360
++ SYS_IO_PGETEVENTS = 361
++ SYS_PKEY_MPROTECT = 362
++ SYS_PKEY_ALLOC = 363
++ SYS_PKEY_FREE = 364
++ SYS_RSEQ = 365
++ SYS_SEMTIMEDOP = 392
++ SYS_SEMGET = 393
++ SYS_SEMCTL = 394
++ SYS_SHMGET = 395
++ SYS_SHMCTL = 396
++ SYS_SHMAT = 397
++ SYS_SHMDT = 398
++ SYS_MSGGET = 399
++ SYS_MSGSND = 400
++ SYS_MSGRCV = 401
++ SYS_MSGCTL = 402
++ SYS_PIDFD_SEND_SIGNAL = 424
++ SYS_IO_URING_SETUP = 425
++ SYS_IO_URING_ENTER = 426
++ SYS_IO_URING_REGISTER = 427
++ SYS_OPEN_TREE = 428
++ SYS_MOVE_MOUNT = 429
++ SYS_FSOPEN = 430
++ SYS_FSCONFIG = 431
++ SYS_FSMOUNT = 432
++ SYS_FSPICK = 433
++ SYS_PIDFD_OPEN = 434
++ SYS_OPENAT2 = 437
++ SYS_PIDFD_GETFD = 438
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go
+index 8afda9c4..e66a8c9d 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go
+@@ -1,5 +1,5 @@
+-// mksysnum_netbsd.pl
+-// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
++// go run mksysnum.go http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/kern/syscalls.master
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build 386,netbsd
+
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go
+index aea8dbec..42c788f2 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go
+@@ -1,5 +1,5 @@
+-// mksysnum_netbsd.pl
+-// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
++// go run mksysnum.go http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/kern/syscalls.master
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build amd64,netbsd
+
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go
+index c6158a7e..0a075717 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go
+@@ -1,5 +1,5 @@
+-// mksysnum_netbsd.pl
+-// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
++// go run mksysnum.go http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/kern/syscalls.master
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build arm,netbsd
+
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go
+similarity index 99%
+copy from vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go
+copy to vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go
+index 8afda9c4..0291c093 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go
+@@ -1,7 +1,7 @@
+-// mksysnum_netbsd.pl
+-// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
++// go run mksysnum.go http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/kern/syscalls.master
++// Code generated by the command above; DO NOT EDIT.
+
+-// +build 386,netbsd
++// +build arm64,netbsd
+
+ package unix
+
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go
+index 3e8ce2a1..b0207d1c 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go
+@@ -1,5 +1,5 @@
+-// mksysnum_openbsd.pl
+-// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
++// go run mksysnum.go https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build 386,openbsd
+
+@@ -9,109 +9,119 @@ const (
+ SYS_EXIT = 1 // { void sys_exit(int rval); }
+ SYS_FORK = 2 // { int sys_fork(void); }
+ SYS_READ = 3 // { ssize_t sys_read(int fd, void *buf, size_t nbyte); }
+- SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, \
+- SYS_OPEN = 5 // { int sys_open(const char *path, \
++ SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, size_t nbyte); }
++ SYS_OPEN = 5 // { int sys_open(const char *path, int flags, ... mode_t mode); }
+ SYS_CLOSE = 6 // { int sys_close(int fd); }
+- SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, \
++ SYS_GETENTROPY = 7 // { int sys_getentropy(void *buf, size_t nbyte); }
++ SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, size_t psize); }
+ SYS_LINK = 9 // { int sys_link(const char *path, const char *link); }
+ SYS_UNLINK = 10 // { int sys_unlink(const char *path); }
+- SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, \
++ SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, int options, struct rusage *rusage); }
+ SYS_CHDIR = 12 // { int sys_chdir(const char *path); }
+ SYS_FCHDIR = 13 // { int sys_fchdir(int fd); }
+- SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, \
++ SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, dev_t dev); }
+ SYS_CHMOD = 15 // { int sys_chmod(const char *path, mode_t mode); }
+- SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, \
++ SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, gid_t gid); }
+ SYS_OBREAK = 17 // { int sys_obreak(char *nsize); } break
+ SYS_GETDTABLECOUNT = 18 // { int sys_getdtablecount(void); }
+- SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, \
++ SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, struct rusage *rusage); }
+ SYS_GETPID = 20 // { pid_t sys_getpid(void); }
+- SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, \
++ SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, int flags, void *data); }
+ SYS_UNMOUNT = 22 // { int sys_unmount(const char *path, int flags); }
+ SYS_SETUID = 23 // { int sys_setuid(uid_t uid); }
+ SYS_GETUID = 24 // { uid_t sys_getuid(void); }
+ SYS_GETEUID = 25 // { uid_t sys_geteuid(void); }
+- SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, \
+- SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, \
+- SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, \
+- SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, \
+- SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, \
+- SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, \
+- SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, \
+- SYS_ACCESS = 33 // { int sys_access(const char *path, int flags); }
++ SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, int data); }
++ SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, int flags); }
++ SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, const struct msghdr *msg, int flags); }
++ SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, int flags, struct sockaddr *from, socklen_t *fromlenaddr); }
++ SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, socklen_t *anamelen); }
++ SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, socklen_t *alen); }
++ SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, socklen_t *alen); }
++ SYS_ACCESS = 33 // { int sys_access(const char *path, int amode); }
+ SYS_CHFLAGS = 34 // { int sys_chflags(const char *path, u_int flags); }
+ SYS_FCHFLAGS = 35 // { int sys_fchflags(int fd, u_int flags); }
+ SYS_SYNC = 36 // { void sys_sync(void); }
+- SYS_KILL = 37 // { int sys_kill(int pid, int signum); }
+ SYS_STAT = 38 // { int sys_stat(const char *path, struct stat *ub); }
+ SYS_GETPPID = 39 // { pid_t sys_getppid(void); }
+ SYS_LSTAT = 40 // { int sys_lstat(const char *path, struct stat *ub); }
+ SYS_DUP = 41 // { int sys_dup(int fd); }
+- SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, \
++ SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, struct stat *buf, int flag); }
+ SYS_GETEGID = 43 // { gid_t sys_getegid(void); }
+- SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, \
+- SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, \
+- SYS_SIGACTION = 46 // { int sys_sigaction(int signum, \
++ SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, u_long offset, u_int scale); }
++ SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, int facs, pid_t pid); }
++ SYS_SIGACTION = 46 // { int sys_sigaction(int signum, const struct sigaction *nsa, struct sigaction *osa); }
+ SYS_GETGID = 47 // { gid_t sys_getgid(void); }
+ SYS_SIGPROCMASK = 48 // { int sys_sigprocmask(int how, sigset_t mask); }
+- SYS_GETLOGIN = 49 // { int sys_getlogin(char *namebuf, u_int namelen); }
+ SYS_SETLOGIN = 50 // { int sys_setlogin(const char *namebuf); }
+ SYS_ACCT = 51 // { int sys_acct(const char *path); }
+ SYS_SIGPENDING = 52 // { int sys_sigpending(void); }
+ SYS_FSTAT = 53 // { int sys_fstat(int fd, struct stat *sb); }
+- SYS_IOCTL = 54 // { int sys_ioctl(int fd, \
++ SYS_IOCTL = 54 // { int sys_ioctl(int fd, u_long com, ... void *data); }
+ SYS_REBOOT = 55 // { int sys_reboot(int opt); }
+ SYS_REVOKE = 56 // { int sys_revoke(const char *path); }
+- SYS_SYMLINK = 57 // { int sys_symlink(const char *path, \
+- SYS_READLINK = 58 // { int sys_readlink(const char *path, char *buf, \
+- SYS_EXECVE = 59 // { int sys_execve(const char *path, \
++ SYS_SYMLINK = 57 // { int sys_symlink(const char *path, const char *link); }
++ SYS_READLINK = 58 // { ssize_t sys_readlink(const char *path, char *buf, size_t count); }
++ SYS_EXECVE = 59 // { int sys_execve(const char *path, char * const *argp, char * const *envp); }
+ SYS_UMASK = 60 // { mode_t sys_umask(mode_t newmask); }
+ SYS_CHROOT = 61 // { int sys_chroot(const char *path); }
+- SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, \
+- SYS_STATFS = 63 // { int sys_statfs(const char *path, \
++ SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, int flags); }
++ SYS_STATFS = 63 // { int sys_statfs(const char *path, struct statfs *buf); }
+ SYS_FSTATFS = 64 // { int sys_fstatfs(int fd, struct statfs *buf); }
+- SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, \
++ SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, struct statfs *buf); }
+ SYS_VFORK = 66 // { int sys_vfork(void); }
+- SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, \
+- SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, \
+- SYS_SETITIMER = 69 // { int sys_setitimer(int which, \
+- SYS_GETITIMER = 70 // { int sys_getitimer(int which, \
+- SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, \
+- SYS_KEVENT = 72 // { int sys_kevent(int fd, \
++ SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, struct timezone *tzp); }
++ SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, const struct timezone *tzp); }
++ SYS_SETITIMER = 69 // { int sys_setitimer(int which, const struct itimerval *itv, struct itimerval *oitv); }
++ SYS_GETITIMER = 70 // { int sys_getitimer(int which, struct itimerval *itv); }
++ SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
++ SYS_KEVENT = 72 // { int sys_kevent(int fd, const struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
+ SYS_MUNMAP = 73 // { int sys_munmap(void *addr, size_t len); }
+- SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, \
+- SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, \
+- SYS_UTIMES = 76 // { int sys_utimes(const char *path, \
+- SYS_FUTIMES = 77 // { int sys_futimes(int fd, \
+- SYS_MINCORE = 78 // { int sys_mincore(void *addr, size_t len, \
+- SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, \
+- SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, \
++ SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, int prot); }
++ SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, int behav); }
++ SYS_UTIMES = 76 // { int sys_utimes(const char *path, const struct timeval *tptr); }
++ SYS_FUTIMES = 77 // { int sys_futimes(int fd, const struct timeval *tptr); }
++ SYS_MINCORE = 78 // { int sys_mincore(void *addr, size_t len, char *vec); }
++ SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, gid_t *gidset); }
++ SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, const gid_t *gidset); }
+ SYS_GETPGRP = 81 // { int sys_getpgrp(void); }
+- SYS_SETPGID = 82 // { int sys_setpgid(pid_t pid, int pgid); }
+- SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, \
+- SYS_FUTIMENS = 85 // { int sys_futimens(int fd, \
+- SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, \
+- SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, \
+- SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, \
++ SYS_SETPGID = 82 // { int sys_setpgid(pid_t pid, pid_t pgid); }
++ SYS_FUTEX = 83 // { int sys_futex(uint32_t *f, int op, int val, const struct timespec *timeout, uint32_t *g); }
++ SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, const struct timespec *times, int flag); }
++ SYS_FUTIMENS = 85 // { int sys_futimens(int fd, const struct timespec *times); }
++ SYS_KBIND = 86 // { int sys_kbind(const struct __kbind *param, size_t psize, int64_t proc_cookie); }
++ SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, struct timespec *tp); }
++ SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, const struct timespec *tp); }
++ SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, struct timespec *tp); }
+ SYS_DUP2 = 90 // { int sys_dup2(int from, int to); }
+- SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, \
++ SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
+ SYS_FCNTL = 92 // { int sys_fcntl(int fd, int cmd, ... void *arg); }
+- SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, \
++ SYS_ACCEPT4 = 93 // { int sys_accept4(int s, struct sockaddr *name, socklen_t *anamelen, int flags); }
++ SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, clockid_t clock_id, const struct timespec *tp, void *lock, const int *abort); }
+ SYS_FSYNC = 95 // { int sys_fsync(int fd); }
+ SYS_SETPRIORITY = 96 // { int sys_setpriority(int which, id_t who, int prio); }
+ SYS_SOCKET = 97 // { int sys_socket(int domain, int type, int protocol); }
+- SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, \
++ SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, socklen_t namelen); }
+ SYS_GETDENTS = 99 // { int sys_getdents(int fd, void *buf, size_t buflen); }
+ SYS_GETPRIORITY = 100 // { int sys_getpriority(int which, id_t who); }
++ SYS_PIPE2 = 101 // { int sys_pipe2(int *fdp, int flags); }
++ SYS_DUP3 = 102 // { int sys_dup3(int from, int to, int flags); }
+ SYS_SIGRETURN = 103 // { int sys_sigreturn(struct sigcontext *sigcntxp); }
+- SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, \
+- SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, \
++ SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, socklen_t namelen); }
++ SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, const void *val, socklen_t valsize); }
+ SYS_LISTEN = 106 // { int sys_listen(int s, int backlog); }
+- SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, \
+- SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, \
++ SYS_CHFLAGSAT = 107 // { int sys_chflagsat(int fd, const char *path, u_int flags, int atflags); }
++ SYS_PLEDGE = 108 // { int sys_pledge(const char *promises, const char *execpromises); }
++ SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *mask); }
++ SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *mask); }
+ SYS_SIGSUSPEND = 111 // { int sys_sigsuspend(int mask); }
+- SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, \
+- SYS_READV = 120 // { ssize_t sys_readv(int fd, \
+- SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, \
++ SYS_SENDSYSLOG = 112 // { int sys_sendsyslog(const char *buf, size_t nbyte, int flags); }
++ SYS_UNVEIL = 114 // { int sys_unveil(const char *path, const char *permissions); }
++ SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, void *val, socklen_t *avalsize); }
++ SYS_THRKILL = 119 // { int sys_thrkill(pid_t tid, int signum, void *tcb); }
++ SYS_READV = 120 // { ssize_t sys_readv(int fd, const struct iovec *iovp, int iovcnt); }
++ SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, const struct iovec *iovp, int iovcnt); }
++ SYS_KILL = 122 // { int sys_kill(int pid, int signum); }
+ SYS_FCHOWN = 123 // { int sys_fchown(int fd, uid_t uid, gid_t gid); }
+ SYS_FCHMOD = 124 // { int sys_fchmod(int fd, mode_t mode); }
+ SYS_SETREUID = 126 // { int sys_setreuid(uid_t ruid, uid_t euid); }
+@@ -119,89 +129,90 @@ const (
+ SYS_RENAME = 128 // { int sys_rename(const char *from, const char *to); }
+ SYS_FLOCK = 131 // { int sys_flock(int fd, int how); }
+ SYS_MKFIFO = 132 // { int sys_mkfifo(const char *path, mode_t mode); }
+- SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, \
++ SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, size_t len, int flags, const struct sockaddr *to, socklen_t tolen); }
+ SYS_SHUTDOWN = 134 // { int sys_shutdown(int s, int how); }
+- SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, \
++ SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, int protocol, int *rsv); }
+ SYS_MKDIR = 136 // { int sys_mkdir(const char *path, mode_t mode); }
+ SYS_RMDIR = 137 // { int sys_rmdir(const char *path); }
+- SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, \
++ SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, struct timeval *olddelta); }
++ SYS_GETLOGIN_R = 141 // { int sys_getlogin_r(char *namebuf, u_int namelen); }
+ SYS_SETSID = 147 // { int sys_setsid(void); }
+- SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, \
++ SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, int uid, char *arg); }
+ SYS_NFSSVC = 155 // { int sys_nfssvc(int flag, void *argp); }
+ SYS_GETFH = 161 // { int sys_getfh(const char *fname, fhandle_t *fhp); }
+ SYS_SYSARCH = 165 // { int sys_sysarch(int op, void *parms); }
+- SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, \
+- SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, \
++ SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, size_t nbyte, int pad, off_t offset); }
++ SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, size_t nbyte, int pad, off_t offset); }
+ SYS_SETGID = 181 // { int sys_setgid(gid_t gid); }
+ SYS_SETEGID = 182 // { int sys_setegid(gid_t egid); }
+ SYS_SETEUID = 183 // { int sys_seteuid(uid_t euid); }
+ SYS_PATHCONF = 191 // { long sys_pathconf(const char *path, int name); }
+ SYS_FPATHCONF = 192 // { long sys_fpathconf(int fd, int name); }
+ SYS_SWAPCTL = 193 // { int sys_swapctl(int cmd, const void *arg, int misc); }
+- SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, \
+- SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, \
+- SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, \
+- SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, \
+- SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, \
++ SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, struct rlimit *rlp); }
++ SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, const struct rlimit *rlp); }
++ SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); }
++ SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, int whence); }
++ SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, off_t length); }
+ SYS_FTRUNCATE = 201 // { int sys_ftruncate(int fd, int pad, off_t length); }
+- SYS___SYSCTL = 202 // { int sys___sysctl(const int *name, u_int namelen, \
++ SYS_SYSCTL = 202 // { int sys_sysctl(const int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); }
+ SYS_MLOCK = 203 // { int sys_mlock(const void *addr, size_t len); }
+ SYS_MUNLOCK = 204 // { int sys_munlock(const void *addr, size_t len); }
+ SYS_GETPGID = 207 // { pid_t sys_getpgid(pid_t pid); }
+- SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, \
++ SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, size_t len); }
+ SYS_SEMGET = 221 // { int sys_semget(key_t key, int nsems, int semflg); }
+ SYS_MSGGET = 225 // { int sys_msgget(key_t key, int msgflg); }
+- SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, \
+- SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, \
+- SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, \
++ SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
++ SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
++ SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, int shmflg); }
+ SYS_SHMDT = 230 // { int sys_shmdt(const void *shmaddr); }
+- SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, \
+- SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, \
++ SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, int inherit); }
++ SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, u_int nfds, int timeout); }
+ SYS_ISSETUGID = 253 // { int sys_issetugid(void); }
+ SYS_LCHOWN = 254 // { int sys_lchown(const char *path, uid_t uid, gid_t gid); }
+ SYS_GETSID = 255 // { pid_t sys_getsid(pid_t pid); }
+ SYS_MSYNC = 256 // { int sys_msync(void *addr, size_t len, int flags); }
+ SYS_PIPE = 263 // { int sys_pipe(int *fdp); }
+ SYS_FHOPEN = 264 // { int sys_fhopen(const fhandle_t *fhp, int flags); }
+- SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, \
+- SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, \
++ SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); }
++ SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); }
+ SYS_KQUEUE = 269 // { int sys_kqueue(void); }
+ SYS_MLOCKALL = 271 // { int sys_mlockall(int flags); }
+ SYS_MUNLOCKALL = 272 // { int sys_munlockall(void); }
+- SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, \
+- SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, \
+- SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, \
+- SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, \
+- SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, \
++ SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
++ SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, uid_t suid); }
++ SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
++ SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
++ SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); }
+ SYS_CLOSEFROM = 287 // { int sys_closefrom(int fd); }
+- SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, \
++ SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, struct sigaltstack *oss); }
+ SYS_SHMGET = 289 // { int sys_shmget(key_t key, size_t size, int shmflg); }
+- SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, \
+- SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, \
+- SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, \
+- SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, \
+- SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, \
++ SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, size_t nsops); }
++ SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, struct stat *sb); }
++ SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, union semun *arg); }
++ SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, struct shmid_ds *buf); }
++ SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, struct msqid_ds *buf); }
+ SYS_SCHED_YIELD = 298 // { int sys_sched_yield(void); }
+ SYS_GETTHRID = 299 // { pid_t sys_getthrid(void); }
+- SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, \
++ SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, int n); }
+ SYS___THREXIT = 302 // { void sys___threxit(pid_t *notdead); }
+- SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, \
++ SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, siginfo_t *info, const struct timespec *timeout); }
+ SYS___GETCWD = 304 // { int sys___getcwd(char *buf, size_t len); }
+- SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, \
++ SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, int64_t *oldfreq); }
+ SYS_SETRTABLE = 310 // { int sys_setrtable(int rtableid); }
+ SYS_GETRTABLE = 311 // { int sys_getrtable(void); }
+- SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, \
+- SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, \
+- SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, \
+- SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, \
+- SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, \
+- SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, \
+- SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, \
+- SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, \
+- SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, \
+- SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, \
+- SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, \
+- SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, \
++ SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, int amode, int flag); }
++ SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, mode_t mode, int flag); }
++ SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, uid_t uid, gid_t gid, int flag); }
++ SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, const char *path2, int flag); }
++ SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, mode_t mode); }
++ SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, mode_t mode); }
++ SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, mode_t mode, dev_t dev); }
++ SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, ... mode_t mode); }
++ SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, char *buf, size_t count); }
++ SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, int tofd, const char *to); }
++ SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, const char *link); }
++ SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, int flag); }
+ SYS___SET_TCB = 329 // { void sys___set_tcb(void *tcb); }
+ SYS___GET_TCB = 330 // { void *sys___get_tcb(void); }
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go
+index bd28146d..f0dec6f0 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go
+@@ -1,5 +1,5 @@
+-// mksysnum_openbsd.pl
+-// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
++// go run mksysnum.go https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build amd64,openbsd
+
+@@ -9,109 +9,119 @@ const (
+ SYS_EXIT = 1 // { void sys_exit(int rval); }
+ SYS_FORK = 2 // { int sys_fork(void); }
+ SYS_READ = 3 // { ssize_t sys_read(int fd, void *buf, size_t nbyte); }
+- SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, \
+- SYS_OPEN = 5 // { int sys_open(const char *path, \
++ SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, size_t nbyte); }
++ SYS_OPEN = 5 // { int sys_open(const char *path, int flags, ... mode_t mode); }
+ SYS_CLOSE = 6 // { int sys_close(int fd); }
+- SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, \
++ SYS_GETENTROPY = 7 // { int sys_getentropy(void *buf, size_t nbyte); }
++ SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, size_t psize); }
+ SYS_LINK = 9 // { int sys_link(const char *path, const char *link); }
+ SYS_UNLINK = 10 // { int sys_unlink(const char *path); }
+- SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, \
++ SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, int options, struct rusage *rusage); }
+ SYS_CHDIR = 12 // { int sys_chdir(const char *path); }
+ SYS_FCHDIR = 13 // { int sys_fchdir(int fd); }
+- SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, \
++ SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, dev_t dev); }
+ SYS_CHMOD = 15 // { int sys_chmod(const char *path, mode_t mode); }
+- SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, \
++ SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, gid_t gid); }
+ SYS_OBREAK = 17 // { int sys_obreak(char *nsize); } break
+ SYS_GETDTABLECOUNT = 18 // { int sys_getdtablecount(void); }
+- SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, \
++ SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, struct rusage *rusage); }
+ SYS_GETPID = 20 // { pid_t sys_getpid(void); }
+- SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, \
++ SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, int flags, void *data); }
+ SYS_UNMOUNT = 22 // { int sys_unmount(const char *path, int flags); }
+ SYS_SETUID = 23 // { int sys_setuid(uid_t uid); }
+ SYS_GETUID = 24 // { uid_t sys_getuid(void); }
+ SYS_GETEUID = 25 // { uid_t sys_geteuid(void); }
+- SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, \
+- SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, \
+- SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, \
+- SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, \
+- SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, \
+- SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, \
+- SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, \
+- SYS_ACCESS = 33 // { int sys_access(const char *path, int flags); }
++ SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, int data); }
++ SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, int flags); }
++ SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, const struct msghdr *msg, int flags); }
++ SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, int flags, struct sockaddr *from, socklen_t *fromlenaddr); }
++ SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, socklen_t *anamelen); }
++ SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, socklen_t *alen); }
++ SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, socklen_t *alen); }
++ SYS_ACCESS = 33 // { int sys_access(const char *path, int amode); }
+ SYS_CHFLAGS = 34 // { int sys_chflags(const char *path, u_int flags); }
+ SYS_FCHFLAGS = 35 // { int sys_fchflags(int fd, u_int flags); }
+ SYS_SYNC = 36 // { void sys_sync(void); }
+- SYS_KILL = 37 // { int sys_kill(int pid, int signum); }
+ SYS_STAT = 38 // { int sys_stat(const char *path, struct stat *ub); }
+ SYS_GETPPID = 39 // { pid_t sys_getppid(void); }
+ SYS_LSTAT = 40 // { int sys_lstat(const char *path, struct stat *ub); }
+ SYS_DUP = 41 // { int sys_dup(int fd); }
+- SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, \
++ SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, struct stat *buf, int flag); }
+ SYS_GETEGID = 43 // { gid_t sys_getegid(void); }
+- SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, \
+- SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, \
+- SYS_SIGACTION = 46 // { int sys_sigaction(int signum, \
++ SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, u_long offset, u_int scale); }
++ SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, int facs, pid_t pid); }
++ SYS_SIGACTION = 46 // { int sys_sigaction(int signum, const struct sigaction *nsa, struct sigaction *osa); }
+ SYS_GETGID = 47 // { gid_t sys_getgid(void); }
+ SYS_SIGPROCMASK = 48 // { int sys_sigprocmask(int how, sigset_t mask); }
+- SYS_GETLOGIN = 49 // { int sys_getlogin(char *namebuf, u_int namelen); }
+ SYS_SETLOGIN = 50 // { int sys_setlogin(const char *namebuf); }
+ SYS_ACCT = 51 // { int sys_acct(const char *path); }
+ SYS_SIGPENDING = 52 // { int sys_sigpending(void); }
+ SYS_FSTAT = 53 // { int sys_fstat(int fd, struct stat *sb); }
+- SYS_IOCTL = 54 // { int sys_ioctl(int fd, \
++ SYS_IOCTL = 54 // { int sys_ioctl(int fd, u_long com, ... void *data); }
+ SYS_REBOOT = 55 // { int sys_reboot(int opt); }
+ SYS_REVOKE = 56 // { int sys_revoke(const char *path); }
+- SYS_SYMLINK = 57 // { int sys_symlink(const char *path, \
+- SYS_READLINK = 58 // { int sys_readlink(const char *path, char *buf, \
+- SYS_EXECVE = 59 // { int sys_execve(const char *path, \
++ SYS_SYMLINK = 57 // { int sys_symlink(const char *path, const char *link); }
++ SYS_READLINK = 58 // { ssize_t sys_readlink(const char *path, char *buf, size_t count); }
++ SYS_EXECVE = 59 // { int sys_execve(const char *path, char * const *argp, char * const *envp); }
+ SYS_UMASK = 60 // { mode_t sys_umask(mode_t newmask); }
+ SYS_CHROOT = 61 // { int sys_chroot(const char *path); }
+- SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, \
+- SYS_STATFS = 63 // { int sys_statfs(const char *path, \
++ SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, int flags); }
++ SYS_STATFS = 63 // { int sys_statfs(const char *path, struct statfs *buf); }
+ SYS_FSTATFS = 64 // { int sys_fstatfs(int fd, struct statfs *buf); }
+- SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, \
++ SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, struct statfs *buf); }
+ SYS_VFORK = 66 // { int sys_vfork(void); }
+- SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, \
+- SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, \
+- SYS_SETITIMER = 69 // { int sys_setitimer(int which, \
+- SYS_GETITIMER = 70 // { int sys_getitimer(int which, \
+- SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, \
+- SYS_KEVENT = 72 // { int sys_kevent(int fd, \
++ SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, struct timezone *tzp); }
++ SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, const struct timezone *tzp); }
++ SYS_SETITIMER = 69 // { int sys_setitimer(int which, const struct itimerval *itv, struct itimerval *oitv); }
++ SYS_GETITIMER = 70 // { int sys_getitimer(int which, struct itimerval *itv); }
++ SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
++ SYS_KEVENT = 72 // { int sys_kevent(int fd, const struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
+ SYS_MUNMAP = 73 // { int sys_munmap(void *addr, size_t len); }
+- SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, \
+- SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, \
+- SYS_UTIMES = 76 // { int sys_utimes(const char *path, \
+- SYS_FUTIMES = 77 // { int sys_futimes(int fd, \
+- SYS_MINCORE = 78 // { int sys_mincore(void *addr, size_t len, \
+- SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, \
+- SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, \
++ SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, int prot); }
++ SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, int behav); }
++ SYS_UTIMES = 76 // { int sys_utimes(const char *path, const struct timeval *tptr); }
++ SYS_FUTIMES = 77 // { int sys_futimes(int fd, const struct timeval *tptr); }
++ SYS_MINCORE = 78 // { int sys_mincore(void *addr, size_t len, char *vec); }
++ SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, gid_t *gidset); }
++ SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, const gid_t *gidset); }
+ SYS_GETPGRP = 81 // { int sys_getpgrp(void); }
+- SYS_SETPGID = 82 // { int sys_setpgid(pid_t pid, int pgid); }
+- SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, \
+- SYS_FUTIMENS = 85 // { int sys_futimens(int fd, \
+- SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, \
+- SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, \
+- SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, \
++ SYS_SETPGID = 82 // { int sys_setpgid(pid_t pid, pid_t pgid); }
++ SYS_FUTEX = 83 // { int sys_futex(uint32_t *f, int op, int val, const struct timespec *timeout, uint32_t *g); }
++ SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, const struct timespec *times, int flag); }
++ SYS_FUTIMENS = 85 // { int sys_futimens(int fd, const struct timespec *times); }
++ SYS_KBIND = 86 // { int sys_kbind(const struct __kbind *param, size_t psize, int64_t proc_cookie); }
++ SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, struct timespec *tp); }
++ SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, const struct timespec *tp); }
++ SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, struct timespec *tp); }
+ SYS_DUP2 = 90 // { int sys_dup2(int from, int to); }
+- SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, \
++ SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
+ SYS_FCNTL = 92 // { int sys_fcntl(int fd, int cmd, ... void *arg); }
+- SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, \
++ SYS_ACCEPT4 = 93 // { int sys_accept4(int s, struct sockaddr *name, socklen_t *anamelen, int flags); }
++ SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, clockid_t clock_id, const struct timespec *tp, void *lock, const int *abort); }
+ SYS_FSYNC = 95 // { int sys_fsync(int fd); }
+ SYS_SETPRIORITY = 96 // { int sys_setpriority(int which, id_t who, int prio); }
+ SYS_SOCKET = 97 // { int sys_socket(int domain, int type, int protocol); }
+- SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, \
++ SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, socklen_t namelen); }
+ SYS_GETDENTS = 99 // { int sys_getdents(int fd, void *buf, size_t buflen); }
+ SYS_GETPRIORITY = 100 // { int sys_getpriority(int which, id_t who); }
++ SYS_PIPE2 = 101 // { int sys_pipe2(int *fdp, int flags); }
++ SYS_DUP3 = 102 // { int sys_dup3(int from, int to, int flags); }
+ SYS_SIGRETURN = 103 // { int sys_sigreturn(struct sigcontext *sigcntxp); }
+- SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, \
+- SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, \
++ SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, socklen_t namelen); }
++ SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, const void *val, socklen_t valsize); }
+ SYS_LISTEN = 106 // { int sys_listen(int s, int backlog); }
+- SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, \
+- SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, \
++ SYS_CHFLAGSAT = 107 // { int sys_chflagsat(int fd, const char *path, u_int flags, int atflags); }
++ SYS_PLEDGE = 108 // { int sys_pledge(const char *promises, const char *execpromises); }
++ SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *mask); }
++ SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *mask); }
+ SYS_SIGSUSPEND = 111 // { int sys_sigsuspend(int mask); }
+- SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, \
+- SYS_READV = 120 // { ssize_t sys_readv(int fd, \
+- SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, \
++ SYS_SENDSYSLOG = 112 // { int sys_sendsyslog(const char *buf, size_t nbyte, int flags); }
++ SYS_UNVEIL = 114 // { int sys_unveil(const char *path, const char *permissions); }
++ SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, void *val, socklen_t *avalsize); }
++ SYS_THRKILL = 119 // { int sys_thrkill(pid_t tid, int signum, void *tcb); }
++ SYS_READV = 120 // { ssize_t sys_readv(int fd, const struct iovec *iovp, int iovcnt); }
++ SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, const struct iovec *iovp, int iovcnt); }
++ SYS_KILL = 122 // { int sys_kill(int pid, int signum); }
+ SYS_FCHOWN = 123 // { int sys_fchown(int fd, uid_t uid, gid_t gid); }
+ SYS_FCHMOD = 124 // { int sys_fchmod(int fd, mode_t mode); }
+ SYS_SETREUID = 126 // { int sys_setreuid(uid_t ruid, uid_t euid); }
+@@ -119,89 +129,90 @@ const (
+ SYS_RENAME = 128 // { int sys_rename(const char *from, const char *to); }
+ SYS_FLOCK = 131 // { int sys_flock(int fd, int how); }
+ SYS_MKFIFO = 132 // { int sys_mkfifo(const char *path, mode_t mode); }
+- SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, \
++ SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, size_t len, int flags, const struct sockaddr *to, socklen_t tolen); }
+ SYS_SHUTDOWN = 134 // { int sys_shutdown(int s, int how); }
+- SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, \
++ SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, int protocol, int *rsv); }
+ SYS_MKDIR = 136 // { int sys_mkdir(const char *path, mode_t mode); }
+ SYS_RMDIR = 137 // { int sys_rmdir(const char *path); }
+- SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, \
++ SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, struct timeval *olddelta); }
++ SYS_GETLOGIN_R = 141 // { int sys_getlogin_r(char *namebuf, u_int namelen); }
+ SYS_SETSID = 147 // { int sys_setsid(void); }
+- SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, \
++ SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, int uid, char *arg); }
+ SYS_NFSSVC = 155 // { int sys_nfssvc(int flag, void *argp); }
+ SYS_GETFH = 161 // { int sys_getfh(const char *fname, fhandle_t *fhp); }
+ SYS_SYSARCH = 165 // { int sys_sysarch(int op, void *parms); }
+- SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, \
+- SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, \
++ SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, size_t nbyte, int pad, off_t offset); }
++ SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, size_t nbyte, int pad, off_t offset); }
+ SYS_SETGID = 181 // { int sys_setgid(gid_t gid); }
+ SYS_SETEGID = 182 // { int sys_setegid(gid_t egid); }
+ SYS_SETEUID = 183 // { int sys_seteuid(uid_t euid); }
+ SYS_PATHCONF = 191 // { long sys_pathconf(const char *path, int name); }
+ SYS_FPATHCONF = 192 // { long sys_fpathconf(int fd, int name); }
+ SYS_SWAPCTL = 193 // { int sys_swapctl(int cmd, const void *arg, int misc); }
+- SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, \
+- SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, \
+- SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, \
+- SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, \
+- SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, \
++ SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, struct rlimit *rlp); }
++ SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, const struct rlimit *rlp); }
++ SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); }
++ SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, int whence); }
++ SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, off_t length); }
+ SYS_FTRUNCATE = 201 // { int sys_ftruncate(int fd, int pad, off_t length); }
+- SYS___SYSCTL = 202 // { int sys___sysctl(const int *name, u_int namelen, \
++ SYS_SYSCTL = 202 // { int sys_sysctl(const int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); }
+ SYS_MLOCK = 203 // { int sys_mlock(const void *addr, size_t len); }
+ SYS_MUNLOCK = 204 // { int sys_munlock(const void *addr, size_t len); }
+ SYS_GETPGID = 207 // { pid_t sys_getpgid(pid_t pid); }
+- SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, \
++ SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, size_t len); }
+ SYS_SEMGET = 221 // { int sys_semget(key_t key, int nsems, int semflg); }
+ SYS_MSGGET = 225 // { int sys_msgget(key_t key, int msgflg); }
+- SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, \
+- SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, \
+- SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, \
++ SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
++ SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
++ SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, int shmflg); }
+ SYS_SHMDT = 230 // { int sys_shmdt(const void *shmaddr); }
+- SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, \
+- SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, \
++ SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, int inherit); }
++ SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, u_int nfds, int timeout); }
+ SYS_ISSETUGID = 253 // { int sys_issetugid(void); }
+ SYS_LCHOWN = 254 // { int sys_lchown(const char *path, uid_t uid, gid_t gid); }
+ SYS_GETSID = 255 // { pid_t sys_getsid(pid_t pid); }
+ SYS_MSYNC = 256 // { int sys_msync(void *addr, size_t len, int flags); }
+ SYS_PIPE = 263 // { int sys_pipe(int *fdp); }
+ SYS_FHOPEN = 264 // { int sys_fhopen(const fhandle_t *fhp, int flags); }
+- SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, \
+- SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, \
++ SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); }
++ SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); }
+ SYS_KQUEUE = 269 // { int sys_kqueue(void); }
+ SYS_MLOCKALL = 271 // { int sys_mlockall(int flags); }
+ SYS_MUNLOCKALL = 272 // { int sys_munlockall(void); }
+- SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, \
+- SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, \
+- SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, \
+- SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, \
+- SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, \
++ SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
++ SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, uid_t suid); }
++ SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
++ SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
++ SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); }
+ SYS_CLOSEFROM = 287 // { int sys_closefrom(int fd); }
+- SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, \
++ SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, struct sigaltstack *oss); }
+ SYS_SHMGET = 289 // { int sys_shmget(key_t key, size_t size, int shmflg); }
+- SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, \
+- SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, \
+- SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, \
+- SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, \
+- SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, \
++ SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, size_t nsops); }
++ SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, struct stat *sb); }
++ SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, union semun *arg); }
++ SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, struct shmid_ds *buf); }
++ SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, struct msqid_ds *buf); }
+ SYS_SCHED_YIELD = 298 // { int sys_sched_yield(void); }
+ SYS_GETTHRID = 299 // { pid_t sys_getthrid(void); }
+- SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, \
++ SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, int n); }
+ SYS___THREXIT = 302 // { void sys___threxit(pid_t *notdead); }
+- SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, \
++ SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, siginfo_t *info, const struct timespec *timeout); }
+ SYS___GETCWD = 304 // { int sys___getcwd(char *buf, size_t len); }
+- SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, \
++ SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, int64_t *oldfreq); }
+ SYS_SETRTABLE = 310 // { int sys_setrtable(int rtableid); }
+ SYS_GETRTABLE = 311 // { int sys_getrtable(void); }
+- SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, \
+- SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, \
+- SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, \
+- SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, \
+- SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, \
+- SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, \
+- SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, \
+- SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, \
+- SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, \
+- SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, \
+- SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, \
+- SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, \
++ SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, int amode, int flag); }
++ SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, mode_t mode, int flag); }
++ SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, uid_t uid, gid_t gid, int flag); }
++ SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, const char *path2, int flag); }
++ SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, mode_t mode); }
++ SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, mode_t mode); }
++ SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, mode_t mode, dev_t dev); }
++ SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, ... mode_t mode); }
++ SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, char *buf, size_t count); }
++ SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, int tofd, const char *to); }
++ SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, const char *link); }
++ SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, int flag); }
+ SYS___SET_TCB = 329 // { void sys___set_tcb(void *tcb); }
+ SYS___GET_TCB = 330 // { void *sys___get_tcb(void); }
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go
+index 32653e53..33d1dc54 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go
+@@ -1,5 +1,5 @@
+-// mksysnum_openbsd.pl
+-// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
++// go run mksysnum.go https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build arm,openbsd
+
+@@ -9,35 +9,35 @@ const (
+ SYS_EXIT = 1 // { void sys_exit(int rval); }
+ SYS_FORK = 2 // { int sys_fork(void); }
+ SYS_READ = 3 // { ssize_t sys_read(int fd, void *buf, size_t nbyte); }
+- SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, \
+- SYS_OPEN = 5 // { int sys_open(const char *path, \
++ SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, size_t nbyte); }
++ SYS_OPEN = 5 // { int sys_open(const char *path, int flags, ... mode_t mode); }
+ SYS_CLOSE = 6 // { int sys_close(int fd); }
+ SYS_GETENTROPY = 7 // { int sys_getentropy(void *buf, size_t nbyte); }
+- SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, \
++ SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, size_t psize); }
+ SYS_LINK = 9 // { int sys_link(const char *path, const char *link); }
+ SYS_UNLINK = 10 // { int sys_unlink(const char *path); }
+- SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, \
++ SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, int options, struct rusage *rusage); }
+ SYS_CHDIR = 12 // { int sys_chdir(const char *path); }
+ SYS_FCHDIR = 13 // { int sys_fchdir(int fd); }
+- SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, \
++ SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, dev_t dev); }
+ SYS_CHMOD = 15 // { int sys_chmod(const char *path, mode_t mode); }
+- SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, \
++ SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, gid_t gid); }
+ SYS_OBREAK = 17 // { int sys_obreak(char *nsize); } break
+ SYS_GETDTABLECOUNT = 18 // { int sys_getdtablecount(void); }
+- SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, \
++ SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, struct rusage *rusage); }
+ SYS_GETPID = 20 // { pid_t sys_getpid(void); }
+- SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, \
++ SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, int flags, void *data); }
+ SYS_UNMOUNT = 22 // { int sys_unmount(const char *path, int flags); }
+ SYS_SETUID = 23 // { int sys_setuid(uid_t uid); }
+ SYS_GETUID = 24 // { uid_t sys_getuid(void); }
+ SYS_GETEUID = 25 // { uid_t sys_geteuid(void); }
+- SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, \
+- SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, \
+- SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, \
+- SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, \
+- SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, \
+- SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, \
+- SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, \
++ SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, int data); }
++ SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, int flags); }
++ SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, const struct msghdr *msg, int flags); }
++ SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, int flags, struct sockaddr *from, socklen_t *fromlenaddr); }
++ SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, socklen_t *anamelen); }
++ SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, socklen_t *alen); }
++ SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, socklen_t *alen); }
+ SYS_ACCESS = 33 // { int sys_access(const char *path, int amode); }
+ SYS_CHFLAGS = 34 // { int sys_chflags(const char *path, u_int flags); }
+ SYS_FCHFLAGS = 35 // { int sys_fchflags(int fd, u_int flags); }
+@@ -46,77 +46,81 @@ const (
+ SYS_GETPPID = 39 // { pid_t sys_getppid(void); }
+ SYS_LSTAT = 40 // { int sys_lstat(const char *path, struct stat *ub); }
+ SYS_DUP = 41 // { int sys_dup(int fd); }
+- SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, \
++ SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, struct stat *buf, int flag); }
+ SYS_GETEGID = 43 // { gid_t sys_getegid(void); }
+- SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, \
+- SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, \
+- SYS_SIGACTION = 46 // { int sys_sigaction(int signum, \
++ SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, u_long offset, u_int scale); }
++ SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, int facs, pid_t pid); }
++ SYS_SIGACTION = 46 // { int sys_sigaction(int signum, const struct sigaction *nsa, struct sigaction *osa); }
+ SYS_GETGID = 47 // { gid_t sys_getgid(void); }
+ SYS_SIGPROCMASK = 48 // { int sys_sigprocmask(int how, sigset_t mask); }
+- SYS_GETLOGIN = 49 // { int sys_getlogin(char *namebuf, u_int namelen); }
+ SYS_SETLOGIN = 50 // { int sys_setlogin(const char *namebuf); }
+ SYS_ACCT = 51 // { int sys_acct(const char *path); }
+ SYS_SIGPENDING = 52 // { int sys_sigpending(void); }
+ SYS_FSTAT = 53 // { int sys_fstat(int fd, struct stat *sb); }
+- SYS_IOCTL = 54 // { int sys_ioctl(int fd, \
++ SYS_IOCTL = 54 // { int sys_ioctl(int fd, u_long com, ... void *data); }
+ SYS_REBOOT = 55 // { int sys_reboot(int opt); }
+ SYS_REVOKE = 56 // { int sys_revoke(const char *path); }
+- SYS_SYMLINK = 57 // { int sys_symlink(const char *path, \
+- SYS_READLINK = 58 // { ssize_t sys_readlink(const char *path, \
+- SYS_EXECVE = 59 // { int sys_execve(const char *path, \
++ SYS_SYMLINK = 57 // { int sys_symlink(const char *path, const char *link); }
++ SYS_READLINK = 58 // { ssize_t sys_readlink(const char *path, char *buf, size_t count); }
++ SYS_EXECVE = 59 // { int sys_execve(const char *path, char * const *argp, char * const *envp); }
+ SYS_UMASK = 60 // { mode_t sys_umask(mode_t newmask); }
+ SYS_CHROOT = 61 // { int sys_chroot(const char *path); }
+- SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, \
+- SYS_STATFS = 63 // { int sys_statfs(const char *path, \
++ SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, int flags); }
++ SYS_STATFS = 63 // { int sys_statfs(const char *path, struct statfs *buf); }
+ SYS_FSTATFS = 64 // { int sys_fstatfs(int fd, struct statfs *buf); }
+- SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, \
++ SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, struct statfs *buf); }
+ SYS_VFORK = 66 // { int sys_vfork(void); }
+- SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, \
+- SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, \
+- SYS_SETITIMER = 69 // { int sys_setitimer(int which, \
+- SYS_GETITIMER = 70 // { int sys_getitimer(int which, \
+- SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, \
+- SYS_KEVENT = 72 // { int sys_kevent(int fd, \
++ SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, struct timezone *tzp); }
++ SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, const struct timezone *tzp); }
++ SYS_SETITIMER = 69 // { int sys_setitimer(int which, const struct itimerval *itv, struct itimerval *oitv); }
++ SYS_GETITIMER = 70 // { int sys_getitimer(int which, struct itimerval *itv); }
++ SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
++ SYS_KEVENT = 72 // { int sys_kevent(int fd, const struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
+ SYS_MUNMAP = 73 // { int sys_munmap(void *addr, size_t len); }
+- SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, \
+- SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, \
+- SYS_UTIMES = 76 // { int sys_utimes(const char *path, \
+- SYS_FUTIMES = 77 // { int sys_futimes(int fd, \
+- SYS_MINCORE = 78 // { int sys_mincore(void *addr, size_t len, \
+- SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, \
+- SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, \
++ SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, int prot); }
++ SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, int behav); }
++ SYS_UTIMES = 76 // { int sys_utimes(const char *path, const struct timeval *tptr); }
++ SYS_FUTIMES = 77 // { int sys_futimes(int fd, const struct timeval *tptr); }
++ SYS_MINCORE = 78 // { int sys_mincore(void *addr, size_t len, char *vec); }
++ SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, gid_t *gidset); }
++ SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, const gid_t *gidset); }
+ SYS_GETPGRP = 81 // { int sys_getpgrp(void); }
+ SYS_SETPGID = 82 // { int sys_setpgid(pid_t pid, pid_t pgid); }
+- SYS_SENDSYSLOG = 83 // { int sys_sendsyslog(const void *buf, size_t nbyte); }
+- SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, \
+- SYS_FUTIMENS = 85 // { int sys_futimens(int fd, \
+- SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, \
+- SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, \
+- SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, \
++ SYS_FUTEX = 83 // { int sys_futex(uint32_t *f, int op, int val, const struct timespec *timeout, uint32_t *g); }
++ SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, const struct timespec *times, int flag); }
++ SYS_FUTIMENS = 85 // { int sys_futimens(int fd, const struct timespec *times); }
++ SYS_KBIND = 86 // { int sys_kbind(const struct __kbind *param, size_t psize, int64_t proc_cookie); }
++ SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, struct timespec *tp); }
++ SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, const struct timespec *tp); }
++ SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, struct timespec *tp); }
+ SYS_DUP2 = 90 // { int sys_dup2(int from, int to); }
+- SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, \
++ SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
+ SYS_FCNTL = 92 // { int sys_fcntl(int fd, int cmd, ... void *arg); }
+- SYS_ACCEPT4 = 93 // { int sys_accept4(int s, struct sockaddr *name, \
+- SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, \
++ SYS_ACCEPT4 = 93 // { int sys_accept4(int s, struct sockaddr *name, socklen_t *anamelen, int flags); }
++ SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, clockid_t clock_id, const struct timespec *tp, void *lock, const int *abort); }
+ SYS_FSYNC = 95 // { int sys_fsync(int fd); }
+ SYS_SETPRIORITY = 96 // { int sys_setpriority(int which, id_t who, int prio); }
+ SYS_SOCKET = 97 // { int sys_socket(int domain, int type, int protocol); }
+- SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, \
++ SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, socklen_t namelen); }
+ SYS_GETDENTS = 99 // { int sys_getdents(int fd, void *buf, size_t buflen); }
+ SYS_GETPRIORITY = 100 // { int sys_getpriority(int which, id_t who); }
+ SYS_PIPE2 = 101 // { int sys_pipe2(int *fdp, int flags); }
+ SYS_DUP3 = 102 // { int sys_dup3(int from, int to, int flags); }
+ SYS_SIGRETURN = 103 // { int sys_sigreturn(struct sigcontext *sigcntxp); }
+- SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, \
+- SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, \
++ SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, socklen_t namelen); }
++ SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, const void *val, socklen_t valsize); }
+ SYS_LISTEN = 106 // { int sys_listen(int s, int backlog); }
+- SYS_CHFLAGSAT = 107 // { int sys_chflagsat(int fd, const char *path, \
+- SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, \
+- SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, \
++ SYS_CHFLAGSAT = 107 // { int sys_chflagsat(int fd, const char *path, u_int flags, int atflags); }
++ SYS_PLEDGE = 108 // { int sys_pledge(const char *promises, const char *execpromises); }
++ SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *mask); }
++ SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *mask); }
+ SYS_SIGSUSPEND = 111 // { int sys_sigsuspend(int mask); }
+- SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, \
+- SYS_READV = 120 // { ssize_t sys_readv(int fd, \
+- SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, \
++ SYS_SENDSYSLOG = 112 // { int sys_sendsyslog(const char *buf, size_t nbyte, int flags); }
++ SYS_UNVEIL = 114 // { int sys_unveil(const char *path, const char *permissions); }
++ SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, void *val, socklen_t *avalsize); }
++ SYS_THRKILL = 119 // { int sys_thrkill(pid_t tid, int signum, void *tcb); }
++ SYS_READV = 120 // { ssize_t sys_readv(int fd, const struct iovec *iovp, int iovcnt); }
++ SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, const struct iovec *iovp, int iovcnt); }
+ SYS_KILL = 122 // { int sys_kill(int pid, int signum); }
+ SYS_FCHOWN = 123 // { int sys_fchown(int fd, uid_t uid, gid_t gid); }
+ SYS_FCHMOD = 124 // { int sys_fchmod(int fd, mode_t mode); }
+@@ -125,89 +129,90 @@ const (
+ SYS_RENAME = 128 // { int sys_rename(const char *from, const char *to); }
+ SYS_FLOCK = 131 // { int sys_flock(int fd, int how); }
+ SYS_MKFIFO = 132 // { int sys_mkfifo(const char *path, mode_t mode); }
+- SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, \
++ SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, size_t len, int flags, const struct sockaddr *to, socklen_t tolen); }
+ SYS_SHUTDOWN = 134 // { int sys_shutdown(int s, int how); }
+- SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, \
++ SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, int protocol, int *rsv); }
+ SYS_MKDIR = 136 // { int sys_mkdir(const char *path, mode_t mode); }
+ SYS_RMDIR = 137 // { int sys_rmdir(const char *path); }
+- SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, \
++ SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, struct timeval *olddelta); }
++ SYS_GETLOGIN_R = 141 // { int sys_getlogin_r(char *namebuf, u_int namelen); }
+ SYS_SETSID = 147 // { int sys_setsid(void); }
+- SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, \
++ SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, int uid, char *arg); }
+ SYS_NFSSVC = 155 // { int sys_nfssvc(int flag, void *argp); }
+ SYS_GETFH = 161 // { int sys_getfh(const char *fname, fhandle_t *fhp); }
+ SYS_SYSARCH = 165 // { int sys_sysarch(int op, void *parms); }
+- SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, \
+- SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, \
++ SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, size_t nbyte, int pad, off_t offset); }
++ SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, size_t nbyte, int pad, off_t offset); }
+ SYS_SETGID = 181 // { int sys_setgid(gid_t gid); }
+ SYS_SETEGID = 182 // { int sys_setegid(gid_t egid); }
+ SYS_SETEUID = 183 // { int sys_seteuid(uid_t euid); }
+ SYS_PATHCONF = 191 // { long sys_pathconf(const char *path, int name); }
+ SYS_FPATHCONF = 192 // { long sys_fpathconf(int fd, int name); }
+ SYS_SWAPCTL = 193 // { int sys_swapctl(int cmd, const void *arg, int misc); }
+- SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, \
+- SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, \
+- SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, \
+- SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, \
+- SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, \
++ SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, struct rlimit *rlp); }
++ SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, const struct rlimit *rlp); }
++ SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); }
++ SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, int whence); }
++ SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, off_t length); }
+ SYS_FTRUNCATE = 201 // { int sys_ftruncate(int fd, int pad, off_t length); }
+- SYS___SYSCTL = 202 // { int sys___sysctl(const int *name, u_int namelen, \
++ SYS_SYSCTL = 202 // { int sys_sysctl(const int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); }
+ SYS_MLOCK = 203 // { int sys_mlock(const void *addr, size_t len); }
+ SYS_MUNLOCK = 204 // { int sys_munlock(const void *addr, size_t len); }
+ SYS_GETPGID = 207 // { pid_t sys_getpgid(pid_t pid); }
+- SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, \
++ SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, size_t len); }
+ SYS_SEMGET = 221 // { int sys_semget(key_t key, int nsems, int semflg); }
+ SYS_MSGGET = 225 // { int sys_msgget(key_t key, int msgflg); }
+- SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, \
+- SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, \
+- SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, \
++ SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
++ SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
++ SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, int shmflg); }
+ SYS_SHMDT = 230 // { int sys_shmdt(const void *shmaddr); }
+- SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, \
+- SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, \
++ SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, int inherit); }
++ SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, u_int nfds, int timeout); }
+ SYS_ISSETUGID = 253 // { int sys_issetugid(void); }
+ SYS_LCHOWN = 254 // { int sys_lchown(const char *path, uid_t uid, gid_t gid); }
+ SYS_GETSID = 255 // { pid_t sys_getsid(pid_t pid); }
+ SYS_MSYNC = 256 // { int sys_msync(void *addr, size_t len, int flags); }
+ SYS_PIPE = 263 // { int sys_pipe(int *fdp); }
+ SYS_FHOPEN = 264 // { int sys_fhopen(const fhandle_t *fhp, int flags); }
+- SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, \
+- SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, \
++ SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); }
++ SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); }
+ SYS_KQUEUE = 269 // { int sys_kqueue(void); }
+ SYS_MLOCKALL = 271 // { int sys_mlockall(int flags); }
+ SYS_MUNLOCKALL = 272 // { int sys_munlockall(void); }
+- SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, \
+- SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, \
+- SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, \
+- SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, \
+- SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, \
++ SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
++ SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, uid_t suid); }
++ SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
++ SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
++ SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); }
+ SYS_CLOSEFROM = 287 // { int sys_closefrom(int fd); }
+- SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, \
++ SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, struct sigaltstack *oss); }
+ SYS_SHMGET = 289 // { int sys_shmget(key_t key, size_t size, int shmflg); }
+- SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, \
+- SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, \
+- SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, \
+- SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, \
+- SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, \
++ SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, size_t nsops); }
++ SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, struct stat *sb); }
++ SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, union semun *arg); }
++ SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, struct shmid_ds *buf); }
++ SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, struct msqid_ds *buf); }
+ SYS_SCHED_YIELD = 298 // { int sys_sched_yield(void); }
+ SYS_GETTHRID = 299 // { pid_t sys_getthrid(void); }
+- SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, \
++ SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, int n); }
+ SYS___THREXIT = 302 // { void sys___threxit(pid_t *notdead); }
+- SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, \
++ SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, siginfo_t *info, const struct timespec *timeout); }
+ SYS___GETCWD = 304 // { int sys___getcwd(char *buf, size_t len); }
+- SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, \
++ SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, int64_t *oldfreq); }
+ SYS_SETRTABLE = 310 // { int sys_setrtable(int rtableid); }
+ SYS_GETRTABLE = 311 // { int sys_getrtable(void); }
+- SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, \
+- SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, \
+- SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, \
+- SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, \
+- SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, \
+- SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, \
+- SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, \
+- SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, \
+- SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, \
+- SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, \
+- SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, \
+- SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, \
++ SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, int amode, int flag); }
++ SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, mode_t mode, int flag); }
++ SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, uid_t uid, gid_t gid, int flag); }
++ SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, const char *path2, int flag); }
++ SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, mode_t mode); }
++ SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, mode_t mode); }
++ SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, mode_t mode, dev_t dev); }
++ SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, ... mode_t mode); }
++ SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, char *buf, size_t count); }
++ SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, int tofd, const char *to); }
++ SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, const char *link); }
++ SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, int flag); }
+ SYS___SET_TCB = 329 // { void sys___set_tcb(void *tcb); }
+ SYS___GET_TCB = 330 // { void *sys___get_tcb(void); }
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go
+similarity index 67%
+copy from vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go
+copy to vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go
+index 32653e53..fe2b689b 100644
+--- a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go
++++ b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go
+@@ -1,7 +1,7 @@
+-// mksysnum_openbsd.pl
+-// MACHINE GENERATED BY THE ABOVE COMMAND; DO NOT EDIT
++// go run mksysnum.go https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build arm,openbsd
++// +build arm64,openbsd
+
+ package unix
+
+@@ -9,35 +9,35 @@ const (
+ SYS_EXIT = 1 // { void sys_exit(int rval); }
+ SYS_FORK = 2 // { int sys_fork(void); }
+ SYS_READ = 3 // { ssize_t sys_read(int fd, void *buf, size_t nbyte); }
+- SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, \
+- SYS_OPEN = 5 // { int sys_open(const char *path, \
++ SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, size_t nbyte); }
++ SYS_OPEN = 5 // { int sys_open(const char *path, int flags, ... mode_t mode); }
+ SYS_CLOSE = 6 // { int sys_close(int fd); }
+ SYS_GETENTROPY = 7 // { int sys_getentropy(void *buf, size_t nbyte); }
+- SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, \
++ SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, size_t psize); }
+ SYS_LINK = 9 // { int sys_link(const char *path, const char *link); }
+ SYS_UNLINK = 10 // { int sys_unlink(const char *path); }
+- SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, \
++ SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, int options, struct rusage *rusage); }
+ SYS_CHDIR = 12 // { int sys_chdir(const char *path); }
+ SYS_FCHDIR = 13 // { int sys_fchdir(int fd); }
+- SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, \
++ SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, dev_t dev); }
+ SYS_CHMOD = 15 // { int sys_chmod(const char *path, mode_t mode); }
+- SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, \
++ SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, gid_t gid); }
+ SYS_OBREAK = 17 // { int sys_obreak(char *nsize); } break
+ SYS_GETDTABLECOUNT = 18 // { int sys_getdtablecount(void); }
+- SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, \
++ SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, struct rusage *rusage); }
+ SYS_GETPID = 20 // { pid_t sys_getpid(void); }
+- SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, \
++ SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, int flags, void *data); }
+ SYS_UNMOUNT = 22 // { int sys_unmount(const char *path, int flags); }
+ SYS_SETUID = 23 // { int sys_setuid(uid_t uid); }
+ SYS_GETUID = 24 // { uid_t sys_getuid(void); }
+ SYS_GETEUID = 25 // { uid_t sys_geteuid(void); }
+- SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, \
+- SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, \
+- SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, \
+- SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, \
+- SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, \
+- SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, \
+- SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, \
++ SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, int data); }
++ SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, int flags); }
++ SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, const struct msghdr *msg, int flags); }
++ SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, int flags, struct sockaddr *from, socklen_t *fromlenaddr); }
++ SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, socklen_t *anamelen); }
++ SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, socklen_t *alen); }
++ SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, socklen_t *alen); }
+ SYS_ACCESS = 33 // { int sys_access(const char *path, int amode); }
+ SYS_CHFLAGS = 34 // { int sys_chflags(const char *path, u_int flags); }
+ SYS_FCHFLAGS = 35 // { int sys_fchflags(int fd, u_int flags); }
+@@ -46,77 +46,80 @@ const (
+ SYS_GETPPID = 39 // { pid_t sys_getppid(void); }
+ SYS_LSTAT = 40 // { int sys_lstat(const char *path, struct stat *ub); }
+ SYS_DUP = 41 // { int sys_dup(int fd); }
+- SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, \
++ SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, struct stat *buf, int flag); }
+ SYS_GETEGID = 43 // { gid_t sys_getegid(void); }
+- SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, \
+- SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, \
+- SYS_SIGACTION = 46 // { int sys_sigaction(int signum, \
++ SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, u_long offset, u_int scale); }
++ SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, int facs, pid_t pid); }
++ SYS_SIGACTION = 46 // { int sys_sigaction(int signum, const struct sigaction *nsa, struct sigaction *osa); }
+ SYS_GETGID = 47 // { gid_t sys_getgid(void); }
+ SYS_SIGPROCMASK = 48 // { int sys_sigprocmask(int how, sigset_t mask); }
+- SYS_GETLOGIN = 49 // { int sys_getlogin(char *namebuf, u_int namelen); }
+ SYS_SETLOGIN = 50 // { int sys_setlogin(const char *namebuf); }
+ SYS_ACCT = 51 // { int sys_acct(const char *path); }
+ SYS_SIGPENDING = 52 // { int sys_sigpending(void); }
+ SYS_FSTAT = 53 // { int sys_fstat(int fd, struct stat *sb); }
+- SYS_IOCTL = 54 // { int sys_ioctl(int fd, \
++ SYS_IOCTL = 54 // { int sys_ioctl(int fd, u_long com, ... void *data); }
+ SYS_REBOOT = 55 // { int sys_reboot(int opt); }
+ SYS_REVOKE = 56 // { int sys_revoke(const char *path); }
+- SYS_SYMLINK = 57 // { int sys_symlink(const char *path, \
+- SYS_READLINK = 58 // { ssize_t sys_readlink(const char *path, \
+- SYS_EXECVE = 59 // { int sys_execve(const char *path, \
++ SYS_SYMLINK = 57 // { int sys_symlink(const char *path, const char *link); }
++ SYS_READLINK = 58 // { ssize_t sys_readlink(const char *path, char *buf, size_t count); }
++ SYS_EXECVE = 59 // { int sys_execve(const char *path, char * const *argp, char * const *envp); }
+ SYS_UMASK = 60 // { mode_t sys_umask(mode_t newmask); }
+ SYS_CHROOT = 61 // { int sys_chroot(const char *path); }
+- SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, \
+- SYS_STATFS = 63 // { int sys_statfs(const char *path, \
++ SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, int flags); }
++ SYS_STATFS = 63 // { int sys_statfs(const char *path, struct statfs *buf); }
+ SYS_FSTATFS = 64 // { int sys_fstatfs(int fd, struct statfs *buf); }
+- SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, \
++ SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, struct statfs *buf); }
+ SYS_VFORK = 66 // { int sys_vfork(void); }
+- SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, \
+- SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, \
+- SYS_SETITIMER = 69 // { int sys_setitimer(int which, \
+- SYS_GETITIMER = 70 // { int sys_getitimer(int which, \
+- SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, \
+- SYS_KEVENT = 72 // { int sys_kevent(int fd, \
++ SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, struct timezone *tzp); }
++ SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, const struct timezone *tzp); }
++ SYS_SETITIMER = 69 // { int sys_setitimer(int which, const struct itimerval *itv, struct itimerval *oitv); }
++ SYS_GETITIMER = 70 // { int sys_getitimer(int which, struct itimerval *itv); }
++ SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
++ SYS_KEVENT = 72 // { int sys_kevent(int fd, const struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); }
+ SYS_MUNMAP = 73 // { int sys_munmap(void *addr, size_t len); }
+- SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, \
+- SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, \
+- SYS_UTIMES = 76 // { int sys_utimes(const char *path, \
+- SYS_FUTIMES = 77 // { int sys_futimes(int fd, \
+- SYS_MINCORE = 78 // { int sys_mincore(void *addr, size_t len, \
+- SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, \
+- SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, \
++ SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, int prot); }
++ SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, int behav); }
++ SYS_UTIMES = 76 // { int sys_utimes(const char *path, const struct timeval *tptr); }
++ SYS_FUTIMES = 77 // { int sys_futimes(int fd, const struct timeval *tptr); }
++ SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, gid_t *gidset); }
++ SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, const gid_t *gidset); }
+ SYS_GETPGRP = 81 // { int sys_getpgrp(void); }
+ SYS_SETPGID = 82 // { int sys_setpgid(pid_t pid, pid_t pgid); }
+- SYS_SENDSYSLOG = 83 // { int sys_sendsyslog(const void *buf, size_t nbyte); }
+- SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, \
+- SYS_FUTIMENS = 85 // { int sys_futimens(int fd, \
+- SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, \
+- SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, \
+- SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, \
++ SYS_FUTEX = 83 // { int sys_futex(uint32_t *f, int op, int val, const struct timespec *timeout, uint32_t *g); }
++ SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, const struct timespec *times, int flag); }
++ SYS_FUTIMENS = 85 // { int sys_futimens(int fd, const struct timespec *times); }
++ SYS_KBIND = 86 // { int sys_kbind(const struct __kbind *param, size_t psize, int64_t proc_cookie); }
++ SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, struct timespec *tp); }
++ SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, const struct timespec *tp); }
++ SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, struct timespec *tp); }
+ SYS_DUP2 = 90 // { int sys_dup2(int from, int to); }
+- SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, \
++ SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
+ SYS_FCNTL = 92 // { int sys_fcntl(int fd, int cmd, ... void *arg); }
+- SYS_ACCEPT4 = 93 // { int sys_accept4(int s, struct sockaddr *name, \
+- SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, \
++ SYS_ACCEPT4 = 93 // { int sys_accept4(int s, struct sockaddr *name, socklen_t *anamelen, int flags); }
++ SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, clockid_t clock_id, const struct timespec *tp, void *lock, const int *abort); }
+ SYS_FSYNC = 95 // { int sys_fsync(int fd); }
+ SYS_SETPRIORITY = 96 // { int sys_setpriority(int which, id_t who, int prio); }
+ SYS_SOCKET = 97 // { int sys_socket(int domain, int type, int protocol); }
+- SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, \
++ SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, socklen_t namelen); }
+ SYS_GETDENTS = 99 // { int sys_getdents(int fd, void *buf, size_t buflen); }
+ SYS_GETPRIORITY = 100 // { int sys_getpriority(int which, id_t who); }
+ SYS_PIPE2 = 101 // { int sys_pipe2(int *fdp, int flags); }
+ SYS_DUP3 = 102 // { int sys_dup3(int from, int to, int flags); }
+ SYS_SIGRETURN = 103 // { int sys_sigreturn(struct sigcontext *sigcntxp); }
+- SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, \
+- SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, \
++ SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, socklen_t namelen); }
++ SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, const void *val, socklen_t valsize); }
+ SYS_LISTEN = 106 // { int sys_listen(int s, int backlog); }
+- SYS_CHFLAGSAT = 107 // { int sys_chflagsat(int fd, const char *path, \
+- SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, \
+- SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, \
++ SYS_CHFLAGSAT = 107 // { int sys_chflagsat(int fd, const char *path, u_int flags, int atflags); }
++ SYS_PLEDGE = 108 // { int sys_pledge(const char *promises, const char *execpromises); }
++ SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *mask); }
++ SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *mask); }
+ SYS_SIGSUSPEND = 111 // { int sys_sigsuspend(int mask); }
+- SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, \
+- SYS_READV = 120 // { ssize_t sys_readv(int fd, \
+- SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, \
++ SYS_SENDSYSLOG = 112 // { int sys_sendsyslog(const char *buf, size_t nbyte, int flags); }
++ SYS_UNVEIL = 114 // { int sys_unveil(const char *path, const char *permissions); }
++ SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, void *val, socklen_t *avalsize); }
++ SYS_THRKILL = 119 // { int sys_thrkill(pid_t tid, int signum, void *tcb); }
++ SYS_READV = 120 // { ssize_t sys_readv(int fd, const struct iovec *iovp, int iovcnt); }
++ SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, const struct iovec *iovp, int iovcnt); }
+ SYS_KILL = 122 // { int sys_kill(int pid, int signum); }
+ SYS_FCHOWN = 123 // { int sys_fchown(int fd, uid_t uid, gid_t gid); }
+ SYS_FCHMOD = 124 // { int sys_fchmod(int fd, mode_t mode); }
+@@ -125,89 +128,90 @@ const (
+ SYS_RENAME = 128 // { int sys_rename(const char *from, const char *to); }
+ SYS_FLOCK = 131 // { int sys_flock(int fd, int how); }
+ SYS_MKFIFO = 132 // { int sys_mkfifo(const char *path, mode_t mode); }
+- SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, \
++ SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, size_t len, int flags, const struct sockaddr *to, socklen_t tolen); }
+ SYS_SHUTDOWN = 134 // { int sys_shutdown(int s, int how); }
+- SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, \
++ SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, int protocol, int *rsv); }
+ SYS_MKDIR = 136 // { int sys_mkdir(const char *path, mode_t mode); }
+ SYS_RMDIR = 137 // { int sys_rmdir(const char *path); }
+- SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, \
++ SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, struct timeval *olddelta); }
++ SYS_GETLOGIN_R = 141 // { int sys_getlogin_r(char *namebuf, u_int namelen); }
+ SYS_SETSID = 147 // { int sys_setsid(void); }
+- SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, \
++ SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, int uid, char *arg); }
+ SYS_NFSSVC = 155 // { int sys_nfssvc(int flag, void *argp); }
+ SYS_GETFH = 161 // { int sys_getfh(const char *fname, fhandle_t *fhp); }
+ SYS_SYSARCH = 165 // { int sys_sysarch(int op, void *parms); }
+- SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, \
+- SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, \
++ SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, size_t nbyte, int pad, off_t offset); }
++ SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, size_t nbyte, int pad, off_t offset); }
+ SYS_SETGID = 181 // { int sys_setgid(gid_t gid); }
+ SYS_SETEGID = 182 // { int sys_setegid(gid_t egid); }
+ SYS_SETEUID = 183 // { int sys_seteuid(uid_t euid); }
+ SYS_PATHCONF = 191 // { long sys_pathconf(const char *path, int name); }
+ SYS_FPATHCONF = 192 // { long sys_fpathconf(int fd, int name); }
+ SYS_SWAPCTL = 193 // { int sys_swapctl(int cmd, const void *arg, int misc); }
+- SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, \
+- SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, \
+- SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, \
+- SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, \
+- SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, \
++ SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, struct rlimit *rlp); }
++ SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, const struct rlimit *rlp); }
++ SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); }
++ SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, int whence); }
++ SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, off_t length); }
+ SYS_FTRUNCATE = 201 // { int sys_ftruncate(int fd, int pad, off_t length); }
+- SYS___SYSCTL = 202 // { int sys___sysctl(const int *name, u_int namelen, \
++ SYS_SYSCTL = 202 // { int sys_sysctl(const int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); }
+ SYS_MLOCK = 203 // { int sys_mlock(const void *addr, size_t len); }
+ SYS_MUNLOCK = 204 // { int sys_munlock(const void *addr, size_t len); }
+ SYS_GETPGID = 207 // { pid_t sys_getpgid(pid_t pid); }
+- SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, \
++ SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, size_t len); }
+ SYS_SEMGET = 221 // { int sys_semget(key_t key, int nsems, int semflg); }
+ SYS_MSGGET = 225 // { int sys_msgget(key_t key, int msgflg); }
+- SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, \
+- SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, \
+- SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, \
++ SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
++ SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
++ SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, int shmflg); }
+ SYS_SHMDT = 230 // { int sys_shmdt(const void *shmaddr); }
+- SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, \
+- SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, \
++ SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, int inherit); }
++ SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, u_int nfds, int timeout); }
+ SYS_ISSETUGID = 253 // { int sys_issetugid(void); }
+ SYS_LCHOWN = 254 // { int sys_lchown(const char *path, uid_t uid, gid_t gid); }
+ SYS_GETSID = 255 // { pid_t sys_getsid(pid_t pid); }
+ SYS_MSYNC = 256 // { int sys_msync(void *addr, size_t len, int flags); }
+ SYS_PIPE = 263 // { int sys_pipe(int *fdp); }
+ SYS_FHOPEN = 264 // { int sys_fhopen(const fhandle_t *fhp, int flags); }
+- SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, \
+- SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, \
++ SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); }
++ SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); }
+ SYS_KQUEUE = 269 // { int sys_kqueue(void); }
+ SYS_MLOCKALL = 271 // { int sys_mlockall(int flags); }
+ SYS_MUNLOCKALL = 272 // { int sys_munlockall(void); }
+- SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, \
+- SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, \
+- SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, \
+- SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, \
+- SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, \
++ SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
++ SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, uid_t suid); }
++ SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
++ SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
++ SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); }
+ SYS_CLOSEFROM = 287 // { int sys_closefrom(int fd); }
+- SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, \
++ SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, struct sigaltstack *oss); }
+ SYS_SHMGET = 289 // { int sys_shmget(key_t key, size_t size, int shmflg); }
+- SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, \
+- SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, \
+- SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, \
+- SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, \
+- SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, \
++ SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, size_t nsops); }
++ SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, struct stat *sb); }
++ SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, union semun *arg); }
++ SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, struct shmid_ds *buf); }
++ SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, struct msqid_ds *buf); }
+ SYS_SCHED_YIELD = 298 // { int sys_sched_yield(void); }
+ SYS_GETTHRID = 299 // { pid_t sys_getthrid(void); }
+- SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, \
++ SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, int n); }
+ SYS___THREXIT = 302 // { void sys___threxit(pid_t *notdead); }
+- SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, \
++ SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, siginfo_t *info, const struct timespec *timeout); }
+ SYS___GETCWD = 304 // { int sys___getcwd(char *buf, size_t len); }
+- SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, \
++ SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, int64_t *oldfreq); }
+ SYS_SETRTABLE = 310 // { int sys_setrtable(int rtableid); }
+ SYS_GETRTABLE = 311 // { int sys_getrtable(void); }
+- SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, \
+- SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, \
+- SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, \
+- SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, \
+- SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, \
+- SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, \
+- SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, \
+- SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, \
+- SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, \
+- SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, \
+- SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, \
+- SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, \
++ SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, int amode, int flag); }
++ SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, mode_t mode, int flag); }
++ SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, uid_t uid, gid_t gid, int flag); }
++ SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, const char *path2, int flag); }
++ SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, mode_t mode); }
++ SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, mode_t mode); }
++ SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, mode_t mode, dev_t dev); }
++ SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, ... mode_t mode); }
++ SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, char *buf, size_t count); }
++ SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, int tofd, const char *to); }
++ SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, const char *link); }
++ SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, int flag); }
+ SYS___SET_TCB = 329 // { void sys___set_tcb(void *tcb); }
+ SYS___GET_TCB = 330 // { void *sys___get_tcb(void); }
+ )
+diff --git a/vendor/golang.org/x/sys/unix/zsysnum_solaris_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_solaris_amd64.go
+deleted file mode 100644
+index c7086598..00000000
+--- a/vendor/golang.org/x/sys/unix/zsysnum_solaris_amd64.go
++++ /dev/null
+@@ -1,13 +0,0 @@
+-// Copyright 2014 The Go Authors. All rights reserved.
+-// Use of this source code is governed by a BSD-style
+-// license that can be found in the LICENSE file.
+-
+-// +build amd64,solaris
+-
+-package unix
+-
+-// TODO(aram): remove these before Go 1.3.
+-const (
+- SYS_EXECVE = 59
+- SYS_FCNTL = 62
+-)
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go b/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go
+new file mode 100644
+index 00000000..2c1f815e
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go
+@@ -0,0 +1,352 @@
++// cgo -godefs types_aix.go | go run mkpost.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build ppc,aix
++
++package unix
++
++const (
++ SizeofPtr = 0x4
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x4
++ SizeofLongLong = 0x8
++ PathMax = 0x3ff
++)
++
++type (
++ _C_short int16
++ _C_int int32
++ _C_long int32
++ _C_long_long int64
++)
++
++type off64 int64
++type off int32
++type Mode_t uint32
++
++type Timespec struct {
++ Sec int32
++ Nsec int32
++}
++
++type Timeval struct {
++ Sec int32
++ Usec int32
++}
++
++type Timeval32 struct {
++ Sec int32
++ Usec int32
++}
++
++type Timex struct{}
++
++type Time_t int32
++
++type Tms struct{}
++
++type Utimbuf struct {
++ Actime int32
++ Modtime int32
++}
++
++type Timezone struct {
++ Minuteswest int32
++ Dsttime int32
++}
++
++type Rusage struct {
++ Utime Timeval
++ Stime Timeval
++ Maxrss int32
++ Ixrss int32
++ Idrss int32
++ Isrss int32
++ Minflt int32
++ Majflt int32
++ Nswap int32
++ Inblock int32
++ Oublock int32
++ Msgsnd int32
++ Msgrcv int32
++ Nsignals int32
++ Nvcsw int32
++ Nivcsw int32
++}
++
++type Rlimit struct {
++ Cur uint64
++ Max uint64
++}
++
++type Pid_t int32
++
++type _Gid_t uint32
++
++type dev_t uint32
++
++type Stat_t struct {
++ Dev uint32
++ Ino uint32
++ Mode uint32
++ Nlink int16
++ Flag uint16
++ Uid uint32
++ Gid uint32
++ Rdev uint32
++ Size int32
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Blksize int32
++ Blocks int32
++ Vfstype int32
++ Vfs uint32
++ Type uint32
++ Gen uint32
++ Reserved [9]uint32
++}
++
++type StatxTimestamp struct{}
++
++type Statx_t struct{}
++
++type Dirent struct {
++ Offset uint32
++ Ino uint32
++ Reclen uint16
++ Namlen uint16
++ Name [256]uint8
++}
++
++type RawSockaddrInet4 struct {
++ Len uint8
++ Family uint8
++ Port uint16
++ Addr [4]byte /* in_addr */
++ Zero [8]uint8
++}
++
++type RawSockaddrInet6 struct {
++ Len uint8
++ Family uint8
++ Port uint16
++ Flowinfo uint32
++ Addr [16]byte /* in6_addr */
++ Scope_id uint32
++}
++
++type RawSockaddrUnix struct {
++ Len uint8
++ Family uint8
++ Path [1023]uint8
++}
++
++type RawSockaddrDatalink struct {
++ Len uint8
++ Family uint8
++ Index uint16
++ Type uint8
++ Nlen uint8
++ Alen uint8
++ Slen uint8
++ Data [120]uint8
++}
++
++type RawSockaddr struct {
++ Len uint8
++ Family uint8
++ Data [14]uint8
++}
++
++type RawSockaddrAny struct {
++ Addr RawSockaddr
++ Pad [1012]uint8
++}
++
++type _Socklen uint32
++
++type Cmsghdr struct {
++ Len uint32
++ Level int32
++ Type int32
++}
++
++type ICMPv6Filter struct {
++ Filt [8]uint32
++}
++
++type Iovec struct {
++ Base *byte
++ Len uint32
++}
++
++type IPMreq struct {
++ Multiaddr [4]byte /* in_addr */
++ Interface [4]byte /* in_addr */
++}
++
++type IPv6Mreq struct {
++ Multiaddr [16]byte /* in6_addr */
++ Interface uint32
++}
++
++type IPv6MTUInfo struct {
++ Addr RawSockaddrInet6
++ Mtu uint32
++}
++
++type Linger struct {
++ Onoff int32
++ Linger int32
++}
++
++type Msghdr struct {
++ Name *byte
++ Namelen uint32
++ Iov *Iovec
++ Iovlen int32
++ Control *byte
++ Controllen uint32
++ Flags int32
++}
++
++const (
++ SizeofSockaddrInet4 = 0x10
++ SizeofSockaddrInet6 = 0x1c
++ SizeofSockaddrAny = 0x404
++ SizeofSockaddrUnix = 0x401
++ SizeofSockaddrDatalink = 0x80
++ SizeofLinger = 0x8
++ SizeofIPMreq = 0x8
++ SizeofIPv6Mreq = 0x14
++ SizeofIPv6MTUInfo = 0x20
++ SizeofMsghdr = 0x1c
++ SizeofCmsghdr = 0xc
++ SizeofICMPv6Filter = 0x20
++)
++
++const (
++ SizeofIfMsghdr = 0x10
++)
++
++type IfMsgHdr struct {
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ Addrlen uint8
++ _ [1]byte
++}
++
++type FdSet struct {
++ Bits [2048]int32
++}
++
++type Utsname struct {
++ Sysname [32]byte
++ Nodename [32]byte
++ Release [32]byte
++ Version [32]byte
++ Machine [32]byte
++}
++
++type Ustat_t struct{}
++
++type Sigset_t struct {
++ Losigs uint32
++ Hisigs uint32
++}
++
++const (
++ AT_FDCWD = -0x2
++ AT_REMOVEDIR = 0x1
++ AT_SYMLINK_NOFOLLOW = 0x1
++)
++
++type Termios struct {
++ Iflag uint32
++ Oflag uint32
++ Cflag uint32
++ Lflag uint32
++ Cc [16]uint8
++}
++
++type Termio struct {
++ Iflag uint16
++ Oflag uint16
++ Cflag uint16
++ Lflag uint16
++ Line uint8
++ Cc [8]uint8
++ _ [1]byte
++}
++
++type Winsize struct {
++ Row uint16
++ Col uint16
++ Xpixel uint16
++ Ypixel uint16
++}
++
++type PollFd struct {
++ Fd int32
++ Events uint16
++ Revents uint16
++}
++
++const (
++ POLLERR = 0x4000
++ POLLHUP = 0x2000
++ POLLIN = 0x1
++ POLLNVAL = 0x8000
++ POLLOUT = 0x2
++ POLLPRI = 0x4
++ POLLRDBAND = 0x20
++ POLLRDNORM = 0x10
++ POLLWRBAND = 0x40
++ POLLWRNORM = 0x2
++)
++
++type Flock_t struct {
++ Type int16
++ Whence int16
++ Sysid uint32
++ Pid int32
++ Vfs int32
++ Start int64
++ Len int64
++}
++
++type Fsid_t struct {
++ Val [2]uint32
++}
++type Fsid64_t struct {
++ Val [2]uint64
++}
++
++type Statfs_t struct {
++ Version int32
++ Type int32
++ Bsize uint32
++ Blocks uint32
++ Bfree uint32
++ Bavail uint32
++ Files uint32
++ Ffree uint32
++ Fsid Fsid_t
++ Vfstype int32
++ Fsize uint32
++ Vfsnumber int32
++ Vfsoff int32
++ Vfslen int32
++ Vfsvers int32
++ Fname [32]uint8
++ Fpack [32]uint8
++ Name_max int32
++}
++
++const RNDGETENTCNT = 0x80045200
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go b/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go
+new file mode 100644
+index 00000000..b4a069ec
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go
+@@ -0,0 +1,356 @@
++// cgo -godefs types_aix.go | go run mkpost.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build ppc64,aix
++
++package unix
++
++const (
++ SizeofPtr = 0x8
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x8
++ SizeofLongLong = 0x8
++ PathMax = 0x3ff
++)
++
++type (
++ _C_short int16
++ _C_int int32
++ _C_long int64
++ _C_long_long int64
++)
++
++type off64 int64
++type off int64
++type Mode_t uint32
++
++type Timespec struct {
++ Sec int64
++ Nsec int64
++}
++
++type Timeval struct {
++ Sec int64
++ Usec int32
++ _ [4]byte
++}
++
++type Timeval32 struct {
++ Sec int32
++ Usec int32
++}
++
++type Timex struct{}
++
++type Time_t int64
++
++type Tms struct{}
++
++type Utimbuf struct {
++ Actime int64
++ Modtime int64
++}
++
++type Timezone struct {
++ Minuteswest int32
++ Dsttime int32
++}
++
++type Rusage struct {
++ Utime Timeval
++ Stime Timeval
++ Maxrss int64
++ Ixrss int64
++ Idrss int64
++ Isrss int64
++ Minflt int64
++ Majflt int64
++ Nswap int64
++ Inblock int64
++ Oublock int64
++ Msgsnd int64
++ Msgrcv int64
++ Nsignals int64
++ Nvcsw int64
++ Nivcsw int64
++}
++
++type Rlimit struct {
++ Cur uint64
++ Max uint64
++}
++
++type Pid_t int32
++
++type _Gid_t uint32
++
++type dev_t uint64
++
++type Stat_t struct {
++ Dev uint64
++ Ino uint64
++ Mode uint32
++ Nlink int16
++ Flag uint16
++ Uid uint32
++ Gid uint32
++ Rdev uint64
++ Ssize int32
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Blksize int64
++ Blocks int64
++ Vfstype int32
++ Vfs uint32
++ Type uint32
++ Gen uint32
++ Reserved [9]uint32
++ Padto_ll uint32
++ Size int64
++}
++
++type StatxTimestamp struct{}
++
++type Statx_t struct{}
++
++type Dirent struct {
++ Offset uint64
++ Ino uint64
++ Reclen uint16
++ Namlen uint16
++ Name [256]uint8
++ _ [4]byte
++}
++
++type RawSockaddrInet4 struct {
++ Len uint8
++ Family uint8
++ Port uint16
++ Addr [4]byte /* in_addr */
++ Zero [8]uint8
++}
++
++type RawSockaddrInet6 struct {
++ Len uint8
++ Family uint8
++ Port uint16
++ Flowinfo uint32
++ Addr [16]byte /* in6_addr */
++ Scope_id uint32
++}
++
++type RawSockaddrUnix struct {
++ Len uint8
++ Family uint8
++ Path [1023]uint8
++}
++
++type RawSockaddrDatalink struct {
++ Len uint8
++ Family uint8
++ Index uint16
++ Type uint8
++ Nlen uint8
++ Alen uint8
++ Slen uint8
++ Data [120]uint8
++}
++
++type RawSockaddr struct {
++ Len uint8
++ Family uint8
++ Data [14]uint8
++}
++
++type RawSockaddrAny struct {
++ Addr RawSockaddr
++ Pad [1012]uint8
++}
++
++type _Socklen uint32
++
++type Cmsghdr struct {
++ Len uint32
++ Level int32
++ Type int32
++}
++
++type ICMPv6Filter struct {
++ Filt [8]uint32
++}
++
++type Iovec struct {
++ Base *byte
++ Len uint64
++}
++
++type IPMreq struct {
++ Multiaddr [4]byte /* in_addr */
++ Interface [4]byte /* in_addr */
++}
++
++type IPv6Mreq struct {
++ Multiaddr [16]byte /* in6_addr */
++ Interface uint32
++}
++
++type IPv6MTUInfo struct {
++ Addr RawSockaddrInet6
++ Mtu uint32
++}
++
++type Linger struct {
++ Onoff int32
++ Linger int32
++}
++
++type Msghdr struct {
++ Name *byte
++ Namelen uint32
++ Iov *Iovec
++ Iovlen int32
++ Control *byte
++ Controllen uint32
++ Flags int32
++}
++
++const (
++ SizeofSockaddrInet4 = 0x10
++ SizeofSockaddrInet6 = 0x1c
++ SizeofSockaddrAny = 0x404
++ SizeofSockaddrUnix = 0x401
++ SizeofSockaddrDatalink = 0x80
++ SizeofLinger = 0x8
++ SizeofIPMreq = 0x8
++ SizeofIPv6Mreq = 0x14
++ SizeofIPv6MTUInfo = 0x20
++ SizeofMsghdr = 0x30
++ SizeofCmsghdr = 0xc
++ SizeofICMPv6Filter = 0x20
++)
++
++const (
++ SizeofIfMsghdr = 0x10
++)
++
++type IfMsgHdr struct {
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ Addrlen uint8
++ _ [1]byte
++}
++
++type FdSet struct {
++ Bits [1024]int64
++}
++
++type Utsname struct {
++ Sysname [32]byte
++ Nodename [32]byte
++ Release [32]byte
++ Version [32]byte
++ Machine [32]byte
++}
++
++type Ustat_t struct{}
++
++type Sigset_t struct {
++ Set [4]uint64
++}
++
++const (
++ AT_FDCWD = -0x2
++ AT_REMOVEDIR = 0x1
++ AT_SYMLINK_NOFOLLOW = 0x1
++)
++
++type Termios struct {
++ Iflag uint32
++ Oflag uint32
++ Cflag uint32
++ Lflag uint32
++ Cc [16]uint8
++}
++
++type Termio struct {
++ Iflag uint16
++ Oflag uint16
++ Cflag uint16
++ Lflag uint16
++ Line uint8
++ Cc [8]uint8
++ _ [1]byte
++}
++
++type Winsize struct {
++ Row uint16
++ Col uint16
++ Xpixel uint16
++ Ypixel uint16
++}
++
++type PollFd struct {
++ Fd int32
++ Events uint16
++ Revents uint16
++}
++
++const (
++ POLLERR = 0x4000
++ POLLHUP = 0x2000
++ POLLIN = 0x1
++ POLLNVAL = 0x8000
++ POLLOUT = 0x2
++ POLLPRI = 0x4
++ POLLRDBAND = 0x20
++ POLLRDNORM = 0x10
++ POLLWRBAND = 0x40
++ POLLWRNORM = 0x2
++)
++
++type Flock_t struct {
++ Type int16
++ Whence int16
++ Sysid uint32
++ Pid int32
++ Vfs int32
++ Start int64
++ Len int64
++}
++
++type Fsid_t struct {
++ Val [2]uint32
++}
++type Fsid64_t struct {
++ Val [2]uint64
++}
++
++type Statfs_t struct {
++ Version int32
++ Type int32
++ Bsize uint64
++ Blocks uint64
++ Bfree uint64
++ Bavail uint64
++ Files uint64
++ Ffree uint64
++ Fsid Fsid64_t
++ Vfstype int32
++ Fsize uint64
++ Vfsnumber int32
++ Vfsoff int32
++ Vfslen int32
++ Vfsvers int32
++ Fname [32]uint8
++ Fpack [32]uint8
++ Name_max int32
++ _ [4]byte
++}
++
++const RNDGETENTCNT = 0x80045200
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go
+index e61d78a5..9f47b87c 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go
+@@ -6,11 +6,11 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x4
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x4
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x4
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x4
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -59,24 +59,24 @@ type Rlimit struct {
+ type _Gid_t uint32
+
+ type Stat_t struct {
+- Dev int32
+- Mode uint16
+- Nlink uint16
+- Ino uint64
+- Uid uint32
+- Gid uint32
+- Rdev int32
+- Atimespec Timespec
+- Mtimespec Timespec
+- Ctimespec Timespec
+- Birthtimespec Timespec
+- Size int64
+- Blocks int64
+- Blksize int32
+- Flags uint32
+- Gen uint32
+- Lspare int32
+- Qspare [2]int64
++ Dev int32
++ Mode uint16
++ Nlink uint16
++ Ino uint64
++ Uid uint32
++ Gid uint32
++ Rdev int32
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Btim Timespec
++ Size int64
++ Blocks int64
++ Blksize int32
++ Flags uint32
++ Gen uint32
++ Lspare int32
++ Qspare [2]int64
+ }
+
+ type Statfs_t struct {
+@@ -136,13 +136,13 @@ type Fsid struct {
+ }
+
+ type Dirent struct {
+- Ino uint64
+- Seekoff uint64
+- Reclen uint16
+- Namlen uint16
+- Type uint8
+- Name [1024]int8
+- Pad_cgo_0 [3]byte
++ Ino uint64
++ Seekoff uint64
++ Reclen uint16
++ Namlen uint16
++ Type uint8
++ Name [1024]int8
++ _ [3]byte
+ }
+
+ type RawSockaddrInet4 struct {
+@@ -295,14 +295,14 @@ const (
+ )
+
+ type IfMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Data IfData
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Data IfData
+ }
+
+ type IfData struct {
+@@ -338,51 +338,51 @@ type IfData struct {
+ }
+
+ type IfaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Metric int32
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Metric int32
+ }
+
+ type IfmaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
+ }
+
+ type IfmaMsghdr2 struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Refcount int32
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Refcount int32
+ }
+
+ type RtMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Flags int32
+- Addrs int32
+- Pid int32
+- Seq int32
+- Errno int32
+- Use int32
+- Inits uint32
+- Rmx RtMetrics
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Index uint16
++ _ [2]byte
++ Flags int32
++ Addrs int32
++ Pid int32
++ Seq int32
++ Errno int32
++ Use int32
++ Inits uint32
++ Rmx RtMetrics
+ }
+
+ type RtMetrics struct {
+@@ -430,11 +430,11 @@ type BpfInsn struct {
+ }
+
+ type BpfHdr struct {
+- Tstamp Timeval
+- Caplen uint32
+- Datalen uint32
+- Hdrlen uint16
+- Pad_cgo_0 [2]byte
++ Tstamp Timeval
++ Caplen uint32
++ Datalen uint32
++ Hdrlen uint16
++ _ [2]byte
+ }
+
+ type Termios struct {
+@@ -460,3 +460,40 @@ const (
+ AT_SYMLINK_FOLLOW = 0x40
+ AT_SYMLINK_NOFOLLOW = 0x20
+ )
++
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
++type Utsname struct {
++ Sysname [256]byte
++ Nodename [256]byte
++ Release [256]byte
++ Version [256]byte
++ Machine [256]byte
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Tickadj int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go
+index 2619155f..966798a8 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go
+@@ -6,11 +6,11 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x8
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x8
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -26,9 +26,9 @@ type Timespec struct {
+ }
+
+ type Timeval struct {
+- Sec int64
+- Usec int32
+- Pad_cgo_0 [4]byte
++ Sec int64
++ Usec int32
++ _ [4]byte
+ }
+
+ type Timeval32 struct {
+@@ -63,25 +63,25 @@ type Rlimit struct {
+ type _Gid_t uint32
+
+ type Stat_t struct {
+- Dev int32
+- Mode uint16
+- Nlink uint16
+- Ino uint64
+- Uid uint32
+- Gid uint32
+- Rdev int32
+- Pad_cgo_0 [4]byte
+- Atimespec Timespec
+- Mtimespec Timespec
+- Ctimespec Timespec
+- Birthtimespec Timespec
+- Size int64
+- Blocks int64
+- Blksize int32
+- Flags uint32
+- Gen uint32
+- Lspare int32
+- Qspare [2]int64
++ Dev int32
++ Mode uint16
++ Nlink uint16
++ Ino uint64
++ Uid uint32
++ Gid uint32
++ Rdev int32
++ _ [4]byte
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Btim Timespec
++ Size int64
++ Blocks int64
++ Blksize int32
++ Flags uint32
++ Gen uint32
++ Lspare int32
++ Qspare [2]int64
+ }
+
+ type Statfs_t struct {
+@@ -120,9 +120,9 @@ type Fstore_t struct {
+ }
+
+ type Radvisory_t struct {
+- Offset int64
+- Count int32
+- Pad_cgo_0 [4]byte
++ Offset int64
++ Count int32
++ _ [4]byte
+ }
+
+ type Fbootstraptransfer_t struct {
+@@ -132,9 +132,9 @@ type Fbootstraptransfer_t struct {
+ }
+
+ type Log2phys_t struct {
+- Flags uint32
+- Pad_cgo_0 [8]byte
+- Pad_cgo_1 [8]byte
++ Flags uint32
++ _ [8]byte
++ _ [8]byte
+ }
+
+ type Fsid struct {
+@@ -142,13 +142,13 @@ type Fsid struct {
+ }
+
+ type Dirent struct {
+- Ino uint64
+- Seekoff uint64
+- Reclen uint16
+- Namlen uint16
+- Type uint8
+- Name [1024]int8
+- Pad_cgo_0 [3]byte
++ Ino uint64
++ Seekoff uint64
++ Reclen uint16
++ Namlen uint16
++ Type uint8
++ Name [1024]int8
++ _ [3]byte
+ }
+
+ type RawSockaddrInet4 struct {
+@@ -221,10 +221,10 @@ type IPv6Mreq struct {
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+- Pad_cgo_0 [4]byte
++ _ [4]byte
+ Iov *Iovec
+ Iovlen int32
+- Pad_cgo_1 [4]byte
++ _ [4]byte
+ Control *byte
+ Controllen uint32
+ Flags int32
+@@ -303,14 +303,14 @@ const (
+ )
+
+ type IfMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Data IfData
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Data IfData
+ }
+
+ type IfData struct {
+@@ -346,51 +346,51 @@ type IfData struct {
+ }
+
+ type IfaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Metric int32
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Metric int32
+ }
+
+ type IfmaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
+ }
+
+ type IfmaMsghdr2 struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Refcount int32
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Refcount int32
+ }
+
+ type RtMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Flags int32
+- Addrs int32
+- Pid int32
+- Seq int32
+- Errno int32
+- Use int32
+- Inits uint32
+- Rmx RtMetrics
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Index uint16
++ _ [2]byte
++ Flags int32
++ Addrs int32
++ Pid int32
++ Seq int32
++ Errno int32
++ Use int32
++ Inits uint32
++ Rmx RtMetrics
+ }
+
+ type RtMetrics struct {
+@@ -426,9 +426,9 @@ type BpfStat struct {
+ }
+
+ type BpfProgram struct {
+- Len uint32
+- Pad_cgo_0 [4]byte
+- Insns *BpfInsn
++ Len uint32
++ _ [4]byte
++ Insns *BpfInsn
+ }
+
+ type BpfInsn struct {
+@@ -439,22 +439,22 @@ type BpfInsn struct {
+ }
+
+ type BpfHdr struct {
+- Tstamp Timeval32
+- Caplen uint32
+- Datalen uint32
+- Hdrlen uint16
+- Pad_cgo_0 [2]byte
++ Tstamp Timeval32
++ Caplen uint32
++ Datalen uint32
++ Hdrlen uint16
++ _ [2]byte
+ }
+
+ type Termios struct {
+- Iflag uint64
+- Oflag uint64
+- Cflag uint64
+- Lflag uint64
+- Cc [20]uint8
+- Pad_cgo_0 [4]byte
+- Ispeed uint64
+- Ospeed uint64
++ Iflag uint64
++ Oflag uint64
++ Cflag uint64
++ Lflag uint64
++ Cc [20]uint8
++ _ [4]byte
++ Ispeed uint64
++ Ospeed uint64
+ }
+
+ type Winsize struct {
+@@ -470,3 +470,40 @@ const (
+ AT_SYMLINK_FOLLOW = 0x40
+ AT_SYMLINK_NOFOLLOW = 0x20
+ )
++
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
++type Utsname struct {
++ Sysname [256]byte
++ Nodename [256]byte
++ Release [256]byte
++ Version [256]byte
++ Machine [256]byte
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Tickadj int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go
+index 4dca0d4d..4fe4c9cd 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go
+@@ -7,11 +7,11 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x4
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x4
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x4
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x4
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -60,24 +60,24 @@ type Rlimit struct {
+ type _Gid_t uint32
+
+ type Stat_t struct {
+- Dev int32
+- Mode uint16
+- Nlink uint16
+- Ino uint64
+- Uid uint32
+- Gid uint32
+- Rdev int32
+- Atimespec Timespec
+- Mtimespec Timespec
+- Ctimespec Timespec
+- Birthtimespec Timespec
+- Size int64
+- Blocks int64
+- Blksize int32
+- Flags uint32
+- Gen uint32
+- Lspare int32
+- Qspare [2]int64
++ Dev int32
++ Mode uint16
++ Nlink uint16
++ Ino uint64
++ Uid uint32
++ Gid uint32
++ Rdev int32
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Btim Timespec
++ Size int64
++ Blocks int64
++ Blksize int32
++ Flags uint32
++ Gen uint32
++ Lspare int32
++ Qspare [2]int64
+ }
+
+ type Statfs_t struct {
+@@ -137,13 +137,13 @@ type Fsid struct {
+ }
+
+ type Dirent struct {
+- Ino uint64
+- Seekoff uint64
+- Reclen uint16
+- Namlen uint16
+- Type uint8
+- Name [1024]int8
+- Pad_cgo_0 [3]byte
++ Ino uint64
++ Seekoff uint64
++ Reclen uint16
++ Namlen uint16
++ Type uint8
++ Name [1024]int8
++ _ [3]byte
+ }
+
+ type RawSockaddrInet4 struct {
+@@ -296,14 +296,14 @@ const (
+ )
+
+ type IfMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Data IfData
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Data IfData
+ }
+
+ type IfData struct {
+@@ -339,51 +339,51 @@ type IfData struct {
+ }
+
+ type IfaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Metric int32
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Metric int32
+ }
+
+ type IfmaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
+ }
+
+ type IfmaMsghdr2 struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Refcount int32
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Refcount int32
+ }
+
+ type RtMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Flags int32
+- Addrs int32
+- Pid int32
+- Seq int32
+- Errno int32
+- Use int32
+- Inits uint32
+- Rmx RtMetrics
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Index uint16
++ _ [2]byte
++ Flags int32
++ Addrs int32
++ Pid int32
++ Seq int32
++ Errno int32
++ Use int32
++ Inits uint32
++ Rmx RtMetrics
+ }
+
+ type RtMetrics struct {
+@@ -431,11 +431,11 @@ type BpfInsn struct {
+ }
+
+ type BpfHdr struct {
+- Tstamp Timeval
+- Caplen uint32
+- Datalen uint32
+- Hdrlen uint16
+- Pad_cgo_0 [2]byte
++ Tstamp Timeval
++ Caplen uint32
++ Datalen uint32
++ Hdrlen uint16
++ _ [2]byte
+ }
+
+ type Termios struct {
+@@ -461,3 +461,40 @@ const (
+ AT_SYMLINK_FOLLOW = 0x40
+ AT_SYMLINK_NOFOLLOW = 0x20
+ )
++
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
++type Utsname struct {
++ Sysname [256]byte
++ Nodename [256]byte
++ Release [256]byte
++ Version [256]byte
++ Machine [256]byte
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Tickadj int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go
+index f2881fd1..21999e4b 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go
+@@ -1,15 +1,16 @@
++// cgo -godefs types_darwin.go | go run mkpost.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
+ // +build arm64,darwin
+-// Created by cgo -godefs - DO NOT EDIT
+-// cgo -godefs types_darwin.go
+
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x8
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x8
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -25,9 +26,9 @@ type Timespec struct {
+ }
+
+ type Timeval struct {
+- Sec int64
+- Usec int32
+- Pad_cgo_0 [4]byte
++ Sec int64
++ Usec int32
++ _ [4]byte
+ }
+
+ type Timeval32 struct {
+@@ -62,25 +63,25 @@ type Rlimit struct {
+ type _Gid_t uint32
+
+ type Stat_t struct {
+- Dev int32
+- Mode uint16
+- Nlink uint16
+- Ino uint64
+- Uid uint32
+- Gid uint32
+- Rdev int32
+- Pad_cgo_0 [4]byte
+- Atimespec Timespec
+- Mtimespec Timespec
+- Ctimespec Timespec
+- Birthtimespec Timespec
+- Size int64
+- Blocks int64
+- Blksize int32
+- Flags uint32
+- Gen uint32
+- Lspare int32
+- Qspare [2]int64
++ Dev int32
++ Mode uint16
++ Nlink uint16
++ Ino uint64
++ Uid uint32
++ Gid uint32
++ Rdev int32
++ _ [4]byte
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Btim Timespec
++ Size int64
++ Blocks int64
++ Blksize int32
++ Flags uint32
++ Gen uint32
++ Lspare int32
++ Qspare [2]int64
+ }
+
+ type Statfs_t struct {
+@@ -119,9 +120,9 @@ type Fstore_t struct {
+ }
+
+ type Radvisory_t struct {
+- Offset int64
+- Count int32
+- Pad_cgo_0 [4]byte
++ Offset int64
++ Count int32
++ _ [4]byte
+ }
+
+ type Fbootstraptransfer_t struct {
+@@ -131,9 +132,9 @@ type Fbootstraptransfer_t struct {
+ }
+
+ type Log2phys_t struct {
+- Flags uint32
+- Pad_cgo_0 [8]byte
+- Pad_cgo_1 [8]byte
++ Flags uint32
++ _ [8]byte
++ _ [8]byte
+ }
+
+ type Fsid struct {
+@@ -141,13 +142,13 @@ type Fsid struct {
+ }
+
+ type Dirent struct {
+- Ino uint64
+- Seekoff uint64
+- Reclen uint16
+- Namlen uint16
+- Type uint8
+- Name [1024]int8
+- Pad_cgo_0 [3]byte
++ Ino uint64
++ Seekoff uint64
++ Reclen uint16
++ Namlen uint16
++ Type uint8
++ Name [1024]int8
++ _ [3]byte
+ }
+
+ type RawSockaddrInet4 struct {
+@@ -220,10 +221,10 @@ type IPv6Mreq struct {
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+- Pad_cgo_0 [4]byte
++ _ [4]byte
+ Iov *Iovec
+ Iovlen int32
+- Pad_cgo_1 [4]byte
++ _ [4]byte
+ Control *byte
+ Controllen uint32
+ Flags int32
+@@ -302,14 +303,14 @@ const (
+ )
+
+ type IfMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Data IfData
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Data IfData
+ }
+
+ type IfData struct {
+@@ -345,51 +346,51 @@ type IfData struct {
+ }
+
+ type IfaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Metric int32
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Metric int32
+ }
+
+ type IfmaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
+ }
+
+ type IfmaMsghdr2 struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Refcount int32
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Refcount int32
+ }
+
+ type RtMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Flags int32
+- Addrs int32
+- Pid int32
+- Seq int32
+- Errno int32
+- Use int32
+- Inits uint32
+- Rmx RtMetrics
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Index uint16
++ _ [2]byte
++ Flags int32
++ Addrs int32
++ Pid int32
++ Seq int32
++ Errno int32
++ Use int32
++ Inits uint32
++ Rmx RtMetrics
+ }
+
+ type RtMetrics struct {
+@@ -425,9 +426,9 @@ type BpfStat struct {
+ }
+
+ type BpfProgram struct {
+- Len uint32
+- Pad_cgo_0 [4]byte
+- Insns *BpfInsn
++ Len uint32
++ _ [4]byte
++ Insns *BpfInsn
+ }
+
+ type BpfInsn struct {
+@@ -438,22 +439,22 @@ type BpfInsn struct {
+ }
+
+ type BpfHdr struct {
+- Tstamp Timeval32
+- Caplen uint32
+- Datalen uint32
+- Hdrlen uint16
+- Pad_cgo_0 [2]byte
++ Tstamp Timeval32
++ Caplen uint32
++ Datalen uint32
++ Hdrlen uint16
++ _ [2]byte
+ }
+
+ type Termios struct {
+- Iflag uint64
+- Oflag uint64
+- Cflag uint64
+- Lflag uint64
+- Cc [20]uint8
+- Pad_cgo_0 [4]byte
+- Ispeed uint64
+- Ospeed uint64
++ Iflag uint64
++ Oflag uint64
++ Cflag uint64
++ Lflag uint64
++ Cc [20]uint8
++ _ [4]byte
++ Ispeed uint64
++ Ospeed uint64
+ }
+
+ type Winsize struct {
+@@ -469,3 +470,40 @@ const (
+ AT_SYMLINK_FOLLOW = 0x40
+ AT_SYMLINK_NOFOLLOW = 0x20
+ )
++
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
++type Utsname struct {
++ Sysname [256]byte
++ Nodename [256]byte
++ Release [256]byte
++ Version [256]byte
++ Machine [256]byte
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Tickadj int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go
+index 67c6bf88..71ea1d6d 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go
+@@ -6,11 +6,11 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x8
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x8
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -56,43 +56,26 @@ type Rlimit struct {
+
+ type _Gid_t uint32
+
+-const (
+- S_IFMT = 0xf000
+- S_IFIFO = 0x1000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFBLK = 0x6000
+- S_IFREG = 0x8000
+- S_IFLNK = 0xa000
+- S_IFSOCK = 0xc000
+- S_ISUID = 0x800
+- S_ISGID = 0x400
+- S_ISVTX = 0x200
+- S_IRUSR = 0x100
+- S_IWUSR = 0x80
+- S_IXUSR = 0x40
+-)
+-
+ type Stat_t struct {
+- Ino uint64
+- Nlink uint32
+- Dev uint32
+- Mode uint16
+- Padding1 uint16
+- Uid uint32
+- Gid uint32
+- Rdev uint32
+- Atim Timespec
+- Mtim Timespec
+- Ctim Timespec
+- Size int64
+- Blocks int64
+- Blksize uint32
+- Flags uint32
+- Gen uint32
+- Lspare int32
+- Qspare1 int64
+- Qspare2 int64
++ Ino uint64
++ Nlink uint32
++ Dev uint32
++ Mode uint16
++ _1 uint16
++ Uid uint32
++ Gid uint32
++ Rdev uint32
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Size int64
++ Blocks int64
++ Blksize uint32
++ Flags uint32
++ Gen uint32
++ Lspare int32
++ Qspare1 int64
++ Qspare2 int64
+ }
+
+ type Statfs_t struct {
+@@ -108,7 +91,7 @@ type Statfs_t struct {
+ Owner uint32
+ Type int32
+ Flags int32
+- Pad_cgo_0 [4]byte
++ _ [4]byte
+ Syncwrites int64
+ Asyncwrites int64
+ Fstypename [16]int8
+@@ -118,7 +101,7 @@ type Statfs_t struct {
+ Spares1 int16
+ Mntfromname [80]int8
+ Spares2 int16
+- Pad_cgo_1 [4]byte
++ _ [4]byte
+ Spare [2]int64
+ }
+
+@@ -143,6 +126,10 @@ type Fsid struct {
+ Val [2]int32
+ }
+
++const (
++ PathMax = 0x400
++)
++
+ type RawSockaddrInet4 struct {
+ Len uint8
+ Family uint8
+@@ -215,10 +202,10 @@ type IPv6Mreq struct {
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+- Pad_cgo_0 [4]byte
++ _ [4]byte
+ Iov *Iovec
+ Iovlen int32
+- Pad_cgo_1 [4]byte
++ _ [4]byte
+ Control *byte
+ Controllen uint32
+ Flags int32
+@@ -290,14 +277,14 @@ const (
+ )
+
+ type IfMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Data IfData
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Data IfData
+ }
+
+ type IfData struct {
+@@ -307,7 +294,7 @@ type IfData struct {
+ Hdrlen uint8
+ Recvquota uint8
+ Xmitquota uint8
+- Pad_cgo_0 [2]byte
++ _ [2]byte
+ Mtu uint64
+ Metric uint64
+ Link_state uint64
+@@ -329,24 +316,24 @@ type IfData struct {
+ }
+
+ type IfaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Metric int32
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Metric int32
+ }
+
+ type IfmaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
+ }
+
+ type IfAnnounceMsghdr struct {
+@@ -359,19 +346,19 @@ type IfAnnounceMsghdr struct {
+ }
+
+ type RtMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Flags int32
+- Addrs int32
+- Pid int32
+- Seq int32
+- Errno int32
+- Use int32
+- Inits uint64
+- Rmx RtMetrics
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Index uint16
++ _ [2]byte
++ Flags int32
++ Addrs int32
++ Pid int32
++ Seq int32
++ Errno int32
++ Use int32
++ Inits uint64
++ Rmx RtMetrics
+ }
+
+ type RtMetrics struct {
+@@ -387,7 +374,7 @@ type RtMetrics struct {
+ Hopcount uint64
+ Mssopt uint16
+ Pad uint16
+- Pad_cgo_0 [4]byte
++ _ [4]byte
+ Msl uint64
+ Iwmaxsegs uint64
+ Iwcapsegs uint64
+@@ -412,9 +399,9 @@ type BpfStat struct {
+ }
+
+ type BpfProgram struct {
+- Len uint32
+- Pad_cgo_0 [4]byte
+- Insns *BpfInsn
++ Len uint32
++ _ [4]byte
++ Insns *BpfInsn
+ }
+
+ type BpfInsn struct {
+@@ -425,11 +412,11 @@ type BpfInsn struct {
+ }
+
+ type BpfHdr struct {
+- Tstamp Timeval
+- Caplen uint32
+- Datalen uint32
+- Hdrlen uint16
+- Pad_cgo_0 [6]byte
++ Tstamp Timeval
++ Caplen uint32
++ Datalen uint32
++ Hdrlen uint16
++ _ [6]byte
+ }
+
+ type Termios struct {
+@@ -442,7 +429,51 @@ type Termios struct {
+ Ospeed uint32
+ }
+
++type Winsize struct {
++ Row uint16
++ Col uint16
++ Xpixel uint16
++ Ypixel uint16
++}
++
+ const (
+ AT_FDCWD = 0xfffafdcd
+ AT_SYMLINK_NOFOLLOW = 0x1
+ )
++
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
++type Utsname struct {
++ Sysname [32]byte
++ Nodename [32]byte
++ Release [32]byte
++ Version [32]byte
++ Machine [32]byte
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Tickadj int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go
+index 5b28bcbb..2a3ec615 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go
+@@ -6,11 +6,11 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x4
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x4
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x4
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x4
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -57,41 +57,55 @@ type Rlimit struct {
+ type _Gid_t uint32
+
+ const (
+- S_IFMT = 0xf000
+- S_IFIFO = 0x1000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFBLK = 0x6000
+- S_IFREG = 0x8000
+- S_IFLNK = 0xa000
+- S_IFSOCK = 0xc000
+- S_ISUID = 0x800
+- S_ISGID = 0x400
+- S_ISVTX = 0x200
+- S_IRUSR = 0x100
+- S_IWUSR = 0x80
+- S_IXUSR = 0x40
++ _statfsVersion = 0x20140518
++ _dirblksiz = 0x400
+ )
+
+ type Stat_t struct {
+- Dev uint32
+- Ino uint32
+- Mode uint16
+- Nlink uint16
+- Uid uint32
+- Gid uint32
+- Rdev uint32
+- Atimespec Timespec
+- Mtimespec Timespec
+- Ctimespec Timespec
+- Size int64
+- Blocks int64
+- Blksize int32
+- Flags uint32
+- Gen uint32
+- Lspare int32
+- Birthtimespec Timespec
+- Pad_cgo_0 [8]byte
++ Dev uint64
++ Ino uint64
++ Nlink uint64
++ Mode uint16
++ _0 int16
++ Uid uint32
++ Gid uint32
++ _1 int32
++ Rdev uint64
++ _ int32
++ Atim Timespec
++ _ int32
++ Mtim Timespec
++ _ int32
++ Ctim Timespec
++ _ int32
++ Btim Timespec
++ Size int64
++ Blocks int64
++ Blksize int32
++ Flags uint32
++ Gen uint64
++ Spare [10]uint64
++}
++
++type stat_freebsd11_t struct {
++ Dev uint32
++ Ino uint32
++ Mode uint16
++ Nlink uint16
++ Uid uint32
++ Gid uint32
++ Rdev uint32
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Size int64
++ Blocks int64
++ Blksize int32
++ Flags uint32
++ Gen uint32
++ Lspare int32
++ Btim Timespec
++ _ [8]byte
+ }
+
+ type Statfs_t struct {
+@@ -114,9 +128,34 @@ type Statfs_t struct {
+ Owner uint32
+ Fsid Fsid
+ Charspare [80]int8
+- Fstypename [16]int8
+- Mntfromname [88]int8
+- Mntonname [88]int8
++ Fstypename [16]byte
++ Mntfromname [1024]byte
++ Mntonname [1024]byte
++}
++
++type statfs_freebsd11_t struct {
++ Version uint32
++ Type uint32
++ Flags uint64
++ Bsize uint64
++ Iosize uint64
++ Blocks uint64
++ Bfree uint64
++ Bavail int64
++ Files uint64
++ Ffree int64
++ Syncwrites uint64
++ Asyncwrites uint64
++ Syncreads uint64
++ Asyncreads uint64
++ Spare [10]uint64
++ Namemax uint32
++ Owner uint32
++ Fsid Fsid
++ Charspare [80]int8
++ Fstypename [16]byte
++ Mntfromname [88]byte
++ Mntonname [88]byte
+ }
+
+ type Flock_t struct {
+@@ -129,6 +168,17 @@ type Flock_t struct {
+ }
+
+ type Dirent struct {
++ Fileno uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Pad0 uint8
++ Namlen uint16
++ Pad1 uint16
++ Name [256]int8
++}
++
++type dirent_freebsd11 struct {
+ Fileno uint32
+ Reclen uint16
+ Type uint8
+@@ -140,6 +190,10 @@ type Fsid struct {
+ Val [2]int32
+ }
+
++const (
++ PathMax = 0x400
++)
++
+ const (
+ FADV_NORMAL = 0x0
+ FADV_RANDOM = 0x1
+@@ -270,11 +324,108 @@ const (
+ )
+
+ const (
+- PTRACE_TRACEME = 0x0
+- PTRACE_CONT = 0x7
+- PTRACE_KILL = 0x8
++ PTRACE_ATTACH = 0xa
++ PTRACE_CONT = 0x7
++ PTRACE_DETACH = 0xb
++ PTRACE_GETFPREGS = 0x23
++ PTRACE_GETFSBASE = 0x47
++ PTRACE_GETLWPLIST = 0xf
++ PTRACE_GETNUMLWPS = 0xe
++ PTRACE_GETREGS = 0x21
++ PTRACE_GETXSTATE = 0x45
++ PTRACE_IO = 0xc
++ PTRACE_KILL = 0x8
++ PTRACE_LWPEVENTS = 0x18
++ PTRACE_LWPINFO = 0xd
++ PTRACE_SETFPREGS = 0x24
++ PTRACE_SETREGS = 0x22
++ PTRACE_SINGLESTEP = 0x9
++ PTRACE_TRACEME = 0x0
++)
++
++const (
++ PIOD_READ_D = 0x1
++ PIOD_WRITE_D = 0x2
++ PIOD_READ_I = 0x3
++ PIOD_WRITE_I = 0x4
++)
++
++const (
++ PL_FLAG_BORN = 0x100
++ PL_FLAG_EXITED = 0x200
++ PL_FLAG_SI = 0x20
++)
++
++const (
++ TRAP_BRKPT = 0x1
++ TRAP_TRACE = 0x2
+ )
+
++type PtraceLwpInfoStruct struct {
++ Lwpid int32
++ Event int32
++ Flags int32
++ Sigmask Sigset_t
++ Siglist Sigset_t
++ Siginfo __Siginfo
++ Tdname [20]int8
++ Child_pid int32
++ Syscall_code uint32
++ Syscall_narg uint32
++}
++
++type __Siginfo struct {
++ Signo int32
++ Errno int32
++ Code int32
++ Pid int32
++ Uid uint32
++ Status int32
++ Addr *byte
++ Value [4]byte
++ _ [32]byte
++}
++
++type Sigset_t struct {
++ Val [4]uint32
++}
++
++type Reg struct {
++ Fs uint32
++ Es uint32
++ Ds uint32
++ Edi uint32
++ Esi uint32
++ Ebp uint32
++ Isp uint32
++ Ebx uint32
++ Edx uint32
++ Ecx uint32
++ Eax uint32
++ Trapno uint32
++ Err uint32
++ Eip uint32
++ Cs uint32
++ Eflags uint32
++ Esp uint32
++ Ss uint32
++ Gs uint32
++}
++
++type FpReg struct {
++ Env [7]uint32
++ Acc [8][10]uint8
++ Ex_sw uint32
++ Pad [64]uint8
++}
++
++type PtraceIoDesc struct {
++ Op int32
++ Offs *byte
++ Addr *byte
++ Len uint32
++}
++
+ type Kevent_t struct {
+ Ident uint32
+ Filter int16
+@@ -285,7 +436,7 @@ type Kevent_t struct {
+ }
+
+ type FdSet struct {
+- X__fds_bits [32]uint32
++ Bits [32]uint32
+ }
+
+ const (
+@@ -301,53 +452,52 @@ const (
+ )
+
+ type ifMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Data ifData
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ uint16
++ Data ifData
+ }
+
+ type IfMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Data IfData
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ Data IfData
+ }
+
+ type ifData struct {
+- Type uint8
+- Physical uint8
+- Addrlen uint8
+- Hdrlen uint8
+- Link_state uint8
+- Vhid uint8
+- Datalen uint16
+- Mtu uint32
+- Metric uint32
+- Baudrate uint64
+- Ipackets uint64
+- Ierrors uint64
+- Opackets uint64
+- Oerrors uint64
+- Collisions uint64
+- Ibytes uint64
+- Obytes uint64
+- Imcasts uint64
+- Omcasts uint64
+- Iqdrops uint64
+- Oqdrops uint64
+- Noproto uint64
+- Hwassist uint64
+- X__ifi_epoch [8]byte
+- X__ifi_lastchange [16]byte
++ Type uint8
++ Physical uint8
++ Addrlen uint8
++ Hdrlen uint8
++ Link_state uint8
++ Vhid uint8
++ Datalen uint16
++ Mtu uint32
++ Metric uint32
++ Baudrate uint64
++ Ipackets uint64
++ Ierrors uint64
++ Opackets uint64
++ Oerrors uint64
++ Collisions uint64
++ Ibytes uint64
++ Obytes uint64
++ Imcasts uint64
++ Omcasts uint64
++ Iqdrops uint64
++ Oqdrops uint64
++ Noproto uint64
++ Hwassist uint64
++ _ [8]byte
++ _ [16]byte
+ }
+
+ type IfData struct {
+@@ -379,24 +529,24 @@ type IfData struct {
+ }
+
+ type IfaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Metric int32
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ uint16
++ Metric int32
+ }
+
+ type IfmaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ uint16
+ }
+
+ type IfAnnounceMsghdr struct {
+@@ -409,19 +559,19 @@ type IfAnnounceMsghdr struct {
+ }
+
+ type RtMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Flags int32
+- Addrs int32
+- Pid int32
+- Seq int32
+- Errno int32
+- Fmask int32
+- Inits uint32
+- Rmx RtMetrics
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Index uint16
++ _ uint16
++ Flags int32
++ Addrs int32
++ Pid int32
++ Seq int32
++ Errno int32
++ Fmask int32
++ Inits uint32
++ Rmx RtMetrics
+ }
+
+ type RtMetrics struct {
+@@ -478,18 +628,18 @@ type BpfInsn struct {
+ }
+
+ type BpfHdr struct {
+- Tstamp Timeval
+- Caplen uint32
+- Datalen uint32
+- Hdrlen uint16
+- Pad_cgo_0 [2]byte
++ Tstamp Timeval
++ Caplen uint32
++ Datalen uint32
++ Hdrlen uint16
++ _ [2]byte
+ }
+
+ type BpfZbufHeader struct {
+ Kernel_gen uint32
+ Kernel_len uint32
+ User_gen uint32
+- X_bzh_pad [5]uint32
++ _ [5]uint32
+ }
+
+ type Termios struct {
+@@ -516,6 +666,44 @@ const (
+ AT_SYMLINK_NOFOLLOW = 0x200
+ )
+
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLINIGNEOF = 0x2000
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
+ type CapRights struct {
+ Rights [2]uint64
+ }
++
++type Utsname struct {
++ Sysname [256]byte
++ Nodename [256]byte
++ Release [256]byte
++ Version [256]byte
++ Machine [256]byte
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Spare int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
+index c65d89e4..e11e9549 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
+@@ -6,11 +6,11 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x8
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x8
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -57,40 +57,50 @@ type Rlimit struct {
+ type _Gid_t uint32
+
+ const (
+- S_IFMT = 0xf000
+- S_IFIFO = 0x1000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFBLK = 0x6000
+- S_IFREG = 0x8000
+- S_IFLNK = 0xa000
+- S_IFSOCK = 0xc000
+- S_ISUID = 0x800
+- S_ISGID = 0x400
+- S_ISVTX = 0x200
+- S_IRUSR = 0x100
+- S_IWUSR = 0x80
+- S_IXUSR = 0x40
++ _statfsVersion = 0x20140518
++ _dirblksiz = 0x400
+ )
+
+ type Stat_t struct {
+- Dev uint32
+- Ino uint32
+- Mode uint16
+- Nlink uint16
+- Uid uint32
+- Gid uint32
+- Rdev uint32
+- Atimespec Timespec
+- Mtimespec Timespec
+- Ctimespec Timespec
+- Size int64
+- Blocks int64
+- Blksize int32
+- Flags uint32
+- Gen uint32
+- Lspare int32
+- Birthtimespec Timespec
++ Dev uint64
++ Ino uint64
++ Nlink uint64
++ Mode uint16
++ _0 int16
++ Uid uint32
++ Gid uint32
++ _1 int32
++ Rdev uint64
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Btim Timespec
++ Size int64
++ Blocks int64
++ Blksize int32
++ Flags uint32
++ Gen uint64
++ Spare [10]uint64
++}
++
++type stat_freebsd11_t struct {
++ Dev uint32
++ Ino uint32
++ Mode uint16
++ Nlink uint16
++ Uid uint32
++ Gid uint32
++ Rdev uint32
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Size int64
++ Blocks int64
++ Blksize int32
++ Flags uint32
++ Gen uint32
++ Lspare int32
++ Btim Timespec
+ }
+
+ type Statfs_t struct {
+@@ -113,22 +123,58 @@ type Statfs_t struct {
+ Owner uint32
+ Fsid Fsid
+ Charspare [80]int8
+- Fstypename [16]int8
+- Mntfromname [88]int8
+- Mntonname [88]int8
++ Fstypename [16]byte
++ Mntfromname [1024]byte
++ Mntonname [1024]byte
++}
++
++type statfs_freebsd11_t struct {
++ Version uint32
++ Type uint32
++ Flags uint64
++ Bsize uint64
++ Iosize uint64
++ Blocks uint64
++ Bfree uint64
++ Bavail int64
++ Files uint64
++ Ffree int64
++ Syncwrites uint64
++ Asyncwrites uint64
++ Syncreads uint64
++ Asyncreads uint64
++ Spare [10]uint64
++ Namemax uint32
++ Owner uint32
++ Fsid Fsid
++ Charspare [80]int8
++ Fstypename [16]byte
++ Mntfromname [88]byte
++ Mntonname [88]byte
+ }
+
+ type Flock_t struct {
+- Start int64
+- Len int64
+- Pid int32
+- Type int16
+- Whence int16
+- Sysid int32
+- Pad_cgo_0 [4]byte
++ Start int64
++ Len int64
++ Pid int32
++ Type int16
++ Whence int16
++ Sysid int32
++ _ [4]byte
+ }
+
+ type Dirent struct {
++ Fileno uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Pad0 uint8
++ Namlen uint16
++ Pad1 uint16
++ Name [256]int8
++}
++
++type dirent_freebsd11 struct {
+ Fileno uint32
+ Reclen uint16
+ Type uint8
+@@ -140,6 +186,10 @@ type Fsid struct {
+ Val [2]int32
+ }
+
++const (
++ PathMax = 0x400
++)
++
+ const (
+ FADV_NORMAL = 0x0
+ FADV_RANDOM = 0x1
+@@ -225,10 +275,8 @@ type IPv6Mreq struct {
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+- Pad_cgo_0 [4]byte
+ Iov *Iovec
+ Iovlen int32
+- Pad_cgo_1 [4]byte
+ Control *byte
+ Controllen uint32
+ Flags int32
+@@ -272,11 +320,115 @@ const (
+ )
+
+ const (
+- PTRACE_TRACEME = 0x0
+- PTRACE_CONT = 0x7
+- PTRACE_KILL = 0x8
++ PTRACE_ATTACH = 0xa
++ PTRACE_CONT = 0x7
++ PTRACE_DETACH = 0xb
++ PTRACE_GETFPREGS = 0x23
++ PTRACE_GETFSBASE = 0x47
++ PTRACE_GETLWPLIST = 0xf
++ PTRACE_GETNUMLWPS = 0xe
++ PTRACE_GETREGS = 0x21
++ PTRACE_GETXSTATE = 0x45
++ PTRACE_IO = 0xc
++ PTRACE_KILL = 0x8
++ PTRACE_LWPEVENTS = 0x18
++ PTRACE_LWPINFO = 0xd
++ PTRACE_SETFPREGS = 0x24
++ PTRACE_SETREGS = 0x22
++ PTRACE_SINGLESTEP = 0x9
++ PTRACE_TRACEME = 0x0
++)
++
++const (
++ PIOD_READ_D = 0x1
++ PIOD_WRITE_D = 0x2
++ PIOD_READ_I = 0x3
++ PIOD_WRITE_I = 0x4
++)
++
++const (
++ PL_FLAG_BORN = 0x100
++ PL_FLAG_EXITED = 0x200
++ PL_FLAG_SI = 0x20
++)
++
++const (
++ TRAP_BRKPT = 0x1
++ TRAP_TRACE = 0x2
+ )
+
++type PtraceLwpInfoStruct struct {
++ Lwpid int32
++ Event int32
++ Flags int32
++ Sigmask Sigset_t
++ Siglist Sigset_t
++ Siginfo __Siginfo
++ Tdname [20]int8
++ Child_pid int32
++ Syscall_code uint32
++ Syscall_narg uint32
++}
++
++type __Siginfo struct {
++ Signo int32
++ Errno int32
++ Code int32
++ Pid int32
++ Uid uint32
++ Status int32
++ Addr *byte
++ Value [8]byte
++ _ [40]byte
++}
++
++type Sigset_t struct {
++ Val [4]uint32
++}
++
++type Reg struct {
++ R15 int64
++ R14 int64
++ R13 int64
++ R12 int64
++ R11 int64
++ R10 int64
++ R9 int64
++ R8 int64
++ Rdi int64
++ Rsi int64
++ Rbp int64
++ Rbx int64
++ Rdx int64
++ Rcx int64
++ Rax int64
++ Trapno uint32
++ Fs uint16
++ Gs uint16
++ Err uint32
++ Es uint16
++ Ds uint16
++ Rip int64
++ Cs int64
++ Rflags int64
++ Rsp int64
++ Ss int64
++}
++
++type FpReg struct {
++ Env [4]uint64
++ Acc [8][16]uint8
++ Xacc [16][16]uint8
++ Spare [12]uint64
++}
++
++type PtraceIoDesc struct {
++ Op int32
++ Offs *byte
++ Addr *byte
++ Len uint64
++}
++
+ type Kevent_t struct {
+ Ident uint64
+ Filter int16
+@@ -287,7 +439,7 @@ type Kevent_t struct {
+ }
+
+ type FdSet struct {
+- X__fds_bits [16]uint64
++ Bits [16]uint64
+ }
+
+ const (
+@@ -303,53 +455,52 @@ const (
+ )
+
+ type ifMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Data ifData
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ uint16
++ Data ifData
+ }
+
+ type IfMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Data IfData
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ Data IfData
+ }
+
+ type ifData struct {
+- Type uint8
+- Physical uint8
+- Addrlen uint8
+- Hdrlen uint8
+- Link_state uint8
+- Vhid uint8
+- Datalen uint16
+- Mtu uint32
+- Metric uint32
+- Baudrate uint64
+- Ipackets uint64
+- Ierrors uint64
+- Opackets uint64
+- Oerrors uint64
+- Collisions uint64
+- Ibytes uint64
+- Obytes uint64
+- Imcasts uint64
+- Omcasts uint64
+- Iqdrops uint64
+- Oqdrops uint64
+- Noproto uint64
+- Hwassist uint64
+- X__ifi_epoch [8]byte
+- X__ifi_lastchange [16]byte
++ Type uint8
++ Physical uint8
++ Addrlen uint8
++ Hdrlen uint8
++ Link_state uint8
++ Vhid uint8
++ Datalen uint16
++ Mtu uint32
++ Metric uint32
++ Baudrate uint64
++ Ipackets uint64
++ Ierrors uint64
++ Opackets uint64
++ Oerrors uint64
++ Collisions uint64
++ Ibytes uint64
++ Obytes uint64
++ Imcasts uint64
++ Omcasts uint64
++ Iqdrops uint64
++ Oqdrops uint64
++ Noproto uint64
++ Hwassist uint64
++ _ [8]byte
++ _ [16]byte
+ }
+
+ type IfData struct {
+@@ -381,24 +532,24 @@ type IfData struct {
+ }
+
+ type IfaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Metric int32
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ uint16
++ Metric int32
+ }
+
+ type IfmaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ uint16
+ }
+
+ type IfAnnounceMsghdr struct {
+@@ -411,19 +562,19 @@ type IfAnnounceMsghdr struct {
+ }
+
+ type RtMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Flags int32
+- Addrs int32
+- Pid int32
+- Seq int32
+- Errno int32
+- Fmask int32
+- Inits uint64
+- Rmx RtMetrics
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Index uint16
++ _ uint16
++ Flags int32
++ Addrs int32
++ Pid int32
++ Seq int32
++ Errno int32
++ Fmask int32
++ Inits uint64
++ Rmx RtMetrics
+ }
+
+ type RtMetrics struct {
+@@ -468,9 +619,8 @@ type BpfZbuf struct {
+ }
+
+ type BpfProgram struct {
+- Len uint32
+- Pad_cgo_0 [4]byte
+- Insns *BpfInsn
++ Len uint32
++ Insns *BpfInsn
+ }
+
+ type BpfInsn struct {
+@@ -481,18 +631,18 @@ type BpfInsn struct {
+ }
+
+ type BpfHdr struct {
+- Tstamp Timeval
+- Caplen uint32
+- Datalen uint32
+- Hdrlen uint16
+- Pad_cgo_0 [6]byte
++ Tstamp Timeval
++ Caplen uint32
++ Datalen uint32
++ Hdrlen uint16
++ _ [6]byte
+ }
+
+ type BpfZbufHeader struct {
+ Kernel_gen uint32
+ Kernel_len uint32
+ User_gen uint32
+- X_bzh_pad [5]uint32
++ _ [5]uint32
+ }
+
+ type Termios struct {
+@@ -519,6 +669,44 @@ const (
+ AT_SYMLINK_NOFOLLOW = 0x200
+ )
+
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLINIGNEOF = 0x2000
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
+ type CapRights struct {
+ Rights [2]uint64
+ }
++
++type Utsname struct {
++ Sysname [256]byte
++ Nodename [256]byte
++ Release [256]byte
++ Version [256]byte
++ Machine [256]byte
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Spare int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go
+index 42c0a502..6f79227d 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go
+@@ -6,11 +6,11 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x4
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x4
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x4
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x4
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -21,15 +21,15 @@ type (
+ )
+
+ type Timespec struct {
+- Sec int64
+- Nsec int32
+- Pad_cgo_0 [4]byte
++ Sec int64
++ Nsec int32
++ _ [4]byte
+ }
+
+ type Timeval struct {
+- Sec int64
+- Usec int32
+- Pad_cgo_0 [4]byte
++ Sec int64
++ Usec int32
++ _ [4]byte
+ }
+
+ type Rusage struct {
+@@ -59,43 +59,78 @@ type Rlimit struct {
+ type _Gid_t uint32
+
+ const (
+- S_IFMT = 0xf000
+- S_IFIFO = 0x1000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFBLK = 0x6000
+- S_IFREG = 0x8000
+- S_IFLNK = 0xa000
+- S_IFSOCK = 0xc000
+- S_ISUID = 0x800
+- S_ISGID = 0x400
+- S_ISVTX = 0x200
+- S_IRUSR = 0x100
+- S_IWUSR = 0x80
+- S_IXUSR = 0x40
++ _statfsVersion = 0x20140518
++ _dirblksiz = 0x400
+ )
+
+ type Stat_t struct {
+- Dev uint32
+- Ino uint32
+- Mode uint16
+- Nlink uint16
+- Uid uint32
+- Gid uint32
+- Rdev uint32
+- Atimespec Timespec
+- Mtimespec Timespec
+- Ctimespec Timespec
+- Size int64
+- Blocks int64
+- Blksize int32
+- Flags uint32
+- Gen uint32
+- Lspare int32
+- Birthtimespec Timespec
++ Dev uint64
++ Ino uint64
++ Nlink uint64
++ Mode uint16
++ _0 int16
++ Uid uint32
++ Gid uint32
++ _1 int32
++ Rdev uint64
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Btim Timespec
++ Size int64
++ Blocks int64
++ Blksize int32
++ Flags uint32
++ Gen uint64
++ Spare [10]uint64
++}
++
++type stat_freebsd11_t struct {
++ Dev uint32
++ Ino uint32
++ Mode uint16
++ Nlink uint16
++ Uid uint32
++ Gid uint32
++ Rdev uint32
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Size int64
++ Blocks int64
++ Blksize int32
++ Flags uint32
++ Gen uint32
++ Lspare int32
++ Btim Timespec
+ }
+
+ type Statfs_t struct {
++ Version uint32
++ Type uint32
++ Flags uint64
++ Bsize uint64
++ Iosize uint64
++ Blocks uint64
++ Bfree uint64
++ Bavail int64
++ Files uint64
++ Ffree int64
++ Syncwrites uint64
++ Asyncwrites uint64
++ Syncreads uint64
++ Asyncreads uint64
++ Spare [10]uint64
++ Namemax uint32
++ Owner uint32
++ Fsid Fsid
++ Charspare [80]int8
++ Fstypename [16]int8
++ Mntfromname [1024]int8
++ Mntonname [1024]int8
++}
++
++type statfs_freebsd11_t struct {
+ Version uint32
+ Type uint32
+ Flags uint64
+@@ -121,16 +156,27 @@ type Statfs_t struct {
+ }
+
+ type Flock_t struct {
+- Start int64
+- Len int64
+- Pid int32
+- Type int16
+- Whence int16
+- Sysid int32
+- Pad_cgo_0 [4]byte
++ Start int64
++ Len int64
++ Pid int32
++ Type int16
++ Whence int16
++ Sysid int32
++ _ [4]byte
+ }
+
+ type Dirent struct {
++ Fileno uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Pad0 uint8
++ Namlen uint16
++ Pad1 uint16
++ Name [256]int8
++}
++
++type dirent_freebsd11 struct {
+ Fileno uint32
+ Reclen uint16
+ Type uint8
+@@ -142,6 +188,10 @@ type Fsid struct {
+ Val [2]int32
+ }
+
++const (
++ PathMax = 0x400
++)
++
+ const (
+ FADV_NORMAL = 0x0
+ FADV_RANDOM = 0x1
+@@ -272,11 +322,92 @@ const (
+ )
+
+ const (
+- PTRACE_TRACEME = 0x0
+- PTRACE_CONT = 0x7
+- PTRACE_KILL = 0x8
++ PTRACE_ATTACH = 0xa
++ PTRACE_CONT = 0x7
++ PTRACE_DETACH = 0xb
++ PTRACE_GETFPREGS = 0x23
++ PTRACE_GETFSBASE = 0x47
++ PTRACE_GETLWPLIST = 0xf
++ PTRACE_GETNUMLWPS = 0xe
++ PTRACE_GETREGS = 0x21
++ PTRACE_GETXSTATE = 0x45
++ PTRACE_IO = 0xc
++ PTRACE_KILL = 0x8
++ PTRACE_LWPEVENTS = 0x18
++ PTRACE_LWPINFO = 0xd
++ PTRACE_SETFPREGS = 0x24
++ PTRACE_SETREGS = 0x22
++ PTRACE_SINGLESTEP = 0x9
++ PTRACE_TRACEME = 0x0
++)
++
++const (
++ PIOD_READ_D = 0x1
++ PIOD_WRITE_D = 0x2
++ PIOD_READ_I = 0x3
++ PIOD_WRITE_I = 0x4
++)
++
++const (
++ PL_FLAG_BORN = 0x100
++ PL_FLAG_EXITED = 0x200
++ PL_FLAG_SI = 0x20
+ )
+
++const (
++ TRAP_BRKPT = 0x1
++ TRAP_TRACE = 0x2
++)
++
++type PtraceLwpInfoStruct struct {
++ Lwpid int32
++ Event int32
++ Flags int32
++ Sigmask Sigset_t
++ Siglist Sigset_t
++ Siginfo __Siginfo
++ Tdname [20]int8
++ Child_pid int32
++ Syscall_code uint32
++ Syscall_narg uint32
++}
++
++type __Siginfo struct {
++ Signo int32
++ Errno int32
++ Code int32
++ Pid int32
++ Uid uint32
++ Status int32
++ Addr *byte
++ Value [4]byte
++ X_reason [32]byte
++}
++
++type Sigset_t struct {
++ Val [4]uint32
++}
++
++type Reg struct {
++ R [13]uint32
++ R_sp uint32
++ R_lr uint32
++ R_pc uint32
++ R_cpsr uint32
++}
++
++type FpReg struct {
++ Fpr_fpsr uint32
++ Fpr [8][3]uint32
++}
++
++type PtraceIoDesc struct {
++ Op int32
++ Offs *byte
++ Addr *byte
++ Len uint32
++}
++
+ type Kevent_t struct {
+ Ident uint32
+ Filter int16
+@@ -287,7 +418,7 @@ type Kevent_t struct {
+ }
+
+ type FdSet struct {
+- X__fds_bits [32]uint32
++ Bits [32]uint32
+ }
+
+ const (
+@@ -303,53 +434,53 @@ const (
+ )
+
+ type ifMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Data ifData
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Data ifData
+ }
+
+ type IfMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Data IfData
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Data IfData
+ }
+
+ type ifData struct {
+- Type uint8
+- Physical uint8
+- Addrlen uint8
+- Hdrlen uint8
+- Link_state uint8
+- Vhid uint8
+- Datalen uint16
+- Mtu uint32
+- Metric uint32
+- Baudrate uint64
+- Ipackets uint64
+- Ierrors uint64
+- Opackets uint64
+- Oerrors uint64
+- Collisions uint64
+- Ibytes uint64
+- Obytes uint64
+- Imcasts uint64
+- Omcasts uint64
+- Iqdrops uint64
+- Oqdrops uint64
+- Noproto uint64
+- Hwassist uint64
+- X__ifi_epoch [8]byte
+- X__ifi_lastchange [16]byte
++ Type uint8
++ Physical uint8
++ Addrlen uint8
++ Hdrlen uint8
++ Link_state uint8
++ Vhid uint8
++ Datalen uint16
++ Mtu uint32
++ Metric uint32
++ Baudrate uint64
++ Ipackets uint64
++ Ierrors uint64
++ Opackets uint64
++ Oerrors uint64
++ Collisions uint64
++ Ibytes uint64
++ Obytes uint64
++ Imcasts uint64
++ Omcasts uint64
++ Iqdrops uint64
++ Oqdrops uint64
++ Noproto uint64
++ Hwassist uint64
++ _ [8]byte
++ _ [16]byte
+ }
+
+ type IfData struct {
+@@ -376,30 +507,30 @@ type IfData struct {
+ Iqdrops uint32
+ Noproto uint32
+ Hwassist uint32
+- Pad_cgo_0 [4]byte
++ _ [4]byte
+ Epoch int64
+ Lastchange Timeval
+ }
+
+ type IfaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Metric int32
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Metric int32
+ }
+
+ type IfmaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
+ }
+
+ type IfAnnounceMsghdr struct {
+@@ -412,19 +543,19 @@ type IfAnnounceMsghdr struct {
+ }
+
+ type RtMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Flags int32
+- Addrs int32
+- Pid int32
+- Seq int32
+- Errno int32
+- Fmask int32
+- Inits uint32
+- Rmx RtMetrics
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Index uint16
++ _ [2]byte
++ Flags int32
++ Addrs int32
++ Pid int32
++ Seq int32
++ Errno int32
++ Fmask int32
++ Inits uint32
++ Rmx RtMetrics
+ }
+
+ type RtMetrics struct {
+@@ -481,18 +612,18 @@ type BpfInsn struct {
+ }
+
+ type BpfHdr struct {
+- Tstamp Timeval
+- Caplen uint32
+- Datalen uint32
+- Hdrlen uint16
+- Pad_cgo_0 [6]byte
++ Tstamp Timeval
++ Caplen uint32
++ Datalen uint32
++ Hdrlen uint16
++ _ [6]byte
+ }
+
+ type BpfZbufHeader struct {
+ Kernel_gen uint32
+ Kernel_len uint32
+ User_gen uint32
+- X_bzh_pad [5]uint32
++ _ [5]uint32
+ }
+
+ type Termios struct {
+@@ -519,6 +650,44 @@ const (
+ AT_SYMLINK_NOFOLLOW = 0x200
+ )
+
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLINIGNEOF = 0x2000
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
+ type CapRights struct {
+ Rights [2]uint64
+ }
++
++type Utsname struct {
++ Sysname [256]byte
++ Nodename [256]byte
++ Release [256]byte
++ Version [256]byte
++ Machine [256]byte
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Spare int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go
+similarity index 54%
+copy from vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
+copy to vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go
+index c65d89e4..c6fe1d09 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go
+@@ -1,16 +1,16 @@
+-// cgo -godefs types_freebsd.go | go run mkpost.go
++// cgo -godefs -- -fsigned-char types_freebsd.go | go run mkpost.go
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build amd64,freebsd
++// +build arm64,freebsd
+
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x8
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x8
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -57,40 +57,50 @@ type Rlimit struct {
+ type _Gid_t uint32
+
+ const (
+- S_IFMT = 0xf000
+- S_IFIFO = 0x1000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFBLK = 0x6000
+- S_IFREG = 0x8000
+- S_IFLNK = 0xa000
+- S_IFSOCK = 0xc000
+- S_ISUID = 0x800
+- S_ISGID = 0x400
+- S_ISVTX = 0x200
+- S_IRUSR = 0x100
+- S_IWUSR = 0x80
+- S_IXUSR = 0x40
++ _statfsVersion = 0x20140518
++ _dirblksiz = 0x400
+ )
+
+ type Stat_t struct {
+- Dev uint32
+- Ino uint32
+- Mode uint16
+- Nlink uint16
+- Uid uint32
+- Gid uint32
+- Rdev uint32
+- Atimespec Timespec
+- Mtimespec Timespec
+- Ctimespec Timespec
+- Size int64
+- Blocks int64
+- Blksize int32
+- Flags uint32
+- Gen uint32
+- Lspare int32
+- Birthtimespec Timespec
++ Dev uint64
++ Ino uint64
++ Nlink uint64
++ Mode uint16
++ _0 int16
++ Uid uint32
++ Gid uint32
++ _1 int32
++ Rdev uint64
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Btim Timespec
++ Size int64
++ Blocks int64
++ Blksize int32
++ Flags uint32
++ Gen uint64
++ Spare [10]uint64
++}
++
++type stat_freebsd11_t struct {
++ Dev uint32
++ Ino uint32
++ Mode uint16
++ Nlink uint16
++ Uid uint32
++ Gid uint32
++ Rdev uint32
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Size int64
++ Blocks int64
++ Blksize int32
++ Flags uint32
++ Gen uint32
++ Lspare int32
++ Btim Timespec
+ }
+
+ type Statfs_t struct {
+@@ -113,22 +123,58 @@ type Statfs_t struct {
+ Owner uint32
+ Fsid Fsid
+ Charspare [80]int8
+- Fstypename [16]int8
+- Mntfromname [88]int8
+- Mntonname [88]int8
++ Fstypename [16]byte
++ Mntfromname [1024]byte
++ Mntonname [1024]byte
++}
++
++type statfs_freebsd11_t struct {
++ Version uint32
++ Type uint32
++ Flags uint64
++ Bsize uint64
++ Iosize uint64
++ Blocks uint64
++ Bfree uint64
++ Bavail int64
++ Files uint64
++ Ffree int64
++ Syncwrites uint64
++ Asyncwrites uint64
++ Syncreads uint64
++ Asyncreads uint64
++ Spare [10]uint64
++ Namemax uint32
++ Owner uint32
++ Fsid Fsid
++ Charspare [80]int8
++ Fstypename [16]byte
++ Mntfromname [88]byte
++ Mntonname [88]byte
+ }
+
+ type Flock_t struct {
+- Start int64
+- Len int64
+- Pid int32
+- Type int16
+- Whence int16
+- Sysid int32
+- Pad_cgo_0 [4]byte
++ Start int64
++ Len int64
++ Pid int32
++ Type int16
++ Whence int16
++ Sysid int32
++ _ [4]byte
+ }
+
+ type Dirent struct {
++ Fileno uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Pad0 uint8
++ Namlen uint16
++ Pad1 uint16
++ Name [256]int8
++}
++
++type dirent_freebsd11 struct {
+ Fileno uint32
+ Reclen uint16
+ Type uint8
+@@ -140,6 +186,10 @@ type Fsid struct {
+ Val [2]int32
+ }
+
++const (
++ PathMax = 0x400
++)
++
+ const (
+ FADV_NORMAL = 0x0
+ FADV_RANDOM = 0x1
+@@ -225,10 +275,8 @@ type IPv6Mreq struct {
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+- Pad_cgo_0 [4]byte
+ Iov *Iovec
+ Iovlen int32
+- Pad_cgo_1 [4]byte
+ Control *byte
+ Controllen uint32
+ Flags int32
+@@ -272,11 +320,93 @@ const (
+ )
+
+ const (
+- PTRACE_TRACEME = 0x0
+- PTRACE_CONT = 0x7
+- PTRACE_KILL = 0x8
++ PTRACE_ATTACH = 0xa
++ PTRACE_CONT = 0x7
++ PTRACE_DETACH = 0xb
++ PTRACE_GETFPREGS = 0x23
++ PTRACE_GETLWPLIST = 0xf
++ PTRACE_GETNUMLWPS = 0xe
++ PTRACE_GETREGS = 0x21
++ PTRACE_IO = 0xc
++ PTRACE_KILL = 0x8
++ PTRACE_LWPEVENTS = 0x18
++ PTRACE_LWPINFO = 0xd
++ PTRACE_SETFPREGS = 0x24
++ PTRACE_SETREGS = 0x22
++ PTRACE_SINGLESTEP = 0x9
++ PTRACE_TRACEME = 0x0
++)
++
++const (
++ PIOD_READ_D = 0x1
++ PIOD_WRITE_D = 0x2
++ PIOD_READ_I = 0x3
++ PIOD_WRITE_I = 0x4
++)
++
++const (
++ PL_FLAG_BORN = 0x100
++ PL_FLAG_EXITED = 0x200
++ PL_FLAG_SI = 0x20
++)
++
++const (
++ TRAP_BRKPT = 0x1
++ TRAP_TRACE = 0x2
+ )
+
++type PtraceLwpInfoStruct struct {
++ Lwpid int32
++ Event int32
++ Flags int32
++ Sigmask Sigset_t
++ Siglist Sigset_t
++ Siginfo __Siginfo
++ Tdname [20]int8
++ Child_pid int32
++ Syscall_code uint32
++ Syscall_narg uint32
++}
++
++type __Siginfo struct {
++ Signo int32
++ Errno int32
++ Code int32
++ Pid int32
++ Uid uint32
++ Status int32
++ Addr *byte
++ Value [8]byte
++ _ [40]byte
++}
++
++type Sigset_t struct {
++ Val [4]uint32
++}
++
++type Reg struct {
++ X [30]uint64
++ Lr uint64
++ Sp uint64
++ Elr uint64
++ Spsr uint32
++ _ [4]byte
++}
++
++type FpReg struct {
++ Q [32][16]uint8
++ Sr uint32
++ Cr uint32
++ _ [8]byte
++}
++
++type PtraceIoDesc struct {
++ Op int32
++ Offs *byte
++ Addr *byte
++ Len uint64
++}
++
+ type Kevent_t struct {
+ Ident uint64
+ Filter int16
+@@ -287,7 +417,7 @@ type Kevent_t struct {
+ }
+
+ type FdSet struct {
+- X__fds_bits [16]uint64
++ Bits [16]uint64
+ }
+
+ const (
+@@ -303,53 +433,52 @@ const (
+ )
+
+ type ifMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Data ifData
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ uint16
++ Data ifData
+ }
+
+ type IfMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Data IfData
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ Data IfData
+ }
+
+ type ifData struct {
+- Type uint8
+- Physical uint8
+- Addrlen uint8
+- Hdrlen uint8
+- Link_state uint8
+- Vhid uint8
+- Datalen uint16
+- Mtu uint32
+- Metric uint32
+- Baudrate uint64
+- Ipackets uint64
+- Ierrors uint64
+- Opackets uint64
+- Oerrors uint64
+- Collisions uint64
+- Ibytes uint64
+- Obytes uint64
+- Imcasts uint64
+- Omcasts uint64
+- Iqdrops uint64
+- Oqdrops uint64
+- Noproto uint64
+- Hwassist uint64
+- X__ifi_epoch [8]byte
+- X__ifi_lastchange [16]byte
++ Type uint8
++ Physical uint8
++ Addrlen uint8
++ Hdrlen uint8
++ Link_state uint8
++ Vhid uint8
++ Datalen uint16
++ Mtu uint32
++ Metric uint32
++ Baudrate uint64
++ Ipackets uint64
++ Ierrors uint64
++ Opackets uint64
++ Oerrors uint64
++ Collisions uint64
++ Ibytes uint64
++ Obytes uint64
++ Imcasts uint64
++ Omcasts uint64
++ Iqdrops uint64
++ Oqdrops uint64
++ Noproto uint64
++ Hwassist uint64
++ _ [8]byte
++ _ [16]byte
+ }
+
+ type IfData struct {
+@@ -381,24 +510,24 @@ type IfData struct {
+ }
+
+ type IfaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Metric int32
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ uint16
++ Metric int32
+ }
+
+ type IfmaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ uint16
+ }
+
+ type IfAnnounceMsghdr struct {
+@@ -411,19 +540,19 @@ type IfAnnounceMsghdr struct {
+ }
+
+ type RtMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Flags int32
+- Addrs int32
+- Pid int32
+- Seq int32
+- Errno int32
+- Fmask int32
+- Inits uint64
+- Rmx RtMetrics
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Index uint16
++ _ uint16
++ Flags int32
++ Addrs int32
++ Pid int32
++ Seq int32
++ Errno int32
++ Fmask int32
++ Inits uint64
++ Rmx RtMetrics
+ }
+
+ type RtMetrics struct {
+@@ -468,9 +597,8 @@ type BpfZbuf struct {
+ }
+
+ type BpfProgram struct {
+- Len uint32
+- Pad_cgo_0 [4]byte
+- Insns *BpfInsn
++ Len uint32
++ Insns *BpfInsn
+ }
+
+ type BpfInsn struct {
+@@ -481,18 +609,18 @@ type BpfInsn struct {
+ }
+
+ type BpfHdr struct {
+- Tstamp Timeval
+- Caplen uint32
+- Datalen uint32
+- Hdrlen uint16
+- Pad_cgo_0 [6]byte
++ Tstamp Timeval
++ Caplen uint32
++ Datalen uint32
++ Hdrlen uint16
++ _ [6]byte
+ }
+
+ type BpfZbufHeader struct {
+ Kernel_gen uint32
+ Kernel_len uint32
+ User_gen uint32
+- X_bzh_pad [5]uint32
++ _ [5]uint32
+ }
+
+ type Termios struct {
+@@ -519,6 +647,44 @@ const (
+ AT_SYMLINK_NOFOLLOW = 0x200
+ )
+
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLINIGNEOF = 0x2000
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
+ type CapRights struct {
+ Rights [2]uint64
+ }
++
++type Utsname struct {
++ Sysname [256]byte
++ Nodename [256]byte
++ Release [256]byte
++ Version [256]byte
++ Machine [256]byte
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Spare int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux.go b/vendor/golang.org/x/sys/unix/ztypes_linux.go
+new file mode 100644
+index 00000000..af5ab455
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/ztypes_linux.go
+@@ -0,0 +1,2340 @@
++// Code generated by mkmerge.go; DO NOT EDIT.
++
++// +build linux
++
++package unix
++
++const (
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLongLong = 0x8
++ PathMax = 0x1000
++)
++
++type (
++ _C_short int16
++ _C_int int32
++
++ _C_long_long int64
++)
++
++const (
++ TIME_OK = 0x0
++ TIME_INS = 0x1
++ TIME_DEL = 0x2
++ TIME_OOP = 0x3
++ TIME_WAIT = 0x4
++ TIME_ERROR = 0x5
++ TIME_BAD = 0x5
++)
++
++type Rlimit struct {
++ Cur uint64
++ Max uint64
++}
++
++type _Gid_t uint32
++
++type StatxTimestamp struct {
++ Sec int64
++ Nsec uint32
++ _ int32
++}
++
++type Statx_t struct {
++ Mask uint32
++ Blksize uint32
++ Attributes uint64
++ Nlink uint32
++ Uid uint32
++ Gid uint32
++ Mode uint16
++ _ [1]uint16
++ Ino uint64
++ Size uint64
++ Blocks uint64
++ Attributes_mask uint64
++ Atime StatxTimestamp
++ Btime StatxTimestamp
++ Ctime StatxTimestamp
++ Mtime StatxTimestamp
++ Rdev_major uint32
++ Rdev_minor uint32
++ Dev_major uint32
++ Dev_minor uint32
++ _ [14]uint64
++}
++
++type Fsid struct {
++ Val [2]int32
++}
++
++type FscryptPolicy struct {
++ Version uint8
++ Contents_encryption_mode uint8
++ Filenames_encryption_mode uint8
++ Flags uint8
++ Master_key_descriptor [8]uint8
++}
++
++type FscryptKey struct {
++ Mode uint32
++ Raw [64]uint8
++ Size uint32
++}
++
++type FscryptPolicyV1 struct {
++ Version uint8
++ Contents_encryption_mode uint8
++ Filenames_encryption_mode uint8
++ Flags uint8
++ Master_key_descriptor [8]uint8
++}
++
++type FscryptPolicyV2 struct {
++ Version uint8
++ Contents_encryption_mode uint8
++ Filenames_encryption_mode uint8
++ Flags uint8
++ _ [4]uint8
++ Master_key_identifier [16]uint8
++}
++
++type FscryptGetPolicyExArg struct {
++ Size uint64
++ Policy [24]byte
++}
++
++type FscryptKeySpecifier struct {
++ Type uint32
++ _ uint32
++ U [32]byte
++}
++
++type FscryptAddKeyArg struct {
++ Key_spec FscryptKeySpecifier
++ Raw_size uint32
++ Key_id uint32
++ _ [8]uint32
++}
++
++type FscryptRemoveKeyArg struct {
++ Key_spec FscryptKeySpecifier
++ Removal_status_flags uint32
++ _ [5]uint32
++}
++
++type FscryptGetKeyStatusArg struct {
++ Key_spec FscryptKeySpecifier
++ _ [6]uint32
++ Status uint32
++ Status_flags uint32
++ User_count uint32
++ _ [13]uint32
++}
++
++type KeyctlDHParams struct {
++ Private int32
++ Prime int32
++ Base int32
++}
++
++const (
++ FADV_NORMAL = 0x0
++ FADV_RANDOM = 0x1
++ FADV_SEQUENTIAL = 0x2
++ FADV_WILLNEED = 0x3
++)
++
++type RawSockaddrInet4 struct {
++ Family uint16
++ Port uint16
++ Addr [4]byte /* in_addr */
++ Zero [8]uint8
++}
++
++type RawSockaddrInet6 struct {
++ Family uint16
++ Port uint16
++ Flowinfo uint32
++ Addr [16]byte /* in6_addr */
++ Scope_id uint32
++}
++
++type RawSockaddrUnix struct {
++ Family uint16
++ Path [108]int8
++}
++
++type RawSockaddrLinklayer struct {
++ Family uint16
++ Protocol uint16
++ Ifindex int32
++ Hatype uint16
++ Pkttype uint8
++ Halen uint8
++ Addr [8]uint8
++}
++
++type RawSockaddrNetlink struct {
++ Family uint16
++ Pad uint16
++ Pid uint32
++ Groups uint32
++}
++
++type RawSockaddrHCI struct {
++ Family uint16
++ Dev uint16
++ Channel uint16
++}
++
++type RawSockaddrL2 struct {
++ Family uint16
++ Psm uint16
++ Bdaddr [6]uint8
++ Cid uint16
++ Bdaddr_type uint8
++ _ [1]byte
++}
++
++type RawSockaddrRFCOMM struct {
++ Family uint16
++ Bdaddr [6]uint8
++ Channel uint8
++ _ [1]byte
++}
++
++type RawSockaddrCAN struct {
++ Family uint16
++ Ifindex int32
++ Addr [16]byte
++}
++
++type RawSockaddrALG struct {
++ Family uint16
++ Type [14]uint8
++ Feat uint32
++ Mask uint32
++ Name [64]uint8
++}
++
++type RawSockaddrVM struct {
++ Family uint16
++ Reserved1 uint16
++ Port uint32
++ Cid uint32
++ Zero [4]uint8
++}
++
++type RawSockaddrXDP struct {
++ Family uint16
++ Flags uint16
++ Ifindex uint32
++ Queue_id uint32
++ Shared_umem_fd uint32
++}
++
++type RawSockaddrPPPoX [0x1e]byte
++
++type RawSockaddrTIPC struct {
++ Family uint16
++ Addrtype uint8
++ Scope int8
++ Addr [12]byte
++}
++
++type RawSockaddrL2TPIP struct {
++ Family uint16
++ Unused uint16
++ Addr [4]byte /* in_addr */
++ Conn_id uint32
++ _ [4]uint8
++}
++
++type RawSockaddrL2TPIP6 struct {
++ Family uint16
++ Unused uint16
++ Flowinfo uint32
++ Addr [16]byte /* in6_addr */
++ Scope_id uint32
++ Conn_id uint32
++}
++
++type _Socklen uint32
++
++type Linger struct {
++ Onoff int32
++ Linger int32
++}
++
++type IPMreq struct {
++ Multiaddr [4]byte /* in_addr */
++ Interface [4]byte /* in_addr */
++}
++
++type IPMreqn struct {
++ Multiaddr [4]byte /* in_addr */
++ Address [4]byte /* in_addr */
++ Ifindex int32
++}
++
++type IPv6Mreq struct {
++ Multiaddr [16]byte /* in6_addr */
++ Interface uint32
++}
++
++type PacketMreq struct {
++ Ifindex int32
++ Type uint16
++ Alen uint16
++ Address [8]uint8
++}
++
++type Inet4Pktinfo struct {
++ Ifindex int32
++ Spec_dst [4]byte /* in_addr */
++ Addr [4]byte /* in_addr */
++}
++
++type Inet6Pktinfo struct {
++ Addr [16]byte /* in6_addr */
++ Ifindex uint32
++}
++
++type IPv6MTUInfo struct {
++ Addr RawSockaddrInet6
++ Mtu uint32
++}
++
++type ICMPv6Filter struct {
++ Data [8]uint32
++}
++
++type Ucred struct {
++ Pid int32
++ Uid uint32
++ Gid uint32
++}
++
++type TCPInfo struct {
++ State uint8
++ Ca_state uint8
++ Retransmits uint8
++ Probes uint8
++ Backoff uint8
++ Options uint8
++ Rto uint32
++ Ato uint32
++ Snd_mss uint32
++ Rcv_mss uint32
++ Unacked uint32
++ Sacked uint32
++ Lost uint32
++ Retrans uint32
++ Fackets uint32
++ Last_data_sent uint32
++ Last_ack_sent uint32
++ Last_data_recv uint32
++ Last_ack_recv uint32
++ Pmtu uint32
++ Rcv_ssthresh uint32
++ Rtt uint32
++ Rttvar uint32
++ Snd_ssthresh uint32
++ Snd_cwnd uint32
++ Advmss uint32
++ Reordering uint32
++ Rcv_rtt uint32
++ Rcv_space uint32
++ Total_retrans uint32
++}
++
++type CanFilter struct {
++ Id uint32
++ Mask uint32
++}
++
++const (
++ SizeofSockaddrInet4 = 0x10
++ SizeofSockaddrInet6 = 0x1c
++ SizeofSockaddrAny = 0x70
++ SizeofSockaddrUnix = 0x6e
++ SizeofSockaddrLinklayer = 0x14
++ SizeofSockaddrNetlink = 0xc
++ SizeofSockaddrHCI = 0x6
++ SizeofSockaddrL2 = 0xe
++ SizeofSockaddrRFCOMM = 0xa
++ SizeofSockaddrCAN = 0x18
++ SizeofSockaddrALG = 0x58
++ SizeofSockaddrVM = 0x10
++ SizeofSockaddrXDP = 0x10
++ SizeofSockaddrPPPoX = 0x1e
++ SizeofSockaddrTIPC = 0x10
++ SizeofSockaddrL2TPIP = 0x10
++ SizeofSockaddrL2TPIP6 = 0x20
++ SizeofLinger = 0x8
++ SizeofIPMreq = 0x8
++ SizeofIPMreqn = 0xc
++ SizeofIPv6Mreq = 0x14
++ SizeofPacketMreq = 0x10
++ SizeofInet4Pktinfo = 0xc
++ SizeofInet6Pktinfo = 0x14
++ SizeofIPv6MTUInfo = 0x20
++ SizeofICMPv6Filter = 0x20
++ SizeofUcred = 0xc
++ SizeofTCPInfo = 0x68
++ SizeofCanFilter = 0x8
++)
++
++const (
++ NDA_UNSPEC = 0x0
++ NDA_DST = 0x1
++ NDA_LLADDR = 0x2
++ NDA_CACHEINFO = 0x3
++ NDA_PROBES = 0x4
++ NDA_VLAN = 0x5
++ NDA_PORT = 0x6
++ NDA_VNI = 0x7
++ NDA_IFINDEX = 0x8
++ NDA_MASTER = 0x9
++ NDA_LINK_NETNSID = 0xa
++ NDA_SRC_VNI = 0xb
++ NTF_USE = 0x1
++ NTF_SELF = 0x2
++ NTF_MASTER = 0x4
++ NTF_PROXY = 0x8
++ NTF_EXT_LEARNED = 0x10
++ NTF_OFFLOADED = 0x20
++ NTF_ROUTER = 0x80
++ NUD_INCOMPLETE = 0x1
++ NUD_REACHABLE = 0x2
++ NUD_STALE = 0x4
++ NUD_DELAY = 0x8
++ NUD_PROBE = 0x10
++ NUD_FAILED = 0x20
++ NUD_NOARP = 0x40
++ NUD_PERMANENT = 0x80
++ NUD_NONE = 0x0
++ IFA_UNSPEC = 0x0
++ IFA_ADDRESS = 0x1
++ IFA_LOCAL = 0x2
++ IFA_LABEL = 0x3
++ IFA_BROADCAST = 0x4
++ IFA_ANYCAST = 0x5
++ IFA_CACHEINFO = 0x6
++ IFA_MULTICAST = 0x7
++ IFA_FLAGS = 0x8
++ IFA_RT_PRIORITY = 0x9
++ IFA_TARGET_NETNSID = 0xa
++ IFLA_UNSPEC = 0x0
++ IFLA_ADDRESS = 0x1
++ IFLA_BROADCAST = 0x2
++ IFLA_IFNAME = 0x3
++ IFLA_MTU = 0x4
++ IFLA_LINK = 0x5
++ IFLA_QDISC = 0x6
++ IFLA_STATS = 0x7
++ IFLA_COST = 0x8
++ IFLA_PRIORITY = 0x9
++ IFLA_MASTER = 0xa
++ IFLA_WIRELESS = 0xb
++ IFLA_PROTINFO = 0xc
++ IFLA_TXQLEN = 0xd
++ IFLA_MAP = 0xe
++ IFLA_WEIGHT = 0xf
++ IFLA_OPERSTATE = 0x10
++ IFLA_LINKMODE = 0x11
++ IFLA_LINKINFO = 0x12
++ IFLA_NET_NS_PID = 0x13
++ IFLA_IFALIAS = 0x14
++ IFLA_NUM_VF = 0x15
++ IFLA_VFINFO_LIST = 0x16
++ IFLA_STATS64 = 0x17
++ IFLA_VF_PORTS = 0x18
++ IFLA_PORT_SELF = 0x19
++ IFLA_AF_SPEC = 0x1a
++ IFLA_GROUP = 0x1b
++ IFLA_NET_NS_FD = 0x1c
++ IFLA_EXT_MASK = 0x1d
++ IFLA_PROMISCUITY = 0x1e
++ IFLA_NUM_TX_QUEUES = 0x1f
++ IFLA_NUM_RX_QUEUES = 0x20
++ IFLA_CARRIER = 0x21
++ IFLA_PHYS_PORT_ID = 0x22
++ IFLA_CARRIER_CHANGES = 0x23
++ IFLA_PHYS_SWITCH_ID = 0x24
++ IFLA_LINK_NETNSID = 0x25
++ IFLA_PHYS_PORT_NAME = 0x26
++ IFLA_PROTO_DOWN = 0x27
++ IFLA_GSO_MAX_SEGS = 0x28
++ IFLA_GSO_MAX_SIZE = 0x29
++ IFLA_PAD = 0x2a
++ IFLA_XDP = 0x2b
++ IFLA_EVENT = 0x2c
++ IFLA_NEW_NETNSID = 0x2d
++ IFLA_IF_NETNSID = 0x2e
++ IFLA_TARGET_NETNSID = 0x2e
++ IFLA_CARRIER_UP_COUNT = 0x2f
++ IFLA_CARRIER_DOWN_COUNT = 0x30
++ IFLA_NEW_IFINDEX = 0x31
++ IFLA_MIN_MTU = 0x32
++ IFLA_MAX_MTU = 0x33
++ IFLA_MAX = 0x36
++ IFLA_INFO_KIND = 0x1
++ IFLA_INFO_DATA = 0x2
++ IFLA_INFO_XSTATS = 0x3
++ IFLA_INFO_SLAVE_KIND = 0x4
++ IFLA_INFO_SLAVE_DATA = 0x5
++ RT_SCOPE_UNIVERSE = 0x0
++ RT_SCOPE_SITE = 0xc8
++ RT_SCOPE_LINK = 0xfd
++ RT_SCOPE_HOST = 0xfe
++ RT_SCOPE_NOWHERE = 0xff
++ RT_TABLE_UNSPEC = 0x0
++ RT_TABLE_COMPAT = 0xfc
++ RT_TABLE_DEFAULT = 0xfd
++ RT_TABLE_MAIN = 0xfe
++ RT_TABLE_LOCAL = 0xff
++ RT_TABLE_MAX = 0xffffffff
++ RTA_UNSPEC = 0x0
++ RTA_DST = 0x1
++ RTA_SRC = 0x2
++ RTA_IIF = 0x3
++ RTA_OIF = 0x4
++ RTA_GATEWAY = 0x5
++ RTA_PRIORITY = 0x6
++ RTA_PREFSRC = 0x7
++ RTA_METRICS = 0x8
++ RTA_MULTIPATH = 0x9
++ RTA_FLOW = 0xb
++ RTA_CACHEINFO = 0xc
++ RTA_TABLE = 0xf
++ RTA_MARK = 0x10
++ RTA_MFC_STATS = 0x11
++ RTA_VIA = 0x12
++ RTA_NEWDST = 0x13
++ RTA_PREF = 0x14
++ RTA_ENCAP_TYPE = 0x15
++ RTA_ENCAP = 0x16
++ RTA_EXPIRES = 0x17
++ RTA_PAD = 0x18
++ RTA_UID = 0x19
++ RTA_TTL_PROPAGATE = 0x1a
++ RTA_IP_PROTO = 0x1b
++ RTA_SPORT = 0x1c
++ RTA_DPORT = 0x1d
++ RTN_UNSPEC = 0x0
++ RTN_UNICAST = 0x1
++ RTN_LOCAL = 0x2
++ RTN_BROADCAST = 0x3
++ RTN_ANYCAST = 0x4
++ RTN_MULTICAST = 0x5
++ RTN_BLACKHOLE = 0x6
++ RTN_UNREACHABLE = 0x7
++ RTN_PROHIBIT = 0x8
++ RTN_THROW = 0x9
++ RTN_NAT = 0xa
++ RTN_XRESOLVE = 0xb
++ SizeofNlMsghdr = 0x10
++ SizeofNlMsgerr = 0x14
++ SizeofRtGenmsg = 0x1
++ SizeofNlAttr = 0x4
++ SizeofRtAttr = 0x4
++ SizeofIfInfomsg = 0x10
++ SizeofIfAddrmsg = 0x8
++ SizeofIfaCacheinfo = 0x10
++ SizeofRtMsg = 0xc
++ SizeofRtNexthop = 0x8
++ SizeofNdUseroptmsg = 0x10
++ SizeofNdMsg = 0xc
++)
++
++type NlMsghdr struct {
++ Len uint32
++ Type uint16
++ Flags uint16
++ Seq uint32
++ Pid uint32
++}
++
++type NlMsgerr struct {
++ Error int32
++ Msg NlMsghdr
++}
++
++type RtGenmsg struct {
++ Family uint8
++}
++
++type NlAttr struct {
++ Len uint16
++ Type uint16
++}
++
++type RtAttr struct {
++ Len uint16
++ Type uint16
++}
++
++type IfInfomsg struct {
++ Family uint8
++ _ uint8
++ Type uint16
++ Index int32
++ Flags uint32
++ Change uint32
++}
++
++type IfAddrmsg struct {
++ Family uint8
++ Prefixlen uint8
++ Flags uint8
++ Scope uint8
++ Index uint32
++}
++
++type IfaCacheinfo struct {
++ Prefered uint32
++ Valid uint32
++ Cstamp uint32
++ Tstamp uint32
++}
++
++type RtMsg struct {
++ Family uint8
++ Dst_len uint8
++ Src_len uint8
++ Tos uint8
++ Table uint8
++ Protocol uint8
++ Scope uint8
++ Type uint8
++ Flags uint32
++}
++
++type RtNexthop struct {
++ Len uint16
++ Flags uint8
++ Hops uint8
++ Ifindex int32
++}
++
++type NdUseroptmsg struct {
++ Family uint8
++ Pad1 uint8
++ Opts_len uint16
++ Ifindex int32
++ Icmp_type uint8
++ Icmp_code uint8
++ Pad2 uint16
++ Pad3 uint32
++}
++
++type NdMsg struct {
++ Family uint8
++ Pad1 uint8
++ Pad2 uint16
++ Ifindex int32
++ State uint16
++ Flags uint8
++ Type uint8
++}
++
++const (
++ SizeofSockFilter = 0x8
++)
++
++type SockFilter struct {
++ Code uint16
++ Jt uint8
++ Jf uint8
++ K uint32
++}
++
++type SockFprog struct {
++ Len uint16
++ Filter *SockFilter
++}
++
++type InotifyEvent struct {
++ Wd int32
++ Mask uint32
++ Cookie uint32
++ Len uint32
++}
++
++const SizeofInotifyEvent = 0x10
++
++type Utsname struct {
++ Sysname [65]byte
++ Nodename [65]byte
++ Release [65]byte
++ Version [65]byte
++ Machine [65]byte
++ Domainname [65]byte
++}
++
++const (
++ AT_EMPTY_PATH = 0x1000
++ AT_FDCWD = -0x64
++ AT_NO_AUTOMOUNT = 0x800
++ AT_REMOVEDIR = 0x200
++
++ AT_STATX_SYNC_AS_STAT = 0x0
++ AT_STATX_FORCE_SYNC = 0x2000
++ AT_STATX_DONT_SYNC = 0x4000
++
++ AT_SYMLINK_FOLLOW = 0x400
++ AT_SYMLINK_NOFOLLOW = 0x100
++
++ AT_EACCESS = 0x200
++)
++
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLIN = 0x1
++ POLLPRI = 0x2
++ POLLOUT = 0x4
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLNVAL = 0x20
++)
++
++type SignalfdSiginfo struct {
++ Signo uint32
++ Errno int32
++ Code int32
++ Pid uint32
++ Uid uint32
++ Fd int32
++ Tid uint32
++ Band uint32
++ Overrun uint32
++ Trapno uint32
++ Status int32
++ Int int32
++ Ptr uint64
++ Utime uint64
++ Stime uint64
++ Addr uint64
++ Addr_lsb uint16
++ _ uint16
++ Syscall int32
++ Call_addr uint64
++ Arch uint32
++ _ [28]uint8
++}
++
++const PERF_IOC_FLAG_GROUP = 0x1
++
++type Winsize struct {
++ Row uint16
++ Col uint16
++ Xpixel uint16
++ Ypixel uint16
++}
++
++const (
++ TASKSTATS_CMD_UNSPEC = 0x0
++ TASKSTATS_CMD_GET = 0x1
++ TASKSTATS_CMD_NEW = 0x2
++ TASKSTATS_TYPE_UNSPEC = 0x0
++ TASKSTATS_TYPE_PID = 0x1
++ TASKSTATS_TYPE_TGID = 0x2
++ TASKSTATS_TYPE_STATS = 0x3
++ TASKSTATS_TYPE_AGGR_PID = 0x4
++ TASKSTATS_TYPE_AGGR_TGID = 0x5
++ TASKSTATS_TYPE_NULL = 0x6
++ TASKSTATS_CMD_ATTR_UNSPEC = 0x0
++ TASKSTATS_CMD_ATTR_PID = 0x1
++ TASKSTATS_CMD_ATTR_TGID = 0x2
++ TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
++ TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
++)
++
++type CGroupStats struct {
++ Sleeping uint64
++ Running uint64
++ Stopped uint64
++ Uninterruptible uint64
++ Io_wait uint64
++}
++
++const (
++ CGROUPSTATS_CMD_UNSPEC = 0x3
++ CGROUPSTATS_CMD_GET = 0x4
++ CGROUPSTATS_CMD_NEW = 0x5
++ CGROUPSTATS_TYPE_UNSPEC = 0x0
++ CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
++ CGROUPSTATS_CMD_ATTR_UNSPEC = 0x0
++ CGROUPSTATS_CMD_ATTR_FD = 0x1
++)
++
++type Genlmsghdr struct {
++ Cmd uint8
++ Version uint8
++ Reserved uint16
++}
++
++const (
++ CTRL_CMD_UNSPEC = 0x0
++ CTRL_CMD_NEWFAMILY = 0x1
++ CTRL_CMD_DELFAMILY = 0x2
++ CTRL_CMD_GETFAMILY = 0x3
++ CTRL_CMD_NEWOPS = 0x4
++ CTRL_CMD_DELOPS = 0x5
++ CTRL_CMD_GETOPS = 0x6
++ CTRL_CMD_NEWMCAST_GRP = 0x7
++ CTRL_CMD_DELMCAST_GRP = 0x8
++ CTRL_CMD_GETMCAST_GRP = 0x9
++ CTRL_ATTR_UNSPEC = 0x0
++ CTRL_ATTR_FAMILY_ID = 0x1
++ CTRL_ATTR_FAMILY_NAME = 0x2
++ CTRL_ATTR_VERSION = 0x3
++ CTRL_ATTR_HDRSIZE = 0x4
++ CTRL_ATTR_MAXATTR = 0x5
++ CTRL_ATTR_OPS = 0x6
++ CTRL_ATTR_MCAST_GROUPS = 0x7
++ 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
++)
++
++const (
++ _CPU_SETSIZE = 0x400
++)
++
++const (
++ BDADDR_BREDR = 0x0
++ BDADDR_LE_PUBLIC = 0x1
++ BDADDR_LE_RANDOM = 0x2
++)
++
++type PerfEventAttr struct {
++ Type uint32
++ Size uint32
++ Config uint64
++ Sample uint64
++ Sample_type uint64
++ Read_format uint64
++ Bits uint64
++ Wakeup uint32
++ Bp_type uint32
++ Ext1 uint64
++ Ext2 uint64
++ Branch_sample_type uint64
++ Sample_regs_user uint64
++ Sample_stack_user uint32
++ Clockid int32
++ Sample_regs_intr uint64
++ Aux_watermark uint32
++ Sample_max_stack uint16
++ _ uint16
++}
++
++type PerfEventMmapPage struct {
++ Version uint32
++ Compat_version uint32
++ Lock uint32
++ Index uint32
++ Offset int64
++ Time_enabled uint64
++ Time_running uint64
++ Capabilities uint64
++ Pmc_width uint16
++ Time_shift uint16
++ Time_mult uint32
++ Time_offset uint64
++ Time_zero uint64
++ Size uint32
++ _ [948]uint8
++ Data_head uint64
++ Data_tail uint64
++ Data_offset uint64
++ Data_size uint64
++ Aux_head uint64
++ Aux_tail uint64
++ Aux_offset uint64
++ Aux_size uint64
++}
++
++const (
++ PerfBitDisabled uint64 = CBitFieldMaskBit0
++ PerfBitInherit = CBitFieldMaskBit1
++ PerfBitPinned = CBitFieldMaskBit2
++ PerfBitExclusive = CBitFieldMaskBit3
++ PerfBitExcludeUser = CBitFieldMaskBit4
++ PerfBitExcludeKernel = CBitFieldMaskBit5
++ PerfBitExcludeHv = CBitFieldMaskBit6
++ PerfBitExcludeIdle = CBitFieldMaskBit7
++ PerfBitMmap = CBitFieldMaskBit8
++ PerfBitComm = CBitFieldMaskBit9
++ PerfBitFreq = CBitFieldMaskBit10
++ PerfBitInheritStat = CBitFieldMaskBit11
++ PerfBitEnableOnExec = CBitFieldMaskBit12
++ PerfBitTask = CBitFieldMaskBit13
++ PerfBitWatermark = CBitFieldMaskBit14
++ PerfBitPreciseIPBit1 = CBitFieldMaskBit15
++ PerfBitPreciseIPBit2 = CBitFieldMaskBit16
++ PerfBitMmapData = CBitFieldMaskBit17
++ PerfBitSampleIDAll = CBitFieldMaskBit18
++ PerfBitExcludeHost = CBitFieldMaskBit19
++ PerfBitExcludeGuest = CBitFieldMaskBit20
++ PerfBitExcludeCallchainKernel = CBitFieldMaskBit21
++ PerfBitExcludeCallchainUser = CBitFieldMaskBit22
++ PerfBitMmap2 = CBitFieldMaskBit23
++ PerfBitCommExec = CBitFieldMaskBit24
++ PerfBitUseClockID = CBitFieldMaskBit25
++ PerfBitContextSwitch = CBitFieldMaskBit26
++)
++
++const (
++ PERF_TYPE_HARDWARE = 0x0
++ PERF_TYPE_SOFTWARE = 0x1
++ PERF_TYPE_TRACEPOINT = 0x2
++ PERF_TYPE_HW_CACHE = 0x3
++ PERF_TYPE_RAW = 0x4
++ PERF_TYPE_BREAKPOINT = 0x5
++
++ PERF_COUNT_HW_CPU_CYCLES = 0x0
++ PERF_COUNT_HW_INSTRUCTIONS = 0x1
++ PERF_COUNT_HW_CACHE_REFERENCES = 0x2
++ PERF_COUNT_HW_CACHE_MISSES = 0x3
++ PERF_COUNT_HW_BRANCH_INSTRUCTIONS = 0x4
++ PERF_COUNT_HW_BRANCH_MISSES = 0x5
++ PERF_COUNT_HW_BUS_CYCLES = 0x6
++ PERF_COUNT_HW_STALLED_CYCLES_FRONTEND = 0x7
++ PERF_COUNT_HW_STALLED_CYCLES_BACKEND = 0x8
++ PERF_COUNT_HW_REF_CPU_CYCLES = 0x9
++
++ PERF_COUNT_HW_CACHE_L1D = 0x0
++ PERF_COUNT_HW_CACHE_L1I = 0x1
++ PERF_COUNT_HW_CACHE_LL = 0x2
++ PERF_COUNT_HW_CACHE_DTLB = 0x3
++ PERF_COUNT_HW_CACHE_ITLB = 0x4
++ PERF_COUNT_HW_CACHE_BPU = 0x5
++ PERF_COUNT_HW_CACHE_NODE = 0x6
++
++ PERF_COUNT_HW_CACHE_OP_READ = 0x0
++ PERF_COUNT_HW_CACHE_OP_WRITE = 0x1
++ PERF_COUNT_HW_CACHE_OP_PREFETCH = 0x2
++
++ PERF_COUNT_HW_CACHE_RESULT_ACCESS = 0x0
++ PERF_COUNT_HW_CACHE_RESULT_MISS = 0x1
++
++ PERF_COUNT_SW_CPU_CLOCK = 0x0
++ PERF_COUNT_SW_TASK_CLOCK = 0x1
++ PERF_COUNT_SW_PAGE_FAULTS = 0x2
++ PERF_COUNT_SW_CONTEXT_SWITCHES = 0x3
++ PERF_COUNT_SW_CPU_MIGRATIONS = 0x4
++ PERF_COUNT_SW_PAGE_FAULTS_MIN = 0x5
++ PERF_COUNT_SW_PAGE_FAULTS_MAJ = 0x6
++ PERF_COUNT_SW_ALIGNMENT_FAULTS = 0x7
++ PERF_COUNT_SW_EMULATION_FAULTS = 0x8
++ PERF_COUNT_SW_DUMMY = 0x9
++ PERF_COUNT_SW_BPF_OUTPUT = 0xa
++
++ PERF_SAMPLE_IP = 0x1
++ PERF_SAMPLE_TID = 0x2
++ PERF_SAMPLE_TIME = 0x4
++ PERF_SAMPLE_ADDR = 0x8
++ PERF_SAMPLE_READ = 0x10
++ PERF_SAMPLE_CALLCHAIN = 0x20
++ PERF_SAMPLE_ID = 0x40
++ PERF_SAMPLE_CPU = 0x80
++ PERF_SAMPLE_PERIOD = 0x100
++ PERF_SAMPLE_STREAM_ID = 0x200
++ PERF_SAMPLE_RAW = 0x400
++ PERF_SAMPLE_BRANCH_STACK = 0x800
++
++ PERF_SAMPLE_BRANCH_USER = 0x1
++ PERF_SAMPLE_BRANCH_KERNEL = 0x2
++ PERF_SAMPLE_BRANCH_HV = 0x4
++ PERF_SAMPLE_BRANCH_ANY = 0x8
++ PERF_SAMPLE_BRANCH_ANY_CALL = 0x10
++ PERF_SAMPLE_BRANCH_ANY_RETURN = 0x20
++ PERF_SAMPLE_BRANCH_IND_CALL = 0x40
++ PERF_SAMPLE_BRANCH_ABORT_TX = 0x80
++ PERF_SAMPLE_BRANCH_IN_TX = 0x100
++ PERF_SAMPLE_BRANCH_NO_TX = 0x200
++ PERF_SAMPLE_BRANCH_COND = 0x400
++ PERF_SAMPLE_BRANCH_CALL_STACK = 0x800
++ PERF_SAMPLE_BRANCH_IND_JUMP = 0x1000
++ PERF_SAMPLE_BRANCH_CALL = 0x2000
++ PERF_SAMPLE_BRANCH_NO_FLAGS = 0x4000
++ PERF_SAMPLE_BRANCH_NO_CYCLES = 0x8000
++ PERF_SAMPLE_BRANCH_TYPE_SAVE = 0x10000
++
++ PERF_FORMAT_TOTAL_TIME_ENABLED = 0x1
++ PERF_FORMAT_TOTAL_TIME_RUNNING = 0x2
++ PERF_FORMAT_ID = 0x4
++ PERF_FORMAT_GROUP = 0x8
++
++ PERF_RECORD_MMAP = 0x1
++ PERF_RECORD_LOST = 0x2
++ PERF_RECORD_COMM = 0x3
++ PERF_RECORD_EXIT = 0x4
++ PERF_RECORD_THROTTLE = 0x5
++ PERF_RECORD_UNTHROTTLE = 0x6
++ PERF_RECORD_FORK = 0x7
++ PERF_RECORD_READ = 0x8
++ PERF_RECORD_SAMPLE = 0x9
++ PERF_RECORD_MMAP2 = 0xa
++ PERF_RECORD_AUX = 0xb
++ PERF_RECORD_ITRACE_START = 0xc
++ PERF_RECORD_LOST_SAMPLES = 0xd
++ PERF_RECORD_SWITCH = 0xe
++ PERF_RECORD_SWITCH_CPU_WIDE = 0xf
++ PERF_RECORD_NAMESPACES = 0x10
++
++ PERF_CONTEXT_HV = -0x20
++ PERF_CONTEXT_KERNEL = -0x80
++ PERF_CONTEXT_USER = -0x200
++
++ PERF_CONTEXT_GUEST = -0x800
++ PERF_CONTEXT_GUEST_KERNEL = -0x880
++ PERF_CONTEXT_GUEST_USER = -0xa00
++
++ PERF_FLAG_FD_NO_GROUP = 0x1
++ PERF_FLAG_FD_OUTPUT = 0x2
++ PERF_FLAG_PID_CGROUP = 0x4
++ PERF_FLAG_FD_CLOEXEC = 0x8
++)
++
++type TCPMD5Sig struct {
++ Addr SockaddrStorage
++ Flags uint8
++ Prefixlen uint8
++ Keylen uint16
++ _ uint32
++ Key [80]uint8
++}
++
++type HDDriveCmdHdr struct {
++ Command uint8
++ Number uint8
++ Feature uint8
++ Count uint8
++}
++
++type HDDriveID struct {
++ Config uint16
++ Cyls uint16
++ Reserved2 uint16
++ Heads uint16
++ Track_bytes uint16
++ Sector_bytes uint16
++ Sectors uint16
++ Vendor0 uint16
++ Vendor1 uint16
++ Vendor2 uint16
++ Serial_no [20]uint8
++ Buf_type uint16
++ Buf_size uint16
++ Ecc_bytes uint16
++ Fw_rev [8]uint8
++ Model [40]uint8
++ Max_multsect uint8
++ Vendor3 uint8
++ Dword_io uint16
++ Vendor4 uint8
++ Capability uint8
++ Reserved50 uint16
++ Vendor5 uint8
++ TPIO uint8
++ Vendor6 uint8
++ TDMA uint8
++ Field_valid uint16
++ Cur_cyls uint16
++ Cur_heads uint16
++ Cur_sectors uint16
++ Cur_capacity0 uint16
++ Cur_capacity1 uint16
++ Multsect uint8
++ Multsect_valid uint8
++ Lba_capacity uint32
++ Dma_1word uint16
++ Dma_mword uint16
++ Eide_pio_modes uint16
++ Eide_dma_min uint16
++ Eide_dma_time uint16
++ Eide_pio uint16
++ Eide_pio_iordy uint16
++ Words69_70 [2]uint16
++ Words71_74 [4]uint16
++ Queue_depth uint16
++ Words76_79 [4]uint16
++ Major_rev_num uint16
++ Minor_rev_num uint16
++ Command_set_1 uint16
++ Command_set_2 uint16
++ Cfsse uint16
++ Cfs_enable_1 uint16
++ Cfs_enable_2 uint16
++ Csf_default uint16
++ Dma_ultra uint16
++ Trseuc uint16
++ TrsEuc uint16
++ CurAPMvalues uint16
++ Mprc uint16
++ Hw_config uint16
++ Acoustic uint16
++ Msrqs uint16
++ Sxfert uint16
++ Sal uint16
++ Spg uint32
++ Lba_capacity_2 uint64
++ Words104_125 [22]uint16
++ Last_lun uint16
++ Word127 uint16
++ Dlf uint16
++ Csfo uint16
++ Words130_155 [26]uint16
++ Word156 uint16
++ Words157_159 [3]uint16
++ Cfa_power uint16
++ Words161_175 [15]uint16
++ Words176_205 [30]uint16
++ Words206_254 [49]uint16
++ Integrity_word uint16
++}
++
++const (
++ ST_MANDLOCK = 0x40
++ ST_NOATIME = 0x400
++ ST_NODEV = 0x4
++ ST_NODIRATIME = 0x800
++ ST_NOEXEC = 0x8
++ ST_NOSUID = 0x2
++ ST_RDONLY = 0x1
++ ST_RELATIME = 0x1000
++ ST_SYNCHRONOUS = 0x10
++)
++
++type Tpacket2Hdr struct {
++ Status uint32
++ Len uint32
++ Snaplen uint32
++ Mac uint16
++ Net uint16
++ Sec uint32
++ Nsec uint32
++ Vlan_tci uint16
++ Vlan_tpid uint16
++ _ [4]uint8
++}
++
++type Tpacket3Hdr struct {
++ Next_offset uint32
++ Sec uint32
++ Nsec uint32
++ Snaplen uint32
++ Len uint32
++ Status uint32
++ Mac uint16
++ Net uint16
++ Hv1 TpacketHdrVariant1
++ _ [8]uint8
++}
++
++type TpacketHdrVariant1 struct {
++ Rxhash uint32
++ Vlan_tci uint32
++ Vlan_tpid uint16
++ _ uint16
++}
++
++type TpacketBlockDesc struct {
++ Version uint32
++ To_priv uint32
++ Hdr [40]byte
++}
++
++type TpacketBDTS struct {
++ Sec uint32
++ Usec uint32
++}
++
++type TpacketHdrV1 struct {
++ Block_status uint32
++ Num_pkts uint32
++ Offset_to_first_pkt uint32
++ Blk_len uint32
++ Seq_num uint64
++ Ts_first_pkt TpacketBDTS
++ Ts_last_pkt TpacketBDTS
++}
++
++type TpacketReq struct {
++ Block_size uint32
++ Block_nr uint32
++ Frame_size uint32
++ Frame_nr uint32
++}
++
++type TpacketReq3 struct {
++ Block_size uint32
++ Block_nr uint32
++ Frame_size uint32
++ Frame_nr uint32
++ Retire_blk_tov uint32
++ Sizeof_priv uint32
++ Feature_req_word uint32
++}
++
++type TpacketStats struct {
++ Packets uint32
++ Drops uint32
++}
++
++type TpacketStatsV3 struct {
++ Packets uint32
++ Drops uint32
++ Freeze_q_cnt uint32
++}
++
++type TpacketAuxdata struct {
++ Status uint32
++ Len uint32
++ Snaplen uint32
++ Mac uint16
++ Net uint16
++ Vlan_tci uint16
++ Vlan_tpid uint16
++}
++
++const (
++ TPACKET_V1 = 0x0
++ TPACKET_V2 = 0x1
++ TPACKET_V3 = 0x2
++)
++
++const (
++ SizeofTpacket2Hdr = 0x20
++ SizeofTpacket3Hdr = 0x30
++
++ SizeofTpacketStats = 0x8
++ SizeofTpacketStatsV3 = 0xc
++)
++
++const (
++ NF_INET_PRE_ROUTING = 0x0
++ NF_INET_LOCAL_IN = 0x1
++ NF_INET_FORWARD = 0x2
++ NF_INET_LOCAL_OUT = 0x3
++ NF_INET_POST_ROUTING = 0x4
++ NF_INET_NUMHOOKS = 0x5
++)
++
++const (
++ NF_NETDEV_INGRESS = 0x0
++ NF_NETDEV_NUMHOOKS = 0x1
++)
++
++const (
++ NFPROTO_UNSPEC = 0x0
++ NFPROTO_INET = 0x1
++ NFPROTO_IPV4 = 0x2
++ NFPROTO_ARP = 0x3
++ NFPROTO_NETDEV = 0x5
++ NFPROTO_BRIDGE = 0x7
++ NFPROTO_IPV6 = 0xa
++ NFPROTO_DECNET = 0xc
++ NFPROTO_NUMPROTO = 0xd
++)
++
++type Nfgenmsg struct {
++ Nfgen_family uint8
++ Version uint8
++ Res_id uint16
++}
++
++const (
++ NFNL_BATCH_UNSPEC = 0x0
++ NFNL_BATCH_GENID = 0x1
++)
++
++const (
++ NFT_REG_VERDICT = 0x0
++ NFT_REG_1 = 0x1
++ NFT_REG_2 = 0x2
++ NFT_REG_3 = 0x3
++ NFT_REG_4 = 0x4
++ NFT_REG32_00 = 0x8
++ NFT_REG32_01 = 0x9
++ NFT_REG32_02 = 0xa
++ NFT_REG32_03 = 0xb
++ NFT_REG32_04 = 0xc
++ NFT_REG32_05 = 0xd
++ NFT_REG32_06 = 0xe
++ NFT_REG32_07 = 0xf
++ NFT_REG32_08 = 0x10
++ NFT_REG32_09 = 0x11
++ NFT_REG32_10 = 0x12
++ NFT_REG32_11 = 0x13
++ NFT_REG32_12 = 0x14
++ NFT_REG32_13 = 0x15
++ NFT_REG32_14 = 0x16
++ NFT_REG32_15 = 0x17
++ NFT_CONTINUE = -0x1
++ NFT_BREAK = -0x2
++ NFT_JUMP = -0x3
++ NFT_GOTO = -0x4
++ NFT_RETURN = -0x5
++ NFT_MSG_NEWTABLE = 0x0
++ NFT_MSG_GETTABLE = 0x1
++ NFT_MSG_DELTABLE = 0x2
++ NFT_MSG_NEWCHAIN = 0x3
++ NFT_MSG_GETCHAIN = 0x4
++ NFT_MSG_DELCHAIN = 0x5
++ NFT_MSG_NEWRULE = 0x6
++ NFT_MSG_GETRULE = 0x7
++ NFT_MSG_DELRULE = 0x8
++ NFT_MSG_NEWSET = 0x9
++ NFT_MSG_GETSET = 0xa
++ NFT_MSG_DELSET = 0xb
++ NFT_MSG_NEWSETELEM = 0xc
++ NFT_MSG_GETSETELEM = 0xd
++ NFT_MSG_DELSETELEM = 0xe
++ NFT_MSG_NEWGEN = 0xf
++ NFT_MSG_GETGEN = 0x10
++ NFT_MSG_TRACE = 0x11
++ NFT_MSG_NEWOBJ = 0x12
++ NFT_MSG_GETOBJ = 0x13
++ NFT_MSG_DELOBJ = 0x14
++ NFT_MSG_GETOBJ_RESET = 0x15
++ NFT_MSG_MAX = 0x19
++ NFTA_LIST_UNPEC = 0x0
++ NFTA_LIST_ELEM = 0x1
++ NFTA_HOOK_UNSPEC = 0x0
++ NFTA_HOOK_HOOKNUM = 0x1
++ NFTA_HOOK_PRIORITY = 0x2
++ NFTA_HOOK_DEV = 0x3
++ NFT_TABLE_F_DORMANT = 0x1
++ NFTA_TABLE_UNSPEC = 0x0
++ NFTA_TABLE_NAME = 0x1
++ NFTA_TABLE_FLAGS = 0x2
++ NFTA_TABLE_USE = 0x3
++ NFTA_CHAIN_UNSPEC = 0x0
++ NFTA_CHAIN_TABLE = 0x1
++ NFTA_CHAIN_HANDLE = 0x2
++ NFTA_CHAIN_NAME = 0x3
++ NFTA_CHAIN_HOOK = 0x4
++ NFTA_CHAIN_POLICY = 0x5
++ NFTA_CHAIN_USE = 0x6
++ NFTA_CHAIN_TYPE = 0x7
++ NFTA_CHAIN_COUNTERS = 0x8
++ NFTA_CHAIN_PAD = 0x9
++ NFTA_RULE_UNSPEC = 0x0
++ NFTA_RULE_TABLE = 0x1
++ NFTA_RULE_CHAIN = 0x2
++ NFTA_RULE_HANDLE = 0x3
++ NFTA_RULE_EXPRESSIONS = 0x4
++ NFTA_RULE_COMPAT = 0x5
++ NFTA_RULE_POSITION = 0x6
++ NFTA_RULE_USERDATA = 0x7
++ NFTA_RULE_PAD = 0x8
++ NFTA_RULE_ID = 0x9
++ NFT_RULE_COMPAT_F_INV = 0x2
++ NFT_RULE_COMPAT_F_MASK = 0x2
++ NFTA_RULE_COMPAT_UNSPEC = 0x0
++ NFTA_RULE_COMPAT_PROTO = 0x1
++ NFTA_RULE_COMPAT_FLAGS = 0x2
++ NFT_SET_ANONYMOUS = 0x1
++ NFT_SET_CONSTANT = 0x2
++ NFT_SET_INTERVAL = 0x4
++ NFT_SET_MAP = 0x8
++ NFT_SET_TIMEOUT = 0x10
++ NFT_SET_EVAL = 0x20
++ NFT_SET_OBJECT = 0x40
++ NFT_SET_POL_PERFORMANCE = 0x0
++ NFT_SET_POL_MEMORY = 0x1
++ NFTA_SET_DESC_UNSPEC = 0x0
++ NFTA_SET_DESC_SIZE = 0x1
++ NFTA_SET_UNSPEC = 0x0
++ NFTA_SET_TABLE = 0x1
++ NFTA_SET_NAME = 0x2
++ NFTA_SET_FLAGS = 0x3
++ NFTA_SET_KEY_TYPE = 0x4
++ NFTA_SET_KEY_LEN = 0x5
++ NFTA_SET_DATA_TYPE = 0x6
++ NFTA_SET_DATA_LEN = 0x7
++ NFTA_SET_POLICY = 0x8
++ NFTA_SET_DESC = 0x9
++ NFTA_SET_ID = 0xa
++ NFTA_SET_TIMEOUT = 0xb
++ NFTA_SET_GC_INTERVAL = 0xc
++ NFTA_SET_USERDATA = 0xd
++ NFTA_SET_PAD = 0xe
++ NFTA_SET_OBJ_TYPE = 0xf
++ NFT_SET_ELEM_INTERVAL_END = 0x1
++ NFTA_SET_ELEM_UNSPEC = 0x0
++ NFTA_SET_ELEM_KEY = 0x1
++ NFTA_SET_ELEM_DATA = 0x2
++ NFTA_SET_ELEM_FLAGS = 0x3
++ NFTA_SET_ELEM_TIMEOUT = 0x4
++ NFTA_SET_ELEM_EXPIRATION = 0x5
++ NFTA_SET_ELEM_USERDATA = 0x6
++ NFTA_SET_ELEM_EXPR = 0x7
++ NFTA_SET_ELEM_PAD = 0x8
++ NFTA_SET_ELEM_OBJREF = 0x9
++ NFTA_SET_ELEM_LIST_UNSPEC = 0x0
++ NFTA_SET_ELEM_LIST_TABLE = 0x1
++ NFTA_SET_ELEM_LIST_SET = 0x2
++ NFTA_SET_ELEM_LIST_ELEMENTS = 0x3
++ NFTA_SET_ELEM_LIST_SET_ID = 0x4
++ NFT_DATA_VALUE = 0x0
++ NFT_DATA_VERDICT = 0xffffff00
++ NFTA_DATA_UNSPEC = 0x0
++ NFTA_DATA_VALUE = 0x1
++ NFTA_DATA_VERDICT = 0x2
++ NFTA_VERDICT_UNSPEC = 0x0
++ NFTA_VERDICT_CODE = 0x1
++ NFTA_VERDICT_CHAIN = 0x2
++ NFTA_EXPR_UNSPEC = 0x0
++ NFTA_EXPR_NAME = 0x1
++ NFTA_EXPR_DATA = 0x2
++ NFTA_IMMEDIATE_UNSPEC = 0x0
++ NFTA_IMMEDIATE_DREG = 0x1
++ NFTA_IMMEDIATE_DATA = 0x2
++ NFTA_BITWISE_UNSPEC = 0x0
++ NFTA_BITWISE_SREG = 0x1
++ NFTA_BITWISE_DREG = 0x2
++ NFTA_BITWISE_LEN = 0x3
++ NFTA_BITWISE_MASK = 0x4
++ NFTA_BITWISE_XOR = 0x5
++ NFT_BYTEORDER_NTOH = 0x0
++ NFT_BYTEORDER_HTON = 0x1
++ NFTA_BYTEORDER_UNSPEC = 0x0
++ NFTA_BYTEORDER_SREG = 0x1
++ NFTA_BYTEORDER_DREG = 0x2
++ NFTA_BYTEORDER_OP = 0x3
++ NFTA_BYTEORDER_LEN = 0x4
++ NFTA_BYTEORDER_SIZE = 0x5
++ NFT_CMP_EQ = 0x0
++ NFT_CMP_NEQ = 0x1
++ NFT_CMP_LT = 0x2
++ NFT_CMP_LTE = 0x3
++ NFT_CMP_GT = 0x4
++ NFT_CMP_GTE = 0x5
++ NFTA_CMP_UNSPEC = 0x0
++ NFTA_CMP_SREG = 0x1
++ NFTA_CMP_OP = 0x2
++ NFTA_CMP_DATA = 0x3
++ NFT_RANGE_EQ = 0x0
++ NFT_RANGE_NEQ = 0x1
++ NFTA_RANGE_UNSPEC = 0x0
++ NFTA_RANGE_SREG = 0x1
++ NFTA_RANGE_OP = 0x2
++ NFTA_RANGE_FROM_DATA = 0x3
++ NFTA_RANGE_TO_DATA = 0x4
++ NFT_LOOKUP_F_INV = 0x1
++ NFTA_LOOKUP_UNSPEC = 0x0
++ NFTA_LOOKUP_SET = 0x1
++ NFTA_LOOKUP_SREG = 0x2
++ NFTA_LOOKUP_DREG = 0x3
++ NFTA_LOOKUP_SET_ID = 0x4
++ NFTA_LOOKUP_FLAGS = 0x5
++ NFT_DYNSET_OP_ADD = 0x0
++ NFT_DYNSET_OP_UPDATE = 0x1
++ NFT_DYNSET_F_INV = 0x1
++ NFTA_DYNSET_UNSPEC = 0x0
++ NFTA_DYNSET_SET_NAME = 0x1
++ NFTA_DYNSET_SET_ID = 0x2
++ NFTA_DYNSET_OP = 0x3
++ NFTA_DYNSET_SREG_KEY = 0x4
++ NFTA_DYNSET_SREG_DATA = 0x5
++ NFTA_DYNSET_TIMEOUT = 0x6
++ NFTA_DYNSET_EXPR = 0x7
++ NFTA_DYNSET_PAD = 0x8
++ NFTA_DYNSET_FLAGS = 0x9
++ NFT_PAYLOAD_LL_HEADER = 0x0
++ NFT_PAYLOAD_NETWORK_HEADER = 0x1
++ NFT_PAYLOAD_TRANSPORT_HEADER = 0x2
++ NFT_PAYLOAD_CSUM_NONE = 0x0
++ NFT_PAYLOAD_CSUM_INET = 0x1
++ NFT_PAYLOAD_L4CSUM_PSEUDOHDR = 0x1
++ NFTA_PAYLOAD_UNSPEC = 0x0
++ NFTA_PAYLOAD_DREG = 0x1
++ NFTA_PAYLOAD_BASE = 0x2
++ NFTA_PAYLOAD_OFFSET = 0x3
++ NFTA_PAYLOAD_LEN = 0x4
++ NFTA_PAYLOAD_SREG = 0x5
++ NFTA_PAYLOAD_CSUM_TYPE = 0x6
++ NFTA_PAYLOAD_CSUM_OFFSET = 0x7
++ NFTA_PAYLOAD_CSUM_FLAGS = 0x8
++ NFT_EXTHDR_F_PRESENT = 0x1
++ NFT_EXTHDR_OP_IPV6 = 0x0
++ NFT_EXTHDR_OP_TCPOPT = 0x1
++ NFTA_EXTHDR_UNSPEC = 0x0
++ NFTA_EXTHDR_DREG = 0x1
++ NFTA_EXTHDR_TYPE = 0x2
++ NFTA_EXTHDR_OFFSET = 0x3
++ NFTA_EXTHDR_LEN = 0x4
++ NFTA_EXTHDR_FLAGS = 0x5
++ NFTA_EXTHDR_OP = 0x6
++ NFTA_EXTHDR_SREG = 0x7
++ NFT_META_LEN = 0x0
++ NFT_META_PROTOCOL = 0x1
++ NFT_META_PRIORITY = 0x2
++ NFT_META_MARK = 0x3
++ NFT_META_IIF = 0x4
++ NFT_META_OIF = 0x5
++ NFT_META_IIFNAME = 0x6
++ NFT_META_OIFNAME = 0x7
++ NFT_META_IIFTYPE = 0x8
++ NFT_META_OIFTYPE = 0x9
++ NFT_META_SKUID = 0xa
++ NFT_META_SKGID = 0xb
++ NFT_META_NFTRACE = 0xc
++ NFT_META_RTCLASSID = 0xd
++ NFT_META_SECMARK = 0xe
++ NFT_META_NFPROTO = 0xf
++ NFT_META_L4PROTO = 0x10
++ NFT_META_BRI_IIFNAME = 0x11
++ NFT_META_BRI_OIFNAME = 0x12
++ NFT_META_PKTTYPE = 0x13
++ NFT_META_CPU = 0x14
++ NFT_META_IIFGROUP = 0x15
++ NFT_META_OIFGROUP = 0x16
++ NFT_META_CGROUP = 0x17
++ NFT_META_PRANDOM = 0x18
++ NFT_RT_CLASSID = 0x0
++ NFT_RT_NEXTHOP4 = 0x1
++ NFT_RT_NEXTHOP6 = 0x2
++ NFT_RT_TCPMSS = 0x3
++ NFT_HASH_JENKINS = 0x0
++ NFT_HASH_SYM = 0x1
++ NFTA_HASH_UNSPEC = 0x0
++ NFTA_HASH_SREG = 0x1
++ NFTA_HASH_DREG = 0x2
++ NFTA_HASH_LEN = 0x3
++ NFTA_HASH_MODULUS = 0x4
++ NFTA_HASH_SEED = 0x5
++ NFTA_HASH_OFFSET = 0x6
++ NFTA_HASH_TYPE = 0x7
++ NFTA_META_UNSPEC = 0x0
++ NFTA_META_DREG = 0x1
++ NFTA_META_KEY = 0x2
++ NFTA_META_SREG = 0x3
++ NFTA_RT_UNSPEC = 0x0
++ NFTA_RT_DREG = 0x1
++ NFTA_RT_KEY = 0x2
++ NFT_CT_STATE = 0x0
++ NFT_CT_DIRECTION = 0x1
++ NFT_CT_STATUS = 0x2
++ NFT_CT_MARK = 0x3
++ NFT_CT_SECMARK = 0x4
++ NFT_CT_EXPIRATION = 0x5
++ NFT_CT_HELPER = 0x6
++ NFT_CT_L3PROTOCOL = 0x7
++ NFT_CT_SRC = 0x8
++ NFT_CT_DST = 0x9
++ NFT_CT_PROTOCOL = 0xa
++ NFT_CT_PROTO_SRC = 0xb
++ NFT_CT_PROTO_DST = 0xc
++ NFT_CT_LABELS = 0xd
++ NFT_CT_PKTS = 0xe
++ NFT_CT_BYTES = 0xf
++ NFT_CT_AVGPKT = 0x10
++ NFT_CT_ZONE = 0x11
++ NFT_CT_EVENTMASK = 0x12
++ NFTA_CT_UNSPEC = 0x0
++ NFTA_CT_DREG = 0x1
++ NFTA_CT_KEY = 0x2
++ NFTA_CT_DIRECTION = 0x3
++ NFTA_CT_SREG = 0x4
++ NFT_LIMIT_PKTS = 0x0
++ NFT_LIMIT_PKT_BYTES = 0x1
++ NFT_LIMIT_F_INV = 0x1
++ NFTA_LIMIT_UNSPEC = 0x0
++ NFTA_LIMIT_RATE = 0x1
++ NFTA_LIMIT_UNIT = 0x2
++ NFTA_LIMIT_BURST = 0x3
++ NFTA_LIMIT_TYPE = 0x4
++ NFTA_LIMIT_FLAGS = 0x5
++ NFTA_LIMIT_PAD = 0x6
++ NFTA_COUNTER_UNSPEC = 0x0
++ NFTA_COUNTER_BYTES = 0x1
++ NFTA_COUNTER_PACKETS = 0x2
++ NFTA_COUNTER_PAD = 0x3
++ NFTA_LOG_UNSPEC = 0x0
++ NFTA_LOG_GROUP = 0x1
++ NFTA_LOG_PREFIX = 0x2
++ NFTA_LOG_SNAPLEN = 0x3
++ NFTA_LOG_QTHRESHOLD = 0x4
++ NFTA_LOG_LEVEL = 0x5
++ NFTA_LOG_FLAGS = 0x6
++ NFTA_QUEUE_UNSPEC = 0x0
++ NFTA_QUEUE_NUM = 0x1
++ NFTA_QUEUE_TOTAL = 0x2
++ NFTA_QUEUE_FLAGS = 0x3
++ NFTA_QUEUE_SREG_QNUM = 0x4
++ NFT_QUOTA_F_INV = 0x1
++ NFT_QUOTA_F_DEPLETED = 0x2
++ NFTA_QUOTA_UNSPEC = 0x0
++ NFTA_QUOTA_BYTES = 0x1
++ NFTA_QUOTA_FLAGS = 0x2
++ NFTA_QUOTA_PAD = 0x3
++ NFTA_QUOTA_CONSUMED = 0x4
++ NFT_REJECT_ICMP_UNREACH = 0x0
++ NFT_REJECT_TCP_RST = 0x1
++ NFT_REJECT_ICMPX_UNREACH = 0x2
++ NFT_REJECT_ICMPX_NO_ROUTE = 0x0
++ NFT_REJECT_ICMPX_PORT_UNREACH = 0x1
++ NFT_REJECT_ICMPX_HOST_UNREACH = 0x2
++ NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
++ NFTA_REJECT_UNSPEC = 0x0
++ NFTA_REJECT_TYPE = 0x1
++ NFTA_REJECT_ICMP_CODE = 0x2
++ NFT_NAT_SNAT = 0x0
++ NFT_NAT_DNAT = 0x1
++ NFTA_NAT_UNSPEC = 0x0
++ NFTA_NAT_TYPE = 0x1
++ NFTA_NAT_FAMILY = 0x2
++ NFTA_NAT_REG_ADDR_MIN = 0x3
++ NFTA_NAT_REG_ADDR_MAX = 0x4
++ NFTA_NAT_REG_PROTO_MIN = 0x5
++ NFTA_NAT_REG_PROTO_MAX = 0x6
++ NFTA_NAT_FLAGS = 0x7
++ NFTA_MASQ_UNSPEC = 0x0
++ NFTA_MASQ_FLAGS = 0x1
++ NFTA_MASQ_REG_PROTO_MIN = 0x2
++ NFTA_MASQ_REG_PROTO_MAX = 0x3
++ NFTA_REDIR_UNSPEC = 0x0
++ NFTA_REDIR_REG_PROTO_MIN = 0x1
++ NFTA_REDIR_REG_PROTO_MAX = 0x2
++ NFTA_REDIR_FLAGS = 0x3
++ NFTA_DUP_UNSPEC = 0x0
++ NFTA_DUP_SREG_ADDR = 0x1
++ NFTA_DUP_SREG_DEV = 0x2
++ NFTA_FWD_UNSPEC = 0x0
++ NFTA_FWD_SREG_DEV = 0x1
++ NFTA_OBJREF_UNSPEC = 0x0
++ NFTA_OBJREF_IMM_TYPE = 0x1
++ NFTA_OBJREF_IMM_NAME = 0x2
++ NFTA_OBJREF_SET_SREG = 0x3
++ NFTA_OBJREF_SET_NAME = 0x4
++ NFTA_OBJREF_SET_ID = 0x5
++ NFTA_GEN_UNSPEC = 0x0
++ NFTA_GEN_ID = 0x1
++ NFTA_GEN_PROC_PID = 0x2
++ NFTA_GEN_PROC_NAME = 0x3
++ NFTA_FIB_UNSPEC = 0x0
++ NFTA_FIB_DREG = 0x1
++ NFTA_FIB_RESULT = 0x2
++ NFTA_FIB_FLAGS = 0x3
++ NFT_FIB_RESULT_UNSPEC = 0x0
++ NFT_FIB_RESULT_OIF = 0x1
++ NFT_FIB_RESULT_OIFNAME = 0x2
++ NFT_FIB_RESULT_ADDRTYPE = 0x3
++ NFTA_FIB_F_SADDR = 0x1
++ NFTA_FIB_F_DADDR = 0x2
++ NFTA_FIB_F_MARK = 0x4
++ NFTA_FIB_F_IIF = 0x8
++ NFTA_FIB_F_OIF = 0x10
++ NFTA_FIB_F_PRESENT = 0x20
++ NFTA_CT_HELPER_UNSPEC = 0x0
++ NFTA_CT_HELPER_NAME = 0x1
++ NFTA_CT_HELPER_L3PROTO = 0x2
++ NFTA_CT_HELPER_L4PROTO = 0x3
++ NFTA_OBJ_UNSPEC = 0x0
++ NFTA_OBJ_TABLE = 0x1
++ NFTA_OBJ_NAME = 0x2
++ NFTA_OBJ_TYPE = 0x3
++ NFTA_OBJ_DATA = 0x4
++ NFTA_OBJ_USE = 0x5
++ NFTA_TRACE_UNSPEC = 0x0
++ NFTA_TRACE_TABLE = 0x1
++ NFTA_TRACE_CHAIN = 0x2
++ NFTA_TRACE_RULE_HANDLE = 0x3
++ NFTA_TRACE_TYPE = 0x4
++ NFTA_TRACE_VERDICT = 0x5
++ NFTA_TRACE_ID = 0x6
++ NFTA_TRACE_LL_HEADER = 0x7
++ NFTA_TRACE_NETWORK_HEADER = 0x8
++ NFTA_TRACE_TRANSPORT_HEADER = 0x9
++ NFTA_TRACE_IIF = 0xa
++ NFTA_TRACE_IIFTYPE = 0xb
++ NFTA_TRACE_OIF = 0xc
++ NFTA_TRACE_OIFTYPE = 0xd
++ NFTA_TRACE_MARK = 0xe
++ NFTA_TRACE_NFPROTO = 0xf
++ NFTA_TRACE_POLICY = 0x10
++ NFTA_TRACE_PAD = 0x11
++ NFT_TRACETYPE_UNSPEC = 0x0
++ NFT_TRACETYPE_POLICY = 0x1
++ NFT_TRACETYPE_RETURN = 0x2
++ NFT_TRACETYPE_RULE = 0x3
++ NFTA_NG_UNSPEC = 0x0
++ NFTA_NG_DREG = 0x1
++ NFTA_NG_MODULUS = 0x2
++ NFTA_NG_TYPE = 0x3
++ NFTA_NG_OFFSET = 0x4
++ NFT_NG_INCREMENTAL = 0x0
++ NFT_NG_RANDOM = 0x1
++)
++
++type RTCTime struct {
++ Sec int32
++ Min int32
++ Hour int32
++ Mday int32
++ Mon int32
++ Year int32
++ Wday int32
++ Yday int32
++ Isdst int32
++}
++
++type RTCWkAlrm struct {
++ Enabled uint8
++ Pending uint8
++ Time RTCTime
++}
++
++type BlkpgIoctlArg struct {
++ Op int32
++ Flags int32
++ Datalen int32
++ Data *byte
++}
++
++const (
++ BLKPG_ADD_PARTITION = 0x1
++ BLKPG_DEL_PARTITION = 0x2
++ BLKPG_RESIZE_PARTITION = 0x3
++)
++
++const (
++ NETNSA_NONE = 0x0
++ NETNSA_NSID = 0x1
++ NETNSA_PID = 0x2
++ NETNSA_FD = 0x3
++)
++
++type XDPRingOffset struct {
++ Producer uint64
++ Consumer uint64
++ Desc uint64
++ Flags uint64
++}
++
++type XDPMmapOffsets struct {
++ Rx XDPRingOffset
++ Tx XDPRingOffset
++ Fr XDPRingOffset
++ Cr XDPRingOffset
++}
++
++type XDPStatistics struct {
++ Rx_dropped uint64
++ Rx_invalid_descs uint64
++ Tx_invalid_descs uint64
++}
++
++type XDPDesc struct {
++ Addr uint64
++ Len uint32
++ Options uint32
++}
++
++const (
++ NCSI_CMD_UNSPEC = 0x0
++ NCSI_CMD_PKG_INFO = 0x1
++ NCSI_CMD_SET_INTERFACE = 0x2
++ NCSI_CMD_CLEAR_INTERFACE = 0x3
++ NCSI_ATTR_UNSPEC = 0x0
++ NCSI_ATTR_IFINDEX = 0x1
++ NCSI_ATTR_PACKAGE_LIST = 0x2
++ NCSI_ATTR_PACKAGE_ID = 0x3
++ NCSI_ATTR_CHANNEL_ID = 0x4
++ NCSI_PKG_ATTR_UNSPEC = 0x0
++ NCSI_PKG_ATTR = 0x1
++ NCSI_PKG_ATTR_ID = 0x2
++ NCSI_PKG_ATTR_FORCED = 0x3
++ NCSI_PKG_ATTR_CHANNEL_LIST = 0x4
++ NCSI_CHANNEL_ATTR_UNSPEC = 0x0
++ NCSI_CHANNEL_ATTR = 0x1
++ NCSI_CHANNEL_ATTR_ID = 0x2
++ NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
++ NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
++ NCSI_CHANNEL_ATTR_VERSION_STR = 0x5
++ NCSI_CHANNEL_ATTR_LINK_STATE = 0x6
++ NCSI_CHANNEL_ATTR_ACTIVE = 0x7
++ NCSI_CHANNEL_ATTR_FORCED = 0x8
++ NCSI_CHANNEL_ATTR_VLAN_LIST = 0x9
++ NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
++)
++
++type ScmTimestamping struct {
++ Ts [3]Timespec
++}
++
++const (
++ SOF_TIMESTAMPING_TX_HARDWARE = 0x1
++ SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
++ SOF_TIMESTAMPING_RX_HARDWARE = 0x4
++ SOF_TIMESTAMPING_RX_SOFTWARE = 0x8
++ SOF_TIMESTAMPING_SOFTWARE = 0x10
++ SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
++ SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
++ SOF_TIMESTAMPING_OPT_ID = 0x80
++ SOF_TIMESTAMPING_TX_SCHED = 0x100
++ SOF_TIMESTAMPING_TX_ACK = 0x200
++ SOF_TIMESTAMPING_OPT_CMSG = 0x400
++ SOF_TIMESTAMPING_OPT_TSONLY = 0x800
++ SOF_TIMESTAMPING_OPT_STATS = 0x1000
++ SOF_TIMESTAMPING_OPT_PKTINFO = 0x2000
++ SOF_TIMESTAMPING_OPT_TX_SWHW = 0x4000
++
++ SOF_TIMESTAMPING_LAST = 0x4000
++ SOF_TIMESTAMPING_MASK = 0x7fff
++
++ SCM_TSTAMP_SND = 0x0
++ SCM_TSTAMP_SCHED = 0x1
++ SCM_TSTAMP_ACK = 0x2
++)
++
++type SockExtendedErr struct {
++ Errno uint32
++ Origin uint8
++ Type uint8
++ Code uint8
++ Pad uint8
++ Info uint32
++ Data uint32
++}
++
++type FanotifyEventMetadata struct {
++ Event_len uint32
++ Vers uint8
++ Reserved uint8
++ Metadata_len uint16
++ Mask uint64
++ Fd int32
++ Pid int32
++}
++
++type FanotifyResponse struct {
++ Fd int32
++ Response uint32
++}
++
++const (
++ CRYPTO_MSG_BASE = 0x10
++ CRYPTO_MSG_NEWALG = 0x10
++ CRYPTO_MSG_DELALG = 0x11
++ CRYPTO_MSG_UPDATEALG = 0x12
++ CRYPTO_MSG_GETALG = 0x13
++ CRYPTO_MSG_DELRNG = 0x14
++ CRYPTO_MSG_GETSTAT = 0x15
++)
++
++const (
++ CRYPTOCFGA_UNSPEC = 0x0
++ CRYPTOCFGA_PRIORITY_VAL = 0x1
++ CRYPTOCFGA_REPORT_LARVAL = 0x2
++ CRYPTOCFGA_REPORT_HASH = 0x3
++ CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
++ CRYPTOCFGA_REPORT_AEAD = 0x5
++ CRYPTOCFGA_REPORT_COMPRESS = 0x6
++ CRYPTOCFGA_REPORT_RNG = 0x7
++ CRYPTOCFGA_REPORT_CIPHER = 0x8
++ CRYPTOCFGA_REPORT_AKCIPHER = 0x9
++ CRYPTOCFGA_REPORT_KPP = 0xa
++ CRYPTOCFGA_REPORT_ACOMP = 0xb
++ CRYPTOCFGA_STAT_LARVAL = 0xc
++ CRYPTOCFGA_STAT_HASH = 0xd
++ CRYPTOCFGA_STAT_BLKCIPHER = 0xe
++ CRYPTOCFGA_STAT_AEAD = 0xf
++ CRYPTOCFGA_STAT_COMPRESS = 0x10
++ CRYPTOCFGA_STAT_RNG = 0x11
++ CRYPTOCFGA_STAT_CIPHER = 0x12
++ CRYPTOCFGA_STAT_AKCIPHER = 0x13
++ CRYPTOCFGA_STAT_KPP = 0x14
++ CRYPTOCFGA_STAT_ACOMP = 0x15
++)
++
++const (
++ BPF_REG_0 = 0x0
++ BPF_REG_1 = 0x1
++ BPF_REG_2 = 0x2
++ BPF_REG_3 = 0x3
++ BPF_REG_4 = 0x4
++ BPF_REG_5 = 0x5
++ BPF_REG_6 = 0x6
++ BPF_REG_7 = 0x7
++ BPF_REG_8 = 0x8
++ BPF_REG_9 = 0x9
++ BPF_REG_10 = 0xa
++ BPF_MAP_CREATE = 0x0
++ BPF_MAP_LOOKUP_ELEM = 0x1
++ BPF_MAP_UPDATE_ELEM = 0x2
++ BPF_MAP_DELETE_ELEM = 0x3
++ BPF_MAP_GET_NEXT_KEY = 0x4
++ BPF_PROG_LOAD = 0x5
++ BPF_OBJ_PIN = 0x6
++ BPF_OBJ_GET = 0x7
++ BPF_PROG_ATTACH = 0x8
++ BPF_PROG_DETACH = 0x9
++ BPF_PROG_TEST_RUN = 0xa
++ BPF_PROG_GET_NEXT_ID = 0xb
++ BPF_MAP_GET_NEXT_ID = 0xc
++ BPF_PROG_GET_FD_BY_ID = 0xd
++ BPF_MAP_GET_FD_BY_ID = 0xe
++ BPF_OBJ_GET_INFO_BY_FD = 0xf
++ BPF_PROG_QUERY = 0x10
++ BPF_RAW_TRACEPOINT_OPEN = 0x11
++ BPF_BTF_LOAD = 0x12
++ BPF_BTF_GET_FD_BY_ID = 0x13
++ BPF_TASK_FD_QUERY = 0x14
++ BPF_MAP_LOOKUP_AND_DELETE_ELEM = 0x15
++ BPF_MAP_FREEZE = 0x16
++ BPF_BTF_GET_NEXT_ID = 0x17
++ BPF_MAP_TYPE_UNSPEC = 0x0
++ BPF_MAP_TYPE_HASH = 0x1
++ BPF_MAP_TYPE_ARRAY = 0x2
++ BPF_MAP_TYPE_PROG_ARRAY = 0x3
++ BPF_MAP_TYPE_PERF_EVENT_ARRAY = 0x4
++ BPF_MAP_TYPE_PERCPU_HASH = 0x5
++ BPF_MAP_TYPE_PERCPU_ARRAY = 0x6
++ BPF_MAP_TYPE_STACK_TRACE = 0x7
++ BPF_MAP_TYPE_CGROUP_ARRAY = 0x8
++ BPF_MAP_TYPE_LRU_HASH = 0x9
++ BPF_MAP_TYPE_LRU_PERCPU_HASH = 0xa
++ BPF_MAP_TYPE_LPM_TRIE = 0xb
++ BPF_MAP_TYPE_ARRAY_OF_MAPS = 0xc
++ BPF_MAP_TYPE_HASH_OF_MAPS = 0xd
++ BPF_MAP_TYPE_DEVMAP = 0xe
++ BPF_MAP_TYPE_SOCKMAP = 0xf
++ BPF_MAP_TYPE_CPUMAP = 0x10
++ BPF_MAP_TYPE_XSKMAP = 0x11
++ BPF_MAP_TYPE_SOCKHASH = 0x12
++ BPF_MAP_TYPE_CGROUP_STORAGE = 0x13
++ BPF_MAP_TYPE_REUSEPORT_SOCKARRAY = 0x14
++ BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE = 0x15
++ BPF_MAP_TYPE_QUEUE = 0x16
++ BPF_MAP_TYPE_STACK = 0x17
++ BPF_MAP_TYPE_SK_STORAGE = 0x18
++ BPF_MAP_TYPE_DEVMAP_HASH = 0x19
++ BPF_PROG_TYPE_UNSPEC = 0x0
++ BPF_PROG_TYPE_SOCKET_FILTER = 0x1
++ BPF_PROG_TYPE_KPROBE = 0x2
++ BPF_PROG_TYPE_SCHED_CLS = 0x3
++ BPF_PROG_TYPE_SCHED_ACT = 0x4
++ BPF_PROG_TYPE_TRACEPOINT = 0x5
++ BPF_PROG_TYPE_XDP = 0x6
++ BPF_PROG_TYPE_PERF_EVENT = 0x7
++ BPF_PROG_TYPE_CGROUP_SKB = 0x8
++ BPF_PROG_TYPE_CGROUP_SOCK = 0x9
++ BPF_PROG_TYPE_LWT_IN = 0xa
++ BPF_PROG_TYPE_LWT_OUT = 0xb
++ BPF_PROG_TYPE_LWT_XMIT = 0xc
++ BPF_PROG_TYPE_SOCK_OPS = 0xd
++ BPF_PROG_TYPE_SK_SKB = 0xe
++ BPF_PROG_TYPE_CGROUP_DEVICE = 0xf
++ BPF_PROG_TYPE_SK_MSG = 0x10
++ BPF_PROG_TYPE_RAW_TRACEPOINT = 0x11
++ BPF_PROG_TYPE_CGROUP_SOCK_ADDR = 0x12
++ BPF_PROG_TYPE_LWT_SEG6LOCAL = 0x13
++ BPF_PROG_TYPE_LIRC_MODE2 = 0x14
++ BPF_PROG_TYPE_SK_REUSEPORT = 0x15
++ BPF_PROG_TYPE_FLOW_DISSECTOR = 0x16
++ BPF_PROG_TYPE_CGROUP_SYSCTL = 0x17
++ BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE = 0x18
++ BPF_PROG_TYPE_CGROUP_SOCKOPT = 0x19
++ BPF_PROG_TYPE_TRACING = 0x1a
++ BPF_CGROUP_INET_INGRESS = 0x0
++ BPF_CGROUP_INET_EGRESS = 0x1
++ BPF_CGROUP_INET_SOCK_CREATE = 0x2
++ BPF_CGROUP_SOCK_OPS = 0x3
++ BPF_SK_SKB_STREAM_PARSER = 0x4
++ BPF_SK_SKB_STREAM_VERDICT = 0x5
++ BPF_CGROUP_DEVICE = 0x6
++ BPF_SK_MSG_VERDICT = 0x7
++ BPF_CGROUP_INET4_BIND = 0x8
++ BPF_CGROUP_INET6_BIND = 0x9
++ BPF_CGROUP_INET4_CONNECT = 0xa
++ BPF_CGROUP_INET6_CONNECT = 0xb
++ BPF_CGROUP_INET4_POST_BIND = 0xc
++ BPF_CGROUP_INET6_POST_BIND = 0xd
++ BPF_CGROUP_UDP4_SENDMSG = 0xe
++ BPF_CGROUP_UDP6_SENDMSG = 0xf
++ BPF_LIRC_MODE2 = 0x10
++ BPF_FLOW_DISSECTOR = 0x11
++ BPF_CGROUP_SYSCTL = 0x12
++ BPF_CGROUP_UDP4_RECVMSG = 0x13
++ BPF_CGROUP_UDP6_RECVMSG = 0x14
++ BPF_CGROUP_GETSOCKOPT = 0x15
++ BPF_CGROUP_SETSOCKOPT = 0x16
++ BPF_TRACE_RAW_TP = 0x17
++ BPF_TRACE_FENTRY = 0x18
++ BPF_TRACE_FEXIT = 0x19
++ BPF_STACK_BUILD_ID_EMPTY = 0x0
++ BPF_STACK_BUILD_ID_VALID = 0x1
++ BPF_STACK_BUILD_ID_IP = 0x2
++ BPF_ADJ_ROOM_NET = 0x0
++ BPF_ADJ_ROOM_MAC = 0x1
++ BPF_HDR_START_MAC = 0x0
++ BPF_HDR_START_NET = 0x1
++ BPF_LWT_ENCAP_SEG6 = 0x0
++ BPF_LWT_ENCAP_SEG6_INLINE = 0x1
++ BPF_LWT_ENCAP_IP = 0x2
++ BPF_OK = 0x0
++ BPF_DROP = 0x2
++ BPF_REDIRECT = 0x7
++ BPF_LWT_REROUTE = 0x80
++ BPF_SOCK_OPS_VOID = 0x0
++ BPF_SOCK_OPS_TIMEOUT_INIT = 0x1
++ BPF_SOCK_OPS_RWND_INIT = 0x2
++ BPF_SOCK_OPS_TCP_CONNECT_CB = 0x3
++ BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB = 0x4
++ BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB = 0x5
++ BPF_SOCK_OPS_NEEDS_ECN = 0x6
++ BPF_SOCK_OPS_BASE_RTT = 0x7
++ BPF_SOCK_OPS_RTO_CB = 0x8
++ BPF_SOCK_OPS_RETRANS_CB = 0x9
++ BPF_SOCK_OPS_STATE_CB = 0xa
++ BPF_SOCK_OPS_TCP_LISTEN_CB = 0xb
++ BPF_SOCK_OPS_RTT_CB = 0xc
++ BPF_TCP_ESTABLISHED = 0x1
++ BPF_TCP_SYN_SENT = 0x2
++ BPF_TCP_SYN_RECV = 0x3
++ BPF_TCP_FIN_WAIT1 = 0x4
++ BPF_TCP_FIN_WAIT2 = 0x5
++ BPF_TCP_TIME_WAIT = 0x6
++ BPF_TCP_CLOSE = 0x7
++ BPF_TCP_CLOSE_WAIT = 0x8
++ BPF_TCP_LAST_ACK = 0x9
++ BPF_TCP_LISTEN = 0xa
++ BPF_TCP_CLOSING = 0xb
++ BPF_TCP_NEW_SYN_RECV = 0xc
++ BPF_TCP_MAX_STATES = 0xd
++ BPF_FIB_LKUP_RET_SUCCESS = 0x0
++ BPF_FIB_LKUP_RET_BLACKHOLE = 0x1
++ BPF_FIB_LKUP_RET_UNREACHABLE = 0x2
++ BPF_FIB_LKUP_RET_PROHIBIT = 0x3
++ BPF_FIB_LKUP_RET_NOT_FWDED = 0x4
++ BPF_FIB_LKUP_RET_FWD_DISABLED = 0x5
++ BPF_FIB_LKUP_RET_UNSUPP_LWT = 0x6
++ BPF_FIB_LKUP_RET_NO_NEIGH = 0x7
++ BPF_FIB_LKUP_RET_FRAG_NEEDED = 0x8
++ BPF_FD_TYPE_RAW_TRACEPOINT = 0x0
++ BPF_FD_TYPE_TRACEPOINT = 0x1
++ BPF_FD_TYPE_KPROBE = 0x2
++ BPF_FD_TYPE_KRETPROBE = 0x3
++ BPF_FD_TYPE_UPROBE = 0x4
++ BPF_FD_TYPE_URETPROBE = 0x5
++)
++
++const (
++ RTNLGRP_NONE = 0x0
++ RTNLGRP_LINK = 0x1
++ RTNLGRP_NOTIFY = 0x2
++ RTNLGRP_NEIGH = 0x3
++ RTNLGRP_TC = 0x4
++ RTNLGRP_IPV4_IFADDR = 0x5
++ RTNLGRP_IPV4_MROUTE = 0x6
++ RTNLGRP_IPV4_ROUTE = 0x7
++ RTNLGRP_IPV4_RULE = 0x8
++ RTNLGRP_IPV6_IFADDR = 0x9
++ RTNLGRP_IPV6_MROUTE = 0xa
++ RTNLGRP_IPV6_ROUTE = 0xb
++ RTNLGRP_IPV6_IFINFO = 0xc
++ RTNLGRP_DECnet_IFADDR = 0xd
++ RTNLGRP_NOP2 = 0xe
++ RTNLGRP_DECnet_ROUTE = 0xf
++ RTNLGRP_DECnet_RULE = 0x10
++ RTNLGRP_NOP4 = 0x11
++ RTNLGRP_IPV6_PREFIX = 0x12
++ RTNLGRP_IPV6_RULE = 0x13
++ RTNLGRP_ND_USEROPT = 0x14
++ RTNLGRP_PHONET_IFADDR = 0x15
++ RTNLGRP_PHONET_ROUTE = 0x16
++ RTNLGRP_DCB = 0x17
++ RTNLGRP_IPV4_NETCONF = 0x18
++ RTNLGRP_IPV6_NETCONF = 0x19
++ RTNLGRP_MDB = 0x1a
++ RTNLGRP_MPLS_ROUTE = 0x1b
++ RTNLGRP_NSID = 0x1c
++ RTNLGRP_MPLS_NETCONF = 0x1d
++ RTNLGRP_IPV4_MROUTE_R = 0x1e
++ RTNLGRP_IPV6_MROUTE_R = 0x1f
++ RTNLGRP_NEXTHOP = 0x20
++)
++
++type CapUserHeader struct {
++ Version uint32
++ Pid int32
++}
++
++type CapUserData struct {
++ Effective uint32
++ Permitted uint32
++ Inheritable uint32
++}
++
++const (
++ LINUX_CAPABILITY_VERSION_1 = 0x19980330
++ LINUX_CAPABILITY_VERSION_2 = 0x20071026
++ LINUX_CAPABILITY_VERSION_3 = 0x20080522
++)
++
++const (
++ LO_FLAGS_READ_ONLY = 0x1
++ LO_FLAGS_AUTOCLEAR = 0x4
++ LO_FLAGS_PARTSCAN = 0x8
++ LO_FLAGS_DIRECT_IO = 0x10
++)
++
++type LoopInfo64 struct {
++ Device uint64
++ Inode uint64
++ Rdevice uint64
++ Offset uint64
++ Sizelimit uint64
++ Number uint32
++ Encrypt_type uint32
++ Encrypt_key_size uint32
++ Flags uint32
++ File_name [64]uint8
++ Crypt_name [64]uint8
++ Encrypt_key [32]uint8
++ Init [2]uint64
++}
++
++type TIPCSocketAddr struct {
++ Ref uint32
++ Node uint32
++}
++
++type TIPCServiceRange struct {
++ Type uint32
++ Lower uint32
++ Upper uint32
++}
++
++type TIPCServiceName struct {
++ Type uint32
++ Instance uint32
++ Domain uint32
++}
++
++type TIPCEvent struct {
++ Event uint32
++ Lower uint32
++ Upper uint32
++ Port TIPCSocketAddr
++ S TIPCSubscr
++}
++
++type TIPCGroupReq struct {
++ Type uint32
++ Instance uint32
++ Scope uint32
++ Flags uint32
++}
++
++const (
++ TIPC_CLUSTER_SCOPE = 0x2
++ TIPC_NODE_SCOPE = 0x3
++)
++
++const (
++ SYSLOG_ACTION_CLOSE = 0
++ SYSLOG_ACTION_OPEN = 1
++ SYSLOG_ACTION_READ = 2
++ SYSLOG_ACTION_READ_ALL = 3
++ SYSLOG_ACTION_READ_CLEAR = 4
++ SYSLOG_ACTION_CLEAR = 5
++ SYSLOG_ACTION_CONSOLE_OFF = 6
++ SYSLOG_ACTION_CONSOLE_ON = 7
++ SYSLOG_ACTION_CONSOLE_LEVEL = 8
++ SYSLOG_ACTION_SIZE_UNREAD = 9
++ SYSLOG_ACTION_SIZE_BUFFER = 10
++)
++
++const (
++ DEVLINK_CMD_UNSPEC = 0x0
++ DEVLINK_CMD_GET = 0x1
++ DEVLINK_CMD_SET = 0x2
++ DEVLINK_CMD_NEW = 0x3
++ DEVLINK_CMD_DEL = 0x4
++ DEVLINK_CMD_PORT_GET = 0x5
++ DEVLINK_CMD_PORT_SET = 0x6
++ DEVLINK_CMD_PORT_NEW = 0x7
++ DEVLINK_CMD_PORT_DEL = 0x8
++ DEVLINK_CMD_PORT_SPLIT = 0x9
++ DEVLINK_CMD_PORT_UNSPLIT = 0xa
++ DEVLINK_CMD_SB_GET = 0xb
++ DEVLINK_CMD_SB_SET = 0xc
++ DEVLINK_CMD_SB_NEW = 0xd
++ DEVLINK_CMD_SB_DEL = 0xe
++ DEVLINK_CMD_SB_POOL_GET = 0xf
++ DEVLINK_CMD_SB_POOL_SET = 0x10
++ DEVLINK_CMD_SB_POOL_NEW = 0x11
++ DEVLINK_CMD_SB_POOL_DEL = 0x12
++ DEVLINK_CMD_SB_PORT_POOL_GET = 0x13
++ DEVLINK_CMD_SB_PORT_POOL_SET = 0x14
++ DEVLINK_CMD_SB_PORT_POOL_NEW = 0x15
++ DEVLINK_CMD_SB_PORT_POOL_DEL = 0x16
++ DEVLINK_CMD_SB_TC_POOL_BIND_GET = 0x17
++ DEVLINK_CMD_SB_TC_POOL_BIND_SET = 0x18
++ DEVLINK_CMD_SB_TC_POOL_BIND_NEW = 0x19
++ DEVLINK_CMD_SB_TC_POOL_BIND_DEL = 0x1a
++ DEVLINK_CMD_SB_OCC_SNAPSHOT = 0x1b
++ DEVLINK_CMD_SB_OCC_MAX_CLEAR = 0x1c
++ DEVLINK_CMD_ESWITCH_GET = 0x1d
++ DEVLINK_CMD_ESWITCH_SET = 0x1e
++ DEVLINK_CMD_DPIPE_TABLE_GET = 0x1f
++ DEVLINK_CMD_DPIPE_ENTRIES_GET = 0x20
++ DEVLINK_CMD_DPIPE_HEADERS_GET = 0x21
++ DEVLINK_CMD_DPIPE_TABLE_COUNTERS_SET = 0x22
++ DEVLINK_CMD_MAX = 0x44
++ DEVLINK_PORT_TYPE_NOTSET = 0x0
++ DEVLINK_PORT_TYPE_AUTO = 0x1
++ DEVLINK_PORT_TYPE_ETH = 0x2
++ DEVLINK_PORT_TYPE_IB = 0x3
++ DEVLINK_SB_POOL_TYPE_INGRESS = 0x0
++ DEVLINK_SB_POOL_TYPE_EGRESS = 0x1
++ DEVLINK_SB_THRESHOLD_TYPE_STATIC = 0x0
++ DEVLINK_SB_THRESHOLD_TYPE_DYNAMIC = 0x1
++ DEVLINK_ESWITCH_MODE_LEGACY = 0x0
++ DEVLINK_ESWITCH_MODE_SWITCHDEV = 0x1
++ DEVLINK_ESWITCH_INLINE_MODE_NONE = 0x0
++ DEVLINK_ESWITCH_INLINE_MODE_LINK = 0x1
++ DEVLINK_ESWITCH_INLINE_MODE_NETWORK = 0x2
++ DEVLINK_ESWITCH_INLINE_MODE_TRANSPORT = 0x3
++ DEVLINK_ESWITCH_ENCAP_MODE_NONE = 0x0
++ DEVLINK_ESWITCH_ENCAP_MODE_BASIC = 0x1
++ DEVLINK_ATTR_UNSPEC = 0x0
++ DEVLINK_ATTR_BUS_NAME = 0x1
++ DEVLINK_ATTR_DEV_NAME = 0x2
++ DEVLINK_ATTR_PORT_INDEX = 0x3
++ DEVLINK_ATTR_PORT_TYPE = 0x4
++ DEVLINK_ATTR_PORT_DESIRED_TYPE = 0x5
++ DEVLINK_ATTR_PORT_NETDEV_IFINDEX = 0x6
++ DEVLINK_ATTR_PORT_NETDEV_NAME = 0x7
++ DEVLINK_ATTR_PORT_IBDEV_NAME = 0x8
++ DEVLINK_ATTR_PORT_SPLIT_COUNT = 0x9
++ DEVLINK_ATTR_PORT_SPLIT_GROUP = 0xa
++ DEVLINK_ATTR_SB_INDEX = 0xb
++ DEVLINK_ATTR_SB_SIZE = 0xc
++ DEVLINK_ATTR_SB_INGRESS_POOL_COUNT = 0xd
++ DEVLINK_ATTR_SB_EGRESS_POOL_COUNT = 0xe
++ DEVLINK_ATTR_SB_INGRESS_TC_COUNT = 0xf
++ DEVLINK_ATTR_SB_EGRESS_TC_COUNT = 0x10
++ DEVLINK_ATTR_SB_POOL_INDEX = 0x11
++ DEVLINK_ATTR_SB_POOL_TYPE = 0x12
++ DEVLINK_ATTR_SB_POOL_SIZE = 0x13
++ DEVLINK_ATTR_SB_POOL_THRESHOLD_TYPE = 0x14
++ DEVLINK_ATTR_SB_THRESHOLD = 0x15
++ DEVLINK_ATTR_SB_TC_INDEX = 0x16
++ DEVLINK_ATTR_SB_OCC_CUR = 0x17
++ DEVLINK_ATTR_SB_OCC_MAX = 0x18
++ DEVLINK_ATTR_ESWITCH_MODE = 0x19
++ DEVLINK_ATTR_ESWITCH_INLINE_MODE = 0x1a
++ DEVLINK_ATTR_DPIPE_TABLES = 0x1b
++ DEVLINK_ATTR_DPIPE_TABLE = 0x1c
++ DEVLINK_ATTR_DPIPE_TABLE_NAME = 0x1d
++ DEVLINK_ATTR_DPIPE_TABLE_SIZE = 0x1e
++ DEVLINK_ATTR_DPIPE_TABLE_MATCHES = 0x1f
++ DEVLINK_ATTR_DPIPE_TABLE_ACTIONS = 0x20
++ DEVLINK_ATTR_DPIPE_TABLE_COUNTERS_ENABLED = 0x21
++ DEVLINK_ATTR_DPIPE_ENTRIES = 0x22
++ DEVLINK_ATTR_DPIPE_ENTRY = 0x23
++ DEVLINK_ATTR_DPIPE_ENTRY_INDEX = 0x24
++ DEVLINK_ATTR_DPIPE_ENTRY_MATCH_VALUES = 0x25
++ DEVLINK_ATTR_DPIPE_ENTRY_ACTION_VALUES = 0x26
++ DEVLINK_ATTR_DPIPE_ENTRY_COUNTER = 0x27
++ DEVLINK_ATTR_DPIPE_MATCH = 0x28
++ DEVLINK_ATTR_DPIPE_MATCH_VALUE = 0x29
++ DEVLINK_ATTR_DPIPE_MATCH_TYPE = 0x2a
++ DEVLINK_ATTR_DPIPE_ACTION = 0x2b
++ DEVLINK_ATTR_DPIPE_ACTION_VALUE = 0x2c
++ DEVLINK_ATTR_DPIPE_ACTION_TYPE = 0x2d
++ DEVLINK_ATTR_DPIPE_VALUE = 0x2e
++ DEVLINK_ATTR_DPIPE_VALUE_MASK = 0x2f
++ DEVLINK_ATTR_DPIPE_VALUE_MAPPING = 0x30
++ DEVLINK_ATTR_DPIPE_HEADERS = 0x31
++ DEVLINK_ATTR_DPIPE_HEADER = 0x32
++ DEVLINK_ATTR_DPIPE_HEADER_NAME = 0x33
++ DEVLINK_ATTR_DPIPE_HEADER_ID = 0x34
++ DEVLINK_ATTR_DPIPE_HEADER_FIELDS = 0x35
++ DEVLINK_ATTR_DPIPE_HEADER_GLOBAL = 0x36
++ DEVLINK_ATTR_DPIPE_HEADER_INDEX = 0x37
++ DEVLINK_ATTR_DPIPE_FIELD = 0x38
++ DEVLINK_ATTR_DPIPE_FIELD_NAME = 0x39
++ DEVLINK_ATTR_DPIPE_FIELD_ID = 0x3a
++ DEVLINK_ATTR_DPIPE_FIELD_BITWIDTH = 0x3b
++ DEVLINK_ATTR_DPIPE_FIELD_MAPPING_TYPE = 0x3c
++ DEVLINK_ATTR_PAD = 0x3d
++ DEVLINK_ATTR_ESWITCH_ENCAP_MODE = 0x3e
++ DEVLINK_ATTR_MAX = 0x8c
++ DEVLINK_DPIPE_FIELD_MAPPING_TYPE_NONE = 0x0
++ DEVLINK_DPIPE_FIELD_MAPPING_TYPE_IFINDEX = 0x1
++ DEVLINK_DPIPE_MATCH_TYPE_FIELD_EXACT = 0x0
++ DEVLINK_DPIPE_ACTION_TYPE_FIELD_MODIFY = 0x0
++ DEVLINK_DPIPE_FIELD_ETHERNET_DST_MAC = 0x0
++ DEVLINK_DPIPE_FIELD_IPV4_DST_IP = 0x0
++ DEVLINK_DPIPE_FIELD_IPV6_DST_IP = 0x0
++ DEVLINK_DPIPE_HEADER_ETHERNET = 0x0
++ DEVLINK_DPIPE_HEADER_IPV4 = 0x1
++ DEVLINK_DPIPE_HEADER_IPV6 = 0x2
++)
++
++type FsverityDigest struct {
++ Algorithm uint16
++ Size uint16
++}
++
++type FsverityEnableArg struct {
++ Version uint32
++ Hash_algorithm uint32
++ Block_size uint32
++ Salt_size uint32
++ Salt_ptr uint64
++ Sig_size uint32
++ _ uint32
++ Sig_ptr uint64
++ _ [11]uint64
++}
++
++type Nhmsg struct {
++ Family uint8
++ Scope uint8
++ Protocol uint8
++ Resvd uint8
++ Flags uint32
++}
++
++type NexthopGrp struct {
++ Id uint32
++ Weight uint8
++ Resvd1 uint8
++ Resvd2 uint16
++}
++
++const (
++ NHA_UNSPEC = 0x0
++ NHA_ID = 0x1
++ NHA_GROUP = 0x2
++ NHA_GROUP_TYPE = 0x3
++ NHA_BLACKHOLE = 0x4
++ NHA_OIF = 0x5
++ NHA_GATEWAY = 0x6
++ NHA_ENCAP_TYPE = 0x7
++ NHA_ENCAP = 0x8
++ NHA_GROUPS = 0x9
++ NHA_MASTER = 0xa
++)
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_386.go b/vendor/golang.org/x/sys/unix/ztypes_linux_386.go
+index 7b36896e..761b67c8 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_linux_386.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_linux_386.go
+@@ -6,19 +6,12 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x4
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x4
+- sizeofLongLong = 0x8
+- PathMax = 0x1000
++ SizeofPtr = 0x4
++ SizeofLong = 0x4
+ )
+
+ type (
+- _C_short int16
+- _C_int int32
+- _C_long int32
+- _C_long_long int64
++ _C_long int32
+ )
+
+ type Timespec struct {
+@@ -52,7 +45,7 @@ type Timex struct {
+ Errcnt int32
+ Stbcnt int32
+ Tai int32
+- Pad_cgo_0 [44]byte
++ _ [44]byte
+ }
+
+ type Time_t int32
+@@ -88,60 +81,32 @@ type Rusage struct {
+ Nivcsw int32
+ }
+
+-type Rlimit struct {
+- Cur uint64
+- Max uint64
+-}
+-
+-type _Gid_t uint32
+-
+ type Stat_t struct {
+- Dev uint64
+- X__pad1 uint16
+- Pad_cgo_0 [2]byte
+- X__st_ino uint32
+- Mode uint32
+- Nlink uint32
+- Uid uint32
+- Gid uint32
+- Rdev uint64
+- X__pad2 uint16
+- Pad_cgo_1 [2]byte
+- Size int64
+- Blksize int32
+- Blocks int64
+- Atim Timespec
+- Mtim Timespec
+- Ctim Timespec
+- Ino uint64
+-}
+-
+-type Statfs_t struct {
+- Type int32
+- Bsize int32
+- Blocks uint64
+- Bfree uint64
+- Bavail uint64
+- Files uint64
+- Ffree uint64
+- Fsid Fsid
+- Namelen int32
+- Frsize int32
+- Flags int32
+- Spare [4]int32
++ Dev uint64
++ _ uint16
++ _ uint32
++ Mode uint32
++ Nlink uint32
++ Uid uint32
++ Gid uint32
++ Rdev uint64
++ _ uint16
++ Size int64
++ Blksize int32
++ Blocks int64
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Ino uint64
+ }
+
+ type Dirent struct {
+- Ino uint64
+- Off int64
+- Reclen uint16
+- Type uint8
+- Name [256]int8
+- Pad_cgo_0 [1]byte
+-}
+-
+-type Fsid struct {
+- X__val [2]int32
++ Ino uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Name [256]int8
++ _ [1]byte
+ }
+
+ type Flock_t struct {
+@@ -152,101 +117,11 @@ type Flock_t struct {
+ Pid int32
+ }
+
+-type FscryptPolicy struct {
+- Version uint8
+- Contents_encryption_mode uint8
+- Filenames_encryption_mode uint8
+- Flags uint8
+- Master_key_descriptor [8]uint8
+-}
+-
+-type FscryptKey struct {
+- Mode uint32
+- Raw [64]uint8
+- Size uint32
+-}
+-
+-type KeyctlDHParams struct {
+- Private int32
+- Prime int32
+- Base int32
+-}
+-
+ const (
+- FADV_NORMAL = 0x0
+- FADV_RANDOM = 0x1
+- FADV_SEQUENTIAL = 0x2
+- FADV_WILLNEED = 0x3
+- FADV_DONTNEED = 0x4
+- FADV_NOREUSE = 0x5
++ FADV_DONTNEED = 0x4
++ FADV_NOREUSE = 0x5
+ )
+
+-type RawSockaddrInet4 struct {
+- Family uint16
+- Port uint16
+- Addr [4]byte /* in_addr */
+- Zero [8]uint8
+-}
+-
+-type RawSockaddrInet6 struct {
+- Family uint16
+- Port uint16
+- Flowinfo uint32
+- Addr [16]byte /* in6_addr */
+- Scope_id uint32
+-}
+-
+-type RawSockaddrUnix struct {
+- Family uint16
+- Path [108]int8
+-}
+-
+-type RawSockaddrLinklayer struct {
+- Family uint16
+- Protocol uint16
+- Ifindex int32
+- Hatype uint16
+- Pkttype uint8
+- Halen uint8
+- Addr [8]uint8
+-}
+-
+-type RawSockaddrNetlink struct {
+- Family uint16
+- Pad uint16
+- Pid uint32
+- Groups uint32
+-}
+-
+-type RawSockaddrHCI struct {
+- Family uint16
+- Dev uint16
+- Channel uint16
+-}
+-
+-type RawSockaddrCAN struct {
+- Family uint16
+- Pad_cgo_0 [2]byte
+- Ifindex int32
+- Addr [8]byte
+-}
+-
+-type RawSockaddrALG struct {
+- Family uint16
+- Type [14]uint8
+- Feat uint32
+- Mask uint32
+- Name [64]uint8
+-}
+-
+-type RawSockaddrVM struct {
+- Family uint16
+- Reserved1 uint16
+- Port uint32
+- Cid uint32
+- Zero [4]uint8
+-}
+-
+ type RawSockaddr struct {
+ Family uint16
+ Data [14]int8
+@@ -257,41 +132,11 @@ type RawSockaddrAny struct {
+ Pad [96]int8
+ }
+
+-type _Socklen uint32
+-
+-type Linger struct {
+- Onoff int32
+- Linger int32
+-}
+-
+ type Iovec struct {
+ Base *byte
+ Len uint32
+ }
+
+-type IPMreq struct {
+- Multiaddr [4]byte /* in_addr */
+- Interface [4]byte /* in_addr */
+-}
+-
+-type IPMreqn struct {
+- Multiaddr [4]byte /* in_addr */
+- Address [4]byte /* in_addr */
+- Ifindex int32
+-}
+-
+-type IPv6Mreq struct {
+- Multiaddr [16]byte /* in6_addr */
+- Interface uint32
+-}
+-
+-type PacketMreq struct {
+- Ifindex int32
+- Type uint16
+- Alen uint16
+- Address [8]uint8
+-}
+-
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+@@ -308,277 +153,16 @@ type Cmsghdr struct {
+ Type int32
+ }
+
+-type Inet4Pktinfo struct {
+- Ifindex int32
+- Spec_dst [4]byte /* in_addr */
+- Addr [4]byte /* in_addr */
+-}
+-
+-type Inet6Pktinfo struct {
+- Addr [16]byte /* in6_addr */
+- Ifindex uint32
+-}
+-
+-type IPv6MTUInfo struct {
+- Addr RawSockaddrInet6
+- Mtu uint32
+-}
+-
+-type ICMPv6Filter struct {
+- Data [8]uint32
+-}
+-
+-type Ucred struct {
+- Pid int32
+- Uid uint32
+- Gid uint32
+-}
+-
+-type TCPInfo struct {
+- State uint8
+- Ca_state uint8
+- Retransmits uint8
+- Probes uint8
+- Backoff uint8
+- Options uint8
+- Pad_cgo_0 [2]byte
+- Rto uint32
+- Ato uint32
+- Snd_mss uint32
+- Rcv_mss uint32
+- Unacked uint32
+- Sacked uint32
+- Lost uint32
+- Retrans uint32
+- Fackets uint32
+- Last_data_sent uint32
+- Last_ack_sent uint32
+- Last_data_recv uint32
+- Last_ack_recv uint32
+- Pmtu uint32
+- Rcv_ssthresh uint32
+- Rtt uint32
+- Rttvar uint32
+- Snd_ssthresh uint32
+- Snd_cwnd uint32
+- Advmss uint32
+- Reordering uint32
+- Rcv_rtt uint32
+- Rcv_space uint32
+- Total_retrans uint32
+-}
+-
+ const (
+- SizeofSockaddrInet4 = 0x10
+- SizeofSockaddrInet6 = 0x1c
+- SizeofSockaddrAny = 0x70
+- SizeofSockaddrUnix = 0x6e
+- SizeofSockaddrLinklayer = 0x14
+- SizeofSockaddrNetlink = 0xc
+- SizeofSockaddrHCI = 0x6
+- SizeofSockaddrCAN = 0x10
+- SizeofSockaddrALG = 0x58
+- SizeofSockaddrVM = 0x10
+- SizeofLinger = 0x8
+- SizeofIovec = 0x8
+- SizeofIPMreq = 0x8
+- SizeofIPMreqn = 0xc
+- SizeofIPv6Mreq = 0x14
+- SizeofPacketMreq = 0x10
+- SizeofMsghdr = 0x1c
+- SizeofCmsghdr = 0xc
+- SizeofInet4Pktinfo = 0xc
+- SizeofInet6Pktinfo = 0x14
+- SizeofIPv6MTUInfo = 0x20
+- SizeofICMPv6Filter = 0x20
+- SizeofUcred = 0xc
+- SizeofTCPInfo = 0x68
++ SizeofIovec = 0x8
++ SizeofMsghdr = 0x1c
++ SizeofCmsghdr = 0xc
+ )
+
+ const (
+- IFA_UNSPEC = 0x0
+- IFA_ADDRESS = 0x1
+- IFA_LOCAL = 0x2
+- IFA_LABEL = 0x3
+- IFA_BROADCAST = 0x4
+- IFA_ANYCAST = 0x5
+- IFA_CACHEINFO = 0x6
+- IFA_MULTICAST = 0x7
+- IFLA_UNSPEC = 0x0
+- IFLA_ADDRESS = 0x1
+- IFLA_BROADCAST = 0x2
+- IFLA_IFNAME = 0x3
+- IFLA_MTU = 0x4
+- IFLA_LINK = 0x5
+- IFLA_QDISC = 0x6
+- IFLA_STATS = 0x7
+- IFLA_COST = 0x8
+- IFLA_PRIORITY = 0x9
+- IFLA_MASTER = 0xa
+- IFLA_WIRELESS = 0xb
+- IFLA_PROTINFO = 0xc
+- IFLA_TXQLEN = 0xd
+- IFLA_MAP = 0xe
+- IFLA_WEIGHT = 0xf
+- IFLA_OPERSTATE = 0x10
+- IFLA_LINKMODE = 0x11
+- IFLA_LINKINFO = 0x12
+- IFLA_NET_NS_PID = 0x13
+- IFLA_IFALIAS = 0x14
+- IFLA_MAX = 0x2b
+- RT_SCOPE_UNIVERSE = 0x0
+- RT_SCOPE_SITE = 0xc8
+- RT_SCOPE_LINK = 0xfd
+- RT_SCOPE_HOST = 0xfe
+- RT_SCOPE_NOWHERE = 0xff
+- RT_TABLE_UNSPEC = 0x0
+- RT_TABLE_COMPAT = 0xfc
+- RT_TABLE_DEFAULT = 0xfd
+- RT_TABLE_MAIN = 0xfe
+- RT_TABLE_LOCAL = 0xff
+- RT_TABLE_MAX = 0xffffffff
+- RTA_UNSPEC = 0x0
+- RTA_DST = 0x1
+- RTA_SRC = 0x2
+- RTA_IIF = 0x3
+- RTA_OIF = 0x4
+- RTA_GATEWAY = 0x5
+- RTA_PRIORITY = 0x6
+- RTA_PREFSRC = 0x7
+- RTA_METRICS = 0x8
+- RTA_MULTIPATH = 0x9
+- RTA_FLOW = 0xb
+- RTA_CACHEINFO = 0xc
+- RTA_TABLE = 0xf
+- RTN_UNSPEC = 0x0
+- RTN_UNICAST = 0x1
+- RTN_LOCAL = 0x2
+- RTN_BROADCAST = 0x3
+- RTN_ANYCAST = 0x4
+- RTN_MULTICAST = 0x5
+- RTN_BLACKHOLE = 0x6
+- RTN_UNREACHABLE = 0x7
+- RTN_PROHIBIT = 0x8
+- RTN_THROW = 0x9
+- RTN_NAT = 0xa
+- RTN_XRESOLVE = 0xb
+- RTNLGRP_NONE = 0x0
+- RTNLGRP_LINK = 0x1
+- RTNLGRP_NOTIFY = 0x2
+- RTNLGRP_NEIGH = 0x3
+- RTNLGRP_TC = 0x4
+- RTNLGRP_IPV4_IFADDR = 0x5
+- RTNLGRP_IPV4_MROUTE = 0x6
+- RTNLGRP_IPV4_ROUTE = 0x7
+- RTNLGRP_IPV4_RULE = 0x8
+- RTNLGRP_IPV6_IFADDR = 0x9
+- RTNLGRP_IPV6_MROUTE = 0xa
+- RTNLGRP_IPV6_ROUTE = 0xb
+- RTNLGRP_IPV6_IFINFO = 0xc
+- RTNLGRP_IPV6_PREFIX = 0x12
+- RTNLGRP_IPV6_RULE = 0x13
+- RTNLGRP_ND_USEROPT = 0x14
+- SizeofNlMsghdr = 0x10
+- SizeofNlMsgerr = 0x14
+- SizeofRtGenmsg = 0x1
+- SizeofNlAttr = 0x4
+- SizeofRtAttr = 0x4
+- SizeofIfInfomsg = 0x10
+- SizeofIfAddrmsg = 0x8
+- SizeofRtMsg = 0xc
+- SizeofRtNexthop = 0x8
++ SizeofSockFprog = 0x8
+ )
+
+-type NlMsghdr struct {
+- Len uint32
+- Type uint16
+- Flags uint16
+- Seq uint32
+- Pid uint32
+-}
+-
+-type NlMsgerr struct {
+- Error int32
+- Msg NlMsghdr
+-}
+-
+-type RtGenmsg struct {
+- Family uint8
+-}
+-
+-type NlAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type RtAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type IfInfomsg struct {
+- Family uint8
+- X__ifi_pad uint8
+- Type uint16
+- Index int32
+- Flags uint32
+- Change uint32
+-}
+-
+-type IfAddrmsg struct {
+- Family uint8
+- Prefixlen uint8
+- Flags uint8
+- Scope uint8
+- Index uint32
+-}
+-
+-type RtMsg struct {
+- Family uint8
+- Dst_len uint8
+- Src_len uint8
+- Tos uint8
+- Table uint8
+- Protocol uint8
+- Scope uint8
+- Type uint8
+- Flags uint32
+-}
+-
+-type RtNexthop struct {
+- Len uint16
+- Flags uint8
+- Hops uint8
+- Ifindex int32
+-}
+-
+-const (
+- SizeofSockFilter = 0x8
+- SizeofSockFprog = 0x8
+-)
+-
+-type SockFilter struct {
+- Code uint16
+- Jt uint8
+- Jf uint8
+- K uint32
+-}
+-
+-type SockFprog struct {
+- Len uint16
+- Pad_cgo_0 [2]byte
+- Filter *SockFilter
+-}
+-
+-type InotifyEvent struct {
+- Wd int32
+- Mask uint32
+- Cookie uint32
+- Len uint32
+-}
+-
+-const SizeofInotifyEvent = 0x10
+-
+ type PtraceRegs struct {
+ Ebx int32
+ Ecx int32
+@@ -617,16 +201,7 @@ type Sysinfo_t struct {
+ Totalhigh uint32
+ Freehigh uint32
+ Unit uint32
+- X_f [8]int8
+-}
+-
+-type Utsname struct {
+- Sysname [65]int8
+- Nodename [65]int8
+- Release [65]int8
+- Version [65]int8
+- Machine [65]int8
+- Domainname [65]int8
++ _ [8]int8
+ }
+
+ type Ustat_t struct {
+@@ -643,37 +218,14 @@ type EpollEvent struct {
+ }
+
+ const (
+- AT_FDCWD = -0x64
+- AT_REMOVEDIR = 0x200
+- AT_SYMLINK_FOLLOW = 0x400
+- AT_SYMLINK_NOFOLLOW = 0x100
+-)
+-
+-type PollFd struct {
+- Fd int32
+- Events int16
+- Revents int16
+-}
+-
+-const (
+- POLLIN = 0x1
+- POLLPRI = 0x2
+- POLLOUT = 0x4
+ POLLRDHUP = 0x2000
+- POLLERR = 0x8
+- POLLHUP = 0x10
+- POLLNVAL = 0x20
+ )
+
+ type Sigset_t struct {
+- X__val [32]uint32
++ Val [32]uint32
+ }
+
+-const RNDGETENTCNT = 0x80045200
+-
+-const PERF_IOC_FLAG_GROUP = 0x1
+-
+-const _SC_PAGESIZE = 0x1e
++const _C__NSIG = 0x41
+
+ type Termios struct {
+ Iflag uint32
+@@ -686,20 +238,12 @@ type Termios struct {
+ Ospeed uint32
+ }
+
+-type Winsize struct {
+- Row uint16
+- Col uint16
+- Xpixel uint16
+- Ypixel uint16
+-}
+-
+ type Taskstats struct {
+ Version uint16
+- Pad_cgo_0 [2]byte
+ Ac_exitcode uint32
+ Ac_flag uint8
+ Ac_nice uint8
+- Pad_cgo_1 [6]byte
++ _ [4]byte
+ Cpu_count uint64
+ Cpu_delay_total uint64
+ Blkio_count uint64
+@@ -711,13 +255,13 @@ type Taskstats struct {
+ Ac_comm [32]int8
+ Ac_sched uint8
+ Ac_pad [3]uint8
+- Pad_cgo_2 [4]byte
++ _ [4]byte
+ Ac_uid uint32
+ Ac_gid uint32
+ Ac_pid uint32
+ Ac_ppid uint32
+ Ac_btime uint32
+- Pad_cgo_3 [4]byte
++ _ [4]byte
+ Ac_etime uint64
+ Ac_utime uint64
+ Ac_stime uint64
+@@ -741,55 +285,315 @@ type Taskstats struct {
+ Cpu_scaled_run_real_total uint64
+ Freepages_count uint64
+ Freepages_delay_total uint64
++ Thrashing_count uint64
++ Thrashing_delay_total uint64
++ Ac_btime64 uint64
++}
++
++type cpuMask uint32
++
++const (
++ _NCPUBITS = 0x20
++)
++
++const (
++ CBitFieldMaskBit0 = 0x1
++ CBitFieldMaskBit1 = 0x2
++ CBitFieldMaskBit2 = 0x4
++ CBitFieldMaskBit3 = 0x8
++ CBitFieldMaskBit4 = 0x10
++ CBitFieldMaskBit5 = 0x20
++ CBitFieldMaskBit6 = 0x40
++ CBitFieldMaskBit7 = 0x80
++ CBitFieldMaskBit8 = 0x100
++ CBitFieldMaskBit9 = 0x200
++ CBitFieldMaskBit10 = 0x400
++ CBitFieldMaskBit11 = 0x800
++ CBitFieldMaskBit12 = 0x1000
++ CBitFieldMaskBit13 = 0x2000
++ CBitFieldMaskBit14 = 0x4000
++ CBitFieldMaskBit15 = 0x8000
++ CBitFieldMaskBit16 = 0x10000
++ CBitFieldMaskBit17 = 0x20000
++ CBitFieldMaskBit18 = 0x40000
++ CBitFieldMaskBit19 = 0x80000
++ CBitFieldMaskBit20 = 0x100000
++ CBitFieldMaskBit21 = 0x200000
++ CBitFieldMaskBit22 = 0x400000
++ CBitFieldMaskBit23 = 0x800000
++ CBitFieldMaskBit24 = 0x1000000
++ CBitFieldMaskBit25 = 0x2000000
++ CBitFieldMaskBit26 = 0x4000000
++ CBitFieldMaskBit27 = 0x8000000
++ CBitFieldMaskBit28 = 0x10000000
++ CBitFieldMaskBit29 = 0x20000000
++ CBitFieldMaskBit30 = 0x40000000
++ CBitFieldMaskBit31 = 0x80000000
++ CBitFieldMaskBit32 = 0x100000000
++ CBitFieldMaskBit33 = 0x200000000
++ CBitFieldMaskBit34 = 0x400000000
++ CBitFieldMaskBit35 = 0x800000000
++ CBitFieldMaskBit36 = 0x1000000000
++ CBitFieldMaskBit37 = 0x2000000000
++ CBitFieldMaskBit38 = 0x4000000000
++ CBitFieldMaskBit39 = 0x8000000000
++ CBitFieldMaskBit40 = 0x10000000000
++ CBitFieldMaskBit41 = 0x20000000000
++ CBitFieldMaskBit42 = 0x40000000000
++ CBitFieldMaskBit43 = 0x80000000000
++ CBitFieldMaskBit44 = 0x100000000000
++ CBitFieldMaskBit45 = 0x200000000000
++ CBitFieldMaskBit46 = 0x400000000000
++ CBitFieldMaskBit47 = 0x800000000000
++ CBitFieldMaskBit48 = 0x1000000000000
++ CBitFieldMaskBit49 = 0x2000000000000
++ CBitFieldMaskBit50 = 0x4000000000000
++ CBitFieldMaskBit51 = 0x8000000000000
++ CBitFieldMaskBit52 = 0x10000000000000
++ CBitFieldMaskBit53 = 0x20000000000000
++ CBitFieldMaskBit54 = 0x40000000000000
++ CBitFieldMaskBit55 = 0x80000000000000
++ CBitFieldMaskBit56 = 0x100000000000000
++ CBitFieldMaskBit57 = 0x200000000000000
++ CBitFieldMaskBit58 = 0x400000000000000
++ CBitFieldMaskBit59 = 0x800000000000000
++ CBitFieldMaskBit60 = 0x1000000000000000
++ CBitFieldMaskBit61 = 0x2000000000000000
++ CBitFieldMaskBit62 = 0x4000000000000000
++ CBitFieldMaskBit63 = 0x8000000000000000
++)
++
++type SockaddrStorage struct {
++ Family uint16
++ _ [122]int8
++ _ uint32
++}
++
++type HDGeometry struct {
++ Heads uint8
++ Sectors uint8
++ Cylinders uint16
++ Start uint32
++}
++
++type Statfs_t struct {
++ Type int32
++ Bsize int32
++ Blocks uint64
++ Bfree uint64
++ Bavail uint64
++ Files uint64
++ Ffree uint64
++ Fsid Fsid
++ Namelen int32
++ Frsize int32
++ Flags int32
++ Spare [4]int32
++}
++
++type TpacketHdr struct {
++ Status uint32
++ Len uint32
++ Snaplen uint32
++ Mac uint16
++ Net uint16
++ Sec uint32
++ Usec uint32
+ }
+
+ const (
+- TASKSTATS_CMD_UNSPEC = 0x0
+- TASKSTATS_CMD_GET = 0x1
+- TASKSTATS_CMD_NEW = 0x2
+- TASKSTATS_TYPE_UNSPEC = 0x0
+- TASKSTATS_TYPE_PID = 0x1
+- TASKSTATS_TYPE_TGID = 0x2
+- TASKSTATS_TYPE_STATS = 0x3
+- TASKSTATS_TYPE_AGGR_PID = 0x4
+- TASKSTATS_TYPE_AGGR_TGID = 0x5
+- TASKSTATS_TYPE_NULL = 0x6
+- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
+- TASKSTATS_CMD_ATTR_PID = 0x1
+- TASKSTATS_CMD_ATTR_TGID = 0x2
+- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
+- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
++ SizeofTpacketHdr = 0x18
+ )
+
+-type Genlmsghdr struct {
+- Cmd uint8
+- Version uint8
+- Reserved uint16
++type RTCPLLInfo struct {
++ Ctrl int32
++ Value int32
++ Max int32
++ Min int32
++ Posmult int32
++ Negmult int32
++ Clock int32
++}
++
++type BlkpgPartition struct {
++ Start int64
++ Length int64
++ Pno int32
++ Devname [64]uint8
++ Volname [64]uint8
+ }
+
+ const (
+- CTRL_CMD_UNSPEC = 0x0
+- CTRL_CMD_NEWFAMILY = 0x1
+- CTRL_CMD_DELFAMILY = 0x2
+- CTRL_CMD_GETFAMILY = 0x3
+- CTRL_CMD_NEWOPS = 0x4
+- CTRL_CMD_DELOPS = 0x5
+- CTRL_CMD_GETOPS = 0x6
+- CTRL_CMD_NEWMCAST_GRP = 0x7
+- CTRL_CMD_DELMCAST_GRP = 0x8
+- CTRL_CMD_GETMCAST_GRP = 0x9
+- CTRL_ATTR_UNSPEC = 0x0
+- CTRL_ATTR_FAMILY_ID = 0x1
+- CTRL_ATTR_FAMILY_NAME = 0x2
+- CTRL_ATTR_VERSION = 0x3
+- CTRL_ATTR_HDRSIZE = 0x4
+- CTRL_ATTR_MAXATTR = 0x5
+- CTRL_ATTR_OPS = 0x6
+- CTRL_ATTR_MCAST_GROUPS = 0x7
+- 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
++ BLKPG = 0x1269
+ )
++
++type XDPUmemReg struct {
++ Addr uint64
++ Len uint64
++ Size uint32
++ Headroom uint32
++ Flags uint32
++}
++
++type CryptoUserAlg struct {
++ Name [64]int8
++ Driver_name [64]int8
++ Module_name [64]int8
++ Type uint32
++ Mask uint32
++ Refcnt uint32
++ Flags uint32
++}
++
++type CryptoStatAEAD struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatAKCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Verify_cnt uint64
++ Sign_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCompress struct {
++ Type [64]int8
++ Compress_cnt uint64
++ Compress_tlen uint64
++ Decompress_cnt uint64
++ Decompress_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatHash struct {
++ Type [64]int8
++ Hash_cnt uint64
++ Hash_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatKPP struct {
++ Type [64]int8
++ Setsecret_cnt uint64
++ Generate_public_key_cnt uint64
++ Compute_shared_secret_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatRNG struct {
++ Type [64]int8
++ Generate_cnt uint64
++ Generate_tlen uint64
++ Seed_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatLarval struct {
++ Type [64]int8
++}
++
++type CryptoReportLarval struct {
++ Type [64]int8
++}
++
++type CryptoReportHash struct {
++ Type [64]int8
++ Blocksize uint32
++ Digestsize uint32
++}
++
++type CryptoReportCipher struct {
++ Type [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++}
++
++type CryptoReportBlkCipher struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++ Ivsize uint32
++}
++
++type CryptoReportAEAD struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Maxauthsize uint32
++ Ivsize uint32
++}
++
++type CryptoReportComp struct {
++ Type [64]int8
++}
++
++type CryptoReportRNG struct {
++ Type [64]int8
++ Seedsize uint32
++}
++
++type CryptoReportAKCipher struct {
++ Type [64]int8
++}
++
++type CryptoReportKPP struct {
++ Type [64]int8
++}
++
++type CryptoReportAcomp struct {
++ Type [64]int8
++}
++
++type LoopInfo struct {
++ Number int32
++ Device uint16
++ Inode uint32
++ Rdevice uint16
++ Offset int32
++ Encrypt_type int32
++ Encrypt_key_size int32
++ Flags int32
++ Name [64]int8
++ Encrypt_key [32]uint8
++ Init [2]uint32
++ Reserved [4]int8
++}
++
++type TIPCSubscr struct {
++ Seq TIPCServiceRange
++ Timeout uint32
++ Filter uint32
++ Handle [8]int8
++}
++
++type TIPCSIOCLNReq struct {
++ Peer uint32
++ Id uint32
++ Linkname [68]int8
++}
++
++type TIPCSIOCNodeIDReq struct {
++ Peer uint32
++ Id [16]int8
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
+index e54fa984..201fb348 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
+@@ -6,19 +6,12 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
+- PathMax = 0x1000
++ SizeofPtr = 0x8
++ SizeofLong = 0x8
+ )
+
+ type (
+- _C_short int16
+- _C_int int32
+- _C_long int64
+- _C_long_long int64
++ _C_long int64
+ )
+
+ type Timespec struct {
+@@ -33,13 +26,11 @@ type Timeval struct {
+
+ type Timex struct {
+ Modes uint32
+- Pad_cgo_0 [4]byte
+ Offset int64
+ Freq int64
+ Maxerror int64
+ Esterror int64
+ Status int32
+- Pad_cgo_1 [4]byte
+ Constant int64
+ Precision int64
+ Tolerance int64
+@@ -48,14 +39,13 @@ type Timex struct {
+ Ppsfreq int64
+ Jitter int64
+ Shift int32
+- Pad_cgo_2 [4]byte
+ Stabil int64
+ Jitcnt int64
+ Calcnt int64
+ Errcnt int64
+ Stbcnt int64
+ Tai int32
+- Pad_cgo_3 [44]byte
++ _ [44]byte
+ }
+
+ type Time_t int64
+@@ -91,13 +81,6 @@ type Rusage struct {
+ Nivcsw int64
+ }
+
+-type Rlimit struct {
+- Cur uint64
+- Max uint64
+-}
+-
+-type _Gid_t uint32
+-
+ type Stat_t struct {
+ Dev uint64
+ Ino uint64
+@@ -105,7 +88,7 @@ type Stat_t struct {
+ Mode uint32
+ Uid uint32
+ Gid uint32
+- X__pad0 int32
++ _ int32
+ Rdev uint64
+ Size int64
+ Blksize int64
+@@ -116,139 +99,29 @@ type Stat_t struct {
+ _ [3]int64
+ }
+
+-type Statfs_t struct {
+- Type int64
+- Bsize int64
+- Blocks uint64
+- Bfree uint64
+- Bavail uint64
+- Files uint64
+- Ffree uint64
+- Fsid Fsid
+- Namelen int64
+- Frsize int64
+- Flags int64
+- Spare [4]int64
+-}
+-
+ type Dirent struct {
+- Ino uint64
+- Off int64
+- Reclen uint16
+- Type uint8
+- Name [256]int8
+- Pad_cgo_0 [5]byte
+-}
+-
+-type Fsid struct {
+- X__val [2]int32
++ Ino uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Name [256]int8
++ _ [5]byte
+ }
+
+ type Flock_t struct {
+- Type int16
+- Whence int16
+- Pad_cgo_0 [4]byte
+- Start int64
+- Len int64
+- Pid int32
+- Pad_cgo_1 [4]byte
+-}
+-
+-type FscryptPolicy struct {
+- Version uint8
+- Contents_encryption_mode uint8
+- Filenames_encryption_mode uint8
+- Flags uint8
+- Master_key_descriptor [8]uint8
+-}
+-
+-type FscryptKey struct {
+- Mode uint32
+- Raw [64]uint8
+- Size uint32
+-}
+-
+-type KeyctlDHParams struct {
+- Private int32
+- Prime int32
+- Base int32
++ Type int16
++ Whence int16
++ Start int64
++ Len int64
++ Pid int32
++ _ [4]byte
+ }
+
+ const (
+- FADV_NORMAL = 0x0
+- FADV_RANDOM = 0x1
+- FADV_SEQUENTIAL = 0x2
+- FADV_WILLNEED = 0x3
+- FADV_DONTNEED = 0x4
+- FADV_NOREUSE = 0x5
++ FADV_DONTNEED = 0x4
++ FADV_NOREUSE = 0x5
+ )
+
+-type RawSockaddrInet4 struct {
+- Family uint16
+- Port uint16
+- Addr [4]byte /* in_addr */
+- Zero [8]uint8
+-}
+-
+-type RawSockaddrInet6 struct {
+- Family uint16
+- Port uint16
+- Flowinfo uint32
+- Addr [16]byte /* in6_addr */
+- Scope_id uint32
+-}
+-
+-type RawSockaddrUnix struct {
+- Family uint16
+- Path [108]int8
+-}
+-
+-type RawSockaddrLinklayer struct {
+- Family uint16
+- Protocol uint16
+- Ifindex int32
+- Hatype uint16
+- Pkttype uint8
+- Halen uint8
+- Addr [8]uint8
+-}
+-
+-type RawSockaddrNetlink struct {
+- Family uint16
+- Pad uint16
+- Pid uint32
+- Groups uint32
+-}
+-
+-type RawSockaddrHCI struct {
+- Family uint16
+- Dev uint16
+- Channel uint16
+-}
+-
+-type RawSockaddrCAN struct {
+- Family uint16
+- Pad_cgo_0 [2]byte
+- Ifindex int32
+- Addr [8]byte
+-}
+-
+-type RawSockaddrALG struct {
+- Family uint16
+- Type [14]uint8
+- Feat uint32
+- Mask uint32
+- Name [64]uint8
+-}
+-
+-type RawSockaddrVM struct {
+- Family uint16
+- Reserved1 uint16
+- Port uint32
+- Cid uint32
+- Zero [4]uint8
+-}
+-
+ type RawSockaddr struct {
+ Family uint16
+ Data [14]int8
+@@ -259,51 +132,20 @@ type RawSockaddrAny struct {
+ Pad [96]int8
+ }
+
+-type _Socklen uint32
+-
+-type Linger struct {
+- Onoff int32
+- Linger int32
+-}
+-
+ type Iovec struct {
+ Base *byte
+ Len uint64
+ }
+
+-type IPMreq struct {
+- Multiaddr [4]byte /* in_addr */
+- Interface [4]byte /* in_addr */
+-}
+-
+-type IPMreqn struct {
+- Multiaddr [4]byte /* in_addr */
+- Address [4]byte /* in_addr */
+- Ifindex int32
+-}
+-
+-type IPv6Mreq struct {
+- Multiaddr [16]byte /* in6_addr */
+- Interface uint32
+-}
+-
+-type PacketMreq struct {
+- Ifindex int32
+- Type uint16
+- Alen uint16
+- Address [8]uint8
+-}
+-
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+- Pad_cgo_0 [4]byte
+ Iov *Iovec
+ Iovlen uint64
+ Control *byte
+ Controllen uint64
+ Flags int32
+- Pad_cgo_1 [4]byte
++ _ [4]byte
+ }
+
+ type Cmsghdr struct {
+@@ -312,277 +154,16 @@ type Cmsghdr struct {
+ Type int32
+ }
+
+-type Inet4Pktinfo struct {
+- Ifindex int32
+- Spec_dst [4]byte /* in_addr */
+- Addr [4]byte /* in_addr */
+-}
+-
+-type Inet6Pktinfo struct {
+- Addr [16]byte /* in6_addr */
+- Ifindex uint32
+-}
+-
+-type IPv6MTUInfo struct {
+- Addr RawSockaddrInet6
+- Mtu uint32
+-}
+-
+-type ICMPv6Filter struct {
+- Data [8]uint32
+-}
+-
+-type Ucred struct {
+- Pid int32
+- Uid uint32
+- Gid uint32
+-}
+-
+-type TCPInfo struct {
+- State uint8
+- Ca_state uint8
+- Retransmits uint8
+- Probes uint8
+- Backoff uint8
+- Options uint8
+- Pad_cgo_0 [2]byte
+- Rto uint32
+- Ato uint32
+- Snd_mss uint32
+- Rcv_mss uint32
+- Unacked uint32
+- Sacked uint32
+- Lost uint32
+- Retrans uint32
+- Fackets uint32
+- Last_data_sent uint32
+- Last_ack_sent uint32
+- Last_data_recv uint32
+- Last_ack_recv uint32
+- Pmtu uint32
+- Rcv_ssthresh uint32
+- Rtt uint32
+- Rttvar uint32
+- Snd_ssthresh uint32
+- Snd_cwnd uint32
+- Advmss uint32
+- Reordering uint32
+- Rcv_rtt uint32
+- Rcv_space uint32
+- Total_retrans uint32
+-}
+-
+ const (
+- SizeofSockaddrInet4 = 0x10
+- SizeofSockaddrInet6 = 0x1c
+- SizeofSockaddrAny = 0x70
+- SizeofSockaddrUnix = 0x6e
+- SizeofSockaddrLinklayer = 0x14
+- SizeofSockaddrNetlink = 0xc
+- SizeofSockaddrHCI = 0x6
+- SizeofSockaddrCAN = 0x10
+- SizeofSockaddrALG = 0x58
+- SizeofSockaddrVM = 0x10
+- SizeofLinger = 0x8
+- SizeofIovec = 0x10
+- SizeofIPMreq = 0x8
+- SizeofIPMreqn = 0xc
+- SizeofIPv6Mreq = 0x14
+- SizeofPacketMreq = 0x10
+- SizeofMsghdr = 0x38
+- SizeofCmsghdr = 0x10
+- SizeofInet4Pktinfo = 0xc
+- SizeofInet6Pktinfo = 0x14
+- SizeofIPv6MTUInfo = 0x20
+- SizeofICMPv6Filter = 0x20
+- SizeofUcred = 0xc
+- SizeofTCPInfo = 0x68
++ SizeofIovec = 0x10
++ SizeofMsghdr = 0x38
++ SizeofCmsghdr = 0x10
+ )
+
+ const (
+- IFA_UNSPEC = 0x0
+- IFA_ADDRESS = 0x1
+- IFA_LOCAL = 0x2
+- IFA_LABEL = 0x3
+- IFA_BROADCAST = 0x4
+- IFA_ANYCAST = 0x5
+- IFA_CACHEINFO = 0x6
+- IFA_MULTICAST = 0x7
+- IFLA_UNSPEC = 0x0
+- IFLA_ADDRESS = 0x1
+- IFLA_BROADCAST = 0x2
+- IFLA_IFNAME = 0x3
+- IFLA_MTU = 0x4
+- IFLA_LINK = 0x5
+- IFLA_QDISC = 0x6
+- IFLA_STATS = 0x7
+- IFLA_COST = 0x8
+- IFLA_PRIORITY = 0x9
+- IFLA_MASTER = 0xa
+- IFLA_WIRELESS = 0xb
+- IFLA_PROTINFO = 0xc
+- IFLA_TXQLEN = 0xd
+- IFLA_MAP = 0xe
+- IFLA_WEIGHT = 0xf
+- IFLA_OPERSTATE = 0x10
+- IFLA_LINKMODE = 0x11
+- IFLA_LINKINFO = 0x12
+- IFLA_NET_NS_PID = 0x13
+- IFLA_IFALIAS = 0x14
+- IFLA_MAX = 0x2b
+- RT_SCOPE_UNIVERSE = 0x0
+- RT_SCOPE_SITE = 0xc8
+- RT_SCOPE_LINK = 0xfd
+- RT_SCOPE_HOST = 0xfe
+- RT_SCOPE_NOWHERE = 0xff
+- RT_TABLE_UNSPEC = 0x0
+- RT_TABLE_COMPAT = 0xfc
+- RT_TABLE_DEFAULT = 0xfd
+- RT_TABLE_MAIN = 0xfe
+- RT_TABLE_LOCAL = 0xff
+- RT_TABLE_MAX = 0xffffffff
+- RTA_UNSPEC = 0x0
+- RTA_DST = 0x1
+- RTA_SRC = 0x2
+- RTA_IIF = 0x3
+- RTA_OIF = 0x4
+- RTA_GATEWAY = 0x5
+- RTA_PRIORITY = 0x6
+- RTA_PREFSRC = 0x7
+- RTA_METRICS = 0x8
+- RTA_MULTIPATH = 0x9
+- RTA_FLOW = 0xb
+- RTA_CACHEINFO = 0xc
+- RTA_TABLE = 0xf
+- RTN_UNSPEC = 0x0
+- RTN_UNICAST = 0x1
+- RTN_LOCAL = 0x2
+- RTN_BROADCAST = 0x3
+- RTN_ANYCAST = 0x4
+- RTN_MULTICAST = 0x5
+- RTN_BLACKHOLE = 0x6
+- RTN_UNREACHABLE = 0x7
+- RTN_PROHIBIT = 0x8
+- RTN_THROW = 0x9
+- RTN_NAT = 0xa
+- RTN_XRESOLVE = 0xb
+- RTNLGRP_NONE = 0x0
+- RTNLGRP_LINK = 0x1
+- RTNLGRP_NOTIFY = 0x2
+- RTNLGRP_NEIGH = 0x3
+- RTNLGRP_TC = 0x4
+- RTNLGRP_IPV4_IFADDR = 0x5
+- RTNLGRP_IPV4_MROUTE = 0x6
+- RTNLGRP_IPV4_ROUTE = 0x7
+- RTNLGRP_IPV4_RULE = 0x8
+- RTNLGRP_IPV6_IFADDR = 0x9
+- RTNLGRP_IPV6_MROUTE = 0xa
+- RTNLGRP_IPV6_ROUTE = 0xb
+- RTNLGRP_IPV6_IFINFO = 0xc
+- RTNLGRP_IPV6_PREFIX = 0x12
+- RTNLGRP_IPV6_RULE = 0x13
+- RTNLGRP_ND_USEROPT = 0x14
+- SizeofNlMsghdr = 0x10
+- SizeofNlMsgerr = 0x14
+- SizeofRtGenmsg = 0x1
+- SizeofNlAttr = 0x4
+- SizeofRtAttr = 0x4
+- SizeofIfInfomsg = 0x10
+- SizeofIfAddrmsg = 0x8
+- SizeofRtMsg = 0xc
+- SizeofRtNexthop = 0x8
++ SizeofSockFprog = 0x10
+ )
+
+-type NlMsghdr struct {
+- Len uint32
+- Type uint16
+- Flags uint16
+- Seq uint32
+- Pid uint32
+-}
+-
+-type NlMsgerr struct {
+- Error int32
+- Msg NlMsghdr
+-}
+-
+-type RtGenmsg struct {
+- Family uint8
+-}
+-
+-type NlAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type RtAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type IfInfomsg struct {
+- Family uint8
+- X__ifi_pad uint8
+- Type uint16
+- Index int32
+- Flags uint32
+- Change uint32
+-}
+-
+-type IfAddrmsg struct {
+- Family uint8
+- Prefixlen uint8
+- Flags uint8
+- Scope uint8
+- Index uint32
+-}
+-
+-type RtMsg struct {
+- Family uint8
+- Dst_len uint8
+- Src_len uint8
+- Tos uint8
+- Table uint8
+- Protocol uint8
+- Scope uint8
+- Type uint8
+- Flags uint32
+-}
+-
+-type RtNexthop struct {
+- Len uint16
+- Flags uint8
+- Hops uint8
+- Ifindex int32
+-}
+-
+-const (
+- SizeofSockFilter = 0x8
+- SizeofSockFprog = 0x10
+-)
+-
+-type SockFilter struct {
+- Code uint16
+- Jt uint8
+- Jf uint8
+- K uint32
+-}
+-
+-type SockFprog struct {
+- Len uint16
+- Pad_cgo_0 [6]byte
+- Filter *SockFilter
+-}
+-
+-type InotifyEvent struct {
+- Wd int32
+- Mask uint32
+- Cookie uint32
+- Len uint32
+-}
+-
+-const SizeofInotifyEvent = 0x10
+-
+ type PtraceRegs struct {
+ R15 uint64
+ R14 uint64
+@@ -628,30 +209,19 @@ type Sysinfo_t struct {
+ Freeswap uint64
+ Procs uint16
+ Pad uint16
+- Pad_cgo_0 [4]byte
+ Totalhigh uint64
+ Freehigh uint64
+ Unit uint32
+- X_f [0]int8
+- Pad_cgo_1 [4]byte
+-}
+-
+-type Utsname struct {
+- Sysname [65]int8
+- Nodename [65]int8
+- Release [65]int8
+- Version [65]int8
+- Machine [65]int8
+- Domainname [65]int8
++ _ [0]int8
++ _ [4]byte
+ }
+
+ type Ustat_t struct {
+- Tfree int32
+- Pad_cgo_0 [4]byte
+- Tinode uint64
+- Fname [6]int8
+- Fpack [6]int8
+- Pad_cgo_1 [4]byte
++ Tfree int32
++ Tinode uint64
++ Fname [6]int8
++ Fpack [6]int8
++ _ [4]byte
+ }
+
+ type EpollEvent struct {
+@@ -661,37 +231,14 @@ type EpollEvent struct {
+ }
+
+ const (
+- AT_FDCWD = -0x64
+- AT_REMOVEDIR = 0x200
+- AT_SYMLINK_FOLLOW = 0x400
+- AT_SYMLINK_NOFOLLOW = 0x100
+-)
+-
+-type PollFd struct {
+- Fd int32
+- Events int16
+- Revents int16
+-}
+-
+-const (
+- POLLIN = 0x1
+- POLLPRI = 0x2
+- POLLOUT = 0x4
+ POLLRDHUP = 0x2000
+- POLLERR = 0x8
+- POLLHUP = 0x10
+- POLLNVAL = 0x20
+ )
+
+ type Sigset_t struct {
+- X__val [16]uint64
++ Val [16]uint64
+ }
+
+-const RNDGETENTCNT = 0x80045200
+-
+-const PERF_IOC_FLAG_GROUP = 0x1
+-
+-const _SC_PAGESIZE = 0x1e
++const _C__NSIG = 0x41
+
+ type Termios struct {
+ Iflag uint32
+@@ -704,20 +251,11 @@ type Termios struct {
+ Ospeed uint32
+ }
+
+-type Winsize struct {
+- Row uint16
+- Col uint16
+- Xpixel uint16
+- Ypixel uint16
+-}
+-
+ type Taskstats struct {
+ Version uint16
+- Pad_cgo_0 [2]byte
+ Ac_exitcode uint32
+ Ac_flag uint8
+ Ac_nice uint8
+- Pad_cgo_1 [6]byte
+ Cpu_count uint64
+ Cpu_delay_total uint64
+ Blkio_count uint64
+@@ -729,13 +267,12 @@ type Taskstats struct {
+ Ac_comm [32]int8
+ Ac_sched uint8
+ Ac_pad [3]uint8
+- Pad_cgo_2 [4]byte
++ _ [4]byte
+ Ac_uid uint32
+ Ac_gid uint32
+ Ac_pid uint32
+ Ac_ppid uint32
+ Ac_btime uint32
+- Pad_cgo_3 [4]byte
+ Ac_etime uint64
+ Ac_utime uint64
+ Ac_stime uint64
+@@ -759,55 +296,319 @@ type Taskstats struct {
+ Cpu_scaled_run_real_total uint64
+ Freepages_count uint64
+ Freepages_delay_total uint64
++ Thrashing_count uint64
++ Thrashing_delay_total uint64
++ Ac_btime64 uint64
+ }
+
++type cpuMask uint64
++
+ const (
+- TASKSTATS_CMD_UNSPEC = 0x0
+- TASKSTATS_CMD_GET = 0x1
+- TASKSTATS_CMD_NEW = 0x2
+- TASKSTATS_TYPE_UNSPEC = 0x0
+- TASKSTATS_TYPE_PID = 0x1
+- TASKSTATS_TYPE_TGID = 0x2
+- TASKSTATS_TYPE_STATS = 0x3
+- TASKSTATS_TYPE_AGGR_PID = 0x4
+- TASKSTATS_TYPE_AGGR_TGID = 0x5
+- TASKSTATS_TYPE_NULL = 0x6
+- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
+- TASKSTATS_CMD_ATTR_PID = 0x1
+- TASKSTATS_CMD_ATTR_TGID = 0x2
+- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
+- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
++ _NCPUBITS = 0x40
+ )
+
+-type Genlmsghdr struct {
+- Cmd uint8
+- Version uint8
+- Reserved uint16
++const (
++ CBitFieldMaskBit0 = 0x1
++ CBitFieldMaskBit1 = 0x2
++ CBitFieldMaskBit2 = 0x4
++ CBitFieldMaskBit3 = 0x8
++ CBitFieldMaskBit4 = 0x10
++ CBitFieldMaskBit5 = 0x20
++ CBitFieldMaskBit6 = 0x40
++ CBitFieldMaskBit7 = 0x80
++ CBitFieldMaskBit8 = 0x100
++ CBitFieldMaskBit9 = 0x200
++ CBitFieldMaskBit10 = 0x400
++ CBitFieldMaskBit11 = 0x800
++ CBitFieldMaskBit12 = 0x1000
++ CBitFieldMaskBit13 = 0x2000
++ CBitFieldMaskBit14 = 0x4000
++ CBitFieldMaskBit15 = 0x8000
++ CBitFieldMaskBit16 = 0x10000
++ CBitFieldMaskBit17 = 0x20000
++ CBitFieldMaskBit18 = 0x40000
++ CBitFieldMaskBit19 = 0x80000
++ CBitFieldMaskBit20 = 0x100000
++ CBitFieldMaskBit21 = 0x200000
++ CBitFieldMaskBit22 = 0x400000
++ CBitFieldMaskBit23 = 0x800000
++ CBitFieldMaskBit24 = 0x1000000
++ CBitFieldMaskBit25 = 0x2000000
++ CBitFieldMaskBit26 = 0x4000000
++ CBitFieldMaskBit27 = 0x8000000
++ CBitFieldMaskBit28 = 0x10000000
++ CBitFieldMaskBit29 = 0x20000000
++ CBitFieldMaskBit30 = 0x40000000
++ CBitFieldMaskBit31 = 0x80000000
++ CBitFieldMaskBit32 = 0x100000000
++ CBitFieldMaskBit33 = 0x200000000
++ CBitFieldMaskBit34 = 0x400000000
++ CBitFieldMaskBit35 = 0x800000000
++ CBitFieldMaskBit36 = 0x1000000000
++ CBitFieldMaskBit37 = 0x2000000000
++ CBitFieldMaskBit38 = 0x4000000000
++ CBitFieldMaskBit39 = 0x8000000000
++ CBitFieldMaskBit40 = 0x10000000000
++ CBitFieldMaskBit41 = 0x20000000000
++ CBitFieldMaskBit42 = 0x40000000000
++ CBitFieldMaskBit43 = 0x80000000000
++ CBitFieldMaskBit44 = 0x100000000000
++ CBitFieldMaskBit45 = 0x200000000000
++ CBitFieldMaskBit46 = 0x400000000000
++ CBitFieldMaskBit47 = 0x800000000000
++ CBitFieldMaskBit48 = 0x1000000000000
++ CBitFieldMaskBit49 = 0x2000000000000
++ CBitFieldMaskBit50 = 0x4000000000000
++ CBitFieldMaskBit51 = 0x8000000000000
++ CBitFieldMaskBit52 = 0x10000000000000
++ CBitFieldMaskBit53 = 0x20000000000000
++ CBitFieldMaskBit54 = 0x40000000000000
++ CBitFieldMaskBit55 = 0x80000000000000
++ CBitFieldMaskBit56 = 0x100000000000000
++ CBitFieldMaskBit57 = 0x200000000000000
++ CBitFieldMaskBit58 = 0x400000000000000
++ CBitFieldMaskBit59 = 0x800000000000000
++ CBitFieldMaskBit60 = 0x1000000000000000
++ CBitFieldMaskBit61 = 0x2000000000000000
++ CBitFieldMaskBit62 = 0x4000000000000000
++ CBitFieldMaskBit63 = 0x8000000000000000
++)
++
++type SockaddrStorage struct {
++ Family uint16
++ _ [118]int8
++ _ uint64
++}
++
++type HDGeometry struct {
++ Heads uint8
++ Sectors uint8
++ Cylinders uint16
++ Start uint64
++}
++
++type Statfs_t struct {
++ Type int64
++ Bsize int64
++ Blocks uint64
++ Bfree uint64
++ Bavail uint64
++ Files uint64
++ Ffree uint64
++ Fsid Fsid
++ Namelen int64
++ Frsize int64
++ Flags int64
++ Spare [4]int64
++}
++
++type TpacketHdr struct {
++ Status uint64
++ Len uint32
++ Snaplen uint32
++ Mac uint16
++ Net uint16
++ Sec uint32
++ Usec uint32
++ _ [4]byte
+ }
+
+ const (
+- CTRL_CMD_UNSPEC = 0x0
+- CTRL_CMD_NEWFAMILY = 0x1
+- CTRL_CMD_DELFAMILY = 0x2
+- CTRL_CMD_GETFAMILY = 0x3
+- CTRL_CMD_NEWOPS = 0x4
+- CTRL_CMD_DELOPS = 0x5
+- CTRL_CMD_GETOPS = 0x6
+- CTRL_CMD_NEWMCAST_GRP = 0x7
+- CTRL_CMD_DELMCAST_GRP = 0x8
+- CTRL_CMD_GETMCAST_GRP = 0x9
+- CTRL_ATTR_UNSPEC = 0x0
+- CTRL_ATTR_FAMILY_ID = 0x1
+- CTRL_ATTR_FAMILY_NAME = 0x2
+- CTRL_ATTR_VERSION = 0x3
+- CTRL_ATTR_HDRSIZE = 0x4
+- CTRL_ATTR_MAXATTR = 0x5
+- CTRL_ATTR_OPS = 0x6
+- CTRL_ATTR_MCAST_GROUPS = 0x7
+- 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
++ SizeofTpacketHdr = 0x20
+ )
++
++type RTCPLLInfo struct {
++ Ctrl int32
++ Value int32
++ Max int32
++ Min int32
++ Posmult int32
++ Negmult int32
++ Clock int64
++}
++
++type BlkpgPartition struct {
++ Start int64
++ Length int64
++ Pno int32
++ Devname [64]uint8
++ Volname [64]uint8
++ _ [4]byte
++}
++
++const (
++ BLKPG = 0x1269
++)
++
++type XDPUmemReg struct {
++ Addr uint64
++ Len uint64
++ Size uint32
++ Headroom uint32
++ Flags uint32
++ _ [4]byte
++}
++
++type CryptoUserAlg struct {
++ Name [64]int8
++ Driver_name [64]int8
++ Module_name [64]int8
++ Type uint32
++ Mask uint32
++ Refcnt uint32
++ Flags uint32
++}
++
++type CryptoStatAEAD struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatAKCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Verify_cnt uint64
++ Sign_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCompress struct {
++ Type [64]int8
++ Compress_cnt uint64
++ Compress_tlen uint64
++ Decompress_cnt uint64
++ Decompress_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatHash struct {
++ Type [64]int8
++ Hash_cnt uint64
++ Hash_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatKPP struct {
++ Type [64]int8
++ Setsecret_cnt uint64
++ Generate_public_key_cnt uint64
++ Compute_shared_secret_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatRNG struct {
++ Type [64]int8
++ Generate_cnt uint64
++ Generate_tlen uint64
++ Seed_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatLarval struct {
++ Type [64]int8
++}
++
++type CryptoReportLarval struct {
++ Type [64]int8
++}
++
++type CryptoReportHash struct {
++ Type [64]int8
++ Blocksize uint32
++ Digestsize uint32
++}
++
++type CryptoReportCipher struct {
++ Type [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++}
++
++type CryptoReportBlkCipher struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++ Ivsize uint32
++}
++
++type CryptoReportAEAD struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Maxauthsize uint32
++ Ivsize uint32
++}
++
++type CryptoReportComp struct {
++ Type [64]int8
++}
++
++type CryptoReportRNG struct {
++ Type [64]int8
++ Seedsize uint32
++}
++
++type CryptoReportAKCipher struct {
++ Type [64]int8
++}
++
++type CryptoReportKPP struct {
++ Type [64]int8
++}
++
++type CryptoReportAcomp struct {
++ Type [64]int8
++}
++
++type LoopInfo struct {
++ Number int32
++ Device uint64
++ Inode uint64
++ Rdevice uint64
++ Offset int32
++ Encrypt_type int32
++ Encrypt_key_size int32
++ Flags int32
++ Name [64]int8
++ Encrypt_key [32]uint8
++ Init [2]uint64
++ Reserved [4]int8
++ _ [4]byte
++}
++
++type TIPCSubscr struct {
++ Seq TIPCServiceRange
++ Timeout uint32
++ Filter uint32
++ Handle [8]int8
++}
++
++type TIPCSIOCLNReq struct {
++ Peer uint32
++ Id uint32
++ Linkname [68]int8
++}
++
++type TIPCSIOCNodeIDReq struct {
++ Peer uint32
++ Id [16]int8
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go b/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
+index bff6ce25..8051b561 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
+@@ -6,19 +6,12 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x4
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x4
+- sizeofLongLong = 0x8
+- PathMax = 0x1000
++ SizeofPtr = 0x4
++ SizeofLong = 0x4
+ )
+
+ type (
+- _C_short int16
+- _C_int int32
+- _C_long int32
+- _C_long_long int64
++ _C_long int32
+ )
+
+ type Timespec struct {
+@@ -52,7 +45,7 @@ type Timex struct {
+ Errcnt int32
+ Stbcnt int32
+ Tai int32
+- Pad_cgo_0 [44]byte
++ _ [44]byte
+ }
+
+ type Time_t int32
+@@ -88,169 +81,51 @@ type Rusage struct {
+ Nivcsw int32
+ }
+
+-type Rlimit struct {
+- Cur uint64
+- Max uint64
+-}
+-
+-type _Gid_t uint32
+-
+ type Stat_t struct {
+- Dev uint64
+- X__pad1 uint16
+- Pad_cgo_0 [2]byte
+- X__st_ino uint32
+- Mode uint32
+- Nlink uint32
+- Uid uint32
+- Gid uint32
+- Rdev uint64
+- X__pad2 uint16
+- Pad_cgo_1 [6]byte
+- Size int64
+- Blksize int32
+- Pad_cgo_2 [4]byte
+- Blocks int64
+- Atim Timespec
+- Mtim Timespec
+- Ctim Timespec
+- Ino uint64
+-}
+-
+-type Statfs_t struct {
+- Type int32
+- Bsize int32
+- Blocks uint64
+- Bfree uint64
+- Bavail uint64
+- Files uint64
+- Ffree uint64
+- Fsid Fsid
+- Namelen int32
+- Frsize int32
+- Flags int32
+- Spare [4]int32
+- Pad_cgo_0 [4]byte
++ Dev uint64
++ _ uint16
++ _ uint32
++ Mode uint32
++ Nlink uint32
++ Uid uint32
++ Gid uint32
++ Rdev uint64
++ _ uint16
++ _ [4]byte
++ Size int64
++ Blksize int32
++ _ [4]byte
++ Blocks int64
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Ino uint64
+ }
+
+ type Dirent struct {
+- Ino uint64
+- Off int64
+- Reclen uint16
+- Type uint8
+- Name [256]uint8
+- Pad_cgo_0 [5]byte
+-}
+-
+-type Fsid struct {
+- X__val [2]int32
++ Ino uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Name [256]uint8
++ _ [5]byte
+ }
+
+ type Flock_t struct {
+- Type int16
+- Whence int16
+- Pad_cgo_0 [4]byte
+- Start int64
+- Len int64
+- Pid int32
+- Pad_cgo_1 [4]byte
+-}
+-
+-type FscryptPolicy struct {
+- Version uint8
+- Contents_encryption_mode uint8
+- Filenames_encryption_mode uint8
+- Flags uint8
+- Master_key_descriptor [8]uint8
+-}
+-
+-type FscryptKey struct {
+- Mode uint32
+- Raw [64]uint8
+- Size uint32
+-}
+-
+-type KeyctlDHParams struct {
+- Private int32
+- Prime int32
+- Base int32
++ Type int16
++ Whence int16
++ _ [4]byte
++ Start int64
++ Len int64
++ Pid int32
++ _ [4]byte
+ }
+
+ const (
+- FADV_NORMAL = 0x0
+- FADV_RANDOM = 0x1
+- FADV_SEQUENTIAL = 0x2
+- FADV_WILLNEED = 0x3
+- FADV_DONTNEED = 0x4
+- FADV_NOREUSE = 0x5
++ FADV_DONTNEED = 0x4
++ FADV_NOREUSE = 0x5
+ )
+
+-type RawSockaddrInet4 struct {
+- Family uint16
+- Port uint16
+- Addr [4]byte /* in_addr */
+- Zero [8]uint8
+-}
+-
+-type RawSockaddrInet6 struct {
+- Family uint16
+- Port uint16
+- Flowinfo uint32
+- Addr [16]byte /* in6_addr */
+- Scope_id uint32
+-}
+-
+-type RawSockaddrUnix struct {
+- Family uint16
+- Path [108]int8
+-}
+-
+-type RawSockaddrLinklayer struct {
+- Family uint16
+- Protocol uint16
+- Ifindex int32
+- Hatype uint16
+- Pkttype uint8
+- Halen uint8
+- Addr [8]uint8
+-}
+-
+-type RawSockaddrNetlink struct {
+- Family uint16
+- Pad uint16
+- Pid uint32
+- Groups uint32
+-}
+-
+-type RawSockaddrHCI struct {
+- Family uint16
+- Dev uint16
+- Channel uint16
+-}
+-
+-type RawSockaddrCAN struct {
+- Family uint16
+- Pad_cgo_0 [2]byte
+- Ifindex int32
+- Addr [8]byte
+-}
+-
+-type RawSockaddrALG struct {
+- Family uint16
+- Type [14]uint8
+- Feat uint32
+- Mask uint32
+- Name [64]uint8
+-}
+-
+-type RawSockaddrVM struct {
+- Family uint16
+- Reserved1 uint16
+- Port uint32
+- Cid uint32
+- Zero [4]uint8
+-}
+-
+ type RawSockaddr struct {
+ Family uint16
+ Data [14]uint8
+@@ -261,41 +136,11 @@ type RawSockaddrAny struct {
+ Pad [96]uint8
+ }
+
+-type _Socklen uint32
+-
+-type Linger struct {
+- Onoff int32
+- Linger int32
+-}
+-
+ type Iovec struct {
+ Base *byte
+ Len uint32
+ }
+
+-type IPMreq struct {
+- Multiaddr [4]byte /* in_addr */
+- Interface [4]byte /* in_addr */
+-}
+-
+-type IPMreqn struct {
+- Multiaddr [4]byte /* in_addr */
+- Address [4]byte /* in_addr */
+- Ifindex int32
+-}
+-
+-type IPv6Mreq struct {
+- Multiaddr [16]byte /* in6_addr */
+- Interface uint32
+-}
+-
+-type PacketMreq struct {
+- Ifindex int32
+- Type uint16
+- Alen uint16
+- Address [8]uint8
+-}
+-
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+@@ -312,277 +157,16 @@ type Cmsghdr struct {
+ Type int32
+ }
+
+-type Inet4Pktinfo struct {
+- Ifindex int32
+- Spec_dst [4]byte /* in_addr */
+- Addr [4]byte /* in_addr */
+-}
+-
+-type Inet6Pktinfo struct {
+- Addr [16]byte /* in6_addr */
+- Ifindex uint32
+-}
+-
+-type IPv6MTUInfo struct {
+- Addr RawSockaddrInet6
+- Mtu uint32
+-}
+-
+-type ICMPv6Filter struct {
+- Data [8]uint32
+-}
+-
+-type Ucred struct {
+- Pid int32
+- Uid uint32
+- Gid uint32
+-}
+-
+-type TCPInfo struct {
+- State uint8
+- Ca_state uint8
+- Retransmits uint8
+- Probes uint8
+- Backoff uint8
+- Options uint8
+- Pad_cgo_0 [2]byte
+- Rto uint32
+- Ato uint32
+- Snd_mss uint32
+- Rcv_mss uint32
+- Unacked uint32
+- Sacked uint32
+- Lost uint32
+- Retrans uint32
+- Fackets uint32
+- Last_data_sent uint32
+- Last_ack_sent uint32
+- Last_data_recv uint32
+- Last_ack_recv uint32
+- Pmtu uint32
+- Rcv_ssthresh uint32
+- Rtt uint32
+- Rttvar uint32
+- Snd_ssthresh uint32
+- Snd_cwnd uint32
+- Advmss uint32
+- Reordering uint32
+- Rcv_rtt uint32
+- Rcv_space uint32
+- Total_retrans uint32
+-}
+-
+ const (
+- SizeofSockaddrInet4 = 0x10
+- SizeofSockaddrInet6 = 0x1c
+- SizeofSockaddrAny = 0x70
+- SizeofSockaddrUnix = 0x6e
+- SizeofSockaddrLinklayer = 0x14
+- SizeofSockaddrNetlink = 0xc
+- SizeofSockaddrHCI = 0x6
+- SizeofSockaddrCAN = 0x10
+- SizeofSockaddrALG = 0x58
+- SizeofSockaddrVM = 0x10
+- SizeofLinger = 0x8
+- SizeofIovec = 0x8
+- SizeofIPMreq = 0x8
+- SizeofIPMreqn = 0xc
+- SizeofIPv6Mreq = 0x14
+- SizeofPacketMreq = 0x10
+- SizeofMsghdr = 0x1c
+- SizeofCmsghdr = 0xc
+- SizeofInet4Pktinfo = 0xc
+- SizeofInet6Pktinfo = 0x14
+- SizeofIPv6MTUInfo = 0x20
+- SizeofICMPv6Filter = 0x20
+- SizeofUcred = 0xc
+- SizeofTCPInfo = 0x68
++ SizeofIovec = 0x8
++ SizeofMsghdr = 0x1c
++ SizeofCmsghdr = 0xc
+ )
+
+ const (
+- IFA_UNSPEC = 0x0
+- IFA_ADDRESS = 0x1
+- IFA_LOCAL = 0x2
+- IFA_LABEL = 0x3
+- IFA_BROADCAST = 0x4
+- IFA_ANYCAST = 0x5
+- IFA_CACHEINFO = 0x6
+- IFA_MULTICAST = 0x7
+- IFLA_UNSPEC = 0x0
+- IFLA_ADDRESS = 0x1
+- IFLA_BROADCAST = 0x2
+- IFLA_IFNAME = 0x3
+- IFLA_MTU = 0x4
+- IFLA_LINK = 0x5
+- IFLA_QDISC = 0x6
+- IFLA_STATS = 0x7
+- IFLA_COST = 0x8
+- IFLA_PRIORITY = 0x9
+- IFLA_MASTER = 0xa
+- IFLA_WIRELESS = 0xb
+- IFLA_PROTINFO = 0xc
+- IFLA_TXQLEN = 0xd
+- IFLA_MAP = 0xe
+- IFLA_WEIGHT = 0xf
+- IFLA_OPERSTATE = 0x10
+- IFLA_LINKMODE = 0x11
+- IFLA_LINKINFO = 0x12
+- IFLA_NET_NS_PID = 0x13
+- IFLA_IFALIAS = 0x14
+- IFLA_MAX = 0x2b
+- RT_SCOPE_UNIVERSE = 0x0
+- RT_SCOPE_SITE = 0xc8
+- RT_SCOPE_LINK = 0xfd
+- RT_SCOPE_HOST = 0xfe
+- RT_SCOPE_NOWHERE = 0xff
+- RT_TABLE_UNSPEC = 0x0
+- RT_TABLE_COMPAT = 0xfc
+- RT_TABLE_DEFAULT = 0xfd
+- RT_TABLE_MAIN = 0xfe
+- RT_TABLE_LOCAL = 0xff
+- RT_TABLE_MAX = 0xffffffff
+- RTA_UNSPEC = 0x0
+- RTA_DST = 0x1
+- RTA_SRC = 0x2
+- RTA_IIF = 0x3
+- RTA_OIF = 0x4
+- RTA_GATEWAY = 0x5
+- RTA_PRIORITY = 0x6
+- RTA_PREFSRC = 0x7
+- RTA_METRICS = 0x8
+- RTA_MULTIPATH = 0x9
+- RTA_FLOW = 0xb
+- RTA_CACHEINFO = 0xc
+- RTA_TABLE = 0xf
+- RTN_UNSPEC = 0x0
+- RTN_UNICAST = 0x1
+- RTN_LOCAL = 0x2
+- RTN_BROADCAST = 0x3
+- RTN_ANYCAST = 0x4
+- RTN_MULTICAST = 0x5
+- RTN_BLACKHOLE = 0x6
+- RTN_UNREACHABLE = 0x7
+- RTN_PROHIBIT = 0x8
+- RTN_THROW = 0x9
+- RTN_NAT = 0xa
+- RTN_XRESOLVE = 0xb
+- RTNLGRP_NONE = 0x0
+- RTNLGRP_LINK = 0x1
+- RTNLGRP_NOTIFY = 0x2
+- RTNLGRP_NEIGH = 0x3
+- RTNLGRP_TC = 0x4
+- RTNLGRP_IPV4_IFADDR = 0x5
+- RTNLGRP_IPV4_MROUTE = 0x6
+- RTNLGRP_IPV4_ROUTE = 0x7
+- RTNLGRP_IPV4_RULE = 0x8
+- RTNLGRP_IPV6_IFADDR = 0x9
+- RTNLGRP_IPV6_MROUTE = 0xa
+- RTNLGRP_IPV6_ROUTE = 0xb
+- RTNLGRP_IPV6_IFINFO = 0xc
+- RTNLGRP_IPV6_PREFIX = 0x12
+- RTNLGRP_IPV6_RULE = 0x13
+- RTNLGRP_ND_USEROPT = 0x14
+- SizeofNlMsghdr = 0x10
+- SizeofNlMsgerr = 0x14
+- SizeofRtGenmsg = 0x1
+- SizeofNlAttr = 0x4
+- SizeofRtAttr = 0x4
+- SizeofIfInfomsg = 0x10
+- SizeofIfAddrmsg = 0x8
+- SizeofRtMsg = 0xc
+- SizeofRtNexthop = 0x8
++ SizeofSockFprog = 0x8
+ )
+
+-type NlMsghdr struct {
+- Len uint32
+- Type uint16
+- Flags uint16
+- Seq uint32
+- Pid uint32
+-}
+-
+-type NlMsgerr struct {
+- Error int32
+- Msg NlMsghdr
+-}
+-
+-type RtGenmsg struct {
+- Family uint8
+-}
+-
+-type NlAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type RtAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type IfInfomsg struct {
+- Family uint8
+- X__ifi_pad uint8
+- Type uint16
+- Index int32
+- Flags uint32
+- Change uint32
+-}
+-
+-type IfAddrmsg struct {
+- Family uint8
+- Prefixlen uint8
+- Flags uint8
+- Scope uint8
+- Index uint32
+-}
+-
+-type RtMsg struct {
+- Family uint8
+- Dst_len uint8
+- Src_len uint8
+- Tos uint8
+- Table uint8
+- Protocol uint8
+- Scope uint8
+- Type uint8
+- Flags uint32
+-}
+-
+-type RtNexthop struct {
+- Len uint16
+- Flags uint8
+- Hops uint8
+- Ifindex int32
+-}
+-
+-const (
+- SizeofSockFilter = 0x8
+- SizeofSockFprog = 0x8
+-)
+-
+-type SockFilter struct {
+- Code uint16
+- Jt uint8
+- Jf uint8
+- K uint32
+-}
+-
+-type SockFprog struct {
+- Len uint16
+- Pad_cgo_0 [2]byte
+- Filter *SockFilter
+-}
+-
+-type InotifyEvent struct {
+- Wd int32
+- Mask uint32
+- Cookie uint32
+- Len uint32
+-}
+-
+-const SizeofInotifyEvent = 0x10
+-
+ type PtraceRegs struct {
+ Uregs [18]uint32
+ }
+@@ -605,16 +189,7 @@ type Sysinfo_t struct {
+ Totalhigh uint32
+ Freehigh uint32
+ Unit uint32
+- X_f [8]uint8
+-}
+-
+-type Utsname struct {
+- Sysname [65]uint8
+- Nodename [65]uint8
+- Release [65]uint8
+- Version [65]uint8
+- Machine [65]uint8
+- Domainname [65]uint8
++ _ [8]uint8
+ }
+
+ type Ustat_t struct {
+@@ -632,37 +207,14 @@ type EpollEvent struct {
+ }
+
+ const (
+- AT_FDCWD = -0x64
+- AT_REMOVEDIR = 0x200
+- AT_SYMLINK_FOLLOW = 0x400
+- AT_SYMLINK_NOFOLLOW = 0x100
+-)
+-
+-type PollFd struct {
+- Fd int32
+- Events int16
+- Revents int16
+-}
+-
+-const (
+- POLLIN = 0x1
+- POLLPRI = 0x2
+- POLLOUT = 0x4
+ POLLRDHUP = 0x2000
+- POLLERR = 0x8
+- POLLHUP = 0x10
+- POLLNVAL = 0x20
+ )
+
+ type Sigset_t struct {
+- X__val [32]uint32
++ Val [32]uint32
+ }
+
+-const RNDGETENTCNT = 0x80045200
+-
+-const PERF_IOC_FLAG_GROUP = 0x1
+-
+-const _SC_PAGESIZE = 0x1e
++const _C__NSIG = 0x41
+
+ type Termios struct {
+ Iflag uint32
+@@ -675,20 +227,12 @@ type Termios struct {
+ Ospeed uint32
+ }
+
+-type Winsize struct {
+- Row uint16
+- Col uint16
+- Xpixel uint16
+- Ypixel uint16
+-}
+-
+ type Taskstats struct {
+ Version uint16
+- Pad_cgo_0 [2]byte
+ Ac_exitcode uint32
+ Ac_flag uint8
+ Ac_nice uint8
+- Pad_cgo_1 [6]byte
++ _ [4]byte
+ Cpu_count uint64
+ Cpu_delay_total uint64
+ Blkio_count uint64
+@@ -700,13 +244,13 @@ type Taskstats struct {
+ Ac_comm [32]uint8
+ Ac_sched uint8
+ Ac_pad [3]uint8
+- Pad_cgo_2 [4]byte
++ _ [4]byte
+ Ac_uid uint32
+ Ac_gid uint32
+ Ac_pid uint32
+ Ac_ppid uint32
+ Ac_btime uint32
+- Pad_cgo_3 [4]byte
++ _ [4]byte
+ Ac_etime uint64
+ Ac_utime uint64
+ Ac_stime uint64
+@@ -730,55 +274,318 @@ type Taskstats struct {
+ Cpu_scaled_run_real_total uint64
+ Freepages_count uint64
+ Freepages_delay_total uint64
++ Thrashing_count uint64
++ Thrashing_delay_total uint64
++ Ac_btime64 uint64
+ }
+
++type cpuMask uint32
++
++const (
++ _NCPUBITS = 0x20
++)
++
+ const (
+- TASKSTATS_CMD_UNSPEC = 0x0
+- TASKSTATS_CMD_GET = 0x1
+- TASKSTATS_CMD_NEW = 0x2
+- TASKSTATS_TYPE_UNSPEC = 0x0
+- TASKSTATS_TYPE_PID = 0x1
+- TASKSTATS_TYPE_TGID = 0x2
+- TASKSTATS_TYPE_STATS = 0x3
+- TASKSTATS_TYPE_AGGR_PID = 0x4
+- TASKSTATS_TYPE_AGGR_TGID = 0x5
+- TASKSTATS_TYPE_NULL = 0x6
+- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
+- TASKSTATS_CMD_ATTR_PID = 0x1
+- TASKSTATS_CMD_ATTR_TGID = 0x2
+- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
+- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
++ CBitFieldMaskBit0 = 0x1
++ CBitFieldMaskBit1 = 0x2
++ CBitFieldMaskBit2 = 0x4
++ CBitFieldMaskBit3 = 0x8
++ CBitFieldMaskBit4 = 0x10
++ CBitFieldMaskBit5 = 0x20
++ CBitFieldMaskBit6 = 0x40
++ CBitFieldMaskBit7 = 0x80
++ CBitFieldMaskBit8 = 0x100
++ CBitFieldMaskBit9 = 0x200
++ CBitFieldMaskBit10 = 0x400
++ CBitFieldMaskBit11 = 0x800
++ CBitFieldMaskBit12 = 0x1000
++ CBitFieldMaskBit13 = 0x2000
++ CBitFieldMaskBit14 = 0x4000
++ CBitFieldMaskBit15 = 0x8000
++ CBitFieldMaskBit16 = 0x10000
++ CBitFieldMaskBit17 = 0x20000
++ CBitFieldMaskBit18 = 0x40000
++ CBitFieldMaskBit19 = 0x80000
++ CBitFieldMaskBit20 = 0x100000
++ CBitFieldMaskBit21 = 0x200000
++ CBitFieldMaskBit22 = 0x400000
++ CBitFieldMaskBit23 = 0x800000
++ CBitFieldMaskBit24 = 0x1000000
++ CBitFieldMaskBit25 = 0x2000000
++ CBitFieldMaskBit26 = 0x4000000
++ CBitFieldMaskBit27 = 0x8000000
++ CBitFieldMaskBit28 = 0x10000000
++ CBitFieldMaskBit29 = 0x20000000
++ CBitFieldMaskBit30 = 0x40000000
++ CBitFieldMaskBit31 = 0x80000000
++ CBitFieldMaskBit32 = 0x100000000
++ CBitFieldMaskBit33 = 0x200000000
++ CBitFieldMaskBit34 = 0x400000000
++ CBitFieldMaskBit35 = 0x800000000
++ CBitFieldMaskBit36 = 0x1000000000
++ CBitFieldMaskBit37 = 0x2000000000
++ CBitFieldMaskBit38 = 0x4000000000
++ CBitFieldMaskBit39 = 0x8000000000
++ CBitFieldMaskBit40 = 0x10000000000
++ CBitFieldMaskBit41 = 0x20000000000
++ CBitFieldMaskBit42 = 0x40000000000
++ CBitFieldMaskBit43 = 0x80000000000
++ CBitFieldMaskBit44 = 0x100000000000
++ CBitFieldMaskBit45 = 0x200000000000
++ CBitFieldMaskBit46 = 0x400000000000
++ CBitFieldMaskBit47 = 0x800000000000
++ CBitFieldMaskBit48 = 0x1000000000000
++ CBitFieldMaskBit49 = 0x2000000000000
++ CBitFieldMaskBit50 = 0x4000000000000
++ CBitFieldMaskBit51 = 0x8000000000000
++ CBitFieldMaskBit52 = 0x10000000000000
++ CBitFieldMaskBit53 = 0x20000000000000
++ CBitFieldMaskBit54 = 0x40000000000000
++ CBitFieldMaskBit55 = 0x80000000000000
++ CBitFieldMaskBit56 = 0x100000000000000
++ CBitFieldMaskBit57 = 0x200000000000000
++ CBitFieldMaskBit58 = 0x400000000000000
++ CBitFieldMaskBit59 = 0x800000000000000
++ CBitFieldMaskBit60 = 0x1000000000000000
++ CBitFieldMaskBit61 = 0x2000000000000000
++ CBitFieldMaskBit62 = 0x4000000000000000
++ CBitFieldMaskBit63 = 0x8000000000000000
+ )
+
+-type Genlmsghdr struct {
+- Cmd uint8
+- Version uint8
+- Reserved uint16
++type SockaddrStorage struct {
++ Family uint16
++ _ [122]uint8
++ _ uint32
++}
++
++type HDGeometry struct {
++ Heads uint8
++ Sectors uint8
++ Cylinders uint16
++ Start uint32
++}
++
++type Statfs_t struct {
++ Type int32
++ Bsize int32
++ Blocks uint64
++ Bfree uint64
++ Bavail uint64
++ Files uint64
++ Ffree uint64
++ Fsid Fsid
++ Namelen int32
++ Frsize int32
++ Flags int32
++ Spare [4]int32
++ _ [4]byte
++}
++
++type TpacketHdr struct {
++ Status uint32
++ Len uint32
++ Snaplen uint32
++ Mac uint16
++ Net uint16
++ Sec uint32
++ Usec uint32
++}
++
++const (
++ SizeofTpacketHdr = 0x18
++)
++
++type RTCPLLInfo struct {
++ Ctrl int32
++ Value int32
++ Max int32
++ Min int32
++ Posmult int32
++ Negmult int32
++ Clock int32
++}
++
++type BlkpgPartition struct {
++ Start int64
++ Length int64
++ Pno int32
++ Devname [64]uint8
++ Volname [64]uint8
++ _ [4]byte
+ }
+
+ const (
+- CTRL_CMD_UNSPEC = 0x0
+- CTRL_CMD_NEWFAMILY = 0x1
+- CTRL_CMD_DELFAMILY = 0x2
+- CTRL_CMD_GETFAMILY = 0x3
+- CTRL_CMD_NEWOPS = 0x4
+- CTRL_CMD_DELOPS = 0x5
+- CTRL_CMD_GETOPS = 0x6
+- CTRL_CMD_NEWMCAST_GRP = 0x7
+- CTRL_CMD_DELMCAST_GRP = 0x8
+- CTRL_CMD_GETMCAST_GRP = 0x9
+- CTRL_ATTR_UNSPEC = 0x0
+- CTRL_ATTR_FAMILY_ID = 0x1
+- CTRL_ATTR_FAMILY_NAME = 0x2
+- CTRL_ATTR_VERSION = 0x3
+- CTRL_ATTR_HDRSIZE = 0x4
+- CTRL_ATTR_MAXATTR = 0x5
+- CTRL_ATTR_OPS = 0x6
+- CTRL_ATTR_MCAST_GROUPS = 0x7
+- 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
++ BLKPG = 0x1269
+ )
++
++type XDPUmemReg struct {
++ Addr uint64
++ Len uint64
++ Size uint32
++ Headroom uint32
++ Flags uint32
++ _ [4]byte
++}
++
++type CryptoUserAlg struct {
++ Name [64]uint8
++ Driver_name [64]uint8
++ Module_name [64]uint8
++ Type uint32
++ Mask uint32
++ Refcnt uint32
++ Flags uint32
++}
++
++type CryptoStatAEAD struct {
++ Type [64]uint8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatAKCipher struct {
++ Type [64]uint8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Verify_cnt uint64
++ Sign_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCipher struct {
++ Type [64]uint8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCompress struct {
++ Type [64]uint8
++ Compress_cnt uint64
++ Compress_tlen uint64
++ Decompress_cnt uint64
++ Decompress_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatHash struct {
++ Type [64]uint8
++ Hash_cnt uint64
++ Hash_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatKPP struct {
++ Type [64]uint8
++ Setsecret_cnt uint64
++ Generate_public_key_cnt uint64
++ Compute_shared_secret_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatRNG struct {
++ Type [64]uint8
++ Generate_cnt uint64
++ Generate_tlen uint64
++ Seed_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatLarval struct {
++ Type [64]uint8
++}
++
++type CryptoReportLarval struct {
++ Type [64]uint8
++}
++
++type CryptoReportHash struct {
++ Type [64]uint8
++ Blocksize uint32
++ Digestsize uint32
++}
++
++type CryptoReportCipher struct {
++ Type [64]uint8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++}
++
++type CryptoReportBlkCipher struct {
++ Type [64]uint8
++ Geniv [64]uint8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++ Ivsize uint32
++}
++
++type CryptoReportAEAD struct {
++ Type [64]uint8
++ Geniv [64]uint8
++ Blocksize uint32
++ Maxauthsize uint32
++ Ivsize uint32
++}
++
++type CryptoReportComp struct {
++ Type [64]uint8
++}
++
++type CryptoReportRNG struct {
++ Type [64]uint8
++ Seedsize uint32
++}
++
++type CryptoReportAKCipher struct {
++ Type [64]uint8
++}
++
++type CryptoReportKPP struct {
++ Type [64]uint8
++}
++
++type CryptoReportAcomp struct {
++ Type [64]uint8
++}
++
++type LoopInfo struct {
++ Number int32
++ Device uint16
++ Inode uint32
++ Rdevice uint16
++ Offset int32
++ Encrypt_type int32
++ Encrypt_key_size int32
++ Flags int32
++ Name [64]uint8
++ Encrypt_key [32]uint8
++ Init [2]uint32
++ Reserved [4]uint8
++}
++
++type TIPCSubscr struct {
++ Seq TIPCServiceRange
++ Timeout uint32
++ Filter uint32
++ Handle [8]uint8
++}
++
++type TIPCSIOCLNReq struct {
++ Peer uint32
++ Id uint32
++ Linkname [68]uint8
++}
++
++type TIPCSIOCNodeIDReq struct {
++ Peer uint32
++ Id [16]uint8
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
+index a3d0cc4a..a936f216 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
+@@ -6,19 +6,12 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
+- PathMax = 0x1000
++ SizeofPtr = 0x8
++ SizeofLong = 0x8
+ )
+
+ type (
+- _C_short int16
+- _C_int int32
+- _C_long int64
+- _C_long_long int64
++ _C_long int64
+ )
+
+ type Timespec struct {
+@@ -33,13 +26,11 @@ type Timeval struct {
+
+ type Timex struct {
+ Modes uint32
+- Pad_cgo_0 [4]byte
+ Offset int64
+ Freq int64
+ Maxerror int64
+ Esterror int64
+ Status int32
+- Pad_cgo_1 [4]byte
+ Constant int64
+ Precision int64
+ Tolerance int64
+@@ -48,14 +39,13 @@ type Timex struct {
+ Ppsfreq int64
+ Jitter int64
+ Shift int32
+- Pad_cgo_2 [4]byte
+ Stabil int64
+ Jitcnt int64
+ Calcnt int64
+ Errcnt int64
+ Stbcnt int64
+ Tai int32
+- Pad_cgo_3 [44]byte
++ _ [44]byte
+ }
+
+ type Time_t int64
+@@ -91,13 +81,6 @@ type Rusage struct {
+ Nivcsw int64
+ }
+
+-type Rlimit struct {
+- Cur uint64
+- Max uint64
+-}
+-
+-type _Gid_t uint32
+-
+ type Stat_t struct {
+ Dev uint64
+ Ino uint64
+@@ -106,10 +89,10 @@ type Stat_t struct {
+ Uid uint32
+ Gid uint32
+ Rdev uint64
+- X__pad1 uint64
++ _ uint64
+ Size int64
+ Blksize int32
+- X__pad2 int32
++ _ int32
+ Blocks int64
+ Atim Timespec
+ Mtim Timespec
+@@ -117,139 +100,29 @@ type Stat_t struct {
+ _ [2]int32
+ }
+
+-type Statfs_t struct {
+- Type int64
+- Bsize int64
+- Blocks uint64
+- Bfree uint64
+- Bavail uint64
+- Files uint64
+- Ffree uint64
+- Fsid Fsid
+- Namelen int64
+- Frsize int64
+- Flags int64
+- Spare [4]int64
+-}
+-
+ type Dirent struct {
+- Ino uint64
+- Off int64
+- Reclen uint16
+- Type uint8
+- Name [256]int8
+- Pad_cgo_0 [5]byte
+-}
+-
+-type Fsid struct {
+- X__val [2]int32
++ Ino uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Name [256]int8
++ _ [5]byte
+ }
+
+ type Flock_t struct {
+- Type int16
+- Whence int16
+- Pad_cgo_0 [4]byte
+- Start int64
+- Len int64
+- Pid int32
+- Pad_cgo_1 [4]byte
+-}
+-
+-type FscryptPolicy struct {
+- Version uint8
+- Contents_encryption_mode uint8
+- Filenames_encryption_mode uint8
+- Flags uint8
+- Master_key_descriptor [8]uint8
+-}
+-
+-type FscryptKey struct {
+- Mode uint32
+- Raw [64]uint8
+- Size uint32
+-}
+-
+-type KeyctlDHParams struct {
+- Private int32
+- Prime int32
+- Base int32
++ Type int16
++ Whence int16
++ Start int64
++ Len int64
++ Pid int32
++ _ [4]byte
+ }
+
+ const (
+- FADV_NORMAL = 0x0
+- FADV_RANDOM = 0x1
+- FADV_SEQUENTIAL = 0x2
+- FADV_WILLNEED = 0x3
+- FADV_DONTNEED = 0x4
+- FADV_NOREUSE = 0x5
++ FADV_DONTNEED = 0x4
++ FADV_NOREUSE = 0x5
+ )
+
+-type RawSockaddrInet4 struct {
+- Family uint16
+- Port uint16
+- Addr [4]byte /* in_addr */
+- Zero [8]uint8
+-}
+-
+-type RawSockaddrInet6 struct {
+- Family uint16
+- Port uint16
+- Flowinfo uint32
+- Addr [16]byte /* in6_addr */
+- Scope_id uint32
+-}
+-
+-type RawSockaddrUnix struct {
+- Family uint16
+- Path [108]int8
+-}
+-
+-type RawSockaddrLinklayer struct {
+- Family uint16
+- Protocol uint16
+- Ifindex int32
+- Hatype uint16
+- Pkttype uint8
+- Halen uint8
+- Addr [8]uint8
+-}
+-
+-type RawSockaddrNetlink struct {
+- Family uint16
+- Pad uint16
+- Pid uint32
+- Groups uint32
+-}
+-
+-type RawSockaddrHCI struct {
+- Family uint16
+- Dev uint16
+- Channel uint16
+-}
+-
+-type RawSockaddrCAN struct {
+- Family uint16
+- Pad_cgo_0 [2]byte
+- Ifindex int32
+- Addr [8]byte
+-}
+-
+-type RawSockaddrALG struct {
+- Family uint16
+- Type [14]uint8
+- Feat uint32
+- Mask uint32
+- Name [64]uint8
+-}
+-
+-type RawSockaddrVM struct {
+- Family uint16
+- Reserved1 uint16
+- Port uint32
+- Cid uint32
+- Zero [4]uint8
+-}
+-
+ type RawSockaddr struct {
+ Family uint16
+ Data [14]int8
+@@ -260,51 +133,20 @@ type RawSockaddrAny struct {
+ Pad [96]int8
+ }
+
+-type _Socklen uint32
+-
+-type Linger struct {
+- Onoff int32
+- Linger int32
+-}
+-
+ type Iovec struct {
+ Base *byte
+ Len uint64
+ }
+
+-type IPMreq struct {
+- Multiaddr [4]byte /* in_addr */
+- Interface [4]byte /* in_addr */
+-}
+-
+-type IPMreqn struct {
+- Multiaddr [4]byte /* in_addr */
+- Address [4]byte /* in_addr */
+- Ifindex int32
+-}
+-
+-type IPv6Mreq struct {
+- Multiaddr [16]byte /* in6_addr */
+- Interface uint32
+-}
+-
+-type PacketMreq struct {
+- Ifindex int32
+- Type uint16
+- Alen uint16
+- Address [8]uint8
+-}
+-
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+- Pad_cgo_0 [4]byte
+ Iov *Iovec
+ Iovlen uint64
+ Control *byte
+ Controllen uint64
+ Flags int32
+- Pad_cgo_1 [4]byte
++ _ [4]byte
+ }
+
+ type Cmsghdr struct {
+@@ -313,277 +155,16 @@ type Cmsghdr struct {
+ Type int32
+ }
+
+-type Inet4Pktinfo struct {
+- Ifindex int32
+- Spec_dst [4]byte /* in_addr */
+- Addr [4]byte /* in_addr */
+-}
+-
+-type Inet6Pktinfo struct {
+- Addr [16]byte /* in6_addr */
+- Ifindex uint32
+-}
+-
+-type IPv6MTUInfo struct {
+- Addr RawSockaddrInet6
+- Mtu uint32
+-}
+-
+-type ICMPv6Filter struct {
+- Data [8]uint32
+-}
+-
+-type Ucred struct {
+- Pid int32
+- Uid uint32
+- Gid uint32
+-}
+-
+-type TCPInfo struct {
+- State uint8
+- Ca_state uint8
+- Retransmits uint8
+- Probes uint8
+- Backoff uint8
+- Options uint8
+- Pad_cgo_0 [2]byte
+- Rto uint32
+- Ato uint32
+- Snd_mss uint32
+- Rcv_mss uint32
+- Unacked uint32
+- Sacked uint32
+- Lost uint32
+- Retrans uint32
+- Fackets uint32
+- Last_data_sent uint32
+- Last_ack_sent uint32
+- Last_data_recv uint32
+- Last_ack_recv uint32
+- Pmtu uint32
+- Rcv_ssthresh uint32
+- Rtt uint32
+- Rttvar uint32
+- Snd_ssthresh uint32
+- Snd_cwnd uint32
+- Advmss uint32
+- Reordering uint32
+- Rcv_rtt uint32
+- Rcv_space uint32
+- Total_retrans uint32
+-}
+-
+ const (
+- SizeofSockaddrInet4 = 0x10
+- SizeofSockaddrInet6 = 0x1c
+- SizeofSockaddrAny = 0x70
+- SizeofSockaddrUnix = 0x6e
+- SizeofSockaddrLinklayer = 0x14
+- SizeofSockaddrNetlink = 0xc
+- SizeofSockaddrHCI = 0x6
+- SizeofSockaddrCAN = 0x10
+- SizeofSockaddrALG = 0x58
+- SizeofSockaddrVM = 0x10
+- SizeofLinger = 0x8
+- SizeofIovec = 0x10
+- SizeofIPMreq = 0x8
+- SizeofIPMreqn = 0xc
+- SizeofIPv6Mreq = 0x14
+- SizeofPacketMreq = 0x10
+- SizeofMsghdr = 0x38
+- SizeofCmsghdr = 0x10
+- SizeofInet4Pktinfo = 0xc
+- SizeofInet6Pktinfo = 0x14
+- SizeofIPv6MTUInfo = 0x20
+- SizeofICMPv6Filter = 0x20
+- SizeofUcred = 0xc
+- SizeofTCPInfo = 0x68
++ SizeofIovec = 0x10
++ SizeofMsghdr = 0x38
++ SizeofCmsghdr = 0x10
+ )
+
+ const (
+- IFA_UNSPEC = 0x0
+- IFA_ADDRESS = 0x1
+- IFA_LOCAL = 0x2
+- IFA_LABEL = 0x3
+- IFA_BROADCAST = 0x4
+- IFA_ANYCAST = 0x5
+- IFA_CACHEINFO = 0x6
+- IFA_MULTICAST = 0x7
+- IFLA_UNSPEC = 0x0
+- IFLA_ADDRESS = 0x1
+- IFLA_BROADCAST = 0x2
+- IFLA_IFNAME = 0x3
+- IFLA_MTU = 0x4
+- IFLA_LINK = 0x5
+- IFLA_QDISC = 0x6
+- IFLA_STATS = 0x7
+- IFLA_COST = 0x8
+- IFLA_PRIORITY = 0x9
+- IFLA_MASTER = 0xa
+- IFLA_WIRELESS = 0xb
+- IFLA_PROTINFO = 0xc
+- IFLA_TXQLEN = 0xd
+- IFLA_MAP = 0xe
+- IFLA_WEIGHT = 0xf
+- IFLA_OPERSTATE = 0x10
+- IFLA_LINKMODE = 0x11
+- IFLA_LINKINFO = 0x12
+- IFLA_NET_NS_PID = 0x13
+- IFLA_IFALIAS = 0x14
+- IFLA_MAX = 0x2b
+- RT_SCOPE_UNIVERSE = 0x0
+- RT_SCOPE_SITE = 0xc8
+- RT_SCOPE_LINK = 0xfd
+- RT_SCOPE_HOST = 0xfe
+- RT_SCOPE_NOWHERE = 0xff
+- RT_TABLE_UNSPEC = 0x0
+- RT_TABLE_COMPAT = 0xfc
+- RT_TABLE_DEFAULT = 0xfd
+- RT_TABLE_MAIN = 0xfe
+- RT_TABLE_LOCAL = 0xff
+- RT_TABLE_MAX = 0xffffffff
+- RTA_UNSPEC = 0x0
+- RTA_DST = 0x1
+- RTA_SRC = 0x2
+- RTA_IIF = 0x3
+- RTA_OIF = 0x4
+- RTA_GATEWAY = 0x5
+- RTA_PRIORITY = 0x6
+- RTA_PREFSRC = 0x7
+- RTA_METRICS = 0x8
+- RTA_MULTIPATH = 0x9
+- RTA_FLOW = 0xb
+- RTA_CACHEINFO = 0xc
+- RTA_TABLE = 0xf
+- RTN_UNSPEC = 0x0
+- RTN_UNICAST = 0x1
+- RTN_LOCAL = 0x2
+- RTN_BROADCAST = 0x3
+- RTN_ANYCAST = 0x4
+- RTN_MULTICAST = 0x5
+- RTN_BLACKHOLE = 0x6
+- RTN_UNREACHABLE = 0x7
+- RTN_PROHIBIT = 0x8
+- RTN_THROW = 0x9
+- RTN_NAT = 0xa
+- RTN_XRESOLVE = 0xb
+- RTNLGRP_NONE = 0x0
+- RTNLGRP_LINK = 0x1
+- RTNLGRP_NOTIFY = 0x2
+- RTNLGRP_NEIGH = 0x3
+- RTNLGRP_TC = 0x4
+- RTNLGRP_IPV4_IFADDR = 0x5
+- RTNLGRP_IPV4_MROUTE = 0x6
+- RTNLGRP_IPV4_ROUTE = 0x7
+- RTNLGRP_IPV4_RULE = 0x8
+- RTNLGRP_IPV6_IFADDR = 0x9
+- RTNLGRP_IPV6_MROUTE = 0xa
+- RTNLGRP_IPV6_ROUTE = 0xb
+- RTNLGRP_IPV6_IFINFO = 0xc
+- RTNLGRP_IPV6_PREFIX = 0x12
+- RTNLGRP_IPV6_RULE = 0x13
+- RTNLGRP_ND_USEROPT = 0x14
+- SizeofNlMsghdr = 0x10
+- SizeofNlMsgerr = 0x14
+- SizeofRtGenmsg = 0x1
+- SizeofNlAttr = 0x4
+- SizeofRtAttr = 0x4
+- SizeofIfInfomsg = 0x10
+- SizeofIfAddrmsg = 0x8
+- SizeofRtMsg = 0xc
+- SizeofRtNexthop = 0x8
++ SizeofSockFprog = 0x10
+ )
+
+-type NlMsghdr struct {
+- Len uint32
+- Type uint16
+- Flags uint16
+- Seq uint32
+- Pid uint32
+-}
+-
+-type NlMsgerr struct {
+- Error int32
+- Msg NlMsghdr
+-}
+-
+-type RtGenmsg struct {
+- Family uint8
+-}
+-
+-type NlAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type RtAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type IfInfomsg struct {
+- Family uint8
+- X__ifi_pad uint8
+- Type uint16
+- Index int32
+- Flags uint32
+- Change uint32
+-}
+-
+-type IfAddrmsg struct {
+- Family uint8
+- Prefixlen uint8
+- Flags uint8
+- Scope uint8
+- Index uint32
+-}
+-
+-type RtMsg struct {
+- Family uint8
+- Dst_len uint8
+- Src_len uint8
+- Tos uint8
+- Table uint8
+- Protocol uint8
+- Scope uint8
+- Type uint8
+- Flags uint32
+-}
+-
+-type RtNexthop struct {
+- Len uint16
+- Flags uint8
+- Hops uint8
+- Ifindex int32
+-}
+-
+-const (
+- SizeofSockFilter = 0x8
+- SizeofSockFprog = 0x10
+-)
+-
+-type SockFilter struct {
+- Code uint16
+- Jt uint8
+- Jf uint8
+- K uint32
+-}
+-
+-type SockFprog struct {
+- Len uint16
+- Pad_cgo_0 [6]byte
+- Filter *SockFilter
+-}
+-
+-type InotifyEvent struct {
+- Wd int32
+- Mask uint32
+- Cookie uint32
+- Len uint32
+-}
+-
+-const SizeofInotifyEvent = 0x10
+-
+ type PtraceRegs struct {
+ Regs [31]uint64
+ Sp uint64
+@@ -606,30 +187,19 @@ type Sysinfo_t struct {
+ Freeswap uint64
+ Procs uint16
+ Pad uint16
+- Pad_cgo_0 [4]byte
+ Totalhigh uint64
+ Freehigh uint64
+ Unit uint32
+- X_f [0]int8
+- Pad_cgo_1 [4]byte
+-}
+-
+-type Utsname struct {
+- Sysname [65]int8
+- Nodename [65]int8
+- Release [65]int8
+- Version [65]int8
+- Machine [65]int8
+- Domainname [65]int8
++ _ [0]int8
++ _ [4]byte
+ }
+
+ type Ustat_t struct {
+- Tfree int32
+- Pad_cgo_0 [4]byte
+- Tinode uint64
+- Fname [6]int8
+- Fpack [6]int8
+- Pad_cgo_1 [4]byte
++ Tfree int32
++ Tinode uint64
++ Fname [6]int8
++ Fpack [6]int8
++ _ [4]byte
+ }
+
+ type EpollEvent struct {
+@@ -640,37 +210,14 @@ type EpollEvent struct {
+ }
+
+ const (
+- AT_FDCWD = -0x64
+- AT_REMOVEDIR = 0x200
+- AT_SYMLINK_FOLLOW = 0x400
+- AT_SYMLINK_NOFOLLOW = 0x100
+-)
+-
+-type PollFd struct {
+- Fd int32
+- Events int16
+- Revents int16
+-}
+-
+-const (
+- POLLIN = 0x1
+- POLLPRI = 0x2
+- POLLOUT = 0x4
+ POLLRDHUP = 0x2000
+- POLLERR = 0x8
+- POLLHUP = 0x10
+- POLLNVAL = 0x20
+ )
+
+ type Sigset_t struct {
+- X__val [16]uint64
++ Val [16]uint64
+ }
+
+-const RNDGETENTCNT = 0x80045200
+-
+-const PERF_IOC_FLAG_GROUP = 0x1
+-
+-const _SC_PAGESIZE = 0x1e
++const _C__NSIG = 0x41
+
+ type Termios struct {
+ Iflag uint32
+@@ -683,20 +230,11 @@ type Termios struct {
+ Ospeed uint32
+ }
+
+-type Winsize struct {
+- Row uint16
+- Col uint16
+- Xpixel uint16
+- Ypixel uint16
+-}
+-
+ type Taskstats struct {
+ Version uint16
+- Pad_cgo_0 [2]byte
+ Ac_exitcode uint32
+ Ac_flag uint8
+ Ac_nice uint8
+- Pad_cgo_1 [6]byte
+ Cpu_count uint64
+ Cpu_delay_total uint64
+ Blkio_count uint64
+@@ -708,13 +246,12 @@ type Taskstats struct {
+ Ac_comm [32]int8
+ Ac_sched uint8
+ Ac_pad [3]uint8
+- Pad_cgo_2 [4]byte
++ _ [4]byte
+ Ac_uid uint32
+ Ac_gid uint32
+ Ac_pid uint32
+ Ac_ppid uint32
+ Ac_btime uint32
+- Pad_cgo_3 [4]byte
+ Ac_etime uint64
+ Ac_utime uint64
+ Ac_stime uint64
+@@ -738,55 +275,319 @@ type Taskstats struct {
+ Cpu_scaled_run_real_total uint64
+ Freepages_count uint64
+ Freepages_delay_total uint64
++ Thrashing_count uint64
++ Thrashing_delay_total uint64
++ Ac_btime64 uint64
+ }
+
++type cpuMask uint64
++
+ const (
+- TASKSTATS_CMD_UNSPEC = 0x0
+- TASKSTATS_CMD_GET = 0x1
+- TASKSTATS_CMD_NEW = 0x2
+- TASKSTATS_TYPE_UNSPEC = 0x0
+- TASKSTATS_TYPE_PID = 0x1
+- TASKSTATS_TYPE_TGID = 0x2
+- TASKSTATS_TYPE_STATS = 0x3
+- TASKSTATS_TYPE_AGGR_PID = 0x4
+- TASKSTATS_TYPE_AGGR_TGID = 0x5
+- TASKSTATS_TYPE_NULL = 0x6
+- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
+- TASKSTATS_CMD_ATTR_PID = 0x1
+- TASKSTATS_CMD_ATTR_TGID = 0x2
+- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
+- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
++ _NCPUBITS = 0x40
+ )
+
+-type Genlmsghdr struct {
+- Cmd uint8
+- Version uint8
+- Reserved uint16
++const (
++ CBitFieldMaskBit0 = 0x1
++ CBitFieldMaskBit1 = 0x2
++ CBitFieldMaskBit2 = 0x4
++ CBitFieldMaskBit3 = 0x8
++ CBitFieldMaskBit4 = 0x10
++ CBitFieldMaskBit5 = 0x20
++ CBitFieldMaskBit6 = 0x40
++ CBitFieldMaskBit7 = 0x80
++ CBitFieldMaskBit8 = 0x100
++ CBitFieldMaskBit9 = 0x200
++ CBitFieldMaskBit10 = 0x400
++ CBitFieldMaskBit11 = 0x800
++ CBitFieldMaskBit12 = 0x1000
++ CBitFieldMaskBit13 = 0x2000
++ CBitFieldMaskBit14 = 0x4000
++ CBitFieldMaskBit15 = 0x8000
++ CBitFieldMaskBit16 = 0x10000
++ CBitFieldMaskBit17 = 0x20000
++ CBitFieldMaskBit18 = 0x40000
++ CBitFieldMaskBit19 = 0x80000
++ CBitFieldMaskBit20 = 0x100000
++ CBitFieldMaskBit21 = 0x200000
++ CBitFieldMaskBit22 = 0x400000
++ CBitFieldMaskBit23 = 0x800000
++ CBitFieldMaskBit24 = 0x1000000
++ CBitFieldMaskBit25 = 0x2000000
++ CBitFieldMaskBit26 = 0x4000000
++ CBitFieldMaskBit27 = 0x8000000
++ CBitFieldMaskBit28 = 0x10000000
++ CBitFieldMaskBit29 = 0x20000000
++ CBitFieldMaskBit30 = 0x40000000
++ CBitFieldMaskBit31 = 0x80000000
++ CBitFieldMaskBit32 = 0x100000000
++ CBitFieldMaskBit33 = 0x200000000
++ CBitFieldMaskBit34 = 0x400000000
++ CBitFieldMaskBit35 = 0x800000000
++ CBitFieldMaskBit36 = 0x1000000000
++ CBitFieldMaskBit37 = 0x2000000000
++ CBitFieldMaskBit38 = 0x4000000000
++ CBitFieldMaskBit39 = 0x8000000000
++ CBitFieldMaskBit40 = 0x10000000000
++ CBitFieldMaskBit41 = 0x20000000000
++ CBitFieldMaskBit42 = 0x40000000000
++ CBitFieldMaskBit43 = 0x80000000000
++ CBitFieldMaskBit44 = 0x100000000000
++ CBitFieldMaskBit45 = 0x200000000000
++ CBitFieldMaskBit46 = 0x400000000000
++ CBitFieldMaskBit47 = 0x800000000000
++ CBitFieldMaskBit48 = 0x1000000000000
++ CBitFieldMaskBit49 = 0x2000000000000
++ CBitFieldMaskBit50 = 0x4000000000000
++ CBitFieldMaskBit51 = 0x8000000000000
++ CBitFieldMaskBit52 = 0x10000000000000
++ CBitFieldMaskBit53 = 0x20000000000000
++ CBitFieldMaskBit54 = 0x40000000000000
++ CBitFieldMaskBit55 = 0x80000000000000
++ CBitFieldMaskBit56 = 0x100000000000000
++ CBitFieldMaskBit57 = 0x200000000000000
++ CBitFieldMaskBit58 = 0x400000000000000
++ CBitFieldMaskBit59 = 0x800000000000000
++ CBitFieldMaskBit60 = 0x1000000000000000
++ CBitFieldMaskBit61 = 0x2000000000000000
++ CBitFieldMaskBit62 = 0x4000000000000000
++ CBitFieldMaskBit63 = 0x8000000000000000
++)
++
++type SockaddrStorage struct {
++ Family uint16
++ _ [118]int8
++ _ uint64
++}
++
++type HDGeometry struct {
++ Heads uint8
++ Sectors uint8
++ Cylinders uint16
++ Start uint64
++}
++
++type Statfs_t struct {
++ Type int64
++ Bsize int64
++ Blocks uint64
++ Bfree uint64
++ Bavail uint64
++ Files uint64
++ Ffree uint64
++ Fsid Fsid
++ Namelen int64
++ Frsize int64
++ Flags int64
++ Spare [4]int64
++}
++
++type TpacketHdr struct {
++ Status uint64
++ Len uint32
++ Snaplen uint32
++ Mac uint16
++ Net uint16
++ Sec uint32
++ Usec uint32
++ _ [4]byte
+ }
+
+ const (
+- CTRL_CMD_UNSPEC = 0x0
+- CTRL_CMD_NEWFAMILY = 0x1
+- CTRL_CMD_DELFAMILY = 0x2
+- CTRL_CMD_GETFAMILY = 0x3
+- CTRL_CMD_NEWOPS = 0x4
+- CTRL_CMD_DELOPS = 0x5
+- CTRL_CMD_GETOPS = 0x6
+- CTRL_CMD_NEWMCAST_GRP = 0x7
+- CTRL_CMD_DELMCAST_GRP = 0x8
+- CTRL_CMD_GETMCAST_GRP = 0x9
+- CTRL_ATTR_UNSPEC = 0x0
+- CTRL_ATTR_FAMILY_ID = 0x1
+- CTRL_ATTR_FAMILY_NAME = 0x2
+- CTRL_ATTR_VERSION = 0x3
+- CTRL_ATTR_HDRSIZE = 0x4
+- CTRL_ATTR_MAXATTR = 0x5
+- CTRL_ATTR_OPS = 0x6
+- CTRL_ATTR_MCAST_GROUPS = 0x7
+- 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
++ SizeofTpacketHdr = 0x20
+ )
++
++type RTCPLLInfo struct {
++ Ctrl int32
++ Value int32
++ Max int32
++ Min int32
++ Posmult int32
++ Negmult int32
++ Clock int64
++}
++
++type BlkpgPartition struct {
++ Start int64
++ Length int64
++ Pno int32
++ Devname [64]uint8
++ Volname [64]uint8
++ _ [4]byte
++}
++
++const (
++ BLKPG = 0x1269
++)
++
++type XDPUmemReg struct {
++ Addr uint64
++ Len uint64
++ Size uint32
++ Headroom uint32
++ Flags uint32
++ _ [4]byte
++}
++
++type CryptoUserAlg struct {
++ Name [64]int8
++ Driver_name [64]int8
++ Module_name [64]int8
++ Type uint32
++ Mask uint32
++ Refcnt uint32
++ Flags uint32
++}
++
++type CryptoStatAEAD struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatAKCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Verify_cnt uint64
++ Sign_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCompress struct {
++ Type [64]int8
++ Compress_cnt uint64
++ Compress_tlen uint64
++ Decompress_cnt uint64
++ Decompress_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatHash struct {
++ Type [64]int8
++ Hash_cnt uint64
++ Hash_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatKPP struct {
++ Type [64]int8
++ Setsecret_cnt uint64
++ Generate_public_key_cnt uint64
++ Compute_shared_secret_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatRNG struct {
++ Type [64]int8
++ Generate_cnt uint64
++ Generate_tlen uint64
++ Seed_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatLarval struct {
++ Type [64]int8
++}
++
++type CryptoReportLarval struct {
++ Type [64]int8
++}
++
++type CryptoReportHash struct {
++ Type [64]int8
++ Blocksize uint32
++ Digestsize uint32
++}
++
++type CryptoReportCipher struct {
++ Type [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++}
++
++type CryptoReportBlkCipher struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++ Ivsize uint32
++}
++
++type CryptoReportAEAD struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Maxauthsize uint32
++ Ivsize uint32
++}
++
++type CryptoReportComp struct {
++ Type [64]int8
++}
++
++type CryptoReportRNG struct {
++ Type [64]int8
++ Seedsize uint32
++}
++
++type CryptoReportAKCipher struct {
++ Type [64]int8
++}
++
++type CryptoReportKPP struct {
++ Type [64]int8
++}
++
++type CryptoReportAcomp struct {
++ Type [64]int8
++}
++
++type LoopInfo struct {
++ Number int32
++ Device uint32
++ Inode uint64
++ Rdevice uint32
++ Offset int32
++ Encrypt_type int32
++ Encrypt_key_size int32
++ Flags int32
++ Name [64]int8
++ Encrypt_key [32]uint8
++ Init [2]uint64
++ Reserved [4]int8
++ _ [4]byte
++}
++
++type TIPCSubscr struct {
++ Seq TIPCServiceRange
++ Timeout uint32
++ Filter uint32
++ Handle [8]int8
++}
++
++type TIPCSIOCLNReq struct {
++ Peer uint32
++ Id uint32
++ Linkname [68]int8
++}
++
++type TIPCSIOCNodeIDReq struct {
++ Peer uint32
++ Id [16]int8
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go b/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go
+index 8fa6603f..aaca03dd 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go
+@@ -6,19 +6,12 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x4
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x4
+- sizeofLongLong = 0x8
+- PathMax = 0x1000
++ SizeofPtr = 0x4
++ SizeofLong = 0x4
+ )
+
+ type (
+- _C_short int16
+- _C_int int32
+- _C_long int32
+- _C_long_long int64
++ _C_long int32
+ )
+
+ type Timespec struct {
+@@ -52,7 +45,7 @@ type Timex struct {
+ Errcnt int32
+ Stbcnt int32
+ Tai int32
+- Pad_cgo_0 [44]byte
++ _ [44]byte
+ }
+
+ type Time_t int32
+@@ -88,13 +81,6 @@ type Rusage struct {
+ Nivcsw int32
+ }
+
+-type Rlimit struct {
+- Cur uint64
+- Max uint64
+-}
+-
+-type _Gid_t uint32
+-
+ type Stat_t struct {
+ Dev uint32
+ Pad1 [3]int32
+@@ -115,141 +101,30 @@ type Stat_t struct {
+ Pad5 [14]int32
+ }
+
+-type Statfs_t struct {
+- Type int32
+- Bsize int32
+- Frsize int32
+- Pad_cgo_0 [4]byte
+- Blocks uint64
+- Bfree uint64
+- Files uint64
+- Ffree uint64
+- Bavail uint64
+- Fsid Fsid
+- Namelen int32
+- Flags int32
+- Spare [5]int32
+- Pad_cgo_1 [4]byte
+-}
+-
+ type Dirent struct {
+- Ino uint64
+- Off int64
+- Reclen uint16
+- Type uint8
+- Name [256]int8
+- Pad_cgo_0 [5]byte
+-}
+-
+-type Fsid struct {
+- X__val [2]int32
++ Ino uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Name [256]int8
++ _ [5]byte
+ }
+
+ type Flock_t struct {
+- Type int16
+- Whence int16
+- Pad_cgo_0 [4]byte
+- Start int64
+- Len int64
+- Pid int32
+- Pad_cgo_1 [4]byte
+-}
+-
+-type FscryptPolicy struct {
+- Version uint8
+- Contents_encryption_mode uint8
+- Filenames_encryption_mode uint8
+- Flags uint8
+- Master_key_descriptor [8]uint8
+-}
+-
+-type FscryptKey struct {
+- Mode uint32
+- Raw [64]uint8
+- Size uint32
+-}
+-
+-type KeyctlDHParams struct {
+- Private int32
+- Prime int32
+- Base int32
++ Type int16
++ Whence int16
++ _ [4]byte
++ Start int64
++ Len int64
++ Pid int32
++ _ [4]byte
+ }
+
+ const (
+- FADV_NORMAL = 0x0
+- FADV_RANDOM = 0x1
+- FADV_SEQUENTIAL = 0x2
+- FADV_WILLNEED = 0x3
+- FADV_DONTNEED = 0x4
+- FADV_NOREUSE = 0x5
++ FADV_DONTNEED = 0x4
++ FADV_NOREUSE = 0x5
+ )
+
+-type RawSockaddrInet4 struct {
+- Family uint16
+- Port uint16
+- Addr [4]byte /* in_addr */
+- Zero [8]uint8
+-}
+-
+-type RawSockaddrInet6 struct {
+- Family uint16
+- Port uint16
+- Flowinfo uint32
+- Addr [16]byte /* in6_addr */
+- Scope_id uint32
+-}
+-
+-type RawSockaddrUnix struct {
+- Family uint16
+- Path [108]int8
+-}
+-
+-type RawSockaddrLinklayer struct {
+- Family uint16
+- Protocol uint16
+- Ifindex int32
+- Hatype uint16
+- Pkttype uint8
+- Halen uint8
+- Addr [8]uint8
+-}
+-
+-type RawSockaddrNetlink struct {
+- Family uint16
+- Pad uint16
+- Pid uint32
+- Groups uint32
+-}
+-
+-type RawSockaddrHCI struct {
+- Family uint16
+- Dev uint16
+- Channel uint16
+-}
+-
+-type RawSockaddrCAN struct {
+- Family uint16
+- Pad_cgo_0 [2]byte
+- Ifindex int32
+- Addr [8]byte
+-}
+-
+-type RawSockaddrALG struct {
+- Family uint16
+- Type [14]uint8
+- Feat uint32
+- Mask uint32
+- Name [64]uint8
+-}
+-
+-type RawSockaddrVM struct {
+- Family uint16
+- Reserved1 uint16
+- Port uint32
+- Cid uint32
+- Zero [4]uint8
+-}
+-
+ type RawSockaddr struct {
+ Family uint16
+ Data [14]int8
+@@ -260,41 +135,11 @@ type RawSockaddrAny struct {
+ Pad [96]int8
+ }
+
+-type _Socklen uint32
+-
+-type Linger struct {
+- Onoff int32
+- Linger int32
+-}
+-
+ type Iovec struct {
+ Base *byte
+ Len uint32
+ }
+
+-type IPMreq struct {
+- Multiaddr [4]byte /* in_addr */
+- Interface [4]byte /* in_addr */
+-}
+-
+-type IPMreqn struct {
+- Multiaddr [4]byte /* in_addr */
+- Address [4]byte /* in_addr */
+- Ifindex int32
+-}
+-
+-type IPv6Mreq struct {
+- Multiaddr [16]byte /* in6_addr */
+- Interface uint32
+-}
+-
+-type PacketMreq struct {
+- Ifindex int32
+- Type uint16
+- Alen uint16
+- Address [8]uint8
+-}
+-
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+@@ -311,277 +156,16 @@ type Cmsghdr struct {
+ Type int32
+ }
+
+-type Inet4Pktinfo struct {
+- Ifindex int32
+- Spec_dst [4]byte /* in_addr */
+- Addr [4]byte /* in_addr */
+-}
+-
+-type Inet6Pktinfo struct {
+- Addr [16]byte /* in6_addr */
+- Ifindex uint32
+-}
+-
+-type IPv6MTUInfo struct {
+- Addr RawSockaddrInet6
+- Mtu uint32
+-}
+-
+-type ICMPv6Filter struct {
+- Data [8]uint32
+-}
+-
+-type Ucred struct {
+- Pid int32
+- Uid uint32
+- Gid uint32
+-}
+-
+-type TCPInfo struct {
+- State uint8
+- Ca_state uint8
+- Retransmits uint8
+- Probes uint8
+- Backoff uint8
+- Options uint8
+- Pad_cgo_0 [2]byte
+- Rto uint32
+- Ato uint32
+- Snd_mss uint32
+- Rcv_mss uint32
+- Unacked uint32
+- Sacked uint32
+- Lost uint32
+- Retrans uint32
+- Fackets uint32
+- Last_data_sent uint32
+- Last_ack_sent uint32
+- Last_data_recv uint32
+- Last_ack_recv uint32
+- Pmtu uint32
+- Rcv_ssthresh uint32
+- Rtt uint32
+- Rttvar uint32
+- Snd_ssthresh uint32
+- Snd_cwnd uint32
+- Advmss uint32
+- Reordering uint32
+- Rcv_rtt uint32
+- Rcv_space uint32
+- Total_retrans uint32
+-}
+-
+ const (
+- SizeofSockaddrInet4 = 0x10
+- SizeofSockaddrInet6 = 0x1c
+- SizeofSockaddrAny = 0x70
+- SizeofSockaddrUnix = 0x6e
+- SizeofSockaddrLinklayer = 0x14
+- SizeofSockaddrNetlink = 0xc
+- SizeofSockaddrHCI = 0x6
+- SizeofSockaddrCAN = 0x10
+- SizeofSockaddrALG = 0x58
+- SizeofSockaddrVM = 0x10
+- SizeofLinger = 0x8
+- SizeofIovec = 0x8
+- SizeofIPMreq = 0x8
+- SizeofIPMreqn = 0xc
+- SizeofIPv6Mreq = 0x14
+- SizeofPacketMreq = 0x10
+- SizeofMsghdr = 0x1c
+- SizeofCmsghdr = 0xc
+- SizeofInet4Pktinfo = 0xc
+- SizeofInet6Pktinfo = 0x14
+- SizeofIPv6MTUInfo = 0x20
+- SizeofICMPv6Filter = 0x20
+- SizeofUcred = 0xc
+- SizeofTCPInfo = 0x68
++ SizeofIovec = 0x8
++ SizeofMsghdr = 0x1c
++ SizeofCmsghdr = 0xc
+ )
+
+ const (
+- IFA_UNSPEC = 0x0
+- IFA_ADDRESS = 0x1
+- IFA_LOCAL = 0x2
+- IFA_LABEL = 0x3
+- IFA_BROADCAST = 0x4
+- IFA_ANYCAST = 0x5
+- IFA_CACHEINFO = 0x6
+- IFA_MULTICAST = 0x7
+- IFLA_UNSPEC = 0x0
+- IFLA_ADDRESS = 0x1
+- IFLA_BROADCAST = 0x2
+- IFLA_IFNAME = 0x3
+- IFLA_MTU = 0x4
+- IFLA_LINK = 0x5
+- IFLA_QDISC = 0x6
+- IFLA_STATS = 0x7
+- IFLA_COST = 0x8
+- IFLA_PRIORITY = 0x9
+- IFLA_MASTER = 0xa
+- IFLA_WIRELESS = 0xb
+- IFLA_PROTINFO = 0xc
+- IFLA_TXQLEN = 0xd
+- IFLA_MAP = 0xe
+- IFLA_WEIGHT = 0xf
+- IFLA_OPERSTATE = 0x10
+- IFLA_LINKMODE = 0x11
+- IFLA_LINKINFO = 0x12
+- IFLA_NET_NS_PID = 0x13
+- IFLA_IFALIAS = 0x14
+- IFLA_MAX = 0x2b
+- RT_SCOPE_UNIVERSE = 0x0
+- RT_SCOPE_SITE = 0xc8
+- RT_SCOPE_LINK = 0xfd
+- RT_SCOPE_HOST = 0xfe
+- RT_SCOPE_NOWHERE = 0xff
+- RT_TABLE_UNSPEC = 0x0
+- RT_TABLE_COMPAT = 0xfc
+- RT_TABLE_DEFAULT = 0xfd
+- RT_TABLE_MAIN = 0xfe
+- RT_TABLE_LOCAL = 0xff
+- RT_TABLE_MAX = 0xffffffff
+- RTA_UNSPEC = 0x0
+- RTA_DST = 0x1
+- RTA_SRC = 0x2
+- RTA_IIF = 0x3
+- RTA_OIF = 0x4
+- RTA_GATEWAY = 0x5
+- RTA_PRIORITY = 0x6
+- RTA_PREFSRC = 0x7
+- RTA_METRICS = 0x8
+- RTA_MULTIPATH = 0x9
+- RTA_FLOW = 0xb
+- RTA_CACHEINFO = 0xc
+- RTA_TABLE = 0xf
+- RTN_UNSPEC = 0x0
+- RTN_UNICAST = 0x1
+- RTN_LOCAL = 0x2
+- RTN_BROADCAST = 0x3
+- RTN_ANYCAST = 0x4
+- RTN_MULTICAST = 0x5
+- RTN_BLACKHOLE = 0x6
+- RTN_UNREACHABLE = 0x7
+- RTN_PROHIBIT = 0x8
+- RTN_THROW = 0x9
+- RTN_NAT = 0xa
+- RTN_XRESOLVE = 0xb
+- RTNLGRP_NONE = 0x0
+- RTNLGRP_LINK = 0x1
+- RTNLGRP_NOTIFY = 0x2
+- RTNLGRP_NEIGH = 0x3
+- RTNLGRP_TC = 0x4
+- RTNLGRP_IPV4_IFADDR = 0x5
+- RTNLGRP_IPV4_MROUTE = 0x6
+- RTNLGRP_IPV4_ROUTE = 0x7
+- RTNLGRP_IPV4_RULE = 0x8
+- RTNLGRP_IPV6_IFADDR = 0x9
+- RTNLGRP_IPV6_MROUTE = 0xa
+- RTNLGRP_IPV6_ROUTE = 0xb
+- RTNLGRP_IPV6_IFINFO = 0xc
+- RTNLGRP_IPV6_PREFIX = 0x12
+- RTNLGRP_IPV6_RULE = 0x13
+- RTNLGRP_ND_USEROPT = 0x14
+- SizeofNlMsghdr = 0x10
+- SizeofNlMsgerr = 0x14
+- SizeofRtGenmsg = 0x1
+- SizeofNlAttr = 0x4
+- SizeofRtAttr = 0x4
+- SizeofIfInfomsg = 0x10
+- SizeofIfAddrmsg = 0x8
+- SizeofRtMsg = 0xc
+- SizeofRtNexthop = 0x8
++ SizeofSockFprog = 0x8
+ )
+
+-type NlMsghdr struct {
+- Len uint32
+- Type uint16
+- Flags uint16
+- Seq uint32
+- Pid uint32
+-}
+-
+-type NlMsgerr struct {
+- Error int32
+- Msg NlMsghdr
+-}
+-
+-type RtGenmsg struct {
+- Family uint8
+-}
+-
+-type NlAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type RtAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type IfInfomsg struct {
+- Family uint8
+- X__ifi_pad uint8
+- Type uint16
+- Index int32
+- Flags uint32
+- Change uint32
+-}
+-
+-type IfAddrmsg struct {
+- Family uint8
+- Prefixlen uint8
+- Flags uint8
+- Scope uint8
+- Index uint32
+-}
+-
+-type RtMsg struct {
+- Family uint8
+- Dst_len uint8
+- Src_len uint8
+- Tos uint8
+- Table uint8
+- Protocol uint8
+- Scope uint8
+- Type uint8
+- Flags uint32
+-}
+-
+-type RtNexthop struct {
+- Len uint16
+- Flags uint8
+- Hops uint8
+- Ifindex int32
+-}
+-
+-const (
+- SizeofSockFilter = 0x8
+- SizeofSockFprog = 0x8
+-)
+-
+-type SockFilter struct {
+- Code uint16
+- Jt uint8
+- Jf uint8
+- K uint32
+-}
+-
+-type SockFprog struct {
+- Len uint16
+- Pad_cgo_0 [2]byte
+- Filter *SockFilter
+-}
+-
+-type InotifyEvent struct {
+- Wd int32
+- Mask uint32
+- Cookie uint32
+- Len uint32
+-}
+-
+-const SizeofInotifyEvent = 0x10
+-
+ type PtraceRegs struct {
+ Regs [32]uint64
+ Lo uint64
+@@ -610,16 +194,7 @@ type Sysinfo_t struct {
+ Totalhigh uint32
+ Freehigh uint32
+ Unit uint32
+- X_f [8]int8
+-}
+-
+-type Utsname struct {
+- Sysname [65]int8
+- Nodename [65]int8
+- Release [65]int8
+- Version [65]int8
+- Machine [65]int8
+- Domainname [65]int8
++ _ [8]int8
+ }
+
+ type Ustat_t struct {
+@@ -637,37 +212,14 @@ type EpollEvent struct {
+ }
+
+ const (
+- AT_FDCWD = -0x64
+- AT_REMOVEDIR = 0x200
+- AT_SYMLINK_FOLLOW = 0x400
+- AT_SYMLINK_NOFOLLOW = 0x100
+-)
+-
+-type PollFd struct {
+- Fd int32
+- Events int16
+- Revents int16
+-}
+-
+-const (
+- POLLIN = 0x1
+- POLLPRI = 0x2
+- POLLOUT = 0x4
+ POLLRDHUP = 0x2000
+- POLLERR = 0x8
+- POLLHUP = 0x10
+- POLLNVAL = 0x20
+ )
+
+ type Sigset_t struct {
+- X__val [32]uint32
++ Val [32]uint32
+ }
+
+-const RNDGETENTCNT = 0x40045200
+-
+-const PERF_IOC_FLAG_GROUP = 0x1
+-
+-const _SC_PAGESIZE = 0x1e
++const _C__NSIG = 0x80
+
+ type Termios struct {
+ Iflag uint32
+@@ -680,20 +232,12 @@ type Termios struct {
+ Ospeed uint32
+ }
+
+-type Winsize struct {
+- Row uint16
+- Col uint16
+- Xpixel uint16
+- Ypixel uint16
+-}
+-
+ type Taskstats struct {
+ Version uint16
+- Pad_cgo_0 [2]byte
+ Ac_exitcode uint32
+ Ac_flag uint8
+ Ac_nice uint8
+- Pad_cgo_1 [6]byte
++ _ [4]byte
+ Cpu_count uint64
+ Cpu_delay_total uint64
+ Blkio_count uint64
+@@ -705,13 +249,13 @@ type Taskstats struct {
+ Ac_comm [32]int8
+ Ac_sched uint8
+ Ac_pad [3]uint8
+- Pad_cgo_2 [4]byte
++ _ [4]byte
+ Ac_uid uint32
+ Ac_gid uint32
+ Ac_pid uint32
+ Ac_ppid uint32
+ Ac_btime uint32
+- Pad_cgo_3 [4]byte
++ _ [4]byte
+ Ac_etime uint64
+ Ac_utime uint64
+ Ac_stime uint64
+@@ -735,55 +279,319 @@ type Taskstats struct {
+ Cpu_scaled_run_real_total uint64
+ Freepages_count uint64
+ Freepages_delay_total uint64
++ Thrashing_count uint64
++ Thrashing_delay_total uint64
++ Ac_btime64 uint64
+ }
+
++type cpuMask uint32
++
++const (
++ _NCPUBITS = 0x20
++)
++
+ const (
+- TASKSTATS_CMD_UNSPEC = 0x0
+- TASKSTATS_CMD_GET = 0x1
+- TASKSTATS_CMD_NEW = 0x2
+- TASKSTATS_TYPE_UNSPEC = 0x0
+- TASKSTATS_TYPE_PID = 0x1
+- TASKSTATS_TYPE_TGID = 0x2
+- TASKSTATS_TYPE_STATS = 0x3
+- TASKSTATS_TYPE_AGGR_PID = 0x4
+- TASKSTATS_TYPE_AGGR_TGID = 0x5
+- TASKSTATS_TYPE_NULL = 0x6
+- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
+- TASKSTATS_CMD_ATTR_PID = 0x1
+- TASKSTATS_CMD_ATTR_TGID = 0x2
+- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
+- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
++ CBitFieldMaskBit0 = 0x8000000000000000
++ CBitFieldMaskBit1 = 0x4000000000000000
++ CBitFieldMaskBit2 = 0x2000000000000000
++ CBitFieldMaskBit3 = 0x1000000000000000
++ CBitFieldMaskBit4 = 0x800000000000000
++ CBitFieldMaskBit5 = 0x400000000000000
++ CBitFieldMaskBit6 = 0x200000000000000
++ CBitFieldMaskBit7 = 0x100000000000000
++ CBitFieldMaskBit8 = 0x80000000000000
++ CBitFieldMaskBit9 = 0x40000000000000
++ CBitFieldMaskBit10 = 0x20000000000000
++ CBitFieldMaskBit11 = 0x10000000000000
++ CBitFieldMaskBit12 = 0x8000000000000
++ CBitFieldMaskBit13 = 0x4000000000000
++ CBitFieldMaskBit14 = 0x2000000000000
++ CBitFieldMaskBit15 = 0x1000000000000
++ CBitFieldMaskBit16 = 0x800000000000
++ CBitFieldMaskBit17 = 0x400000000000
++ CBitFieldMaskBit18 = 0x200000000000
++ CBitFieldMaskBit19 = 0x100000000000
++ CBitFieldMaskBit20 = 0x80000000000
++ CBitFieldMaskBit21 = 0x40000000000
++ CBitFieldMaskBit22 = 0x20000000000
++ CBitFieldMaskBit23 = 0x10000000000
++ CBitFieldMaskBit24 = 0x8000000000
++ CBitFieldMaskBit25 = 0x4000000000
++ CBitFieldMaskBit26 = 0x2000000000
++ CBitFieldMaskBit27 = 0x1000000000
++ CBitFieldMaskBit28 = 0x800000000
++ CBitFieldMaskBit29 = 0x400000000
++ CBitFieldMaskBit30 = 0x200000000
++ CBitFieldMaskBit31 = 0x100000000
++ CBitFieldMaskBit32 = 0x80000000
++ CBitFieldMaskBit33 = 0x40000000
++ CBitFieldMaskBit34 = 0x20000000
++ CBitFieldMaskBit35 = 0x10000000
++ CBitFieldMaskBit36 = 0x8000000
++ CBitFieldMaskBit37 = 0x4000000
++ CBitFieldMaskBit38 = 0x2000000
++ CBitFieldMaskBit39 = 0x1000000
++ CBitFieldMaskBit40 = 0x800000
++ CBitFieldMaskBit41 = 0x400000
++ CBitFieldMaskBit42 = 0x200000
++ CBitFieldMaskBit43 = 0x100000
++ CBitFieldMaskBit44 = 0x80000
++ CBitFieldMaskBit45 = 0x40000
++ CBitFieldMaskBit46 = 0x20000
++ CBitFieldMaskBit47 = 0x10000
++ CBitFieldMaskBit48 = 0x8000
++ CBitFieldMaskBit49 = 0x4000
++ CBitFieldMaskBit50 = 0x2000
++ CBitFieldMaskBit51 = 0x1000
++ CBitFieldMaskBit52 = 0x800
++ CBitFieldMaskBit53 = 0x400
++ CBitFieldMaskBit54 = 0x200
++ CBitFieldMaskBit55 = 0x100
++ CBitFieldMaskBit56 = 0x80
++ CBitFieldMaskBit57 = 0x40
++ CBitFieldMaskBit58 = 0x20
++ CBitFieldMaskBit59 = 0x10
++ CBitFieldMaskBit60 = 0x8
++ CBitFieldMaskBit61 = 0x4
++ CBitFieldMaskBit62 = 0x2
++ CBitFieldMaskBit63 = 0x1
+ )
+
+-type Genlmsghdr struct {
+- Cmd uint8
+- Version uint8
+- Reserved uint16
++type SockaddrStorage struct {
++ Family uint16
++ _ [122]int8
++ _ uint32
++}
++
++type HDGeometry struct {
++ Heads uint8
++ Sectors uint8
++ Cylinders uint16
++ Start uint32
++}
++
++type Statfs_t struct {
++ Type int32
++ Bsize int32
++ Frsize int32
++ _ [4]byte
++ Blocks uint64
++ Bfree uint64
++ Files uint64
++ Ffree uint64
++ Bavail uint64
++ Fsid Fsid
++ Namelen int32
++ Flags int32
++ Spare [5]int32
++ _ [4]byte
++}
++
++type TpacketHdr struct {
++ Status uint32
++ Len uint32
++ Snaplen uint32
++ Mac uint16
++ Net uint16
++ Sec uint32
++ Usec uint32
++}
++
++const (
++ SizeofTpacketHdr = 0x18
++)
++
++type RTCPLLInfo struct {
++ Ctrl int32
++ Value int32
++ Max int32
++ Min int32
++ Posmult int32
++ Negmult int32
++ Clock int32
++}
++
++type BlkpgPartition struct {
++ Start int64
++ Length int64
++ Pno int32
++ Devname [64]uint8
++ Volname [64]uint8
++ _ [4]byte
+ }
+
+ const (
+- CTRL_CMD_UNSPEC = 0x0
+- CTRL_CMD_NEWFAMILY = 0x1
+- CTRL_CMD_DELFAMILY = 0x2
+- CTRL_CMD_GETFAMILY = 0x3
+- CTRL_CMD_NEWOPS = 0x4
+- CTRL_CMD_DELOPS = 0x5
+- CTRL_CMD_GETOPS = 0x6
+- CTRL_CMD_NEWMCAST_GRP = 0x7
+- CTRL_CMD_DELMCAST_GRP = 0x8
+- CTRL_CMD_GETMCAST_GRP = 0x9
+- CTRL_ATTR_UNSPEC = 0x0
+- CTRL_ATTR_FAMILY_ID = 0x1
+- CTRL_ATTR_FAMILY_NAME = 0x2
+- CTRL_ATTR_VERSION = 0x3
+- CTRL_ATTR_HDRSIZE = 0x4
+- CTRL_ATTR_MAXATTR = 0x5
+- CTRL_ATTR_OPS = 0x6
+- CTRL_ATTR_MCAST_GROUPS = 0x7
+- 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
++ BLKPG = 0x20001269
+ )
++
++type XDPUmemReg struct {
++ Addr uint64
++ Len uint64
++ Size uint32
++ Headroom uint32
++ Flags uint32
++ _ [4]byte
++}
++
++type CryptoUserAlg struct {
++ Name [64]int8
++ Driver_name [64]int8
++ Module_name [64]int8
++ Type uint32
++ Mask uint32
++ Refcnt uint32
++ Flags uint32
++}
++
++type CryptoStatAEAD struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatAKCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Verify_cnt uint64
++ Sign_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCompress struct {
++ Type [64]int8
++ Compress_cnt uint64
++ Compress_tlen uint64
++ Decompress_cnt uint64
++ Decompress_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatHash struct {
++ Type [64]int8
++ Hash_cnt uint64
++ Hash_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatKPP struct {
++ Type [64]int8
++ Setsecret_cnt uint64
++ Generate_public_key_cnt uint64
++ Compute_shared_secret_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatRNG struct {
++ Type [64]int8
++ Generate_cnt uint64
++ Generate_tlen uint64
++ Seed_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatLarval struct {
++ Type [64]int8
++}
++
++type CryptoReportLarval struct {
++ Type [64]int8
++}
++
++type CryptoReportHash struct {
++ Type [64]int8
++ Blocksize uint32
++ Digestsize uint32
++}
++
++type CryptoReportCipher struct {
++ Type [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++}
++
++type CryptoReportBlkCipher struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++ Ivsize uint32
++}
++
++type CryptoReportAEAD struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Maxauthsize uint32
++ Ivsize uint32
++}
++
++type CryptoReportComp struct {
++ Type [64]int8
++}
++
++type CryptoReportRNG struct {
++ Type [64]int8
++ Seedsize uint32
++}
++
++type CryptoReportAKCipher struct {
++ Type [64]int8
++}
++
++type CryptoReportKPP struct {
++ Type [64]int8
++}
++
++type CryptoReportAcomp struct {
++ Type [64]int8
++}
++
++type LoopInfo struct {
++ Number int32
++ Device uint32
++ Inode uint32
++ Rdevice uint32
++ Offset int32
++ Encrypt_type int32
++ Encrypt_key_size int32
++ Flags int32
++ Name [64]int8
++ Encrypt_key [32]uint8
++ Init [2]uint32
++ Reserved [4]int8
++}
++
++type TIPCSubscr struct {
++ Seq TIPCServiceRange
++ Timeout uint32
++ Filter uint32
++ Handle [8]int8
++}
++
++type TIPCSIOCLNReq struct {
++ Peer uint32
++ Id uint32
++ Linkname [68]int8
++}
++
++type TIPCSIOCNodeIDReq struct {
++ Peer uint32
++ Id [16]int8
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go
+index 3e5fc625..2e7f3b8c 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go
+@@ -6,19 +6,12 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
+- PathMax = 0x1000
++ SizeofPtr = 0x8
++ SizeofLong = 0x8
+ )
+
+ type (
+- _C_short int16
+- _C_int int32
+- _C_long int64
+- _C_long_long int64
++ _C_long int64
+ )
+
+ type Timespec struct {
+@@ -33,13 +26,11 @@ type Timeval struct {
+
+ type Timex struct {
+ Modes uint32
+- Pad_cgo_0 [4]byte
+ Offset int64
+ Freq int64
+ Maxerror int64
+ Esterror int64
+ Status int32
+- Pad_cgo_1 [4]byte
+ Constant int64
+ Precision int64
+ Tolerance int64
+@@ -48,14 +39,13 @@ type Timex struct {
+ Ppsfreq int64
+ Jitter int64
+ Shift int32
+- Pad_cgo_2 [4]byte
+ Stabil int64
+ Jitcnt int64
+ Calcnt int64
+ Errcnt int64
+ Stbcnt int64
+ Tai int32
+- Pad_cgo_3 [44]byte
++ _ [44]byte
+ }
+
+ type Time_t int64
+@@ -91,13 +81,6 @@ type Rusage struct {
+ Nivcsw int64
+ }
+
+-type Rlimit struct {
+- Cur uint64
+- Max uint64
+-}
+-
+-type _Gid_t uint32
+-
+ type Stat_t struct {
+ Dev uint32
+ Pad1 [3]uint32
+@@ -117,139 +100,29 @@ type Stat_t struct {
+ Blocks int64
+ }
+
+-type Statfs_t struct {
+- Type int64
+- Bsize int64
+- Frsize int64
+- Blocks uint64
+- Bfree uint64
+- Files uint64
+- Ffree uint64
+- Bavail uint64
+- Fsid Fsid
+- Namelen int64
+- Flags int64
+- Spare [5]int64
+-}
+-
+ type Dirent struct {
+- Ino uint64
+- Off int64
+- Reclen uint16
+- Type uint8
+- Name [256]int8
+- Pad_cgo_0 [5]byte
+-}
+-
+-type Fsid struct {
+- X__val [2]int32
++ Ino uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Name [256]int8
++ _ [5]byte
+ }
+
+ type Flock_t struct {
+- Type int16
+- Whence int16
+- Pad_cgo_0 [4]byte
+- Start int64
+- Len int64
+- Pid int32
+- Pad_cgo_1 [4]byte
+-}
+-
+-type FscryptPolicy struct {
+- Version uint8
+- Contents_encryption_mode uint8
+- Filenames_encryption_mode uint8
+- Flags uint8
+- Master_key_descriptor [8]uint8
+-}
+-
+-type FscryptKey struct {
+- Mode uint32
+- Raw [64]uint8
+- Size uint32
+-}
+-
+-type KeyctlDHParams struct {
+- Private int32
+- Prime int32
+- Base int32
++ Type int16
++ Whence int16
++ Start int64
++ Len int64
++ Pid int32
++ _ [4]byte
+ }
+
+ const (
+- FADV_NORMAL = 0x0
+- FADV_RANDOM = 0x1
+- FADV_SEQUENTIAL = 0x2
+- FADV_WILLNEED = 0x3
+- FADV_DONTNEED = 0x4
+- FADV_NOREUSE = 0x5
++ FADV_DONTNEED = 0x4
++ FADV_NOREUSE = 0x5
+ )
+
+-type RawSockaddrInet4 struct {
+- Family uint16
+- Port uint16
+- Addr [4]byte /* in_addr */
+- Zero [8]uint8
+-}
+-
+-type RawSockaddrInet6 struct {
+- Family uint16
+- Port uint16
+- Flowinfo uint32
+- Addr [16]byte /* in6_addr */
+- Scope_id uint32
+-}
+-
+-type RawSockaddrUnix struct {
+- Family uint16
+- Path [108]int8
+-}
+-
+-type RawSockaddrLinklayer struct {
+- Family uint16
+- Protocol uint16
+- Ifindex int32
+- Hatype uint16
+- Pkttype uint8
+- Halen uint8
+- Addr [8]uint8
+-}
+-
+-type RawSockaddrNetlink struct {
+- Family uint16
+- Pad uint16
+- Pid uint32
+- Groups uint32
+-}
+-
+-type RawSockaddrHCI struct {
+- Family uint16
+- Dev uint16
+- Channel uint16
+-}
+-
+-type RawSockaddrCAN struct {
+- Family uint16
+- Pad_cgo_0 [2]byte
+- Ifindex int32
+- Addr [8]byte
+-}
+-
+-type RawSockaddrALG struct {
+- Family uint16
+- Type [14]uint8
+- Feat uint32
+- Mask uint32
+- Name [64]uint8
+-}
+-
+-type RawSockaddrVM struct {
+- Family uint16
+- Reserved1 uint16
+- Port uint32
+- Cid uint32
+- Zero [4]uint8
+-}
+-
+ type RawSockaddr struct {
+ Family uint16
+ Data [14]int8
+@@ -260,51 +133,20 @@ type RawSockaddrAny struct {
+ Pad [96]int8
+ }
+
+-type _Socklen uint32
+-
+-type Linger struct {
+- Onoff int32
+- Linger int32
+-}
+-
+ type Iovec struct {
+ Base *byte
+ Len uint64
+ }
+
+-type IPMreq struct {
+- Multiaddr [4]byte /* in_addr */
+- Interface [4]byte /* in_addr */
+-}
+-
+-type IPMreqn struct {
+- Multiaddr [4]byte /* in_addr */
+- Address [4]byte /* in_addr */
+- Ifindex int32
+-}
+-
+-type IPv6Mreq struct {
+- Multiaddr [16]byte /* in6_addr */
+- Interface uint32
+-}
+-
+-type PacketMreq struct {
+- Ifindex int32
+- Type uint16
+- Alen uint16
+- Address [8]uint8
+-}
+-
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+- Pad_cgo_0 [4]byte
+ Iov *Iovec
+ Iovlen uint64
+ Control *byte
+ Controllen uint64
+ Flags int32
+- Pad_cgo_1 [4]byte
++ _ [4]byte
+ }
+
+ type Cmsghdr struct {
+@@ -313,277 +155,16 @@ type Cmsghdr struct {
+ Type int32
+ }
+
+-type Inet4Pktinfo struct {
+- Ifindex int32
+- Spec_dst [4]byte /* in_addr */
+- Addr [4]byte /* in_addr */
+-}
+-
+-type Inet6Pktinfo struct {
+- Addr [16]byte /* in6_addr */
+- Ifindex uint32
+-}
+-
+-type IPv6MTUInfo struct {
+- Addr RawSockaddrInet6
+- Mtu uint32
+-}
+-
+-type ICMPv6Filter struct {
+- Data [8]uint32
+-}
+-
+-type Ucred struct {
+- Pid int32
+- Uid uint32
+- Gid uint32
+-}
+-
+-type TCPInfo struct {
+- State uint8
+- Ca_state uint8
+- Retransmits uint8
+- Probes uint8
+- Backoff uint8
+- Options uint8
+- Pad_cgo_0 [2]byte
+- Rto uint32
+- Ato uint32
+- Snd_mss uint32
+- Rcv_mss uint32
+- Unacked uint32
+- Sacked uint32
+- Lost uint32
+- Retrans uint32
+- Fackets uint32
+- Last_data_sent uint32
+- Last_ack_sent uint32
+- Last_data_recv uint32
+- Last_ack_recv uint32
+- Pmtu uint32
+- Rcv_ssthresh uint32
+- Rtt uint32
+- Rttvar uint32
+- Snd_ssthresh uint32
+- Snd_cwnd uint32
+- Advmss uint32
+- Reordering uint32
+- Rcv_rtt uint32
+- Rcv_space uint32
+- Total_retrans uint32
+-}
+-
+ const (
+- SizeofSockaddrInet4 = 0x10
+- SizeofSockaddrInet6 = 0x1c
+- SizeofSockaddrAny = 0x70
+- SizeofSockaddrUnix = 0x6e
+- SizeofSockaddrLinklayer = 0x14
+- SizeofSockaddrNetlink = 0xc
+- SizeofSockaddrHCI = 0x6
+- SizeofSockaddrCAN = 0x10
+- SizeofSockaddrALG = 0x58
+- SizeofSockaddrVM = 0x10
+- SizeofLinger = 0x8
+- SizeofIovec = 0x10
+- SizeofIPMreq = 0x8
+- SizeofIPMreqn = 0xc
+- SizeofIPv6Mreq = 0x14
+- SizeofPacketMreq = 0x10
+- SizeofMsghdr = 0x38
+- SizeofCmsghdr = 0x10
+- SizeofInet4Pktinfo = 0xc
+- SizeofInet6Pktinfo = 0x14
+- SizeofIPv6MTUInfo = 0x20
+- SizeofICMPv6Filter = 0x20
+- SizeofUcred = 0xc
+- SizeofTCPInfo = 0x68
++ SizeofIovec = 0x10
++ SizeofMsghdr = 0x38
++ SizeofCmsghdr = 0x10
+ )
+
+ const (
+- IFA_UNSPEC = 0x0
+- IFA_ADDRESS = 0x1
+- IFA_LOCAL = 0x2
+- IFA_LABEL = 0x3
+- IFA_BROADCAST = 0x4
+- IFA_ANYCAST = 0x5
+- IFA_CACHEINFO = 0x6
+- IFA_MULTICAST = 0x7
+- IFLA_UNSPEC = 0x0
+- IFLA_ADDRESS = 0x1
+- IFLA_BROADCAST = 0x2
+- IFLA_IFNAME = 0x3
+- IFLA_MTU = 0x4
+- IFLA_LINK = 0x5
+- IFLA_QDISC = 0x6
+- IFLA_STATS = 0x7
+- IFLA_COST = 0x8
+- IFLA_PRIORITY = 0x9
+- IFLA_MASTER = 0xa
+- IFLA_WIRELESS = 0xb
+- IFLA_PROTINFO = 0xc
+- IFLA_TXQLEN = 0xd
+- IFLA_MAP = 0xe
+- IFLA_WEIGHT = 0xf
+- IFLA_OPERSTATE = 0x10
+- IFLA_LINKMODE = 0x11
+- IFLA_LINKINFO = 0x12
+- IFLA_NET_NS_PID = 0x13
+- IFLA_IFALIAS = 0x14
+- IFLA_MAX = 0x2b
+- RT_SCOPE_UNIVERSE = 0x0
+- RT_SCOPE_SITE = 0xc8
+- RT_SCOPE_LINK = 0xfd
+- RT_SCOPE_HOST = 0xfe
+- RT_SCOPE_NOWHERE = 0xff
+- RT_TABLE_UNSPEC = 0x0
+- RT_TABLE_COMPAT = 0xfc
+- RT_TABLE_DEFAULT = 0xfd
+- RT_TABLE_MAIN = 0xfe
+- RT_TABLE_LOCAL = 0xff
+- RT_TABLE_MAX = 0xffffffff
+- RTA_UNSPEC = 0x0
+- RTA_DST = 0x1
+- RTA_SRC = 0x2
+- RTA_IIF = 0x3
+- RTA_OIF = 0x4
+- RTA_GATEWAY = 0x5
+- RTA_PRIORITY = 0x6
+- RTA_PREFSRC = 0x7
+- RTA_METRICS = 0x8
+- RTA_MULTIPATH = 0x9
+- RTA_FLOW = 0xb
+- RTA_CACHEINFO = 0xc
+- RTA_TABLE = 0xf
+- RTN_UNSPEC = 0x0
+- RTN_UNICAST = 0x1
+- RTN_LOCAL = 0x2
+- RTN_BROADCAST = 0x3
+- RTN_ANYCAST = 0x4
+- RTN_MULTICAST = 0x5
+- RTN_BLACKHOLE = 0x6
+- RTN_UNREACHABLE = 0x7
+- RTN_PROHIBIT = 0x8
+- RTN_THROW = 0x9
+- RTN_NAT = 0xa
+- RTN_XRESOLVE = 0xb
+- RTNLGRP_NONE = 0x0
+- RTNLGRP_LINK = 0x1
+- RTNLGRP_NOTIFY = 0x2
+- RTNLGRP_NEIGH = 0x3
+- RTNLGRP_TC = 0x4
+- RTNLGRP_IPV4_IFADDR = 0x5
+- RTNLGRP_IPV4_MROUTE = 0x6
+- RTNLGRP_IPV4_ROUTE = 0x7
+- RTNLGRP_IPV4_RULE = 0x8
+- RTNLGRP_IPV6_IFADDR = 0x9
+- RTNLGRP_IPV6_MROUTE = 0xa
+- RTNLGRP_IPV6_ROUTE = 0xb
+- RTNLGRP_IPV6_IFINFO = 0xc
+- RTNLGRP_IPV6_PREFIX = 0x12
+- RTNLGRP_IPV6_RULE = 0x13
+- RTNLGRP_ND_USEROPT = 0x14
+- SizeofNlMsghdr = 0x10
+- SizeofNlMsgerr = 0x14
+- SizeofRtGenmsg = 0x1
+- SizeofNlAttr = 0x4
+- SizeofRtAttr = 0x4
+- SizeofIfInfomsg = 0x10
+- SizeofIfAddrmsg = 0x8
+- SizeofRtMsg = 0xc
+- SizeofRtNexthop = 0x8
++ SizeofSockFprog = 0x10
+ )
+
+-type NlMsghdr struct {
+- Len uint32
+- Type uint16
+- Flags uint16
+- Seq uint32
+- Pid uint32
+-}
+-
+-type NlMsgerr struct {
+- Error int32
+- Msg NlMsghdr
+-}
+-
+-type RtGenmsg struct {
+- Family uint8
+-}
+-
+-type NlAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type RtAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type IfInfomsg struct {
+- Family uint8
+- X__ifi_pad uint8
+- Type uint16
+- Index int32
+- Flags uint32
+- Change uint32
+-}
+-
+-type IfAddrmsg struct {
+- Family uint8
+- Prefixlen uint8
+- Flags uint8
+- Scope uint8
+- Index uint32
+-}
+-
+-type RtMsg struct {
+- Family uint8
+- Dst_len uint8
+- Src_len uint8
+- Tos uint8
+- Table uint8
+- Protocol uint8
+- Scope uint8
+- Type uint8
+- Flags uint32
+-}
+-
+-type RtNexthop struct {
+- Len uint16
+- Flags uint8
+- Hops uint8
+- Ifindex int32
+-}
+-
+-const (
+- SizeofSockFilter = 0x8
+- SizeofSockFprog = 0x10
+-)
+-
+-type SockFilter struct {
+- Code uint16
+- Jt uint8
+- Jf uint8
+- K uint32
+-}
+-
+-type SockFprog struct {
+- Len uint16
+- Pad_cgo_0 [6]byte
+- Filter *SockFilter
+-}
+-
+-type InotifyEvent struct {
+- Wd int32
+- Mask uint32
+- Cookie uint32
+- Len uint32
+-}
+-
+-const SizeofInotifyEvent = 0x10
+-
+ type PtraceRegs struct {
+ Regs [32]uint64
+ Lo uint64
+@@ -609,70 +190,37 @@ type Sysinfo_t struct {
+ Freeswap uint64
+ Procs uint16
+ Pad uint16
+- Pad_cgo_0 [4]byte
+ Totalhigh uint64
+ Freehigh uint64
+ Unit uint32
+- X_f [0]int8
+- Pad_cgo_1 [4]byte
+-}
+-
+-type Utsname struct {
+- Sysname [65]int8
+- Nodename [65]int8
+- Release [65]int8
+- Version [65]int8
+- Machine [65]int8
+- Domainname [65]int8
++ _ [0]int8
++ _ [4]byte
+ }
+
+ type Ustat_t struct {
+- Tfree int32
+- Pad_cgo_0 [4]byte
+- Tinode uint64
+- Fname [6]int8
+- Fpack [6]int8
+- Pad_cgo_1 [4]byte
++ Tfree int32
++ Tinode uint64
++ Fname [6]int8
++ Fpack [6]int8
++ _ [4]byte
+ }
+
+ type EpollEvent struct {
+ Events uint32
++ _ int32
+ Fd int32
+ Pad int32
+ }
+
+ const (
+- AT_FDCWD = -0x64
+- AT_REMOVEDIR = 0x200
+- AT_SYMLINK_FOLLOW = 0x400
+- AT_SYMLINK_NOFOLLOW = 0x100
+-)
+-
+-type PollFd struct {
+- Fd int32
+- Events int16
+- Revents int16
+-}
+-
+-const (
+- POLLIN = 0x1
+- POLLPRI = 0x2
+- POLLOUT = 0x4
+ POLLRDHUP = 0x2000
+- POLLERR = 0x8
+- POLLHUP = 0x10
+- POLLNVAL = 0x20
+ )
+
+ type Sigset_t struct {
+- X__val [16]uint64
++ Val [16]uint64
+ }
+
+-const RNDGETENTCNT = 0x40045200
+-
+-const PERF_IOC_FLAG_GROUP = 0x1
+-
+-const _SC_PAGESIZE = 0x1e
++const _C__NSIG = 0x80
+
+ type Termios struct {
+ Iflag uint32
+@@ -685,20 +233,11 @@ type Termios struct {
+ Ospeed uint32
+ }
+
+-type Winsize struct {
+- Row uint16
+- Col uint16
+- Xpixel uint16
+- Ypixel uint16
+-}
+-
+ type Taskstats struct {
+ Version uint16
+- Pad_cgo_0 [2]byte
+ Ac_exitcode uint32
+ Ac_flag uint8
+ Ac_nice uint8
+- Pad_cgo_1 [6]byte
+ Cpu_count uint64
+ Cpu_delay_total uint64
+ Blkio_count uint64
+@@ -710,13 +249,12 @@ type Taskstats struct {
+ Ac_comm [32]int8
+ Ac_sched uint8
+ Ac_pad [3]uint8
+- Pad_cgo_2 [4]byte
++ _ [4]byte
+ Ac_uid uint32
+ Ac_gid uint32
+ Ac_pid uint32
+ Ac_ppid uint32
+ Ac_btime uint32
+- Pad_cgo_3 [4]byte
+ Ac_etime uint64
+ Ac_utime uint64
+ Ac_stime uint64
+@@ -740,55 +278,319 @@ type Taskstats struct {
+ Cpu_scaled_run_real_total uint64
+ Freepages_count uint64
+ Freepages_delay_total uint64
++ Thrashing_count uint64
++ Thrashing_delay_total uint64
++ Ac_btime64 uint64
+ }
+
++type cpuMask uint64
++
+ const (
+- TASKSTATS_CMD_UNSPEC = 0x0
+- TASKSTATS_CMD_GET = 0x1
+- TASKSTATS_CMD_NEW = 0x2
+- TASKSTATS_TYPE_UNSPEC = 0x0
+- TASKSTATS_TYPE_PID = 0x1
+- TASKSTATS_TYPE_TGID = 0x2
+- TASKSTATS_TYPE_STATS = 0x3
+- TASKSTATS_TYPE_AGGR_PID = 0x4
+- TASKSTATS_TYPE_AGGR_TGID = 0x5
+- TASKSTATS_TYPE_NULL = 0x6
+- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
+- TASKSTATS_CMD_ATTR_PID = 0x1
+- TASKSTATS_CMD_ATTR_TGID = 0x2
+- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
+- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
++ _NCPUBITS = 0x40
+ )
+
+-type Genlmsghdr struct {
+- Cmd uint8
+- Version uint8
+- Reserved uint16
++const (
++ CBitFieldMaskBit0 = 0x8000000000000000
++ CBitFieldMaskBit1 = 0x4000000000000000
++ CBitFieldMaskBit2 = 0x2000000000000000
++ CBitFieldMaskBit3 = 0x1000000000000000
++ CBitFieldMaskBit4 = 0x800000000000000
++ CBitFieldMaskBit5 = 0x400000000000000
++ CBitFieldMaskBit6 = 0x200000000000000
++ CBitFieldMaskBit7 = 0x100000000000000
++ CBitFieldMaskBit8 = 0x80000000000000
++ CBitFieldMaskBit9 = 0x40000000000000
++ CBitFieldMaskBit10 = 0x20000000000000
++ CBitFieldMaskBit11 = 0x10000000000000
++ CBitFieldMaskBit12 = 0x8000000000000
++ CBitFieldMaskBit13 = 0x4000000000000
++ CBitFieldMaskBit14 = 0x2000000000000
++ CBitFieldMaskBit15 = 0x1000000000000
++ CBitFieldMaskBit16 = 0x800000000000
++ CBitFieldMaskBit17 = 0x400000000000
++ CBitFieldMaskBit18 = 0x200000000000
++ CBitFieldMaskBit19 = 0x100000000000
++ CBitFieldMaskBit20 = 0x80000000000
++ CBitFieldMaskBit21 = 0x40000000000
++ CBitFieldMaskBit22 = 0x20000000000
++ CBitFieldMaskBit23 = 0x10000000000
++ CBitFieldMaskBit24 = 0x8000000000
++ CBitFieldMaskBit25 = 0x4000000000
++ CBitFieldMaskBit26 = 0x2000000000
++ CBitFieldMaskBit27 = 0x1000000000
++ CBitFieldMaskBit28 = 0x800000000
++ CBitFieldMaskBit29 = 0x400000000
++ CBitFieldMaskBit30 = 0x200000000
++ CBitFieldMaskBit31 = 0x100000000
++ CBitFieldMaskBit32 = 0x80000000
++ CBitFieldMaskBit33 = 0x40000000
++ CBitFieldMaskBit34 = 0x20000000
++ CBitFieldMaskBit35 = 0x10000000
++ CBitFieldMaskBit36 = 0x8000000
++ CBitFieldMaskBit37 = 0x4000000
++ CBitFieldMaskBit38 = 0x2000000
++ CBitFieldMaskBit39 = 0x1000000
++ CBitFieldMaskBit40 = 0x800000
++ CBitFieldMaskBit41 = 0x400000
++ CBitFieldMaskBit42 = 0x200000
++ CBitFieldMaskBit43 = 0x100000
++ CBitFieldMaskBit44 = 0x80000
++ CBitFieldMaskBit45 = 0x40000
++ CBitFieldMaskBit46 = 0x20000
++ CBitFieldMaskBit47 = 0x10000
++ CBitFieldMaskBit48 = 0x8000
++ CBitFieldMaskBit49 = 0x4000
++ CBitFieldMaskBit50 = 0x2000
++ CBitFieldMaskBit51 = 0x1000
++ CBitFieldMaskBit52 = 0x800
++ CBitFieldMaskBit53 = 0x400
++ CBitFieldMaskBit54 = 0x200
++ CBitFieldMaskBit55 = 0x100
++ CBitFieldMaskBit56 = 0x80
++ CBitFieldMaskBit57 = 0x40
++ CBitFieldMaskBit58 = 0x20
++ CBitFieldMaskBit59 = 0x10
++ CBitFieldMaskBit60 = 0x8
++ CBitFieldMaskBit61 = 0x4
++ CBitFieldMaskBit62 = 0x2
++ CBitFieldMaskBit63 = 0x1
++)
++
++type SockaddrStorage struct {
++ Family uint16
++ _ [118]int8
++ _ uint64
++}
++
++type HDGeometry struct {
++ Heads uint8
++ Sectors uint8
++ Cylinders uint16
++ Start uint64
++}
++
++type Statfs_t struct {
++ Type int64
++ Bsize int64
++ Frsize int64
++ Blocks uint64
++ Bfree uint64
++ Files uint64
++ Ffree uint64
++ Bavail uint64
++ Fsid Fsid
++ Namelen int64
++ Flags int64
++ Spare [5]int64
++}
++
++type TpacketHdr struct {
++ Status uint64
++ Len uint32
++ Snaplen uint32
++ Mac uint16
++ Net uint16
++ Sec uint32
++ Usec uint32
++ _ [4]byte
+ }
+
+ const (
+- CTRL_CMD_UNSPEC = 0x0
+- CTRL_CMD_NEWFAMILY = 0x1
+- CTRL_CMD_DELFAMILY = 0x2
+- CTRL_CMD_GETFAMILY = 0x3
+- CTRL_CMD_NEWOPS = 0x4
+- CTRL_CMD_DELOPS = 0x5
+- CTRL_CMD_GETOPS = 0x6
+- CTRL_CMD_NEWMCAST_GRP = 0x7
+- CTRL_CMD_DELMCAST_GRP = 0x8
+- CTRL_CMD_GETMCAST_GRP = 0x9
+- CTRL_ATTR_UNSPEC = 0x0
+- CTRL_ATTR_FAMILY_ID = 0x1
+- CTRL_ATTR_FAMILY_NAME = 0x2
+- CTRL_ATTR_VERSION = 0x3
+- CTRL_ATTR_HDRSIZE = 0x4
+- CTRL_ATTR_MAXATTR = 0x5
+- CTRL_ATTR_OPS = 0x6
+- CTRL_ATTR_MCAST_GROUPS = 0x7
+- 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
++ SizeofTpacketHdr = 0x20
+ )
++
++type RTCPLLInfo struct {
++ Ctrl int32
++ Value int32
++ Max int32
++ Min int32
++ Posmult int32
++ Negmult int32
++ Clock int64
++}
++
++type BlkpgPartition struct {
++ Start int64
++ Length int64
++ Pno int32
++ Devname [64]uint8
++ Volname [64]uint8
++ _ [4]byte
++}
++
++const (
++ BLKPG = 0x20001269
++)
++
++type XDPUmemReg struct {
++ Addr uint64
++ Len uint64
++ Size uint32
++ Headroom uint32
++ Flags uint32
++ _ [4]byte
++}
++
++type CryptoUserAlg struct {
++ Name [64]int8
++ Driver_name [64]int8
++ Module_name [64]int8
++ Type uint32
++ Mask uint32
++ Refcnt uint32
++ Flags uint32
++}
++
++type CryptoStatAEAD struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatAKCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Verify_cnt uint64
++ Sign_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCompress struct {
++ Type [64]int8
++ Compress_cnt uint64
++ Compress_tlen uint64
++ Decompress_cnt uint64
++ Decompress_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatHash struct {
++ Type [64]int8
++ Hash_cnt uint64
++ Hash_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatKPP struct {
++ Type [64]int8
++ Setsecret_cnt uint64
++ Generate_public_key_cnt uint64
++ Compute_shared_secret_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatRNG struct {
++ Type [64]int8
++ Generate_cnt uint64
++ Generate_tlen uint64
++ Seed_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatLarval struct {
++ Type [64]int8
++}
++
++type CryptoReportLarval struct {
++ Type [64]int8
++}
++
++type CryptoReportHash struct {
++ Type [64]int8
++ Blocksize uint32
++ Digestsize uint32
++}
++
++type CryptoReportCipher struct {
++ Type [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++}
++
++type CryptoReportBlkCipher struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++ Ivsize uint32
++}
++
++type CryptoReportAEAD struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Maxauthsize uint32
++ Ivsize uint32
++}
++
++type CryptoReportComp struct {
++ Type [64]int8
++}
++
++type CryptoReportRNG struct {
++ Type [64]int8
++ Seedsize uint32
++}
++
++type CryptoReportAKCipher struct {
++ Type [64]int8
++}
++
++type CryptoReportKPP struct {
++ Type [64]int8
++}
++
++type CryptoReportAcomp struct {
++ Type [64]int8
++}
++
++type LoopInfo struct {
++ Number int32
++ Device uint32
++ Inode uint64
++ Rdevice uint32
++ Offset int32
++ Encrypt_type int32
++ Encrypt_key_size int32
++ Flags int32
++ Name [64]int8
++ Encrypt_key [32]uint8
++ Init [2]uint64
++ Reserved [4]int8
++ _ [4]byte
++}
++
++type TIPCSubscr struct {
++ Seq TIPCServiceRange
++ Timeout uint32
++ Filter uint32
++ Handle [8]int8
++}
++
++type TIPCSIOCLNReq struct {
++ Peer uint32
++ Id uint32
++ Linkname [68]int8
++}
++
++type TIPCSIOCNodeIDReq struct {
++ Peer uint32
++ Id [16]int8
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go
+index f9bd1ab0..16add5a2 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go
+@@ -6,19 +6,12 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
+- PathMax = 0x1000
++ SizeofPtr = 0x8
++ SizeofLong = 0x8
+ )
+
+ type (
+- _C_short int16
+- _C_int int32
+- _C_long int64
+- _C_long_long int64
++ _C_long int64
+ )
+
+ type Timespec struct {
+@@ -33,13 +26,11 @@ type Timeval struct {
+
+ type Timex struct {
+ Modes uint32
+- Pad_cgo_0 [4]byte
+ Offset int64
+ Freq int64
+ Maxerror int64
+ Esterror int64
+ Status int32
+- Pad_cgo_1 [4]byte
+ Constant int64
+ Precision int64
+ Tolerance int64
+@@ -48,14 +39,13 @@ type Timex struct {
+ Ppsfreq int64
+ Jitter int64
+ Shift int32
+- Pad_cgo_2 [4]byte
+ Stabil int64
+ Jitcnt int64
+ Calcnt int64
+ Errcnt int64
+ Stbcnt int64
+ Tai int32
+- Pad_cgo_3 [44]byte
++ _ [44]byte
+ }
+
+ type Time_t int64
+@@ -91,13 +81,6 @@ type Rusage struct {
+ Nivcsw int64
+ }
+
+-type Rlimit struct {
+- Cur uint64
+- Max uint64
+-}
+-
+-type _Gid_t uint32
+-
+ type Stat_t struct {
+ Dev uint32
+ Pad1 [3]uint32
+@@ -117,139 +100,29 @@ type Stat_t struct {
+ Blocks int64
+ }
+
+-type Statfs_t struct {
+- Type int64
+- Bsize int64
+- Frsize int64
+- Blocks uint64
+- Bfree uint64
+- Files uint64
+- Ffree uint64
+- Bavail uint64
+- Fsid Fsid
+- Namelen int64
+- Flags int64
+- Spare [5]int64
+-}
+-
+ type Dirent struct {
+- Ino uint64
+- Off int64
+- Reclen uint16
+- Type uint8
+- Name [256]int8
+- Pad_cgo_0 [5]byte
+-}
+-
+-type Fsid struct {
+- X__val [2]int32
++ Ino uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Name [256]int8
++ _ [5]byte
+ }
+
+ type Flock_t struct {
+- Type int16
+- Whence int16
+- Pad_cgo_0 [4]byte
+- Start int64
+- Len int64
+- Pid int32
+- Pad_cgo_1 [4]byte
+-}
+-
+-type FscryptPolicy struct {
+- Version uint8
+- Contents_encryption_mode uint8
+- Filenames_encryption_mode uint8
+- Flags uint8
+- Master_key_descriptor [8]uint8
+-}
+-
+-type FscryptKey struct {
+- Mode uint32
+- Raw [64]uint8
+- Size uint32
+-}
+-
+-type KeyctlDHParams struct {
+- Private int32
+- Prime int32
+- Base int32
++ Type int16
++ Whence int16
++ Start int64
++ Len int64
++ Pid int32
++ _ [4]byte
+ }
+
+ const (
+- FADV_NORMAL = 0x0
+- FADV_RANDOM = 0x1
+- FADV_SEQUENTIAL = 0x2
+- FADV_WILLNEED = 0x3
+- FADV_DONTNEED = 0x4
+- FADV_NOREUSE = 0x5
++ FADV_DONTNEED = 0x4
++ FADV_NOREUSE = 0x5
+ )
+
+-type RawSockaddrInet4 struct {
+- Family uint16
+- Port uint16
+- Addr [4]byte /* in_addr */
+- Zero [8]uint8
+-}
+-
+-type RawSockaddrInet6 struct {
+- Family uint16
+- Port uint16
+- Flowinfo uint32
+- Addr [16]byte /* in6_addr */
+- Scope_id uint32
+-}
+-
+-type RawSockaddrUnix struct {
+- Family uint16
+- Path [108]int8
+-}
+-
+-type RawSockaddrLinklayer struct {
+- Family uint16
+- Protocol uint16
+- Ifindex int32
+- Hatype uint16
+- Pkttype uint8
+- Halen uint8
+- Addr [8]uint8
+-}
+-
+-type RawSockaddrNetlink struct {
+- Family uint16
+- Pad uint16
+- Pid uint32
+- Groups uint32
+-}
+-
+-type RawSockaddrHCI struct {
+- Family uint16
+- Dev uint16
+- Channel uint16
+-}
+-
+-type RawSockaddrCAN struct {
+- Family uint16
+- Pad_cgo_0 [2]byte
+- Ifindex int32
+- Addr [8]byte
+-}
+-
+-type RawSockaddrALG struct {
+- Family uint16
+- Type [14]uint8
+- Feat uint32
+- Mask uint32
+- Name [64]uint8
+-}
+-
+-type RawSockaddrVM struct {
+- Family uint16
+- Reserved1 uint16
+- Port uint32
+- Cid uint32
+- Zero [4]uint8
+-}
+-
+ type RawSockaddr struct {
+ Family uint16
+ Data [14]int8
+@@ -260,51 +133,20 @@ type RawSockaddrAny struct {
+ Pad [96]int8
+ }
+
+-type _Socklen uint32
+-
+-type Linger struct {
+- Onoff int32
+- Linger int32
+-}
+-
+ type Iovec struct {
+ Base *byte
+ Len uint64
+ }
+
+-type IPMreq struct {
+- Multiaddr [4]byte /* in_addr */
+- Interface [4]byte /* in_addr */
+-}
+-
+-type IPMreqn struct {
+- Multiaddr [4]byte /* in_addr */
+- Address [4]byte /* in_addr */
+- Ifindex int32
+-}
+-
+-type IPv6Mreq struct {
+- Multiaddr [16]byte /* in6_addr */
+- Interface uint32
+-}
+-
+-type PacketMreq struct {
+- Ifindex int32
+- Type uint16
+- Alen uint16
+- Address [8]uint8
+-}
+-
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+- Pad_cgo_0 [4]byte
+ Iov *Iovec
+ Iovlen uint64
+ Control *byte
+ Controllen uint64
+ Flags int32
+- Pad_cgo_1 [4]byte
++ _ [4]byte
+ }
+
+ type Cmsghdr struct {
+@@ -313,277 +155,16 @@ type Cmsghdr struct {
+ Type int32
+ }
+
+-type Inet4Pktinfo struct {
+- Ifindex int32
+- Spec_dst [4]byte /* in_addr */
+- Addr [4]byte /* in_addr */
+-}
+-
+-type Inet6Pktinfo struct {
+- Addr [16]byte /* in6_addr */
+- Ifindex uint32
+-}
+-
+-type IPv6MTUInfo struct {
+- Addr RawSockaddrInet6
+- Mtu uint32
+-}
+-
+-type ICMPv6Filter struct {
+- Data [8]uint32
+-}
+-
+-type Ucred struct {
+- Pid int32
+- Uid uint32
+- Gid uint32
+-}
+-
+-type TCPInfo struct {
+- State uint8
+- Ca_state uint8
+- Retransmits uint8
+- Probes uint8
+- Backoff uint8
+- Options uint8
+- Pad_cgo_0 [2]byte
+- Rto uint32
+- Ato uint32
+- Snd_mss uint32
+- Rcv_mss uint32
+- Unacked uint32
+- Sacked uint32
+- Lost uint32
+- Retrans uint32
+- Fackets uint32
+- Last_data_sent uint32
+- Last_ack_sent uint32
+- Last_data_recv uint32
+- Last_ack_recv uint32
+- Pmtu uint32
+- Rcv_ssthresh uint32
+- Rtt uint32
+- Rttvar uint32
+- Snd_ssthresh uint32
+- Snd_cwnd uint32
+- Advmss uint32
+- Reordering uint32
+- Rcv_rtt uint32
+- Rcv_space uint32
+- Total_retrans uint32
+-}
+-
+ const (
+- SizeofSockaddrInet4 = 0x10
+- SizeofSockaddrInet6 = 0x1c
+- SizeofSockaddrAny = 0x70
+- SizeofSockaddrUnix = 0x6e
+- SizeofSockaddrLinklayer = 0x14
+- SizeofSockaddrNetlink = 0xc
+- SizeofSockaddrHCI = 0x6
+- SizeofSockaddrCAN = 0x10
+- SizeofSockaddrALG = 0x58
+- SizeofSockaddrVM = 0x10
+- SizeofLinger = 0x8
+- SizeofIovec = 0x10
+- SizeofIPMreq = 0x8
+- SizeofIPMreqn = 0xc
+- SizeofIPv6Mreq = 0x14
+- SizeofPacketMreq = 0x10
+- SizeofMsghdr = 0x38
+- SizeofCmsghdr = 0x10
+- SizeofInet4Pktinfo = 0xc
+- SizeofInet6Pktinfo = 0x14
+- SizeofIPv6MTUInfo = 0x20
+- SizeofICMPv6Filter = 0x20
+- SizeofUcred = 0xc
+- SizeofTCPInfo = 0x68
++ SizeofIovec = 0x10
++ SizeofMsghdr = 0x38
++ SizeofCmsghdr = 0x10
+ )
+
+ const (
+- IFA_UNSPEC = 0x0
+- IFA_ADDRESS = 0x1
+- IFA_LOCAL = 0x2
+- IFA_LABEL = 0x3
+- IFA_BROADCAST = 0x4
+- IFA_ANYCAST = 0x5
+- IFA_CACHEINFO = 0x6
+- IFA_MULTICAST = 0x7
+- IFLA_UNSPEC = 0x0
+- IFLA_ADDRESS = 0x1
+- IFLA_BROADCAST = 0x2
+- IFLA_IFNAME = 0x3
+- IFLA_MTU = 0x4
+- IFLA_LINK = 0x5
+- IFLA_QDISC = 0x6
+- IFLA_STATS = 0x7
+- IFLA_COST = 0x8
+- IFLA_PRIORITY = 0x9
+- IFLA_MASTER = 0xa
+- IFLA_WIRELESS = 0xb
+- IFLA_PROTINFO = 0xc
+- IFLA_TXQLEN = 0xd
+- IFLA_MAP = 0xe
+- IFLA_WEIGHT = 0xf
+- IFLA_OPERSTATE = 0x10
+- IFLA_LINKMODE = 0x11
+- IFLA_LINKINFO = 0x12
+- IFLA_NET_NS_PID = 0x13
+- IFLA_IFALIAS = 0x14
+- IFLA_MAX = 0x2b
+- RT_SCOPE_UNIVERSE = 0x0
+- RT_SCOPE_SITE = 0xc8
+- RT_SCOPE_LINK = 0xfd
+- RT_SCOPE_HOST = 0xfe
+- RT_SCOPE_NOWHERE = 0xff
+- RT_TABLE_UNSPEC = 0x0
+- RT_TABLE_COMPAT = 0xfc
+- RT_TABLE_DEFAULT = 0xfd
+- RT_TABLE_MAIN = 0xfe
+- RT_TABLE_LOCAL = 0xff
+- RT_TABLE_MAX = 0xffffffff
+- RTA_UNSPEC = 0x0
+- RTA_DST = 0x1
+- RTA_SRC = 0x2
+- RTA_IIF = 0x3
+- RTA_OIF = 0x4
+- RTA_GATEWAY = 0x5
+- RTA_PRIORITY = 0x6
+- RTA_PREFSRC = 0x7
+- RTA_METRICS = 0x8
+- RTA_MULTIPATH = 0x9
+- RTA_FLOW = 0xb
+- RTA_CACHEINFO = 0xc
+- RTA_TABLE = 0xf
+- RTN_UNSPEC = 0x0
+- RTN_UNICAST = 0x1
+- RTN_LOCAL = 0x2
+- RTN_BROADCAST = 0x3
+- RTN_ANYCAST = 0x4
+- RTN_MULTICAST = 0x5
+- RTN_BLACKHOLE = 0x6
+- RTN_UNREACHABLE = 0x7
+- RTN_PROHIBIT = 0x8
+- RTN_THROW = 0x9
+- RTN_NAT = 0xa
+- RTN_XRESOLVE = 0xb
+- RTNLGRP_NONE = 0x0
+- RTNLGRP_LINK = 0x1
+- RTNLGRP_NOTIFY = 0x2
+- RTNLGRP_NEIGH = 0x3
+- RTNLGRP_TC = 0x4
+- RTNLGRP_IPV4_IFADDR = 0x5
+- RTNLGRP_IPV4_MROUTE = 0x6
+- RTNLGRP_IPV4_ROUTE = 0x7
+- RTNLGRP_IPV4_RULE = 0x8
+- RTNLGRP_IPV6_IFADDR = 0x9
+- RTNLGRP_IPV6_MROUTE = 0xa
+- RTNLGRP_IPV6_ROUTE = 0xb
+- RTNLGRP_IPV6_IFINFO = 0xc
+- RTNLGRP_IPV6_PREFIX = 0x12
+- RTNLGRP_IPV6_RULE = 0x13
+- RTNLGRP_ND_USEROPT = 0x14
+- SizeofNlMsghdr = 0x10
+- SizeofNlMsgerr = 0x14
+- SizeofRtGenmsg = 0x1
+- SizeofNlAttr = 0x4
+- SizeofRtAttr = 0x4
+- SizeofIfInfomsg = 0x10
+- SizeofIfAddrmsg = 0x8
+- SizeofRtMsg = 0xc
+- SizeofRtNexthop = 0x8
++ SizeofSockFprog = 0x10
+ )
+
+-type NlMsghdr struct {
+- Len uint32
+- Type uint16
+- Flags uint16
+- Seq uint32
+- Pid uint32
+-}
+-
+-type NlMsgerr struct {
+- Error int32
+- Msg NlMsghdr
+-}
+-
+-type RtGenmsg struct {
+- Family uint8
+-}
+-
+-type NlAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type RtAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type IfInfomsg struct {
+- Family uint8
+- X__ifi_pad uint8
+- Type uint16
+- Index int32
+- Flags uint32
+- Change uint32
+-}
+-
+-type IfAddrmsg struct {
+- Family uint8
+- Prefixlen uint8
+- Flags uint8
+- Scope uint8
+- Index uint32
+-}
+-
+-type RtMsg struct {
+- Family uint8
+- Dst_len uint8
+- Src_len uint8
+- Tos uint8
+- Table uint8
+- Protocol uint8
+- Scope uint8
+- Type uint8
+- Flags uint32
+-}
+-
+-type RtNexthop struct {
+- Len uint16
+- Flags uint8
+- Hops uint8
+- Ifindex int32
+-}
+-
+-const (
+- SizeofSockFilter = 0x8
+- SizeofSockFprog = 0x10
+-)
+-
+-type SockFilter struct {
+- Code uint16
+- Jt uint8
+- Jf uint8
+- K uint32
+-}
+-
+-type SockFprog struct {
+- Len uint16
+- Pad_cgo_0 [6]byte
+- Filter *SockFilter
+-}
+-
+-type InotifyEvent struct {
+- Wd int32
+- Mask uint32
+- Cookie uint32
+- Len uint32
+-}
+-
+-const SizeofInotifyEvent = 0x10
+-
+ type PtraceRegs struct {
+ Regs [32]uint64
+ Lo uint64
+@@ -609,70 +190,37 @@ type Sysinfo_t struct {
+ Freeswap uint64
+ Procs uint16
+ Pad uint16
+- Pad_cgo_0 [4]byte
+ Totalhigh uint64
+ Freehigh uint64
+ Unit uint32
+- X_f [0]int8
+- Pad_cgo_1 [4]byte
+-}
+-
+-type Utsname struct {
+- Sysname [65]int8
+- Nodename [65]int8
+- Release [65]int8
+- Version [65]int8
+- Machine [65]int8
+- Domainname [65]int8
++ _ [0]int8
++ _ [4]byte
+ }
+
+ type Ustat_t struct {
+- Tfree int32
+- Pad_cgo_0 [4]byte
+- Tinode uint64
+- Fname [6]int8
+- Fpack [6]int8
+- Pad_cgo_1 [4]byte
++ Tfree int32
++ Tinode uint64
++ Fname [6]int8
++ Fpack [6]int8
++ _ [4]byte
+ }
+
+ type EpollEvent struct {
+ Events uint32
++ _ int32
+ Fd int32
+ Pad int32
+ }
+
+ const (
+- AT_FDCWD = -0x64
+- AT_REMOVEDIR = 0x200
+- AT_SYMLINK_FOLLOW = 0x400
+- AT_SYMLINK_NOFOLLOW = 0x100
+-)
+-
+-type PollFd struct {
+- Fd int32
+- Events int16
+- Revents int16
+-}
+-
+-const (
+- POLLIN = 0x1
+- POLLPRI = 0x2
+- POLLOUT = 0x4
+ POLLRDHUP = 0x2000
+- POLLERR = 0x8
+- POLLHUP = 0x10
+- POLLNVAL = 0x20
+ )
+
+ type Sigset_t struct {
+- X__val [16]uint64
++ Val [16]uint64
+ }
+
+-const RNDGETENTCNT = 0x40045200
+-
+-const PERF_IOC_FLAG_GROUP = 0x1
+-
+-const _SC_PAGESIZE = 0x1e
++const _C__NSIG = 0x80
+
+ type Termios struct {
+ Iflag uint32
+@@ -685,20 +233,11 @@ type Termios struct {
+ Ospeed uint32
+ }
+
+-type Winsize struct {
+- Row uint16
+- Col uint16
+- Xpixel uint16
+- Ypixel uint16
+-}
+-
+ type Taskstats struct {
+ Version uint16
+- Pad_cgo_0 [2]byte
+ Ac_exitcode uint32
+ Ac_flag uint8
+ Ac_nice uint8
+- Pad_cgo_1 [6]byte
+ Cpu_count uint64
+ Cpu_delay_total uint64
+ Blkio_count uint64
+@@ -710,13 +249,12 @@ type Taskstats struct {
+ Ac_comm [32]int8
+ Ac_sched uint8
+ Ac_pad [3]uint8
+- Pad_cgo_2 [4]byte
++ _ [4]byte
+ Ac_uid uint32
+ Ac_gid uint32
+ Ac_pid uint32
+ Ac_ppid uint32
+ Ac_btime uint32
+- Pad_cgo_3 [4]byte
+ Ac_etime uint64
+ Ac_utime uint64
+ Ac_stime uint64
+@@ -740,55 +278,319 @@ type Taskstats struct {
+ Cpu_scaled_run_real_total uint64
+ Freepages_count uint64
+ Freepages_delay_total uint64
++ Thrashing_count uint64
++ Thrashing_delay_total uint64
++ Ac_btime64 uint64
+ }
+
++type cpuMask uint64
++
+ const (
+- TASKSTATS_CMD_UNSPEC = 0x0
+- TASKSTATS_CMD_GET = 0x1
+- TASKSTATS_CMD_NEW = 0x2
+- TASKSTATS_TYPE_UNSPEC = 0x0
+- TASKSTATS_TYPE_PID = 0x1
+- TASKSTATS_TYPE_TGID = 0x2
+- TASKSTATS_TYPE_STATS = 0x3
+- TASKSTATS_TYPE_AGGR_PID = 0x4
+- TASKSTATS_TYPE_AGGR_TGID = 0x5
+- TASKSTATS_TYPE_NULL = 0x6
+- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
+- TASKSTATS_CMD_ATTR_PID = 0x1
+- TASKSTATS_CMD_ATTR_TGID = 0x2
+- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
+- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
++ _NCPUBITS = 0x40
+ )
+
+-type Genlmsghdr struct {
+- Cmd uint8
+- Version uint8
+- Reserved uint16
++const (
++ CBitFieldMaskBit0 = 0x1
++ CBitFieldMaskBit1 = 0x2
++ CBitFieldMaskBit2 = 0x4
++ CBitFieldMaskBit3 = 0x8
++ CBitFieldMaskBit4 = 0x10
++ CBitFieldMaskBit5 = 0x20
++ CBitFieldMaskBit6 = 0x40
++ CBitFieldMaskBit7 = 0x80
++ CBitFieldMaskBit8 = 0x100
++ CBitFieldMaskBit9 = 0x200
++ CBitFieldMaskBit10 = 0x400
++ CBitFieldMaskBit11 = 0x800
++ CBitFieldMaskBit12 = 0x1000
++ CBitFieldMaskBit13 = 0x2000
++ CBitFieldMaskBit14 = 0x4000
++ CBitFieldMaskBit15 = 0x8000
++ CBitFieldMaskBit16 = 0x10000
++ CBitFieldMaskBit17 = 0x20000
++ CBitFieldMaskBit18 = 0x40000
++ CBitFieldMaskBit19 = 0x80000
++ CBitFieldMaskBit20 = 0x100000
++ CBitFieldMaskBit21 = 0x200000
++ CBitFieldMaskBit22 = 0x400000
++ CBitFieldMaskBit23 = 0x800000
++ CBitFieldMaskBit24 = 0x1000000
++ CBitFieldMaskBit25 = 0x2000000
++ CBitFieldMaskBit26 = 0x4000000
++ CBitFieldMaskBit27 = 0x8000000
++ CBitFieldMaskBit28 = 0x10000000
++ CBitFieldMaskBit29 = 0x20000000
++ CBitFieldMaskBit30 = 0x40000000
++ CBitFieldMaskBit31 = 0x80000000
++ CBitFieldMaskBit32 = 0x100000000
++ CBitFieldMaskBit33 = 0x200000000
++ CBitFieldMaskBit34 = 0x400000000
++ CBitFieldMaskBit35 = 0x800000000
++ CBitFieldMaskBit36 = 0x1000000000
++ CBitFieldMaskBit37 = 0x2000000000
++ CBitFieldMaskBit38 = 0x4000000000
++ CBitFieldMaskBit39 = 0x8000000000
++ CBitFieldMaskBit40 = 0x10000000000
++ CBitFieldMaskBit41 = 0x20000000000
++ CBitFieldMaskBit42 = 0x40000000000
++ CBitFieldMaskBit43 = 0x80000000000
++ CBitFieldMaskBit44 = 0x100000000000
++ CBitFieldMaskBit45 = 0x200000000000
++ CBitFieldMaskBit46 = 0x400000000000
++ CBitFieldMaskBit47 = 0x800000000000
++ CBitFieldMaskBit48 = 0x1000000000000
++ CBitFieldMaskBit49 = 0x2000000000000
++ CBitFieldMaskBit50 = 0x4000000000000
++ CBitFieldMaskBit51 = 0x8000000000000
++ CBitFieldMaskBit52 = 0x10000000000000
++ CBitFieldMaskBit53 = 0x20000000000000
++ CBitFieldMaskBit54 = 0x40000000000000
++ CBitFieldMaskBit55 = 0x80000000000000
++ CBitFieldMaskBit56 = 0x100000000000000
++ CBitFieldMaskBit57 = 0x200000000000000
++ CBitFieldMaskBit58 = 0x400000000000000
++ CBitFieldMaskBit59 = 0x800000000000000
++ CBitFieldMaskBit60 = 0x1000000000000000
++ CBitFieldMaskBit61 = 0x2000000000000000
++ CBitFieldMaskBit62 = 0x4000000000000000
++ CBitFieldMaskBit63 = 0x8000000000000000
++)
++
++type SockaddrStorage struct {
++ Family uint16
++ _ [118]int8
++ _ uint64
++}
++
++type HDGeometry struct {
++ Heads uint8
++ Sectors uint8
++ Cylinders uint16
++ Start uint64
++}
++
++type Statfs_t struct {
++ Type int64
++ Bsize int64
++ Frsize int64
++ Blocks uint64
++ Bfree uint64
++ Files uint64
++ Ffree uint64
++ Bavail uint64
++ Fsid Fsid
++ Namelen int64
++ Flags int64
++ Spare [5]int64
++}
++
++type TpacketHdr struct {
++ Status uint64
++ Len uint32
++ Snaplen uint32
++ Mac uint16
++ Net uint16
++ Sec uint32
++ Usec uint32
++ _ [4]byte
+ }
+
+ const (
+- CTRL_CMD_UNSPEC = 0x0
+- CTRL_CMD_NEWFAMILY = 0x1
+- CTRL_CMD_DELFAMILY = 0x2
+- CTRL_CMD_GETFAMILY = 0x3
+- CTRL_CMD_NEWOPS = 0x4
+- CTRL_CMD_DELOPS = 0x5
+- CTRL_CMD_GETOPS = 0x6
+- CTRL_CMD_NEWMCAST_GRP = 0x7
+- CTRL_CMD_DELMCAST_GRP = 0x8
+- CTRL_CMD_GETMCAST_GRP = 0x9
+- CTRL_ATTR_UNSPEC = 0x0
+- CTRL_ATTR_FAMILY_ID = 0x1
+- CTRL_ATTR_FAMILY_NAME = 0x2
+- CTRL_ATTR_VERSION = 0x3
+- CTRL_ATTR_HDRSIZE = 0x4
+- CTRL_ATTR_MAXATTR = 0x5
+- CTRL_ATTR_OPS = 0x6
+- CTRL_ATTR_MCAST_GROUPS = 0x7
+- 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
++ SizeofTpacketHdr = 0x20
+ )
++
++type RTCPLLInfo struct {
++ Ctrl int32
++ Value int32
++ Max int32
++ Min int32
++ Posmult int32
++ Negmult int32
++ Clock int64
++}
++
++type BlkpgPartition struct {
++ Start int64
++ Length int64
++ Pno int32
++ Devname [64]uint8
++ Volname [64]uint8
++ _ [4]byte
++}
++
++const (
++ BLKPG = 0x20001269
++)
++
++type XDPUmemReg struct {
++ Addr uint64
++ Len uint64
++ Size uint32
++ Headroom uint32
++ Flags uint32
++ _ [4]byte
++}
++
++type CryptoUserAlg struct {
++ Name [64]int8
++ Driver_name [64]int8
++ Module_name [64]int8
++ Type uint32
++ Mask uint32
++ Refcnt uint32
++ Flags uint32
++}
++
++type CryptoStatAEAD struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatAKCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Verify_cnt uint64
++ Sign_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCompress struct {
++ Type [64]int8
++ Compress_cnt uint64
++ Compress_tlen uint64
++ Decompress_cnt uint64
++ Decompress_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatHash struct {
++ Type [64]int8
++ Hash_cnt uint64
++ Hash_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatKPP struct {
++ Type [64]int8
++ Setsecret_cnt uint64
++ Generate_public_key_cnt uint64
++ Compute_shared_secret_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatRNG struct {
++ Type [64]int8
++ Generate_cnt uint64
++ Generate_tlen uint64
++ Seed_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatLarval struct {
++ Type [64]int8
++}
++
++type CryptoReportLarval struct {
++ Type [64]int8
++}
++
++type CryptoReportHash struct {
++ Type [64]int8
++ Blocksize uint32
++ Digestsize uint32
++}
++
++type CryptoReportCipher struct {
++ Type [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++}
++
++type CryptoReportBlkCipher struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++ Ivsize uint32
++}
++
++type CryptoReportAEAD struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Maxauthsize uint32
++ Ivsize uint32
++}
++
++type CryptoReportComp struct {
++ Type [64]int8
++}
++
++type CryptoReportRNG struct {
++ Type [64]int8
++ Seedsize uint32
++}
++
++type CryptoReportAKCipher struct {
++ Type [64]int8
++}
++
++type CryptoReportKPP struct {
++ Type [64]int8
++}
++
++type CryptoReportAcomp struct {
++ Type [64]int8
++}
++
++type LoopInfo struct {
++ Number int32
++ Device uint32
++ Inode uint64
++ Rdevice uint32
++ Offset int32
++ Encrypt_type int32
++ Encrypt_key_size int32
++ Flags int32
++ Name [64]int8
++ Encrypt_key [32]uint8
++ Init [2]uint64
++ Reserved [4]int8
++ _ [4]byte
++}
++
++type TIPCSubscr struct {
++ Seq TIPCServiceRange
++ Timeout uint32
++ Filter uint32
++ Handle [8]int8
++}
++
++type TIPCSIOCLNReq struct {
++ Peer uint32
++ Id uint32
++ Linkname [68]int8
++}
++
++type TIPCSIOCNodeIDReq struct {
++ Peer uint32
++ Id [16]int8
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go b/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go
+index 74c54213..4ed2c8e5 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go
+@@ -6,19 +6,12 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x4
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x4
+- sizeofLongLong = 0x8
+- PathMax = 0x1000
++ SizeofPtr = 0x4
++ SizeofLong = 0x4
+ )
+
+ type (
+- _C_short int16
+- _C_int int32
+- _C_long int32
+- _C_long_long int64
++ _C_long int32
+ )
+
+ type Timespec struct {
+@@ -52,7 +45,7 @@ type Timex struct {
+ Errcnt int32
+ Stbcnt int32
+ Tai int32
+- Pad_cgo_0 [44]byte
++ _ [44]byte
+ }
+
+ type Time_t int32
+@@ -88,13 +81,6 @@ type Rusage struct {
+ Nivcsw int32
+ }
+
+-type Rlimit struct {
+- Cur uint64
+- Max uint64
+-}
+-
+-type _Gid_t uint32
+-
+ type Stat_t struct {
+ Dev uint32
+ Pad1 [3]int32
+@@ -115,141 +101,30 @@ type Stat_t struct {
+ Pad5 [14]int32
+ }
+
+-type Statfs_t struct {
+- Type int32
+- Bsize int32
+- Frsize int32
+- Pad_cgo_0 [4]byte
+- Blocks uint64
+- Bfree uint64
+- Files uint64
+- Ffree uint64
+- Bavail uint64
+- Fsid Fsid
+- Namelen int32
+- Flags int32
+- Spare [5]int32
+- Pad_cgo_1 [4]byte
+-}
+-
+ type Dirent struct {
+- Ino uint64
+- Off int64
+- Reclen uint16
+- Type uint8
+- Name [256]int8
+- Pad_cgo_0 [5]byte
+-}
+-
+-type Fsid struct {
+- X__val [2]int32
++ Ino uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Name [256]int8
++ _ [5]byte
+ }
+
+ type Flock_t struct {
+- Type int16
+- Whence int16
+- Pad_cgo_0 [4]byte
+- Start int64
+- Len int64
+- Pid int32
+- Pad_cgo_1 [4]byte
+-}
+-
+-type FscryptPolicy struct {
+- Version uint8
+- Contents_encryption_mode uint8
+- Filenames_encryption_mode uint8
+- Flags uint8
+- Master_key_descriptor [8]uint8
+-}
+-
+-type FscryptKey struct {
+- Mode uint32
+- Raw [64]uint8
+- Size uint32
+-}
+-
+-type KeyctlDHParams struct {
+- Private int32
+- Prime int32
+- Base int32
++ Type int16
++ Whence int16
++ _ [4]byte
++ Start int64
++ Len int64
++ Pid int32
++ _ [4]byte
+ }
+
+ const (
+- FADV_NORMAL = 0x0
+- FADV_RANDOM = 0x1
+- FADV_SEQUENTIAL = 0x2
+- FADV_WILLNEED = 0x3
+- FADV_DONTNEED = 0x4
+- FADV_NOREUSE = 0x5
++ FADV_DONTNEED = 0x4
++ FADV_NOREUSE = 0x5
+ )
+
+-type RawSockaddrInet4 struct {
+- Family uint16
+- Port uint16
+- Addr [4]byte /* in_addr */
+- Zero [8]uint8
+-}
+-
+-type RawSockaddrInet6 struct {
+- Family uint16
+- Port uint16
+- Flowinfo uint32
+- Addr [16]byte /* in6_addr */
+- Scope_id uint32
+-}
+-
+-type RawSockaddrUnix struct {
+- Family uint16
+- Path [108]int8
+-}
+-
+-type RawSockaddrLinklayer struct {
+- Family uint16
+- Protocol uint16
+- Ifindex int32
+- Hatype uint16
+- Pkttype uint8
+- Halen uint8
+- Addr [8]uint8
+-}
+-
+-type RawSockaddrNetlink struct {
+- Family uint16
+- Pad uint16
+- Pid uint32
+- Groups uint32
+-}
+-
+-type RawSockaddrHCI struct {
+- Family uint16
+- Dev uint16
+- Channel uint16
+-}
+-
+-type RawSockaddrCAN struct {
+- Family uint16
+- Pad_cgo_0 [2]byte
+- Ifindex int32
+- Addr [8]byte
+-}
+-
+-type RawSockaddrALG struct {
+- Family uint16
+- Type [14]uint8
+- Feat uint32
+- Mask uint32
+- Name [64]uint8
+-}
+-
+-type RawSockaddrVM struct {
+- Family uint16
+- Reserved1 uint16
+- Port uint32
+- Cid uint32
+- Zero [4]uint8
+-}
+-
+ type RawSockaddr struct {
+ Family uint16
+ Data [14]int8
+@@ -260,41 +135,11 @@ type RawSockaddrAny struct {
+ Pad [96]int8
+ }
+
+-type _Socklen uint32
+-
+-type Linger struct {
+- Onoff int32
+- Linger int32
+-}
+-
+ type Iovec struct {
+ Base *byte
+ Len uint32
+ }
+
+-type IPMreq struct {
+- Multiaddr [4]byte /* in_addr */
+- Interface [4]byte /* in_addr */
+-}
+-
+-type IPMreqn struct {
+- Multiaddr [4]byte /* in_addr */
+- Address [4]byte /* in_addr */
+- Ifindex int32
+-}
+-
+-type IPv6Mreq struct {
+- Multiaddr [16]byte /* in6_addr */
+- Interface uint32
+-}
+-
+-type PacketMreq struct {
+- Ifindex int32
+- Type uint16
+- Alen uint16
+- Address [8]uint8
+-}
+-
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+@@ -311,277 +156,16 @@ type Cmsghdr struct {
+ Type int32
+ }
+
+-type Inet4Pktinfo struct {
+- Ifindex int32
+- Spec_dst [4]byte /* in_addr */
+- Addr [4]byte /* in_addr */
+-}
+-
+-type Inet6Pktinfo struct {
+- Addr [16]byte /* in6_addr */
+- Ifindex uint32
+-}
+-
+-type IPv6MTUInfo struct {
+- Addr RawSockaddrInet6
+- Mtu uint32
+-}
+-
+-type ICMPv6Filter struct {
+- Data [8]uint32
+-}
+-
+-type Ucred struct {
+- Pid int32
+- Uid uint32
+- Gid uint32
+-}
+-
+-type TCPInfo struct {
+- State uint8
+- Ca_state uint8
+- Retransmits uint8
+- Probes uint8
+- Backoff uint8
+- Options uint8
+- Pad_cgo_0 [2]byte
+- Rto uint32
+- Ato uint32
+- Snd_mss uint32
+- Rcv_mss uint32
+- Unacked uint32
+- Sacked uint32
+- Lost uint32
+- Retrans uint32
+- Fackets uint32
+- Last_data_sent uint32
+- Last_ack_sent uint32
+- Last_data_recv uint32
+- Last_ack_recv uint32
+- Pmtu uint32
+- Rcv_ssthresh uint32
+- Rtt uint32
+- Rttvar uint32
+- Snd_ssthresh uint32
+- Snd_cwnd uint32
+- Advmss uint32
+- Reordering uint32
+- Rcv_rtt uint32
+- Rcv_space uint32
+- Total_retrans uint32
+-}
+-
+ const (
+- SizeofSockaddrInet4 = 0x10
+- SizeofSockaddrInet6 = 0x1c
+- SizeofSockaddrAny = 0x70
+- SizeofSockaddrUnix = 0x6e
+- SizeofSockaddrLinklayer = 0x14
+- SizeofSockaddrNetlink = 0xc
+- SizeofSockaddrHCI = 0x6
+- SizeofSockaddrCAN = 0x10
+- SizeofSockaddrALG = 0x58
+- SizeofSockaddrVM = 0x10
+- SizeofLinger = 0x8
+- SizeofIovec = 0x8
+- SizeofIPMreq = 0x8
+- SizeofIPMreqn = 0xc
+- SizeofIPv6Mreq = 0x14
+- SizeofPacketMreq = 0x10
+- SizeofMsghdr = 0x1c
+- SizeofCmsghdr = 0xc
+- SizeofInet4Pktinfo = 0xc
+- SizeofInet6Pktinfo = 0x14
+- SizeofIPv6MTUInfo = 0x20
+- SizeofICMPv6Filter = 0x20
+- SizeofUcred = 0xc
+- SizeofTCPInfo = 0x68
++ SizeofIovec = 0x8
++ SizeofMsghdr = 0x1c
++ SizeofCmsghdr = 0xc
+ )
+
+ const (
+- IFA_UNSPEC = 0x0
+- IFA_ADDRESS = 0x1
+- IFA_LOCAL = 0x2
+- IFA_LABEL = 0x3
+- IFA_BROADCAST = 0x4
+- IFA_ANYCAST = 0x5
+- IFA_CACHEINFO = 0x6
+- IFA_MULTICAST = 0x7
+- IFLA_UNSPEC = 0x0
+- IFLA_ADDRESS = 0x1
+- IFLA_BROADCAST = 0x2
+- IFLA_IFNAME = 0x3
+- IFLA_MTU = 0x4
+- IFLA_LINK = 0x5
+- IFLA_QDISC = 0x6
+- IFLA_STATS = 0x7
+- IFLA_COST = 0x8
+- IFLA_PRIORITY = 0x9
+- IFLA_MASTER = 0xa
+- IFLA_WIRELESS = 0xb
+- IFLA_PROTINFO = 0xc
+- IFLA_TXQLEN = 0xd
+- IFLA_MAP = 0xe
+- IFLA_WEIGHT = 0xf
+- IFLA_OPERSTATE = 0x10
+- IFLA_LINKMODE = 0x11
+- IFLA_LINKINFO = 0x12
+- IFLA_NET_NS_PID = 0x13
+- IFLA_IFALIAS = 0x14
+- IFLA_MAX = 0x2b
+- RT_SCOPE_UNIVERSE = 0x0
+- RT_SCOPE_SITE = 0xc8
+- RT_SCOPE_LINK = 0xfd
+- RT_SCOPE_HOST = 0xfe
+- RT_SCOPE_NOWHERE = 0xff
+- RT_TABLE_UNSPEC = 0x0
+- RT_TABLE_COMPAT = 0xfc
+- RT_TABLE_DEFAULT = 0xfd
+- RT_TABLE_MAIN = 0xfe
+- RT_TABLE_LOCAL = 0xff
+- RT_TABLE_MAX = 0xffffffff
+- RTA_UNSPEC = 0x0
+- RTA_DST = 0x1
+- RTA_SRC = 0x2
+- RTA_IIF = 0x3
+- RTA_OIF = 0x4
+- RTA_GATEWAY = 0x5
+- RTA_PRIORITY = 0x6
+- RTA_PREFSRC = 0x7
+- RTA_METRICS = 0x8
+- RTA_MULTIPATH = 0x9
+- RTA_FLOW = 0xb
+- RTA_CACHEINFO = 0xc
+- RTA_TABLE = 0xf
+- RTN_UNSPEC = 0x0
+- RTN_UNICAST = 0x1
+- RTN_LOCAL = 0x2
+- RTN_BROADCAST = 0x3
+- RTN_ANYCAST = 0x4
+- RTN_MULTICAST = 0x5
+- RTN_BLACKHOLE = 0x6
+- RTN_UNREACHABLE = 0x7
+- RTN_PROHIBIT = 0x8
+- RTN_THROW = 0x9
+- RTN_NAT = 0xa
+- RTN_XRESOLVE = 0xb
+- RTNLGRP_NONE = 0x0
+- RTNLGRP_LINK = 0x1
+- RTNLGRP_NOTIFY = 0x2
+- RTNLGRP_NEIGH = 0x3
+- RTNLGRP_TC = 0x4
+- RTNLGRP_IPV4_IFADDR = 0x5
+- RTNLGRP_IPV4_MROUTE = 0x6
+- RTNLGRP_IPV4_ROUTE = 0x7
+- RTNLGRP_IPV4_RULE = 0x8
+- RTNLGRP_IPV6_IFADDR = 0x9
+- RTNLGRP_IPV6_MROUTE = 0xa
+- RTNLGRP_IPV6_ROUTE = 0xb
+- RTNLGRP_IPV6_IFINFO = 0xc
+- RTNLGRP_IPV6_PREFIX = 0x12
+- RTNLGRP_IPV6_RULE = 0x13
+- RTNLGRP_ND_USEROPT = 0x14
+- SizeofNlMsghdr = 0x10
+- SizeofNlMsgerr = 0x14
+- SizeofRtGenmsg = 0x1
+- SizeofNlAttr = 0x4
+- SizeofRtAttr = 0x4
+- SizeofIfInfomsg = 0x10
+- SizeofIfAddrmsg = 0x8
+- SizeofRtMsg = 0xc
+- SizeofRtNexthop = 0x8
++ SizeofSockFprog = 0x8
+ )
+
+-type NlMsghdr struct {
+- Len uint32
+- Type uint16
+- Flags uint16
+- Seq uint32
+- Pid uint32
+-}
+-
+-type NlMsgerr struct {
+- Error int32
+- Msg NlMsghdr
+-}
+-
+-type RtGenmsg struct {
+- Family uint8
+-}
+-
+-type NlAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type RtAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type IfInfomsg struct {
+- Family uint8
+- X__ifi_pad uint8
+- Type uint16
+- Index int32
+- Flags uint32
+- Change uint32
+-}
+-
+-type IfAddrmsg struct {
+- Family uint8
+- Prefixlen uint8
+- Flags uint8
+- Scope uint8
+- Index uint32
+-}
+-
+-type RtMsg struct {
+- Family uint8
+- Dst_len uint8
+- Src_len uint8
+- Tos uint8
+- Table uint8
+- Protocol uint8
+- Scope uint8
+- Type uint8
+- Flags uint32
+-}
+-
+-type RtNexthop struct {
+- Len uint16
+- Flags uint8
+- Hops uint8
+- Ifindex int32
+-}
+-
+-const (
+- SizeofSockFilter = 0x8
+- SizeofSockFprog = 0x8
+-)
+-
+-type SockFilter struct {
+- Code uint16
+- Jt uint8
+- Jf uint8
+- K uint32
+-}
+-
+-type SockFprog struct {
+- Len uint16
+- Pad_cgo_0 [2]byte
+- Filter *SockFilter
+-}
+-
+-type InotifyEvent struct {
+- Wd int32
+- Mask uint32
+- Cookie uint32
+- Len uint32
+-}
+-
+-const SizeofInotifyEvent = 0x10
+-
+ type PtraceRegs struct {
+ Regs [32]uint64
+ Lo uint64
+@@ -610,16 +194,7 @@ type Sysinfo_t struct {
+ Totalhigh uint32
+ Freehigh uint32
+ Unit uint32
+- X_f [8]int8
+-}
+-
+-type Utsname struct {
+- Sysname [65]int8
+- Nodename [65]int8
+- Release [65]int8
+- Version [65]int8
+- Machine [65]int8
+- Domainname [65]int8
++ _ [8]int8
+ }
+
+ type Ustat_t struct {
+@@ -637,37 +212,14 @@ type EpollEvent struct {
+ }
+
+ const (
+- AT_FDCWD = -0x64
+- AT_REMOVEDIR = 0x200
+- AT_SYMLINK_FOLLOW = 0x400
+- AT_SYMLINK_NOFOLLOW = 0x100
+-)
+-
+-type PollFd struct {
+- Fd int32
+- Events int16
+- Revents int16
+-}
+-
+-const (
+- POLLIN = 0x1
+- POLLPRI = 0x2
+- POLLOUT = 0x4
+ POLLRDHUP = 0x2000
+- POLLERR = 0x8
+- POLLHUP = 0x10
+- POLLNVAL = 0x20
+ )
+
+ type Sigset_t struct {
+- X__val [32]uint32
++ Val [32]uint32
+ }
+
+-const RNDGETENTCNT = 0x40045200
+-
+-const PERF_IOC_FLAG_GROUP = 0x1
+-
+-const _SC_PAGESIZE = 0x1e
++const _C__NSIG = 0x80
+
+ type Termios struct {
+ Iflag uint32
+@@ -680,20 +232,12 @@ type Termios struct {
+ Ospeed uint32
+ }
+
+-type Winsize struct {
+- Row uint16
+- Col uint16
+- Xpixel uint16
+- Ypixel uint16
+-}
+-
+ type Taskstats struct {
+ Version uint16
+- Pad_cgo_0 [2]byte
+ Ac_exitcode uint32
+ Ac_flag uint8
+ Ac_nice uint8
+- Pad_cgo_1 [6]byte
++ _ [4]byte
+ Cpu_count uint64
+ Cpu_delay_total uint64
+ Blkio_count uint64
+@@ -705,13 +249,13 @@ type Taskstats struct {
+ Ac_comm [32]int8
+ Ac_sched uint8
+ Ac_pad [3]uint8
+- Pad_cgo_2 [4]byte
++ _ [4]byte
+ Ac_uid uint32
+ Ac_gid uint32
+ Ac_pid uint32
+ Ac_ppid uint32
+ Ac_btime uint32
+- Pad_cgo_3 [4]byte
++ _ [4]byte
+ Ac_etime uint64
+ Ac_utime uint64
+ Ac_stime uint64
+@@ -735,55 +279,319 @@ type Taskstats struct {
+ Cpu_scaled_run_real_total uint64
+ Freepages_count uint64
+ Freepages_delay_total uint64
++ Thrashing_count uint64
++ Thrashing_delay_total uint64
++ Ac_btime64 uint64
+ }
+
++type cpuMask uint32
++
++const (
++ _NCPUBITS = 0x20
++)
++
+ const (
+- TASKSTATS_CMD_UNSPEC = 0x0
+- TASKSTATS_CMD_GET = 0x1
+- TASKSTATS_CMD_NEW = 0x2
+- TASKSTATS_TYPE_UNSPEC = 0x0
+- TASKSTATS_TYPE_PID = 0x1
+- TASKSTATS_TYPE_TGID = 0x2
+- TASKSTATS_TYPE_STATS = 0x3
+- TASKSTATS_TYPE_AGGR_PID = 0x4
+- TASKSTATS_TYPE_AGGR_TGID = 0x5
+- TASKSTATS_TYPE_NULL = 0x6
+- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
+- TASKSTATS_CMD_ATTR_PID = 0x1
+- TASKSTATS_CMD_ATTR_TGID = 0x2
+- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
+- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
++ CBitFieldMaskBit0 = 0x1
++ CBitFieldMaskBit1 = 0x2
++ CBitFieldMaskBit2 = 0x4
++ CBitFieldMaskBit3 = 0x8
++ CBitFieldMaskBit4 = 0x10
++ CBitFieldMaskBit5 = 0x20
++ CBitFieldMaskBit6 = 0x40
++ CBitFieldMaskBit7 = 0x80
++ CBitFieldMaskBit8 = 0x100
++ CBitFieldMaskBit9 = 0x200
++ CBitFieldMaskBit10 = 0x400
++ CBitFieldMaskBit11 = 0x800
++ CBitFieldMaskBit12 = 0x1000
++ CBitFieldMaskBit13 = 0x2000
++ CBitFieldMaskBit14 = 0x4000
++ CBitFieldMaskBit15 = 0x8000
++ CBitFieldMaskBit16 = 0x10000
++ CBitFieldMaskBit17 = 0x20000
++ CBitFieldMaskBit18 = 0x40000
++ CBitFieldMaskBit19 = 0x80000
++ CBitFieldMaskBit20 = 0x100000
++ CBitFieldMaskBit21 = 0x200000
++ CBitFieldMaskBit22 = 0x400000
++ CBitFieldMaskBit23 = 0x800000
++ CBitFieldMaskBit24 = 0x1000000
++ CBitFieldMaskBit25 = 0x2000000
++ CBitFieldMaskBit26 = 0x4000000
++ CBitFieldMaskBit27 = 0x8000000
++ CBitFieldMaskBit28 = 0x10000000
++ CBitFieldMaskBit29 = 0x20000000
++ CBitFieldMaskBit30 = 0x40000000
++ CBitFieldMaskBit31 = 0x80000000
++ CBitFieldMaskBit32 = 0x100000000
++ CBitFieldMaskBit33 = 0x200000000
++ CBitFieldMaskBit34 = 0x400000000
++ CBitFieldMaskBit35 = 0x800000000
++ CBitFieldMaskBit36 = 0x1000000000
++ CBitFieldMaskBit37 = 0x2000000000
++ CBitFieldMaskBit38 = 0x4000000000
++ CBitFieldMaskBit39 = 0x8000000000
++ CBitFieldMaskBit40 = 0x10000000000
++ CBitFieldMaskBit41 = 0x20000000000
++ CBitFieldMaskBit42 = 0x40000000000
++ CBitFieldMaskBit43 = 0x80000000000
++ CBitFieldMaskBit44 = 0x100000000000
++ CBitFieldMaskBit45 = 0x200000000000
++ CBitFieldMaskBit46 = 0x400000000000
++ CBitFieldMaskBit47 = 0x800000000000
++ CBitFieldMaskBit48 = 0x1000000000000
++ CBitFieldMaskBit49 = 0x2000000000000
++ CBitFieldMaskBit50 = 0x4000000000000
++ CBitFieldMaskBit51 = 0x8000000000000
++ CBitFieldMaskBit52 = 0x10000000000000
++ CBitFieldMaskBit53 = 0x20000000000000
++ CBitFieldMaskBit54 = 0x40000000000000
++ CBitFieldMaskBit55 = 0x80000000000000
++ CBitFieldMaskBit56 = 0x100000000000000
++ CBitFieldMaskBit57 = 0x200000000000000
++ CBitFieldMaskBit58 = 0x400000000000000
++ CBitFieldMaskBit59 = 0x800000000000000
++ CBitFieldMaskBit60 = 0x1000000000000000
++ CBitFieldMaskBit61 = 0x2000000000000000
++ CBitFieldMaskBit62 = 0x4000000000000000
++ CBitFieldMaskBit63 = 0x8000000000000000
+ )
+
+-type Genlmsghdr struct {
+- Cmd uint8
+- Version uint8
+- Reserved uint16
++type SockaddrStorage struct {
++ Family uint16
++ _ [122]int8
++ _ uint32
++}
++
++type HDGeometry struct {
++ Heads uint8
++ Sectors uint8
++ Cylinders uint16
++ Start uint32
++}
++
++type Statfs_t struct {
++ Type int32
++ Bsize int32
++ Frsize int32
++ _ [4]byte
++ Blocks uint64
++ Bfree uint64
++ Files uint64
++ Ffree uint64
++ Bavail uint64
++ Fsid Fsid
++ Namelen int32
++ Flags int32
++ Spare [5]int32
++ _ [4]byte
++}
++
++type TpacketHdr struct {
++ Status uint32
++ Len uint32
++ Snaplen uint32
++ Mac uint16
++ Net uint16
++ Sec uint32
++ Usec uint32
++}
++
++const (
++ SizeofTpacketHdr = 0x18
++)
++
++type RTCPLLInfo struct {
++ Ctrl int32
++ Value int32
++ Max int32
++ Min int32
++ Posmult int32
++ Negmult int32
++ Clock int32
++}
++
++type BlkpgPartition struct {
++ Start int64
++ Length int64
++ Pno int32
++ Devname [64]uint8
++ Volname [64]uint8
++ _ [4]byte
+ }
+
+ const (
+- CTRL_CMD_UNSPEC = 0x0
+- CTRL_CMD_NEWFAMILY = 0x1
+- CTRL_CMD_DELFAMILY = 0x2
+- CTRL_CMD_GETFAMILY = 0x3
+- CTRL_CMD_NEWOPS = 0x4
+- CTRL_CMD_DELOPS = 0x5
+- CTRL_CMD_GETOPS = 0x6
+- CTRL_CMD_NEWMCAST_GRP = 0x7
+- CTRL_CMD_DELMCAST_GRP = 0x8
+- CTRL_CMD_GETMCAST_GRP = 0x9
+- CTRL_ATTR_UNSPEC = 0x0
+- CTRL_ATTR_FAMILY_ID = 0x1
+- CTRL_ATTR_FAMILY_NAME = 0x2
+- CTRL_ATTR_VERSION = 0x3
+- CTRL_ATTR_HDRSIZE = 0x4
+- CTRL_ATTR_MAXATTR = 0x5
+- CTRL_ATTR_OPS = 0x6
+- CTRL_ATTR_MCAST_GROUPS = 0x7
+- 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
++ BLKPG = 0x20001269
+ )
++
++type XDPUmemReg struct {
++ Addr uint64
++ Len uint64
++ Size uint32
++ Headroom uint32
++ Flags uint32
++ _ [4]byte
++}
++
++type CryptoUserAlg struct {
++ Name [64]int8
++ Driver_name [64]int8
++ Module_name [64]int8
++ Type uint32
++ Mask uint32
++ Refcnt uint32
++ Flags uint32
++}
++
++type CryptoStatAEAD struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatAKCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Verify_cnt uint64
++ Sign_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCompress struct {
++ Type [64]int8
++ Compress_cnt uint64
++ Compress_tlen uint64
++ Decompress_cnt uint64
++ Decompress_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatHash struct {
++ Type [64]int8
++ Hash_cnt uint64
++ Hash_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatKPP struct {
++ Type [64]int8
++ Setsecret_cnt uint64
++ Generate_public_key_cnt uint64
++ Compute_shared_secret_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatRNG struct {
++ Type [64]int8
++ Generate_cnt uint64
++ Generate_tlen uint64
++ Seed_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatLarval struct {
++ Type [64]int8
++}
++
++type CryptoReportLarval struct {
++ Type [64]int8
++}
++
++type CryptoReportHash struct {
++ Type [64]int8
++ Blocksize uint32
++ Digestsize uint32
++}
++
++type CryptoReportCipher struct {
++ Type [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++}
++
++type CryptoReportBlkCipher struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++ Ivsize uint32
++}
++
++type CryptoReportAEAD struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Maxauthsize uint32
++ Ivsize uint32
++}
++
++type CryptoReportComp struct {
++ Type [64]int8
++}
++
++type CryptoReportRNG struct {
++ Type [64]int8
++ Seedsize uint32
++}
++
++type CryptoReportAKCipher struct {
++ Type [64]int8
++}
++
++type CryptoReportKPP struct {
++ Type [64]int8
++}
++
++type CryptoReportAcomp struct {
++ Type [64]int8
++}
++
++type LoopInfo struct {
++ Number int32
++ Device uint32
++ Inode uint32
++ Rdevice uint32
++ Offset int32
++ Encrypt_type int32
++ Encrypt_key_size int32
++ Flags int32
++ Name [64]int8
++ Encrypt_key [32]uint8
++ Init [2]uint32
++ Reserved [4]int8
++}
++
++type TIPCSubscr struct {
++ Seq TIPCServiceRange
++ Timeout uint32
++ Filter uint32
++ Handle [8]int8
++}
++
++type TIPCSIOCLNReq struct {
++ Peer uint32
++ Id uint32
++ Linkname [68]int8
++}
++
++type TIPCSIOCNodeIDReq struct {
++ Peer uint32
++ Id [16]int8
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
+index 2b0b18e9..74151909 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
+@@ -6,19 +6,12 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
+- PathMax = 0x1000
++ SizeofPtr = 0x8
++ SizeofLong = 0x8
+ )
+
+ type (
+- _C_short int16
+- _C_int int32
+- _C_long int64
+- _C_long_long int64
++ _C_long int64
+ )
+
+ type Timespec struct {
+@@ -33,13 +26,11 @@ type Timeval struct {
+
+ type Timex struct {
+ Modes uint32
+- Pad_cgo_0 [4]byte
+ Offset int64
+ Freq int64
+ Maxerror int64
+ Esterror int64
+ Status int32
+- Pad_cgo_1 [4]byte
+ Constant int64
+ Precision int64
+ Tolerance int64
+@@ -48,14 +39,13 @@ type Timex struct {
+ Ppsfreq int64
+ Jitter int64
+ Shift int32
+- Pad_cgo_2 [4]byte
+ Stabil int64
+ Jitcnt int64
+ Calcnt int64
+ Errcnt int64
+ Stbcnt int64
+ Tai int32
+- Pad_cgo_3 [44]byte
++ _ [44]byte
+ }
+
+ type Time_t int64
+@@ -91,13 +81,6 @@ type Rusage struct {
+ Nivcsw int64
+ }
+
+-type Rlimit struct {
+- Cur uint64
+- Max uint64
+-}
+-
+-type _Gid_t uint32
+-
+ type Stat_t struct {
+ Dev uint64
+ Ino uint64
+@@ -105,7 +88,7 @@ type Stat_t struct {
+ Mode uint32
+ Uid uint32
+ Gid uint32
+- X__pad2 int32
++ _ int32
+ Rdev uint64
+ Size int64
+ Blksize int64
+@@ -118,139 +101,29 @@ type Stat_t struct {
+ _ uint64
+ }
+
+-type Statfs_t struct {
+- Type int64
+- Bsize int64
+- Blocks uint64
+- Bfree uint64
+- Bavail uint64
+- Files uint64
+- Ffree uint64
+- Fsid Fsid
+- Namelen int64
+- Frsize int64
+- Flags int64
+- Spare [4]int64
+-}
+-
+ type Dirent struct {
+- Ino uint64
+- Off int64
+- Reclen uint16
+- Type uint8
+- Name [256]uint8
+- Pad_cgo_0 [5]byte
+-}
+-
+-type Fsid struct {
+- X__val [2]int32
++ Ino uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Name [256]uint8
++ _ [5]byte
+ }
+
+ type Flock_t struct {
+- Type int16
+- Whence int16
+- Pad_cgo_0 [4]byte
+- Start int64
+- Len int64
+- Pid int32
+- Pad_cgo_1 [4]byte
+-}
+-
+-type FscryptPolicy struct {
+- Version uint8
+- Contents_encryption_mode uint8
+- Filenames_encryption_mode uint8
+- Flags uint8
+- Master_key_descriptor [8]uint8
+-}
+-
+-type FscryptKey struct {
+- Mode uint32
+- Raw [64]uint8
+- Size uint32
+-}
+-
+-type KeyctlDHParams struct {
+- Private int32
+- Prime int32
+- Base int32
++ Type int16
++ Whence int16
++ Start int64
++ Len int64
++ Pid int32
++ _ [4]byte
+ }
+
+ const (
+- FADV_NORMAL = 0x0
+- FADV_RANDOM = 0x1
+- FADV_SEQUENTIAL = 0x2
+- FADV_WILLNEED = 0x3
+- FADV_DONTNEED = 0x4
+- FADV_NOREUSE = 0x5
++ FADV_DONTNEED = 0x4
++ FADV_NOREUSE = 0x5
+ )
+
+-type RawSockaddrInet4 struct {
+- Family uint16
+- Port uint16
+- Addr [4]byte /* in_addr */
+- Zero [8]uint8
+-}
+-
+-type RawSockaddrInet6 struct {
+- Family uint16
+- Port uint16
+- Flowinfo uint32
+- Addr [16]byte /* in6_addr */
+- Scope_id uint32
+-}
+-
+-type RawSockaddrUnix struct {
+- Family uint16
+- Path [108]int8
+-}
+-
+-type RawSockaddrLinklayer struct {
+- Family uint16
+- Protocol uint16
+- Ifindex int32
+- Hatype uint16
+- Pkttype uint8
+- Halen uint8
+- Addr [8]uint8
+-}
+-
+-type RawSockaddrNetlink struct {
+- Family uint16
+- Pad uint16
+- Pid uint32
+- Groups uint32
+-}
+-
+-type RawSockaddrHCI struct {
+- Family uint16
+- Dev uint16
+- Channel uint16
+-}
+-
+-type RawSockaddrCAN struct {
+- Family uint16
+- Pad_cgo_0 [2]byte
+- Ifindex int32
+- Addr [8]byte
+-}
+-
+-type RawSockaddrALG struct {
+- Family uint16
+- Type [14]uint8
+- Feat uint32
+- Mask uint32
+- Name [64]uint8
+-}
+-
+-type RawSockaddrVM struct {
+- Family uint16
+- Reserved1 uint16
+- Port uint32
+- Cid uint32
+- Zero [4]uint8
+-}
+-
+ type RawSockaddr struct {
+ Family uint16
+ Data [14]uint8
+@@ -261,51 +134,20 @@ type RawSockaddrAny struct {
+ Pad [96]uint8
+ }
+
+-type _Socklen uint32
+-
+-type Linger struct {
+- Onoff int32
+- Linger int32
+-}
+-
+ type Iovec struct {
+ Base *byte
+ Len uint64
+ }
+
+-type IPMreq struct {
+- Multiaddr [4]byte /* in_addr */
+- Interface [4]byte /* in_addr */
+-}
+-
+-type IPMreqn struct {
+- Multiaddr [4]byte /* in_addr */
+- Address [4]byte /* in_addr */
+- Ifindex int32
+-}
+-
+-type IPv6Mreq struct {
+- Multiaddr [16]byte /* in6_addr */
+- Interface uint32
+-}
+-
+-type PacketMreq struct {
+- Ifindex int32
+- Type uint16
+- Alen uint16
+- Address [8]uint8
+-}
+-
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+- Pad_cgo_0 [4]byte
+ Iov *Iovec
+ Iovlen uint64
+ Control *byte
+ Controllen uint64
+ Flags int32
+- Pad_cgo_1 [4]byte
++ _ [4]byte
+ }
+
+ type Cmsghdr struct {
+@@ -314,277 +156,16 @@ type Cmsghdr struct {
+ Type int32
+ }
+
+-type Inet4Pktinfo struct {
+- Ifindex int32
+- Spec_dst [4]byte /* in_addr */
+- Addr [4]byte /* in_addr */
+-}
+-
+-type Inet6Pktinfo struct {
+- Addr [16]byte /* in6_addr */
+- Ifindex uint32
+-}
+-
+-type IPv6MTUInfo struct {
+- Addr RawSockaddrInet6
+- Mtu uint32
+-}
+-
+-type ICMPv6Filter struct {
+- Data [8]uint32
+-}
+-
+-type Ucred struct {
+- Pid int32
+- Uid uint32
+- Gid uint32
+-}
+-
+-type TCPInfo struct {
+- State uint8
+- Ca_state uint8
+- Retransmits uint8
+- Probes uint8
+- Backoff uint8
+- Options uint8
+- Pad_cgo_0 [2]byte
+- Rto uint32
+- Ato uint32
+- Snd_mss uint32
+- Rcv_mss uint32
+- Unacked uint32
+- Sacked uint32
+- Lost uint32
+- Retrans uint32
+- Fackets uint32
+- Last_data_sent uint32
+- Last_ack_sent uint32
+- Last_data_recv uint32
+- Last_ack_recv uint32
+- Pmtu uint32
+- Rcv_ssthresh uint32
+- Rtt uint32
+- Rttvar uint32
+- Snd_ssthresh uint32
+- Snd_cwnd uint32
+- Advmss uint32
+- Reordering uint32
+- Rcv_rtt uint32
+- Rcv_space uint32
+- Total_retrans uint32
+-}
+-
+ const (
+- SizeofSockaddrInet4 = 0x10
+- SizeofSockaddrInet6 = 0x1c
+- SizeofSockaddrAny = 0x70
+- SizeofSockaddrUnix = 0x6e
+- SizeofSockaddrLinklayer = 0x14
+- SizeofSockaddrNetlink = 0xc
+- SizeofSockaddrHCI = 0x6
+- SizeofSockaddrCAN = 0x10
+- SizeofSockaddrALG = 0x58
+- SizeofSockaddrVM = 0x10
+- SizeofLinger = 0x8
+- SizeofIovec = 0x10
+- SizeofIPMreq = 0x8
+- SizeofIPMreqn = 0xc
+- SizeofIPv6Mreq = 0x14
+- SizeofPacketMreq = 0x10
+- SizeofMsghdr = 0x38
+- SizeofCmsghdr = 0x10
+- SizeofInet4Pktinfo = 0xc
+- SizeofInet6Pktinfo = 0x14
+- SizeofIPv6MTUInfo = 0x20
+- SizeofICMPv6Filter = 0x20
+- SizeofUcred = 0xc
+- SizeofTCPInfo = 0x68
++ SizeofIovec = 0x10
++ SizeofMsghdr = 0x38
++ SizeofCmsghdr = 0x10
+ )
+
+ const (
+- IFA_UNSPEC = 0x0
+- IFA_ADDRESS = 0x1
+- IFA_LOCAL = 0x2
+- IFA_LABEL = 0x3
+- IFA_BROADCAST = 0x4
+- IFA_ANYCAST = 0x5
+- IFA_CACHEINFO = 0x6
+- IFA_MULTICAST = 0x7
+- IFLA_UNSPEC = 0x0
+- IFLA_ADDRESS = 0x1
+- IFLA_BROADCAST = 0x2
+- IFLA_IFNAME = 0x3
+- IFLA_MTU = 0x4
+- IFLA_LINK = 0x5
+- IFLA_QDISC = 0x6
+- IFLA_STATS = 0x7
+- IFLA_COST = 0x8
+- IFLA_PRIORITY = 0x9
+- IFLA_MASTER = 0xa
+- IFLA_WIRELESS = 0xb
+- IFLA_PROTINFO = 0xc
+- IFLA_TXQLEN = 0xd
+- IFLA_MAP = 0xe
+- IFLA_WEIGHT = 0xf
+- IFLA_OPERSTATE = 0x10
+- IFLA_LINKMODE = 0x11
+- IFLA_LINKINFO = 0x12
+- IFLA_NET_NS_PID = 0x13
+- IFLA_IFALIAS = 0x14
+- IFLA_MAX = 0x2b
+- RT_SCOPE_UNIVERSE = 0x0
+- RT_SCOPE_SITE = 0xc8
+- RT_SCOPE_LINK = 0xfd
+- RT_SCOPE_HOST = 0xfe
+- RT_SCOPE_NOWHERE = 0xff
+- RT_TABLE_UNSPEC = 0x0
+- RT_TABLE_COMPAT = 0xfc
+- RT_TABLE_DEFAULT = 0xfd
+- RT_TABLE_MAIN = 0xfe
+- RT_TABLE_LOCAL = 0xff
+- RT_TABLE_MAX = 0xffffffff
+- RTA_UNSPEC = 0x0
+- RTA_DST = 0x1
+- RTA_SRC = 0x2
+- RTA_IIF = 0x3
+- RTA_OIF = 0x4
+- RTA_GATEWAY = 0x5
+- RTA_PRIORITY = 0x6
+- RTA_PREFSRC = 0x7
+- RTA_METRICS = 0x8
+- RTA_MULTIPATH = 0x9
+- RTA_FLOW = 0xb
+- RTA_CACHEINFO = 0xc
+- RTA_TABLE = 0xf
+- RTN_UNSPEC = 0x0
+- RTN_UNICAST = 0x1
+- RTN_LOCAL = 0x2
+- RTN_BROADCAST = 0x3
+- RTN_ANYCAST = 0x4
+- RTN_MULTICAST = 0x5
+- RTN_BLACKHOLE = 0x6
+- RTN_UNREACHABLE = 0x7
+- RTN_PROHIBIT = 0x8
+- RTN_THROW = 0x9
+- RTN_NAT = 0xa
+- RTN_XRESOLVE = 0xb
+- RTNLGRP_NONE = 0x0
+- RTNLGRP_LINK = 0x1
+- RTNLGRP_NOTIFY = 0x2
+- RTNLGRP_NEIGH = 0x3
+- RTNLGRP_TC = 0x4
+- RTNLGRP_IPV4_IFADDR = 0x5
+- RTNLGRP_IPV4_MROUTE = 0x6
+- RTNLGRP_IPV4_ROUTE = 0x7
+- RTNLGRP_IPV4_RULE = 0x8
+- RTNLGRP_IPV6_IFADDR = 0x9
+- RTNLGRP_IPV6_MROUTE = 0xa
+- RTNLGRP_IPV6_ROUTE = 0xb
+- RTNLGRP_IPV6_IFINFO = 0xc
+- RTNLGRP_IPV6_PREFIX = 0x12
+- RTNLGRP_IPV6_RULE = 0x13
+- RTNLGRP_ND_USEROPT = 0x14
+- SizeofNlMsghdr = 0x10
+- SizeofNlMsgerr = 0x14
+- SizeofRtGenmsg = 0x1
+- SizeofNlAttr = 0x4
+- SizeofRtAttr = 0x4
+- SizeofIfInfomsg = 0x10
+- SizeofIfAddrmsg = 0x8
+- SizeofRtMsg = 0xc
+- SizeofRtNexthop = 0x8
++ SizeofSockFprog = 0x10
+ )
+
+-type NlMsghdr struct {
+- Len uint32
+- Type uint16
+- Flags uint16
+- Seq uint32
+- Pid uint32
+-}
+-
+-type NlMsgerr struct {
+- Error int32
+- Msg NlMsghdr
+-}
+-
+-type RtGenmsg struct {
+- Family uint8
+-}
+-
+-type NlAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type RtAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type IfInfomsg struct {
+- Family uint8
+- X__ifi_pad uint8
+- Type uint16
+- Index int32
+- Flags uint32
+- Change uint32
+-}
+-
+-type IfAddrmsg struct {
+- Family uint8
+- Prefixlen uint8
+- Flags uint8
+- Scope uint8
+- Index uint32
+-}
+-
+-type RtMsg struct {
+- Family uint8
+- Dst_len uint8
+- Src_len uint8
+- Tos uint8
+- Table uint8
+- Protocol uint8
+- Scope uint8
+- Type uint8
+- Flags uint32
+-}
+-
+-type RtNexthop struct {
+- Len uint16
+- Flags uint8
+- Hops uint8
+- Ifindex int32
+-}
+-
+-const (
+- SizeofSockFilter = 0x8
+- SizeofSockFprog = 0x10
+-)
+-
+-type SockFilter struct {
+- Code uint16
+- Jt uint8
+- Jf uint8
+- K uint32
+-}
+-
+-type SockFprog struct {
+- Len uint16
+- Pad_cgo_0 [6]byte
+- Filter *SockFilter
+-}
+-
+-type InotifyEvent struct {
+- Wd int32
+- Mask uint32
+- Cookie uint32
+- Len uint32
+-}
+-
+-const SizeofInotifyEvent = 0x10
+-
+ type PtraceRegs struct {
+ Gpr [32]uint64
+ Nip uint64
+@@ -616,71 +197,37 @@ type Sysinfo_t struct {
+ Freeswap uint64
+ Procs uint16
+ Pad uint16
+- Pad_cgo_0 [4]byte
+ Totalhigh uint64
+ Freehigh uint64
+ Unit uint32
+- X_f [0]uint8
+- Pad_cgo_1 [4]byte
+-}
+-
+-type Utsname struct {
+- Sysname [65]uint8
+- Nodename [65]uint8
+- Release [65]uint8
+- Version [65]uint8
+- Machine [65]uint8
+- Domainname [65]uint8
++ _ [0]uint8
++ _ [4]byte
+ }
+
+ type Ustat_t struct {
+- Tfree int32
+- Pad_cgo_0 [4]byte
+- Tinode uint64
+- Fname [6]uint8
+- Fpack [6]uint8
+- Pad_cgo_1 [4]byte
++ Tfree int32
++ Tinode uint64
++ Fname [6]uint8
++ Fpack [6]uint8
++ _ [4]byte
+ }
+
+ type EpollEvent struct {
+- Events uint32
+- X_padFd int32
+- Fd int32
+- Pad int32
+-}
+-
+-const (
+- AT_FDCWD = -0x64
+- AT_REMOVEDIR = 0x200
+- AT_SYMLINK_FOLLOW = 0x400
+- AT_SYMLINK_NOFOLLOW = 0x100
+-)
+-
+-type PollFd struct {
+- Fd int32
+- Events int16
+- Revents int16
++ Events uint32
++ _ int32
++ Fd int32
++ Pad int32
+ }
+
+ const (
+- POLLIN = 0x1
+- POLLPRI = 0x2
+- POLLOUT = 0x4
+ POLLRDHUP = 0x2000
+- POLLERR = 0x8
+- POLLHUP = 0x10
+- POLLNVAL = 0x20
+ )
+
+ type Sigset_t struct {
+- X__val [16]uint64
++ Val [16]uint64
+ }
+
+-const RNDGETENTCNT = 0x40045200
+-
+-const PERF_IOC_FLAG_GROUP = 0x1
+-
+-const _SC_PAGESIZE = 0x1e
++const _C__NSIG = 0x41
+
+ type Termios struct {
+ Iflag uint32
+@@ -693,20 +240,11 @@ type Termios struct {
+ Ospeed uint32
+ }
+
+-type Winsize struct {
+- Row uint16
+- Col uint16
+- Xpixel uint16
+- Ypixel uint16
+-}
+-
+ type Taskstats struct {
+ Version uint16
+- Pad_cgo_0 [2]byte
+ Ac_exitcode uint32
+ Ac_flag uint8
+ Ac_nice uint8
+- Pad_cgo_1 [6]byte
+ Cpu_count uint64
+ Cpu_delay_total uint64
+ Blkio_count uint64
+@@ -718,13 +256,12 @@ type Taskstats struct {
+ Ac_comm [32]uint8
+ Ac_sched uint8
+ Ac_pad [3]uint8
+- Pad_cgo_2 [4]byte
++ _ [4]byte
+ Ac_uid uint32
+ Ac_gid uint32
+ Ac_pid uint32
+ Ac_ppid uint32
+ Ac_btime uint32
+- Pad_cgo_3 [4]byte
+ Ac_etime uint64
+ Ac_utime uint64
+ Ac_stime uint64
+@@ -748,55 +285,319 @@ type Taskstats struct {
+ Cpu_scaled_run_real_total uint64
+ Freepages_count uint64
+ Freepages_delay_total uint64
++ Thrashing_count uint64
++ Thrashing_delay_total uint64
++ Ac_btime64 uint64
+ }
+
++type cpuMask uint64
++
+ const (
+- TASKSTATS_CMD_UNSPEC = 0x0
+- TASKSTATS_CMD_GET = 0x1
+- TASKSTATS_CMD_NEW = 0x2
+- TASKSTATS_TYPE_UNSPEC = 0x0
+- TASKSTATS_TYPE_PID = 0x1
+- TASKSTATS_TYPE_TGID = 0x2
+- TASKSTATS_TYPE_STATS = 0x3
+- TASKSTATS_TYPE_AGGR_PID = 0x4
+- TASKSTATS_TYPE_AGGR_TGID = 0x5
+- TASKSTATS_TYPE_NULL = 0x6
+- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
+- TASKSTATS_CMD_ATTR_PID = 0x1
+- TASKSTATS_CMD_ATTR_TGID = 0x2
+- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
+- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
++ _NCPUBITS = 0x40
+ )
+
+-type Genlmsghdr struct {
+- Cmd uint8
+- Version uint8
+- Reserved uint16
++const (
++ CBitFieldMaskBit0 = 0x8000000000000000
++ CBitFieldMaskBit1 = 0x4000000000000000
++ CBitFieldMaskBit2 = 0x2000000000000000
++ CBitFieldMaskBit3 = 0x1000000000000000
++ CBitFieldMaskBit4 = 0x800000000000000
++ CBitFieldMaskBit5 = 0x400000000000000
++ CBitFieldMaskBit6 = 0x200000000000000
++ CBitFieldMaskBit7 = 0x100000000000000
++ CBitFieldMaskBit8 = 0x80000000000000
++ CBitFieldMaskBit9 = 0x40000000000000
++ CBitFieldMaskBit10 = 0x20000000000000
++ CBitFieldMaskBit11 = 0x10000000000000
++ CBitFieldMaskBit12 = 0x8000000000000
++ CBitFieldMaskBit13 = 0x4000000000000
++ CBitFieldMaskBit14 = 0x2000000000000
++ CBitFieldMaskBit15 = 0x1000000000000
++ CBitFieldMaskBit16 = 0x800000000000
++ CBitFieldMaskBit17 = 0x400000000000
++ CBitFieldMaskBit18 = 0x200000000000
++ CBitFieldMaskBit19 = 0x100000000000
++ CBitFieldMaskBit20 = 0x80000000000
++ CBitFieldMaskBit21 = 0x40000000000
++ CBitFieldMaskBit22 = 0x20000000000
++ CBitFieldMaskBit23 = 0x10000000000
++ CBitFieldMaskBit24 = 0x8000000000
++ CBitFieldMaskBit25 = 0x4000000000
++ CBitFieldMaskBit26 = 0x2000000000
++ CBitFieldMaskBit27 = 0x1000000000
++ CBitFieldMaskBit28 = 0x800000000
++ CBitFieldMaskBit29 = 0x400000000
++ CBitFieldMaskBit30 = 0x200000000
++ CBitFieldMaskBit31 = 0x100000000
++ CBitFieldMaskBit32 = 0x80000000
++ CBitFieldMaskBit33 = 0x40000000
++ CBitFieldMaskBit34 = 0x20000000
++ CBitFieldMaskBit35 = 0x10000000
++ CBitFieldMaskBit36 = 0x8000000
++ CBitFieldMaskBit37 = 0x4000000
++ CBitFieldMaskBit38 = 0x2000000
++ CBitFieldMaskBit39 = 0x1000000
++ CBitFieldMaskBit40 = 0x800000
++ CBitFieldMaskBit41 = 0x400000
++ CBitFieldMaskBit42 = 0x200000
++ CBitFieldMaskBit43 = 0x100000
++ CBitFieldMaskBit44 = 0x80000
++ CBitFieldMaskBit45 = 0x40000
++ CBitFieldMaskBit46 = 0x20000
++ CBitFieldMaskBit47 = 0x10000
++ CBitFieldMaskBit48 = 0x8000
++ CBitFieldMaskBit49 = 0x4000
++ CBitFieldMaskBit50 = 0x2000
++ CBitFieldMaskBit51 = 0x1000
++ CBitFieldMaskBit52 = 0x800
++ CBitFieldMaskBit53 = 0x400
++ CBitFieldMaskBit54 = 0x200
++ CBitFieldMaskBit55 = 0x100
++ CBitFieldMaskBit56 = 0x80
++ CBitFieldMaskBit57 = 0x40
++ CBitFieldMaskBit58 = 0x20
++ CBitFieldMaskBit59 = 0x10
++ CBitFieldMaskBit60 = 0x8
++ CBitFieldMaskBit61 = 0x4
++ CBitFieldMaskBit62 = 0x2
++ CBitFieldMaskBit63 = 0x1
++)
++
++type SockaddrStorage struct {
++ Family uint16
++ _ [118]uint8
++ _ uint64
++}
++
++type HDGeometry struct {
++ Heads uint8
++ Sectors uint8
++ Cylinders uint16
++ Start uint64
++}
++
++type Statfs_t struct {
++ Type int64
++ Bsize int64
++ Blocks uint64
++ Bfree uint64
++ Bavail uint64
++ Files uint64
++ Ffree uint64
++ Fsid Fsid
++ Namelen int64
++ Frsize int64
++ Flags int64
++ Spare [4]int64
++}
++
++type TpacketHdr struct {
++ Status uint64
++ Len uint32
++ Snaplen uint32
++ Mac uint16
++ Net uint16
++ Sec uint32
++ Usec uint32
++ _ [4]byte
+ }
+
+ const (
+- CTRL_CMD_UNSPEC = 0x0
+- CTRL_CMD_NEWFAMILY = 0x1
+- CTRL_CMD_DELFAMILY = 0x2
+- CTRL_CMD_GETFAMILY = 0x3
+- CTRL_CMD_NEWOPS = 0x4
+- CTRL_CMD_DELOPS = 0x5
+- CTRL_CMD_GETOPS = 0x6
+- CTRL_CMD_NEWMCAST_GRP = 0x7
+- CTRL_CMD_DELMCAST_GRP = 0x8
+- CTRL_CMD_GETMCAST_GRP = 0x9
+- CTRL_ATTR_UNSPEC = 0x0
+- CTRL_ATTR_FAMILY_ID = 0x1
+- CTRL_ATTR_FAMILY_NAME = 0x2
+- CTRL_ATTR_VERSION = 0x3
+- CTRL_ATTR_HDRSIZE = 0x4
+- CTRL_ATTR_MAXATTR = 0x5
+- CTRL_ATTR_OPS = 0x6
+- CTRL_ATTR_MCAST_GROUPS = 0x7
+- 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
++ SizeofTpacketHdr = 0x20
+ )
++
++type RTCPLLInfo struct {
++ Ctrl int32
++ Value int32
++ Max int32
++ Min int32
++ Posmult int32
++ Negmult int32
++ Clock int64
++}
++
++type BlkpgPartition struct {
++ Start int64
++ Length int64
++ Pno int32
++ Devname [64]uint8
++ Volname [64]uint8
++ _ [4]byte
++}
++
++const (
++ BLKPG = 0x20001269
++)
++
++type XDPUmemReg struct {
++ Addr uint64
++ Len uint64
++ Size uint32
++ Headroom uint32
++ Flags uint32
++ _ [4]byte
++}
++
++type CryptoUserAlg struct {
++ Name [64]uint8
++ Driver_name [64]uint8
++ Module_name [64]uint8
++ Type uint32
++ Mask uint32
++ Refcnt uint32
++ Flags uint32
++}
++
++type CryptoStatAEAD struct {
++ Type [64]uint8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatAKCipher struct {
++ Type [64]uint8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Verify_cnt uint64
++ Sign_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCipher struct {
++ Type [64]uint8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCompress struct {
++ Type [64]uint8
++ Compress_cnt uint64
++ Compress_tlen uint64
++ Decompress_cnt uint64
++ Decompress_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatHash struct {
++ Type [64]uint8
++ Hash_cnt uint64
++ Hash_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatKPP struct {
++ Type [64]uint8
++ Setsecret_cnt uint64
++ Generate_public_key_cnt uint64
++ Compute_shared_secret_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatRNG struct {
++ Type [64]uint8
++ Generate_cnt uint64
++ Generate_tlen uint64
++ Seed_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatLarval struct {
++ Type [64]uint8
++}
++
++type CryptoReportLarval struct {
++ Type [64]uint8
++}
++
++type CryptoReportHash struct {
++ Type [64]uint8
++ Blocksize uint32
++ Digestsize uint32
++}
++
++type CryptoReportCipher struct {
++ Type [64]uint8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++}
++
++type CryptoReportBlkCipher struct {
++ Type [64]uint8
++ Geniv [64]uint8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++ Ivsize uint32
++}
++
++type CryptoReportAEAD struct {
++ Type [64]uint8
++ Geniv [64]uint8
++ Blocksize uint32
++ Maxauthsize uint32
++ Ivsize uint32
++}
++
++type CryptoReportComp struct {
++ Type [64]uint8
++}
++
++type CryptoReportRNG struct {
++ Type [64]uint8
++ Seedsize uint32
++}
++
++type CryptoReportAKCipher struct {
++ Type [64]uint8
++}
++
++type CryptoReportKPP struct {
++ Type [64]uint8
++}
++
++type CryptoReportAcomp struct {
++ Type [64]uint8
++}
++
++type LoopInfo struct {
++ Number int32
++ Device uint64
++ Inode uint64
++ Rdevice uint64
++ Offset int32
++ Encrypt_type int32
++ Encrypt_key_size int32
++ Flags int32
++ Name [64]uint8
++ Encrypt_key [32]uint8
++ Init [2]uint64
++ Reserved [4]uint8
++ _ [4]byte
++}
++
++type TIPCSubscr struct {
++ Seq TIPCServiceRange
++ Timeout uint32
++ Filter uint32
++ Handle [8]uint8
++}
++
++type TIPCSIOCLNReq struct {
++ Peer uint32
++ Id uint32
++ Linkname [68]uint8
++}
++
++type TIPCSIOCNodeIDReq struct {
++ Peer uint32
++ Id [16]uint8
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
+index b2b59992..046c2deb 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
+@@ -6,19 +6,12 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
+- PathMax = 0x1000
++ SizeofPtr = 0x8
++ SizeofLong = 0x8
+ )
+
+ type (
+- _C_short int16
+- _C_int int32
+- _C_long int64
+- _C_long_long int64
++ _C_long int64
+ )
+
+ type Timespec struct {
+@@ -33,13 +26,11 @@ type Timeval struct {
+
+ type Timex struct {
+ Modes uint32
+- Pad_cgo_0 [4]byte
+ Offset int64
+ Freq int64
+ Maxerror int64
+ Esterror int64
+ Status int32
+- Pad_cgo_1 [4]byte
+ Constant int64
+ Precision int64
+ Tolerance int64
+@@ -48,14 +39,13 @@ type Timex struct {
+ Ppsfreq int64
+ Jitter int64
+ Shift int32
+- Pad_cgo_2 [4]byte
+ Stabil int64
+ Jitcnt int64
+ Calcnt int64
+ Errcnt int64
+ Stbcnt int64
+ Tai int32
+- Pad_cgo_3 [44]byte
++ _ [44]byte
+ }
+
+ type Time_t int64
+@@ -91,13 +81,6 @@ type Rusage struct {
+ Nivcsw int64
+ }
+
+-type Rlimit struct {
+- Cur uint64
+- Max uint64
+-}
+-
+-type _Gid_t uint32
+-
+ type Stat_t struct {
+ Dev uint64
+ Ino uint64
+@@ -105,7 +88,7 @@ type Stat_t struct {
+ Mode uint32
+ Uid uint32
+ Gid uint32
+- X__pad2 int32
++ _ int32
+ Rdev uint64
+ Size int64
+ Blksize int64
+@@ -118,139 +101,29 @@ type Stat_t struct {
+ _ uint64
+ }
+
+-type Statfs_t struct {
+- Type int64
+- Bsize int64
+- Blocks uint64
+- Bfree uint64
+- Bavail uint64
+- Files uint64
+- Ffree uint64
+- Fsid Fsid
+- Namelen int64
+- Frsize int64
+- Flags int64
+- Spare [4]int64
+-}
+-
+ type Dirent struct {
+- Ino uint64
+- Off int64
+- Reclen uint16
+- Type uint8
+- Name [256]uint8
+- Pad_cgo_0 [5]byte
+-}
+-
+-type Fsid struct {
+- X__val [2]int32
++ Ino uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Name [256]uint8
++ _ [5]byte
+ }
+
+ type Flock_t struct {
+- Type int16
+- Whence int16
+- Pad_cgo_0 [4]byte
+- Start int64
+- Len int64
+- Pid int32
+- Pad_cgo_1 [4]byte
+-}
+-
+-type FscryptPolicy struct {
+- Version uint8
+- Contents_encryption_mode uint8
+- Filenames_encryption_mode uint8
+- Flags uint8
+- Master_key_descriptor [8]uint8
+-}
+-
+-type FscryptKey struct {
+- Mode uint32
+- Raw [64]uint8
+- Size uint32
+-}
+-
+-type KeyctlDHParams struct {
+- Private int32
+- Prime int32
+- Base int32
++ Type int16
++ Whence int16
++ Start int64
++ Len int64
++ Pid int32
++ _ [4]byte
+ }
+
+ const (
+- FADV_NORMAL = 0x0
+- FADV_RANDOM = 0x1
+- FADV_SEQUENTIAL = 0x2
+- FADV_WILLNEED = 0x3
+- FADV_DONTNEED = 0x4
+- FADV_NOREUSE = 0x5
++ FADV_DONTNEED = 0x4
++ FADV_NOREUSE = 0x5
+ )
+
+-type RawSockaddrInet4 struct {
+- Family uint16
+- Port uint16
+- Addr [4]byte /* in_addr */
+- Zero [8]uint8
+-}
+-
+-type RawSockaddrInet6 struct {
+- Family uint16
+- Port uint16
+- Flowinfo uint32
+- Addr [16]byte /* in6_addr */
+- Scope_id uint32
+-}
+-
+-type RawSockaddrUnix struct {
+- Family uint16
+- Path [108]int8
+-}
+-
+-type RawSockaddrLinklayer struct {
+- Family uint16
+- Protocol uint16
+- Ifindex int32
+- Hatype uint16
+- Pkttype uint8
+- Halen uint8
+- Addr [8]uint8
+-}
+-
+-type RawSockaddrNetlink struct {
+- Family uint16
+- Pad uint16
+- Pid uint32
+- Groups uint32
+-}
+-
+-type RawSockaddrHCI struct {
+- Family uint16
+- Dev uint16
+- Channel uint16
+-}
+-
+-type RawSockaddrCAN struct {
+- Family uint16
+- Pad_cgo_0 [2]byte
+- Ifindex int32
+- Addr [8]byte
+-}
+-
+-type RawSockaddrALG struct {
+- Family uint16
+- Type [14]uint8
+- Feat uint32
+- Mask uint32
+- Name [64]uint8
+-}
+-
+-type RawSockaddrVM struct {
+- Family uint16
+- Reserved1 uint16
+- Port uint32
+- Cid uint32
+- Zero [4]uint8
+-}
+-
+ type RawSockaddr struct {
+ Family uint16
+ Data [14]uint8
+@@ -261,51 +134,20 @@ type RawSockaddrAny struct {
+ Pad [96]uint8
+ }
+
+-type _Socklen uint32
+-
+-type Linger struct {
+- Onoff int32
+- Linger int32
+-}
+-
+ type Iovec struct {
+ Base *byte
+ Len uint64
+ }
+
+-type IPMreq struct {
+- Multiaddr [4]byte /* in_addr */
+- Interface [4]byte /* in_addr */
+-}
+-
+-type IPMreqn struct {
+- Multiaddr [4]byte /* in_addr */
+- Address [4]byte /* in_addr */
+- Ifindex int32
+-}
+-
+-type IPv6Mreq struct {
+- Multiaddr [16]byte /* in6_addr */
+- Interface uint32
+-}
+-
+-type PacketMreq struct {
+- Ifindex int32
+- Type uint16
+- Alen uint16
+- Address [8]uint8
+-}
+-
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+- Pad_cgo_0 [4]byte
+ Iov *Iovec
+ Iovlen uint64
+ Control *byte
+ Controllen uint64
+ Flags int32
+- Pad_cgo_1 [4]byte
++ _ [4]byte
+ }
+
+ type Cmsghdr struct {
+@@ -314,277 +156,16 @@ type Cmsghdr struct {
+ Type int32
+ }
+
+-type Inet4Pktinfo struct {
+- Ifindex int32
+- Spec_dst [4]byte /* in_addr */
+- Addr [4]byte /* in_addr */
+-}
+-
+-type Inet6Pktinfo struct {
+- Addr [16]byte /* in6_addr */
+- Ifindex uint32
+-}
+-
+-type IPv6MTUInfo struct {
+- Addr RawSockaddrInet6
+- Mtu uint32
+-}
+-
+-type ICMPv6Filter struct {
+- Data [8]uint32
+-}
+-
+-type Ucred struct {
+- Pid int32
+- Uid uint32
+- Gid uint32
+-}
+-
+-type TCPInfo struct {
+- State uint8
+- Ca_state uint8
+- Retransmits uint8
+- Probes uint8
+- Backoff uint8
+- Options uint8
+- Pad_cgo_0 [2]byte
+- Rto uint32
+- Ato uint32
+- Snd_mss uint32
+- Rcv_mss uint32
+- Unacked uint32
+- Sacked uint32
+- Lost uint32
+- Retrans uint32
+- Fackets uint32
+- Last_data_sent uint32
+- Last_ack_sent uint32
+- Last_data_recv uint32
+- Last_ack_recv uint32
+- Pmtu uint32
+- Rcv_ssthresh uint32
+- Rtt uint32
+- Rttvar uint32
+- Snd_ssthresh uint32
+- Snd_cwnd uint32
+- Advmss uint32
+- Reordering uint32
+- Rcv_rtt uint32
+- Rcv_space uint32
+- Total_retrans uint32
+-}
+-
+ const (
+- SizeofSockaddrInet4 = 0x10
+- SizeofSockaddrInet6 = 0x1c
+- SizeofSockaddrAny = 0x70
+- SizeofSockaddrUnix = 0x6e
+- SizeofSockaddrLinklayer = 0x14
+- SizeofSockaddrNetlink = 0xc
+- SizeofSockaddrHCI = 0x6
+- SizeofSockaddrCAN = 0x10
+- SizeofSockaddrALG = 0x58
+- SizeofSockaddrVM = 0x10
+- SizeofLinger = 0x8
+- SizeofIovec = 0x10
+- SizeofIPMreq = 0x8
+- SizeofIPMreqn = 0xc
+- SizeofIPv6Mreq = 0x14
+- SizeofPacketMreq = 0x10
+- SizeofMsghdr = 0x38
+- SizeofCmsghdr = 0x10
+- SizeofInet4Pktinfo = 0xc
+- SizeofInet6Pktinfo = 0x14
+- SizeofIPv6MTUInfo = 0x20
+- SizeofICMPv6Filter = 0x20
+- SizeofUcred = 0xc
+- SizeofTCPInfo = 0x68
++ SizeofIovec = 0x10
++ SizeofMsghdr = 0x38
++ SizeofCmsghdr = 0x10
+ )
+
+ const (
+- IFA_UNSPEC = 0x0
+- IFA_ADDRESS = 0x1
+- IFA_LOCAL = 0x2
+- IFA_LABEL = 0x3
+- IFA_BROADCAST = 0x4
+- IFA_ANYCAST = 0x5
+- IFA_CACHEINFO = 0x6
+- IFA_MULTICAST = 0x7
+- IFLA_UNSPEC = 0x0
+- IFLA_ADDRESS = 0x1
+- IFLA_BROADCAST = 0x2
+- IFLA_IFNAME = 0x3
+- IFLA_MTU = 0x4
+- IFLA_LINK = 0x5
+- IFLA_QDISC = 0x6
+- IFLA_STATS = 0x7
+- IFLA_COST = 0x8
+- IFLA_PRIORITY = 0x9
+- IFLA_MASTER = 0xa
+- IFLA_WIRELESS = 0xb
+- IFLA_PROTINFO = 0xc
+- IFLA_TXQLEN = 0xd
+- IFLA_MAP = 0xe
+- IFLA_WEIGHT = 0xf
+- IFLA_OPERSTATE = 0x10
+- IFLA_LINKMODE = 0x11
+- IFLA_LINKINFO = 0x12
+- IFLA_NET_NS_PID = 0x13
+- IFLA_IFALIAS = 0x14
+- IFLA_MAX = 0x2b
+- RT_SCOPE_UNIVERSE = 0x0
+- RT_SCOPE_SITE = 0xc8
+- RT_SCOPE_LINK = 0xfd
+- RT_SCOPE_HOST = 0xfe
+- RT_SCOPE_NOWHERE = 0xff
+- RT_TABLE_UNSPEC = 0x0
+- RT_TABLE_COMPAT = 0xfc
+- RT_TABLE_DEFAULT = 0xfd
+- RT_TABLE_MAIN = 0xfe
+- RT_TABLE_LOCAL = 0xff
+- RT_TABLE_MAX = 0xffffffff
+- RTA_UNSPEC = 0x0
+- RTA_DST = 0x1
+- RTA_SRC = 0x2
+- RTA_IIF = 0x3
+- RTA_OIF = 0x4
+- RTA_GATEWAY = 0x5
+- RTA_PRIORITY = 0x6
+- RTA_PREFSRC = 0x7
+- RTA_METRICS = 0x8
+- RTA_MULTIPATH = 0x9
+- RTA_FLOW = 0xb
+- RTA_CACHEINFO = 0xc
+- RTA_TABLE = 0xf
+- RTN_UNSPEC = 0x0
+- RTN_UNICAST = 0x1
+- RTN_LOCAL = 0x2
+- RTN_BROADCAST = 0x3
+- RTN_ANYCAST = 0x4
+- RTN_MULTICAST = 0x5
+- RTN_BLACKHOLE = 0x6
+- RTN_UNREACHABLE = 0x7
+- RTN_PROHIBIT = 0x8
+- RTN_THROW = 0x9
+- RTN_NAT = 0xa
+- RTN_XRESOLVE = 0xb
+- RTNLGRP_NONE = 0x0
+- RTNLGRP_LINK = 0x1
+- RTNLGRP_NOTIFY = 0x2
+- RTNLGRP_NEIGH = 0x3
+- RTNLGRP_TC = 0x4
+- RTNLGRP_IPV4_IFADDR = 0x5
+- RTNLGRP_IPV4_MROUTE = 0x6
+- RTNLGRP_IPV4_ROUTE = 0x7
+- RTNLGRP_IPV4_RULE = 0x8
+- RTNLGRP_IPV6_IFADDR = 0x9
+- RTNLGRP_IPV6_MROUTE = 0xa
+- RTNLGRP_IPV6_ROUTE = 0xb
+- RTNLGRP_IPV6_IFINFO = 0xc
+- RTNLGRP_IPV6_PREFIX = 0x12
+- RTNLGRP_IPV6_RULE = 0x13
+- RTNLGRP_ND_USEROPT = 0x14
+- SizeofNlMsghdr = 0x10
+- SizeofNlMsgerr = 0x14
+- SizeofRtGenmsg = 0x1
+- SizeofNlAttr = 0x4
+- SizeofRtAttr = 0x4
+- SizeofIfInfomsg = 0x10
+- SizeofIfAddrmsg = 0x8
+- SizeofRtMsg = 0xc
+- SizeofRtNexthop = 0x8
++ SizeofSockFprog = 0x10
+ )
+
+-type NlMsghdr struct {
+- Len uint32
+- Type uint16
+- Flags uint16
+- Seq uint32
+- Pid uint32
+-}
+-
+-type NlMsgerr struct {
+- Error int32
+- Msg NlMsghdr
+-}
+-
+-type RtGenmsg struct {
+- Family uint8
+-}
+-
+-type NlAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type RtAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type IfInfomsg struct {
+- Family uint8
+- X__ifi_pad uint8
+- Type uint16
+- Index int32
+- Flags uint32
+- Change uint32
+-}
+-
+-type IfAddrmsg struct {
+- Family uint8
+- Prefixlen uint8
+- Flags uint8
+- Scope uint8
+- Index uint32
+-}
+-
+-type RtMsg struct {
+- Family uint8
+- Dst_len uint8
+- Src_len uint8
+- Tos uint8
+- Table uint8
+- Protocol uint8
+- Scope uint8
+- Type uint8
+- Flags uint32
+-}
+-
+-type RtNexthop struct {
+- Len uint16
+- Flags uint8
+- Hops uint8
+- Ifindex int32
+-}
+-
+-const (
+- SizeofSockFilter = 0x8
+- SizeofSockFprog = 0x10
+-)
+-
+-type SockFilter struct {
+- Code uint16
+- Jt uint8
+- Jf uint8
+- K uint32
+-}
+-
+-type SockFprog struct {
+- Len uint16
+- Pad_cgo_0 [6]byte
+- Filter *SockFilter
+-}
+-
+-type InotifyEvent struct {
+- Wd int32
+- Mask uint32
+- Cookie uint32
+- Len uint32
+-}
+-
+-const SizeofInotifyEvent = 0x10
+-
+ type PtraceRegs struct {
+ Gpr [32]uint64
+ Nip uint64
+@@ -616,71 +197,37 @@ type Sysinfo_t struct {
+ Freeswap uint64
+ Procs uint16
+ Pad uint16
+- Pad_cgo_0 [4]byte
+ Totalhigh uint64
+ Freehigh uint64
+ Unit uint32
+- X_f [0]uint8
+- Pad_cgo_1 [4]byte
+-}
+-
+-type Utsname struct {
+- Sysname [65]uint8
+- Nodename [65]uint8
+- Release [65]uint8
+- Version [65]uint8
+- Machine [65]uint8
+- Domainname [65]uint8
++ _ [0]uint8
++ _ [4]byte
+ }
+
+ type Ustat_t struct {
+- Tfree int32
+- Pad_cgo_0 [4]byte
+- Tinode uint64
+- Fname [6]uint8
+- Fpack [6]uint8
+- Pad_cgo_1 [4]byte
++ Tfree int32
++ Tinode uint64
++ Fname [6]uint8
++ Fpack [6]uint8
++ _ [4]byte
+ }
+
+ type EpollEvent struct {
+- Events uint32
+- X_padFd int32
+- Fd int32
+- Pad int32
+-}
+-
+-const (
+- AT_FDCWD = -0x64
+- AT_REMOVEDIR = 0x200
+- AT_SYMLINK_FOLLOW = 0x400
+- AT_SYMLINK_NOFOLLOW = 0x100
+-)
+-
+-type PollFd struct {
+- Fd int32
+- Events int16
+- Revents int16
++ Events uint32
++ _ int32
++ Fd int32
++ Pad int32
+ }
+
+ const (
+- POLLIN = 0x1
+- POLLPRI = 0x2
+- POLLOUT = 0x4
+ POLLRDHUP = 0x2000
+- POLLERR = 0x8
+- POLLHUP = 0x10
+- POLLNVAL = 0x20
+ )
+
+ type Sigset_t struct {
+- X__val [16]uint64
++ Val [16]uint64
+ }
+
+-const RNDGETENTCNT = 0x40045200
+-
+-const PERF_IOC_FLAG_GROUP = 0x1
+-
+-const _SC_PAGESIZE = 0x1e
++const _C__NSIG = 0x41
+
+ type Termios struct {
+ Iflag uint32
+@@ -693,20 +240,11 @@ type Termios struct {
+ Ospeed uint32
+ }
+
+-type Winsize struct {
+- Row uint16
+- Col uint16
+- Xpixel uint16
+- Ypixel uint16
+-}
+-
+ type Taskstats struct {
+ Version uint16
+- Pad_cgo_0 [2]byte
+ Ac_exitcode uint32
+ Ac_flag uint8
+ Ac_nice uint8
+- Pad_cgo_1 [6]byte
+ Cpu_count uint64
+ Cpu_delay_total uint64
+ Blkio_count uint64
+@@ -718,13 +256,12 @@ type Taskstats struct {
+ Ac_comm [32]uint8
+ Ac_sched uint8
+ Ac_pad [3]uint8
+- Pad_cgo_2 [4]byte
++ _ [4]byte
+ Ac_uid uint32
+ Ac_gid uint32
+ Ac_pid uint32
+ Ac_ppid uint32
+ Ac_btime uint32
+- Pad_cgo_3 [4]byte
+ Ac_etime uint64
+ Ac_utime uint64
+ Ac_stime uint64
+@@ -748,55 +285,319 @@ type Taskstats struct {
+ Cpu_scaled_run_real_total uint64
+ Freepages_count uint64
+ Freepages_delay_total uint64
++ Thrashing_count uint64
++ Thrashing_delay_total uint64
++ Ac_btime64 uint64
+ }
+
++type cpuMask uint64
++
+ const (
+- TASKSTATS_CMD_UNSPEC = 0x0
+- TASKSTATS_CMD_GET = 0x1
+- TASKSTATS_CMD_NEW = 0x2
+- TASKSTATS_TYPE_UNSPEC = 0x0
+- TASKSTATS_TYPE_PID = 0x1
+- TASKSTATS_TYPE_TGID = 0x2
+- TASKSTATS_TYPE_STATS = 0x3
+- TASKSTATS_TYPE_AGGR_PID = 0x4
+- TASKSTATS_TYPE_AGGR_TGID = 0x5
+- TASKSTATS_TYPE_NULL = 0x6
+- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
+- TASKSTATS_CMD_ATTR_PID = 0x1
+- TASKSTATS_CMD_ATTR_TGID = 0x2
+- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
+- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
++ _NCPUBITS = 0x40
+ )
+
+-type Genlmsghdr struct {
+- Cmd uint8
+- Version uint8
+- Reserved uint16
++const (
++ CBitFieldMaskBit0 = 0x1
++ CBitFieldMaskBit1 = 0x2
++ CBitFieldMaskBit2 = 0x4
++ CBitFieldMaskBit3 = 0x8
++ CBitFieldMaskBit4 = 0x10
++ CBitFieldMaskBit5 = 0x20
++ CBitFieldMaskBit6 = 0x40
++ CBitFieldMaskBit7 = 0x80
++ CBitFieldMaskBit8 = 0x100
++ CBitFieldMaskBit9 = 0x200
++ CBitFieldMaskBit10 = 0x400
++ CBitFieldMaskBit11 = 0x800
++ CBitFieldMaskBit12 = 0x1000
++ CBitFieldMaskBit13 = 0x2000
++ CBitFieldMaskBit14 = 0x4000
++ CBitFieldMaskBit15 = 0x8000
++ CBitFieldMaskBit16 = 0x10000
++ CBitFieldMaskBit17 = 0x20000
++ CBitFieldMaskBit18 = 0x40000
++ CBitFieldMaskBit19 = 0x80000
++ CBitFieldMaskBit20 = 0x100000
++ CBitFieldMaskBit21 = 0x200000
++ CBitFieldMaskBit22 = 0x400000
++ CBitFieldMaskBit23 = 0x800000
++ CBitFieldMaskBit24 = 0x1000000
++ CBitFieldMaskBit25 = 0x2000000
++ CBitFieldMaskBit26 = 0x4000000
++ CBitFieldMaskBit27 = 0x8000000
++ CBitFieldMaskBit28 = 0x10000000
++ CBitFieldMaskBit29 = 0x20000000
++ CBitFieldMaskBit30 = 0x40000000
++ CBitFieldMaskBit31 = 0x80000000
++ CBitFieldMaskBit32 = 0x100000000
++ CBitFieldMaskBit33 = 0x200000000
++ CBitFieldMaskBit34 = 0x400000000
++ CBitFieldMaskBit35 = 0x800000000
++ CBitFieldMaskBit36 = 0x1000000000
++ CBitFieldMaskBit37 = 0x2000000000
++ CBitFieldMaskBit38 = 0x4000000000
++ CBitFieldMaskBit39 = 0x8000000000
++ CBitFieldMaskBit40 = 0x10000000000
++ CBitFieldMaskBit41 = 0x20000000000
++ CBitFieldMaskBit42 = 0x40000000000
++ CBitFieldMaskBit43 = 0x80000000000
++ CBitFieldMaskBit44 = 0x100000000000
++ CBitFieldMaskBit45 = 0x200000000000
++ CBitFieldMaskBit46 = 0x400000000000
++ CBitFieldMaskBit47 = 0x800000000000
++ CBitFieldMaskBit48 = 0x1000000000000
++ CBitFieldMaskBit49 = 0x2000000000000
++ CBitFieldMaskBit50 = 0x4000000000000
++ CBitFieldMaskBit51 = 0x8000000000000
++ CBitFieldMaskBit52 = 0x10000000000000
++ CBitFieldMaskBit53 = 0x20000000000000
++ CBitFieldMaskBit54 = 0x40000000000000
++ CBitFieldMaskBit55 = 0x80000000000000
++ CBitFieldMaskBit56 = 0x100000000000000
++ CBitFieldMaskBit57 = 0x200000000000000
++ CBitFieldMaskBit58 = 0x400000000000000
++ CBitFieldMaskBit59 = 0x800000000000000
++ CBitFieldMaskBit60 = 0x1000000000000000
++ CBitFieldMaskBit61 = 0x2000000000000000
++ CBitFieldMaskBit62 = 0x4000000000000000
++ CBitFieldMaskBit63 = 0x8000000000000000
++)
++
++type SockaddrStorage struct {
++ Family uint16
++ _ [118]uint8
++ _ uint64
++}
++
++type HDGeometry struct {
++ Heads uint8
++ Sectors uint8
++ Cylinders uint16
++ Start uint64
++}
++
++type Statfs_t struct {
++ Type int64
++ Bsize int64
++ Blocks uint64
++ Bfree uint64
++ Bavail uint64
++ Files uint64
++ Ffree uint64
++ Fsid Fsid
++ Namelen int64
++ Frsize int64
++ Flags int64
++ Spare [4]int64
++}
++
++type TpacketHdr struct {
++ Status uint64
++ Len uint32
++ Snaplen uint32
++ Mac uint16
++ Net uint16
++ Sec uint32
++ Usec uint32
++ _ [4]byte
+ }
+
+ const (
+- CTRL_CMD_UNSPEC = 0x0
+- CTRL_CMD_NEWFAMILY = 0x1
+- CTRL_CMD_DELFAMILY = 0x2
+- CTRL_CMD_GETFAMILY = 0x3
+- CTRL_CMD_NEWOPS = 0x4
+- CTRL_CMD_DELOPS = 0x5
+- CTRL_CMD_GETOPS = 0x6
+- CTRL_CMD_NEWMCAST_GRP = 0x7
+- CTRL_CMD_DELMCAST_GRP = 0x8
+- CTRL_CMD_GETMCAST_GRP = 0x9
+- CTRL_ATTR_UNSPEC = 0x0
+- CTRL_ATTR_FAMILY_ID = 0x1
+- CTRL_ATTR_FAMILY_NAME = 0x2
+- CTRL_ATTR_VERSION = 0x3
+- CTRL_ATTR_HDRSIZE = 0x4
+- CTRL_ATTR_MAXATTR = 0x5
+- CTRL_ATTR_OPS = 0x6
+- CTRL_ATTR_MCAST_GROUPS = 0x7
+- 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
++ SizeofTpacketHdr = 0x20
+ )
++
++type RTCPLLInfo struct {
++ Ctrl int32
++ Value int32
++ Max int32
++ Min int32
++ Posmult int32
++ Negmult int32
++ Clock int64
++}
++
++type BlkpgPartition struct {
++ Start int64
++ Length int64
++ Pno int32
++ Devname [64]uint8
++ Volname [64]uint8
++ _ [4]byte
++}
++
++const (
++ BLKPG = 0x20001269
++)
++
++type XDPUmemReg struct {
++ Addr uint64
++ Len uint64
++ Size uint32
++ Headroom uint32
++ Flags uint32
++ _ [4]byte
++}
++
++type CryptoUserAlg struct {
++ Name [64]uint8
++ Driver_name [64]uint8
++ Module_name [64]uint8
++ Type uint32
++ Mask uint32
++ Refcnt uint32
++ Flags uint32
++}
++
++type CryptoStatAEAD struct {
++ Type [64]uint8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatAKCipher struct {
++ Type [64]uint8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Verify_cnt uint64
++ Sign_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCipher struct {
++ Type [64]uint8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCompress struct {
++ Type [64]uint8
++ Compress_cnt uint64
++ Compress_tlen uint64
++ Decompress_cnt uint64
++ Decompress_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatHash struct {
++ Type [64]uint8
++ Hash_cnt uint64
++ Hash_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatKPP struct {
++ Type [64]uint8
++ Setsecret_cnt uint64
++ Generate_public_key_cnt uint64
++ Compute_shared_secret_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatRNG struct {
++ Type [64]uint8
++ Generate_cnt uint64
++ Generate_tlen uint64
++ Seed_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatLarval struct {
++ Type [64]uint8
++}
++
++type CryptoReportLarval struct {
++ Type [64]uint8
++}
++
++type CryptoReportHash struct {
++ Type [64]uint8
++ Blocksize uint32
++ Digestsize uint32
++}
++
++type CryptoReportCipher struct {
++ Type [64]uint8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++}
++
++type CryptoReportBlkCipher struct {
++ Type [64]uint8
++ Geniv [64]uint8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++ Ivsize uint32
++}
++
++type CryptoReportAEAD struct {
++ Type [64]uint8
++ Geniv [64]uint8
++ Blocksize uint32
++ Maxauthsize uint32
++ Ivsize uint32
++}
++
++type CryptoReportComp struct {
++ Type [64]uint8
++}
++
++type CryptoReportRNG struct {
++ Type [64]uint8
++ Seedsize uint32
++}
++
++type CryptoReportAKCipher struct {
++ Type [64]uint8
++}
++
++type CryptoReportKPP struct {
++ Type [64]uint8
++}
++
++type CryptoReportAcomp struct {
++ Type [64]uint8
++}
++
++type LoopInfo struct {
++ Number int32
++ Device uint64
++ Inode uint64
++ Rdevice uint64
++ Offset int32
++ Encrypt_type int32
++ Encrypt_key_size int32
++ Flags int32
++ Name [64]uint8
++ Encrypt_key [32]uint8
++ Init [2]uint64
++ Reserved [4]uint8
++ _ [4]byte
++}
++
++type TIPCSubscr struct {
++ Seq TIPCServiceRange
++ Timeout uint32
++ Filter uint32
++ Handle [8]uint8
++}
++
++type TIPCSIOCLNReq struct {
++ Peer uint32
++ Id uint32
++ Linkname [68]uint8
++}
++
++type TIPCSIOCNodeIDReq struct {
++ Peer uint32
++ Id [16]uint8
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go
+new file mode 100644
+index 00000000..0f2f61a6
+--- /dev/null
++++ b/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go
+@@ -0,0 +1,621 @@
++// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
++// +build riscv64,linux
++
++package unix
++
++const (
++ SizeofPtr = 0x8
++ SizeofLong = 0x8
++)
++
++type (
++ _C_long int64
++)
++
++type Timespec struct {
++ Sec int64
++ Nsec int64
++}
++
++type Timeval struct {
++ Sec int64
++ Usec int64
++}
++
++type Timex struct {
++ Modes uint32
++ Offset int64
++ Freq int64
++ Maxerror int64
++ Esterror int64
++ Status int32
++ Constant int64
++ Precision int64
++ Tolerance int64
++ Time Timeval
++ Tick int64
++ Ppsfreq int64
++ Jitter int64
++ Shift int32
++ Stabil int64
++ Jitcnt int64
++ Calcnt int64
++ Errcnt int64
++ Stbcnt int64
++ Tai int32
++ _ [44]byte
++}
++
++type Time_t int64
++
++type Tms struct {
++ Utime int64
++ Stime int64
++ Cutime int64
++ Cstime int64
++}
++
++type Utimbuf struct {
++ Actime int64
++ Modtime int64
++}
++
++type Rusage struct {
++ Utime Timeval
++ Stime Timeval
++ Maxrss int64
++ Ixrss int64
++ Idrss int64
++ Isrss int64
++ Minflt int64
++ Majflt int64
++ Nswap int64
++ Inblock int64
++ Oublock int64
++ Msgsnd int64
++ Msgrcv int64
++ Nsignals int64
++ Nvcsw int64
++ Nivcsw int64
++}
++
++type Stat_t struct {
++ Dev uint64
++ Ino uint64
++ Mode uint32
++ Nlink uint32
++ Uid uint32
++ Gid uint32
++ Rdev uint64
++ _ uint64
++ Size int64
++ Blksize int32
++ _ int32
++ Blocks int64
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ _ [2]int32
++}
++
++type Dirent struct {
++ Ino uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Name [256]uint8
++ _ [5]byte
++}
++
++type Flock_t struct {
++ Type int16
++ Whence int16
++ Start int64
++ Len int64
++ Pid int32
++ _ [4]byte
++}
++
++const (
++ FADV_DONTNEED = 0x4
++ FADV_NOREUSE = 0x5
++)
++
++type RawSockaddr struct {
++ Family uint16
++ Data [14]uint8
++}
++
++type RawSockaddrAny struct {
++ Addr RawSockaddr
++ Pad [96]uint8
++}
++
++type Iovec struct {
++ Base *byte
++ Len uint64
++}
++
++type Msghdr struct {
++ Name *byte
++ Namelen uint32
++ Iov *Iovec
++ Iovlen uint64
++ Control *byte
++ Controllen uint64
++ Flags int32
++ _ [4]byte
++}
++
++type Cmsghdr struct {
++ Len uint64
++ Level int32
++ Type int32
++}
++
++const (
++ SizeofIovec = 0x10
++ SizeofMsghdr = 0x38
++ SizeofCmsghdr = 0x10
++)
++
++const (
++ SizeofSockFprog = 0x10
++)
++
++type PtraceRegs struct {
++ Pc uint64
++ Ra uint64
++ Sp uint64
++ Gp uint64
++ Tp uint64
++ T0 uint64
++ T1 uint64
++ T2 uint64
++ S0 uint64
++ S1 uint64
++ A0 uint64
++ A1 uint64
++ A2 uint64
++ A3 uint64
++ A4 uint64
++ A5 uint64
++ A6 uint64
++ A7 uint64
++ S2 uint64
++ S3 uint64
++ S4 uint64
++ S5 uint64
++ S6 uint64
++ S7 uint64
++ S8 uint64
++ S9 uint64
++ S10 uint64
++ S11 uint64
++ T3 uint64
++ T4 uint64
++ T5 uint64
++ T6 uint64
++}
++
++type FdSet struct {
++ Bits [16]int64
++}
++
++type Sysinfo_t struct {
++ Uptime int64
++ Loads [3]uint64
++ Totalram uint64
++ Freeram uint64
++ Sharedram uint64
++ Bufferram uint64
++ Totalswap uint64
++ Freeswap uint64
++ Procs uint16
++ Pad uint16
++ Totalhigh uint64
++ Freehigh uint64
++ Unit uint32
++ _ [0]uint8
++ _ [4]byte
++}
++
++type Ustat_t struct {
++ Tfree int32
++ Tinode uint64
++ Fname [6]uint8
++ Fpack [6]uint8
++ _ [4]byte
++}
++
++type EpollEvent struct {
++ Events uint32
++ _ int32
++ Fd int32
++ Pad int32
++}
++
++const (
++ POLLRDHUP = 0x2000
++)
++
++type Sigset_t struct {
++ Val [16]uint64
++}
++
++const _C__NSIG = 0x41
++
++type Termios struct {
++ Iflag uint32
++ Oflag uint32
++ Cflag uint32
++ Lflag uint32
++ Line uint8
++ Cc [19]uint8
++ Ispeed uint32
++ Ospeed uint32
++}
++
++type Taskstats struct {
++ Version uint16
++ Ac_exitcode uint32
++ Ac_flag uint8
++ Ac_nice uint8
++ Cpu_count uint64
++ Cpu_delay_total uint64
++ Blkio_count uint64
++ Blkio_delay_total uint64
++ Swapin_count uint64
++ Swapin_delay_total uint64
++ Cpu_run_real_total uint64
++ Cpu_run_virtual_total uint64
++ Ac_comm [32]uint8
++ Ac_sched uint8
++ Ac_pad [3]uint8
++ _ [4]byte
++ Ac_uid uint32
++ Ac_gid uint32
++ Ac_pid uint32
++ Ac_ppid uint32
++ Ac_btime uint32
++ Ac_etime uint64
++ Ac_utime uint64
++ Ac_stime uint64
++ Ac_minflt uint64
++ Ac_majflt uint64
++ Coremem uint64
++ Virtmem uint64
++ Hiwater_rss uint64
++ Hiwater_vm uint64
++ Read_char uint64
++ Write_char uint64
++ Read_syscalls uint64
++ Write_syscalls uint64
++ Read_bytes uint64
++ Write_bytes uint64
++ Cancelled_write_bytes uint64
++ Nvcsw uint64
++ Nivcsw uint64
++ Ac_utimescaled uint64
++ Ac_stimescaled uint64
++ Cpu_scaled_run_real_total uint64
++ Freepages_count uint64
++ Freepages_delay_total uint64
++ Thrashing_count uint64
++ Thrashing_delay_total uint64
++ Ac_btime64 uint64
++}
++
++type cpuMask uint64
++
++const (
++ _NCPUBITS = 0x40
++)
++
++const (
++ CBitFieldMaskBit0 = 0x1
++ CBitFieldMaskBit1 = 0x2
++ CBitFieldMaskBit2 = 0x4
++ CBitFieldMaskBit3 = 0x8
++ CBitFieldMaskBit4 = 0x10
++ CBitFieldMaskBit5 = 0x20
++ CBitFieldMaskBit6 = 0x40
++ CBitFieldMaskBit7 = 0x80
++ CBitFieldMaskBit8 = 0x100
++ CBitFieldMaskBit9 = 0x200
++ CBitFieldMaskBit10 = 0x400
++ CBitFieldMaskBit11 = 0x800
++ CBitFieldMaskBit12 = 0x1000
++ CBitFieldMaskBit13 = 0x2000
++ CBitFieldMaskBit14 = 0x4000
++ CBitFieldMaskBit15 = 0x8000
++ CBitFieldMaskBit16 = 0x10000
++ CBitFieldMaskBit17 = 0x20000
++ CBitFieldMaskBit18 = 0x40000
++ CBitFieldMaskBit19 = 0x80000
++ CBitFieldMaskBit20 = 0x100000
++ CBitFieldMaskBit21 = 0x200000
++ CBitFieldMaskBit22 = 0x400000
++ CBitFieldMaskBit23 = 0x800000
++ CBitFieldMaskBit24 = 0x1000000
++ CBitFieldMaskBit25 = 0x2000000
++ CBitFieldMaskBit26 = 0x4000000
++ CBitFieldMaskBit27 = 0x8000000
++ CBitFieldMaskBit28 = 0x10000000
++ CBitFieldMaskBit29 = 0x20000000
++ CBitFieldMaskBit30 = 0x40000000
++ CBitFieldMaskBit31 = 0x80000000
++ CBitFieldMaskBit32 = 0x100000000
++ CBitFieldMaskBit33 = 0x200000000
++ CBitFieldMaskBit34 = 0x400000000
++ CBitFieldMaskBit35 = 0x800000000
++ CBitFieldMaskBit36 = 0x1000000000
++ CBitFieldMaskBit37 = 0x2000000000
++ CBitFieldMaskBit38 = 0x4000000000
++ CBitFieldMaskBit39 = 0x8000000000
++ CBitFieldMaskBit40 = 0x10000000000
++ CBitFieldMaskBit41 = 0x20000000000
++ CBitFieldMaskBit42 = 0x40000000000
++ CBitFieldMaskBit43 = 0x80000000000
++ CBitFieldMaskBit44 = 0x100000000000
++ CBitFieldMaskBit45 = 0x200000000000
++ CBitFieldMaskBit46 = 0x400000000000
++ CBitFieldMaskBit47 = 0x800000000000
++ CBitFieldMaskBit48 = 0x1000000000000
++ CBitFieldMaskBit49 = 0x2000000000000
++ CBitFieldMaskBit50 = 0x4000000000000
++ CBitFieldMaskBit51 = 0x8000000000000
++ CBitFieldMaskBit52 = 0x10000000000000
++ CBitFieldMaskBit53 = 0x20000000000000
++ CBitFieldMaskBit54 = 0x40000000000000
++ CBitFieldMaskBit55 = 0x80000000000000
++ CBitFieldMaskBit56 = 0x100000000000000
++ CBitFieldMaskBit57 = 0x200000000000000
++ CBitFieldMaskBit58 = 0x400000000000000
++ CBitFieldMaskBit59 = 0x800000000000000
++ CBitFieldMaskBit60 = 0x1000000000000000
++ CBitFieldMaskBit61 = 0x2000000000000000
++ CBitFieldMaskBit62 = 0x4000000000000000
++ CBitFieldMaskBit63 = 0x8000000000000000
++)
++
++type SockaddrStorage struct {
++ Family uint16
++ _ [118]uint8
++ _ uint64
++}
++
++type HDGeometry struct {
++ Heads uint8
++ Sectors uint8
++ Cylinders uint16
++ Start uint64
++}
++
++type Statfs_t struct {
++ Type int64
++ Bsize int64
++ Blocks uint64
++ Bfree uint64
++ Bavail uint64
++ Files uint64
++ Ffree uint64
++ Fsid Fsid
++ Namelen int64
++ Frsize int64
++ Flags int64
++ Spare [4]int64
++}
++
++type TpacketHdr struct {
++ Status uint64
++ Len uint32
++ Snaplen uint32
++ Mac uint16
++ Net uint16
++ Sec uint32
++ Usec uint32
++ _ [4]byte
++}
++
++const (
++ SizeofTpacketHdr = 0x20
++)
++
++type RTCPLLInfo struct {
++ Ctrl int32
++ Value int32
++ Max int32
++ Min int32
++ Posmult int32
++ Negmult int32
++ Clock int64
++}
++
++type BlkpgPartition struct {
++ Start int64
++ Length int64
++ Pno int32
++ Devname [64]uint8
++ Volname [64]uint8
++ _ [4]byte
++}
++
++const (
++ BLKPG = 0x1269
++)
++
++type XDPUmemReg struct {
++ Addr uint64
++ Len uint64
++ Size uint32
++ Headroom uint32
++ Flags uint32
++ _ [4]byte
++}
++
++type CryptoUserAlg struct {
++ Name [64]uint8
++ Driver_name [64]uint8
++ Module_name [64]uint8
++ Type uint32
++ Mask uint32
++ Refcnt uint32
++ Flags uint32
++}
++
++type CryptoStatAEAD struct {
++ Type [64]uint8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatAKCipher struct {
++ Type [64]uint8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Verify_cnt uint64
++ Sign_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCipher struct {
++ Type [64]uint8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCompress struct {
++ Type [64]uint8
++ Compress_cnt uint64
++ Compress_tlen uint64
++ Decompress_cnt uint64
++ Decompress_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatHash struct {
++ Type [64]uint8
++ Hash_cnt uint64
++ Hash_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatKPP struct {
++ Type [64]uint8
++ Setsecret_cnt uint64
++ Generate_public_key_cnt uint64
++ Compute_shared_secret_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatRNG struct {
++ Type [64]uint8
++ Generate_cnt uint64
++ Generate_tlen uint64
++ Seed_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatLarval struct {
++ Type [64]uint8
++}
++
++type CryptoReportLarval struct {
++ Type [64]uint8
++}
++
++type CryptoReportHash struct {
++ Type [64]uint8
++ Blocksize uint32
++ Digestsize uint32
++}
++
++type CryptoReportCipher struct {
++ Type [64]uint8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++}
++
++type CryptoReportBlkCipher struct {
++ Type [64]uint8
++ Geniv [64]uint8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++ Ivsize uint32
++}
++
++type CryptoReportAEAD struct {
++ Type [64]uint8
++ Geniv [64]uint8
++ Blocksize uint32
++ Maxauthsize uint32
++ Ivsize uint32
++}
++
++type CryptoReportComp struct {
++ Type [64]uint8
++}
++
++type CryptoReportRNG struct {
++ Type [64]uint8
++ Seedsize uint32
++}
++
++type CryptoReportAKCipher struct {
++ Type [64]uint8
++}
++
++type CryptoReportKPP struct {
++ Type [64]uint8
++}
++
++type CryptoReportAcomp struct {
++ Type [64]uint8
++}
++
++type LoopInfo struct {
++ Number int32
++ Device uint32
++ Inode uint64
++ Rdevice uint32
++ Offset int32
++ Encrypt_type int32
++ Encrypt_key_size int32
++ Flags int32
++ Name [64]uint8
++ Encrypt_key [32]uint8
++ Init [2]uint64
++ Reserved [4]uint8
++ _ [4]byte
++}
++
++type TIPCSubscr struct {
++ Seq TIPCServiceRange
++ Timeout uint32
++ Filter uint32
++ Handle [8]uint8
++}
++
++type TIPCSIOCLNReq struct {
++ Peer uint32
++ Id uint32
++ Linkname [68]uint8
++}
++
++type TIPCSIOCNodeIDReq struct {
++ Peer uint32
++ Id [16]uint8
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go b/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go
+index 5e0aa663..cca1b6be 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go
+@@ -6,19 +6,12 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
+- PathMax = 0x1000
++ SizeofPtr = 0x8
++ SizeofLong = 0x8
+ )
+
+ type (
+- _C_short int16
+- _C_int int32
+- _C_long int64
+- _C_long_long int64
++ _C_long int64
+ )
+
+ type Timespec struct {
+@@ -33,13 +26,11 @@ type Timeval struct {
+
+ type Timex struct {
+ Modes uint32
+- _ [4]byte
+ Offset int64
+ Freq int64
+ Maxerror int64
+ Esterror int64
+ Status int32
+- _ [4]byte
+ Constant int64
+ Precision int64
+ Tolerance int64
+@@ -48,7 +39,6 @@ type Timex struct {
+ Ppsfreq int64
+ Jitter int64
+ Shift int32
+- _ [4]byte
+ Stabil int64
+ Jitcnt int64
+ Calcnt int64
+@@ -91,13 +81,6 @@ type Rusage struct {
+ Nivcsw int64
+ }
+
+-type Rlimit struct {
+- Cur uint64
+- Max uint64
+-}
+-
+-type _Gid_t uint32
+-
+ type Stat_t struct {
+ Dev uint64
+ Ino uint64
+@@ -116,22 +99,6 @@ type Stat_t struct {
+ _ [3]int64
+ }
+
+-type Statfs_t struct {
+- Type uint32
+- Bsize uint32
+- Blocks uint64
+- Bfree uint64
+- Bavail uint64
+- Files uint64
+- Ffree uint64
+- Fsid Fsid
+- Namelen uint32
+- Frsize uint32
+- Flags uint32
+- Spare [4]uint32
+- _ [4]byte
+-}
+-
+ type Dirent struct {
+ Ino uint64
+ Off int64
+@@ -141,115 +108,20 @@ type Dirent struct {
+ _ [5]byte
+ }
+
+-type Fsid struct {
+- _ [2]int32
+-}
+-
+ type Flock_t struct {
+ Type int16
+ Whence int16
+- _ [4]byte
+ Start int64
+ Len int64
+ Pid int32
+ _ [4]byte
+ }
+
+-type FscryptPolicy struct {
+- Version uint8
+- Contents_encryption_mode uint8
+- Filenames_encryption_mode uint8
+- Flags uint8
+- Master_key_descriptor [8]uint8
+-}
+-
+-type FscryptKey struct {
+- Mode uint32
+- Raw [64]uint8
+- Size uint32
+-}
+-
+-type KeyctlDHParams struct {
+- Private int32
+- Prime int32
+- Base int32
+-}
+-
+ const (
+- FADV_NORMAL = 0x0
+- FADV_RANDOM = 0x1
+- FADV_SEQUENTIAL = 0x2
+- FADV_WILLNEED = 0x3
+- FADV_DONTNEED = 0x6
+- FADV_NOREUSE = 0x7
++ FADV_DONTNEED = 0x6
++ FADV_NOREUSE = 0x7
+ )
+
+-type RawSockaddrInet4 struct {
+- Family uint16
+- Port uint16
+- Addr [4]byte /* in_addr */
+- Zero [8]uint8
+-}
+-
+-type RawSockaddrInet6 struct {
+- Family uint16
+- Port uint16
+- Flowinfo uint32
+- Addr [16]byte /* in6_addr */
+- Scope_id uint32
+-}
+-
+-type RawSockaddrUnix struct {
+- Family uint16
+- Path [108]int8
+-}
+-
+-type RawSockaddrLinklayer struct {
+- Family uint16
+- Protocol uint16
+- Ifindex int32
+- Hatype uint16
+- Pkttype uint8
+- Halen uint8
+- Addr [8]uint8
+-}
+-
+-type RawSockaddrNetlink struct {
+- Family uint16
+- Pad uint16
+- Pid uint32
+- Groups uint32
+-}
+-
+-type RawSockaddrHCI struct {
+- Family uint16
+- Dev uint16
+- Channel uint16
+-}
+-
+-type RawSockaddrCAN struct {
+- Family uint16
+- _ [2]byte
+- Ifindex int32
+- Addr [8]byte
+-}
+-
+-type RawSockaddrALG struct {
+- Family uint16
+- Type [14]uint8
+- Feat uint32
+- Mask uint32
+- Name [64]uint8
+-}
+-
+-type RawSockaddrVM struct {
+- Family uint16
+- Reserved1 uint16
+- Port uint32
+- Cid uint32
+- Zero [4]uint8
+-}
+-
+ type RawSockaddr struct {
+ Family uint16
+ Data [14]int8
+@@ -260,45 +132,14 @@ type RawSockaddrAny struct {
+ Pad [96]int8
+ }
+
+-type _Socklen uint32
+-
+-type Linger struct {
+- Onoff int32
+- Linger int32
+-}
+-
+ type Iovec struct {
+ Base *byte
+ Len uint64
+ }
+
+-type IPMreq struct {
+- Multiaddr [4]byte /* in_addr */
+- Interface [4]byte /* in_addr */
+-}
+-
+-type IPMreqn struct {
+- Multiaddr [4]byte /* in_addr */
+- Address [4]byte /* in_addr */
+- Ifindex int32
+-}
+-
+-type IPv6Mreq struct {
+- Multiaddr [16]byte /* in6_addr */
+- Interface uint32
+-}
+-
+-type PacketMreq struct {
+- Ifindex int32
+- Type uint16
+- Alen uint16
+- Address [8]uint8
+-}
+-
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+- _ [4]byte
+ Iov *Iovec
+ Iovlen uint64
+ Control *byte
+@@ -313,277 +154,16 @@ type Cmsghdr struct {
+ Type int32
+ }
+
+-type Inet4Pktinfo struct {
+- Ifindex int32
+- Spec_dst [4]byte /* in_addr */
+- Addr [4]byte /* in_addr */
+-}
+-
+-type Inet6Pktinfo struct {
+- Addr [16]byte /* in6_addr */
+- Ifindex uint32
+-}
+-
+-type IPv6MTUInfo struct {
+- Addr RawSockaddrInet6
+- Mtu uint32
+-}
+-
+-type ICMPv6Filter struct {
+- Data [8]uint32
+-}
+-
+-type Ucred struct {
+- Pid int32
+- Uid uint32
+- Gid uint32
+-}
+-
+-type TCPInfo struct {
+- State uint8
+- Ca_state uint8
+- Retransmits uint8
+- Probes uint8
+- Backoff uint8
+- Options uint8
+- _ [2]byte
+- Rto uint32
+- Ato uint32
+- Snd_mss uint32
+- Rcv_mss uint32
+- Unacked uint32
+- Sacked uint32
+- Lost uint32
+- Retrans uint32
+- Fackets uint32
+- Last_data_sent uint32
+- Last_ack_sent uint32
+- Last_data_recv uint32
+- Last_ack_recv uint32
+- Pmtu uint32
+- Rcv_ssthresh uint32
+- Rtt uint32
+- Rttvar uint32
+- Snd_ssthresh uint32
+- Snd_cwnd uint32
+- Advmss uint32
+- Reordering uint32
+- Rcv_rtt uint32
+- Rcv_space uint32
+- Total_retrans uint32
+-}
+-
+-const (
+- SizeofSockaddrInet4 = 0x10
+- SizeofSockaddrInet6 = 0x1c
+- SizeofSockaddrAny = 0x70
+- SizeofSockaddrUnix = 0x6e
+- SizeofSockaddrLinklayer = 0x14
+- SizeofSockaddrNetlink = 0xc
+- SizeofSockaddrHCI = 0x6
+- SizeofSockaddrCAN = 0x10
+- SizeofSockaddrALG = 0x58
+- SizeofSockaddrVM = 0x10
+- SizeofLinger = 0x8
+- SizeofIovec = 0x10
+- SizeofIPMreq = 0x8
+- SizeofIPMreqn = 0xc
+- SizeofIPv6Mreq = 0x14
+- SizeofPacketMreq = 0x10
+- SizeofMsghdr = 0x38
+- SizeofCmsghdr = 0x10
+- SizeofInet4Pktinfo = 0xc
+- SizeofInet6Pktinfo = 0x14
+- SizeofIPv6MTUInfo = 0x20
+- SizeofICMPv6Filter = 0x20
+- SizeofUcred = 0xc
+- SizeofTCPInfo = 0x68
+-)
+-
+ const (
+- IFA_UNSPEC = 0x0
+- IFA_ADDRESS = 0x1
+- IFA_LOCAL = 0x2
+- IFA_LABEL = 0x3
+- IFA_BROADCAST = 0x4
+- IFA_ANYCAST = 0x5
+- IFA_CACHEINFO = 0x6
+- IFA_MULTICAST = 0x7
+- IFLA_UNSPEC = 0x0
+- IFLA_ADDRESS = 0x1
+- IFLA_BROADCAST = 0x2
+- IFLA_IFNAME = 0x3
+- IFLA_MTU = 0x4
+- IFLA_LINK = 0x5
+- IFLA_QDISC = 0x6
+- IFLA_STATS = 0x7
+- IFLA_COST = 0x8
+- IFLA_PRIORITY = 0x9
+- IFLA_MASTER = 0xa
+- IFLA_WIRELESS = 0xb
+- IFLA_PROTINFO = 0xc
+- IFLA_TXQLEN = 0xd
+- IFLA_MAP = 0xe
+- IFLA_WEIGHT = 0xf
+- IFLA_OPERSTATE = 0x10
+- IFLA_LINKMODE = 0x11
+- IFLA_LINKINFO = 0x12
+- IFLA_NET_NS_PID = 0x13
+- IFLA_IFALIAS = 0x14
+- IFLA_MAX = 0x2b
+- RT_SCOPE_UNIVERSE = 0x0
+- RT_SCOPE_SITE = 0xc8
+- RT_SCOPE_LINK = 0xfd
+- RT_SCOPE_HOST = 0xfe
+- RT_SCOPE_NOWHERE = 0xff
+- RT_TABLE_UNSPEC = 0x0
+- RT_TABLE_COMPAT = 0xfc
+- RT_TABLE_DEFAULT = 0xfd
+- RT_TABLE_MAIN = 0xfe
+- RT_TABLE_LOCAL = 0xff
+- RT_TABLE_MAX = 0xffffffff
+- RTA_UNSPEC = 0x0
+- RTA_DST = 0x1
+- RTA_SRC = 0x2
+- RTA_IIF = 0x3
+- RTA_OIF = 0x4
+- RTA_GATEWAY = 0x5
+- RTA_PRIORITY = 0x6
+- RTA_PREFSRC = 0x7
+- RTA_METRICS = 0x8
+- RTA_MULTIPATH = 0x9
+- RTA_FLOW = 0xb
+- RTA_CACHEINFO = 0xc
+- RTA_TABLE = 0xf
+- RTN_UNSPEC = 0x0
+- RTN_UNICAST = 0x1
+- RTN_LOCAL = 0x2
+- RTN_BROADCAST = 0x3
+- RTN_ANYCAST = 0x4
+- RTN_MULTICAST = 0x5
+- RTN_BLACKHOLE = 0x6
+- RTN_UNREACHABLE = 0x7
+- RTN_PROHIBIT = 0x8
+- RTN_THROW = 0x9
+- RTN_NAT = 0xa
+- RTN_XRESOLVE = 0xb
+- RTNLGRP_NONE = 0x0
+- RTNLGRP_LINK = 0x1
+- RTNLGRP_NOTIFY = 0x2
+- RTNLGRP_NEIGH = 0x3
+- RTNLGRP_TC = 0x4
+- RTNLGRP_IPV4_IFADDR = 0x5
+- RTNLGRP_IPV4_MROUTE = 0x6
+- RTNLGRP_IPV4_ROUTE = 0x7
+- RTNLGRP_IPV4_RULE = 0x8
+- RTNLGRP_IPV6_IFADDR = 0x9
+- RTNLGRP_IPV6_MROUTE = 0xa
+- RTNLGRP_IPV6_ROUTE = 0xb
+- RTNLGRP_IPV6_IFINFO = 0xc
+- RTNLGRP_IPV6_PREFIX = 0x12
+- RTNLGRP_IPV6_RULE = 0x13
+- RTNLGRP_ND_USEROPT = 0x14
+- SizeofNlMsghdr = 0x10
+- SizeofNlMsgerr = 0x14
+- SizeofRtGenmsg = 0x1
+- SizeofNlAttr = 0x4
+- SizeofRtAttr = 0x4
+- SizeofIfInfomsg = 0x10
+- SizeofIfAddrmsg = 0x8
+- SizeofRtMsg = 0xc
+- SizeofRtNexthop = 0x8
++ SizeofIovec = 0x10
++ SizeofMsghdr = 0x38
++ SizeofCmsghdr = 0x10
+ )
+
+-type NlMsghdr struct {
+- Len uint32
+- Type uint16
+- Flags uint16
+- Seq uint32
+- Pid uint32
+-}
+-
+-type NlMsgerr struct {
+- Error int32
+- Msg NlMsghdr
+-}
+-
+-type RtGenmsg struct {
+- Family uint8
+-}
+-
+-type NlAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type RtAttr struct {
+- Len uint16
+- Type uint16
+-}
+-
+-type IfInfomsg struct {
+- Family uint8
+- _ uint8
+- Type uint16
+- Index int32
+- Flags uint32
+- Change uint32
+-}
+-
+-type IfAddrmsg struct {
+- Family uint8
+- Prefixlen uint8
+- Flags uint8
+- Scope uint8
+- Index uint32
+-}
+-
+-type RtMsg struct {
+- Family uint8
+- Dst_len uint8
+- Src_len uint8
+- Tos uint8
+- Table uint8
+- Protocol uint8
+- Scope uint8
+- Type uint8
+- Flags uint32
+-}
+-
+-type RtNexthop struct {
+- Len uint16
+- Flags uint8
+- Hops uint8
+- Ifindex int32
+-}
+-
+ const (
+- SizeofSockFilter = 0x8
+- SizeofSockFprog = 0x10
++ SizeofSockFprog = 0x10
+ )
+
+-type SockFilter struct {
+- Code uint16
+- Jt uint8
+- Jf uint8
+- K uint32
+-}
+-
+-type SockFprog struct {
+- Len uint16
+- _ [6]byte
+- Filter *SockFilter
+-}
+-
+-type InotifyEvent struct {
+- Wd int32
+- Mask uint32
+- Cookie uint32
+- Len uint32
+-}
+-
+-const SizeofInotifyEvent = 0x10
+-
+ type PtraceRegs struct {
+ Psw PtracePsw
+ Gprs [16]uint64
+@@ -601,18 +181,15 @@ type PtracePsw struct {
+
+ type PtraceFpregs struct {
+ Fpc uint32
+- _ [4]byte
+ Fprs [16]float64
+ }
+
+ type PtracePer struct {
+ _ [0]uint64
+- _ [24]byte
+- _ [8]byte
++ _ [32]byte
+ Starting_addr uint64
+ Ending_addr uint64
+ Perc_atmid uint16
+- _ [6]byte
+ Address uint64
+ Access_id uint8
+ _ [7]byte
+@@ -633,7 +210,6 @@ type Sysinfo_t struct {
+ Freeswap uint64
+ Procs uint16
+ Pad uint16
+- _ [4]byte
+ Totalhigh uint64
+ Freehigh uint64
+ Unit uint32
+@@ -641,18 +217,8 @@ type Sysinfo_t struct {
+ _ [4]byte
+ }
+
+-type Utsname struct {
+- Sysname [65]int8
+- Nodename [65]int8
+- Release [65]int8
+- Version [65]int8
+- Machine [65]int8
+- Domainname [65]int8
+-}
+-
+ type Ustat_t struct {
+ Tfree int32
+- _ [4]byte
+ Tinode uint64
+ Fname [6]int8
+ Fpack [6]int8
+@@ -667,37 +233,14 @@ type EpollEvent struct {
+ }
+
+ const (
+- AT_FDCWD = -0x64
+- AT_REMOVEDIR = 0x200
+- AT_SYMLINK_FOLLOW = 0x400
+- AT_SYMLINK_NOFOLLOW = 0x100
+-)
+-
+-type PollFd struct {
+- Fd int32
+- Events int16
+- Revents int16
+-}
+-
+-const (
+- POLLIN = 0x1
+- POLLPRI = 0x2
+- POLLOUT = 0x4
+ POLLRDHUP = 0x2000
+- POLLERR = 0x8
+- POLLHUP = 0x10
+- POLLNVAL = 0x20
+ )
+
+ type Sigset_t struct {
+- _ [16]uint64
++ Val [16]uint64
+ }
+
+-const RNDGETENTCNT = 0x80045200
+-
+-const PERF_IOC_FLAG_GROUP = 0x1
+-
+-const _SC_PAGESIZE = 0x1e
++const _C__NSIG = 0x41
+
+ type Termios struct {
+ Iflag uint32
+@@ -710,20 +253,11 @@ type Termios struct {
+ Ospeed uint32
+ }
+
+-type Winsize struct {
+- Row uint16
+- Col uint16
+- Xpixel uint16
+- Ypixel uint16
+-}
+-
+ type Taskstats struct {
+ Version uint16
+- _ [2]byte
+ Ac_exitcode uint32
+ Ac_flag uint8
+ Ac_nice uint8
+- _ [6]byte
+ Cpu_count uint64
+ Cpu_delay_total uint64
+ Blkio_count uint64
+@@ -741,7 +275,6 @@ type Taskstats struct {
+ Ac_pid uint32
+ Ac_ppid uint32
+ Ac_btime uint32
+- _ [4]byte
+ Ac_etime uint64
+ Ac_utime uint64
+ Ac_stime uint64
+@@ -765,55 +298,320 @@ type Taskstats struct {
+ Cpu_scaled_run_real_total uint64
+ Freepages_count uint64
+ Freepages_delay_total uint64
++ Thrashing_count uint64
++ Thrashing_delay_total uint64
++ Ac_btime64 uint64
++}
++
++type cpuMask uint64
++
++const (
++ _NCPUBITS = 0x40
++)
++
++const (
++ CBitFieldMaskBit0 = 0x8000000000000000
++ CBitFieldMaskBit1 = 0x4000000000000000
++ CBitFieldMaskBit2 = 0x2000000000000000
++ CBitFieldMaskBit3 = 0x1000000000000000
++ CBitFieldMaskBit4 = 0x800000000000000
++ CBitFieldMaskBit5 = 0x400000000000000
++ CBitFieldMaskBit6 = 0x200000000000000
++ CBitFieldMaskBit7 = 0x100000000000000
++ CBitFieldMaskBit8 = 0x80000000000000
++ CBitFieldMaskBit9 = 0x40000000000000
++ CBitFieldMaskBit10 = 0x20000000000000
++ CBitFieldMaskBit11 = 0x10000000000000
++ CBitFieldMaskBit12 = 0x8000000000000
++ CBitFieldMaskBit13 = 0x4000000000000
++ CBitFieldMaskBit14 = 0x2000000000000
++ CBitFieldMaskBit15 = 0x1000000000000
++ CBitFieldMaskBit16 = 0x800000000000
++ CBitFieldMaskBit17 = 0x400000000000
++ CBitFieldMaskBit18 = 0x200000000000
++ CBitFieldMaskBit19 = 0x100000000000
++ CBitFieldMaskBit20 = 0x80000000000
++ CBitFieldMaskBit21 = 0x40000000000
++ CBitFieldMaskBit22 = 0x20000000000
++ CBitFieldMaskBit23 = 0x10000000000
++ CBitFieldMaskBit24 = 0x8000000000
++ CBitFieldMaskBit25 = 0x4000000000
++ CBitFieldMaskBit26 = 0x2000000000
++ CBitFieldMaskBit27 = 0x1000000000
++ CBitFieldMaskBit28 = 0x800000000
++ CBitFieldMaskBit29 = 0x400000000
++ CBitFieldMaskBit30 = 0x200000000
++ CBitFieldMaskBit31 = 0x100000000
++ CBitFieldMaskBit32 = 0x80000000
++ CBitFieldMaskBit33 = 0x40000000
++ CBitFieldMaskBit34 = 0x20000000
++ CBitFieldMaskBit35 = 0x10000000
++ CBitFieldMaskBit36 = 0x8000000
++ CBitFieldMaskBit37 = 0x4000000
++ CBitFieldMaskBit38 = 0x2000000
++ CBitFieldMaskBit39 = 0x1000000
++ CBitFieldMaskBit40 = 0x800000
++ CBitFieldMaskBit41 = 0x400000
++ CBitFieldMaskBit42 = 0x200000
++ CBitFieldMaskBit43 = 0x100000
++ CBitFieldMaskBit44 = 0x80000
++ CBitFieldMaskBit45 = 0x40000
++ CBitFieldMaskBit46 = 0x20000
++ CBitFieldMaskBit47 = 0x10000
++ CBitFieldMaskBit48 = 0x8000
++ CBitFieldMaskBit49 = 0x4000
++ CBitFieldMaskBit50 = 0x2000
++ CBitFieldMaskBit51 = 0x1000
++ CBitFieldMaskBit52 = 0x800
++ CBitFieldMaskBit53 = 0x400
++ CBitFieldMaskBit54 = 0x200
++ CBitFieldMaskBit55 = 0x100
++ CBitFieldMaskBit56 = 0x80
++ CBitFieldMaskBit57 = 0x40
++ CBitFieldMaskBit58 = 0x20
++ CBitFieldMaskBit59 = 0x10
++ CBitFieldMaskBit60 = 0x8
++ CBitFieldMaskBit61 = 0x4
++ CBitFieldMaskBit62 = 0x2
++ CBitFieldMaskBit63 = 0x1
++)
++
++type SockaddrStorage struct {
++ Family uint16
++ _ [118]int8
++ _ uint64
++}
++
++type HDGeometry struct {
++ Heads uint8
++ Sectors uint8
++ Cylinders uint16
++ Start uint64
++}
++
++type Statfs_t struct {
++ Type uint32
++ Bsize uint32
++ Blocks uint64
++ Bfree uint64
++ Bavail uint64
++ Files uint64
++ Ffree uint64
++ Fsid Fsid
++ Namelen uint32
++ Frsize uint32
++ Flags uint32
++ Spare [4]uint32
++ _ [4]byte
++}
++
++type TpacketHdr struct {
++ Status uint64
++ Len uint32
++ Snaplen uint32
++ Mac uint16
++ Net uint16
++ Sec uint32
++ Usec uint32
++ _ [4]byte
+ }
+
+ const (
+- TASKSTATS_CMD_UNSPEC = 0x0
+- TASKSTATS_CMD_GET = 0x1
+- TASKSTATS_CMD_NEW = 0x2
+- TASKSTATS_TYPE_UNSPEC = 0x0
+- TASKSTATS_TYPE_PID = 0x1
+- TASKSTATS_TYPE_TGID = 0x2
+- TASKSTATS_TYPE_STATS = 0x3
+- TASKSTATS_TYPE_AGGR_PID = 0x4
+- TASKSTATS_TYPE_AGGR_TGID = 0x5
+- TASKSTATS_TYPE_NULL = 0x6
+- TASKSTATS_CMD_ATTR_UNSPEC = 0x0
+- TASKSTATS_CMD_ATTR_PID = 0x1
+- TASKSTATS_CMD_ATTR_TGID = 0x2
+- TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
+- TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
++ SizeofTpacketHdr = 0x20
+ )
+
+-type Genlmsghdr struct {
+- Cmd uint8
+- Version uint8
+- Reserved uint16
++type RTCPLLInfo struct {
++ Ctrl int32
++ Value int32
++ Max int32
++ Min int32
++ Posmult int32
++ Negmult int32
++ Clock int64
++}
++
++type BlkpgPartition struct {
++ Start int64
++ Length int64
++ Pno int32
++ Devname [64]uint8
++ Volname [64]uint8
++ _ [4]byte
+ }
+
+ const (
+- CTRL_CMD_UNSPEC = 0x0
+- CTRL_CMD_NEWFAMILY = 0x1
+- CTRL_CMD_DELFAMILY = 0x2
+- CTRL_CMD_GETFAMILY = 0x3
+- CTRL_CMD_NEWOPS = 0x4
+- CTRL_CMD_DELOPS = 0x5
+- CTRL_CMD_GETOPS = 0x6
+- CTRL_CMD_NEWMCAST_GRP = 0x7
+- CTRL_CMD_DELMCAST_GRP = 0x8
+- CTRL_CMD_GETMCAST_GRP = 0x9
+- CTRL_ATTR_UNSPEC = 0x0
+- CTRL_ATTR_FAMILY_ID = 0x1
+- CTRL_ATTR_FAMILY_NAME = 0x2
+- CTRL_ATTR_VERSION = 0x3
+- CTRL_ATTR_HDRSIZE = 0x4
+- CTRL_ATTR_MAXATTR = 0x5
+- CTRL_ATTR_OPS = 0x6
+- CTRL_ATTR_MCAST_GROUPS = 0x7
+- 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
++ BLKPG = 0x1269
+ )
++
++type XDPUmemReg struct {
++ Addr uint64
++ Len uint64
++ Size uint32
++ Headroom uint32
++ Flags uint32
++ _ [4]byte
++}
++
++type CryptoUserAlg struct {
++ Name [64]int8
++ Driver_name [64]int8
++ Module_name [64]int8
++ Type uint32
++ Mask uint32
++ Refcnt uint32
++ Flags uint32
++}
++
++type CryptoStatAEAD struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatAKCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Verify_cnt uint64
++ Sign_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatCompress struct {
++ Type [64]int8
++ Compress_cnt uint64
++ Compress_tlen uint64
++ Decompress_cnt uint64
++ Decompress_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatHash struct {
++ Type [64]int8
++ Hash_cnt uint64
++ Hash_tlen uint64
++ Err_cnt uint64
++}
++
++type CryptoStatKPP struct {
++ Type [64]int8
++ Setsecret_cnt uint64
++ Generate_public_key_cnt uint64
++ Compute_shared_secret_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatRNG struct {
++ Type [64]int8
++ Generate_cnt uint64
++ Generate_tlen uint64
++ Seed_cnt uint64
++ Err_cnt uint64
++}
++
++type CryptoStatLarval struct {
++ Type [64]int8
++}
++
++type CryptoReportLarval struct {
++ Type [64]int8
++}
++
++type CryptoReportHash struct {
++ Type [64]int8
++ Blocksize uint32
++ Digestsize uint32
++}
++
++type CryptoReportCipher struct {
++ Type [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++}
++
++type CryptoReportBlkCipher struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++ Ivsize uint32
++}
++
++type CryptoReportAEAD struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Maxauthsize uint32
++ Ivsize uint32
++}
++
++type CryptoReportComp struct {
++ Type [64]int8
++}
++
++type CryptoReportRNG struct {
++ Type [64]int8
++ Seedsize uint32
++}
++
++type CryptoReportAKCipher struct {
++ Type [64]int8
++}
++
++type CryptoReportKPP struct {
++ Type [64]int8
++}
++
++type CryptoReportAcomp struct {
++ Type [64]int8
++}
++
++type LoopInfo struct {
++ Number int32
++ Device uint16
++ Inode uint64
++ Rdevice uint16
++ Offset int32
++ Encrypt_type int32
++ Encrypt_key_size int32
++ Flags int32
++ Name [64]int8
++ Encrypt_key [32]uint8
++ Init [2]uint64
++ Reserved [4]int8
++ _ [4]byte
++}
++
++type TIPCSubscr struct {
++ Seq TIPCServiceRange
++ Timeout uint32
++ Filter uint32
++ Handle [8]int8
++}
++
++type TIPCSIOCLNReq struct {
++ Peer uint32
++ Id uint32
++ Linkname [68]int8
++}
++
++type TIPCSIOCNodeIDReq struct {
++ Peer uint32
++ Id [16]int8
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go
+index 22bdab96..33a73bf1 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go
+@@ -1,23 +1,17 @@
++// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
++
+ // +build sparc64,linux
+-// Created by cgo -godefs - DO NOT EDIT
+-// cgo -godefs types_linux.go | go run mkpost.go
+
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
+- PathMax = 0x1000
++ SizeofPtr = 0x8
++ SizeofLong = 0x8
+ )
+
+ type (
+- _C_short int16
+- _C_int int32
+- _C_long int64
+- _C_long_long int64
++ _C_long int64
+ )
+
+ type Timespec struct {
+@@ -26,20 +20,18 @@ type Timespec struct {
+ }
+
+ type Timeval struct {
+- Sec int64
+- Usec int32
+- Pad_cgo_0 [4]byte
++ Sec int64
++ Usec int32
++ _ [4]byte
+ }
+
+ type Timex struct {
+ Modes uint32
+- Pad_cgo_0 [4]byte
+ Offset int64
+ Freq int64
+ Maxerror int64
+ Esterror int64
+ Status int32
+- Pad_cgo_1 [4]byte
+ Constant int64
+ Precision int64
+ Tolerance int64
+@@ -48,14 +40,13 @@ type Timex struct {
+ Ppsfreq int64
+ Jitter int64
+ Shift int32
+- Pad_cgo_2 [4]byte
+ Stabil int64
+ Jitcnt int64
+ Calcnt int64
+ Errcnt int64
+ Stbcnt int64
+ Tai int32
+- Pad_cgo_3 [44]byte
++ _ [44]byte
+ }
+
+ type Time_t int64
+@@ -91,149 +82,50 @@ type Rusage struct {
+ Nivcsw int64
+ }
+
+-type Rlimit struct {
+- Cur uint64
+- Max uint64
+-}
+-
+-type _Gid_t uint32
+-
+ type Stat_t struct {
+- Dev uint64
+- X__pad1 uint16
+- Pad_cgo_0 [6]byte
+- Ino uint64
+- Mode uint32
+- Nlink uint32
+- Uid uint32
+- Gid uint32
+- Rdev uint64
+- X__pad2 uint16
+- Pad_cgo_1 [6]byte
+- Size int64
+- Blksize int64
+- Blocks int64
+- Atim Timespec
+- Mtim Timespec
+- Ctim Timespec
+- X__glibc_reserved4 uint64
+- X__glibc_reserved5 uint64
+-}
+-
+-type Statfs_t struct {
+- Type int64
+- Bsize int64
+- Blocks uint64
+- Bfree uint64
+- Bavail uint64
+- Files uint64
+- Ffree uint64
+- Fsid Fsid
+- Namelen int64
+- Frsize int64
+- Flags int64
+- Spare [4]int64
++ Dev uint64
++ _ uint16
++ Ino uint64
++ Mode uint32
++ Nlink uint32
++ Uid uint32
++ Gid uint32
++ Rdev uint64
++ _ uint16
++ Size int64
++ Blksize int64
++ Blocks int64
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ _ uint64
++ _ uint64
+ }
+
+ type Dirent struct {
+- Ino uint64
+- Off int64
+- Reclen uint16
+- Type uint8
+- Name [256]int8
+- Pad_cgo_0 [5]byte
+-}
+-
+-type Fsid struct {
+- X__val [2]int32
++ Ino uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Name [256]int8
++ _ [5]byte
+ }
+
+ type Flock_t struct {
+- Type int16
+- Whence int16
+- Pad_cgo_0 [4]byte
+- Start int64
+- Len int64
+- Pid int32
+- X__glibc_reserved int16
+- Pad_cgo_1 [2]byte
++ Type int16
++ Whence int16
++ Start int64
++ Len int64
++ Pid int32
++ _ int16
++ _ [2]byte
+ }
+
+ const (
+- FADV_NORMAL = 0x0
+- FADV_RANDOM = 0x1
+- FADV_SEQUENTIAL = 0x2
+- FADV_WILLNEED = 0x3
+- FADV_DONTNEED = 0x4
+- FADV_NOREUSE = 0x5
++ FADV_DONTNEED = 0x4
++ FADV_NOREUSE = 0x5
+ )
+
+-type RawSockaddrInet4 struct {
+- Family uint16
+- Port uint16
+- Addr [4]byte /* in_addr */
+- Zero [8]uint8
+-}
+-
+-type RawSockaddrInet6 struct {
+- Family uint16
+- Port uint16
+- Flowinfo uint32
+- Addr [16]byte /* in6_addr */
+- Scope_id uint32
+-}
+-
+-type RawSockaddrUnix struct {
+- Family uint16
+- Path [108]int8
+-}
+-
+-type RawSockaddrLinklayer struct {
+- Family uint16
+- Protocol uint16
+- Ifindex int32
+- Hatype uint16
+- Pkttype uint8
+- Halen uint8
+- Addr [8]uint8
+-}
+-
+-type RawSockaddrNetlink struct {
+- Family uint16
+- Pad uint16
+- Pid uint32
+- Groups uint32
+-}
+-
+-type RawSockaddrHCI struct {
+- Family uint16
+- Dev uint16
+- Channel uint16
+-}
+-
+-type RawSockaddrCAN struct {
+- Family uint16
+- Pad_cgo_0 [2]byte
+- Ifindex int32
+- Addr [8]byte
+-}
+-
+-type RawSockaddrALG struct {
+- Family uint16
+- Type [14]uint8
+- Feat uint32
+- Mask uint32
+- Name [64]uint8
+-}
+-
+-type RawSockaddrVM struct {
+- Family uint16
+- Reserved1 uint16
+- Port uint32
+- Cid uint32
+- Zero [4]uint8
+-}
+-
+ type RawSockaddr struct {
+ Family uint16
+ Data [14]int8
+@@ -244,44 +136,20 @@ type RawSockaddrAny struct {
+ Pad [96]int8
+ }
+
+-type _Socklen uint32
+-
+-type Linger struct {
+- Onoff int32
+- Linger int32
+-}
+-
+ type Iovec struct {
+ Base *byte
+ Len uint64
+ }
+
+-type IPMreq struct {
+- Multiaddr [4]byte /* in_addr */
+- Interface [4]byte /* in_addr */
+-}
+-
+-type IPMreqn struct {
+- Multiaddr [4]byte /* in_addr */
+- Address [4]byte /* in_addr */
+- Ifindex int32
+-}
+-
+-type IPv6Mreq struct {
+- Multiaddr [16]byte /* in6_addr */
+- Interface uint32
+-}
+-
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+- Pad_cgo_0 [4]byte
+ Iov *Iovec
+ Iovlen uint64
+ Control *byte
+ Controllen uint64
+ Flags int32
+- Pad_cgo_1 [4]byte
++ _ [4]byte
+ }
+
+ type Cmsghdr struct {
+@@ -290,377 +158,441 @@ type Cmsghdr struct {
+ Type int32
+ }
+
+-type Inet4Pktinfo struct {
+- Ifindex int32
+- Spec_dst [4]byte /* in_addr */
+- Addr [4]byte /* in_addr */
+-}
+-
+-type Inet6Pktinfo struct {
+- Addr [16]byte /* in6_addr */
+- Ifindex uint32
+-}
+-
+-type IPv6MTUInfo struct {
+- Addr RawSockaddrInet6
+- Mtu uint32
+-}
+-
+-type ICMPv6Filter struct {
+- Data [8]uint32
+-}
+-
+-type Ucred struct {
+- Pid int32
+- Uid uint32
+- Gid uint32
+-}
+-
+-type TCPInfo struct {
+- State uint8
+- Ca_state uint8
+- Retransmits uint8
+- Probes uint8
+- Backoff uint8
+- Options uint8
+- Pad_cgo_0 [2]byte
+- Rto uint32
+- Ato uint32
+- Snd_mss uint32
+- Rcv_mss uint32
+- Unacked uint32
+- Sacked uint32
+- Lost uint32
+- Retrans uint32
+- Fackets uint32
+- Last_data_sent uint32
+- Last_ack_sent uint32
+- Last_data_recv uint32
+- Last_ack_recv uint32
+- Pmtu uint32
+- Rcv_ssthresh uint32
+- Rtt uint32
+- Rttvar uint32
+- Snd_ssthresh uint32
+- Snd_cwnd uint32
+- Advmss uint32
+- Reordering uint32
+- Rcv_rtt uint32
+- Rcv_space uint32
+- Total_retrans uint32
+-}
+-
+ const (
+- SizeofSockaddrInet4 = 0x10
+- SizeofSockaddrInet6 = 0x1c
+- SizeofSockaddrAny = 0x70
+- SizeofSockaddrUnix = 0x6e
+- SizeofSockaddrLinklayer = 0x14
+- SizeofSockaddrNetlink = 0xc
+- SizeofSockaddrHCI = 0x6
+- SizeofSockaddrCAN = 0x10
+- SizeofSockaddrALG = 0x58
+- SizeofSockaddrVM = 0x10
+- SizeofLinger = 0x8
+- SizeofIPMreq = 0x8
+- SizeofIPMreqn = 0xc
+- SizeofIPv6Mreq = 0x14
+- SizeofMsghdr = 0x38
+- SizeofCmsghdr = 0x10
+- SizeofInet4Pktinfo = 0xc
+- SizeofInet6Pktinfo = 0x14
+- SizeofIPv6MTUInfo = 0x20
+- SizeofICMPv6Filter = 0x20
+- SizeofUcred = 0xc
+- SizeofTCPInfo = 0x68
++ SizeofIovec = 0x10
++ SizeofMsghdr = 0x38
++ SizeofCmsghdr = 0x10
+ )
+
+ const (
+- IFA_UNSPEC = 0x0
+- IFA_ADDRESS = 0x1
+- IFA_LOCAL = 0x2
+- IFA_LABEL = 0x3
+- IFA_BROADCAST = 0x4
+- IFA_ANYCAST = 0x5
+- IFA_CACHEINFO = 0x6
+- IFA_MULTICAST = 0x7
+- IFLA_UNSPEC = 0x0
+- IFLA_ADDRESS = 0x1
+- IFLA_BROADCAST = 0x2
+- IFLA_IFNAME = 0x3
+- IFLA_MTU = 0x4
+- IFLA_LINK = 0x5
+- IFLA_QDISC = 0x6
+- IFLA_STATS = 0x7
+- IFLA_COST = 0x8
+- IFLA_PRIORITY = 0x9
+- IFLA_MASTER = 0xa
+- IFLA_WIRELESS = 0xb
+- IFLA_PROTINFO = 0xc
+- IFLA_TXQLEN = 0xd
+- IFLA_MAP = 0xe
+- IFLA_WEIGHT = 0xf
+- IFLA_OPERSTATE = 0x10
+- IFLA_LINKMODE = 0x11
+- IFLA_LINKINFO = 0x12
+- IFLA_NET_NS_PID = 0x13
+- IFLA_IFALIAS = 0x14
+- IFLA_MAX = 0x2a
+- RT_SCOPE_UNIVERSE = 0x0
+- RT_SCOPE_SITE = 0xc8
+- RT_SCOPE_LINK = 0xfd
+- RT_SCOPE_HOST = 0xfe
+- RT_SCOPE_NOWHERE = 0xff
+- RT_TABLE_UNSPEC = 0x0
+- RT_TABLE_COMPAT = 0xfc
+- RT_TABLE_DEFAULT = 0xfd
+- RT_TABLE_MAIN = 0xfe
+- RT_TABLE_LOCAL = 0xff
+- RT_TABLE_MAX = 0xffffffff
+- RTA_UNSPEC = 0x0
+- RTA_DST = 0x1
+- RTA_SRC = 0x2
+- RTA_IIF = 0x3
+- RTA_OIF = 0x4
+- RTA_GATEWAY = 0x5
+- RTA_PRIORITY = 0x6
+- RTA_PREFSRC = 0x7
+- RTA_METRICS = 0x8
+- RTA_MULTIPATH = 0x9
+- RTA_FLOW = 0xb
+- RTA_CACHEINFO = 0xc
+- RTA_TABLE = 0xf
+- RTN_UNSPEC = 0x0
+- RTN_UNICAST = 0x1
+- RTN_LOCAL = 0x2
+- RTN_BROADCAST = 0x3
+- RTN_ANYCAST = 0x4
+- RTN_MULTICAST = 0x5
+- RTN_BLACKHOLE = 0x6
+- RTN_UNREACHABLE = 0x7
+- RTN_PROHIBIT = 0x8
+- RTN_THROW = 0x9
+- RTN_NAT = 0xa
+- RTN_XRESOLVE = 0xb
+- RTNLGRP_NONE = 0x0
+- RTNLGRP_LINK = 0x1
+- RTNLGRP_NOTIFY = 0x2
+- RTNLGRP_NEIGH = 0x3
+- RTNLGRP_TC = 0x4
+- RTNLGRP_IPV4_IFADDR = 0x5
+- RTNLGRP_IPV4_MROUTE = 0x6
+- RTNLGRP_IPV4_ROUTE = 0x7
+- RTNLGRP_IPV4_RULE = 0x8
+- RTNLGRP_IPV6_IFADDR = 0x9
+- RTNLGRP_IPV6_MROUTE = 0xa
+- RTNLGRP_IPV6_ROUTE = 0xb
+- RTNLGRP_IPV6_IFINFO = 0xc
+- RTNLGRP_IPV6_PREFIX = 0x12
+- RTNLGRP_IPV6_RULE = 0x13
+- RTNLGRP_ND_USEROPT = 0x14
+- SizeofNlMsghdr = 0x10
+- SizeofNlMsgerr = 0x14
+- SizeofRtGenmsg = 0x1
+- SizeofNlAttr = 0x4
+- SizeofRtAttr = 0x4
+- SizeofIfInfomsg = 0x10
+- SizeofIfAddrmsg = 0x8
+- SizeofRtMsg = 0xc
+- SizeofRtNexthop = 0x8
++ SizeofSockFprog = 0x10
+ )
+
+-type NlMsghdr struct {
+- Len uint32
+- Type uint16
+- Flags uint16
+- Seq uint32
+- Pid uint32
++type PtraceRegs struct {
++ Regs [16]uint64
++ Tstate uint64
++ Tpc uint64
++ Tnpc uint64
++ Y uint32
++ Magic uint32
+ }
+
+-type NlMsgerr struct {
+- Error int32
+- Msg NlMsghdr
++type FdSet struct {
++ Bits [16]int64
+ }
+
+-type RtGenmsg struct {
+- Family uint8
++type Sysinfo_t struct {
++ Uptime int64
++ Loads [3]uint64
++ Totalram uint64
++ Freeram uint64
++ Sharedram uint64
++ Bufferram uint64
++ Totalswap uint64
++ Freeswap uint64
++ Procs uint16
++ Pad uint16
++ Totalhigh uint64
++ Freehigh uint64
++ Unit uint32
++ _ [0]int8
++ _ [4]byte
+ }
+
+-type NlAttr struct {
+- Len uint16
+- Type uint16
++type Ustat_t struct {
++ Tfree int32
++ Tinode uint64
++ Fname [6]int8
++ Fpack [6]int8
++ _ [4]byte
+ }
+
+-type RtAttr struct {
+- Len uint16
+- Type uint16
++type EpollEvent struct {
++ Events uint32
++ _ int32
++ Fd int32
++ Pad int32
+ }
+
+-type IfInfomsg struct {
+- Family uint8
+- X__ifi_pad uint8
+- Type uint16
+- Index int32
+- Flags uint32
+- Change uint32
++const (
++ POLLRDHUP = 0x800
++)
++
++type Sigset_t struct {
++ Val [16]uint64
+ }
+
+-type IfAddrmsg struct {
+- Family uint8
+- Prefixlen uint8
+- Flags uint8
+- Scope uint8
+- Index uint32
++const _C__NSIG = 0x41
++
++type Termios struct {
++ Iflag uint32
++ Oflag uint32
++ Cflag uint32
++ Lflag uint32
++ Line uint8
++ Cc [19]uint8
++ Ispeed uint32
++ Ospeed uint32
+ }
+
+-type RtMsg struct {
+- Family uint8
+- Dst_len uint8
+- Src_len uint8
+- Tos uint8
+- Table uint8
+- Protocol uint8
+- Scope uint8
+- Type uint8
+- Flags uint32
++type Taskstats struct {
++ Version uint16
++ Ac_exitcode uint32
++ Ac_flag uint8
++ Ac_nice uint8
++ Cpu_count uint64
++ Cpu_delay_total uint64
++ Blkio_count uint64
++ Blkio_delay_total uint64
++ Swapin_count uint64
++ Swapin_delay_total uint64
++ Cpu_run_real_total uint64
++ Cpu_run_virtual_total uint64
++ Ac_comm [32]int8
++ Ac_sched uint8
++ Ac_pad [3]uint8
++ _ [4]byte
++ Ac_uid uint32
++ Ac_gid uint32
++ Ac_pid uint32
++ Ac_ppid uint32
++ Ac_btime uint32
++ Ac_etime uint64
++ Ac_utime uint64
++ Ac_stime uint64
++ Ac_minflt uint64
++ Ac_majflt uint64
++ Coremem uint64
++ Virtmem uint64
++ Hiwater_rss uint64
++ Hiwater_vm uint64
++ Read_char uint64
++ Write_char uint64
++ Read_syscalls uint64
++ Write_syscalls uint64
++ Read_bytes uint64
++ Write_bytes uint64
++ Cancelled_write_bytes uint64
++ Nvcsw uint64
++ Nivcsw uint64
++ Ac_utimescaled uint64
++ Ac_stimescaled uint64
++ Cpu_scaled_run_real_total uint64
++ Freepages_count uint64
++ Freepages_delay_total uint64
++ Thrashing_count uint64
++ Thrashing_delay_total uint64
++ Ac_btime64 uint64
++}
++
++type cpuMask uint64
++
++const (
++ _NCPUBITS = 0x40
++)
++
++const (
++ CBitFieldMaskBit0 = 0x8000000000000000
++ CBitFieldMaskBit1 = 0x4000000000000000
++ CBitFieldMaskBit2 = 0x2000000000000000
++ CBitFieldMaskBit3 = 0x1000000000000000
++ CBitFieldMaskBit4 = 0x800000000000000
++ CBitFieldMaskBit5 = 0x400000000000000
++ CBitFieldMaskBit6 = 0x200000000000000
++ CBitFieldMaskBit7 = 0x100000000000000
++ CBitFieldMaskBit8 = 0x80000000000000
++ CBitFieldMaskBit9 = 0x40000000000000
++ CBitFieldMaskBit10 = 0x20000000000000
++ CBitFieldMaskBit11 = 0x10000000000000
++ CBitFieldMaskBit12 = 0x8000000000000
++ CBitFieldMaskBit13 = 0x4000000000000
++ CBitFieldMaskBit14 = 0x2000000000000
++ CBitFieldMaskBit15 = 0x1000000000000
++ CBitFieldMaskBit16 = 0x800000000000
++ CBitFieldMaskBit17 = 0x400000000000
++ CBitFieldMaskBit18 = 0x200000000000
++ CBitFieldMaskBit19 = 0x100000000000
++ CBitFieldMaskBit20 = 0x80000000000
++ CBitFieldMaskBit21 = 0x40000000000
++ CBitFieldMaskBit22 = 0x20000000000
++ CBitFieldMaskBit23 = 0x10000000000
++ CBitFieldMaskBit24 = 0x8000000000
++ CBitFieldMaskBit25 = 0x4000000000
++ CBitFieldMaskBit26 = 0x2000000000
++ CBitFieldMaskBit27 = 0x1000000000
++ CBitFieldMaskBit28 = 0x800000000
++ CBitFieldMaskBit29 = 0x400000000
++ CBitFieldMaskBit30 = 0x200000000
++ CBitFieldMaskBit31 = 0x100000000
++ CBitFieldMaskBit32 = 0x80000000
++ CBitFieldMaskBit33 = 0x40000000
++ CBitFieldMaskBit34 = 0x20000000
++ CBitFieldMaskBit35 = 0x10000000
++ CBitFieldMaskBit36 = 0x8000000
++ CBitFieldMaskBit37 = 0x4000000
++ CBitFieldMaskBit38 = 0x2000000
++ CBitFieldMaskBit39 = 0x1000000
++ CBitFieldMaskBit40 = 0x800000
++ CBitFieldMaskBit41 = 0x400000
++ CBitFieldMaskBit42 = 0x200000
++ CBitFieldMaskBit43 = 0x100000
++ CBitFieldMaskBit44 = 0x80000
++ CBitFieldMaskBit45 = 0x40000
++ CBitFieldMaskBit46 = 0x20000
++ CBitFieldMaskBit47 = 0x10000
++ CBitFieldMaskBit48 = 0x8000
++ CBitFieldMaskBit49 = 0x4000
++ CBitFieldMaskBit50 = 0x2000
++ CBitFieldMaskBit51 = 0x1000
++ CBitFieldMaskBit52 = 0x800
++ CBitFieldMaskBit53 = 0x400
++ CBitFieldMaskBit54 = 0x200
++ CBitFieldMaskBit55 = 0x100
++ CBitFieldMaskBit56 = 0x80
++ CBitFieldMaskBit57 = 0x40
++ CBitFieldMaskBit58 = 0x20
++ CBitFieldMaskBit59 = 0x10
++ CBitFieldMaskBit60 = 0x8
++ CBitFieldMaskBit61 = 0x4
++ CBitFieldMaskBit62 = 0x2
++ CBitFieldMaskBit63 = 0x1
++)
++
++type SockaddrStorage struct {
++ Family uint16
++ _ [118]int8
++ _ uint64
++}
++
++type HDGeometry struct {
++ Heads uint8
++ Sectors uint8
++ Cylinders uint16
++ Start uint64
++}
++
++type Statfs_t struct {
++ Type int64
++ Bsize int64
++ Blocks uint64
++ Bfree uint64
++ Bavail uint64
++ Files uint64
++ Ffree uint64
++ Fsid Fsid
++ Namelen int64
++ Frsize int64
++ Flags int64
++ Spare [4]int64
+ }
+
+-type RtNexthop struct {
+- Len uint16
+- Flags uint8
+- Hops uint8
+- Ifindex int32
++type TpacketHdr struct {
++ Status uint64
++ Len uint32
++ Snaplen uint32
++ Mac uint16
++ Net uint16
++ Sec uint32
++ Usec uint32
++ _ [4]byte
+ }
+
+ const (
+- SizeofSockFilter = 0x8
+- SizeofSockFprog = 0x10
++ SizeofTpacketHdr = 0x20
+ )
+
+-type SockFilter struct {
+- Code uint16
+- Jt uint8
+- Jf uint8
+- K uint32
++type RTCPLLInfo struct {
++ Ctrl int32
++ Value int32
++ Max int32
++ Min int32
++ Posmult int32
++ Negmult int32
++ Clock int64
+ }
+
+-type SockFprog struct {
+- Len uint16
+- Pad_cgo_0 [6]byte
+- Filter *SockFilter
++type BlkpgPartition struct {
++ Start int64
++ Length int64
++ Pno int32
++ Devname [64]uint8
++ Volname [64]uint8
++ _ [4]byte
+ }
+
+-type InotifyEvent struct {
+- Wd int32
+- Mask uint32
+- Cookie uint32
+- Len uint32
++const (
++ BLKPG = 0x20001269
++)
++
++type XDPUmemReg struct {
++ Addr uint64
++ Len uint64
++ Size uint32
++ Headroom uint32
++ Flags uint32
++ _ [4]byte
+ }
+
+-const SizeofInotifyEvent = 0x10
++type CryptoUserAlg struct {
++ Name [64]int8
++ Driver_name [64]int8
++ Module_name [64]int8
++ Type uint32
++ Mask uint32
++ Refcnt uint32
++ Flags uint32
++}
+
+-type PtraceRegs struct {
+- Regs [16]uint64
+- Tstate uint64
+- Tpc uint64
+- Tnpc uint64
+- Y uint32
+- Magic uint32
++type CryptoStatAEAD struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
+ }
+
+-type ptracePsw struct {
++type CryptoStatAKCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Verify_cnt uint64
++ Sign_cnt uint64
++ Err_cnt uint64
+ }
+
+-type ptraceFpregs struct {
++type CryptoStatCipher struct {
++ Type [64]int8
++ Encrypt_cnt uint64
++ Encrypt_tlen uint64
++ Decrypt_cnt uint64
++ Decrypt_tlen uint64
++ Err_cnt uint64
+ }
+
+-type ptracePer struct {
++type CryptoStatCompress struct {
++ Type [64]int8
++ Compress_cnt uint64
++ Compress_tlen uint64
++ Decompress_cnt uint64
++ Decompress_tlen uint64
++ Err_cnt uint64
+ }
+
+-type FdSet struct {
+- Bits [16]int64
++type CryptoStatHash struct {
++ Type [64]int8
++ Hash_cnt uint64
++ Hash_tlen uint64
++ Err_cnt uint64
+ }
+
+-type Sysinfo_t struct {
+- Uptime int64
+- Loads [3]uint64
+- Totalram uint64
+- Freeram uint64
+- Sharedram uint64
+- Bufferram uint64
+- Totalswap uint64
+- Freeswap uint64
+- Procs uint16
+- Pad uint16
+- Pad_cgo_0 [4]byte
+- Totalhigh uint64
+- Freehigh uint64
+- Unit uint32
+- X_f [0]int8
+- Pad_cgo_1 [4]byte
++type CryptoStatKPP struct {
++ Type [64]int8
++ Setsecret_cnt uint64
++ Generate_public_key_cnt uint64
++ Compute_shared_secret_cnt uint64
++ Err_cnt uint64
+ }
+
+-type Utsname struct {
+- Sysname [65]int8
+- Nodename [65]int8
+- Release [65]int8
+- Version [65]int8
+- Machine [65]int8
+- Domainname [65]int8
++type CryptoStatRNG struct {
++ Type [64]int8
++ Generate_cnt uint64
++ Generate_tlen uint64
++ Seed_cnt uint64
++ Err_cnt uint64
+ }
+
+-type Ustat_t struct {
+- Tfree int32
+- Pad_cgo_0 [4]byte
+- Tinode uint64
+- Fname [6]int8
+- Fpack [6]int8
+- Pad_cgo_1 [4]byte
++type CryptoStatLarval struct {
++ Type [64]int8
+ }
+
+-type EpollEvent struct {
+- Events uint32
+- X_padFd int32
+- Fd int32
+- Pad int32
++type CryptoReportLarval struct {
++ Type [64]int8
+ }
+
+-const (
+- AT_FDCWD = -0x64
+- AT_REMOVEDIR = 0x200
+- AT_SYMLINK_FOLLOW = 0x400
+- AT_SYMLINK_NOFOLLOW = 0x100
+-)
++type CryptoReportHash struct {
++ Type [64]int8
++ Blocksize uint32
++ Digestsize uint32
++}
+
+-type PollFd struct {
+- Fd int32
+- Events int16
+- Revents int16
++type CryptoReportCipher struct {
++ Type [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
+ }
+
+-const (
+- POLLIN = 0x1
+- POLLPRI = 0x2
+- POLLOUT = 0x4
+- POLLRDHUP = 0x800
+- POLLERR = 0x8
+- POLLHUP = 0x10
+- POLLNVAL = 0x20
+-)
++type CryptoReportBlkCipher struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Min_keysize uint32
++ Max_keysize uint32
++ Ivsize uint32
++}
+
+-type Sigset_t struct {
+- X__val [16]uint64
++type CryptoReportAEAD struct {
++ Type [64]int8
++ Geniv [64]int8
++ Blocksize uint32
++ Maxauthsize uint32
++ Ivsize uint32
+ }
+
+-const _SC_PAGESIZE = 0x1e
++type CryptoReportComp struct {
++ Type [64]int8
++}
+
+-type Termios struct {
+- Iflag uint32
+- Oflag uint32
+- Cflag uint32
+- Lflag uint32
+- Line uint8
+- Cc [19]uint8
+- Ispeed uint32
+- Ospeed uint32
++type CryptoReportRNG struct {
++ Type [64]int8
++ Seedsize uint32
++}
++
++type CryptoReportAKCipher struct {
++ Type [64]int8
++}
++
++type CryptoReportKPP struct {
++ Type [64]int8
++}
++
++type CryptoReportAcomp struct {
++ Type [64]int8
++}
++
++type LoopInfo struct {
++ Number int32
++ Device uint32
++ Inode uint64
++ Rdevice uint32
++ Offset int32
++ Encrypt_type int32
++ Encrypt_key_size int32
++ Flags int32
++ Name [64]int8
++ Encrypt_key [32]uint8
++ Init [2]uint64
++ Reserved [4]int8
++ _ [4]byte
++}
++
++type TIPCSubscr struct {
++ Seq TIPCServiceRange
++ Timeout uint32
++ Filter uint32
++ Handle [8]int8
++}
++
++type TIPCSIOCLNReq struct {
++ Peer uint32
++ Id uint32
++ Linkname [68]int8
++}
++
++type TIPCSIOCNodeIDReq struct {
++ Peer uint32
++ Id [16]int8
+ }
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go
+index 42f99c0a..a89100c0 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go
+@@ -1,16 +1,16 @@
+-// Created by cgo -godefs - DO NOT EDIT
+-// cgo -godefs types_netbsd.go
++// cgo -godefs types_netbsd.go | go run mkpost.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build 386,netbsd
+
+ package unix
+
+ const (
+- sizeofPtr = 0x4
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x4
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x4
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x4
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -57,27 +57,54 @@ type Rlimit struct {
+ type _Gid_t uint32
+
+ type Stat_t struct {
+- Dev uint64
+- Mode uint32
+- Ino uint64
+- Nlink uint32
+- Uid uint32
+- Gid uint32
+- Rdev uint64
+- Atimespec Timespec
+- Mtimespec Timespec
+- Ctimespec Timespec
+- Birthtimespec Timespec
+- Size int64
+- Blocks int64
+- Blksize uint32
+- Flags uint32
+- Gen uint32
+- Spare [2]uint32
++ Dev uint64
++ Mode uint32
++ Ino uint64
++ Nlink uint32
++ Uid uint32
++ Gid uint32
++ Rdev uint64
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Btim Timespec
++ Size int64
++ Blocks int64
++ Blksize uint32
++ Flags uint32
++ Gen uint32
++ Spare [2]uint32
+ }
+
+ type Statfs_t [0]byte
+
++type Statvfs_t struct {
++ Flag uint32
++ Bsize uint32
++ Frsize uint32
++ Iosize uint32
++ Blocks uint64
++ Bfree uint64
++ Bavail uint64
++ Bresvd uint64
++ Files uint64
++ Ffree uint64
++ Favail uint64
++ Fresvd uint64
++ Syncreads uint64
++ Syncwrites uint64
++ Asyncreads uint64
++ Asyncwrites uint64
++ Fsidx Fsid
++ Fsid uint32
++ Namemax uint32
++ Owner uint32
++ Spare [4]uint32
++ Fstypename [32]byte
++ Mntonname [1024]byte
++ Mntfromname [1024]byte
++}
++
+ type Flock_t struct {
+ Start int64
+ Len int64
+@@ -99,6 +126,24 @@ type Fsid struct {
+ X__fsid_val [2]int32
+ }
+
++const (
++ PathMax = 0x400
++)
++
++const (
++ ST_WAIT = 0x1
++ ST_NOWAIT = 0x2
++)
++
++const (
++ FADV_NORMAL = 0x0
++ FADV_RANDOM = 0x1
++ FADV_SEQUENTIAL = 0x2
++ FADV_WILLNEED = 0x3
++ FADV_DONTNEED = 0x4
++ FADV_NOREUSE = 0x5
++)
++
+ type RawSockaddrInet4 struct {
+ Len uint8
+ Family uint8
+@@ -382,11 +427,45 @@ type Termios struct {
+ Ospeed int32
+ }
+
++type Winsize struct {
++ Row uint16
++ Col uint16
++ Xpixel uint16
++ Ypixel uint16
++}
++
++type Ptmget struct {
++ Cfd int32
++ Sfd int32
++ Cn [1024]byte
++ Sn [1024]byte
++}
++
+ const (
+ AT_FDCWD = -0x64
++ AT_SYMLINK_FOLLOW = 0x400
+ AT_SYMLINK_NOFOLLOW = 0x200
+ )
+
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
+ type Sysctlnode struct {
+ Flags uint32
+ Num int32
+@@ -399,3 +478,21 @@ type Sysctlnode struct {
+ X_sysctl_parent [8]byte
+ X_sysctl_desc [8]byte
+ }
++
++type Utsname struct {
++ Sysname [256]byte
++ Nodename [256]byte
++ Release [256]byte
++ Version [256]byte
++ Machine [256]byte
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Tickadj int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
+index ff290ba0..289184e0 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
+@@ -1,16 +1,16 @@
+-// Created by cgo -godefs - DO NOT EDIT
+-// cgo -godefs types_netbsd.go
++// cgo -godefs types_netbsd.go | go run mkpost.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build amd64,netbsd
+
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x8
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x8
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -58,30 +58,58 @@ type Rlimit struct {
+ type _Gid_t uint32
+
+ type Stat_t struct {
+- Dev uint64
+- Mode uint32
+- Pad_cgo_0 [4]byte
+- Ino uint64
+- Nlink uint32
+- Uid uint32
+- Gid uint32
+- Pad_cgo_1 [4]byte
+- Rdev uint64
+- Atimespec Timespec
+- Mtimespec Timespec
+- Ctimespec Timespec
+- Birthtimespec Timespec
+- Size int64
+- Blocks int64
+- Blksize uint32
+- Flags uint32
+- Gen uint32
+- Spare [2]uint32
+- Pad_cgo_2 [4]byte
++ Dev uint64
++ Mode uint32
++ _ [4]byte
++ Ino uint64
++ Nlink uint32
++ Uid uint32
++ Gid uint32
++ _ [4]byte
++ Rdev uint64
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Btim Timespec
++ Size int64
++ Blocks int64
++ Blksize uint32
++ Flags uint32
++ Gen uint32
++ Spare [2]uint32
++ _ [4]byte
+ }
+
+ type Statfs_t [0]byte
+
++type Statvfs_t struct {
++ Flag uint64
++ Bsize uint64
++ Frsize uint64
++ Iosize uint64
++ Blocks uint64
++ Bfree uint64
++ Bavail uint64
++ Bresvd uint64
++ Files uint64
++ Ffree uint64
++ Favail uint64
++ Fresvd uint64
++ Syncreads uint64
++ Syncwrites uint64
++ Asyncreads uint64
++ Asyncwrites uint64
++ Fsidx Fsid
++ Fsid uint64
++ Namemax uint64
++ Owner uint32
++ Spare [4]uint32
++ Fstypename [32]byte
++ Mntonname [1024]byte
++ Mntfromname [1024]byte
++ _ [4]byte
++}
++
+ type Flock_t struct {
+ Start int64
+ Len int64
+@@ -103,6 +131,24 @@ type Fsid struct {
+ X__fsid_val [2]int32
+ }
+
++const (
++ PathMax = 0x400
++)
++
++const (
++ ST_WAIT = 0x1
++ ST_NOWAIT = 0x2
++)
++
++const (
++ FADV_NORMAL = 0x0
++ FADV_RANDOM = 0x1
++ FADV_SEQUENTIAL = 0x2
++ FADV_WILLNEED = 0x3
++ FADV_DONTNEED = 0x4
++ FADV_NOREUSE = 0x5
++)
++
+ type RawSockaddrInet4 struct {
+ Len uint8
+ Family uint8
+@@ -389,11 +435,45 @@ type Termios struct {
+ Ospeed int32
+ }
+
++type Winsize struct {
++ Row uint16
++ Col uint16
++ Xpixel uint16
++ Ypixel uint16
++}
++
++type Ptmget struct {
++ Cfd int32
++ Sfd int32
++ Cn [1024]byte
++ Sn [1024]byte
++}
++
+ const (
+ AT_FDCWD = -0x64
++ AT_SYMLINK_FOLLOW = 0x400
+ AT_SYMLINK_NOFOLLOW = 0x200
+ )
+
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
+ type Sysctlnode struct {
+ Flags uint32
+ Num int32
+@@ -406,3 +486,21 @@ type Sysctlnode struct {
+ X_sysctl_parent [8]byte
+ X_sysctl_desc [8]byte
+ }
++
++type Utsname struct {
++ Sysname [256]byte
++ Nodename [256]byte
++ Release [256]byte
++ Version [256]byte
++ Machine [256]byte
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Tickadj int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go
+index 66dbd7c0..428c450e 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go
+@@ -1,16 +1,16 @@
+-// Created by cgo -godefs - DO NOT EDIT
+-// cgo -godefs types_netbsd.go
++// cgo -godefs types_netbsd.go | go run mkpost.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build arm,netbsd
+
+ package unix
+
+ const (
+- sizeofPtr = 0x4
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x4
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x4
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x4
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -59,30 +59,57 @@ type Rlimit struct {
+ type _Gid_t uint32
+
+ type Stat_t struct {
+- Dev uint64
+- Mode uint32
+- Pad_cgo_0 [4]byte
+- Ino uint64
+- Nlink uint32
+- Uid uint32
+- Gid uint32
+- Pad_cgo_1 [4]byte
+- Rdev uint64
+- Atimespec Timespec
+- Mtimespec Timespec
+- Ctimespec Timespec
+- Birthtimespec Timespec
+- Size int64
+- Blocks int64
+- Blksize uint32
+- Flags uint32
+- Gen uint32
+- Spare [2]uint32
+- Pad_cgo_2 [4]byte
++ Dev uint64
++ Mode uint32
++ _ [4]byte
++ Ino uint64
++ Nlink uint32
++ Uid uint32
++ Gid uint32
++ _ [4]byte
++ Rdev uint64
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Btim Timespec
++ Size int64
++ Blocks int64
++ Blksize uint32
++ Flags uint32
++ Gen uint32
++ Spare [2]uint32
++ _ [4]byte
+ }
+
+ type Statfs_t [0]byte
+
++type Statvfs_t struct {
++ Flag uint32
++ Bsize uint32
++ Frsize uint32
++ Iosize uint32
++ Blocks uint64
++ Bfree uint64
++ Bavail uint64
++ Bresvd uint64
++ Files uint64
++ Ffree uint64
++ Favail uint64
++ Fresvd uint64
++ Syncreads uint64
++ Syncwrites uint64
++ Asyncreads uint64
++ Asyncwrites uint64
++ Fsidx Fsid
++ Fsid uint32
++ Namemax uint32
++ Owner uint32
++ Spare [4]uint32
++ Fstypename [32]byte
++ Mntonname [1024]byte
++ Mntfromname [1024]byte
++}
++
+ type Flock_t struct {
+ Start int64
+ Len int64
+@@ -104,6 +131,24 @@ type Fsid struct {
+ X__fsid_val [2]int32
+ }
+
++const (
++ PathMax = 0x400
++)
++
++const (
++ ST_WAIT = 0x1
++ ST_NOWAIT = 0x2
++)
++
++const (
++ FADV_NORMAL = 0x0
++ FADV_RANDOM = 0x1
++ FADV_SEQUENTIAL = 0x2
++ FADV_WILLNEED = 0x3
++ FADV_DONTNEED = 0x4
++ FADV_NOREUSE = 0x5
++)
++
+ type RawSockaddrInet4 struct {
+ Len uint8
+ Family uint8
+@@ -387,11 +432,45 @@ type Termios struct {
+ Ospeed int32
+ }
+
++type Winsize struct {
++ Row uint16
++ Col uint16
++ Xpixel uint16
++ Ypixel uint16
++}
++
++type Ptmget struct {
++ Cfd int32
++ Sfd int32
++ Cn [1024]byte
++ Sn [1024]byte
++}
++
+ const (
+ AT_FDCWD = -0x64
++ AT_SYMLINK_FOLLOW = 0x400
+ AT_SYMLINK_NOFOLLOW = 0x200
+ )
+
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
+ type Sysctlnode struct {
+ Flags uint32
+ Num int32
+@@ -404,3 +483,21 @@ type Sysctlnode struct {
+ X_sysctl_parent [8]byte
+ X_sysctl_desc [8]byte
+ }
++
++type Utsname struct {
++ Sysname [256]byte
++ Nodename [256]byte
++ Release [256]byte
++ Version [256]byte
++ Machine [256]byte
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Tickadj int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go
+similarity index 73%
+copy from vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
+copy to vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go
+index ff290ba0..6f1f2842 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go
+@@ -1,16 +1,16 @@
+-// Created by cgo -godefs - DO NOT EDIT
+-// cgo -godefs types_netbsd.go
++// cgo -godefs types_netbsd.go | go run mkpost.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build amd64,netbsd
++// +build arm64,netbsd
+
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x8
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x8
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -58,30 +58,58 @@ type Rlimit struct {
+ type _Gid_t uint32
+
+ type Stat_t struct {
+- Dev uint64
+- Mode uint32
+- Pad_cgo_0 [4]byte
+- Ino uint64
+- Nlink uint32
+- Uid uint32
+- Gid uint32
+- Pad_cgo_1 [4]byte
+- Rdev uint64
+- Atimespec Timespec
+- Mtimespec Timespec
+- Ctimespec Timespec
+- Birthtimespec Timespec
+- Size int64
+- Blocks int64
+- Blksize uint32
+- Flags uint32
+- Gen uint32
+- Spare [2]uint32
+- Pad_cgo_2 [4]byte
++ Dev uint64
++ Mode uint32
++ _ [4]byte
++ Ino uint64
++ Nlink uint32
++ Uid uint32
++ Gid uint32
++ _ [4]byte
++ Rdev uint64
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Btim Timespec
++ Size int64
++ Blocks int64
++ Blksize uint32
++ Flags uint32
++ Gen uint32
++ Spare [2]uint32
++ _ [4]byte
+ }
+
+ type Statfs_t [0]byte
+
++type Statvfs_t struct {
++ Flag uint64
++ Bsize uint64
++ Frsize uint64
++ Iosize uint64
++ Blocks uint64
++ Bfree uint64
++ Bavail uint64
++ Bresvd uint64
++ Files uint64
++ Ffree uint64
++ Favail uint64
++ Fresvd uint64
++ Syncreads uint64
++ Syncwrites uint64
++ Asyncreads uint64
++ Asyncwrites uint64
++ Fsidx Fsid
++ Fsid uint64
++ Namemax uint64
++ Owner uint32
++ Spare [4]uint32
++ Fstypename [32]byte
++ Mntonname [1024]byte
++ Mntfromname [1024]byte
++ _ [4]byte
++}
++
+ type Flock_t struct {
+ Start int64
+ Len int64
+@@ -103,6 +131,24 @@ type Fsid struct {
+ X__fsid_val [2]int32
+ }
+
++const (
++ PathMax = 0x400
++)
++
++const (
++ ST_WAIT = 0x1
++ ST_NOWAIT = 0x2
++)
++
++const (
++ FADV_NORMAL = 0x0
++ FADV_RANDOM = 0x1
++ FADV_SEQUENTIAL = 0x2
++ FADV_WILLNEED = 0x3
++ FADV_DONTNEED = 0x4
++ FADV_NOREUSE = 0x5
++)
++
+ type RawSockaddrInet4 struct {
+ Len uint8
+ Family uint8
+@@ -389,11 +435,45 @@ type Termios struct {
+ Ospeed int32
+ }
+
++type Winsize struct {
++ Row uint16
++ Col uint16
++ Xpixel uint16
++ Ypixel uint16
++}
++
++type Ptmget struct {
++ Cfd int32
++ Sfd int32
++ Cn [1024]byte
++ Sn [1024]byte
++}
++
+ const (
+ AT_FDCWD = -0x64
++ AT_SYMLINK_FOLLOW = 0x400
+ AT_SYMLINK_NOFOLLOW = 0x200
+ )
+
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
+ type Sysctlnode struct {
+ Flags uint32
+ Num int32
+@@ -406,3 +486,21 @@ type Sysctlnode struct {
+ X_sysctl_parent [8]byte
+ X_sysctl_desc [8]byte
+ }
++
++type Utsname struct {
++ Sysname [256]byte
++ Nodename [256]byte
++ Release [256]byte
++ Version [256]byte
++ Machine [256]byte
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Tickadj int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go
+index 20fc9f45..61ea0019 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go
+@@ -1,16 +1,16 @@
+-// Created by cgo -godefs - DO NOT EDIT
+-// cgo -godefs types_openbsd.go
++// cgo -godefs types_openbsd.go | go run mkpost.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build 386,openbsd
+
+ package unix
+
+ const (
+- sizeofPtr = 0x4
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x4
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x4
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x4
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -56,23 +56,6 @@ type Rlimit struct {
+
+ type _Gid_t uint32
+
+-const (
+- S_IFMT = 0xf000
+- S_IFIFO = 0x1000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFBLK = 0x6000
+- S_IFREG = 0x8000
+- S_IFLNK = 0xa000
+- S_IFSOCK = 0xc000
+- S_ISUID = 0x800
+- S_ISGID = 0x400
+- S_ISVTX = 0x200
+- S_IRUSR = 0x100
+- S_IWUSR = 0x80
+- S_IXUSR = 0x40
+-)
+-
+ type Stat_t struct {
+ Mode uint32
+ Dev int32
+@@ -140,6 +123,10 @@ type Fsid struct {
+ Val [2]int32
+ }
+
++const (
++ PathMax = 0x400
++)
++
+ type RawSockaddrInet4 struct {
+ Len uint8
+ Family uint8
+@@ -440,7 +427,145 @@ type Termios struct {
+ Ospeed int32
+ }
+
++type Winsize struct {
++ Row uint16
++ Col uint16
++ Xpixel uint16
++ Ypixel uint16
++}
++
+ const (
+ AT_FDCWD = -0x64
++ AT_SYMLINK_FOLLOW = 0x4
+ AT_SYMLINK_NOFOLLOW = 0x2
+ )
++
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
++type Sigset_t uint32
++
++type Utsname struct {
++ Sysname [256]byte
++ Nodename [256]byte
++ Release [256]byte
++ Version [256]byte
++ Machine [256]byte
++}
++
++const SizeofUvmexp = 0x158
++
++type Uvmexp struct {
++ Pagesize int32
++ Pagemask int32
++ Pageshift int32
++ Npages int32
++ Free int32
++ Active int32
++ Inactive int32
++ Paging int32
++ Wired int32
++ Zeropages int32
++ Reserve_pagedaemon int32
++ Reserve_kernel int32
++ Anonpages int32
++ Vnodepages int32
++ Vtextpages int32
++ Freemin int32
++ Freetarg int32
++ Inactarg int32
++ Wiredmax int32
++ Anonmin int32
++ Vtextmin int32
++ Vnodemin int32
++ Anonminpct int32
++ Vtextminpct int32
++ Vnodeminpct int32
++ Nswapdev int32
++ Swpages int32
++ Swpginuse int32
++ Swpgonly int32
++ Nswget int32
++ Nanon int32
++ Nanonneeded int32
++ Nfreeanon int32
++ Faults int32
++ Traps int32
++ Intrs int32
++ Swtch int32
++ Softs int32
++ Syscalls int32
++ Pageins int32
++ Obsolete_swapins int32
++ Obsolete_swapouts int32
++ Pgswapin int32
++ Pgswapout int32
++ Forks int32
++ Forks_ppwait int32
++ Forks_sharevm int32
++ Pga_zerohit int32
++ Pga_zeromiss int32
++ Zeroaborts int32
++ Fltnoram int32
++ Fltnoanon int32
++ Fltnoamap int32
++ Fltpgwait int32
++ Fltpgrele int32
++ Fltrelck int32
++ Fltrelckok int32
++ Fltanget int32
++ Fltanretry int32
++ Fltamcopy int32
++ Fltnamap int32
++ Fltnomap int32
++ Fltlget int32
++ Fltget int32
++ Flt_anon int32
++ Flt_acow int32
++ Flt_obj int32
++ Flt_prcopy int32
++ Flt_przero int32
++ Pdwoke int32
++ Pdrevs int32
++ Pdswout int32
++ Pdfreed int32
++ Pdscans int32
++ Pdanscan int32
++ Pdobscan int32
++ Pdreact int32
++ Pdbusy int32
++ Pdpageouts int32
++ Pdpending int32
++ Pddeact int32
++ Pdreanon int32
++ Pdrevnode int32
++ Pdrevtext int32
++ Fpswtch int32
++ Kmapent int32
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Tickadj int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
+index 46fe9490..87a493f6 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
+@@ -1,16 +1,16 @@
+-// Created by cgo -godefs - DO NOT EDIT
+-// cgo -godefs types_openbsd.go
++// cgo -godefs types_openbsd.go | go run mkpost.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build amd64,openbsd
+
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x8
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x8
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -56,48 +56,31 @@ type Rlimit struct {
+
+ type _Gid_t uint32
+
+-const (
+- S_IFMT = 0xf000
+- S_IFIFO = 0x1000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFBLK = 0x6000
+- S_IFREG = 0x8000
+- S_IFLNK = 0xa000
+- S_IFSOCK = 0xc000
+- S_ISUID = 0x800
+- S_ISGID = 0x400
+- S_ISVTX = 0x200
+- S_IRUSR = 0x100
+- S_IWUSR = 0x80
+- S_IXUSR = 0x40
+-)
+-
+ type Stat_t struct {
+- Mode uint32
+- Dev int32
+- Ino uint64
+- Nlink uint32
+- Uid uint32
+- Gid uint32
+- Rdev int32
+- Atim Timespec
+- Mtim Timespec
+- Ctim Timespec
+- Size int64
+- Blocks int64
+- Blksize uint32
+- Flags uint32
+- Gen uint32
+- Pad_cgo_0 [4]byte
+- X__st_birthtim Timespec
++ Mode uint32
++ Dev int32
++ Ino uint64
++ Nlink uint32
++ Uid uint32
++ Gid uint32
++ Rdev int32
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Size int64
++ Blocks int64
++ Blksize int32
++ Flags uint32
++ Gen uint32
++ _ [4]byte
++ _ Timespec
+ }
+
+ type Statfs_t struct {
+ F_flags uint32
+ F_bsize uint32
+ F_iosize uint32
+- Pad_cgo_0 [4]byte
++ _ [4]byte
+ F_blocks uint64
+ F_bfree uint64
+ F_bavail int64
+@@ -116,7 +99,7 @@ type Statfs_t struct {
+ F_mntonname [90]int8
+ F_mntfromname [90]int8
+ F_mntfromspec [90]int8
+- Pad_cgo_1 [2]byte
++ _ [2]byte
+ Mount_info [160]byte
+ }
+
+@@ -129,19 +112,23 @@ type Flock_t struct {
+ }
+
+ type Dirent struct {
+- Fileno uint64
+- Off int64
+- Reclen uint16
+- Type uint8
+- Namlen uint8
+- X__d_padding [4]uint8
+- Name [256]int8
++ Fileno uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Namlen uint8
++ _ [4]uint8
++ Name [256]int8
+ }
+
+ type Fsid struct {
+ Val [2]int32
+ }
+
++const (
++ PathMax = 0x400
++)
++
+ type RawSockaddrInet4 struct {
+ Len uint8
+ Family uint8
+@@ -212,10 +199,10 @@ type IPv6Mreq struct {
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+- Pad_cgo_0 [4]byte
++ _ [4]byte
+ Iov *Iovec
+ Iovlen uint32
+- Pad_cgo_1 [4]byte
++ _ [4]byte
+ Control *byte
+ Controllen uint32
+ Flags int32
+@@ -277,8 +264,8 @@ type FdSet struct {
+ }
+
+ const (
+- SizeofIfMsghdr = 0xf8
+- SizeofIfData = 0xe0
++ SizeofIfMsghdr = 0xa8
++ SizeofIfData = 0x90
+ SizeofIfaMsghdr = 0x18
+ SizeofIfAnnounceMsghdr = 0x1a
+ SizeofRtMsghdr = 0x60
+@@ -307,7 +294,7 @@ type IfData struct {
+ Link_state uint8
+ Mtu uint32
+ Metric uint32
+- Pad uint32
++ Rdomain uint32
+ Baudrate uint64
+ Ipackets uint64
+ Ierrors uint64
+@@ -319,12 +306,11 @@ type IfData struct {
+ Imcasts uint64
+ Omcasts uint64
+ Iqdrops uint64
++ Oqdrops uint64
+ Noproto uint64
+ Capabilities uint32
+- Pad_cgo_0 [4]byte
++ _ [4]byte
+ Lastchange Timeval
+- Mclpool [7]Mclpool
+- Pad_cgo_1 [4]byte
+ }
+
+ type IfaMsghdr struct {
+@@ -385,13 +371,7 @@ type RtMetrics struct {
+ Pad uint32
+ }
+
+-type Mclpool struct {
+- Grown int32
+- Alive uint16
+- Hwm uint16
+- Cwm uint16
+- Lwm uint16
+-}
++type Mclpool struct{}
+
+ const (
+ SizeofBpfVersion = 0x4
+@@ -412,9 +392,9 @@ type BpfStat struct {
+ }
+
+ type BpfProgram struct {
+- Len uint32
+- Pad_cgo_0 [4]byte
+- Insns *BpfInsn
++ Len uint32
++ _ [4]byte
++ Insns *BpfInsn
+ }
+
+ type BpfInsn struct {
+@@ -425,11 +405,11 @@ type BpfInsn struct {
+ }
+
+ type BpfHdr struct {
+- Tstamp BpfTimeval
+- Caplen uint32
+- Datalen uint32
+- Hdrlen uint16
+- Pad_cgo_0 [2]byte
++ Tstamp BpfTimeval
++ Caplen uint32
++ Datalen uint32
++ Hdrlen uint16
++ _ [2]byte
+ }
+
+ type BpfTimeval struct {
+@@ -447,7 +427,145 @@ type Termios struct {
+ Ospeed int32
+ }
+
++type Winsize struct {
++ Row uint16
++ Col uint16
++ Xpixel uint16
++ Ypixel uint16
++}
++
+ const (
+ AT_FDCWD = -0x64
++ AT_SYMLINK_FOLLOW = 0x4
+ AT_SYMLINK_NOFOLLOW = 0x2
+ )
++
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
++type Sigset_t uint32
++
++type Utsname struct {
++ Sysname [256]byte
++ Nodename [256]byte
++ Release [256]byte
++ Version [256]byte
++ Machine [256]byte
++}
++
++const SizeofUvmexp = 0x158
++
++type Uvmexp struct {
++ Pagesize int32
++ Pagemask int32
++ Pageshift int32
++ Npages int32
++ Free int32
++ Active int32
++ Inactive int32
++ Paging int32
++ Wired int32
++ Zeropages int32
++ Reserve_pagedaemon int32
++ Reserve_kernel int32
++ Anonpages int32
++ Vnodepages int32
++ Vtextpages int32
++ Freemin int32
++ Freetarg int32
++ Inactarg int32
++ Wiredmax int32
++ Anonmin int32
++ Vtextmin int32
++ Vnodemin int32
++ Anonminpct int32
++ Vtextminpct int32
++ Vnodeminpct int32
++ Nswapdev int32
++ Swpages int32
++ Swpginuse int32
++ Swpgonly int32
++ Nswget int32
++ Nanon int32
++ Nanonneeded int32
++ Nfreeanon int32
++ Faults int32
++ Traps int32
++ Intrs int32
++ Swtch int32
++ Softs int32
++ Syscalls int32
++ Pageins int32
++ Obsolete_swapins int32
++ Obsolete_swapouts int32
++ Pgswapin int32
++ Pgswapout int32
++ Forks int32
++ Forks_ppwait int32
++ Forks_sharevm int32
++ Pga_zerohit int32
++ Pga_zeromiss int32
++ Zeroaborts int32
++ Fltnoram int32
++ Fltnoanon int32
++ Fltnoamap int32
++ Fltpgwait int32
++ Fltpgrele int32
++ Fltrelck int32
++ Fltrelckok int32
++ Fltanget int32
++ Fltanretry int32
++ Fltamcopy int32
++ Fltnamap int32
++ Fltnomap int32
++ Fltlget int32
++ Fltget int32
++ Flt_anon int32
++ Flt_acow int32
++ Flt_obj int32
++ Flt_prcopy int32
++ Flt_przero int32
++ Pdwoke int32
++ Pdrevs int32
++ Pdswout int32
++ Pdfreed int32
++ Pdscans int32
++ Pdanscan int32
++ Pdobscan int32
++ Pdreact int32
++ Pdbusy int32
++ Pdpageouts int32
++ Pdpending int32
++ Pddeact int32
++ Pdreanon int32
++ Pdrevnode int32
++ Pdrevtext int32
++ Fpswtch int32
++ Kmapent int32
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Tickadj int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go
+index 62e1f7c0..d80836ef 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go
+@@ -1,16 +1,16 @@
+-// Created by cgo -godefs - DO NOT EDIT
+-// cgo -godefs types_openbsd.go
++// cgo -godefs -- -fsigned-char types_openbsd.go | go run mkpost.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+ // +build arm,openbsd
+
+ package unix
+
+ const (
+- sizeofPtr = 0x4
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x4
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x4
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x4
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -23,11 +23,13 @@ type (
+ type Timespec struct {
+ Sec int64
+ Nsec int32
++ _ [4]byte
+ }
+
+ type Timeval struct {
+ Sec int64
+ Usec int32
++ _ [4]byte
+ }
+
+ type Rusage struct {
+@@ -56,46 +58,31 @@ type Rlimit struct {
+
+ type _Gid_t uint32
+
+-const (
+- S_IFMT = 0xf000
+- S_IFIFO = 0x1000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFBLK = 0x6000
+- S_IFREG = 0x8000
+- S_IFLNK = 0xa000
+- S_IFSOCK = 0xc000
+- S_ISUID = 0x800
+- S_ISGID = 0x400
+- S_ISVTX = 0x200
+- S_IRUSR = 0x100
+- S_IWUSR = 0x80
+- S_IXUSR = 0x40
+-)
+-
+ type Stat_t struct {
+- Mode uint32
+- Dev int32
+- Ino uint64
+- Nlink uint32
+- Uid uint32
+- Gid uint32
+- Rdev int32
+- Atim Timespec
+- Mtim Timespec
+- Ctim Timespec
+- Size int64
+- Blocks int64
+- Blksize int32
+- Flags uint32
+- Gen uint32
+- X__st_birthtim Timespec
++ Mode uint32
++ Dev int32
++ Ino uint64
++ Nlink uint32
++ Uid uint32
++ Gid uint32
++ Rdev int32
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Size int64
++ Blocks int64
++ Blksize int32
++ Flags uint32
++ Gen uint32
++ _ [4]byte
++ _ Timespec
+ }
+
+ type Statfs_t struct {
+ F_flags uint32
+ F_bsize uint32
+ F_iosize uint32
++ _ [4]byte
+ F_blocks uint64
+ F_bfree uint64
+ F_bavail int64
+@@ -110,11 +97,11 @@ type Statfs_t struct {
+ F_namemax uint32
+ F_owner uint32
+ F_ctime uint64
+- F_fstypename [16]uint8
+- F_mntonname [90]uint8
+- F_mntfromname [90]uint8
+- F_mntfromspec [90]uint8
+- Pad_cgo_0 [2]byte
++ F_fstypename [16]int8
++ F_mntonname [90]int8
++ F_mntfromname [90]int8
++ F_mntfromspec [90]int8
++ _ [2]byte
+ Mount_info [160]byte
+ }
+
+@@ -127,19 +114,23 @@ type Flock_t struct {
+ }
+
+ type Dirent struct {
+- Fileno uint64
+- Off int64
+- Reclen uint16
+- Type uint8
+- Namlen uint8
+- X__d_padding [4]uint8
+- Name [256]uint8
++ Fileno uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Namlen uint8
++ _ [4]uint8
++ Name [256]int8
+ }
+
+ type Fsid struct {
+ Val [2]int32
+ }
+
++const (
++ PathMax = 0x400
++)
++
+ type RawSockaddrInet4 struct {
+ Len uint8
+ Family uint8
+@@ -264,8 +255,10 @@ type Kevent_t struct {
+ Filter int16
+ Flags uint16
+ Fflags uint32
++ _ [4]byte
+ Data int64
+ Udata *byte
++ _ [4]byte
+ }
+
+ type FdSet struct {
+@@ -273,8 +266,8 @@ type FdSet struct {
+ }
+
+ const (
+- SizeofIfMsghdr = 0x98
+- SizeofIfData = 0x80
++ SizeofIfMsghdr = 0xa8
++ SizeofIfData = 0x90
+ SizeofIfaMsghdr = 0x18
+ SizeofIfAnnounceMsghdr = 0x1a
+ SizeofRtMsghdr = 0x60
+@@ -303,7 +296,7 @@ type IfData struct {
+ Link_state uint8
+ Mtu uint32
+ Metric uint32
+- Pad uint32
++ Rdomain uint32
+ Baudrate uint64
+ Ipackets uint64
+ Ierrors uint64
+@@ -315,8 +308,10 @@ type IfData struct {
+ Imcasts uint64
+ Omcasts uint64
+ Iqdrops uint64
++ Oqdrops uint64
+ Noproto uint64
+ Capabilities uint32
++ _ [4]byte
+ Lastchange Timeval
+ }
+
+@@ -341,7 +336,7 @@ type IfAnnounceMsghdr struct {
+ Hdrlen uint16
+ Index uint16
+ What uint16
+- Name [16]uint8
++ Name [16]int8
+ }
+
+ type RtMsghdr struct {
+@@ -411,11 +406,11 @@ type BpfInsn struct {
+ }
+
+ type BpfHdr struct {
+- Tstamp BpfTimeval
+- Caplen uint32
+- Datalen uint32
+- Hdrlen uint16
+- Pad_cgo_0 [2]byte
++ Tstamp BpfTimeval
++ Caplen uint32
++ Datalen uint32
++ Hdrlen uint16
++ _ [2]byte
+ }
+
+ type BpfTimeval struct {
+@@ -433,7 +428,145 @@ type Termios struct {
+ Ospeed int32
+ }
+
++type Winsize struct {
++ Row uint16
++ Col uint16
++ Xpixel uint16
++ Ypixel uint16
++}
++
+ const (
+ AT_FDCWD = -0x64
++ AT_SYMLINK_FOLLOW = 0x4
+ AT_SYMLINK_NOFOLLOW = 0x2
+ )
++
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
++type Sigset_t uint32
++
++type Utsname struct {
++ Sysname [256]byte
++ Nodename [256]byte
++ Release [256]byte
++ Version [256]byte
++ Machine [256]byte
++}
++
++const SizeofUvmexp = 0x158
++
++type Uvmexp struct {
++ Pagesize int32
++ Pagemask int32
++ Pageshift int32
++ Npages int32
++ Free int32
++ Active int32
++ Inactive int32
++ Paging int32
++ Wired int32
++ Zeropages int32
++ Reserve_pagedaemon int32
++ Reserve_kernel int32
++ Unused01 int32
++ Vnodepages int32
++ Vtextpages int32
++ Freemin int32
++ Freetarg int32
++ Inactarg int32
++ Wiredmax int32
++ Anonmin int32
++ Vtextmin int32
++ Vnodemin int32
++ Anonminpct int32
++ Vtextminpct int32
++ Vnodeminpct int32
++ Nswapdev int32
++ Swpages int32
++ Swpginuse int32
++ Swpgonly int32
++ Nswget int32
++ Nanon int32
++ Unused05 int32
++ Unused06 int32
++ Faults int32
++ Traps int32
++ Intrs int32
++ Swtch int32
++ Softs int32
++ Syscalls int32
++ Pageins int32
++ Unused07 int32
++ Unused08 int32
++ Pgswapin int32
++ Pgswapout int32
++ Forks int32
++ Forks_ppwait int32
++ Forks_sharevm int32
++ Pga_zerohit int32
++ Pga_zeromiss int32
++ Unused09 int32
++ Fltnoram int32
++ Fltnoanon int32
++ Fltnoamap int32
++ Fltpgwait int32
++ Fltpgrele int32
++ Fltrelck int32
++ Fltrelckok int32
++ Fltanget int32
++ Fltanretry int32
++ Fltamcopy int32
++ Fltnamap int32
++ Fltnomap int32
++ Fltlget int32
++ Fltget int32
++ Flt_anon int32
++ Flt_acow int32
++ Flt_obj int32
++ Flt_prcopy int32
++ Flt_przero int32
++ Pdwoke int32
++ Pdrevs int32
++ Pdswout int32
++ Pdfreed int32
++ Pdscans int32
++ Pdanscan int32
++ Pdobscan int32
++ Pdreact int32
++ Pdbusy int32
++ Pdpageouts int32
++ Pdpending int32
++ Pddeact int32
++ Unused11 int32
++ Unused12 int32
++ Unused13 int32
++ Fpswtch int32
++ Kmapent int32
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Tickadj int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go
+similarity index 58%
+copy from vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
+copy to vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go
+index 46fe9490..4e158746 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go
+@@ -1,16 +1,16 @@
+-// Created by cgo -godefs - DO NOT EDIT
+-// cgo -godefs types_openbsd.go
++// cgo -godefs -- -fsigned-char types_openbsd.go | go run mkpost.go
++// Code generated by the command above; see README.md. DO NOT EDIT.
+
+-// +build amd64,openbsd
++// +build arm64,openbsd
+
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x8
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x8
++ SizeofLongLong = 0x8
+ )
+
+ type (
+@@ -56,48 +56,29 @@ type Rlimit struct {
+
+ type _Gid_t uint32
+
+-const (
+- S_IFMT = 0xf000
+- S_IFIFO = 0x1000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFBLK = 0x6000
+- S_IFREG = 0x8000
+- S_IFLNK = 0xa000
+- S_IFSOCK = 0xc000
+- S_ISUID = 0x800
+- S_ISGID = 0x400
+- S_ISVTX = 0x200
+- S_IRUSR = 0x100
+- S_IWUSR = 0x80
+- S_IXUSR = 0x40
+-)
+-
+ type Stat_t struct {
+- Mode uint32
+- Dev int32
+- Ino uint64
+- Nlink uint32
+- Uid uint32
+- Gid uint32
+- Rdev int32
+- Atim Timespec
+- Mtim Timespec
+- Ctim Timespec
+- Size int64
+- Blocks int64
+- Blksize uint32
+- Flags uint32
+- Gen uint32
+- Pad_cgo_0 [4]byte
+- X__st_birthtim Timespec
++ Mode uint32
++ Dev int32
++ Ino uint64
++ Nlink uint32
++ Uid uint32
++ Gid uint32
++ Rdev int32
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Size int64
++ Blocks int64
++ Blksize int32
++ Flags uint32
++ Gen uint32
++ _ Timespec
+ }
+
+ type Statfs_t struct {
+ F_flags uint32
+ F_bsize uint32
+ F_iosize uint32
+- Pad_cgo_0 [4]byte
+ F_blocks uint64
+ F_bfree uint64
+ F_bavail int64
+@@ -116,7 +97,7 @@ type Statfs_t struct {
+ F_mntonname [90]int8
+ F_mntfromname [90]int8
+ F_mntfromspec [90]int8
+- Pad_cgo_1 [2]byte
++ _ [2]byte
+ Mount_info [160]byte
+ }
+
+@@ -129,19 +110,23 @@ type Flock_t struct {
+ }
+
+ type Dirent struct {
+- Fileno uint64
+- Off int64
+- Reclen uint16
+- Type uint8
+- Namlen uint8
+- X__d_padding [4]uint8
+- Name [256]int8
++ Fileno uint64
++ Off int64
++ Reclen uint16
++ Type uint8
++ Namlen uint8
++ _ [4]uint8
++ Name [256]int8
+ }
+
+ type Fsid struct {
+ Val [2]int32
+ }
+
++const (
++ PathMax = 0x400
++)
++
+ type RawSockaddrInet4 struct {
+ Len uint8
+ Family uint8
+@@ -212,10 +197,8 @@ type IPv6Mreq struct {
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+- Pad_cgo_0 [4]byte
+ Iov *Iovec
+ Iovlen uint32
+- Pad_cgo_1 [4]byte
+ Control *byte
+ Controllen uint32
+ Flags int32
+@@ -277,8 +260,8 @@ type FdSet struct {
+ }
+
+ const (
+- SizeofIfMsghdr = 0xf8
+- SizeofIfData = 0xe0
++ SizeofIfMsghdr = 0xa8
++ SizeofIfData = 0x90
+ SizeofIfaMsghdr = 0x18
+ SizeofIfAnnounceMsghdr = 0x1a
+ SizeofRtMsghdr = 0x60
+@@ -307,7 +290,7 @@ type IfData struct {
+ Link_state uint8
+ Mtu uint32
+ Metric uint32
+- Pad uint32
++ Rdomain uint32
+ Baudrate uint64
+ Ipackets uint64
+ Ierrors uint64
+@@ -319,12 +302,10 @@ type IfData struct {
+ Imcasts uint64
+ Omcasts uint64
+ Iqdrops uint64
++ Oqdrops uint64
+ Noproto uint64
+ Capabilities uint32
+- Pad_cgo_0 [4]byte
+ Lastchange Timeval
+- Mclpool [7]Mclpool
+- Pad_cgo_1 [4]byte
+ }
+
+ type IfaMsghdr struct {
+@@ -385,13 +366,7 @@ type RtMetrics struct {
+ Pad uint32
+ }
+
+-type Mclpool struct {
+- Grown int32
+- Alive uint16
+- Hwm uint16
+- Cwm uint16
+- Lwm uint16
+-}
++type Mclpool struct{}
+
+ const (
+ SizeofBpfVersion = 0x4
+@@ -412,9 +387,8 @@ type BpfStat struct {
+ }
+
+ type BpfProgram struct {
+- Len uint32
+- Pad_cgo_0 [4]byte
+- Insns *BpfInsn
++ Len uint32
++ Insns *BpfInsn
+ }
+
+ type BpfInsn struct {
+@@ -425,11 +399,11 @@ type BpfInsn struct {
+ }
+
+ type BpfHdr struct {
+- Tstamp BpfTimeval
+- Caplen uint32
+- Datalen uint32
+- Hdrlen uint16
+- Pad_cgo_0 [2]byte
++ Tstamp BpfTimeval
++ Caplen uint32
++ Datalen uint32
++ Hdrlen uint16
++ _ [2]byte
+ }
+
+ type BpfTimeval struct {
+@@ -447,7 +421,145 @@ type Termios struct {
+ Ospeed int32
+ }
+
++type Winsize struct {
++ Row uint16
++ Col uint16
++ Xpixel uint16
++ Ypixel uint16
++}
++
+ const (
+ AT_FDCWD = -0x64
++ AT_SYMLINK_FOLLOW = 0x4
+ AT_SYMLINK_NOFOLLOW = 0x2
+ )
++
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
++
++type Sigset_t uint32
++
++type Utsname struct {
++ Sysname [256]byte
++ Nodename [256]byte
++ Release [256]byte
++ Version [256]byte
++ Machine [256]byte
++}
++
++const SizeofUvmexp = 0x158
++
++type Uvmexp struct {
++ Pagesize int32
++ Pagemask int32
++ Pageshift int32
++ Npages int32
++ Free int32
++ Active int32
++ Inactive int32
++ Paging int32
++ Wired int32
++ Zeropages int32
++ Reserve_pagedaemon int32
++ Reserve_kernel int32
++ Unused01 int32
++ Vnodepages int32
++ Vtextpages int32
++ Freemin int32
++ Freetarg int32
++ Inactarg int32
++ Wiredmax int32
++ Anonmin int32
++ Vtextmin int32
++ Vnodemin int32
++ Anonminpct int32
++ Vtextminpct int32
++ Vnodeminpct int32
++ Nswapdev int32
++ Swpages int32
++ Swpginuse int32
++ Swpgonly int32
++ Nswget int32
++ Nanon int32
++ Unused05 int32
++ Unused06 int32
++ Faults int32
++ Traps int32
++ Intrs int32
++ Swtch int32
++ Softs int32
++ Syscalls int32
++ Pageins int32
++ Unused07 int32
++ Unused08 int32
++ Pgswapin int32
++ Pgswapout int32
++ Forks int32
++ Forks_ppwait int32
++ Forks_sharevm int32
++ Pga_zerohit int32
++ Pga_zeromiss int32
++ Unused09 int32
++ Fltnoram int32
++ Fltnoanon int32
++ Fltnoamap int32
++ Fltpgwait int32
++ Fltpgrele int32
++ Fltrelck int32
++ Fltrelckok int32
++ Fltanget int32
++ Fltanretry int32
++ Fltamcopy int32
++ Fltnamap int32
++ Fltnomap int32
++ Fltlget int32
++ Fltget int32
++ Flt_anon int32
++ Flt_acow int32
++ Flt_obj int32
++ Flt_prcopy int32
++ Flt_przero int32
++ Pdwoke int32
++ Pdrevs int32
++ Pdswout int32
++ Pdfreed int32
++ Pdscans int32
++ Pdanscan int32
++ Pdobscan int32
++ Pdreact int32
++ Pdbusy int32
++ Pdpageouts int32
++ Pdpending int32
++ Pddeact int32
++ Unused11 int32
++ Unused12 int32
++ Unused13 int32
++ Fpswtch int32
++ Kmapent int32
++}
++
++const SizeofClockinfo = 0x14
++
++type Clockinfo struct {
++ Hz int32
++ Tick int32
++ Tickadj int32
++ Stathz int32
++ Profhz int32
++}
+diff --git a/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go
+index 92336f9f..23ed9fe5 100644
+--- a/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go
++++ b/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go
+@@ -6,11 +6,11 @@
+ package unix
+
+ const (
+- sizeofPtr = 0x8
+- sizeofShort = 0x2
+- sizeofInt = 0x4
+- sizeofLong = 0x8
+- sizeofLongLong = 0x8
++ SizeofPtr = 0x8
++ SizeofShort = 0x2
++ SizeofInt = 0x4
++ SizeofLong = 0x8
++ SizeofLongLong = 0x8
+ PathMax = 0x400
+ MaxHostNameLen = 0x100
+ )
+@@ -75,58 +75,41 @@ type Rlimit struct {
+
+ type _Gid_t uint32
+
+-const (
+- S_IFMT = 0xf000
+- S_IFIFO = 0x1000
+- S_IFCHR = 0x2000
+- S_IFDIR = 0x4000
+- S_IFBLK = 0x6000
+- S_IFREG = 0x8000
+- S_IFLNK = 0xa000
+- S_IFSOCK = 0xc000
+- S_ISUID = 0x800
+- S_ISGID = 0x400
+- S_ISVTX = 0x200
+- S_IRUSR = 0x100
+- S_IWUSR = 0x80
+- S_IXUSR = 0x40
+-)
+-
+ type Stat_t struct {
+- Dev uint64
+- Ino uint64
+- Mode uint32
+- Nlink uint32
+- Uid uint32
+- Gid uint32
+- Rdev uint64
+- Size int64
+- Atim Timespec
+- Mtim Timespec
+- Ctim Timespec
+- Blksize int32
+- Pad_cgo_0 [4]byte
+- Blocks int64
+- Fstype [16]int8
++ Dev uint64
++ Ino uint64
++ Mode uint32
++ Nlink uint32
++ Uid uint32
++ Gid uint32
++ Rdev uint64
++ Size int64
++ Atim Timespec
++ Mtim Timespec
++ Ctim Timespec
++ Blksize int32
++ _ [4]byte
++ Blocks int64
++ Fstype [16]int8
+ }
+
+ type Flock_t struct {
+- Type int16
+- Whence int16
+- Pad_cgo_0 [4]byte
+- Start int64
+- Len int64
+- Sysid int32
+- Pid int32
+- Pad [4]int64
++ Type int16
++ Whence int16
++ _ [4]byte
++ Start int64
++ Len int64
++ Sysid int32
++ Pid int32
++ Pad [4]int64
+ }
+
+ type Dirent struct {
+- Ino uint64
+- Off int64
+- Reclen uint16
+- Name [1]int8
+- Pad_cgo_0 [5]byte
++ Ino uint64
++ Off int64
++ Reclen uint16
++ Name [1]int8
++ _ [5]byte
+ }
+
+ type _Fsblkcnt_t uint64
+@@ -213,13 +196,13 @@ type IPv6Mreq struct {
+ type Msghdr struct {
+ Name *byte
+ Namelen uint32
+- Pad_cgo_0 [4]byte
++ _ [4]byte
+ Iov *Iovec
+ Iovlen int32
+- Pad_cgo_1 [4]byte
++ _ [4]byte
+ Accrights *int8
+ Accrightslen int32
+- Pad_cgo_2 [4]byte
++ _ [4]byte
+ }
+
+ type Cmsghdr struct {
+@@ -228,6 +211,12 @@ type Cmsghdr struct {
+ Type int32
+ }
+
++type Inet4Pktinfo struct {
++ Ifindex uint32
++ Spec_dst [4]byte /* in_addr */
++ Addr [4]byte /* in_addr */
++}
++
+ type Inet6Pktinfo struct {
+ Addr [16]byte /* in6_addr */
+ Ifindex uint32
+@@ -253,6 +242,7 @@ const (
+ SizeofIPv6Mreq = 0x14
+ SizeofMsghdr = 0x30
+ SizeofCmsghdr = 0xc
++ SizeofInet4Pktinfo = 0xc
+ SizeofInet6Pktinfo = 0x14
+ SizeofIPv6MTUInfo = 0x24
+ SizeofICMPv6Filter = 0x20
+@@ -263,19 +253,19 @@ type FdSet struct {
+ }
+
+ type Utsname struct {
+- Sysname [257]int8
+- Nodename [257]int8
+- Release [257]int8
+- Version [257]int8
+- Machine [257]int8
++ Sysname [257]byte
++ Nodename [257]byte
++ Release [257]byte
++ Version [257]byte
++ Machine [257]byte
+ }
+
+ type Ustat_t struct {
+- Tfree int64
+- Tinode uint64
+- Fname [6]int8
+- Fpack [6]int8
+- Pad_cgo_0 [4]byte
++ Tfree int64
++ Tinode uint64
++ Fname [6]int8
++ Fpack [6]int8
++ _ [4]byte
+ }
+
+ const (
+@@ -295,21 +285,21 @@ const (
+ )
+
+ type IfMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Data IfData
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Data IfData
+ }
+
+ type IfData struct {
+ Type uint8
+ Addrlen uint8
+ Hdrlen uint8
+- Pad_cgo_0 [1]byte
++ _ [1]byte
+ Mtu uint32
+ Metric uint32
+ Baudrate uint32
+@@ -328,30 +318,30 @@ type IfData struct {
+ }
+
+ type IfaMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Addrs int32
+- Flags int32
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Metric int32
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Addrs int32
++ Flags int32
++ Index uint16
++ _ [2]byte
++ Metric int32
+ }
+
+ type RtMsghdr struct {
+- Msglen uint16
+- Version uint8
+- Type uint8
+- Index uint16
+- Pad_cgo_0 [2]byte
+- Flags int32
+- Addrs int32
+- Pid int32
+- Seq int32
+- Errno int32
+- Use int32
+- Inits uint32
+- Rmx RtMetrics
++ Msglen uint16
++ Version uint8
++ Type uint8
++ Index uint16
++ _ [2]byte
++ Flags int32
++ Addrs int32
++ Pid int32
++ Seq int32
++ Errno int32
++ Use int32
++ Inits uint32
++ Rmx RtMetrics
+ }
+
+ type RtMetrics struct {
+@@ -388,9 +378,9 @@ type BpfStat struct {
+ }
+
+ type BpfProgram struct {
+- Len uint32
+- Pad_cgo_0 [4]byte
+- Insns *BpfInsn
++ Len uint32
++ _ [4]byte
++ Insns *BpfInsn
+ }
+
+ type BpfInsn struct {
+@@ -406,32 +396,30 @@ type BpfTimeval struct {
+ }
+
+ type BpfHdr struct {
+- Tstamp BpfTimeval
+- Caplen uint32
+- Datalen uint32
+- Hdrlen uint16
+- Pad_cgo_0 [2]byte
++ Tstamp BpfTimeval
++ Caplen uint32
++ Datalen uint32
++ Hdrlen uint16
++ _ [2]byte
+ }
+
+-const _SC_PAGESIZE = 0xb
+-
+ type Termios struct {
+- Iflag uint32
+- Oflag uint32
+- Cflag uint32
+- Lflag uint32
+- Cc [19]uint8
+- Pad_cgo_0 [1]byte
++ Iflag uint32
++ Oflag uint32
++ Cflag uint32
++ Lflag uint32
++ Cc [19]uint8
++ _ [1]byte
+ }
+
+ type Termio struct {
+- Iflag uint16
+- Oflag uint16
+- Cflag uint16
+- Lflag uint16
+- Line int8
+- Cc [8]uint8
+- Pad_cgo_0 [1]byte
++ Iflag uint16
++ Oflag uint16
++ Cflag uint16
++ Lflag uint16
++ Line int8
++ Cc [8]uint8
++ _ [1]byte
+ }
+
+ type Winsize struct {
+@@ -440,3 +428,22 @@ type Winsize struct {
+ Xpixel uint16
+ Ypixel uint16
+ }
++
++type PollFd struct {
++ Fd int32
++ Events int16
++ Revents int16
++}
++
++const (
++ POLLERR = 0x8
++ POLLHUP = 0x10
++ POLLIN = 0x1
++ POLLNVAL = 0x20
++ POLLOUT = 0x4
++ POLLPRI = 0x2
++ POLLRDBAND = 0x80
++ POLLRDNORM = 0x40
++ POLLWRBAND = 0x100
++ POLLWRNORM = 0x4
++)
+--
+2.26.2
+
diff --git a/poky/meta/recipes-devtools/go/go-dep_0.5.4.bb b/poky/meta/recipes-devtools/go/go-dep_0.5.4.bb
index 496224a5c..0da2c6607 100644
--- a/poky/meta/recipes-devtools/go/go-dep_0.5.4.bb
+++ b/poky/meta/recipes-devtools/go/go-dep_0.5.4.bb
@@ -8,6 +8,7 @@ SRC_URI = "git://${GO_IMPORT} \
file://0001-Add-support-for-mips-mips64.patch;patchdir=src/github.com/golang/dep \
file://0001-bolt_riscv64-Add-support-for-riscv64.patch;patchdir=src/github.com/golang/dep \
"
+SRC_URI_append_riscv64 = " file://0001-Update-sys-module-to-latest.patch;patchdir=src/github.com/golang/dep "
SRCREV = "1f7c19e5f52f49ffb9f956f64c010be14683468b"
diff --git a/poky/meta/recipes-devtools/go/go-native_1.14.bb b/poky/meta/recipes-devtools/go/go-native_1.14.bb
deleted file mode 100644
index bbf3c0dd7..000000000
--- a/poky/meta/recipes-devtools/go/go-native_1.14.bb
+++ /dev/null
@@ -1,2 +0,0 @@
-require ${PN}.inc
-require go-${PV}.inc
diff --git a/poky/meta/recipes-devtools/go/go-native.inc b/poky/meta/recipes-devtools/go/go-native_1.15.bb
index 207708745..f14892cdb 100644
--- a/poky/meta/recipes-devtools/go/go-native.inc
+++ b/poky/meta/recipes-devtools/go/go-native_1.15.bb
@@ -1,7 +1,11 @@
+# This recipe builds a native Go (written in Go) by first building an old Go 1.4
+# (written in C). However this old Go does not support all hosts platforms.
+
+require go-${PV}.inc
+
inherit native
SRC_URI_append = " https://dl.google.com/go/go1.4-bootstrap-20171003.tar.gz;name=bootstrap;subdir=go1.4"
-SRC_URI[bootstrap.md5sum] = "dbf727a4b0e365bf88d97cbfde590016"
SRC_URI[bootstrap.sha256sum] = "f4ff5b5eb3a3cae1c993723f3eab519c5bae18866b5e5f96fe1102f0cb5c3e52"
export GOOS = "${BUILD_GOOS}"
diff --git a/poky/meta/recipes-devtools/go/go-runtime_1.14.bb b/poky/meta/recipes-devtools/go/go-runtime_1.15.bb
index 43b68b4e4..4eeee65e0 100644
--- a/poky/meta/recipes-devtools/go/go-runtime_1.14.bb
+++ b/poky/meta/recipes-devtools/go/go-runtime_1.15.bb
@@ -1,2 +1,3 @@
+export CGO_ENABLED_riscv64 = ""
require go-${PV}.inc
require go-runtime.inc
diff --git a/poky/meta/recipes-devtools/go/go_1.14.bb b/poky/meta/recipes-devtools/go/go_1.15.bb
index 5d40cf9d0..4bf9dd50b 100644
--- a/poky/meta/recipes-devtools/go/go_1.14.bb
+++ b/poky/meta/recipes-devtools/go/go_1.15.bb
@@ -1,14 +1,15 @@
require go-${PV}.inc
require go-target.inc
+inherit linuxloader
+
export GOBUILDMODE=""
+export CGO_ENABLED_riscv64 = ""
+export GO_LDSO = "${@get_linuxloader(d)}"
-# Add pie to GOBUILDMODE to satisfy "textrel" QA checking, but mips/riscv
-# doesn't support -buildmode=pie, so skip the QA checking for mips/riscv and its
+# mips/rv64 doesn't support -buildmode=pie, so skip the QA checking for mips/riscv and its
# variants.
python() {
if 'mips' in d.getVar('TARGET_ARCH',True) or 'riscv' in d.getVar('TARGET_ARCH',True):
d.appendVar('INSANE_SKIP_%s' % d.getVar('PN',True), " textrel")
- else:
- d.setVar('GOBUILDMODE', 'pie')
}
diff --git a/poky/meta/recipes-devtools/help2man/help2man-native_1.47.11.bb b/poky/meta/recipes-devtools/help2man/help2man-native_1.47.11.bb
deleted file mode 100644
index a60e85189..000000000
--- a/poky/meta/recipes-devtools/help2man/help2man-native_1.47.11.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-SUMMARY = "Program for creating simple man pages"
-SECTION = "devel"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-DEPENDS = "autoconf-native automake-native"
-
-SRC_URI = "${GNU_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz"
-SRC_URI[md5sum] = "dd322adcaede5bd5eaed075ff8971bc1"
-SRC_URI[sha256sum] = "5985b257f86304c8791842c0c807a37541d0d6807ee973000cf8a3fe6ad47b88"
-
-inherit autotools native
-
-EXTRA_OECONF = "--disable-nls"
-
-# We don't want to reconfigure things as it would require 'perlnative' to be
-# used.
-do_configure() {
- oe_runconf
-}
-
-do_install_append () {
- # Make sure we use /usr/bin/env perl
- sed -i -e "1s:#!.*:#! /usr/bin/env perl:" ${D}${bindir}/help2man
-}
diff --git a/poky/meta/recipes-devtools/help2man/help2man_1.47.15.bb b/poky/meta/recipes-devtools/help2man/help2man_1.47.15.bb
new file mode 100644
index 000000000..6ab9f6cbe
--- /dev/null
+++ b/poky/meta/recipes-devtools/help2man/help2man_1.47.15.bb
@@ -0,0 +1,22 @@
+SUMMARY = "Program for creating simple man pages"
+SECTION = "devel"
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464"
+
+SRC_URI = "${GNU_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz"
+SRC_URI[sha256sum] = "c25a35b30eceb315361484b0ff1f81c924e8ee5c8881576f1ee762f001dbcd1c"
+
+inherit autotools
+
+# This is a hand-maintained aclocal.m4 but our autotools class currently deletes
+# aclocal.m4.
+EXTRA_AUTORECONF += "--exclude=aclocal"
+
+EXTRA_OECONF = "--disable-nls"
+
+do_install_append () {
+ # Make sure we use /usr/bin/env perl
+ sed -i -e "1s:#!.*:#! /usr/bin/env perl:" ${D}${bindir}/help2man
+}
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/jquery/jquery_3.5.0.bb b/poky/meta/recipes-devtools/jquery/jquery_3.5.0.bb
deleted file mode 100644
index 5c6f9cddb..000000000
--- a/poky/meta/recipes-devtools/jquery/jquery_3.5.0.bb
+++ /dev/null
@@ -1,31 +0,0 @@
-SUMMARY = "jQuery is a fast, small, and feature-rich JavaScript library"
-HOMEPAGE = "https://jquery.com/"
-LICENSE = "MIT"
-SECTION = "devel"
-LIC_FILES_CHKSUM = "file://${WORKDIR}/${BP}.js;startline=8;endline=10;md5=b1e67ece919e852643f1541a54492d65"
-
-SRC_URI = "\
- https://code.jquery.com/${BP}.js;name=js \
- https://code.jquery.com/${BP}.min.js;name=min \
- https://code.jquery.com/${BP}.min.map;name=map \
- "
-
-SRC_URI[js.sha256sum] = "aff01a147aeccc9b70a5efad1f2362fd709f3316296ec460d94aa7d31decdb37"
-SRC_URI[min.sha256sum] = "c4dccdd9ae25b64078e0c73f273de94f8894d5c99e4741645ece29aeefc9c5a4"
-SRC_URI[map.sha256sum] = "3149351c8cbc3fb230bbf6188617c7ffda77d9e14333f4f5f0aa1aae379df892"
-
-UPSTREAM_CHECK_REGEX = "jquery-(?P<pver>\d+(\.\d+)+)\.js"
-
-inherit allarch
-
-do_install() {
- install -d ${D}${datadir}/javascript/${BPN}/
- install -m 644 ${WORKDIR}/${BP}.js ${D}${datadir}/javascript/${BPN}/${BPN}.js
- install -m 644 ${WORKDIR}/${BP}.min.js ${D}${datadir}/javascript/${BPN}/${BPN}.min.js
- install -m 644 ${WORKDIR}/${BP}.min.map ${D}${datadir}/javascript/${BPN}/${BPN}.min.map
-}
-
-PACKAGES = "${PN}"
-FILES_${PN} = "${datadir}"
-
-BBCLASSEXTEND += "native nativesdk"
diff --git a/poky/meta/recipes-devtools/jquery/jquery_3.5.1.bb b/poky/meta/recipes-devtools/jquery/jquery_3.5.1.bb
new file mode 100644
index 000000000..62f0dfb0c
--- /dev/null
+++ b/poky/meta/recipes-devtools/jquery/jquery_3.5.1.bb
@@ -0,0 +1,33 @@
+SUMMARY = "jQuery is a fast, small, and feature-rich JavaScript library"
+HOMEPAGE = "https://jquery.com/"
+LICENSE = "MIT"
+SECTION = "devel"
+LIC_FILES_CHKSUM = "file://${S}/${BP}.js;beginline=8;endline=10;md5=ebd7bc5d23ab165188e526a0c65d24bb"
+
+# unpack items to ${S} so the archiver can see them
+#
+SRC_URI = "\
+ https://code.jquery.com/${BP}.js;name=js;subdir=${BP} \
+ https://code.jquery.com/${BP}.min.js;name=min;subdir=${BP} \
+ https://code.jquery.com/${BP}.min.map;name=map;subdir=${BP} \
+ "
+
+SRC_URI[js.sha256sum] = "416a3b2c3bf16d64f6b5b6d0f7b079df2267614dd6847fc2f3271b4409233c37"
+SRC_URI[min.sha256sum] = "f7f6a5894f1d19ddad6fa392b2ece2c5e578cbf7da4ea805b6885eb6985b6e3d"
+SRC_URI[map.sha256sum] = "511d6f6d3e7acec78cd2505f04282b6e01329b4c24931f39d91739d0d1ddeef8"
+
+UPSTREAM_CHECK_REGEX = "jquery-(?P<pver>\d+(\.\d+)+)\.js"
+
+inherit allarch
+
+do_install() {
+ install -d ${D}${datadir}/javascript/${BPN}/
+ install -m 644 ${S}/${BP}.js ${D}${datadir}/javascript/${BPN}/${BPN}.js
+ install -m 644 ${S}/${BP}.min.js ${D}${datadir}/javascript/${BPN}/${BPN}.min.js
+ install -m 644 ${S}/${BP}.min.map ${D}${datadir}/javascript/${BPN}/${BPN}.min.map
+}
+
+PACKAGES = "${PN}"
+FILES_${PN} = "${datadir}"
+
+BBCLASSEXTEND += "native nativesdk"
diff --git a/poky/meta/recipes-devtools/json-c/json-c/add-disable-werror-option-to-configure.patch b/poky/meta/recipes-devtools/json-c/json-c/add-disable-werror-option-to-configure.patch
deleted file mode 100644
index 0c20c8458..000000000
--- a/poky/meta/recipes-devtools/json-c/json-c/add-disable-werror-option-to-configure.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-json-c: Backport --disable-werror patch to allow compilation under icecc
-
-icecc preprocesses source files locally before shipping them off to be compiled
-on remote hosts. This preprocessing removes comments, including /* fallthough */
-comments in switch statements that normally prevent an implicit-fallthrough
-warning, see https://github.com/icecc/icecream/issues/419
-
-Rather than turning off -Werror, the upstream project has implemented a
-configure option, --disable-werror, in response to Ross's
-https://github.com/json-c/json-c/issues/489
-
-This patch from
-https://github.com/json-c/json-c/commit/21c886534f8927fdc0fb5f8647394f3e0e0874b8
-
-Upstream-Status: Backport [Not yet released]
-Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
-
-From 21c886534f8927fdc0fb5f8647394f3e0e0874b8 Mon Sep 17 00:00:00 2001
-From: Pierce Lopez <pierce.lopez@gmail.com>
-Date: Sun, 9 Jun 2019 10:52:08 -0400
-Subject: [PATCH] build: add --disable-werror option to configure
-
-to omit -Werror compiler option
----
- configure.ac | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 272ea6af9c..798fd5b747 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -165,7 +165,12 @@ AS_IF([test "x$enable_Bsymbolic" = "xcheck"],
- AS_IF([test "x$enable_Bsymbolic" = "xyes"], [JSON_BSYMBOLIC_LDFLAGS=-Wl[,]-Bsymbolic-functions])
- AC_SUBST(JSON_BSYMBOLIC_LDFLAGS)
-
--AX_APPEND_COMPILE_FLAGS([-Wall -Werror -Wcast-qual -Wno-error=deprecated-declarations])
-+AC_ARG_ENABLE([werror],
-+ AS_HELP_STRING([--disable-werror], [avoid treating compiler warnings as fatal errors]))
-+
-+AS_IF([test "x$enable_werror" != "xno"], [AX_APPEND_COMPILE_FLAGS([-Werror])])
-+
-+AX_APPEND_COMPILE_FLAGS([-Wall -Wcast-qual -Wno-error=deprecated-declarations])
- AX_APPEND_COMPILE_FLAGS([-Wextra -Wwrite-string -Wno-unused-parameter])
- AX_APPEND_COMPILE_FLAGS([-D_GNU_SOURCE])
-
diff --git a/poky/meta/recipes-devtools/json-c/json-c_0.13.1.bb b/poky/meta/recipes-devtools/json-c/json-c_0.15.bb
index 522879f21..2968590dd 100644
--- a/poky/meta/recipes-devtools/json-c/json-c_0.13.1.bb
+++ b/poky/meta/recipes-devtools/json-c/json-c_0.15.bb
@@ -4,19 +4,15 @@ HOMEPAGE = "https://github.com/json-c/json-c/wiki"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
-SRC_URI = "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz \
- file://add-disable-werror-option-to-configure.patch \
- "
-SRC_URI[md5sum] = "04969ad59cc37bddd83741a08b98f350"
-SRC_URI[sha256sum] = "b87e608d4d3f7bfdd36ef78d56d53c74e66ab278d318b71e6002a369d36f4873"
+SRC_URI = "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz"
+
+SRC_URI[sha256sum] = "b8d80a1ddb718b3ba7492916237bbf86609e9709fb007e7f7d4322f02341a4c6"
UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases"
UPSTREAM_CHECK_REGEX = "json-c-(?P<pver>\d+(\.\d+)+)-\d+"
RPROVIDES_${PN} = "libjson"
-inherit autotools
-
-EXTRA_OECONF = "--disable-werror"
+inherit cmake
BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/libdnf/libdnf/0001-Add-WITH_TESTS-option.patch b/poky/meta/recipes-devtools/libdnf/libdnf/0001-Add-WITH_TESTS-option.patch
index ac9400c48..384add5e1 100644
--- a/poky/meta/recipes-devtools/libdnf/libdnf/0001-Add-WITH_TESTS-option.patch
+++ b/poky/meta/recipes-devtools/libdnf/libdnf/0001-Add-WITH_TESTS-option.patch
@@ -1,4 +1,4 @@
-From 56fa2bbdbd29377a6ef0d0b7aadbac8b5ea8c95b Mon Sep 17 00:00:00 2001
+From 7d60d62b5c5374156703ca7262fb2f85ec5db119 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Tue, 6 Nov 2018 13:54:43 +0100
Subject: [PATCH] Add WITH_TESTS option
@@ -14,7 +14,7 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
2 files changed, 5 insertions(+)
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 881152a..965c992 100644
+index 9c6e1b2f..8599c540 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -33,6 +33,7 @@ option(WITH_MAN "Enables hawkey man page generation" ON)
@@ -24,8 +24,8 @@ index 881152a..965c992 100644
+option(WITH_TESTS "Enables unit tests" ON)
- # load pkg-config first; it's required by other modules
-@@ -165,8 +166,10 @@ endif()
+ # build options - debugging
+@@ -179,8 +180,10 @@ endif()
# build tests
@@ -37,7 +37,7 @@ index 881152a..965c992 100644
add_subdirectory(python/hawkey)
endif()
diff --git a/python/hawkey/CMakeLists.txt b/python/hawkey/CMakeLists.txt
-index d964534..84d1720 100644
+index d9645346..84d17204 100644
--- a/python/hawkey/CMakeLists.txt
+++ b/python/hawkey/CMakeLists.txt
@@ -50,4 +50,6 @@ target_link_libraries(_hawkeymodule ${PYTHON_LIBRARY})
diff --git a/poky/meta/recipes-devtools/libdnf/libdnf/0001-Use-single-quotes-around-string-literals-used-in-SQL.patch b/poky/meta/recipes-devtools/libdnf/libdnf/0001-Use-single-quotes-around-string-literals-used-in-SQL.patch
deleted file mode 100644
index 6be484fea..000000000
--- a/poky/meta/recipes-devtools/libdnf/libdnf/0001-Use-single-quotes-around-string-literals-used-in-SQL.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 96ca7d0049461df2293dd0000edcbc69b64255e0 Mon Sep 17 00:00:00 2001
-From: Peter Kjellerstedt <pkj@axis.com>
-Date: Sun, 3 May 2020 22:40:39 +0200
-Subject: [PATCH] Use single-quotes around string literals used in SQL
- statements
-
-If sqlite is built with -DSQLITE_DQS=0 in accordance with
-https://sqlite.org/quirks.html#dblquote, migration to version 1.2 of the
-history database would fail with:
-
- History database cannot be created: /var/lib/dnf/history.sqlite.
- Error: SQLite error on ":memory:": Executing an SQL statement failed:
- no such column: 1.2
-
-Upstream-Status: Submitted [https://github.com/rpm-software-management/libdnf/pull/951]
-Signed-off-by: Peter Kjellerstedt <pkj@axis.com>
----
- libdnf/transaction/sql/migrate_tables_1_2.sql | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/libdnf/transaction/sql/migrate_tables_1_2.sql b/libdnf/transaction/sql/migrate_tables_1_2.sql
-index 49b75315..f80ad1c4 100644
---- a/libdnf/transaction/sql/migrate_tables_1_2.sql
-+++ b/libdnf/transaction/sql/migrate_tables_1_2.sql
-@@ -1,9 +1,9 @@
- R"**(
- BEGIN TRANSACTION;
- ALTER TABLE trans
-- ADD comment TEXT DEFAULT "";
-+ ADD comment TEXT DEFAULT '';
- UPDATE config
-- SET value = "1.2"
-+ SET value = '1.2'
- WHERE key = 'version';
- COMMIT;
- )**"
diff --git a/poky/meta/recipes-devtools/libdnf/libdnf/enable_test_data_dir_set.patch b/poky/meta/recipes-devtools/libdnf/libdnf/enable_test_data_dir_set.patch
new file mode 100644
index 000000000..e3784cc9e
--- /dev/null
+++ b/poky/meta/recipes-devtools/libdnf/libdnf/enable_test_data_dir_set.patch
@@ -0,0 +1,26 @@
+libdnf: allow reproducible binary builds
+
+Use a dummy directory for test data if not built WITH_TESTS. Allow for overriding
+TESTDATADIR, since the default is guaranteed to be wrong for target builds.
+
+Upstream-Status: Pending
+
+Signed-off-by: Joe Slater <joe.slater@windriver.com>
+
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -133,7 +133,12 @@ add_definitions(-DG_LOG_DOMAIN=\\"libdnf
+ add_definitions(-D_FILE_OFFSET_BITS=64)
+
+ # tests
+-add_definitions(-DTESTDATADIR=\\"${CMAKE_SOURCE_DIR}/data/tests\\")
++if(NOT WITH_TESTS)
++ set(TEST_DATA_DIR "/notests")
++elseif(NOT DEFINED TEST_DATA_DIR)
++ set(TEST_DATA_DIR "${CMAKE_SOURCE_DIR}/data/tests")
++endif()
++add_definitions(-DTESTDATADIR=\\"${TEST_DATA_DIR}\\")
+
+ # librhsm
+ if(ENABLE_RHSM_SUPPORT)
diff --git a/poky/meta/recipes-devtools/libdnf/libdnf_0.47.0.bb b/poky/meta/recipes-devtools/libdnf/libdnf_0.48.0.bb
index 1b06d66b1..37991e6d8 100644
--- a/poky/meta/recipes-devtools/libdnf/libdnf_0.47.0.bb
+++ b/poky/meta/recipes-devtools/libdnf/libdnf_0.48.0.bb
@@ -8,10 +8,10 @@ SRC_URI = "git://github.com/rpm-software-management/libdnf;branch=dnf-4-master \
file://0001-Get-parameters-for-both-libsolv-and-libsolvext-libdn.patch \
file://0001-Add-WITH_TESTS-option.patch \
file://0001-Look-fo-sphinx-only-if-documentation-is-actually-ena.patch \
- file://0001-Use-single-quotes-around-string-literals-used-in-SQL.patch \
+ file://enable_test_data_dir_set.patch \
"
-SRCREV = "8330eea6985c4e4b53796f858de5b6b38b1ddf5c"
+SRCREV = "46a28d0cf09277fffc11392e5e362a2eda0d53a8"
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/libmodulemd/libmodulemd/0002-meson.build-do-not-install-python-gi-bindings.patch b/poky/meta/recipes-devtools/libmodulemd/libmodulemd/0002-meson.build-do-not-install-python-gi-bindings.patch
deleted file mode 100644
index a97fb7390..000000000
--- a/poky/meta/recipes-devtools/libmodulemd/libmodulemd/0002-meson.build-do-not-install-python-gi-bindings.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From d7eeac90fe02ccf5c5e4334e41ec75fc33803643 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Tue, 31 Mar 2020 16:12:28 +0200
-Subject: [PATCH] meson.build: do not install python gi bindings
-
-These are unnecessary for oe-core, and the install location
-is incorrectly determined using native python.
-
-Upstream-Status: Inappropriate [oe-core specific]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- meson.build | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/meson.build b/meson.build
-index a8b02b4..8ff737b 100644
---- a/meson.build
-+++ b/meson.build
-@@ -171,4 +171,3 @@ configure_file(
- )
-
- subdir('modulemd')
--subdir('bindings/python')
diff --git a/poky/meta/recipes-devtools/libmodulemd/libmodulemd_git.bb b/poky/meta/recipes-devtools/libmodulemd/libmodulemd_git.bb
index d440e60ee..10204acf2 100644
--- a/poky/meta/recipes-devtools/libmodulemd/libmodulemd_git.bb
+++ b/poky/meta/recipes-devtools/libmodulemd/libmodulemd_git.bb
@@ -2,19 +2,18 @@ SUMMARY = "C Library for manipulating module metadata files"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=25a3927bff3ee4f5b21bcb0ed3fcd6bb"
-SRC_URI = "git://github.com/fedora-modularity/libmodulemd;protocol=https \
+SRC_URI = "git://github.com/fedora-modularity/libmodulemd;protocol=https;branch=main \
file://0001-modulemd-generate-the-manpage-only-if-the-feature-is.patch \
- file://0002-meson.build-do-not-install-python-gi-bindings.patch \
"
-PV = "2.9.2"
-SRCREV = "780750eab8a0587b20d033f335301f16d00ab9c9"
+PV = "2.9.4"
+SRCREV = "c7254db07b21495fc9bd247c5b17ee20149c05e3"
S = "${WORKDIR}/git"
-inherit meson gobject-introspection
+inherit meson gobject-introspection python3-dir
-EXTRA_OEMESON = "-Ddeveloper_build=false -Dwith_docs=false -Drpmio=disabled -Dlibmagic=disabled -Dwith_manpages=disabled"
+EXTRA_OEMESON = "-Ddeveloper_build=false -Dwith_docs=false -Drpmio=disabled -Dlibmagic=disabled -Dwith_manpages=disabled -Dgobject_overrides_dir_py3=${PYTHON_SITEPACKAGES_DIR}/gi/overrides"
DEPENDS += "glib-2.0 libyaml glib-2.0-native python3"
@@ -23,3 +22,5 @@ BBCLASSEXTEND = "native nativesdk"
GIR_MESON_OPTION = 'skip_introspection'
GIR_MESON_ENABLE_FLAG = 'false'
GIR_MESON_DISABLE_FLAG = 'true'
+
+FILES_${PN} += "${libdir}/${PYTHON_DIR}/*"
diff --git a/poky/meta/recipes-devtools/librepo/librepo_1.11.2.bb b/poky/meta/recipes-devtools/librepo/librepo_1.12.1.bb
index 6a0a59f86..059735105 100644
--- a/poky/meta/recipes-devtools/librepo/librepo_1.11.2.bb
+++ b/poky/meta/recipes-devtools/librepo/librepo_1.12.1.bb
@@ -8,7 +8,7 @@ SRC_URI = "git://github.com/rpm-software-management/librepo.git \
file://0004-Set-gpgme-variables-with-pkg-config-not-with-cmake-m.patch \
"
-SRCREV = "67c2d1f83f1bf87be3f26ba730fce7fbdf0c9fba"
+SRCREV = "d4ad350291f2937c0b6a3eea9e1d0c8e1051fc32"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/llvm/llvm_git.bb b/poky/meta/recipes-devtools/llvm/llvm_git.bb
index d24ed761b..4c2d49031 100644
--- a/poky/meta/recipes-devtools/llvm/llvm_git.bb
+++ b/poky/meta/recipes-devtools/llvm/llvm_git.bb
@@ -19,7 +19,7 @@ inherit cmake pkgconfig
PROVIDES += "llvm${PV}"
-MAJOR_VERSION = "9"
+MAJOR_VERSION = "10"
MINOR_VERSION = "0"
PATCH_VERSION = "1"
@@ -29,7 +29,7 @@ LLVM_RELEASE = "${PV}"
LLVM_DIR = "llvm${LLVM_RELEASE}"
BRANCH = "release/${MAJOR_VERSION}.x"
-SRCREV = "c1a0a213378a458fbea1a5c77b315c7dce08fd05"
+SRCREV = "ef32c611aa214dea855364efd7ba451ec5ec3f74"
SRC_URI = "git://github.com/llvm/llvm-project.git;branch=${BRANCH} \
file://0006-llvm-TargetLibraryInfo-Undefine-libc-functions-if-th.patch;striplevel=2 \
file://0007-llvm-allow-env-override-of-exe-path.patch;striplevel=2 \
diff --git a/poky/meta/recipes-devtools/log4cplus/log4cplus_2.0.5.bb b/poky/meta/recipes-devtools/log4cplus/log4cplus_2.0.5.bb
new file mode 100644
index 000000000..967ac7623
--- /dev/null
+++ b/poky/meta/recipes-devtools/log4cplus/log4cplus_2.0.5.bb
@@ -0,0 +1,19 @@
+SUMMARY = "log4cplus provides a simple C++ logging API for log management"
+SECTION = "libs"
+HOMEPAGE = "http://sourceforge.net/projects/log4cplus/"
+BUGTRACKER = "http://sourceforge.net/p/log4cplus/bugs/"
+
+LICENSE = "Apache-2.0 & BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=41e8e060c26822886b592ab4765c756b"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}-stable/${PV}/${BP}.tar.gz \
+ "
+SRC_URI[md5sum] = "71dd956bf686195127559671f1426cff"
+SRC_URI[sha256sum] = "c07115c23219390633798def30b7b51a0f79fdeb857e4b49632f17746d0ceb97"
+
+UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/log4cplus/files/log4cplus-stable/"
+UPSTREAM_CHECK_REGEX = "log4cplus-stable/(?P<pver>\d+(\.\d+)+)/"
+
+inherit autotools pkgconfig
+
+BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/meson/meson.inc b/poky/meta/recipes-devtools/meson/meson.inc
index 0a58c971a..004189e36 100644
--- a/poky/meta/recipes-devtools/meson/meson.inc
+++ b/poky/meta/recipes-devtools/meson/meson.inc
@@ -9,16 +9,14 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=3b83ef96387f14655fc854ddc3c6bd57"
SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${PV}.tar.gz \
file://0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch \
- file://0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch \
file://0003-native_bindir.patch \
file://0001-python-module-do-not-manipulate-the-environment-when.patch \
file://disable-rpath-handling.patch \
file://cross-prop-default.patch \
- file://0001-mesonbuild-environment.py-check-environment-for-vari.patch \
file://0001-modules-python.py-do-not-substitute-python-s-install.patch \
+ file://0001-gnome.py-prefix-g-i-paths-with-PKG_CONFIG_SYSROOT_DI.patch \
"
-SRC_URI[sha256sum] = "3e8f830f33184397c2eb0b651ec502adb63decb28978bdc84b3558d71284c21f"
-SRC_URI[md5sum] = "80303535995fcae72bdb887df102b421"
+SRC_URI[sha256sum] = "3b5741f884e04928bdfa1947467ff06afa6c98e623c25cef75adf71ca39ce080"
SRC_URI_append_class-native = " \
file://0001-Make-CPU-family-warnings-fatal.patch \
diff --git a/poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch b/poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch
index e64488be4..199d4254d 100644
--- a/poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch
+++ b/poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch
@@ -1,4 +1,4 @@
-From ee638fd4a299bfc53a2238e9f71ae310c8d97460 Mon Sep 17 00:00:00 2001
+From 9311844b6c422479556e83b89a8e675ebcb2056c Mon Sep 17 00:00:00 2001
From: Ross Burton <ross.burton@intel.com>
Date: Tue, 3 Jul 2018 13:59:09 +0100
Subject: [PATCH] Make CPU family warnings fatal
@@ -12,23 +12,23 @@ Signed-off-by: Ross Burton <ross.burton@intel.com>
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py
-index 0f277a7..24578ea 100644
+index 219b62e..d1be65b 100644
--- a/mesonbuild/envconfig.py
+++ b/mesonbuild/envconfig.py
-@@ -192,7 +192,7 @@ class MachineInfo:
+@@ -199,7 +199,7 @@ class MachineInfo:
cpu_family = literal['cpu_family']
if cpu_family not in known_cpu_families:
-- mlog.warning('Unknown CPU family %s, please report this at https://github.com/mesonbuild/meson/issues/new' % cpu_family)
-+ raise EnvironmentException('Unknown CPU family %s, see https://wiki.yoctoproject.org/wiki/Meson/UnknownCPU for directions.' % cpu_family)
+- mlog.warning('Unknown CPU family {}, please report this at https://github.com/mesonbuild/meson/issues/new'.format(cpu_family))
++ raise EnvironmentException('Unknown CPU family {}, see https://wiki.yoctoproject.org/wiki/Meson/UnknownCPU for directions.'.format(cpu_family))
endian = literal['endian']
if endian not in ('little', 'big'):
diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
-index dc8b14f..3aab71e 100644
+index bf09a88..8eabe78 100644
--- a/mesonbuild/environment.py
+++ b/mesonbuild/environment.py
-@@ -354,9 +354,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str:
+@@ -375,9 +375,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str:
trial = 'parisc'
if trial not in known_cpu_families:
diff --git a/poky/meta/recipes-devtools/meson/meson/0001-gnome.py-prefix-g-i-paths-with-PKG_CONFIG_SYSROOT_DI.patch b/poky/meta/recipes-devtools/meson/meson/0001-gnome.py-prefix-g-i-paths-with-PKG_CONFIG_SYSROOT_DI.patch
new file mode 100644
index 000000000..a1f8422d4
--- /dev/null
+++ b/poky/meta/recipes-devtools/meson/meson/0001-gnome.py-prefix-g-i-paths-with-PKG_CONFIG_SYSROOT_DI.patch
@@ -0,0 +1,37 @@
+From 64aa6718c290e150dafd8da83f31cb08af00af0e Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Wed, 27 May 2020 16:43:05 +0000
+Subject: [PATCH] gnome.py: prefix g-i paths with PKG_CONFIG_SYSROOT_DIR
+
+When using sysroots for builds, the standard target paths for the
+tools need to be prefixed (pkg-config is not clever enough to
+determine when a custom variable is a path)
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
+---
+ mesonbuild/modules/gnome.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
+index 52016f4..2b72ee4 100644
+--- a/mesonbuild/modules/gnome.py
++++ b/mesonbuild/modules/gnome.py
+@@ -410,14 +410,14 @@ class GnomeModule(ExtensionModule):
+ if giscanner is not None:
+ self.giscanner = ExternalProgram.from_entry('g-ir-scanner', giscanner)
+ elif self.gir_dep.type_name == 'pkgconfig':
+- self.giscanner = ExternalProgram('g_ir_scanner', self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {}))
++ self.giscanner = ExternalProgram('g_ir_scanner', os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {}))
+ else:
+ self.giscanner = self.interpreter.find_program_impl('g-ir-scanner')
+ gicompiler = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-compiler')
+ if gicompiler is not None:
+ self.gicompiler = ExternalProgram.from_entry('g-ir-compiler', gicompiler)
+ elif self.gir_dep.type_name == 'pkgconfig':
+- self.gicompiler = ExternalProgram('g_ir_compiler', self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {}))
++ self.gicompiler = ExternalProgram('g_ir_compiler', os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {}))
+ else:
+ self.gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
+ return self.gir_dep, self.giscanner, self.gicompiler
diff --git a/poky/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-check-environment-for-vari.patch b/poky/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-check-environment-for-vari.patch
deleted file mode 100644
index f4456235f..000000000
--- a/poky/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-check-environment-for-vari.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From a72dc2b1cddcf180ce782860896deae0b12d5000 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Mon, 25 Mar 2019 18:52:48 +0100
-Subject: [PATCH] mesonbuild/environment.py: check environment for various
- binaries
-
-Upstream-Status: Inappropriate [oe-core specific]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
-
----
- mesonbuild/environment.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
-index 9a029f4..0cfdf9c 100644
---- a/mesonbuild/environment.py
-+++ b/mesonbuild/environment.py
-@@ -448,7 +448,7 @@ class Environment:
- config = MesonConfigFile.from_config_parser(
- coredata.load_configs(self.coredata.cross_files))
- properties.host = Properties(config.get('properties', {}), False)
-- binaries.host = BinaryTable(config.get('binaries', {}), False)
-+ binaries.host = BinaryTable(config.get('binaries', {}), True)
- if 'host_machine' in config:
- machines.host = MachineInfo.from_literal(config['host_machine'])
- if 'target_machine' in config:
diff --git a/poky/meta/recipes-devtools/meson/meson/0001-modules-python.py-do-not-substitute-python-s-install.patch b/poky/meta/recipes-devtools/meson/meson/0001-modules-python.py-do-not-substitute-python-s-install.patch
index a25c39227..c0ad01e9d 100644
--- a/poky/meta/recipes-devtools/meson/meson/0001-modules-python.py-do-not-substitute-python-s-install.patch
+++ b/poky/meta/recipes-devtools/meson/meson/0001-modules-python.py-do-not-substitute-python-s-install.patch
@@ -1,4 +1,4 @@
-From 1d178fb2928d325e339b15972890ceced863d3ec Mon Sep 17 00:00:00 2001
+From 214e559d394491b1376e4cc370f75151117a3f83 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Thu, 18 Apr 2019 17:36:11 +0200
Subject: [PATCH] modules/python.py: do not substitute python's install prefix
@@ -10,15 +10,16 @@ b) shouldn't be necessary as Python's prefix ought to be correct in the first pl
Upstream-Status: Pending
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
---
mesonbuild/modules/python.py | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/mesonbuild/modules/python.py b/mesonbuild/modules/python.py
-index 6e2c63b..f5a37ac 100644
+index 2f0c644..d2aa565 100644
--- a/mesonbuild/modules/python.py
+++ b/mesonbuild/modules/python.py
-@@ -254,7 +254,7 @@ import sysconfig
+@@ -251,7 +251,7 @@ INTROSPECT_COMMAND = '''import sysconfig
import json
import sys
@@ -27,8 +28,8 @@ index 6e2c63b..f5a37ac 100644
def links_against_libpython():
from distutils.core import Distribution, Extension
-@@ -279,12 +279,11 @@ class PythonInstallation(ExternalProgramHolder):
- ExternalProgramHolder.__init__(self, python)
+@@ -276,12 +276,11 @@ class PythonInstallation(ExternalProgramHolder):
+ ExternalProgramHolder.__init__(self, python, interpreter.subproject)
self.interpreter = interpreter
self.subproject = self.interpreter.subproject
- prefix = self.interpreter.environment.coredata.get_builtin_option('prefix')
diff --git a/poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch b/poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch
index d2c3f8cdf..5c16cf501 100644
--- a/poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch
+++ b/poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch
@@ -1,4 +1,4 @@
-From 9c221c74bd306dfa6fec22c8f156eb9d4e4f7fcb Mon Sep 17 00:00:00 2001
+From 38f59e256f760aa959c13f4c5713f87ff7addee5 Mon Sep 17 00:00:00 2001
From: Peter Kjellerstedt <pkj@axis.com>
Date: Thu, 26 Jul 2018 16:32:49 +0200
Subject: [PATCH] Support building allarch recipes again
@@ -13,10 +13,10 @@ Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
1 file changed, 1 insertion(+)
diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py
-index 24578ea..216e71f 100644
+index d1be65b..90f3573 100644
--- a/mesonbuild/envconfig.py
+++ b/mesonbuild/envconfig.py
-@@ -36,6 +36,7 @@ _T = typing.TypeVar('_T')
+@@ -36,6 +36,7 @@ _T = T.TypeVar('_T')
known_cpu_families = (
diff --git a/poky/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch b/poky/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch
deleted file mode 100644
index 61b26bb88..000000000
--- a/poky/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 9ccaed380780178c4dab3a681f652ac7cd27452d Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Fri, 4 Aug 2017 16:18:47 +0300
-Subject: [PATCH] gobject-introspection: determine g-ir-scanner and
- g-ir-compiler paths from pkgconfig
-
-Do not hardcode the name of those binaries; gobject-introspection
-provides them via pkgconfig, and they can be set to something else
-(for example when cross-compiling).
-
-Upstream-Status: Pending
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
-
----
- mesonbuild/modules/gnome.py | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
-index 7c5a363..0002498 100644
---- a/mesonbuild/modules/gnome.py
-+++ b/mesonbuild/modules/gnome.py
-@@ -744,15 +744,15 @@ class GnomeModule(ExtensionModule):
- if kwargs.get('install_dir'):
- raise MesonException('install_dir is not supported with generate_gir(), see "install_dir_gir" and "install_dir_typelib"')
-
-- giscanner = self.interpreter.find_program_impl('g-ir-scanner')
-- gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
--
- girtargets = [self._unwrap_gir_target(arg, state) for arg in args]
-
- if len(girtargets) > 1 and any([isinstance(el, build.Executable) for el in girtargets]):
- raise MesonException('generate_gir only accepts a single argument when one of the arguments is an executable')
-
- self.gir_dep, pkgargs = self._get_gir_dep(state)
-+ giscanner = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
-+ gicompiler = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
-+
-
- ns = kwargs.pop('namespace')
- nsversion = kwargs.pop('nsversion')
diff --git a/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch b/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch
index a5baca093..81e9acd36 100644
--- a/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch
+++ b/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch
@@ -1,4 +1,4 @@
-From e76726321067748362b39937bd1e663a1a948ad5 Mon Sep 17 00:00:00 2001
+From f06c89939d0d006090a8a8728b2a13d532b83047 Mon Sep 17 00:00:00 2001
From: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Date: Wed, 15 Nov 2017 15:05:01 +0100
Subject: [PATCH] native_bindir
@@ -22,10 +22,10 @@ Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
2 files changed, 14 insertions(+), 11 deletions(-)
diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
-index 40e304c..4b687df 100644
+index 368a4bc..9fc398e 100644
--- a/mesonbuild/dependencies/base.py
+++ b/mesonbuild/dependencies/base.py
-@@ -184,7 +184,7 @@ class Dependency:
+@@ -183,7 +183,7 @@ class Dependency:
def get_exe_args(self, compiler):
return []
@@ -34,16 +34,16 @@ index 40e304c..4b687df 100644
raise DependencyException('{!r} is not a pkgconfig dependency'.format(self.name))
def get_configtool_variable(self, variable_name):
-@@ -247,7 +247,7 @@ class InternalDependency(Dependency):
- self.sources = sources
- self.ext_deps = ext_deps
+@@ -261,7 +261,7 @@ class InternalDependency(Dependency):
+ setattr(result, k, copy.deepcopy(v, memo))
+ return result
- def get_pkgconfig_variable(self, variable_name, kwargs):
+ def get_pkgconfig_variable(self, variable_name, kwargs, use_native=False):
raise DependencyException('Method "get_pkgconfig_variable()" is '
'invalid for an internal dependency')
-@@ -673,15 +673,18 @@ class PkgConfigDependency(ExternalDependency):
+@@ -634,15 +634,18 @@ class PkgConfigDependency(ExternalDependency):
return s.format(self.__class__.__name__, self.name, self.is_found,
self.version_reqs)
@@ -65,7 +65,7 @@ index 40e304c..4b687df 100644
# Always copy the environment since we're going to modify it
# with pkg-config variables
if env is None:
-@@ -701,7 +704,7 @@ class PkgConfigDependency(ExternalDependency):
+@@ -668,7 +671,7 @@ class PkgConfigDependency(ExternalDependency):
targs = tuple(args)
cache = PkgConfigDependency.pkgbin_cache
if (self.pkgbin, targs, fenv) not in cache:
@@ -74,7 +74,7 @@ index 40e304c..4b687df 100644
return cache[(self.pkgbin, targs, fenv)]
def _convert_mingw_paths(self, args: T.List[str]) -> T.List[str]:
-@@ -907,7 +910,7 @@ class PkgConfigDependency(ExternalDependency):
+@@ -877,7 +880,7 @@ class PkgConfigDependency(ExternalDependency):
(self.name, out_raw))
self.link_args, self.raw_link_args = self._search_libs(out, out_raw)
@@ -83,7 +83,7 @@ index 40e304c..4b687df 100644
options = ['--variable=' + variable_name, self.name]
if 'define_variable' in kwargs:
-@@ -920,7 +923,7 @@ class PkgConfigDependency(ExternalDependency):
+@@ -890,7 +893,7 @@ class PkgConfigDependency(ExternalDependency):
options = ['--define-variable=' + '='.join(definition)] + options
@@ -93,10 +93,10 @@ index 40e304c..4b687df 100644
if ret != 0:
if self.required:
diff --git a/mesonbuild/dependencies/ui.py b/mesonbuild/dependencies/ui.py
-index da411ef..856506a 100644
+index 95dfe2b..5f82890 100644
--- a/mesonbuild/dependencies/ui.py
+++ b/mesonbuild/dependencies/ui.py
-@@ -330,7 +330,7 @@ class QtBaseDependency(ExternalDependency):
+@@ -325,7 +325,7 @@ class QtBaseDependency(ExternalDependency):
self.bindir = self.get_pkgconfig_host_bins(core)
if not self.bindir:
# If exec_prefix is not defined, the pkg-config file is broken
@@ -105,7 +105,7 @@ index da411ef..856506a 100644
if prefix:
self.bindir = os.path.join(prefix, 'bin')
-@@ -508,7 +508,7 @@ class Qt4Dependency(QtBaseDependency):
+@@ -528,7 +528,7 @@ class Qt4Dependency(QtBaseDependency):
applications = ['moc', 'uic', 'rcc', 'lupdate', 'lrelease']
for application in applications:
try:
@@ -114,7 +114,7 @@ index da411ef..856506a 100644
except MesonException:
pass
-@@ -518,7 +518,7 @@ class Qt5Dependency(QtBaseDependency):
+@@ -538,7 +538,7 @@ class Qt5Dependency(QtBaseDependency):
QtBaseDependency.__init__(self, 'qt5', env, kwargs)
def get_pkgconfig_host_bins(self, core):
diff --git a/poky/meta/recipes-devtools/meson/meson/disable-rpath-handling.patch b/poky/meta/recipes-devtools/meson/meson/disable-rpath-handling.patch
index 4b1fb57dd..4653a72a2 100644
--- a/poky/meta/recipes-devtools/meson/meson/disable-rpath-handling.patch
+++ b/poky/meta/recipes-devtools/meson/meson/disable-rpath-handling.patch
@@ -1,4 +1,9 @@
-We need to allow our rpaths generated through the compiler flags to make it into
+From 9e3fcf192c1ca068d310c648c311f9d850214421 Mon Sep 17 00:00:00 2001
+From: Richard Purdie <richard.purdie@linuxfoundation.org>
+Date: Fri, 23 Nov 2018 15:28:28 +0000
+Subject: [PATCH] meson: Disable rpath stripping at install time
+
+We need to allow our rpaths generated through the compiler flags to make it into
our binaries. Therefore disable the meson manipulations of these unless there
is a specific directive to do something differently in the project.
@@ -6,18 +11,22 @@ RP 2018/11/23
Upstream-Status: Submitted [https://github.com/mesonbuild/meson/issues/2567]
-Index: meson-0.47.2/mesonbuild/minstall.py
-===================================================================
---- meson-0.47.2.orig/mesonbuild/minstall.py
-+++ meson-0.47.2/mesonbuild/minstall.py
-@@ -486,8 +486,11 @@ class Installer:
- printed_symlink_error = True
- if os.path.isfile(outname):
+---
+ mesonbuild/minstall.py | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py
+index 0be01fe..5406cab 100644
+--- a/mesonbuild/minstall.py
++++ b/mesonbuild/minstall.py
+@@ -512,8 +512,11 @@ class Installer:
+ if file_copied:
+ self.did_install_something = True
try:
-- depfixer.fix_rpath(outname, install_rpath, final_path,
+- depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
- install_name_mappings, verbose=False)
+ if install_rpath:
-+ depfixer.fix_rpath(outname, install_rpath, final_path,
++ depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
+ install_name_mappings, verbose=False)
+ else:
+ print("RPATH changes at install time disabled")
diff --git a/poky/meta/recipes-devtools/meson/meson_0.53.2.bb b/poky/meta/recipes-devtools/meson/meson_0.55.1.bb
index de9b905c1..de9b905c1 100644
--- a/poky/meta/recipes-devtools/meson/meson_0.53.2.bb
+++ b/poky/meta/recipes-devtools/meson/meson_0.55.1.bb
diff --git a/poky/meta/recipes-devtools/meson/nativesdk-meson_0.53.2.bb b/poky/meta/recipes-devtools/meson/nativesdk-meson_0.55.1.bb
index 67add2c25..67add2c25 100644
--- a/poky/meta/recipes-devtools/meson/nativesdk-meson_0.53.2.bb
+++ b/poky/meta/recipes-devtools/meson/nativesdk-meson_0.55.1.bb
diff --git a/poky/meta/recipes-devtools/mtd/mtd-utils_git.bb b/poky/meta/recipes-devtools/mtd/mtd-utils_git.bb
index 810fe40f4..918141342 100644
--- a/poky/meta/recipes-devtools/mtd/mtd-utils_git.bb
+++ b/poky/meta/recipes-devtools/mtd/mtd-utils_git.bb
@@ -10,12 +10,12 @@ inherit autotools pkgconfig update-alternatives
DEPENDS = "zlib e2fsprogs util-linux"
RDEPENDS_mtd-utils-tests += "bash"
-PV = "2.1.1"
+PV = "2.1.2"
-SRCREV = "4443221ce9b88440cd9f5bb78e6fe95621d36c8a"
+SRCREV = "7b986779342021bda87c04da3bf729718736d8ab"
SRC_URI = "git://git.infradead.org/mtd-utils.git \
file://add-exclusion-to-mkfs-jffs2-git-2.patch \
-"
+ "
S = "${WORKDIR}/git/"
diff --git a/poky/meta/recipes-devtools/mtools/mtools_4.0.24.bb b/poky/meta/recipes-devtools/mtools/mtools_4.0.24.bb
index d7cc72d17..f11cdad37 100644
--- a/poky/meta/recipes-devtools/mtools/mtools_4.0.24.bb
+++ b/poky/meta/recipes-devtools/mtools/mtools_4.0.24.bb
@@ -35,7 +35,7 @@ SRC_URI = "${GNU_MIRROR}/mtools/mtools-${PV}.tar.bz2 \
SRC_URI_append_class-native = " file://disable-hardcoded-configs.patch"
-inherit autotools texinfo features_check
+inherit autotools texinfo
EXTRA_OECONF = "--without-x"
diff --git a/poky/meta/recipes-devtools/nasm/nasm/0001-stdlib-Add-strlcat.patch b/poky/meta/recipes-devtools/nasm/nasm/0001-stdlib-Add-strlcat.patch
index d94fd3290..0ede8a832 100644
--- a/poky/meta/recipes-devtools/nasm/nasm/0001-stdlib-Add-strlcat.patch
+++ b/poky/meta/recipes-devtools/nasm/nasm/0001-stdlib-Add-strlcat.patch
@@ -1,12 +1,13 @@
-From 8a204171004fa0d7d21389530c744d215e99efb0 Mon Sep 17 00:00:00 2001
+From 1c5023002bad3a5b0bbc181fdb324160beace733 Mon Sep 17 00:00:00 2001
From: Joshua Watt <JPEWhacker@gmail.com>
Date: Tue, 19 Nov 2019 12:47:30 -0600
-Subject: [PATCH 1/2] stdlib: Add strlcat
+Subject: [PATCH] stdlib: Add strlcat
Adds strlcat which can be used to safely concatenate strings
Upstream-Status: Submitted [https://bugzilla.nasm.us/show_bug.cgi?id=3392635]
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
+
---
Makefile.in | 2 +-
configure.ac | 2 ++
@@ -16,10 +17,10 @@ Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
create mode 100644 stdlib/strlcat.c
diff --git a/Makefile.in b/Makefile.in
-index 32ef3d91..ff7eb447 100644
+index bfae1f8..156dc4c 100644
--- a/Makefile.in
+++ b/Makefile.in
-@@ -93,7 +93,7 @@ NASM = asm/nasm.$(O)
+@@ -101,7 +101,7 @@ NASM = asm/nasm.$(O)
NDISASM = disasm/ndisasm.$(O)
LIBOBJ = stdlib/snprintf.$(O) stdlib/vsnprintf.$(O) stdlib/strlcpy.$(O) \
@@ -27,20 +28,20 @@ index 32ef3d91..ff7eb447 100644
+ stdlib/strnlen.$(O) stdlib/strrchrnul.$(O) stdlib/strlcat.$(O) \
\
nasmlib/ver.$(O) \
- nasmlib/crc64.$(O) nasmlib/malloc.$(O) nasmlib/errfile.$(O) \
+ nasmlib/alloc.$(O) nasmlib/asprintf.$(O) nasmlib/errfile.$(O) \
diff --git a/configure.ac b/configure.ac
-index 38b3b596..b4e88778 100644
+index 7b72769..14fd033 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -152,6 +152,7 @@ AC_CHECK_FUNCS([vsnprintf _vsnprintf])
- AC_CHECK_FUNCS([snprintf _snprintf])
+@@ -234,6 +234,7 @@ PA_FUNC_SNPRINTF
+ PA_FUNC_VSNPRINTF
AC_CHECK_FUNCS([strlcpy])
AC_CHECK_FUNCS([strrchrnul])
+AC_CHECK_FUNCS([strlcat])
dnl These types are POSIX-specific, and Windows does it differently...
AC_CHECK_TYPES([struct _stati64])
-@@ -170,6 +171,7 @@ AC_CHECK_DECLS(strsep)
+@@ -253,6 +254,7 @@ AC_CHECK_DECLS(strsep)
AC_CHECK_DECLS(strlcpy)
AC_CHECK_DECLS(strnlen)
AC_CHECK_DECLS(strrchrnul)
@@ -49,10 +50,10 @@ index 38b3b596..b4e88778 100644
dnl Check for missing types
AC_TYPE_UINTPTR_T
diff --git a/include/compiler.h b/include/compiler.h
-index 4178c98e..8153d297 100644
+index b4fd3a8..7fb4821 100644
--- a/include/compiler.h
+++ b/include/compiler.h
-@@ -159,6 +159,10 @@ size_t strlcpy(char *, const char *, size_t);
+@@ -169,6 +169,10 @@ size_t strlcpy(char *, const char *, size_t);
char *strrchrnul(const char *, int);
#endif
@@ -65,7 +66,7 @@ index 4178c98e..8153d297 100644
# include <stdbool.h>
diff --git a/stdlib/strlcat.c b/stdlib/strlcat.c
new file mode 100644
-index 00000000..7084d460
+index 0000000..7084d46
--- /dev/null
+++ b/stdlib/strlcat.c
@@ -0,0 +1,43 @@
@@ -112,6 +113,3 @@ index 00000000..7084d460
+
+#endif
+
---
-2.23.0
-
diff --git a/poky/meta/recipes-devtools/nasm/nasm/0002-Add-debug-prefix-map-option.patch b/poky/meta/recipes-devtools/nasm/nasm/0002-Add-debug-prefix-map-option.patch
index bbfae2e8a..9f4c8dc0b 100644
--- a/poky/meta/recipes-devtools/nasm/nasm/0002-Add-debug-prefix-map-option.patch
+++ b/poky/meta/recipes-devtools/nasm/nasm/0002-Add-debug-prefix-map-option.patch
@@ -1,7 +1,7 @@
-From fa677c1caf6b8192971920cf5c1aa8cb33c74605 Mon Sep 17 00:00:00 2001
+From 81d6519499dcfebe7d21e65e002a8885a4e8d852 Mon Sep 17 00:00:00 2001
From: Joshua Watt <JPEWhacker@gmail.com>
Date: Tue, 19 Nov 2019 13:12:17 -0600
-Subject: [PATCH 2/2] Add --debug-prefix-map option
+Subject: [PATCH] Add --debug-prefix-map option
Adds an option to remap file prefixes in output object files. This is
analogous to the "-fdebug-prefix-map" option in GCC, and allows files to
@@ -9,47 +9,46 @@ be built in a reproducible manner regardless of the build directory.
Upstream-Status: Submitted [https://bugzilla.nasm.us/show_bug.cgi?id=3392635]
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
+
---
- asm/nasm.c | 28 ++++++++++++++++++++++++++--
+ asm/nasm.c | 24 ++++++++++++++++++++++++
include/nasmlib.h | 9 +++++++++
nasm.txt | 4 ++++
nasmlib/filename.c | 20 ++++++++++++++++++++
output/outas86.c | 4 +++-
output/outcoff.c | 4 ++--
- output/outelf.c | 8 ++++----
+ output/outelf.c | 2 +-
output/outieee.c | 2 +-
output/outobj.c | 2 +-
stdlib/strlcat.c | 2 +-
test/elfdebugprefix.asm | 6 ++++++
test/performtest.pl | 12 ++++++++++--
- 12 files changed, 87 insertions(+), 14 deletions(-)
+ 12 files changed, 82 insertions(+), 9 deletions(-)
create mode 100644 test/elfdebugprefix.asm
diff --git a/asm/nasm.c b/asm/nasm.c
-index 1c5a5fc5..5d45103c 100644
+index e5ae89a..7a7f8b4 100644
--- a/asm/nasm.c
+++ b/asm/nasm.c
-@@ -841,7 +841,8 @@ enum text_options {
- OPT_BEFORE,
- OPT_LIMIT,
+@@ -939,6 +939,7 @@ enum text_options {
OPT_KEEP_ALL,
-- OPT_NO_LINE
-+ OPT_NO_LINE,
-+ OPT_DEBUG_PREFIX_MAP
+ OPT_NO_LINE,
+ OPT_DEBUG,
++ OPT_DEBUG_PREFIX_MAP,
+ OPT_REPRODUCIBLE
};
- struct textargs {
- const char *label;
-@@ -866,6 +867,7 @@ static const struct textargs textopts[] = {
- {"limit-", OPT_LIMIT, true, 0},
- {"keep-all", OPT_KEEP_ALL, false, 0},
- {"no-line", OPT_NO_LINE, false, 0},
+ enum need_arg {
+@@ -971,6 +972,7 @@ static const struct textargs textopts[] = {
+ {"keep-all", OPT_KEEP_ALL, ARG_NO, 0},
+ {"no-line", OPT_NO_LINE, ARG_NO, 0},
+ {"debug", OPT_DEBUG, ARG_MAYBE, 0},
+ {"debug-prefix-map", OPT_DEBUG_PREFIX_MAP, true, 0},
- {NULL, OPT_BOGUS, false, 0}
+ {"reproducible", OPT_REPRODUCIBLE, ARG_NO, 0},
+ {NULL, OPT_BOGUS, ARG_NO, 0}
};
-
-@@ -1217,6 +1219,26 @@ static bool process_arg(char *p, char *q, int pass)
- case OPT_NO_LINE:
- pp_noline = true;
+@@ -1337,6 +1339,26 @@ static bool process_arg(char *p, char *q, int pass)
+ case OPT_REPRODUCIBLE:
+ reproducible = true;
break;
+ case OPT_DEBUG_PREFIX_MAP: {
+ struct debug_prefix_list *d;
@@ -72,24 +71,22 @@ index 1c5a5fc5..5d45103c 100644
+ }
+ break;
case OPT_HELP:
- help(0);
+ help(stdout);
exit(0);
-@@ -2010,7 +2032,9 @@ static void help(const char xopt)
- " --lpostfix str append the given string to all other symbols\n"
- " --keep-all output files will not be removed even if an error happens\n"
- " --no-line ignore %%line directives in input\n"
-- " --limit-X val set execution limit X\n");
-+ " --limit-X val set execution limit X\n"
-+ " --debug-prefix-map base=dest\n"
-+ " remap paths starting with 'base' to 'dest' in output files\n");
+@@ -2304,6 +2326,8 @@ static void help(FILE *out)
+ " -w-x disable warning x (also -Wno-x)\n"
+ " -w[+-]error promote all warnings to errors (also -Werror)\n"
+ " -w[+-]error=x promote warning x to errors (also -Werror=x)\n"
++ " --debug-prefix-map base=dest\n"
++ " remap paths starting with 'base' to 'dest' in output files\n"
+ , out);
- for (i = 0; i <= LIMIT_MAX; i++) {
- printf(" %-15s %s (default ",
+ fprintf(out, " %-20s %s\n",
diff --git a/include/nasmlib.h b/include/nasmlib.h
-index e57d0e6d..cf921547 100644
+index 438178d..4c3e90d 100644
--- a/include/nasmlib.h
+++ b/include/nasmlib.h
-@@ -195,10 +195,19 @@ int64_t readstrnum(char *str, int length, bool *warn);
+@@ -250,10 +250,19 @@ int64_t readstrnum(char *str, int length, bool *warn);
*/
int32_t seg_alloc(void);
@@ -110,7 +107,7 @@ index e57d0e6d..cf921547 100644
/*
* Utility macros...
diff --git a/nasm.txt b/nasm.txt
-index a28202f9..443c06b2 100644
+index cc7fa27..d3485c9 100644
--- a/nasm.txt
+++ b/nasm.txt
@@ -147,6 +147,10 @@ OPTIONS
@@ -125,7 +122,7 @@ index a28202f9..443c06b2 100644
------
This man page does not fully describe the syntax of *nasm*'s assembly language,
diff --git a/nasmlib/filename.c b/nasmlib/filename.c
-index 172ae0bc..fda2be41 100644
+index 172ae0b..fda2be4 100644
--- a/nasmlib/filename.c
+++ b/nasmlib/filename.c
@@ -39,6 +39,8 @@
@@ -160,10 +157,10 @@ index 172ae0bc..fda2be41 100644
+ return dest;
+}
diff --git a/output/outas86.c b/output/outas86.c
-index 3f9867b9..d5f4f966 100644
+index 54b22f8..c4a412c 100644
--- a/output/outas86.c
+++ b/output/outas86.c
-@@ -113,6 +113,8 @@ static void as86_sect_write(struct Section *, const uint8_t *,
+@@ -110,6 +110,8 @@ static void as86_sect_write(struct Section *, const uint8_t *,
static void as86_init(void)
{
@@ -172,7 +169,7 @@ index 3f9867b9..d5f4f966 100644
stext.data = saa_init(1L);
stext.datalen = 0L;
stext.head = stext.last = NULL;
-@@ -134,7 +136,7 @@ static void as86_init(void)
+@@ -131,7 +133,7 @@ static void as86_init(void)
strslen = 0;
/* as86 module name = input file minus extension */
@@ -182,10 +179,10 @@ index 3f9867b9..d5f4f966 100644
static void as86_cleanup(void)
diff --git a/output/outcoff.c b/output/outcoff.c
-index a2fd302c..bcf576fb 100644
+index 58fa024..14baf7b 100644
--- a/output/outcoff.c
+++ b/output/outcoff.c
-@@ -1070,14 +1070,14 @@ static void coff_symbol(char *name, int32_t strpos, int32_t value,
+@@ -1072,14 +1072,14 @@ static void coff_symbol(char *name, int32_t strpos, int32_t value,
static void coff_write_symbols(void)
{
@@ -203,48 +200,23 @@ index a2fd302c..bcf576fb 100644
/*
diff --git a/output/outelf.c b/output/outelf.c
-index de99d076..203b5dc0 100644
+index 61af020..1292958 100644
--- a/output/outelf.c
+++ b/output/outelf.c
-@@ -1,5 +1,5 @@
- /* ----------------------------------------------------------------------- *
-- *
-+ *
- * Copyright 1996-2017 The NASM Authors - All Rights Reserved
- * See the file AUTHORS included with the NASM distribution for
- * the specific copyright holders.
-@@ -14,7 +14,7 @@
- * copyright notice, this list of conditions and the following
- * disclaimer in the documentation and/or other materials provided
- * with the distribution.
-- *
-+ *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
- * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-@@ -315,7 +315,7 @@ elf_directive(enum directive directive, char *value, int pass)
+@@ -553,7 +553,7 @@ static void elf_init(void)
+ };
+ const char * const *p;
- static void elf_init(void)
- {
- strlcpy(elf_module, inname, sizeof(elf_module));
+ filename_debug_remap(elf_module, inname, sizeof(elf_module));
sects = NULL;
nsects = sectlen = 0;
syms = saa_init((int32_t)sizeof(struct elf_symbol));
-@@ -868,7 +868,7 @@ static void elf32_out(int32_t segto, const void *data,
- " segment base references");
- } else {
- if (wrt == NO_SEG) {
-- /*
-+ /*
- * The if() is a hack to deal with compilers which
- * don't handle switch() statements with 64-bit
- * expressions.
diff --git a/output/outieee.c b/output/outieee.c
-index 3a28942d..f61824e4 100644
+index 6d6d4b2..cdb8333 100644
--- a/output/outieee.c
+++ b/output/outieee.c
-@@ -209,7 +209,7 @@ static void ieee_unqualified_name(char *, char *);
+@@ -207,7 +207,7 @@ static void ieee_unqualified_name(char *, char *);
*/
static void ieee_init(void)
{
@@ -254,10 +226,10 @@ index 3a28942d..f61824e4 100644
fpubhead = NULL;
fpubtail = &fpubhead;
diff --git a/output/outobj.c b/output/outobj.c
-index b4f2c499..55bba4a1 100644
+index 56b43f9..fefea94 100644
--- a/output/outobj.c
+++ b/output/outobj.c
-@@ -640,7 +640,7 @@ static enum directive_result obj_directive(enum directive, char *, int);
+@@ -644,7 +644,7 @@ static enum directive_result obj_directive(enum directive, char *);
static void obj_init(void)
{
@@ -267,7 +239,7 @@ index b4f2c499..55bba4a1 100644
any_segs = false;
fpubhead = NULL;
diff --git a/stdlib/strlcat.c b/stdlib/strlcat.c
-index 7084d460..ee93dea3 100644
+index 7084d46..ee93dea 100644
--- a/stdlib/strlcat.c
+++ b/stdlib/strlcat.c
@@ -29,7 +29,7 @@ size_t strlcat(char *dest, const char *src, size_t size)
@@ -281,7 +253,7 @@ index 7084d460..ee93dea3 100644
/* destination was not NULL terminated. Return the initial size */
diff --git a/test/elfdebugprefix.asm b/test/elfdebugprefix.asm
new file mode 100644
-index 00000000..a67ba29c
+index 0000000..a67ba29
--- /dev/null
+++ b/test/elfdebugprefix.asm
@@ -0,0 +1,6 @@
@@ -292,7 +264,7 @@ index 00000000..a67ba29c
+ ret
+
diff --git a/test/performtest.pl b/test/performtest.pl
-index f7865b39..096f9604 100755
+index f7865b3..096f960 100755
--- a/test/performtest.pl
+++ b/test/performtest.pl
@@ -42,14 +42,22 @@ sub perform {
@@ -320,6 +292,3 @@ index f7865b39..096f9604 100755
#Move the output to the test dir
mkpath("$outputdir/$testname/$subname");
foreach(split / /,$files) {
---
-2.23.0
-
diff --git a/poky/meta/recipes-devtools/nasm/nasm/CVE-2018-19755.patch b/poky/meta/recipes-devtools/nasm/nasm/CVE-2018-19755.patch
deleted file mode 100644
index 6e3f909d0..000000000
--- a/poky/meta/recipes-devtools/nasm/nasm/CVE-2018-19755.patch
+++ /dev/null
@@ -1,116 +0,0 @@
-From 3079f7966dbed4497e36d5067cbfd896a90358cb Mon Sep 17 00:00:00 2001
-From: Cyrill Gorcunov <gorcunov@gmail.com>
-Date: Wed, 14 Nov 2018 10:03:42 +0300
-Subject: [PATCH] preproc: Fix malformed parameter count
-
-readnum returns 64bit number which may become
-a negative integer upon conversion which in
-turn lead to out of bound array access.
-
-Fix it by explicit conversion with bounds check
-
- | POC6:2: error: parameter count `2222222222' is out of bounds [0; 2147483647]
-
-https://bugzilla.nasm.us/show_bug.cgi?id=3392528
-
-Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
-
-Upstream-Status: Backport
-CVE: CVE-2018-19755
-Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
----
- asm/preproc.c | 43 +++++++++++++++++++++----------------------
- 1 file changed, 21 insertions(+), 22 deletions(-)
-
-diff --git a/asm/preproc.c b/asm/preproc.c
-index b6afee3..e5ad05a 100644
---- a/asm/preproc.c
-+++ b/asm/preproc.c
-@@ -1650,6 +1650,23 @@ smacro_defined(Context * ctx, const char *name, int nparam, SMacro ** defn,
- return false;
- }
-
-+/* param should be a natural number [0; INT_MAX] */
-+static int read_param_count(const char *str)
-+{
-+ int result;
-+ bool err;
-+
-+ result = readnum(str, &err);
-+ if (result < 0 || result > INT_MAX) {
-+ result = 0;
-+ nasm_error(ERR_NONFATAL, "parameter count `%s' is out of bounds [%d; %d]",
-+ str, 0, INT_MAX);
-+ } else if (err) {
-+ nasm_error(ERR_NONFATAL, "unable to parse parameter count `%s'", str);
-+ }
-+ return result;
-+}
-+
- /*
- * Count and mark off the parameters in a multi-line macro call.
- * This is called both from within the multi-line macro expansion
-@@ -1871,11 +1888,7 @@ static bool if_condition(Token * tline, enum preproc_token ct)
- pp_directives[ct]);
- } else {
- searching.nparam_min = searching.nparam_max =
-- readnum(tline->text, &j);
-- if (j)
-- nasm_error(ERR_NONFATAL,
-- "unable to parse parameter count `%s'",
-- tline->text);
-+ read_param_count(tline->text);
- }
- if (tline && tok_is_(tline->next, "-")) {
- tline = tline->next->next;
-@@ -1886,11 +1899,7 @@ static bool if_condition(Token * tline, enum preproc_token ct)
- "`%s' expects a parameter count after `-'",
- pp_directives[ct]);
- else {
-- searching.nparam_max = readnum(tline->text, &j);
-- if (j)
-- nasm_error(ERR_NONFATAL,
-- "unable to parse parameter count `%s'",
-- tline->text);
-+ searching.nparam_max = read_param_count(tline->text);
- if (searching.nparam_min > searching.nparam_max) {
- nasm_error(ERR_NONFATAL,
- "minimum parameter count exceeds maximum");
-@@ -2079,8 +2088,6 @@ static void undef_smacro(Context *ctx, const char *mname)
- */
- static bool parse_mmacro_spec(Token *tline, MMacro *def, const char *directive)
- {
-- bool err;
--
- tline = tline->next;
- skip_white_(tline);
- tline = expand_id(tline);
-@@ -2103,11 +2110,7 @@ static bool parse_mmacro_spec(Token *tline, MMacro *def, const char *directive)
- if (!tok_type_(tline, TOK_NUMBER)) {
- nasm_error(ERR_NONFATAL, "`%s' expects a parameter count", directive);
- } else {
-- def->nparam_min = def->nparam_max =
-- readnum(tline->text, &err);
-- if (err)
-- nasm_error(ERR_NONFATAL,
-- "unable to parse parameter count `%s'", tline->text);
-+ def->nparam_min = def->nparam_max = read_param_count(tline->text);
- }
- if (tline && tok_is_(tline->next, "-")) {
- tline = tline->next->next;
-@@ -2117,11 +2120,7 @@ static bool parse_mmacro_spec(Token *tline, MMacro *def, const char *directive)
- nasm_error(ERR_NONFATAL,
- "`%s' expects a parameter count after `-'", directive);
- } else {
-- def->nparam_max = readnum(tline->text, &err);
-- if (err) {
-- nasm_error(ERR_NONFATAL, "unable to parse parameter count `%s'",
-- tline->text);
-- }
-+ def->nparam_max = read_param_count(tline->text);
- if (def->nparam_min > def->nparam_max) {
- nasm_error(ERR_NONFATAL, "minimum parameter count exceeds maximum");
- def->nparam_max = def->nparam_min;
---
-2.10.5.GIT
-
diff --git a/poky/meta/recipes-devtools/nasm/nasm/CVE-2019-14248.patch b/poky/meta/recipes-devtools/nasm/nasm/CVE-2019-14248.patch
deleted file mode 100644
index d45d2cb46..000000000
--- a/poky/meta/recipes-devtools/nasm/nasm/CVE-2019-14248.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 93d41d82963b2cfd0b24c906f5a8daf53281b559 Mon Sep 17 00:00:00 2001
-From: "H. Peter Anvin (Intel)" <hpa@zytor.com>
-Date: Fri, 16 Aug 2019 01:12:54 -0700
-Subject: [PATCH] BR 3392576: don't segfault on a bad %pragma limit
-
-Don't segfault on a bad %pragma limit. Instead treat a NULL pointer as
-an empty string.
-
-Reported-by: Ren Kimura <rkx1209dev@gmail.com>
-Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
-
-CVE: CVE-2019-14248
-Upstream-Status: Backport [https://repo.or.cz/nasm.git/commit/93d41d82963b2cfd0b24c906f5a8daf53281b559]
-Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
----
- asm/nasm.c | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/asm/nasm.c b/asm/nasm.c
-index c84d675..65116ab 100644
---- a/asm/nasm.c
-+++ b/asm/nasm.c
-@@ -212,6 +212,11 @@ nasm_set_limit(const char *limit, const char *valstr)
- bool rn_error;
- int errlevel;
-
-+ if (!limit)
-+ limit = "";
-+ if (!valstr)
-+ valstr = "";
-+
- for (i = 0; i <= LIMIT_MAX; i++) {
- if (!nasm_stricmp(limit, limit_info[i].name))
- break;
-@@ -204,7 +209,7 @@ nasm_set_limit(const char *limit, const char *valstr)
- errlevel = ERR_WARNING|ERR_NOFILE|ERR_USAGE;
- else
- errlevel = ERR_WARNING|ERR_PASS1|WARN_UNKNOWN_PRAGMA;
-- nasm_error(errlevel, "unknown limit: `%s'", limit);
-+ nasm_error(errlevel, "invalid limit value: `%s'", valstr);
- return DIRR_ERROR;
- }
-
diff --git a/poky/meta/recipes-devtools/nasm/nasm_2.14.02.bb b/poky/meta/recipes-devtools/nasm/nasm_2.15.05.bb
index f8a8d76e9..6a1294c34 100644
--- a/poky/meta/recipes-devtools/nasm/nasm_2.14.02.bb
+++ b/poky/meta/recipes-devtools/nasm/nasm_2.15.05.bb
@@ -4,19 +4,15 @@ LICENSE = "BSD-2-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=90904486f8fbf1861cf42752e1a39efe"
SRC_URI = "http://www.nasm.us/pub/nasm/releasebuilds/${PV}/nasm-${PV}.tar.bz2 \
- file://CVE-2018-19755.patch \
- file://CVE-2019-14248.patch \
file://0001-stdlib-Add-strlcat.patch \
file://0002-Add-debug-prefix-map-option.patch \
"
-SRC_URI[md5sum] = "3f489aa48ad2aa1f967dc5e293bbd06f"
-SRC_URI[sha256sum] = "34fd26c70a277a9fdd54cb5ecf389badedaf48047b269d1008fbc819b24e80bc"
+SRC_URI[sha256sum] = "3c4b8339e5ab54b1bcb2316101f8985a5da50a3f9e504d43fa6f35668bee2fd0"
-# brokensep since this uses autoconf but not automake
-inherit autotools-brokensep
+EXTRA_AUTORECONF_append = " -I autoconf/m4"
-EXTRA_AUTORECONF += "--exclude=aclocal"
+inherit autotools-brokensep
BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/ninja/ninja_1.10.0.bb b/poky/meta/recipes-devtools/ninja/ninja_1.10.1.bb
index bdc636505..eefac4166 100644
--- a/poky/meta/recipes-devtools/ninja/ninja_1.10.0.bb
+++ b/poky/meta/recipes-devtools/ninja/ninja_1.10.1.bb
@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=a81586a64ad4e476c791cda7e2f2c52e"
DEPENDS = "re2c-native ninja-native"
-SRCREV = "ed7f67040b370189d989adbd60ff8ea29957231f"
+SRCREV = "a1f879b29c9aafe6a2bc0ba885701f8f4f19f772"
SRC_URI = "git://github.com/ninja-build/ninja.git;branch=release"
UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>.*)"
diff --git a/poky/meta/recipes-devtools/opkg-utils/opkg-utils/fix-reproducibility.patch b/poky/meta/recipes-devtools/opkg-utils/opkg-utils/fix-reproducibility.patch
deleted file mode 100644
index 945979bc8..000000000
--- a/poky/meta/recipes-devtools/opkg-utils/opkg-utils/fix-reproducibility.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Fix reproducibility issues in opkg-build
-
-There is a sorting problem with opkg-build where the ipk generated is depending
-upon the order of files on disk. The reason is the --sort option to tar only
-influences the orders of files tar reads, not those passed by the -T option.
-
-Add in a sort call to resolve this issue. To ensure consistent sorting we
-also need to force to a specific locale (C) else the results are still not
-deterministic.
-
-RP 2020/2/5
-
-Upstream-Status: Submitted [https://groups.google.com/forum/#!topic/opkg-devel/YttZ73NLrYQ]
-Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-
-Index: opkg-utils-0.4.2/opkg-build
-===================================================================
---- opkg-utils-0.4.2.orig/opkg-build
-+++ opkg-utils-0.4.2/opkg-build
-@@ -305,8 +305,10 @@ if [ ! -z "$SOURCE_DATE_EPOCH" ]; then
- mtime_args="--mtime=@$build_date --clamp-mtime"
- fi
-
--( cd $pkg_dir/$CONTROL && find . -type f > $tmp_dir/control_list )
--( cd $pkg_dir && find . -path ./$CONTROL -prune -o -path . -o -print > $tmp_dir/file_list )
-+export LANG=C
-+export LC_ALL=C
-+( cd $pkg_dir/$CONTROL && find . -type f | sort > $tmp_dir/control_list )
-+( cd $pkg_dir && find . -path ./$CONTROL -prune -o -path . -o -print | sort > $tmp_dir/file_list )
- ( cd $pkg_dir && tar $ogargs $tsortargs --no-recursion $mtime_args -c $tarformat -T $tmp_dir/file_list | $compressor $compressorargs > $tmp_dir/data.tar.$cext )
- ( cd $pkg_dir/$CONTROL && tar $ogargs $tsortargs --no-recursion --mtime=@$build_date -c $tarformat -T $tmp_dir/control_list | gzip $zipargs > $tmp_dir/control.tar.gz )
- rm $tmp_dir/file_list
diff --git a/poky/meta/recipes-devtools/opkg-utils/opkg-utils_0.4.2.bb b/poky/meta/recipes-devtools/opkg-utils/opkg-utils_0.4.3.bb
index 931524019..f9df58a29 100644
--- a/poky/meta/recipes-devtools/opkg-utils/opkg-utils_0.4.2.bb
+++ b/poky/meta/recipes-devtools/opkg-utils/opkg-utils_0.4.3.bb
@@ -8,12 +8,11 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
PROVIDES += "${@bb.utils.contains('PACKAGECONFIG', 'update-alternatives', 'virtual/update-alternatives', '', d)}"
SRC_URI = "http://git.yoctoproject.org/cgit/cgit.cgi/${BPN}/snapshot/${BPN}-${PV}.tar.gz \
- file://fix-reproducibility.patch \
"
UPSTREAM_CHECK_URI = "http://git.yoctoproject.org/cgit/cgit.cgi/opkg-utils/refs/"
-SRC_URI[md5sum] = "cc210650644fcb9bba06ad5ec95a63ec"
-SRC_URI[sha256sum] = "5929ad87d541789e0b82d626db01a1201ac48df6f49f2262fcfb86cf815e5d6c"
+SRC_URI[md5sum] = "7bbadb3c381f3ea935b21d3bb8cc4671"
+SRC_URI[sha256sum] = "046517600fb0aed6c4645edefe02281f4fa2f1c02f71596152d93172452c0b01"
TARGET_CC_ARCH += "${LDFLAGS}"
diff --git a/poky/meta/recipes-devtools/opkg/opkg_0.4.2.bb b/poky/meta/recipes-devtools/opkg/opkg_0.4.3.bb
index 66a74dc5e..46b7aa252 100644
--- a/poky/meta/recipes-devtools/opkg/opkg_0.4.2.bb
+++ b/poky/meta/recipes-devtools/opkg/opkg_0.4.3.bb
@@ -17,8 +17,8 @@ SRC_URI = "http://downloads.yoctoproject.org/releases/${BPN}/${BPN}-${PV}.tar.gz
file://run-ptest \
"
-SRC_URI[md5sum] = "bd13e5dfc1c2536f0c7b2e15f795278e"
-SRC_URI[sha256sum] = "86887852c43457edfff9d8b6d9520f3f1cdd55f25eb600a6eb31e1c4e151e106"
+SRC_URI[md5sum] = "86ec5eee9362aca0990994a402e077e9"
+SRC_URI[sha256sum] = "dda452854bc0cd1334f7ba18a66003d1c12a98600c894111b56919b1ea434718"
# This needs to be before ptest inherit, otherwise all ptest files end packaged
# in libopkg package if OPKGLIBDIR == libdir, because default
diff --git a/poky/meta/recipes-devtools/packagegroups/packagegroup-core-device-devel.bb b/poky/meta/recipes-devtools/packagegroups/packagegroup-core-device-devel.bb
deleted file mode 100644
index edee474ec..000000000
--- a/poky/meta/recipes-devtools/packagegroups/packagegroup-core-device-devel.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "Provides a small set of tools for development on the device"
-
-PR = "r1"
-
-inherit packagegroup
-
-RPROVIDES_${PN} = "qemu-config"
-RREPLACES_${PN} = "qemu-config"
-RCONFLICTS_${PN} = "qemu-config"
-
-RDEPENDS_${PN} = "\
- distcc-config \
- nfs-export-root \
- bash \
- binutils-symlinks \
- "
diff --git a/poky/meta/recipes-devtools/patchelf/patchelf/fix-adjusting-startPage.patch b/poky/meta/recipes-devtools/patchelf/patchelf/fix-adjusting-startPage.patch
deleted file mode 100644
index a0988423f..000000000
--- a/poky/meta/recipes-devtools/patchelf/patchelf/fix-adjusting-startPage.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 1630d3f846c7721b1e7cd3b005bb2b34816e1d0f Mon Sep 17 00:00:00 2001
-From: Ed Bartosh <ed.bartosh@linux.intel.com>
-Date: Fri, 21 Jul 2017 12:33:53 +0300
-Subject: [PATCH] patchelf: fix segfault for binaries linked by gold
-
-commit 1cc234fea5600190d872329aca60e2365cefc39e
-
-fix adjusting startPage
-
-startPage is adjusted unconditionally for all executables.
-This results in incorrect addresses assigned to INTERP and LOAD
-program headers, which breaks patched executable.
-
-Adjusting startPage variable only when startOffset > startPage
-should fix this.
-
-This change is related to the issue NixOS#10
-
-Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
-
-Github PR: https://github.com/NixOS/patchelf/pull/127
-
-Upstream-Status: Submitted
-
----
- src/patchelf.cc | 6 ++----
- 1 file changed, 2 insertions(+), 4 deletions(-)
-
-diff --git a/src/patchelf.cc b/src/patchelf.cc
-index a63e3a11c61f..2483d25d78f1 100644
---- a/src/patchelf.cc
-+++ b/src/patchelf.cc
-@@ -756,10 +756,8 @@ void ElfFile<ElfFileParamNames>::rewriteSectionsLibrary()
- since DYN executables tend to start at virtual address 0, so
- rewriteSectionsExecutable() won't work because it doesn't have
- any virtual address space to grow downwards into. */
-- if (isExecutable) {
-- if (startOffset >= startPage) {
-- debug("shifting new PT_LOAD segment by %d bytes to work around a Linux kernel bug\n", startOffset - startPage);
-- }
-+ if (isExecutable && startOffset > startPage) {
-+ debug("shifting new PT_LOAD segment by %d bytes to work around a Linux kernel bug\n", startOffset - startPage);
- startPage = startOffset;
- }
-
diff --git a/poky/meta/recipes-devtools/patchelf/patchelf/handle-read-only-files.patch b/poky/meta/recipes-devtools/patchelf/patchelf/handle-read-only-files.patch
index 03b0d18a8..bf721c1af 100644
--- a/poky/meta/recipes-devtools/patchelf/patchelf/handle-read-only-files.patch
+++ b/poky/meta/recipes-devtools/patchelf/patchelf/handle-read-only-files.patch
@@ -14,30 +14,32 @@ Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
src/patchelf.cc | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
-diff --git a/src/patchelf.cc b/src/patchelf.cc
-index 0b4965adff83..b5db2aef0e8a 100644
---- a/src/patchelf.cc
-+++ b/src/patchelf.cc
-@@ -497,7 +497,17 @@ void ElfFile<ElfFileParamNames>::sortShdrs()
+Index: git/src/patchelf.cc
+===================================================================
+--- git.orig/src/patchelf.cc
++++ git/src/patchelf.cc
+@@ -499,9 +499,19 @@ void ElfFile<ElfFileParamNames>::sortShd
static void writeFile(std::string fileName, FileContents contents)
{
-- int fd = open(fileName.c_str(), O_TRUNC | O_WRONLY);
+ struct stat st;
+ int fd;
+
+ debug("writing %s\n", fileName.c_str());
+
+- int fd = open(fileName.c_str(), O_CREAT | O_TRUNC | O_WRONLY, 0777);
+ if (stat(fileName.c_str(), &st) != 0)
+ error("stat");
+
+ if (chmod(fileName.c_str(), 0600) != 0)
+ error("chmod");
+
-+ fd = open(fileName.c_str(), O_TRUNC | O_WRONLY);
++ fd = open(fileName.c_str(), O_CREAT | O_TRUNC | O_WRONLY, 0777);
+
if (fd == -1)
error("open");
-@@ -511,6 +521,10 @@ static void writeFile(std::string fileName, FileContents contents)
+@@ -515,6 +525,10 @@ static void writeFile(std::string fileNa
if (close(fd) != 0)
error("close");
diff --git a/poky/meta/recipes-devtools/patchelf/patchelf_0.10.bb b/poky/meta/recipes-devtools/patchelf/patchelf_0.12.bb
index d29e094ed..43de90877 100644
--- a/poky/meta/recipes-devtools/patchelf/patchelf_0.10.bb
+++ b/poky/meta/recipes-devtools/patchelf/patchelf_0.12.bb
@@ -1,12 +1,11 @@
SRC_URI = "git://github.com/NixOS/patchelf;protocol=https \
file://handle-read-only-files.patch \
- file://fix-adjusting-startPage.patch \
"
LICENSE = "GPLv3"
SUMMARY = "Tool to allow editing of RPATH and interpreter fields in ELF binaries"
-SRCREV = "e1e39f3639e39360ceebb2f7ed533cede4623070"
+SRCREV = "8d3a16e97294e3c5521c61b4c8835499c9918264"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/perl/files/0001-PATCH-perl-134117-Close-DATA-in-loc_tools.pl.patch b/poky/meta/recipes-devtools/perl/files/0001-PATCH-perl-134117-Close-DATA-in-loc_tools.pl.patch
deleted file mode 100644
index 79cae0d6f..000000000
--- a/poky/meta/recipes-devtools/perl/files/0001-PATCH-perl-134117-Close-DATA-in-loc_tools.pl.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From a04a75f20f03aa08ce8118b3b0b3f93eb3e997c5 Mon Sep 17 00:00:00 2001
-From: Richard Leach <rich+perl@hyphen-dash-hyphen.info>
-Date: Sun, 19 May 2019 20:16:41 +0000
-Subject: [PATCH] PATCH: [perl #134117] Close DATA in loc_tools.pl
-
-This prevents unexpected text and fixes test lib/warnings.t
-
-Upstream-Status: Backport [a04a75f20f03aa08ce8118b3b0b3f93eb3e997c5]
-
-Signed-off-by: Matthew Zeng <matthew.zeng@windriver.com>
-
----
- t/loc_tools.pl | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/t/loc_tools.pl b/t/loc_tools.pl
-index c76e29388a..beebd98d88 100644
---- a/t/loc_tools.pl
-+++ b/t/loc_tools.pl
-@@ -421,7 +421,7 @@ sub find_locales ($;$) {
- }
-
- # The rest of the locales are in this file.
-- push @Data, <DATA>;
-+ push @Data, <DATA>; close DATA;
-
- foreach my $line (@Data) {
- my ($locale_name, $language_codes, $country_codes, $encodings) =
---
-2.25.0
diff --git a/poky/meta/recipes-devtools/perl/files/0001-enc2xs-Add-environment-variable-to-suppress-comments.patch b/poky/meta/recipes-devtools/perl/files/0001-enc2xs-Add-environment-variable-to-suppress-comments.patch
deleted file mode 100644
index 3a41820f4..000000000
--- a/poky/meta/recipes-devtools/perl/files/0001-enc2xs-Add-environment-variable-to-suppress-comments.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 31a2c5555f9ef32f35d7d5ce1fd09a010ba5f5c6 Mon Sep 17 00:00:00 2001
-From: Joshua Watt <JPEWhacker@gmail.com>
-Date: Mon, 17 Jun 2019 10:47:15 -0500
-Subject: [PATCH 1/2] enc2xs: Add environment variable to suppress comments
-
-Comment generation in enc2xs can now be suppressed by setting the
-ENC2XS_NO_COMMENTS environment variable. This allows enc2xs to produce
-reproducible output by omitting the name of the generating program.
-
-Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
-Upstream-Status: Accepted [https://github.com/dankogai/p5-encode/pull/145]
----
- cpan/Encode/bin/enc2xs | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/cpan/Encode/bin/enc2xs b/cpan/Encode/bin/enc2xs
-index 619b64b757..bfce9ee735 100644
---- a/cpan/Encode/bin/enc2xs
-+++ b/cpan/Encode/bin/enc2xs
-@@ -144,6 +144,7 @@ getopts('CM:SQqOo:f:n:v',\%opt);
- $opt{M} and make_makefile_pl($opt{M}, @ARGV);
- $opt{C} and make_configlocal_pm($opt{C}, @ARGV);
- $opt{v} ||= $ENV{ENC2XS_VERBOSE};
-+$opt{q} ||= $ENV{ENC2XS_NO_COMMENTS};
-
- sub verbose {
- print STDERR @_ if $opt{v};
---
-2.21.0
-
diff --git a/poky/meta/recipes-devtools/perl/files/perl-cross-makefile.patch b/poky/meta/recipes-devtools/perl/files/perl-cross-makefile.patch
new file mode 100644
index 000000000..5d3f99820
--- /dev/null
+++ b/poky/meta/recipes-devtools/perl/files/perl-cross-makefile.patch
@@ -0,0 +1,29 @@
+Makefile: Avoid continual rebuilds of miniperl and associated races
+
+In the Yocto Project, when we run "make install" we notice miniperl
+rebuilding multiple times. Usually this is harmless however sometimes
+race issues occur such as miniperl not being executable.
+
+The issue is that crosspatch is a phony target so it always rebuilds.
+Adding this as a dependency of miniperl means miniperl always rebuilds
+too.
+
+Avoid this by injecting a direct dependency avoiding the phony target.
+miniperl is then only rebuilt when its input changes as desired.
+
+Signed-off-by: Richard Purdie richard.purdie@linuxfoundation.org
+Upstream-Status: Submitted [https://github.com/arsv/perl-cross/pull/95]
+
+Index: perl-5.32.0/Makefile
+===================================================================
+--- perl-5.32.0.orig/Makefile
++++ perl-5.32.0/Makefile
+@@ -56,7 +56,7 @@ crosspatch: $(CROSSPATCHED)
+
+ # A minor fix for buildroot, force crosspatching when running "make perl modules"
+ # instead of "make all".
+-miniperlmain$O: crosspatch
++miniperlmain$O: $(CROSSPATCHED)
+
+ # Original versions are not saved anymore; patch generally takes care of this,
+ # and if that fails, reaching for the source tarball is the safest option.
diff --git a/poky/meta/recipes-devtools/perl/files/perl-rdepends.txt b/poky/meta/recipes-devtools/perl/files/perl-rdepends.txt
index 9ecfce001..e7cd55198 100644
--- a/poky/meta/recipes-devtools/perl/files/perl-rdepends.txt
+++ b/poky/meta/recipes-devtools/perl/files/perl-rdepends.txt
@@ -59,7 +59,6 @@ RDEPENDS_perl-module-archive-tar += "perl-module-io-file"
RDEPENDS_perl-module-archive-tar += "perl-module-io-zlib"
RDEPENDS_perl-module-archive-tar += "perl-module-strict"
RDEPENDS_perl-module-archive-tar += "perl-module-vars"
-RDEPENDS_perl-module-arybase += "perl-module-xsloader"
RDEPENDS_perl-module-attribute-handlers += "perl-module-strict"
RDEPENDS_perl-module-attribute-handlers += "perl-module-warnings"
RDEPENDS_perl-module-attributes += "perl-module-exporter"
@@ -109,9 +108,6 @@ RDEPENDS_perl-module-b-concise += "perl-module-exporter"
RDEPENDS_perl-module-b-concise += "perl-module-feature"
RDEPENDS_perl-module-b-concise += "perl-module-strict"
RDEPENDS_perl-module-b-concise += "perl-module-warnings"
-RDEPENDS_perl-module-b-debug += "perl-module-b"
-RDEPENDS_perl-module-b-debug += "perl-module-config"
-RDEPENDS_perl-module-b-debug += "perl-module-strict"
RDEPENDS_perl-module-benchmark += "perl-module-exporter"
RDEPENDS_perl-module-benchmark += "perl-module-strict"
RDEPENDS_perl-module-bigint += "perl-module-constant"
@@ -153,9 +149,6 @@ RDEPENDS_perl-module-b-xref += "perl-module-b"
RDEPENDS_perl-module-b-xref += "perl-module-config"
RDEPENDS_perl-module-b-xref += "perl-module-strict"
RDEPENDS_perl-module-bytes += "perl-module-bytes-heavy"
-RDEPENDS_perl-module-carp += "perl-module-exporter"
-RDEPENDS_perl-module-carp += "perl-module-strict"
-RDEPENDS_perl-module-carp += "perl-module-warnings"
RDEPENDS_perl-module--charnames += "perl-module-bytes"
RDEPENDS_perl-module-charnames += "perl-module-bytes"
RDEPENDS_perl-module-charnames += "perl-module--charnames"
@@ -196,2313 +189,6 @@ RDEPENDS_perl-module-compress-zlib += "perl-module-warnings "
RDEPENDS_perl-module-config-extensions += "perl-module-config"
RDEPENDS_perl-module-config-extensions += "perl-module-exporter"
RDEPENDS_perl-module-config-extensions += "perl-module-strict"
-RDEPENDS_perl-module-config += "perl-module-strict"
-RDEPENDS_perl-module-config += "perl-module-warnings"
-RDEPENDS_perl-module-config-perl-v += "perl-module-config"
-RDEPENDS_perl-module-config-perl-v += "perl-module-exporter"
-RDEPENDS_perl-module-config-perl-v += "perl-module-strict"
-RDEPENDS_perl-module-config-perl-v += "perl-module-vars"
-RDEPENDS_perl-module-config-perl-v += "perl-module-warnings"
-RDEPENDS_perl-module-constant += "perl-module-strict"
-RDEPENDS_perl-module-constant += "perl-module-warnings-register"
-RDEPENDS_perl-module-corelist += "perl-module-list-util"
-RDEPENDS_perl-module-corelist += "perl-module-corelist"
-RDEPENDS_perl-module-corelist += "perl-module-strict"
-RDEPENDS_perl-module-corelist += "perl-module-version"
-RDEPENDS_perl-module-corelist += "perl-module-warnings"
-RDEPENDS_perl-module-cpan += "perl-module-b"
-RDEPENDS_perl-module-cpan += "perl-module-config"
-RDEPENDS_perl-module-cpan += "perl-module-cwd"
-RDEPENDS_perl-module-cpan += "perl-module-data-dumper"
-RDEPENDS_perl-module-cpan += "perl-module-dirhandle"
-RDEPENDS_perl-module-cpan += "perl-module-errno"
-RDEPENDS_perl-module-cpan += "perl-module-exporter"
-RDEPENDS_perl-module-cpan += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-cpan += "perl-module-extutils-manifest"
-RDEPENDS_perl-module-cpan += "perl-module-fcntl"
-RDEPENDS_perl-module-cpan += "perl-module-file-basename"
-RDEPENDS_perl-module-cpan += "perl-module-file-copy"
-RDEPENDS_perl-module-cpan += "perl-module-file-find"
-RDEPENDS_perl-module-cpan += "perl-module-filehandle"
-RDEPENDS_perl-module-cpan += "perl-module-file-path"
-RDEPENDS_perl-module-cpan += "perl-module-lib"
-RDEPENDS_perl-module-cpan += "perl-module-net-ping"
-RDEPENDS_perl-module-cpan += "perl-module-overload"
-RDEPENDS_perl-module-cpan += "perl-module-posix"
-RDEPENDS_perl-module-cpan += "perl-module-safe"
-RDEPENDS_perl-module-cpan += "perl-module-strict"
-RDEPENDS_perl-module-cpan += "perl-module-sys-hostname"
-RDEPENDS_perl-module-cpan += "perl-module-term-readline"
-RDEPENDS_perl-module-cpan += "perl-module-text-parsewords"
-RDEPENDS_perl-module-cpan += "perl-module-text-wrap"
-RDEPENDS_perl-module-cpan += "perl-module-time-local"
-RDEPENDS_perl-module-cpan += "perl-module-vars"
-RDEPENDS_perl-module-cpan += "perl-module-warnings"
-RDEPENDS_perl-module-cwd += "perl-module-errno"
-RDEPENDS_perl-module-cwd += "perl-module-exporter"
-RDEPENDS_perl-module-cwd += "perl-module-strict"
-RDEPENDS_perl-module-cwd += "perl-module-xsloader"
-RDEPENDS_perl-module-data-dumper += "perl-module-bytes"
-RDEPENDS_perl-module-data-dumper += "perl-module-config"
-RDEPENDS_perl-module-data-dumper += "perl-module-constant"
-RDEPENDS_perl-module-data-dumper += "perl-module-exporter"
-RDEPENDS_perl-module-data-dumper += "perl-module-xsloader"
-RDEPENDS_perl-module-dbm-filter-compress += "perl-module-strict"
-RDEPENDS_perl-module-dbm-filter-compress += "perl-module-warnings"
-RDEPENDS_perl-module-dbm-filter-encode += "perl-module-strict"
-RDEPENDS_perl-module-dbm-filter-encode += "perl-module-warnings"
-RDEPENDS_perl-module-dbm-filter-int32 += "perl-module-strict"
-RDEPENDS_perl-module-dbm-filter-int32 += "perl-module-warnings"
-RDEPENDS_perl-module-dbm-filter-null += "perl-module-strict"
-RDEPENDS_perl-module-dbm-filter-null += "perl-module-warnings"
-RDEPENDS_perl-module-dbm-filter += "perl-module-strict"
-RDEPENDS_perl-module-dbm-filter += "perl-module-warnings"
-RDEPENDS_perl-module-dbm-filter-utf8 += "perl-module-strict"
-RDEPENDS_perl-module-dbm-filter-utf8 += "perl-module-warnings"
-RDEPENDS_perl-module-db += "perl-module-strict"
-RDEPENDS_perl-module-deprecate += "perl-module-strict"
-RDEPENDS_perl-module-deprecate += "perl-module-warnings"
-RDEPENDS_perl-module-devel-peek += "perl-module-exporter"
-RDEPENDS_perl-module-devel-peek += "perl-module-xsloader"
-RDEPENDS_perl-module-devel-ppport += "perl-module-file-find"
-RDEPENDS_perl-module-devel-ppport += "perl-module-getopt-long"
-RDEPENDS_perl-module-devel-ppport += "perl-module-strict"
-RDEPENDS_perl-module-devel-ppport += "perl-module-vars"
-RDEPENDS_perl-module-devel-selfstubber += "perl-module-selfloader"
-RDEPENDS_perl-module-diagnostics += "perl-module-config"
-RDEPENDS_perl-module-diagnostics += "perl-module-getopt-std"
-RDEPENDS_perl-module-diagnostics += "perl-module-strict"
-RDEPENDS_perl-module-diagnostics += "perl-module-text-tabs"
-RDEPENDS_perl-module-digest-base += "perl-module-mime-base64"
-RDEPENDS_perl-module-digest-base += "perl-module-strict"
-RDEPENDS_perl-module-digest-base += "perl-module-vars"
-RDEPENDS_perl-module-digest-file += "perl-module-digest"
-RDEPENDS_perl-module-digest-file += "perl-module-exporter"
-RDEPENDS_perl-module-digest-file += "perl-module-strict"
-RDEPENDS_perl-module-digest-file += "perl-module-vars"
-RDEPENDS_perl-module-digest-md5 += "perl-module-digest-base"
-RDEPENDS_perl-module-digest-md5 += "perl-module-exporter"
-RDEPENDS_perl-module-digest-md5 += "perl-module-strict"
-RDEPENDS_perl-module-digest-md5 += "perl-module-vars"
-RDEPENDS_perl-module-digest-md5 += "perl-module-xsloader"
-RDEPENDS_perl-module-digest += "perl-module-strict"
-RDEPENDS_perl-module-digest += "perl-module-vars"
-RDEPENDS_perl-module-digest-sha += "perl-module-digest-base"
-RDEPENDS_perl-module-digest-sha += "perl-module-dynaloader"
-RDEPENDS_perl-module-digest-sha += "perl-module-exporter"
-RDEPENDS_perl-module-digest-sha += "perl-module-fcntl"
-RDEPENDS_perl-module-digest-sha += "perl-module-integer"
-RDEPENDS_perl-module-digest-sha += "perl-module-strict"
-RDEPENDS_perl-module-digest-sha += "perl-module-vars"
-RDEPENDS_perl-module-digest-sha += "perl-module-warnings"
-RDEPENDS_perl-module-digest-sha += "perl-module-xsloader"
-RDEPENDS_perl-module-dynaloader += "perl-module-config"
-RDEPENDS_perl-module-encode-alias += "perl-module-constant"
-RDEPENDS_perl-module-encode-alias += "perl-module-encode"
-RDEPENDS_perl-module-encode-alias += "perl-module-exporter"
-RDEPENDS_perl-module-encode-alias += "perl-module-strict"
-RDEPENDS_perl-module-encode-alias += "perl-module-warnings"
-RDEPENDS_perl-module-encode-byte += "perl-module-encode"
-RDEPENDS_perl-module-encode-byte += "perl-module-strict"
-RDEPENDS_perl-module-encode-byte += "perl-module-warnings"
-RDEPENDS_perl-module-encode-byte += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-cjkconstants += "perl-module-exporter"
-RDEPENDS_perl-module-encode-cjkconstants += "perl-module-strict"
-RDEPENDS_perl-module-encode-cjkconstants += "perl-module-warnings"
-RDEPENDS_perl-module-encode-cn-hz += "perl-module-encode"
-RDEPENDS_perl-module-encode-cn-hz += "perl-module-parent"
-RDEPENDS_perl-module-encode-cn-hz += "perl-module-strict"
-RDEPENDS_perl-module-encode-cn-hz += "perl-module-utf8"
-RDEPENDS_perl-module-encode-cn-hz += "perl-module-vars"
-RDEPENDS_perl-module-encode-cn-hz += "perl-module-warnings"
-RDEPENDS_perl-module-encode-cn += "perl-module-encode"
-RDEPENDS_perl-module-encode-cn += "perl-module-encode-cn-hz"
-RDEPENDS_perl-module-encode-cn += "perl-module-strict"
-RDEPENDS_perl-module-encode-cn += "perl-module-warnings"
-RDEPENDS_perl-module-encode-cn += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-config += "perl-module-strict"
-RDEPENDS_perl-module-encode-config += "perl-module-warnings"
-RDEPENDS_perl-module-encode-ebcdic += "perl-module-encode"
-RDEPENDS_perl-module-encode-ebcdic += "perl-module-strict"
-RDEPENDS_perl-module-encode-ebcdic += "perl-module-warnings"
-RDEPENDS_perl-module-encode-ebcdic += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-encoder += "perl-module-constant"
-RDEPENDS_perl-module-encode-encoder += "perl-module-encode"
-RDEPENDS_perl-module-encode-encoder += "perl-module-exporter"
-RDEPENDS_perl-module-encode-encoder += "perl-module-overload"
-RDEPENDS_perl-module-encode-encoder += "perl-module-strict"
-RDEPENDS_perl-module-encode-encoder += "perl-module-warnings"
-RDEPENDS_perl-module-encode-encoding += "perl-module-constant"
-RDEPENDS_perl-module-encode-encoding += "perl-module-encode"
-RDEPENDS_perl-module-encode-encoding += "perl-module-encode-mime-name"
-RDEPENDS_perl-module-encode-encoding += "perl-module-strict"
-RDEPENDS_perl-module-encode-encoding += "perl-module-warnings"
-RDEPENDS_perl-module-encode-gsm0338 += "perl-module-encode"
-RDEPENDS_perl-module-encode-gsm0338 += "perl-module-parent"
-RDEPENDS_perl-module-encode-gsm0338 += "perl-module-strict"
-RDEPENDS_perl-module-encode-gsm0338 += "perl-module-utf8"
-RDEPENDS_perl-module-encode-gsm0338 += "perl-module-vars"
-RDEPENDS_perl-module-encode-gsm0338 += "perl-module-warnings"
-RDEPENDS_perl-module-encode-guess += "perl-module-bytes"
-RDEPENDS_perl-module-encode-guess += "perl-module-constant"
-RDEPENDS_perl-module-encode-guess += "perl-module-encode"
-RDEPENDS_perl-module-encode-guess += "perl-module-encode-unicode"
-RDEPENDS_perl-module-encode-guess += "perl-module-parent"
-RDEPENDS_perl-module-encode-guess += "perl-module-strict"
-RDEPENDS_perl-module-encode-guess += "perl-module-warnings"
-RDEPENDS_perl-module-encode-jp-h2z += "perl-module-encode-cjkconstants"
-RDEPENDS_perl-module-encode-jp-h2z += "perl-module-strict"
-RDEPENDS_perl-module-encode-jp-h2z += "perl-module-vars"
-RDEPENDS_perl-module-encode-jp-h2z += "perl-module-warnings"
-RDEPENDS_perl-module-encode-jp-jis7 += "perl-module-bytes"
-RDEPENDS_perl-module-encode-jp-jis7 += "perl-module-encode"
-RDEPENDS_perl-module-encode-jp-jis7 += "perl-module-encode-cjkconstants"
-RDEPENDS_perl-module-encode-jp-jis7 += "perl-module-encode-jp-h2z"
-RDEPENDS_perl-module-encode-jp-jis7 += "perl-module-parent"
-RDEPENDS_perl-module-encode-jp-jis7 += "perl-module-strict"
-RDEPENDS_perl-module-encode-jp-jis7 += "perl-module-warnings"
-RDEPENDS_perl-module-encode-jp += "perl-module-encode"
-RDEPENDS_perl-module-encode-jp += "perl-module-encode-jp-jis7"
-RDEPENDS_perl-module-encode-jp += "perl-module-strict"
-RDEPENDS_perl-module-encode-jp += "perl-module-warnings"
-RDEPENDS_perl-module-encode-jp += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-kr-2022-kr += "perl-module-encode"
-RDEPENDS_perl-module-encode-kr-2022-kr += "perl-module-encode-cjkconstants"
-RDEPENDS_perl-module-encode-kr-2022-kr += "perl-module-parent"
-RDEPENDS_perl-module-encode-kr-2022-kr += "perl-module-strict"
-RDEPENDS_perl-module-encode-kr-2022-kr += "perl-module-warnings"
-RDEPENDS_perl-module-encode-kr += "perl-module-encode"
-RDEPENDS_perl-module-encode-kr += "perl-module-encode-kr-2022-kr"
-RDEPENDS_perl-module-encode-kr += "perl-module-strict"
-RDEPENDS_perl-module-encode-kr += "perl-module-warnings"
-RDEPENDS_perl-module-encode-kr += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-mime-header-iso-2022-jp += "perl-module-constant"
-RDEPENDS_perl-module-encode-mime-header-iso-2022-jp += "perl-module-encode-cjkconstants"
-RDEPENDS_perl-module-encode-mime-header-iso-2022-jp += "perl-module-parent"
-RDEPENDS_perl-module-encode-mime-header-iso-2022-jp += "perl-module-strict"
-RDEPENDS_perl-module-encode-mime-header-iso-2022-jp += "perl-module-warnings"
-RDEPENDS_perl-module-encode-mime-header += "perl-module-encode"
-RDEPENDS_perl-module-encode-mime-header += "perl-module-mime-base64"
-RDEPENDS_perl-module-encode-mime-header += "perl-module-parent"
-RDEPENDS_perl-module-encode-mime-header += "perl-module-strict"
-RDEPENDS_perl-module-encode-mime-header += "perl-module-warnings"
-RDEPENDS_perl-module-encode-mime-name += "perl-module-strict"
-RDEPENDS_perl-module-encode-mime-name += "perl-module-warnings"
-RDEPENDS_perl-module-encode += "perl-module-bytes"
-RDEPENDS_perl-module-encode += "perl-module-constant"
-RDEPENDS_perl-module-encode += "perl-module-encode-alias"
-RDEPENDS_perl-module-encode += "perl-module-encode-config"
-RDEPENDS_perl-module-encode += "perl-module-encode-configlocal-pm"
-RDEPENDS_perl-module-encode += "perl-module-encode-mime-name"
-RDEPENDS_perl-module-encode += "perl-module-exporter"
-RDEPENDS_perl-module-encode += "perl-module-parent"
-RDEPENDS_perl-module-encode += "perl-module-storable"
-RDEPENDS_perl-module-encode += "perl-module-strict"
-RDEPENDS_perl-module-encode += "perl-module-warnings"
-RDEPENDS_perl-module-encode += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-symbol += "perl-module-encode"
-RDEPENDS_perl-module-encode-symbol += "perl-module-strict"
-RDEPENDS_perl-module-encode-symbol += "perl-module-warnings"
-RDEPENDS_perl-module-encode-symbol += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-tw += "perl-module-encode"
-RDEPENDS_perl-module-encode-tw += "perl-module-strict"
-RDEPENDS_perl-module-encode-tw += "perl-module-warnings"
-RDEPENDS_perl-module-encode-tw += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-unicode += "perl-module-encode"
-RDEPENDS_perl-module-encode-unicode += "perl-module-parent"
-RDEPENDS_perl-module-encode-unicode += "perl-module-strict"
-RDEPENDS_perl-module-encode-unicode += "perl-module-warnings"
-RDEPENDS_perl-module-encode-unicode += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-unicode-utf7 += "perl-module-encode"
-RDEPENDS_perl-module-encode-unicode-utf7 += "perl-module-mime-base64"
-RDEPENDS_perl-module-encode-unicode-utf7 += "perl-module-parent"
-RDEPENDS_perl-module-encode-unicode-utf7 += "perl-module-re"
-RDEPENDS_perl-module-encode-unicode-utf7 += "perl-module-strict"
-RDEPENDS_perl-module-encode-unicode-utf7 += "perl-module-warnings"
-RDEPENDS_perl-module-encoding += "perl-module-config"
-RDEPENDS_perl-module-encoding += "perl-module-constant"
-RDEPENDS_perl-module-encoding += "perl-module-encode"
-RDEPENDS_perl-module-encoding += "perl-module-filter-util-call"
-RDEPENDS_perl-module-encoding += "perl-module-i18n-langinfo"
-RDEPENDS_perl-module-encoding += "perl-module-posix"
-RDEPENDS_perl-module-encoding += "perl-module-strict"
-RDEPENDS_perl-module-encoding += "perl-module-utf8"
-RDEPENDS_perl-module-encoding += "perl-module-warnings"
-RDEPENDS_perl-module-encoding-warnings += "perl-module-strict"
-RDEPENDS_perl-module-encoding-warnings += "perl-module-warnings"
-RDEPENDS_perl-module-english += "perl-module-exporter"
-RDEPENDS_perl-module-env += "perl-module-config"
-RDEPENDS_perl-module-env += "perl-module-tie-array"
-RDEPENDS_perl-module-errno += "perl-module-exporter"
-RDEPENDS_perl-module-errno += "perl-module-strict"
-RDEPENDS_perl-module-experimental += "perl-module-strict"
-RDEPENDS_perl-module-experimental += "perl-module-version"
-RDEPENDS_perl-module-experimental += "perl-module-warnings"
-RDEPENDS_perl-module-exporter-heavy += "perl-module-exporter"
-RDEPENDS_perl-module-exporter-heavy += "perl-module-strict"
-RDEPENDS_perl-module-exporter += "perl-module-exporter-heavy"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-config"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-cwd"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-dynaloader"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-extutils-mksymlists"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-file-temp"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-ipc-cmd"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-text-parsewords"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder += "perl-module-extutils-cbuilder-base"
-RDEPENDS_perl-module-extutils-cbuilder += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-cbuilder += "perl-module-file-path"
-RDEPENDS_perl-module-extutils-cbuilder += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-aix += "perl-module-extutils-cbuilder-platform-unix"
-RDEPENDS_perl-module-extutils-cbuilder-platform-aix += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-aix += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-android += "perl-module-config"
-RDEPENDS_perl-module-extutils-cbuilder-platform-android += "perl-module-extutils-cbuilder-platform-unix"
-RDEPENDS_perl-module-extutils-cbuilder-platform-android += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-android += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-cygwin += "perl-module-extutils-cbuilder-platform-unix"
-RDEPENDS_perl-module-extutils-cbuilder-platform-cygwin += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-cygwin += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-darwin += "perl-module-extutils-cbuilder-platform-unix"
-RDEPENDS_perl-module-extutils-cbuilder-platform-darwin += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-darwin += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-dec-osf += "perl-module-extutils-cbuilder-platform-unix"
-RDEPENDS_perl-module-extutils-cbuilder-platform-dec-osf += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-dec-osf += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-os2 += "perl-module-extutils-cbuilder-platform-unix"
-RDEPENDS_perl-module-extutils-cbuilder-platform-os2 += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-os2 += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-unix += "perl-module-extutils-cbuilder-base"
-RDEPENDS_perl-module-extutils-cbuilder-platform-unix += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-unix += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-vms += "perl-module-config"
-RDEPENDS_perl-module-extutils-cbuilder-platform-vms += "perl-module-extutils-cbuilder-base"
-RDEPENDS_perl-module-extutils-cbuilder-platform-vms += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-vms += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows-bcc += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows-bcc += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows-gcc += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows-gcc += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows-msvc += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows-msvc += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows += "perl-module-extutils-cbuilder-base"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows += "perl-module-io-file"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-command-mm += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-command-mm += "perl-module-extutils-command"
-RDEPENDS_perl-module-extutils-command-mm += "perl-module-extutils-install"
-RDEPENDS_perl-module-extutils-command-mm += "perl-module-getopt-long"
-RDEPENDS_perl-module-extutils-command-mm += "perl-module-strict"
-RDEPENDS_perl-module-extutils-command-mm += "perl-module-test-harness"
-RDEPENDS_perl-module-extutils-command-mm += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-command += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-command += "perl-module-file-copy"
-RDEPENDS_perl-module-extutils-command += "perl-module-file-find"
-RDEPENDS_perl-module-extutils-command += "perl-module-file-path"
-RDEPENDS_perl-module-extutils-command += "perl-module-strict"
-RDEPENDS_perl-module-extutils-command += "perl-module-vars"
-RDEPENDS_perl-module-extutils-constant-base += "perl-module-constant"
-RDEPENDS_perl-module-extutils-constant-base += "perl-module-extutils-constant-utils"
-RDEPENDS_perl-module-extutils-constant-base += "perl-module-strict"
-RDEPENDS_perl-module-extutils-constant-base += "perl-module-text-wrap"
-RDEPENDS_perl-module-extutils-constant-base += "perl-module-vars"
-RDEPENDS_perl-module-extutils-constant += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-constant += "perl-module-extutils-constant-proxysubs"
-RDEPENDS_perl-module-extutils-constant += "perl-module-extutils-constant-utils"
-RDEPENDS_perl-module-extutils-constant += "perl-module-extutils-constant-xs"
-RDEPENDS_perl-module-extutils-constant += "perl-module-filehandle"
-RDEPENDS_perl-module-extutils-constant += "perl-module-strict"
-RDEPENDS_perl-module-extutils-constant += "perl-module-vars"
-RDEPENDS_perl-module-extutils-constant-proxysubs += "perl-module-extutils-constant-utils"
-RDEPENDS_perl-module-extutils-constant-proxysubs += "perl-module-extutils-constant-xs"
-RDEPENDS_perl-module-extutils-constant-proxysubs += "perl-module-strict"
-RDEPENDS_perl-module-extutils-constant-proxysubs += "perl-module-vars"
-RDEPENDS_perl-module-extutils-constant-utils += "perl-module-constant"
-RDEPENDS_perl-module-extutils-constant-utils += "perl-module-posix"
-RDEPENDS_perl-module-extutils-constant-utils += "perl-module-strict"
-RDEPENDS_perl-module-extutils-constant-utils += "perl-module-vars"
-RDEPENDS_perl-module-extutils-constant-xs += "perl-module-data-dumper"
-RDEPENDS_perl-module-extutils-constant-xs += "perl-module-extutils-constant"
-RDEPENDS_perl-module-extutils-constant-xs += "perl-module-extutils-constant-base"
-RDEPENDS_perl-module-extutils-constant-xs += "perl-module-extutils-constant-utils"
-RDEPENDS_perl-module-extutils-constant-xs += "perl-module-strict"
-RDEPENDS_perl-module-extutils-constant-xs += "perl-module-vars"
-RDEPENDS_perl-module-extutils-embed += "perl-module-config"
-RDEPENDS_perl-module-extutils-embed += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-embed += "perl-module-extutils-liblist"
-RDEPENDS_perl-module-extutils-embed += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-embed += "perl-module-getopt-std"
-RDEPENDS_perl-module-extutils-embed += "perl-module-strict"
-RDEPENDS_perl-module-extutils-installed += "perl-module-config"
-RDEPENDS_perl-module-extutils-installed += "perl-module-data-dumper"
-RDEPENDS_perl-module-extutils-installed += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-installed += "perl-module-extutils-packlist"
-RDEPENDS_perl-module-extutils-installed += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-installed += "perl-module-file-find"
-RDEPENDS_perl-module-extutils-installed += "perl-module-strict"
-RDEPENDS_perl-module-extutils-installed += "perl-module-vars"
-RDEPENDS_perl-module-extutils-install += "perl-module-autosplit"
-RDEPENDS_perl-module-extutils-install += "perl-module-config"
-RDEPENDS_perl-module-extutils-install += "perl-module-cwd"
-RDEPENDS_perl-module-extutils-install += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-install += "perl-module-extutils-packlist"
-RDEPENDS_perl-module-extutils-install += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-install += "perl-module-file-compare"
-RDEPENDS_perl-module-extutils-install += "perl-module-file-copy"
-RDEPENDS_perl-module-extutils-install += "perl-module-file-find"
-RDEPENDS_perl-module-extutils-install += "perl-module-file-path"
-RDEPENDS_perl-module-extutils-install += "perl-module-strict"
-RDEPENDS_perl-module-extutils-liblist-kid += "perl-module-cwd"
-RDEPENDS_perl-module-extutils-liblist-kid += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-liblist-kid += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-liblist-kid += "perl-module-strict"
-RDEPENDS_perl-module-extutils-liblist-kid += "perl-module-text-parsewords"
-RDEPENDS_perl-module-extutils-liblist-kid += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-liblist += "perl-module-extutils-liblist-kid"
-RDEPENDS_perl-module-extutils-liblist += "perl-module-strict"
-RDEPENDS_perl-module-extutils-makemaker-config += "perl-module-config"
-RDEPENDS_perl-module-extutils-makemaker-config += "perl-module-strict"
-RDEPENDS_perl-module-extutils-makemaker-locale += "perl-module-base"
-RDEPENDS_perl-module-extutils-makemaker-locale += "perl-module-encode"
-RDEPENDS_perl-module-extutils-makemaker-locale += "perl-module-encode-alias"
-RDEPENDS_perl-module-extutils-makemaker-locale += "perl-module-i18n-langinfo"
-RDEPENDS_perl-module-extutils-makemaker-locale += "perl-module-strict"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-b"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-cpan"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-cwd"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-makemaker-version"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-manifest"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-mm"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-my"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-file-path"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-strict"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-version"
-RDEPENDS_perl-module-extutils-makemaker-version += "perl-module-strict"
-RDEPENDS_perl-module-extutils-makemaker-version += "perl-module-vars"
-RDEPENDS_perl-module-extutils-manifest += "perl-module-config"
-RDEPENDS_perl-module-extutils-manifest += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-manifest += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-manifest += "perl-module-file-copy"
-RDEPENDS_perl-module-extutils-manifest += "perl-module-file-find"
-RDEPENDS_perl-module-extutils-manifest += "perl-module-file-path"
-RDEPENDS_perl-module-extutils-manifest += "perl-module-strict"
-RDEPENDS_perl-module-extutils-manifest += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-miniperl += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-miniperl += "perl-module-extutils-embed"
-RDEPENDS_perl-module-extutils-miniperl += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mkbootstrap += "perl-module-config"
-RDEPENDS_perl-module-extutils-mkbootstrap += "perl-module-dynaloader"
-RDEPENDS_perl-module-extutils-mkbootstrap += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-mkbootstrap += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mksymlists += "perl-module-config"
-RDEPENDS_perl-module-extutils-mksymlists += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-mksymlists += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-aix += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-aix += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-aix += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-autosplit"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-cpan"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-data-dumper"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-file-find"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-version"
-RDEPENDS_perl-module-extutils-mm-beos += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-beos += "perl-module-extutils-mm-any"
-RDEPENDS_perl-module-extutils-mm-beos += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-beos += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-cygwin += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-cygwin += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-cygwin += "perl-module-extutils-mm-win32"
-RDEPENDS_perl-module-extutils-mm-cygwin += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-darwin += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-darwin += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-dos += "perl-module-extutils-mm-any"
-RDEPENDS_perl-module-extutils-mm-dos += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-dos += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-macos += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-nw5 += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-mm-nw5 += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-nw5 += "perl-module-extutils-mm-win32"
-RDEPENDS_perl-module-extutils-mm-nw5 += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-mm-nw5 += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-os2 += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-mm-os2 += "perl-module-extutils-mm-any"
-RDEPENDS_perl-module-extutils-mm-os2 += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-os2 += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm += "perl-module-extutils-liblist"
-RDEPENDS_perl-module-extutils-mm += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-mm += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-qnx += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-qnx += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-cwd"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-encode"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-extutils-liblist"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-extutils-mm-any"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-file-find"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-vars"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-version"
-RDEPENDS_perl-module-extutils-mm-uwin += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-uwin += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-extutils-liblist-kid"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-extutils-mm-any"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-file-find"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-vos += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-vos += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-win32 += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-mm-win32 += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-win32 += "perl-module-extutils-mm-any"
-RDEPENDS_perl-module-extutils-mm-win32 += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-win32 += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-mm-win32 += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-win95 += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-win95 += "perl-module-extutils-mm-win32"
-RDEPENDS_perl-module-extutils-mm-win95 += "perl-module-strict"
-RDEPENDS_perl-module-extutils-my += "perl-module-extutils-mm"
-RDEPENDS_perl-module-extutils-my += "perl-module-strict"
-RDEPENDS_perl-module-extutils-packlist += "perl-module-config"
-RDEPENDS_perl-module-extutils-packlist += "perl-module-cwd"
-RDEPENDS_perl-module-extutils-packlist += "perl-module-strict"
-RDEPENDS_perl-module-extutils-packlist += "perl-module-vars"
-RDEPENDS_perl-module-extutils-parsexs-constants += "perl-module-strict"
-RDEPENDS_perl-module-extutils-parsexs-constants += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-parsexs-countlines += "perl-module-strict"
-RDEPENDS_perl-module-extutils-parsexs-eval += "perl-module-strict"
-RDEPENDS_perl-module-extutils-parsexs-eval += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-config"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-cwd"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-extutils-parsexs-constants"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-extutils-parsexs-countlines"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-extutils-parsexs-eval"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-extutils-parsexs-utilities"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-re"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-strict"
-RDEPENDS_perl-module-extutils-parsexs-utilities += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-parsexs-utilities += "perl-module-extutils-parsexs-constants"
-RDEPENDS_perl-module-extutils-parsexs-utilities += "perl-module-extutils-typemaps"
-RDEPENDS_perl-module-extutils-parsexs-utilities += "perl-module-strict"
-RDEPENDS_perl-module-extutils-parsexs-utilities += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-testlib += "perl-module-cwd"
-RDEPENDS_perl-module-extutils-testlib += "perl-module-lib"
-RDEPENDS_perl-module-extutils-testlib += "perl-module-strict"
-RDEPENDS_perl-module-extutils-testlib += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-typemaps-cmd += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-typemaps-cmd += "perl-module-extutils-typemaps"
-RDEPENDS_perl-module-extutils-typemaps-cmd += "perl-module-strict"
-RDEPENDS_perl-module-extutils-typemaps-cmd += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-typemaps-inputmap += "perl-module-strict"
-RDEPENDS_perl-module-extutils-typemaps-inputmap += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-typemaps-outputmap += "perl-module-re"
-RDEPENDS_perl-module-extutils-typemaps-outputmap += "perl-module-strict"
-RDEPENDS_perl-module-extutils-typemaps-outputmap += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-typemaps += "perl-module-extutils-parsexs"
-RDEPENDS_perl-module-extutils-typemaps += "perl-module-extutils-parsexs-constants"
-RDEPENDS_perl-module-extutils-typemaps += "perl-module-extutils-typemaps-inputmap"
-RDEPENDS_perl-module-extutils-typemaps += "perl-module-extutils-typemaps-outputmap"
-RDEPENDS_perl-module-extutils-typemaps += "perl-module-extutils-typemaps-type"
-RDEPENDS_perl-module-extutils-typemaps += "perl-module-strict"
-RDEPENDS_perl-module-extutils-typemaps += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-typemaps-type += "perl-module-extutils-typemaps"
-RDEPENDS_perl-module-extutils-typemaps-type += "perl-module-strict"
-RDEPENDS_perl-module-extutils-typemaps-type += "perl-module-warnings"
-RDEPENDS_perl-module-fatal += "perl-module-autodie"
-RDEPENDS_perl-module-fatal += "perl-module-autodie-exception-system"
-RDEPENDS_perl-module-fatal += "perl-module-autodie-hints"
-RDEPENDS_perl-module-fatal += "perl-module-autodie-util"
-RDEPENDS_perl-module-fatal += "perl-module-config"
-RDEPENDS_perl-module-fatal += "perl-module-constant"
-RDEPENDS_perl-module-fatal += "perl-module-fcntl"
-RDEPENDS_perl-module-fatal += "perl-module-posix"
-RDEPENDS_perl-module-fatal += "perl-module-strict"
-RDEPENDS_perl-module-fatal += "perl-module-tie-refhash"
-RDEPENDS_perl-module-fatal += "perl-module-warnings"
-RDEPENDS_perl-module-fcntl += "perl-module-exporter"
-RDEPENDS_perl-module-fcntl += "perl-module-strict"
-RDEPENDS_perl-module-fcntl += "perl-module-xsloader"
-RDEPENDS_perl-module-fields += "perl-module-base"
-RDEPENDS_perl-module-fields += "perl-module-hash-util"
-RDEPENDS_perl-module-fields += "perl-module-strict"
-RDEPENDS_perl-module-file-basename += "perl-module-exporter"
-RDEPENDS_perl-module-file-basename += "perl-module-re"
-RDEPENDS_perl-module-file-basename += "perl-module-strict"
-RDEPENDS_perl-module-file-basename += "perl-module-warnings"
-RDEPENDS_perl-module-filecache += "perl-module-parent"
-RDEPENDS_perl-module-filecache += "perl-module-strict"
-RDEPENDS_perl-module-file-compare += "perl-module-exporter"
-RDEPENDS_perl-module-file-compare += "perl-module-strict"
-RDEPENDS_perl-module-file-compare += "perl-module-warnings"
-RDEPENDS_perl-module-file-copy += "perl-module-config"
-RDEPENDS_perl-module-file-copy += "perl-module-exporter"
-RDEPENDS_perl-module-file-copy += "perl-module-file-basename"
-RDEPENDS_perl-module-file-copy += "perl-module-strict"
-RDEPENDS_perl-module-file-copy += "perl-module-warnings"
-RDEPENDS_perl-module-file-dosglob += "perl-module-strict"
-RDEPENDS_perl-module-file-dosglob += "perl-module-text-parsewords"
-RDEPENDS_perl-module-file-dosglob += "perl-module-warnings"
-RDEPENDS_perl-module-file-dosglob += "perl-module-xsloader"
-RDEPENDS_perl-module-file-fetch += "perl-module-constant"
-RDEPENDS_perl-module-file-fetch += "perl-module-cwd"
-RDEPENDS_perl-module-file-fetch += "perl-module-file-basename"
-RDEPENDS_perl-module-file-fetch += "perl-module-file-copy"
-RDEPENDS_perl-module-file-fetch += "perl-module-filehandle"
-RDEPENDS_perl-module-file-fetch += "perl-module-file-path"
-RDEPENDS_perl-module-file-fetch += "perl-module-file-temp"
-RDEPENDS_perl-module-file-fetch += "perl-module-ipc-cmd"
-RDEPENDS_perl-module-file-fetch += "perl-module-locale-maketext-simple"
-RDEPENDS_perl-module-file-fetch += "perl-module-load"
-RDEPENDS_perl-module-file-fetch += "perl-module-params-check"
-RDEPENDS_perl-module-file-fetch += "perl-module-strict"
-RDEPENDS_perl-module-file-fetch += "perl-module-vars"
-RDEPENDS_perl-module-file-find += "perl-module-config"
-RDEPENDS_perl-module-file-find += "perl-module-cwd"
-RDEPENDS_perl-module-file-find += "perl-module-exporter"
-RDEPENDS_perl-module-file-find += "perl-module-file-basename"
-RDEPENDS_perl-module-file-find += "perl-module-strict"
-RDEPENDS_perl-module-file-find += "perl-module-warnings"
-RDEPENDS_perl-module-file-find += "perl-module-warnings-register"
-RDEPENDS_perl-module-file-globmapper += "perl-module-file-glob"
-RDEPENDS_perl-module-file-globmapper += "perl-module-strict"
-RDEPENDS_perl-module-file-globmapper += "perl-module-warnings"
-RDEPENDS_perl-module-file-glob += "perl-module-exporter"
-RDEPENDS_perl-module-file-glob += "perl-module-strict"
-RDEPENDS_perl-module-file-glob += "perl-module-warnings"
-RDEPENDS_perl-module-file-glob += "perl-module-xsloader"
-RDEPENDS_perl-module-filehandle += "perl-module-exporter"
-RDEPENDS_perl-module-filehandle += "perl-module-fcntl"
-RDEPENDS_perl-module-filehandle += "perl-module-io-file"
-RDEPENDS_perl-module-filehandle += "perl-module-strict"
-RDEPENDS_perl-module-file-path += "perl-module-cwd"
-RDEPENDS_perl-module-file-path += "perl-module-exporter"
-RDEPENDS_perl-module-file-path += "perl-module-file-basename"
-RDEPENDS_perl-module-file-path += "perl-module-strict"
-RDEPENDS_perl-module-file-path += "perl-module-vars"
-RDEPENDS_perl-module-file-spec += "perl-module-constant"
-RDEPENDS_perl-module-file-spec += "perl-module-cwd"
-RDEPENDS_perl-module-file-spec += "perl-module-strict"
-RDEPENDS_perl-module-file-spec += "perl-module-file-spec-unix"
-RDEPENDS_perl-module-file-stat += "perl-module-class-struct"
-RDEPENDS_perl-module-file-stat += "perl-module-constant"
-RDEPENDS_perl-module-file-stat += "perl-module-exporter"
-RDEPENDS_perl-module-file-stat += "perl-module-fcntl"
-RDEPENDS_perl-module-file-stat += "perl-module-overload "
-RDEPENDS_perl-module-file-stat += "perl-module-strict"
-RDEPENDS_perl-module-file-stat += "perl-module-warnings"
-RDEPENDS_perl-module-file-stat += "perl-module-warnings-register"
-RDEPENDS_perl-module-file-temp += "perl-module-carp"
-RDEPENDS_perl-module-file-temp += "perl-module-constant"
-RDEPENDS_perl-module-file-temp += "perl-module-cwd"
-RDEPENDS_perl-module-file-temp += "perl-module-errno"
-RDEPENDS_perl-module-file-temp += "perl-module-exporter"
-RDEPENDS_perl-module-file-temp += "perl-module-fcntl"
-RDEPENDS_perl-module-file-temp += "perl-module-file-path"
-RDEPENDS_perl-module-file-temp += "perl-module-file-spec"
-RDEPENDS_perl-module-file-temp += "perl-module-io-seekable"
-RDEPENDS_perl-module-file-temp += "perl-module-overload"
-RDEPENDS_perl-module-file-temp += "perl-module-parent"
-RDEPENDS_perl-module-file-temp += "perl-module-posix"
-RDEPENDS_perl-module-file-temp += "perl-module-scalar-util"
-RDEPENDS_perl-module-file-temp += "perl-module-strict"
-RDEPENDS_perl-module-file-temp += "perl-module-vars"
-RDEPENDS_perl-module-filter-simple += "perl-module-filter-util-call"
-RDEPENDS_perl-module-filter-simple += "perl-module-text-balanced"
-RDEPENDS_perl-module-filter-util-call += "perl-module-exporter"
-RDEPENDS_perl-module-filter-util-call += "perl-module-strict"
-RDEPENDS_perl-module-filter-util-call += "perl-module-warnings"
-RDEPENDS_perl-module-filter-util-call += "perl-module-xsloader"
-RDEPENDS_perl-module-findbin += "perl-module-cwd"
-RDEPENDS_perl-module-findbin += "perl-module-exporter"
-RDEPENDS_perl-module-findbin += "perl-module-file-basename"
-RDEPENDS_perl-module-getopt-long += "perl-module-constant"
-RDEPENDS_perl-module-getopt-long += "perl-module-exporter"
-RDEPENDS_perl-module-getopt-long += "perl-module-overload"
-RDEPENDS_perl-module-getopt-long += "perl-module-pod-usage"
-RDEPENDS_perl-module-getopt-long += "perl-module-strict"
-RDEPENDS_perl-module-getopt-long += "perl-module-text-parsewords"
-RDEPENDS_perl-module-getopt-long += "perl-module-vars"
-RDEPENDS_perl-module-getopt-long += "perl-module-warnings"
-RDEPENDS_perl-module-getopt-std += "perl-module-exporter"
-RDEPENDS_perl-module-hash-util-fieldhash += "perl-module-exporter"
-RDEPENDS_perl-module-hash-util-fieldhash += "perl-module-strict"
-RDEPENDS_perl-module-hash-util-fieldhash += "perl-module-warnings"
-RDEPENDS_perl-module-hash-util-fieldhash += "perl-module-xsloader"
-RDEPENDS_perl-module-hash-util += "perl-module-exporter"
-RDEPENDS_perl-module-hash-util += "perl-module-hash-util-fieldhash"
-RDEPENDS_perl-module-hash-util += "perl-module-strict"
-RDEPENDS_perl-module-hash-util += "perl-module-warnings"
-RDEPENDS_perl-module-hash-util += "perl-module-warnings-register"
-RDEPENDS_perl-module-hash-util += "perl-module-xsloader"
-RDEPENDS_perl-module-i18n-collate += "perl-module-exporter"
-RDEPENDS_perl-module-i18n-collate += "perl-module-overload"
-RDEPENDS_perl-module-i18n-collate += "perl-module-posix"
-RDEPENDS_perl-module-i18n-collate += "perl-module-strict"
-RDEPENDS_perl-module-i18n-collate += "perl-module-warnings-register"
-RDEPENDS_perl-module-i18n-langinfo += "perl-module-exporter"
-RDEPENDS_perl-module-i18n-langinfo += "perl-module-strict"
-RDEPENDS_perl-module-i18n-langinfo += "perl-module-warnings"
-RDEPENDS_perl-module-i18n-langinfo += "perl-module-xsloader"
-RDEPENDS_perl-module-i18n-langtags-detect += "perl-module-i18n-langtags"
-RDEPENDS_perl-module-i18n-langtags-detect += "perl-module-strict"
-RDEPENDS_perl-module-i18n-langtags-list += "perl-module-strict"
-RDEPENDS_perl-module-i18n-langtags += "perl-module-exporter"
-RDEPENDS_perl-module-i18n-langtags += "perl-module-strict"
-RDEPENDS_perl-module-io-compress-adapter-bzip2 += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-adapter-bzip2 += "perl-module-compress-raw-bzip2"
-RDEPENDS_perl-module-io-compress-adapter-bzip2 += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-adapter-bzip2 += "perl-module-strict"
-RDEPENDS_perl-module-io-compress-adapter-bzip2 += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-adapter-deflate += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-adapter-deflate += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-io-compress-adapter-deflate += "perl-module-exporter"
-RDEPENDS_perl-module-io-compress-adapter-deflate += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-adapter-deflate += "perl-module-strict"
-RDEPENDS_perl-module-io-compress-adapter-deflate += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-adapter-identity += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-adapter-identity += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-adapter-identity += "perl-module-strict"
-RDEPENDS_perl-module-io-compress-adapter-identity += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-constant"
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-encode"
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-exporter"
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-file-globmapper"
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-strict"
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-utf8"
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-base += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-base += "perl-module-io-file"
-RDEPENDS_perl-module-io-compress-base += "perl-module-io-handle "
-RDEPENDS_perl-module-io-compress-base += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-base += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-bzip2 += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-bzip2 += "perl-module-exporter "
-RDEPENDS_perl-module-io-compress-bzip2 += "perl-module-io-compress-adapter-bzip2"
-RDEPENDS_perl-module-io-compress-bzip2 += "perl-module-io-compress-base"
-RDEPENDS_perl-module-io-compress-bzip2 += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-bzip2 += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-bzip2 += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-deflate += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-deflate += "perl-module-exporter "
-RDEPENDS_perl-module-io-compress-deflate += "perl-module-io-compress-adapter-deflate"
-RDEPENDS_perl-module-io-compress-deflate += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-deflate += "perl-module-io-compress-rawdeflate"
-RDEPENDS_perl-module-io-compress-deflate += "perl-module-io-compress-zlib-constants"
-RDEPENDS_perl-module-io-compress-deflate += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-deflate += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-gzip-constants += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-gzip-constants += "perl-module-constant"
-RDEPENDS_perl-module-io-compress-gzip-constants += "perl-module-exporter"
-RDEPENDS_perl-module-io-compress-gzip-constants += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-gzip-constants += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-exporter "
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-io-compress-adapter-deflate"
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-io-compress-gzip-constants"
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-io-compress-rawdeflate"
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-io-compress-zlib-extra"
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-exporter "
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-fcntl"
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-io-compress-adapter-deflate"
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-io-compress-base"
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-zip-constants += "perl-module-constant"
-RDEPENDS_perl-module-io-compress-zip-constants += "perl-module-exporter"
-RDEPENDS_perl-module-io-compress-zip-constants += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-zip-constants += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-config"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-exporter "
-RDEPENDS_perl-module-io-compress-zip += "perl-module-fcntl"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-io-compress-adapter-deflate"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-io-compress-adapter-identity"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-io-compress-bzip2 "
-RDEPENDS_perl-module-io-compress-zip += "perl-module-io-compress-rawdeflate"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-io-compress-zip-constants"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-io-compress-zlib-extra"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-zip += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-zlib-constants += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-zlib-constants += "perl-module-constant"
-RDEPENDS_perl-module-io-compress-zlib-constants += "perl-module-exporter"
-RDEPENDS_perl-module-io-compress-zlib-constants += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-zlib-constants += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-zlib-extra += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-zlib-extra += "perl-module-io-compress-gzip-constants"
-RDEPENDS_perl-module-io-compress-zlib-extra += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-zlib-extra += "perl-module-warnings"
-RDEPENDS_perl-module-io-dir += "perl-module-exporter"
-RDEPENDS_perl-module-io-dir += "perl-module-file-stat"
-RDEPENDS_perl-module-io-dir += "perl-module-io-file"
-RDEPENDS_perl-module-io-dir += "perl-module-strict"
-RDEPENDS_perl-module-io-dir += "perl-module-tie-hash"
-RDEPENDS_perl-module-io-file += "perl-module-carp"
-RDEPENDS_perl-module-io-file += "perl-module-exporter"
-RDEPENDS_perl-module-io-file += "perl-module-fcntl"
-RDEPENDS_perl-module-io-file += "perl-module-io-seekable"
-RDEPENDS_perl-module-io-file += "perl-module-selectsaver"
-RDEPENDS_perl-module-io-file += "perl-module-strict"
-RDEPENDS_perl-module-io-file += "perl-module-symbol"
-RDEPENDS_perl-module-io-handle += "perl-module-exporter"
-RDEPENDS_perl-module-io-handle += "perl-module-io"
-RDEPENDS_perl-module-io-handle += "perl-module-io-file"
-RDEPENDS_perl-module-io-handle += "perl-module-selectsaver"
-RDEPENDS_perl-module-io-handle += "perl-module-strict"
-RDEPENDS_perl-module-io += "perl-module-strict"
-RDEPENDS_perl-module-io += "perl-module-warnings"
-RDEPENDS_perl-module-io += "perl-module-xsloader"
-RDEPENDS_perl-module-io-pipe += "perl-module-fcntl"
-RDEPENDS_perl-module-io-pipe += "perl-module-io-handle"
-RDEPENDS_perl-module-io-pipe += "perl-module-strict"
-RDEPENDS_perl-module-io-poll += "perl-module-exporter"
-RDEPENDS_perl-module-io-poll += "perl-module-io-handle"
-RDEPENDS_perl-module-io-poll += "perl-module-strict"
-RDEPENDS_perl-module-io-seekable += "perl-module-exporter"
-RDEPENDS_perl-module-io-seekable += "perl-module-fcntl"
-RDEPENDS_perl-module-io-seekable += "perl-module-io-handle"
-RDEPENDS_perl-module-io-seekable += "perl-module-strict"
-RDEPENDS_perl-module-io-select += "perl-module-exporter"
-RDEPENDS_perl-module-io-select += "perl-module-strict"
-RDEPENDS_perl-module-io-select += "perl-module-warnings-register"
-RDEPENDS_perl-module-io-socket-inet += "perl-module-errno"
-RDEPENDS_perl-module-io-socket-inet += "perl-module-exporter"
-RDEPENDS_perl-module-io-socket-inet += "perl-module-io-socket"
-RDEPENDS_perl-module-io-socket-inet += "perl-module-socket"
-RDEPENDS_perl-module-io-socket-inet += "perl-module-strict"
-RDEPENDS_perl-module-io-socket-ip += "perl-module-base"
-RDEPENDS_perl-module-io-socket-ip += "perl-module-constant"
-RDEPENDS_perl-module-io-socket-ip += "perl-module-errno"
-RDEPENDS_perl-module-io-socket-ip += "perl-module-posix"
-RDEPENDS_perl-module-io-socket-ip += "perl-module-socket"
-RDEPENDS_perl-module-io-socket-ip += "perl-module-strict"
-RDEPENDS_perl-module-io-socket-ip += "perl-module-warnings"
-RDEPENDS_perl-module-io-socket += "perl-module-errno"
-RDEPENDS_perl-module-io-socket += "perl-module-exporter"
-RDEPENDS_perl-module-io-socket += "perl-module-io-handle"
-RDEPENDS_perl-module-io-socket += "perl-module-io-select"
-RDEPENDS_perl-module-io-socket += "perl-module-io-socket-inet"
-RDEPENDS_perl-module-io-socket += "perl-module-io-socket-unix"
-RDEPENDS_perl-module-io-socket += "perl-module-socket"
-RDEPENDS_perl-module-io-socket += "perl-module-strict"
-RDEPENDS_perl-module-io-socket-unix += "perl-module-io-socket"
-RDEPENDS_perl-module-io-socket-unix += "perl-module-strict"
-RDEPENDS_perl-module-io-uncompress-adapter-bunzip2 += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-adapter-bunzip2 += "perl-module-compress-raw-bzip2"
-RDEPENDS_perl-module-io-uncompress-adapter-bunzip2 += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-adapter-bunzip2 += "perl-module-strict"
-RDEPENDS_perl-module-io-uncompress-adapter-bunzip2 += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-adapter-identity += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-adapter-identity += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-io-uncompress-adapter-identity += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-adapter-identity += "perl-module-io-compress-zip-constants "
-RDEPENDS_perl-module-io-uncompress-adapter-identity += "perl-module-strict"
-RDEPENDS_perl-module-io-uncompress-adapter-identity += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-adapter-inflate += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-adapter-inflate += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-io-uncompress-adapter-inflate += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-adapter-inflate += "perl-module-strict"
-RDEPENDS_perl-module-io-uncompress-adapter-inflate += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-exporter "
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-adapter-inflate"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-base"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-gunzip"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-inflate"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-rawinflate"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-unzip"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-strict"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-anyuncompress += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-anyuncompress += "perl-module-exporter "
-RDEPENDS_perl-module-io-uncompress-anyuncompress += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-anyuncompress += "perl-module-io-uncompress-base"
-RDEPENDS_perl-module-io-uncompress-anyuncompress += "perl-module-strict"
-RDEPENDS_perl-module-io-uncompress-anyuncompress += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-base += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-base += "perl-module-constant"
-RDEPENDS_perl-module-io-uncompress-base += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-base += "perl-module-io-file "
-RDEPENDS_perl-module-io-uncompress-base += "perl-module-list-util"
-RDEPENDS_perl-module-io-uncompress-base += "perl-module-strict "
-RDEPENDS_perl-module-io-uncompress-base += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-bunzip2 += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-bunzip2 += "perl-module-exporter "
-RDEPENDS_perl-module-io-uncompress-bunzip2 += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-bunzip2 += "perl-module-io-uncompress-adapter-bunzip2"
-RDEPENDS_perl-module-io-uncompress-bunzip2 += "perl-module-io-uncompress-base"
-RDEPENDS_perl-module-io-uncompress-bunzip2 += "perl-module-strict "
-RDEPENDS_perl-module-io-uncompress-bunzip2 += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-exporter "
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-io-compress-gzip-constants"
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-io-compress-zlib-extra"
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-io-uncompress-rawinflate"
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-strict "
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-inflate += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-inflate += "perl-module-exporter "
-RDEPENDS_perl-module-io-uncompress-inflate += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-inflate += "perl-module-io-compress-zlib-constants"
-RDEPENDS_perl-module-io-uncompress-inflate += "perl-module-io-uncompress-rawinflate"
-RDEPENDS_perl-module-io-uncompress-inflate += "perl-module-strict "
-RDEPENDS_perl-module-io-uncompress-inflate += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-exporter "
-RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-io-uncompress-adapter-inflate"
-RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-io-uncompress-base"
-RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-strict "
-RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-constant"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-exporter "
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-fcntl"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-io-compress-zip-constants"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-io-compress-zlib-extra"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-io-file"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-io-uncompress-adapter-identity"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-io-uncompress-adapter-inflate"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-io-uncompress-rawinflate"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-posix"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-strict "
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-warnings"
-RDEPENDS_perl-module-io-zlib += "perl-module-fcntl"
-RDEPENDS_perl-module-io-zlib += "perl-module-io-handle"
-RDEPENDS_perl-module-io-zlib += "perl-module-strict"
-RDEPENDS_perl-module-io-zlib += "perl-module-tie-handle"
-RDEPENDS_perl-module-io-zlib += "perl-module-vars"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-constant"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-exporter"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-filehandle"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-io-handle"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-io-select"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-ipc-open3"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-locale-maketext-simple"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-load"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-params-check"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-posix"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-socket"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-strict"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-text-parsewords"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-time-hires"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-vars"
-RDEPENDS_perl-module-ipc-msg += "perl-module-class-struct"
-RDEPENDS_perl-module-ipc-msg += "perl-module-ipc-sysv"
-RDEPENDS_perl-module-ipc-msg += "perl-module-strict"
-RDEPENDS_perl-module-ipc-msg += "perl-module-vars"
-RDEPENDS_perl-module-ipc-open2 += "perl-module-exporter"
-RDEPENDS_perl-module-ipc-open2 += "perl-module-ipc-open3"
-RDEPENDS_perl-module-ipc-open2 += "perl-module-strict"
-RDEPENDS_perl-module-ipc-open3 += "perl-module-constant"
-RDEPENDS_perl-module-ipc-open3 += "perl-module-exporter"
-RDEPENDS_perl-module-ipc-open3 += "perl-module-fcntl"
-RDEPENDS_perl-module-ipc-open3 += "perl-module-io-pipe"
-RDEPENDS_perl-module-ipc-open3 += "perl-module-posix"
-RDEPENDS_perl-module-ipc-open3 += "perl-module-strict"
-RDEPENDS_perl-module-ipc-semaphore += "perl-module-class-struct"
-RDEPENDS_perl-module-ipc-semaphore += "perl-module-ipc-sysv"
-RDEPENDS_perl-module-ipc-semaphore += "perl-module-strict"
-RDEPENDS_perl-module-ipc-semaphore += "perl-module-vars"
-RDEPENDS_perl-module-ipc-sharedmem += "perl-module-class-struct"
-RDEPENDS_perl-module-ipc-sharedmem += "perl-module-ipc-sysv"
-RDEPENDS_perl-module-ipc-sharedmem += "perl-module-strict"
-RDEPENDS_perl-module-ipc-sharedmem += "perl-module-vars"
-RDEPENDS_perl-module-ipc-sysv += "perl-module-config"
-RDEPENDS_perl-module-ipc-sysv += "perl-module-dynaloader"
-RDEPENDS_perl-module-ipc-sysv += "perl-module-exporter"
-RDEPENDS_perl-module-ipc-sysv += "perl-module-strict"
-RDEPENDS_perl-module-ipc-sysv += "perl-module-vars"
-RDEPENDS_perl-module-json-pp-boolean += "perl-module-overload"
-RDEPENDS_perl-module-json-pp-boolean += "perl-module-strict"
-RDEPENDS_perl-module-json-pp += "perl-module-b"
-RDEPENDS_perl-module-json-pp += "perl-module-bytes"
-RDEPENDS_perl-module-json-pp += "perl-module-constant"
-RDEPENDS_perl-module-json-pp += "perl-module-encode"
-RDEPENDS_perl-module-json-pp += "perl-module-exporter"
-RDEPENDS_perl-module-json-pp += "perl-module-json-pp-boolean"
-RDEPENDS_perl-module-json-pp += "perl-module-math-bigfloat"
-RDEPENDS_perl-module-json-pp += "perl-module-math-bigint"
-RDEPENDS_perl-module-json-pp += "perl-module-overload"
-RDEPENDS_perl-module-json-pp += "perl-module-strict"
-RDEPENDS_perl-module-json-pp += "perl-module-subs"
-RDEPENDS_perl-module-less += "perl-module-strict"
-RDEPENDS_perl-module-less += "perl-module-warnings"
-RDEPENDS_perl-module-lib += "perl-module-config"
-RDEPENDS_perl-module-lib += "perl-module-strict"
-RDEPENDS_perl-module-list-util += "perl-module-exporter"
-RDEPENDS_perl-module-list-util += "perl-module-strict"
-RDEPENDS_perl-module-list-util += "perl-module-warnings"
-RDEPENDS_perl-module-list-util += "perl-module-xsloader"
-RDEPENDS_perl-module-list-util-xs += "perl-module-list-util"
-RDEPENDS_perl-module-list-util-xs += "perl-module-strict"
-RDEPENDS_perl-module-list-util-xs += "perl-module-warnings"
-RDEPENDS_perl-module-loaded += "perl-module-strict"
-RDEPENDS_perl-module-loaded += "perl-module-vars"
-RDEPENDS_perl-module-load += "perl-module-config"
-RDEPENDS_perl-module-load += "perl-module-constant"
-RDEPENDS_perl-module-load += "perl-module-exporter"
-RDEPENDS_perl-module-load += "perl-module-filehandle"
-RDEPENDS_perl-module-load += "perl-module-locale-maketext-simple"
-RDEPENDS_perl-module-load += "perl-module-corelist"
-RDEPENDS_perl-module-load += "perl-module-load"
-RDEPENDS_perl-module-load += "perl-module-params-check"
-RDEPENDS_perl-module-load += "perl-module-strict"
-RDEPENDS_perl-module-load += "perl-module-vars"
-RDEPENDS_perl-module-load += "perl-module-version"
-RDEPENDS_perl-module-load += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-constants += "perl-module-constant"
-RDEPENDS_perl-module-locale-codes-constants += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes-constants += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-constants += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-country-codes += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-country-codes += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-country-codes += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-country += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes-country += "perl-module-if"
-RDEPENDS_perl-module-locale-codes-country += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-codes-country += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-codes-country += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-country += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-country-retired += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-country-retired += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-country-retired += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-currency-codes += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-currency-codes += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-currency-codes += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-currency += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes-currency += "perl-module-if"
-RDEPENDS_perl-module-locale-codes-currency += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-codes-currency += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-codes-currency += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-currency += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-currency-retired += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-currency-retired += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-currency-retired += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langext-codes += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langext-codes += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-langext-codes += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langext += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes-langext += "perl-module-if"
-RDEPENDS_perl-module-locale-codes-langext += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-codes-langext += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-codes-langext += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langext += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langext-retired += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langext-retired += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-langext-retired += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langfam-codes += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langfam-codes += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-langfam-codes += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langfam += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes-langfam += "perl-module-if"
-RDEPENDS_perl-module-locale-codes-langfam += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-codes-langfam += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-codes-langfam += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langfam += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langfam-retired += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langfam-retired += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-language-codes += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-language-codes += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-language-codes += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-language += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes-language += "perl-module-if"
-RDEPENDS_perl-module-locale-codes-language += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-codes-language += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-codes-language += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-language += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-language-retired += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-language-retired += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-language-retired += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langvar-codes += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langvar-codes += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-langvar-codes += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langvar += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes-langvar += "perl-module-if"
-RDEPENDS_perl-module-locale-codes-langvar += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-codes-langvar += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-codes-langvar += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langvar += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langvar-retired += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langvar-retired += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-langvar-retired += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes += "perl-module-if"
-RDEPENDS_perl-module-locale-codes += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-codes += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-script-codes += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-script-codes += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-script-codes += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-script += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes-script += "perl-module-if"
-RDEPENDS_perl-module-locale-codes-script += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-codes-script += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-codes-script += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-script += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-script-retired += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-script-retired += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-script-retired += "perl-module-warnings"
-RDEPENDS_perl-module-locale-country += "perl-module-exporter"
-RDEPENDS_perl-module-locale-country += "perl-module-if"
-RDEPENDS_perl-module-locale-country += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-country += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-country += "perl-module-strict"
-RDEPENDS_perl-module-locale-country += "perl-module-warnings"
-RDEPENDS_perl-module-locale-currency += "perl-module-exporter"
-RDEPENDS_perl-module-locale-currency += "perl-module-if"
-RDEPENDS_perl-module-locale-currency += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-currency += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-currency += "perl-module-strict"
-RDEPENDS_perl-module-locale-currency += "perl-module-warnings"
-RDEPENDS_perl-module-locale-language += "perl-module-exporter"
-RDEPENDS_perl-module-locale-language += "perl-module-if"
-RDEPENDS_perl-module-locale-language += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-language += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-language += "perl-module-strict"
-RDEPENDS_perl-module-locale-language += "perl-module-warnings"
-RDEPENDS_perl-module-locale-maketext-gutsloader += "perl-module-locale-maketext"
-RDEPENDS_perl-module-locale-maketext-guts += "perl-module-locale-maketext"
-RDEPENDS_perl-module-locale-maketext += "perl-module-i18n-langtags"
-RDEPENDS_perl-module-locale-maketext += "perl-module-i18n-langtags-detect"
-RDEPENDS_perl-module-locale-maketext += "perl-module-integer"
-RDEPENDS_perl-module-locale-maketext += "perl-module-strict"
-RDEPENDS_perl-module-locale-maketext-simple += "perl-module-base"
-RDEPENDS_perl-module-locale-maketext-simple += "perl-module-strict"
-RDEPENDS_perl-module-locale += "perl-module-config"
-RDEPENDS_perl-module-locale-script += "perl-module-exporter"
-RDEPENDS_perl-module-locale-script += "perl-module-if"
-RDEPENDS_perl-module-locale-script += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-script += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-script += "perl-module-strict"
-RDEPENDS_perl-module-locale-script += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigfloat += "perl-module-exporter"
-RDEPENDS_perl-module-math-bigfloat += "perl-module-math-bigint"
-RDEPENDS_perl-module-math-bigfloat += "perl-module-math-complex"
-RDEPENDS_perl-module-math-bigfloat += "perl-module-overload"
-RDEPENDS_perl-module-math-bigfloat += "perl-module-strict"
-RDEPENDS_perl-module-math-bigfloat += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigfloat-trace += "perl-module-exporter"
-RDEPENDS_perl-module-math-bigfloat-trace += "perl-module-math-bigfloat"
-RDEPENDS_perl-module-math-bigfloat-trace += "perl-module-overload"
-RDEPENDS_perl-module-math-bigfloat-trace += "perl-module-strict"
-RDEPENDS_perl-module-math-bigfloat-trace += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigint-calcemu += "perl-module-strict"
-RDEPENDS_perl-module-math-bigint-calcemu += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigint-calc += "perl-module-constant"
-RDEPENDS_perl-module-math-bigint-calc += "perl-module-integer"
-RDEPENDS_perl-module-math-bigint-calc += "perl-module-math-bigint-lib"
-RDEPENDS_perl-module-math-bigint-calc += "perl-module-strict"
-RDEPENDS_perl-module-math-bigint-calc += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigint-fastcalc += "perl-module-math-bigint-calc"
-RDEPENDS_perl-module-math-bigint-fastcalc += "perl-module-strict"
-RDEPENDS_perl-module-math-bigint-fastcalc += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigint-fastcalc += "perl-module-xsloader"
-RDEPENDS_perl-module-math-bigint-lib += "perl-module-overload"
-RDEPENDS_perl-module-math-bigint-lib += "perl-module-strict"
-RDEPENDS_perl-module-math-bigint-lib += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigint += "perl-module-exporter"
-RDEPENDS_perl-module-math-bigint += "perl-module-math-bigfloat"
-RDEPENDS_perl-module-math-bigint += "perl-module-math-complex"
-RDEPENDS_perl-module-math-bigint += "perl-module-overload"
-RDEPENDS_perl-module-math-bigint += "perl-module-strict"
-RDEPENDS_perl-module-math-bigint += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigint-trace += "perl-module-exporter"
-RDEPENDS_perl-module-math-bigint-trace += "perl-module-math-bigint"
-RDEPENDS_perl-module-math-bigint-trace += "perl-module-overload"
-RDEPENDS_perl-module-math-bigint-trace += "perl-module-strict"
-RDEPENDS_perl-module-math-bigint-trace += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigrat += "perl-module-math-bigfloat"
-RDEPENDS_perl-module-math-bigrat += "perl-module-math-bigint"
-RDEPENDS_perl-module-math-bigrat += "perl-module-overload"
-RDEPENDS_perl-module-math-bigrat += "perl-module-strict"
-RDEPENDS_perl-module-math-bigrat += "perl-module-warnings"
-RDEPENDS_perl-module-math-complex += "perl-module-config"
-RDEPENDS_perl-module-math-complex += "perl-module-exporter"
-RDEPENDS_perl-module-math-complex += "perl-module-overload"
-RDEPENDS_perl-module-math-complex += "perl-module-strict"
-RDEPENDS_perl-module-math-complex += "perl-module-warnings"
-RDEPENDS_perl-module-math-trig += "perl-module-exporter"
-RDEPENDS_perl-module-math-trig += "perl-module-math-complex"
-RDEPENDS_perl-module-math-trig += "perl-module-strict"
-RDEPENDS_perl-module-metadata += "perl-module-version"
-RDEPENDS_perl-module-memoize-anydbm-file += "perl-module-vars"
-RDEPENDS_perl-module-memoize += "perl-module-config"
-RDEPENDS_perl-module-memoize += "perl-module-exporter"
-RDEPENDS_perl-module-memoize += "perl-module-strict"
-RDEPENDS_perl-module-memoize += "perl-module-vars"
-RDEPENDS_perl-module-memoize-sdbm-file += "perl-module-sdbm-file"
-RDEPENDS_perl-module-memoize-storable += "perl-module-storable"
-RDEPENDS_perl-module-mime-base64 += "perl-module-exporter"
-RDEPENDS_perl-module-mime-base64 += "perl-module-strict"
-RDEPENDS_perl-module-mime-base64 += "perl-module-vars"
-RDEPENDS_perl-module-mime-base64 += "perl-module-xsloader"
-RDEPENDS_perl-module-mime-quotedprint += "perl-module-exporter"
-RDEPENDS_perl-module-mime-quotedprint += "perl-module-mime-base64"
-RDEPENDS_perl-module-mime-quotedprint += "perl-module-strict"
-RDEPENDS_perl-module-mime-quotedprint += "perl-module-vars"
-RDEPENDS_perl-module-mro += "perl-module-strict"
-RDEPENDS_perl-module-mro += "perl-module-warnings"
-RDEPENDS_perl-module-mro += "perl-module-xsloader"
-RDEPENDS_perl-module-net-cmd += "perl-module-constant"
-RDEPENDS_perl-module-net-cmd += "perl-module-errno"
-RDEPENDS_perl-module-net-cmd += "perl-module-exporter"
-RDEPENDS_perl-module-net-cmd += "perl-module-strict"
-RDEPENDS_perl-module-net-cmd += "perl-module-warnings"
-RDEPENDS_perl-module-net-config += "perl-module-exporter"
-RDEPENDS_perl-module-net-config += "perl-module-socket"
-RDEPENDS_perl-module-net-config += "perl-module-strict"
-RDEPENDS_perl-module-net-config += "perl-module-warnings"
-RDEPENDS_perl-module-net-domain += "perl-module-exporter"
-RDEPENDS_perl-module-net-domain += "perl-module-net-config"
-RDEPENDS_perl-module-net-domain += "perl-module-posix"
-RDEPENDS_perl-module-net-domain += "perl-module-socket"
-RDEPENDS_perl-module-net-domain += "perl-module-strict"
-RDEPENDS_perl-module-net-domain += "perl-module-warnings"
-RDEPENDS_perl-module-net-ftp-a += "perl-module-net-ftp-dataconn"
-RDEPENDS_perl-module-net-ftp-a += "perl-module-strict"
-RDEPENDS_perl-module-net-ftp-a += "perl-module-warnings"
-RDEPENDS_perl-module-net-ftp-dataconn += "perl-module-errno"
-RDEPENDS_perl-module-net-ftp-dataconn += "perl-module-net-cmd"
-RDEPENDS_perl-module-net-ftp-dataconn += "perl-module-strict"
-RDEPENDS_perl-module-net-ftp-dataconn += "perl-module-warnings"
-RDEPENDS_perl-module-net-ftp-e += "perl-module-net-ftp-i"
-RDEPENDS_perl-module-net-ftp-e += "perl-module-strict"
-RDEPENDS_perl-module-net-ftp-e += "perl-module-warnings"
-RDEPENDS_perl-module-net-ftp-i += "perl-module-net-ftp-dataconn"
-RDEPENDS_perl-module-net-ftp-i += "perl-module-strict"
-RDEPENDS_perl-module-net-ftp-i += "perl-module-warnings"
-RDEPENDS_perl-module-net-ftp-l += "perl-module-net-ftp-i"
-RDEPENDS_perl-module-net-ftp-l += "perl-module-strict"
-RDEPENDS_perl-module-net-ftp-l += "perl-module-warnings"
-RDEPENDS_perl-module-net-ftp += "perl-module-constant"
-RDEPENDS_perl-module-net-ftp += "perl-module-fcntl"
-RDEPENDS_perl-module-net-ftp += "perl-module-file-basename"
-RDEPENDS_perl-module-net-ftp += "perl-module-io-socket"
-RDEPENDS_perl-module-net-ftp += "perl-module-io-socket-ip"
-RDEPENDS_perl-module-net-ftp += "perl-module-net-cmd"
-RDEPENDS_perl-module-net-ftp += "perl-module-net-config"
-RDEPENDS_perl-module-net-ftp += "perl-module-net-ftp-a"
-RDEPENDS_perl-module-net-ftp += "perl-module-net-netrc"
-RDEPENDS_perl-module-net-ftp += "perl-module-socket"
-RDEPENDS_perl-module-net-ftp += "perl-module-strict"
-RDEPENDS_perl-module-net-ftp += "perl-module-time-local"
-RDEPENDS_perl-module-net-ftp += "perl-module-warnings"
-RDEPENDS_perl-module-net-hostent += "perl-module-class-struct"
-RDEPENDS_perl-module-net-hostent += "perl-module-exporter"
-RDEPENDS_perl-module-net-hostent += "perl-module-socket"
-RDEPENDS_perl-module-net-hostent += "perl-module-strict"
-RDEPENDS_perl-module-net-netent += "perl-module-class-struct"
-RDEPENDS_perl-module-net-netent += "perl-module-exporter"
-RDEPENDS_perl-module-net-netent += "perl-module-socket"
-RDEPENDS_perl-module-net-netent += "perl-module-strict"
-RDEPENDS_perl-module-net-netrc += "perl-module-filehandle"
-RDEPENDS_perl-module-net-netrc += "perl-module-strict"
-RDEPENDS_perl-module-net-netrc += "perl-module-warnings"
-RDEPENDS_perl-module-net-nntp += "perl-module-io-socket"
-RDEPENDS_perl-module-net-nntp += "perl-module-io-socket-ip"
-RDEPENDS_perl-module-net-nntp += "perl-module-net-cmd"
-RDEPENDS_perl-module-net-nntp += "perl-module-net-config"
-RDEPENDS_perl-module-net-nntp += "perl-module-strict"
-RDEPENDS_perl-module-net-nntp += "perl-module-time-local"
-RDEPENDS_perl-module-net-nntp += "perl-module-warnings"
-RDEPENDS_perl-module-net-ping += "perl-module-constant"
-RDEPENDS_perl-module-net-ping += "perl-module-exporter"
-RDEPENDS_perl-module-net-ping += "perl-module-fcntl"
-RDEPENDS_perl-module-net-ping += "perl-module-filehandle"
-RDEPENDS_perl-module-net-ping += "perl-module-io-socket-inet"
-RDEPENDS_perl-module-net-ping += "perl-module-posix"
-RDEPENDS_perl-module-net-ping += "perl-module-socket"
-RDEPENDS_perl-module-net-ping += "perl-module-strict"
-RDEPENDS_perl-module-net-ping += "perl-module-time-hires"
-RDEPENDS_perl-module-net-pop3 += "perl-module-io-socket"
-RDEPENDS_perl-module-net-pop3 += "perl-module-io-socket-ip"
-RDEPENDS_perl-module-net-pop3 += "perl-module-mime-base64"
-RDEPENDS_perl-module-net-pop3 += "perl-module-net-cmd"
-RDEPENDS_perl-module-net-pop3 += "perl-module-net-config"
-RDEPENDS_perl-module-net-pop3 += "perl-module-net-netrc"
-RDEPENDS_perl-module-net-pop3 += "perl-module-strict"
-RDEPENDS_perl-module-net-pop3 += "perl-module-warnings"
-RDEPENDS_perl-module-net-protoent += "perl-module-class-struct"
-RDEPENDS_perl-module-net-protoent += "perl-module-exporter"
-RDEPENDS_perl-module-net-protoent += "perl-module-strict"
-RDEPENDS_perl-module-net-servent += "perl-module-class-struct"
-RDEPENDS_perl-module-net-servent += "perl-module-exporter"
-RDEPENDS_perl-module-net-servent += "perl-module-strict"
-RDEPENDS_perl-module-net-smtp += "perl-module-io-socket"
-RDEPENDS_perl-module-net-smtp += "perl-module-io-socket-ip"
-RDEPENDS_perl-module-net-smtp += "perl-module-mime-base64"
-RDEPENDS_perl-module-net-smtp += "perl-module-net-cmd"
-RDEPENDS_perl-module-net-smtp += "perl-module-net-config"
-RDEPENDS_perl-module-net-smtp += "perl-module-socket"
-RDEPENDS_perl-module-net-smtp += "perl-module-strict"
-RDEPENDS_perl-module-net-smtp += "perl-module-warnings"
-RDEPENDS_perl-module-net-time += "perl-module-exporter"
-RDEPENDS_perl-module-net-time += "perl-module-io-select"
-RDEPENDS_perl-module-net-time += "perl-module-io-socket"
-RDEPENDS_perl-module-net-time += "perl-module-net-config"
-RDEPENDS_perl-module-net-time += "perl-module-strict"
-RDEPENDS_perl-module-net-time += "perl-module-warnings"
-RDEPENDS_perl-module-next += "perl-module-overload"
-RDEPENDS_perl-module-next += "perl-module-strict"
-RDEPENDS_perl-module-next += "perl-module-warnings"
-RDEPENDS_perl-module-ok += "perl-module-strict"
-RDEPENDS_perl-module-ok += "perl-module-test-more"
-RDEPENDS_perl-module-opcode += "perl-module-exporter"
-RDEPENDS_perl-module-opcode += "perl-module-strict"
-RDEPENDS_perl-module-opcode += "perl-module-subs"
-RDEPENDS_perl-module-opcode += "perl-module-xsloader"
-RDEPENDS_perl-module-open += "perl-module-encode"
-RDEPENDS_perl-module-open += "perl-module-encoding"
-RDEPENDS_perl-module-open += "perl-module-warnings"
-RDEPENDS_perl-module-o += "perl-module-b"
-RDEPENDS_perl-module-ops += "perl-module-opcode"
-RDEPENDS_perl-module-overloading += "perl-module-overload-numbers"
-RDEPENDS_perl-module-overloading += "perl-module-warnings"
-RDEPENDS_perl-module-overload += "perl-module-mro"
-RDEPENDS_perl-module-overload += "perl-module-warnings-register"
-RDEPENDS_perl-module-overload += "perl-module-overloading"
-RDEPENDS_perl-module-params-check += "perl-module-exporter"
-RDEPENDS_perl-module-params-check += "perl-module-locale-maketext-simple"
-RDEPENDS_perl-module-params-check += "perl-module-strict"
-RDEPENDS_perl-module-params-check += "perl-module-vars"
-RDEPENDS_perl-module-parent += "perl-module-strict"
-RDEPENDS_perl-module-parent += "perl-module-vars"
-RDEPENDS_perl-module-perlfaq += "perl-module-strict"
-RDEPENDS_perl-module-perlfaq += "perl-module-warnings"
-RDEPENDS_perl-module-perlio-encoding += "perl-module-strict"
-RDEPENDS_perl-module-perlio-encoding += "perl-module-xsloader"
-RDEPENDS_perl-module-perlio-mmap += "perl-module-strict"
-RDEPENDS_perl-module-perlio-mmap += "perl-module-warnings"
-RDEPENDS_perl-module-perlio-mmap += "perl-module-xsloader"
-RDEPENDS_perl-module-perlio-scalar += "perl-module-xsloader"
-RDEPENDS_perl-module-perlio-via += "perl-module-xsloader"
-RDEPENDS_perl-module-perlio-via-quotedprint += "perl-module-mime-quotedprint"
-RDEPENDS_perl-module-perlio-via-quotedprint += "perl-module-strict"
-RDEPENDS_perl-module-pod-checker += "perl-module-base"
-RDEPENDS_perl-module-pod-checker += "perl-module-exporter"
-RDEPENDS_perl-module-pod-checker += "perl-module-strict"
-RDEPENDS_perl-module-pod-checker += "perl-module-warnings"
-RDEPENDS_perl-module-pod-escapes += "perl-module-exporter"
-RDEPENDS_perl-module-pod-escapes += "perl-module-strict"
-RDEPENDS_perl-module-pod-escapes += "perl-module-vars"
-RDEPENDS_perl-module-pod-escapes += "perl-module-warnings"
-RDEPENDS_perl-module-pod-find += "perl-module-config"
-RDEPENDS_perl-module-pod-find += "perl-module-cwd"
-RDEPENDS_perl-module-pod-find += "perl-module-exporter"
-RDEPENDS_perl-module-pod-find += "perl-module-file-find"
-RDEPENDS_perl-module-pod-find += "perl-module-strict"
-RDEPENDS_perl-module-pod-find += "perl-module-vars"
-RDEPENDS_perl-module-pod-functions += "perl-module-exporter"
-RDEPENDS_perl-module-pod-functions += "perl-module-strict"
-RDEPENDS_perl-module-pod-inputobjects += "perl-module-strict"
-RDEPENDS_perl-module-pod-inputobjects += "perl-module-vars"
-RDEPENDS_perl-module-pod-man += "perl-module-file-basename"
-RDEPENDS_perl-module-pod-man += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-man += "perl-module-strict"
-RDEPENDS_perl-module-pod-man += "perl-module-subs"
-RDEPENDS_perl-module-pod-man += "perl-module-vars"
-RDEPENDS_perl-module-pod-man += "perl-module-warnings"
-RDEPENDS_perl-module-pod-parselink += "perl-module-exporter"
-RDEPENDS_perl-module-pod-parselink += "perl-module-strict"
-RDEPENDS_perl-module-pod-parselink += "perl-module-vars"
-RDEPENDS_perl-module-pod-parselink += "perl-module-warnings"
-RDEPENDS_perl-module-pod-parser += "perl-module-exporter"
-RDEPENDS_perl-module-pod-parser += "perl-module-pod-inputobjects"
-RDEPENDS_perl-module-pod-parser += "perl-module-strict"
-RDEPENDS_perl-module-pod-parser += "perl-module-vars"
-RDEPENDS_perl-module-pod-parseutils += "perl-module-strict"
-RDEPENDS_perl-module-pod-parseutils += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-baseto += "perl-module-config"
-RDEPENDS_perl-module-pod-perldoc-baseto += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-baseto += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-baseto += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-getoptsoo += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-getoptsoo += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-config"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-encode"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-fcntl"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-file-basename"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-file-temp"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-pod-perldoc-getoptsoo"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-text-parsewords"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-toansi += "perl-module-parent"
-RDEPENDS_perl-module-pod-perldoc-toansi += "perl-module-pod-text-color"
-RDEPENDS_perl-module-pod-perldoc-toansi += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-toansi += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-toansi += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-tochecker += "perl-module-pod-checker"
-RDEPENDS_perl-module-pod-perldoc-tochecker += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-tochecker += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-tochecker += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-encode"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-io-handle"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-io-select"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-ipc-open3"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-parent"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-pod-man"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-pod-perldoc-topod"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-tonroff += "perl-module-parent"
-RDEPENDS_perl-module-pod-perldoc-tonroff += "perl-module-pod-man"
-RDEPENDS_perl-module-pod-perldoc-tonroff += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-tonroff += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-tonroff += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-topod += "perl-module-parent"
-RDEPENDS_perl-module-pod-perldoc-topod += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-topod += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-topod += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-tortf += "perl-module-parent"
-RDEPENDS_perl-module-pod-perldoc-tortf += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-tortf += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-tortf += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-toterm += "perl-module-parent"
-RDEPENDS_perl-module-pod-perldoc-toterm += "perl-module-pod-text-termcap"
-RDEPENDS_perl-module-pod-perldoc-toterm += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-toterm += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-toterm += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-totext += "perl-module-parent"
-RDEPENDS_perl-module-pod-perldoc-totext += "perl-module-pod-text"
-RDEPENDS_perl-module-pod-perldoc-totext += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-totext += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-totext += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-toxml += "perl-module-parent"
-RDEPENDS_perl-module-pod-perldoc-toxml += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-toxml += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-toxml += "perl-module-warnings"
-RDEPENDS_perl-module-pod-plaintext += "perl-module-pod-select"
-RDEPENDS_perl-module-pod-plaintext += "perl-module-strict"
-RDEPENDS_perl-module-pod-plaintext += "perl-module-vars"
-RDEPENDS_perl-module-pod-select += "perl-module-pod-parser"
-RDEPENDS_perl-module-pod-select += "perl-module-strict"
-RDEPENDS_perl-module-pod-select += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-blackbox += "perl-module-integer"
-RDEPENDS_perl-module-pod-simple-blackbox += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-blackbox += "perl-module-pod-simple-transcode"
-RDEPENDS_perl-module-pod-simple-blackbox += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-blackbox += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-checker += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-checker += "perl-module-pod-simple-methody"
-RDEPENDS_perl-module-pod-simple-checker += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-checker += "perl-module-text-wrap"
-RDEPENDS_perl-module-pod-simple-checker += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-debug += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-debug += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-debug += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-dumpastext += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-dumpastext += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-dumpasxml += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-dumpasxml += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-dumpasxml += "perl-module-text-wrap"
-RDEPENDS_perl-module-pod-simple-linksection += "perl-module-overload"
-RDEPENDS_perl-module-pod-simple-linksection += "perl-module-pod-simple-blackbox"
-RDEPENDS_perl-module-pod-simple-linksection += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-linksection += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-methody += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-methody += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-methody += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple += "perl-module-integer"
-RDEPENDS_perl-module-pod-simple += "perl-module-pod-escapes"
-RDEPENDS_perl-module-pod-simple += "perl-module-pod-simple-blackbox"
-RDEPENDS_perl-module-pod-simple += "perl-module-pod-simple-linksection"
-RDEPENDS_perl-module-pod-simple += "perl-module-pod-simple-tiedoutfh"
-RDEPENDS_perl-module-pod-simple += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-progress += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-pullparserendtoken += "perl-module-pod-simple-pullparsertoken"
-RDEPENDS_perl-module-pod-simple-pullparserendtoken += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-pullparserendtoken += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-pullparser += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-pullparser += "perl-module-pod-simple-pullparserendtoken"
-RDEPENDS_perl-module-pod-simple-pullparser += "perl-module-pod-simple-pullparserstarttoken"
-RDEPENDS_perl-module-pod-simple-pullparser += "perl-module-pod-simple-pullparsertexttoken"
-RDEPENDS_perl-module-pod-simple-pullparser += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-pullparserstarttoken += "perl-module-pod-simple-pullparsertoken"
-RDEPENDS_perl-module-pod-simple-pullparserstarttoken += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-pullparserstarttoken += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-pullparsertexttoken += "perl-module-pod-simple-pullparsertoken"
-RDEPENDS_perl-module-pod-simple-pullparsertexttoken += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-pullparsertexttoken += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-pullparsertoken += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-rtf += "perl-module-integer"
-RDEPENDS_perl-module-pod-simple-rtf += "perl-module-pod-simple-pullparser"
-RDEPENDS_perl-module-pod-simple-rtf += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-rtf += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-search += "perl-module-config"
-RDEPENDS_perl-module-pod-simple-search += "perl-module-cwd"
-RDEPENDS_perl-module-pod-simple-search += "perl-module-file-basename"
-RDEPENDS_perl-module-pod-simple-search += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-search += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-simpletree += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-simpletree += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-simpletree += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-textcontent += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-textcontent += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-textcontent += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-text += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-text += "perl-module-pod-simple-methody"
-RDEPENDS_perl-module-pod-simple-text += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-text += "perl-module-text-wrap"
-RDEPENDS_perl-module-pod-simple-text += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-tiedoutfh += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-tiedoutfh += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-transcodedumb += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-transcodedumb += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-transcode += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-transcode += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-transcodesmart += "perl-module-encode"
-RDEPENDS_perl-module-pod-simple-transcodesmart += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-transcodesmart += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-transcodesmart += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-xmloutstream += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-xmloutstream += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-xmloutstream += "perl-module-vars"
-RDEPENDS_perl-module-pod-text-color += "perl-module-pod-text"
-RDEPENDS_perl-module-pod-text-color += "perl-module-strict"
-RDEPENDS_perl-module-pod-text-color += "perl-module-term-ansicolor"
-RDEPENDS_perl-module-pod-text-color += "perl-module-vars"
-RDEPENDS_perl-module-pod-text-color += "perl-module-warnings"
-RDEPENDS_perl-module-pod-text-overstrike += "perl-module-pod-text"
-RDEPENDS_perl-module-pod-text-overstrike += "perl-module-strict"
-RDEPENDS_perl-module-pod-text-overstrike += "perl-module-vars"
-RDEPENDS_perl-module-pod-text-overstrike += "perl-module-warnings"
-RDEPENDS_perl-module-pod-text += "perl-module-encode"
-RDEPENDS_perl-module-pod-text += "perl-module-exporter"
-RDEPENDS_perl-module-pod-text += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-text += "perl-module-strict"
-RDEPENDS_perl-module-pod-text += "perl-module-vars"
-RDEPENDS_perl-module-pod-text += "perl-module-warnings"
-RDEPENDS_perl-module-pod-text-termcap += "perl-module-pod-text"
-RDEPENDS_perl-module-pod-text-termcap += "perl-module-posix"
-RDEPENDS_perl-module-pod-text-termcap += "perl-module-strict"
-RDEPENDS_perl-module-pod-text-termcap += "perl-module-term-cap"
-RDEPENDS_perl-module-pod-text-termcap += "perl-module-vars"
-RDEPENDS_perl-module-pod-text-termcap += "perl-module-warnings"
-RDEPENDS_perl-module-pod-usage += "perl-module-config"
-RDEPENDS_perl-module-pod-usage += "perl-module-exporter"
-RDEPENDS_perl-module-pod-usage += "perl-module-strict"
-RDEPENDS_perl-module-pod-usage += "perl-module-vars"
-RDEPENDS_perl-module-posix += "perl-module-exporter"
-RDEPENDS_perl-module-posix += "perl-module-fcntl"
-RDEPENDS_perl-module-posix += "perl-module-strict"
-RDEPENDS_perl-module-posix += "perl-module-tie-hash"
-RDEPENDS_perl-module-posix += "perl-module-warnings"
-RDEPENDS_perl-module-posix += "perl-module-xsloader"
-RDEPENDS_perl-module-re += "perl-module-exporter"
-RDEPENDS_perl-module-re += "perl-module-strict"
-RDEPENDS_perl-module-re += "perl-module-term-cap"
-RDEPENDS_perl-module-re += "perl-module-warnings"
-RDEPENDS_perl-module-re += "perl-module-xsloader"
-RDEPENDS_perl-module-safe += "perl-module-b"
-RDEPENDS_perl-module-safe += "perl-module-opcode"
-RDEPENDS_perl-module-safe += "perl-module-strict"
-RDEPENDS_perl-module-safe += "perl-module-utf8"
-RDEPENDS_perl-module-scalar-util += "perl-module-carp"
-RDEPENDS_perl-module-scalar-util += "perl-module-exporter"
-RDEPENDS_perl-module-scalar-util += "perl-module-list-util"
-RDEPENDS_perl-module-scalar-util += "perl-module-strict"
-RDEPENDS_perl-module-scalar-util += "perl-module-warnings"
-RDEPENDS_perl-module-sdbm-file += "perl-module-exporter"
-RDEPENDS_perl-module-sdbm-file += "perl-module-strict"
-RDEPENDS_perl-module-sdbm-file += "perl-module-tie-hash"
-RDEPENDS_perl-module-sdbm-file += "perl-module-warnings"
-RDEPENDS_perl-module-sdbm-file += "perl-module-xsloader"
-RDEPENDS_perl-module-search-dict += "perl-module-exporter"
-RDEPENDS_perl-module-search-dict += "perl-module-feature"
-RDEPENDS_perl-module-search-dict += "perl-module-strict"
-RDEPENDS_perl-module-selfloader += "perl-module-exporter"
-RDEPENDS_perl-module-selfloader += "perl-module-io-handle"
-RDEPENDS_perl-module-selfloader += "perl-module-strict"
-RDEPENDS_perl-module-socket += "perl-module-exporter"
-RDEPENDS_perl-module-socket += "perl-module-strict"
-RDEPENDS_perl-module-socket += "perl-module-warnings-register"
-RDEPENDS_perl-module-socket += "perl-module-xsloader"
-RDEPENDS_perl-module-sort += "perl-module-strict"
-RDEPENDS_perl-module-storable += "perl-module-exporter"
-RDEPENDS_perl-module-storable += "perl-module-io-file"
-RDEPENDS_perl-module-storable += "perl-module-xsloader"
-RDEPENDS_perl-module-sub-util += "perl-module-exporter"
-RDEPENDS_perl-module-sub-util += "perl-module-list-util"
-RDEPENDS_perl-module-sub-util += "perl-module-strict"
-RDEPENDS_perl-module-sub-util += "perl-module-warnings"
-RDEPENDS_perl-module-sys-hostname += "perl-module-exporter"
-RDEPENDS_perl-module-sys-hostname += "perl-module-posix"
-RDEPENDS_perl-module-sys-hostname += "perl-module-strict"
-RDEPENDS_perl-module-sys-hostname += "perl-module-warnings"
-RDEPENDS_perl-module-sys-hostname += "perl-module-xsloader"
-RDEPENDS_perl-module-sys-syslog += "perl-module-config"
-RDEPENDS_perl-module-sys-syslog += "perl-module-constant"
-RDEPENDS_perl-module-sys-syslog += "perl-module-dynaloader"
-RDEPENDS_perl-module-sys-syslog += "perl-module-exporter"
-RDEPENDS_perl-module-sys-syslog += "perl-module-fcntl"
-RDEPENDS_perl-module-sys-syslog += "perl-module-file-basename"
-RDEPENDS_perl-module-sys-syslog += "perl-module-posix"
-RDEPENDS_perl-module-sys-syslog += "perl-module-socket"
-RDEPENDS_perl-module-sys-syslog += "perl-module-strict"
-RDEPENDS_perl-module-sys-syslog += "perl-module-sys-hostname"
-RDEPENDS_perl-module-sys-syslog += "perl-module-vars"
-RDEPENDS_perl-module-sys-syslog += "perl-module-warnings"
-RDEPENDS_perl-module-sys-syslog += "perl-module-warnings-register"
-RDEPENDS_perl-module-sys-syslog += "perl-module-xsloader"
-RDEPENDS_perl-module-tap-base += "perl-module-base"
-RDEPENDS_perl-module-tap-base += "perl-module-constant"
-RDEPENDS_perl-module-tap-base += "perl-module-strict"
-RDEPENDS_perl-module-tap-base += "perl-module-tap-object"
-RDEPENDS_perl-module-tap-base += "perl-module-warnings"
-RDEPENDS_perl-module-tap-formatter-base += "perl-module-base"
-RDEPENDS_perl-module-tap-formatter-base += "perl-module-posix"
-RDEPENDS_perl-module-tap-formatter-base += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-base += "perl-module-tap-formatter-color"
-RDEPENDS_perl-module-tap-formatter-base += "perl-module-warnings"
-RDEPENDS_perl-module-tap-formatter-color += "perl-module-base"
-RDEPENDS_perl-module-tap-formatter-color += "perl-module-constant"
-RDEPENDS_perl-module-tap-formatter-color += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-color += "perl-module-warnings"
-RDEPENDS_perl-module-tap-formatter-console-parallelsession += "perl-module-base"
-RDEPENDS_perl-module-tap-formatter-console-parallelsession += "perl-module-constant"
-RDEPENDS_perl-module-tap-formatter-console-parallelsession += "perl-module-file-path"
-RDEPENDS_perl-module-tap-formatter-console-parallelsession += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-console-parallelsession += "perl-module-warnings"
-RDEPENDS_perl-module-tap-formatter-console += "perl-module-base"
-RDEPENDS_perl-module-tap-formatter-console += "perl-module-posix"
-RDEPENDS_perl-module-tap-formatter-console += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-console += "perl-module-warnings"
-RDEPENDS_perl-module-tap-formatter-console-session += "perl-module-base"
-RDEPENDS_perl-module-tap-formatter-console-session += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-console-session += "perl-module-warnings"
-RDEPENDS_perl-module-tap-formatter-file += "perl-module-base"
-RDEPENDS_perl-module-tap-formatter-file += "perl-module-posix"
-RDEPENDS_perl-module-tap-formatter-file += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-file += "perl-module-tap-formatter-file-session"
-RDEPENDS_perl-module-tap-formatter-file += "perl-module-warnings"
-RDEPENDS_perl-module-tap-formatter-file-session += "perl-module-base"
-RDEPENDS_perl-module-tap-formatter-file-session += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-file-session += "perl-module-warnings"
-RDEPENDS_perl-module-tap-formatter-session += "perl-module-base"
-RDEPENDS_perl-module-tap-formatter-session += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-session += "perl-module-warnings"
-RDEPENDS_perl-module-tap-harness-env += "perl-module-constant"
-RDEPENDS_perl-module-tap-harness-env += "perl-module-strict"
-RDEPENDS_perl-module-tap-harness-env += "perl-module-tap-object"
-RDEPENDS_perl-module-tap-harness-env += "perl-module-text-parsewords"
-RDEPENDS_perl-module-tap-harness-env += "perl-module-warnings"
-RDEPENDS_perl-module-tap-harness += "perl-module-base"
-RDEPENDS_perl-module-tap-harness += "perl-module-carp"
-RDEPENDS_perl-module-tap-harness += "perl-module-file-path"
-RDEPENDS_perl-module-tap-harness += "perl-module-file-spec"
-RDEPENDS_perl-module-tap-harness += "perl-module-io-handle"
-RDEPENDS_perl-module-tap-harness += "perl-module-strict"
-RDEPENDS_perl-module-tap-harness += "perl-module-tap-base"
-RDEPENDS_perl-module-tap-harness += "perl-module-warnings"
-RDEPENDS_perl-module-tap-object += "perl-module-strict"
-RDEPENDS_perl-module-tap-object += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-aggregator += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-aggregator += "perl-module-benchmark"
-RDEPENDS_perl-module-tap-parser-aggregator += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-aggregator += "perl-module-tap-object"
-RDEPENDS_perl-module-tap-parser-aggregator += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-grammar += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-grammar += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-grammar += "perl-module-tap-object"
-RDEPENDS_perl-module-tap-parser-grammar += "perl-module-tap-parser-resultfactory"
-RDEPENDS_perl-module-tap-parser-grammar += "perl-module-tap-parser-yamlish-reader"
-RDEPENDS_perl-module-tap-parser-grammar += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-iterator-array += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-iterator-array += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-iterator-array += "perl-module-tap-parser-iterator"
-RDEPENDS_perl-module-tap-parser-iterator-array += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-iteratorfactory += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-iteratorfactory += "perl-module-carp"
-RDEPENDS_perl-module-tap-parser-iteratorfactory += "perl-module-constant"
-RDEPENDS_perl-module-tap-parser-iteratorfactory += "perl-module-file-basename"
-RDEPENDS_perl-module-tap-parser-iteratorfactory += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-iteratorfactory += "perl-module-tap-object"
-RDEPENDS_perl-module-tap-parser-iteratorfactory += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-iterator += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-iterator += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-iterator += "perl-module-tap-object"
-RDEPENDS_perl-module-tap-parser-iterator += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-iterator-process += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-iterator-process += "perl-module-config"
-RDEPENDS_perl-module-tap-parser-iterator-process += "perl-module-io-handle"
-RDEPENDS_perl-module-tap-parser-iterator-process += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-iterator-process += "perl-module-tap-parser-iterator"
-RDEPENDS_perl-module-tap-parser-iterator-process += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-iterator-stream += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-iterator-stream += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-iterator-stream += "perl-module-tap-parser-iterator"
-RDEPENDS_perl-module-tap-parser-iterator-stream += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-multiplexer += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-multiplexer += "perl-module-constant"
-RDEPENDS_perl-module-tap-parser-multiplexer += "perl-module-io-select"
-RDEPENDS_perl-module-tap-parser-multiplexer += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-multiplexer += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser += "perl-module-base"
-RDEPENDS_perl-module-tap-parser += "perl-module-carp"
-RDEPENDS_perl-module-tap-parser += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-grammar"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-iterator"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-iteratorfactory"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-result"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-resultfactory"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-source"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-sourcehandler-executable"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-sourcehandler-file"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-sourcehandler-handle"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-sourcehandler-perl"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-sourcehandler-rawtap"
-RDEPENDS_perl-module-tap-parser += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result-bailout += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result-bailout += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result-bailout += "perl-module-tap-parser-result"
-RDEPENDS_perl-module-tap-parser-result-bailout += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result-comment += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result-comment += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result-comment += "perl-module-tap-parser-result"
-RDEPENDS_perl-module-tap-parser-result-comment += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-object"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-bailout"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-comment"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-plan"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-pragma"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-test"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-unknown"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-version"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-yaml"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result += "perl-module-tap-object"
-RDEPENDS_perl-module-tap-parser-result += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result-plan += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result-plan += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result-plan += "perl-module-tap-parser-result"
-RDEPENDS_perl-module-tap-parser-result-plan += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result-pragma += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result-pragma += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result-pragma += "perl-module-tap-parser-result"
-RDEPENDS_perl-module-tap-parser-result-pragma += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result-test += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result-test += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result-test += "perl-module-tap-parser-result"
-RDEPENDS_perl-module-tap-parser-result-test += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result-unknown += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result-unknown += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result-unknown += "perl-module-tap-parser-result"
-RDEPENDS_perl-module-tap-parser-result-unknown += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result-version += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result-version += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result-version += "perl-module-tap-parser-result"
-RDEPENDS_perl-module-tap-parser-result-version += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result-yaml += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result-yaml += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result-yaml += "perl-module-tap-parser-result"
-RDEPENDS_perl-module-tap-parser-result-yaml += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-scheduler-job += "perl-module-carp"
-RDEPENDS_perl-module-tap-parser-scheduler-job += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-scheduler-job += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-scheduler += "perl-module-carp"
-RDEPENDS_perl-module-tap-parser-scheduler += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-scheduler += "perl-module-tap-parser-scheduler-job"
-RDEPENDS_perl-module-tap-parser-scheduler += "perl-module-tap-parser-scheduler-spinner"
-RDEPENDS_perl-module-tap-parser-scheduler += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-scheduler-spinner += "perl-module-carp"
-RDEPENDS_perl-module-tap-parser-scheduler-spinner += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-scheduler-spinner += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-sourcehandler-executable += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-sourcehandler-executable += "perl-module-constant"
-RDEPENDS_perl-module-tap-parser-sourcehandler-executable += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-sourcehandler-executable += "perl-module-tap-parser-iteratorfactory"
-RDEPENDS_perl-module-tap-parser-sourcehandler-executable += "perl-module-tap-parser-iterator-process"
-RDEPENDS_perl-module-tap-parser-sourcehandler-executable += "perl-module-tap-parser-sourcehandler"
-RDEPENDS_perl-module-tap-parser-sourcehandler-executable += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-sourcehandler-file += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-sourcehandler-file += "perl-module-constant"
-RDEPENDS_perl-module-tap-parser-sourcehandler-file += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-sourcehandler-file += "perl-module-tap-parser-iteratorfactory"
-RDEPENDS_perl-module-tap-parser-sourcehandler-file += "perl-module-tap-parser-iterator-stream"
-RDEPENDS_perl-module-tap-parser-sourcehandler-file += "perl-module-tap-parser-sourcehandler"
-RDEPENDS_perl-module-tap-parser-sourcehandler-file += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-sourcehandler-handle += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-sourcehandler-handle += "perl-module-constant"
-RDEPENDS_perl-module-tap-parser-sourcehandler-handle += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-sourcehandler-handle += "perl-module-tap-parser-iteratorfactory"
-RDEPENDS_perl-module-tap-parser-sourcehandler-handle += "perl-module-tap-parser-iterator-stream"
-RDEPENDS_perl-module-tap-parser-sourcehandler-handle += "perl-module-tap-parser-sourcehandler"
-RDEPENDS_perl-module-tap-parser-sourcehandler-handle += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-sourcehandler += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-sourcehandler += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-sourcehandler += "perl-module-tap-parser-iterator"
-RDEPENDS_perl-module-tap-parser-sourcehandler += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-config"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-constant"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-tap-parser-iteratorfactory"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-tap-parser-iterator-process"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-tap-parser-sourcehandler-executable"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-text-parsewords"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-sourcehandler-rawtap += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-sourcehandler-rawtap += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-sourcehandler-rawtap += "perl-module-tap-parser-iterator-array"
-RDEPENDS_perl-module-tap-parser-sourcehandler-rawtap += "perl-module-tap-parser-iteratorfactory"
-RDEPENDS_perl-module-tap-parser-sourcehandler-rawtap += "perl-module-tap-parser-sourcehandler"
-RDEPENDS_perl-module-tap-parser-sourcehandler-rawtap += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-source += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-source += "perl-module-constant"
-RDEPENDS_perl-module-tap-parser-source += "perl-module-file-basename"
-RDEPENDS_perl-module-tap-parser-source += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-source += "perl-module-tap-object"
-RDEPENDS_perl-module-tap-parser-source += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-yamlish-reader += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-yamlish-reader += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-yamlish-reader += "perl-module-tap-object"
-RDEPENDS_perl-module-tap-parser-yamlish-reader += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-yamlish-writer += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-yamlish-writer += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-yamlish-writer += "perl-module-tap-object"
-RDEPENDS_perl-module-tap-parser-yamlish-writer += "perl-module-warnings"
-RDEPENDS_perl-module-term-ansicolor += "perl-module-exporter"
-RDEPENDS_perl-module-term-ansicolor += "perl-module-strict"
-RDEPENDS_perl-module-term-ansicolor += "perl-module-warnings"
-RDEPENDS_perl-module-term-cap += "perl-module-strict"
-RDEPENDS_perl-module-term-cap += "perl-module-vars"
-RDEPENDS_perl-module-term-complete += "perl-module-exporter"
-RDEPENDS_perl-module-term-complete += "perl-module-strict"
-RDEPENDS_perl-module-term-readline += "perl-module-strict"
-RDEPENDS_perl-module-term-readline += "perl-module-term-cap"
-RDEPENDS_perl-module-test-builder-formatter += "perl-module-strict"
-RDEPENDS_perl-module-test-builder-formatter += "perl-module-warnings"
-RDEPENDS_perl-module-test-builder-module += "perl-module-exporter"
-RDEPENDS_perl-module-test-builder-module += "perl-module-strict"
-RDEPENDS_perl-module-test-builder-module += "perl-module-test-builder"
-RDEPENDS_perl-module-test-builder += "perl-module-data-dumper"
-RDEPENDS_perl-module-test-builder += "perl-module-list-util"
-RDEPENDS_perl-module-test-builder += "perl-module-overload"
-RDEPENDS_perl-module-test-builder += "perl-module-strict"
-RDEPENDS_perl-module-test-builder += "perl-module-scalar-util"
-RDEPENDS_perl-module-test-builder += "perl-module-test-builder-formatter"
-RDEPENDS_perl-module-test-builder += "perl-module-test-builder-tododiag"
-RDEPENDS_perl-module-test-builder += "perl-module-test2-api"
-RDEPENDS_perl-module-test-builder += "perl-module-test2-util"
-RDEPENDS_perl-module-test-builder += "perl-module-warnings"
-RDEPENDS_perl-module-test-builder-formatter += "perl-module-strict"
-RDEPENDS_perl-module-test-builder-formatter += "perl-module-test2-formatter"
-RDEPENDS_perl-module-test-builder-formatter += "perl-module-test2-formatter-tap"
-RDEPENDS_perl-module-test-builder-formatter += "perl-module-test2-util-hashbase"
-RDEPENDS_perl-module-test-builder-formatter += "perl-module-warnings"
-RDEPENDS_perl-module-test-builder-tester-color += "perl-module-strict"
-RDEPENDS_perl-module-test-builder-tester-color += "perl-module-test-builder-tester"
-RDEPENDS_perl-module-test-builder-tester += "perl-module-exporter"
-RDEPENDS_perl-module-test-builder-tester += "perl-module-strict"
-RDEPENDS_perl-module-test-builder-tester += "perl-module-test-builder"
-RDEPENDS_perl-module-test-builder-tododiag += "perl-module-strict"
-RDEPENDS_perl-module-test-builder-tododiag += "perl-module-warnings"
-RDEPENDS_perl-module-test-harness += "perl-module-base"
-RDEPENDS_perl-module-test-harness += "perl-module-config"
-RDEPENDS_perl-module-test-harness += "perl-module-constant"
-RDEPENDS_perl-module-test-harness += "perl-module-strict"
-RDEPENDS_perl-module-test-harness += "perl-module-tap-harness"
-RDEPENDS_perl-module-test-harness += "perl-module-tap-parser-aggregator"
-RDEPENDS_perl-module-test-harness += "perl-module-tap-parser-source"
-RDEPENDS_perl-module-test-harness += "perl-module-tap-parser-sourcehandler-perl"
-RDEPENDS_perl-module-test-harness += "perl-module-text-parsewords"
-RDEPENDS_perl-module-test-harness += "perl-module-warnings"
-RDEPENDS_perl-module-test-more += "perl-module-file-temp"
-RDEPENDS_perl-module-test-more += "perl-module-strict"
-RDEPENDS_perl-module-test-more += "perl-module-test-builder-module"
-RDEPENDS_perl-module-test-more += "perl-module-warnings"
-RDEPENDS_perl-module-test += "perl-module-exporter"
-RDEPENDS_perl-module-test += "perl-module-file-temp"
-RDEPENDS_perl-module-test += "perl-module-strict"
-RDEPENDS_perl-module-test-simple += "perl-module-strict"
-RDEPENDS_perl-module-test-simple += "perl-module-test-builder-module"
-RDEPENDS_perl-module-test-tester-capture += "perl-module-config"
-RDEPENDS_perl-module-test-tester-capture += "perl-module-strict"
-RDEPENDS_perl-module-test-tester-capture += "perl-module-test-builder"
-RDEPENDS_perl-module-test-tester-capture += "perl-module-threads-shared"
-RDEPENDS_perl-module-test-tester-capture += "perl-module-vars"
-RDEPENDS_perl-module-test-tester-capturerunner += "perl-module-exporter"
-RDEPENDS_perl-module-test-tester-capturerunner += "perl-module-strict"
-RDEPENDS_perl-module-test-tester-capturerunner += "perl-module-test-tester-capture"
-RDEPENDS_perl-module-test-tester-delegate += "perl-module-strict"
-RDEPENDS_perl-module-test-tester-delegate += "perl-module-vars"
-RDEPENDS_perl-module-test-tester-delegate += "perl-module-warnings"
-RDEPENDS_perl-module-test-tester += "perl-module-exporter"
-RDEPENDS_perl-module-test-tester += "perl-module-strict"
-RDEPENDS_perl-module-test-tester += "perl-module-test-builder"
-RDEPENDS_perl-module-test-tester += "perl-module-test-tester-capturerunner"
-RDEPENDS_perl-module-test-tester += "perl-module-test-tester-delegate"
-RDEPENDS_perl-module-test-tester += "perl-module-vars"
-RDEPENDS_perl-module-test2-api += "perl-module-carp"
-RDEPENDS_perl-module-test2-api += "perl-module-exporter"
-RDEPENDS_perl-module-test2-api += "perl-module-scalar-util"
-RDEPENDS_perl-module-test2-api += "perl-module-strict"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-api-context"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-api-instance"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-api-stack"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-event"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-event-bail"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-event-diag"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-event-exception"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-event-fail"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-event-note"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-event-ok"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-event-plan"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-event-skip"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-event-subtest"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-event-waiting"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-eventfacet-trace"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-hub"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-hub-interceptor"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-hub-interceptor-terminator"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-hub-subtest"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-util"
-RDEPENDS_perl-module-test2-api += "perl-module-test2-util-trace"
-RDEPENDS_perl-module-test2-api += "perl-module-warnings"
-RDEPENDS_perl-module-test2-api-context += "perl-module-carp"
-RDEPENDS_perl-module-test2-api-context += "perl-module-scalar-util"
-RDEPENDS_perl-module-test2-api-context += "perl-module-strict"
-RDEPENDS_perl-module-test2-api-context += "perl-module-test2-api"
-RDEPENDS_perl-module-test2-api-context += "perl-module-test2-event-v2"
-RDEPENDS_perl-module-test2-api-context += "perl-module-test2-eventfacet"
-RDEPENDS_perl-module-test2-api-context += "perl-module-test2-eventfacet-trace"
-RDEPENDS_perl-module-test2-api-context += "perl-module-test2-util"
-RDEPENDS_perl-module-test2-api-context += "perl-module-test2-util-externalmeta"
-RDEPENDS_perl-module-test2-api-context += "perl-module-test2-util-hashbase"
-RDEPENDS_perl-module-test2-api-context += "perl-module-warnings"
-RDEPENDS_perl-module-test2-event += "perl-module-carp"
-RDEPENDS_perl-module-test2-event += "perl-module-scalar-util"
-RDEPENDS_perl-module-test2-event += "perl-module-strict"
-RDEPENDS_perl-module-test2-event += "perl-module-test2-eventfacet"
-RDEPENDS_perl-module-test2-event += "perl-module-test2-eventfacet-about"
-RDEPENDS_perl-module-test2-event += "perl-module-test2-eventfacet-amnesty"
-RDEPENDS_perl-module-test2-event += "perl-module-test2-eventfacet-assert"
-RDEPENDS_perl-module-test2-event += "perl-module-test2-eventfacet-control"
-RDEPENDS_perl-module-test2-event += "perl-module-test2-eventfacet-error"
-RDEPENDS_perl-module-test2-event += "perl-module-test2-eventfacet-hub"
-RDEPENDS_perl-module-test2-event += "perl-module-test2-eventfacet-info"
-RDEPENDS_perl-module-test2-event += "perl-module-test2-eventfacet-meta"
-RDEPENDS_perl-module-test2-event += "perl-module-test2-eventfacet-parent"
-RDEPENDS_perl-module-test2-event += "perl-module-test2-eventfacet-plan"
-RDEPENDS_perl-module-test2-event += "perl-module-test2-eventfacet-trace"
-RDEPENDS_perl-module-test2-event += "perl-module-test2-util"
-RDEPENDS_perl-module-test2-event += "perl-module-test2-util-externalmeta"
-RDEPENDS_perl-module-test2-event += "perl-module-test2-util-hashbase"
-RDEPENDS_perl-module-test2-event += "perl-module-test2-util-trace"
-RDEPENDS_perl-module-test2-event += "perl-module-warnings"
-RDEPENDS_perl-module-test2-event-v2 += "perl-module-carp"
-RDEPENDS_perl-module-test2-event-v2 += "perl-module-scalar-util"
-RDEPENDS_perl-module-test2-event-v2 += "perl-module-test2-util-facets2legacy"
-RDEPENDS_perl-module-test2-event-v2 += "perl-module-test2-util-hashbase"
-RDEPENDS_perl-module-test2-event-v2 += "perl-module-strict"
-RDEPENDS_perl-module-test2-event-v2 += "perl-module-warnings"
-RDEPENDS_perl-module-test2-eventfacet += "perl-module-carp"
-RDEPENDS_perl-module-test2-eventfacet += "perl-module-test2-util"
-RDEPENDS_perl-module-test2-eventfacet += "perl-module-test2-util-hashbase"
-RDEPENDS_perl-module-test2-eventfacet += "perl-module-strict"
-RDEPENDS_perl-module-test2-eventfacet += "perl-module-warnings"
-RDEPENDS_perl-module-test2-hub += "perl-module-carp"
-RDEPENDS_perl-module-test2-hub += "perl-module-list-util"
-RDEPENDS_perl-module-test2-hub += "perl-module-scalar-util"
-RDEPENDS_perl-module-test2-hub += "perl-module-strict"
-RDEPENDS_perl-module-test2-hub += "perl-module-test2-event-ok"
-RDEPENDS_perl-module-test2-hub += "perl-module-test2-event-pass"
-RDEPENDS_perl-module-test2-hub += "perl-module-test2-event-plan"
-RDEPENDS_perl-module-test2-hub += "perl-module-test2-util"
-RDEPENDS_perl-module-test2-hub += "perl-module-test2-util-externalmeta"
-RDEPENDS_perl-module-test2-hub += "perl-module-test2-util-hashbase"
-RDEPENDS_perl-module-test2-hub += "perl-module-warnings"
-RDEPENDS_perl-module-test2-util += "perl-module-carp"
-RDEPENDS_perl-module-test2-util += "perl-module-config"
-RDEPENDS_perl-module-test2-util += "perl-module-posix"
-RDEPENDS_perl-module-test2-util += "perl-module-strict"
-RDEPENDS_perl-module-test2-util += "perl-module-warnings"
-RDEPENDS_perl-module-test2-util-facets2legacy += "perl-module-base"
-RDEPENDS_perl-module-test2-util-facets2legacy += "perl-module-carp"
-RDEPENDS_perl-module-test2-util-facets2legacy += "perl-module-exporter"
-RDEPENDS_perl-module-test2-util-facets2legacy += "perl-module-scalar-util"
-RDEPENDS_perl-module-test2-util-facets2legacy += "perl-module-strict"
-RDEPENDS_perl-module-test2-util-facets2legacy += "perl-module-warnings"
-RDEPENDS_perl-module-test2-util-hashbase += "perl-module-carp"
-RDEPENDS_perl-module-test2-util-hashbase += "perl-module-mro"
-RDEPENDS_perl-module-test2-util-hashbase += "perl-module-strict"
-RDEPENDS_perl-module-test2-util-hashbase += "perl-module-warnings"
-RDEPENDS_perl-module-text-abbrev += "perl-module-exporter"
-RDEPENDS_perl-module-text-balanced += "perl-module-exporter"
-RDEPENDS_perl-module-text-balanced += "perl-module-overload"
-RDEPENDS_perl-module-text-balanced += "perl-module-selfloader"
-RDEPENDS_perl-module-text-balanced += "perl-module-strict"
-RDEPENDS_perl-module-text-balanced += "perl-module-vars"
-RDEPENDS_perl-module-text-parsewords += "perl-module-exporter"
-RDEPENDS_perl-module-text-parsewords += "perl-module-strict"
-RDEPENDS_perl-module-text-tabs += "perl-module-exporter"
-RDEPENDS_perl-module-text-tabs += "perl-module-strict"
-RDEPENDS_perl-module-text-tabs += "perl-module-vars"
-RDEPENDS_perl-module-text-wrap += "perl-module-exporter"
-RDEPENDS_perl-module-text-wrap += "perl-module-re"
-RDEPENDS_perl-module-text-wrap += "perl-module-strict"
-RDEPENDS_perl-module-text-wrap += "perl-module-text-tabs"
-RDEPENDS_perl-module-text-wrap += "perl-module-vars"
-RDEPENDS_perl-module-text-wrap += "perl-module-warnings-register"
-RDEPENDS_perl-module-thread += "perl-module-config"
-RDEPENDS_perl-module-thread += "perl-module-exporter"
-RDEPENDS_perl-module-thread += "perl-module-strict"
-RDEPENDS_perl-module-thread += "perl-module-threads"
-RDEPENDS_perl-module-thread += "perl-module-threads-shared"
-RDEPENDS_perl-module-thread += "perl-module-warnings"
-RDEPENDS_perl-module-thread-queue += "perl-module-strict"
-RDEPENDS_perl-module-thread-queue += "perl-module-threads-shared"
-RDEPENDS_perl-module-thread-queue += "perl-module-warnings"
-RDEPENDS_perl-module-thread-semaphore += "perl-module-strict"
-RDEPENDS_perl-module-thread-semaphore += "perl-module-threads-shared"
-RDEPENDS_perl-module-thread-semaphore += "perl-module-warnings"
-RDEPENDS_perl-module-threads += "perl-module-config"
-RDEPENDS_perl-module-threads += "perl-module-overload"
-RDEPENDS_perl-module-threads += "perl-module-strict"
-RDEPENDS_perl-module-threads += "perl-module-warnings"
-RDEPENDS_perl-module-threads += "perl-module-xsloader"
-RDEPENDS_perl-module-threads-shared += "perl-module-strict"
-RDEPENDS_perl-module-threads-shared += "perl-module-warnings"
-RDEPENDS_perl-module-threads-shared += "perl-module-xsloader"
-RDEPENDS_perl-module-tie-array += "perl-module-strict"
-RDEPENDS_perl-module-tie-file += "perl-module-fcntl"
-RDEPENDS_perl-module-tie-file += "perl-module-posix"
-RDEPENDS_perl-module-tie-file += "perl-module-strict"
-RDEPENDS_perl-module-tie-handle += "perl-module-tie-stdhandle"
-RDEPENDS_perl-module-tie-handle += "perl-module-warnings-register"
-RDEPENDS_perl-module-tie-hash-namedcapture += "perl-module-strict"
-RDEPENDS_perl-module-tie-hash-namedcapture += "perl-module-xsloader"
-RDEPENDS_perl-module-tie-hash += "perl-module-warnings-register"
-RDEPENDS_perl-module-tie-hash += "perl-module-carp"
-RDEPENDS_perl-module-tie-memoize += "perl-module-strict"
-RDEPENDS_perl-module-tie-memoize += "perl-module-tie-hash"
-RDEPENDS_perl-module-tie-refhash += "perl-module-config"
-RDEPENDS_perl-module-tie-refhash += "perl-module-overload"
-RDEPENDS_perl-module-tie-refhash += "perl-module-strict"
-RDEPENDS_perl-module-tie-refhash += "perl-module-tie-hash"
-RDEPENDS_perl-module-tie-refhash += "perl-module-vars"
-RDEPENDS_perl-module-tie-scalar += "perl-module-warnings-register"
-RDEPENDS_perl-module-tie-stdhandle += "perl-module-strict"
-RDEPENDS_perl-module-tie-stdhandle += "perl-module-tie-handle"
-RDEPENDS_perl-module-tie-substrhash += "perl-module-integer"
-RDEPENDS_perl-module-time-gmtime += "perl-module-exporter"
-RDEPENDS_perl-module-time-gmtime += "perl-module-strict"
-RDEPENDS_perl-module-time-gmtime += "perl-module-time-tm"
-RDEPENDS_perl-module-time-hires += "perl-module-exporter"
-RDEPENDS_perl-module-time-hires += "perl-module-strict"
-RDEPENDS_perl-module-time-hires += "perl-module-xsloader"
-RDEPENDS_perl-module-time-local += "perl-module-config"
-RDEPENDS_perl-module-time-local += "perl-module-constant"
-RDEPENDS_perl-module-time-local += "perl-module-exporter"
-RDEPENDS_perl-module-time-local += "perl-module-parent"
-RDEPENDS_perl-module-time-local += "perl-module-strict"
-RDEPENDS_perl-module-time-localtime += "perl-module-exporter"
-RDEPENDS_perl-module-time-localtime += "perl-module-strict"
-RDEPENDS_perl-module-time-localtime += "perl-module-time-tm"
-RDEPENDS_perl-module-time-piece += "perl-module-constant"
-RDEPENDS_perl-module-time-piece += "perl-module-exporter"
-RDEPENDS_perl-module-time-piece += "perl-module-integer"
-RDEPENDS_perl-module-time-piece += "perl-module-overload"
-RDEPENDS_perl-module-time-piece += "perl-module-strict"
-RDEPENDS_perl-module-time-piece += "perl-module-time-local"
-RDEPENDS_perl-module-time-piece += "perl-module-time-seconds"
-RDEPENDS_perl-module-time-piece += "perl-module-xsloader"
-RDEPENDS_perl-module-time-seconds += "perl-module-constant"
-RDEPENDS_perl-module-time-seconds += "perl-module-exporter"
-RDEPENDS_perl-module-time-seconds += "perl-module-overload"
-RDEPENDS_perl-module-time-seconds += "perl-module-strict"
-RDEPENDS_perl-module-time-tm += "perl-module-class-struct"
-RDEPENDS_perl-module-time-tm += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-cjk-big5 += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-cjk-big5 += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate-cjk-gb2312 += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-cjk-gb2312 += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate-cjk-jisx0208 += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-cjk-jisx0208 += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate-cjk-korean += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-cjk-korean += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate-cjk-pinyin += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-cjk-pinyin += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate-cjk-stroke += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-cjk-stroke += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate-cjk-zhuyin += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-cjk-zhuyin += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate-locale += "perl-module-base"
-RDEPENDS_perl-module-unicode-collate-locale += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-locale += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate += "perl-module-constant"
-RDEPENDS_perl-module-unicode-collate += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate += "perl-module-xsloader"
-RDEPENDS_perl-module-unicode-normalize += "perl-module-exporter"
-RDEPENDS_perl-module-unicode-normalize += "perl-module-strict"
-RDEPENDS_perl-module-unicode-normalize += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-normalize += "perl-module-xsloader"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-charnames"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-exporter"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-feature"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-if"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-integer"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-strict"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-unicode-normalize"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-utf8-heavy"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-warnings"
-RDEPENDS_perl-module-user-grent += "perl-module-class-struct"
-RDEPENDS_perl-module-user-grent += "perl-module-exporter"
-RDEPENDS_perl-module-user-grent += "perl-module-strict"
-RDEPENDS_perl-module-user-pwent += "perl-module-class-struct"
-RDEPENDS_perl-module-user-pwent += "perl-module-config"
-RDEPENDS_perl-module-user-pwent += "perl-module-exporter"
-RDEPENDS_perl-module-user-pwent += "perl-module-strict"
-RDEPENDS_perl-module-user-pwent += "perl-module-warnings"
-RDEPENDS_perl-module-utf8 += "perl-module-utf8-heavy"
-RDEPENDS_perl-module-version += "perl-module-strict"
-RDEPENDS_perl-module-version += "perl-module-version-regex"
-RDEPENDS_perl-module-version += "perl-module-warnings-register"
-RDEPENDS_perl-module-version-regex += "perl-module-strict"
-RDEPENDS_perl-module-xsloader += "perl-module-dynaloader"
-RDEPENDS_perl-module-anydbm-file += "perl-module-strict"
-RDEPENDS_perl-module-anydbm-file += "perl-module-warnings"
-RDEPENDS_perl-module-app-cpan += "perl-module-config"
-RDEPENDS_perl-module-app-cpan += "perl-module-constant"
-RDEPENDS_perl-module-app-cpan += "perl-module-cpan"
-RDEPENDS_perl-module-app-cpan += "perl-module-cwd"
-RDEPENDS_perl-module-app-cpan += "perl-module-data-dumper"
-RDEPENDS_perl-module-app-cpan += "perl-module-file-basename"
-RDEPENDS_perl-module-app-cpan += "perl-module-file-find"
-RDEPENDS_perl-module-app-cpan += "perl-module-getopt-std"
-RDEPENDS_perl-module-app-cpan += "perl-module-if"
-RDEPENDS_perl-module-app-cpan += "perl-module-net-ping"
-RDEPENDS_perl-module-app-cpan += "perl-module-strict"
-RDEPENDS_perl-module-app-cpan += "perl-module-user-pwent"
-RDEPENDS_perl-module-app-cpan += "perl-module-vars"
-RDEPENDS_perl-module-app-cpan += "perl-module-warnings"
-RDEPENDS_perl-module-app-prove += "perl-module-app-prove-state"
-RDEPENDS_perl-module-app-prove += "perl-module-base"
-RDEPENDS_perl-module-app-prove += "perl-module-constant"
-RDEPENDS_perl-module-app-prove += "perl-module-getopt-long"
-RDEPENDS_perl-module-app-prove += "perl-module-strict"
-RDEPENDS_perl-module-app-prove += "perl-module-tap-harness"
-RDEPENDS_perl-module-app-prove += "perl-module-tap-harness-env"
-RDEPENDS_perl-module-app-prove += "perl-module-text-parsewords"
-RDEPENDS_perl-module-app-prove += "perl-module-warnings"
-RDEPENDS_perl-module-app-prove-state += "perl-module-app-prove-state-result"
-RDEPENDS_perl-module-app-prove-state += "perl-module-base"
-RDEPENDS_perl-module-app-prove-state += "perl-module-constant"
-RDEPENDS_perl-module-app-prove-state += "perl-module-file-find"
-RDEPENDS_perl-module-app-prove-state += "perl-module-strict"
-RDEPENDS_perl-module-app-prove-state += "perl-module-tap-parser-yamlish-reader"
-RDEPENDS_perl-module-app-prove-state += "perl-module-tap-parser-yamlish-writer"
-RDEPENDS_perl-module-app-prove-state += "perl-module-warnings"
-RDEPENDS_perl-module-app-prove-state-result += "perl-module-app-prove-state-result-test"
-RDEPENDS_perl-module-app-prove-state-result += "perl-module-constant"
-RDEPENDS_perl-module-app-prove-state-result += "perl-module-strict"
-RDEPENDS_perl-module-app-prove-state-result += "perl-module-warnings"
-RDEPENDS_perl-module-app-prove-state-result-test += "perl-module-strict"
-RDEPENDS_perl-module-app-prove-state-result-test += "perl-module-warnings"
-RDEPENDS_perl-module-archive-tar-constant += "perl-module-constant"
-RDEPENDS_perl-module-archive-tar-constant += "perl-module-exporter"
-RDEPENDS_perl-module-archive-tar-constant += "perl-module-io-compress-bzip2"
-RDEPENDS_perl-module-archive-tar-constant += "perl-module-strict"
-RDEPENDS_perl-module-archive-tar-constant += "perl-module-time-local"
-RDEPENDS_perl-module-archive-tar-constant += "perl-module-warnings"
-RDEPENDS_perl-module-archive-tar-file += "perl-module-archive-tar"
-RDEPENDS_perl-module-archive-tar-file += "perl-module-archive-tar-constant"
-RDEPENDS_perl-module-archive-tar-file += "perl-module-file-basename"
-RDEPENDS_perl-module-archive-tar-file += "perl-module-io-file"
-RDEPENDS_perl-module-archive-tar-file += "perl-module-strict"
-RDEPENDS_perl-module-archive-tar-file += "perl-module-vars"
-RDEPENDS_perl-module-archive-tar += "perl-module-archive-tar-constant"
-RDEPENDS_perl-module-archive-tar += "perl-module-archive-tar-file"
-RDEPENDS_perl-module-archive-tar += "perl-module-config"
-RDEPENDS_perl-module-archive-tar += "perl-module-cwd"
-RDEPENDS_perl-module-archive-tar += "perl-module-exporter"
-RDEPENDS_perl-module-archive-tar += "perl-module-file-path"
-RDEPENDS_perl-module-archive-tar += "perl-module-io-file"
-RDEPENDS_perl-module-archive-tar += "perl-module-io-zlib"
-RDEPENDS_perl-module-archive-tar += "perl-module-strict"
-RDEPENDS_perl-module-archive-tar += "perl-module-vars"
-RDEPENDS_perl-module-arybase += "perl-module-xsloader"
-RDEPENDS_perl-module-attribute-handlers += "perl-module-strict"
-RDEPENDS_perl-module-attribute-handlers += "perl-module-warnings"
-RDEPENDS_perl-module-attributes += "perl-module-exporter"
-RDEPENDS_perl-module-attributes += "perl-module-strict"
-RDEPENDS_perl-module-attributes += "perl-module-warnings"
-RDEPENDS_perl-module-attributes += "perl-module-xsloader"
-RDEPENDS_perl-module-autodie-exception += "perl-module-constant"
-RDEPENDS_perl-module-autodie-exception += "perl-module-fatal"
-RDEPENDS_perl-module-autodie-exception += "perl-module-fcntl"
-RDEPENDS_perl-module-autodie-exception += "perl-module-overload"
-RDEPENDS_perl-module-autodie-exception += "perl-module-strict"
-RDEPENDS_perl-module-autodie-exception += "perl-module-warnings"
-RDEPENDS_perl-module-autodie-exception-system += "perl-module-parent"
-RDEPENDS_perl-module-autodie-exception-system += "perl-module-strict"
-RDEPENDS_perl-module-autodie-exception-system += "perl-module-warnings"
-RDEPENDS_perl-module-autodie-hints += "perl-module-b"
-RDEPENDS_perl-module-autodie-hints += "perl-module-constant"
-RDEPENDS_perl-module-autodie-hints += "perl-module-strict"
-RDEPENDS_perl-module-autodie-hints += "perl-module-warnings"
-RDEPENDS_perl-module-autodie += "perl-module-constant"
-RDEPENDS_perl-module-autodie += "perl-module-lib"
-RDEPENDS_perl-module-autodie += "perl-module-parent"
-RDEPENDS_perl-module-autodie += "perl-module-strict"
-RDEPENDS_perl-module-autodie += "perl-module-warnings"
-RDEPENDS_perl-module-autodie-scope-guard += "perl-module-strict"
-RDEPENDS_perl-module-autodie-scope-guard += "perl-module-warnings"
-RDEPENDS_perl-module-autodie-scope-guardstack += "perl-module-autodie-scope-guard"
-RDEPENDS_perl-module-autodie-scope-guardstack += "perl-module-strict"
-RDEPENDS_perl-module-autodie-scope-guardstack += "perl-module-warnings"
-RDEPENDS_perl-module-autodie-skip += "perl-module-strict"
-RDEPENDS_perl-module-autodie-skip += "perl-module-warnings"
-RDEPENDS_perl-module-autodie-util += "perl-module-autodie-scope-guardstack"
-RDEPENDS_perl-module-autodie-util += "perl-module-exporter"
-RDEPENDS_perl-module-autodie-util += "perl-module-strict"
-RDEPENDS_perl-module-autodie-util += "perl-module-warnings"
-RDEPENDS_perl-module-autoloader += "perl-module-strict"
-RDEPENDS_perl-module-autosplit += "perl-module-config"
-RDEPENDS_perl-module-autosplit += "perl-module-exporter"
-RDEPENDS_perl-module-autosplit += "perl-module-file-basename"
-RDEPENDS_perl-module-autosplit += "perl-module-file-path"
-RDEPENDS_perl-module-autosplit += "perl-module-strict"
-RDEPENDS_perl-module-base += "perl-module-strict"
-RDEPENDS_perl-module-b-concise += "perl-module-b"
-RDEPENDS_perl-module-b-concise += "perl-module-b-op-private"
-RDEPENDS_perl-module-b-concise += "perl-module-config"
-RDEPENDS_perl-module-b-concise += "perl-module-exporter"
-RDEPENDS_perl-module-b-concise += "perl-module-feature"
-RDEPENDS_perl-module-b-concise += "perl-module-strict"
-RDEPENDS_perl-module-b-concise += "perl-module-warnings"
-RDEPENDS_perl-module-b-debug += "perl-module-b"
-RDEPENDS_perl-module-b-debug += "perl-module-config"
-RDEPENDS_perl-module-b-debug += "perl-module-strict"
-RDEPENDS_perl-module-benchmark += "perl-module-exporter"
-RDEPENDS_perl-module-benchmark += "perl-module-strict"
-RDEPENDS_perl-module-bigint += "perl-module-constant"
-RDEPENDS_perl-module-bigint += "perl-module-exporter"
-RDEPENDS_perl-module-bigint += "perl-module-math-bigint"
-RDEPENDS_perl-module-bigint += "perl-module-math-bigint-trace"
-RDEPENDS_perl-module-bigint += "perl-module-overload"
-RDEPENDS_perl-module-bigint += "perl-module-strict"
-RDEPENDS_perl-module-bigint += "perl-module-warnings"
-RDEPENDS_perl-module-bignum += "perl-module-bigint"
-RDEPENDS_perl-module-bignum += "perl-module-exporter"
-RDEPENDS_perl-module-bignum += "perl-module-math-bigfloat"
-RDEPENDS_perl-module-bignum += "perl-module-math-bigfloat-trace"
-RDEPENDS_perl-module-bignum += "perl-module-math-bigint"
-RDEPENDS_perl-module-bignum += "perl-module-math-bigint-trace"
-RDEPENDS_perl-module-bignum += "perl-module-overload"
-RDEPENDS_perl-module-bignum += "perl-module-strict"
-RDEPENDS_perl-module-bignum += "perl-module-warnings"
-RDEPENDS_perl-module-bigrat += "perl-module-bigint"
-RDEPENDS_perl-module-bigrat += "perl-module-exporter"
-RDEPENDS_perl-module-bigrat += "perl-module-math-bigfloat"
-RDEPENDS_perl-module-bigrat += "perl-module-math-bigint"
-RDEPENDS_perl-module-bigrat += "perl-module-math-bigint-trace"
-RDEPENDS_perl-module-bigrat += "perl-module-math-bigrat"
-RDEPENDS_perl-module-bigrat += "perl-module-overload"
-RDEPENDS_perl-module-bigrat += "perl-module-strict"
-RDEPENDS_perl-module-bigrat += "perl-module-warnings"
-RDEPENDS_perl-module-blib += "perl-module-cwd"
-RDEPENDS_perl-module-b += "perl-module-exporter"
-RDEPENDS_perl-module-b += "perl-module-xsloader"
-RDEPENDS_perl-module-b-showlex += "perl-module-b"
-RDEPENDS_perl-module-b-showlex += "perl-module-b-concise"
-RDEPENDS_perl-module-b-showlex += "perl-module-b-terse"
-RDEPENDS_perl-module-b-showlex += "perl-module-strict"
-RDEPENDS_perl-module-b-terse += "perl-module-b"
-RDEPENDS_perl-module-b-terse += "perl-module-b-concise"
-RDEPENDS_perl-module-b-terse += "perl-module-strict"
-RDEPENDS_perl-module-b-xref += "perl-module-b"
-RDEPENDS_perl-module-b-xref += "perl-module-config"
-RDEPENDS_perl-module-b-xref += "perl-module-strict"
-RDEPENDS_perl-module-bytes += "perl-module-bytes-heavy"
-RDEPENDS_perl-module--charnames += "perl-module-bytes"
-RDEPENDS_perl-module-charnames += "perl-module-bytes"
-RDEPENDS_perl-module-charnames += "perl-module--charnames"
-RDEPENDS_perl-module--charnames += "perl-module-re"
-RDEPENDS_perl-module-charnames += "perl-module-re"
-RDEPENDS_perl-module--charnames += "perl-module-strict"
-RDEPENDS_perl-module-charnames += "perl-module-strict"
-RDEPENDS_perl-module--charnames += "perl-module-warnings"
-RDEPENDS_perl-module-charnames += "perl-module-warnings"
-RDEPENDS_perl-module-class-struct += "perl-module-exporter"
-RDEPENDS_perl-module-class-struct += "perl-module-strict"
-RDEPENDS_perl-module-class-struct += "perl-module-warnings-register"
-RDEPENDS_perl-module-compress-raw-bzip2 += "perl-module-bytes "
-RDEPENDS_perl-module-compress-raw-bzip2 += "perl-module-constant"
-RDEPENDS_perl-module-compress-raw-bzip2 += "perl-module-dynaloader"
-RDEPENDS_perl-module-compress-raw-bzip2 += "perl-module-exporter"
-RDEPENDS_perl-module-compress-raw-bzip2 += "perl-module-strict "
-RDEPENDS_perl-module-compress-raw-bzip2 += "perl-module-warnings "
-RDEPENDS_perl-module-compress-raw-bzip2 += "perl-module-xsloader"
-RDEPENDS_perl-module-compress-raw-zlib += "perl-module-bytes "
-RDEPENDS_perl-module-compress-raw-zlib += "perl-module-constant"
-RDEPENDS_perl-module-compress-raw-zlib += "perl-module-dynaloader"
-RDEPENDS_perl-module-compress-raw-zlib += "perl-module-exporter"
-RDEPENDS_perl-module-compress-raw-zlib += "perl-module-strict "
-RDEPENDS_perl-module-compress-raw-zlib += "perl-module-warnings "
-RDEPENDS_perl-module-compress-raw-zlib += "perl-module-xsloader"
-RDEPENDS_perl-module-compress-zlib += "perl-module-bytes "
-RDEPENDS_perl-module-compress-zlib += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-compress-zlib += "perl-module-constant"
-RDEPENDS_perl-module-compress-zlib += "perl-module-exporter"
-RDEPENDS_perl-module-compress-zlib += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-compress-zlib += "perl-module-io-compress-gzip"
-RDEPENDS_perl-module-compress-zlib += "perl-module-io-compress-gzip-constants"
-RDEPENDS_perl-module-compress-zlib += "perl-module-io-handle "
-RDEPENDS_perl-module-compress-zlib += "perl-module-io-uncompress-gunzip"
-RDEPENDS_perl-module-compress-zlib += "perl-module-strict "
-RDEPENDS_perl-module-compress-zlib += "perl-module-warnings "
-RDEPENDS_perl-module-config-extensions += "perl-module-config"
-RDEPENDS_perl-module-config-extensions += "perl-module-exporter"
-RDEPENDS_perl-module-config-extensions += "perl-module-strict"
-RDEPENDS_perl-module-config += "perl-module-strict"
-RDEPENDS_perl-module-config += "perl-module-warnings"
RDEPENDS_perl-module-config-perl-v += "perl-module-config"
RDEPENDS_perl-module-config-perl-v += "perl-module-exporter"
RDEPENDS_perl-module-config-perl-v += "perl-module-strict"
@@ -2534,7 +220,6 @@ RDEPENDS_perl-module-cpan += "perl-module-json-pp"
RDEPENDS_perl-module-cpan += "perl-module-lib"
RDEPENDS_perl-module-cpan += "perl-module-net-ping"
RDEPENDS_perl-module-cpan += "perl-module-overload"
-RDEPENDS_perl-module-cpan += "perl-module-parse-cpan-meta"
RDEPENDS_perl-module-cpan += "perl-module-posix"
RDEPENDS_perl-module-cpan += "perl-module-safe"
RDEPENDS_perl-module-cpan += "perl-module-strict"
@@ -2553,6 +238,13 @@ RDEPENDS_perl-module-data-dumper += "perl-module-config"
RDEPENDS_perl-module-data-dumper += "perl-module-constant"
RDEPENDS_perl-module-data-dumper += "perl-module-exporter"
RDEPENDS_perl-module-data-dumper += "perl-module-xsloader"
+RDEPENDS_perl-module-db-file += "perl-module-dynaloader"
+RDEPENDS_perl-module-db-file += "perl-module-exporter"
+RDEPENDS_perl-module-db-file += "perl-module-fcntl"
+RDEPENDS_perl-module-db-file += "perl-module-strict "
+RDEPENDS_perl-module-db-file += "perl-module-strict"
+RDEPENDS_perl-module-db-file += "perl-module-tie-hash"
+RDEPENDS_perl-module-db-file += "perl-module-warnings"
RDEPENDS_perl-module-dbm-filter-compress += "perl-module-strict"
RDEPENDS_perl-module-dbm-filter-compress += "perl-module-warnings"
RDEPENDS_perl-module-dbm-filter-encode += "perl-module-strict"
@@ -2699,7 +391,6 @@ RDEPENDS_perl-module-encode += "perl-module-constant"
RDEPENDS_perl-module-encode += "perl-module-encode-alias"
RDEPENDS_perl-module-encode += "perl-module-encode-config"
RDEPENDS_perl-module-encode += "perl-module-encode-configlocal-pm"
-RDEPENDS_perl-module-encode += "perl-module-encode-encoding"
RDEPENDS_perl-module-encode += "perl-module-encode-mime-name"
RDEPENDS_perl-module-encode += "perl-module-exporter"
RDEPENDS_perl-module-encode += "perl-module-parent"
@@ -2886,7 +577,6 @@ RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-makemaker-confi
RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-makemaker-version"
RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-manifest"
RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-mm"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-mm-unix"
RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-my"
RDEPENDS_perl-module-extutils-makemaker += "perl-module-file-path"
RDEPENDS_perl-module-extutils-makemaker += "perl-module-strict"
@@ -3082,7 +772,6 @@ RDEPENDS_perl-module-file-fetch += "perl-module-load"
RDEPENDS_perl-module-file-fetch += "perl-module-params-check"
RDEPENDS_perl-module-file-fetch += "perl-module-strict"
RDEPENDS_perl-module-file-fetch += "perl-module-vars"
-RDEPENDS_perl-module-file-find += "perl-module-config"
RDEPENDS_perl-module-file-find += "perl-module-cwd"
RDEPENDS_perl-module-file-find += "perl-module-exporter"
RDEPENDS_perl-module-file-find += "perl-module-file-basename"
@@ -3094,7 +783,6 @@ RDEPENDS_perl-module-file-globmapper += "perl-module-strict"
RDEPENDS_perl-module-file-globmapper += "perl-module-warnings"
RDEPENDS_perl-module-file-glob += "perl-module-exporter"
RDEPENDS_perl-module-file-glob += "perl-module-strict"
-RDEPENDS_perl-module-file-glob += "perl-module-warnings"
RDEPENDS_perl-module-file-glob += "perl-module-xsloader"
RDEPENDS_perl-module-filehandle += "perl-module-exporter"
RDEPENDS_perl-module-filehandle += "perl-module-fcntl"
@@ -3123,9 +811,7 @@ RDEPENDS_perl-module-file-temp += "perl-module-io-seekable"
RDEPENDS_perl-module-file-temp += "perl-module-overload"
RDEPENDS_perl-module-file-temp += "perl-module-parent"
RDEPENDS_perl-module-file-temp += "perl-module-posix"
-RDEPENDS_perl-module-file-temp += "perl-module-file-spec"
RDEPENDS_perl-module-file-temp += "perl-module-strict"
-RDEPENDS_perl-module-file-temp += "perl-module-vars"
RDEPENDS_perl-module-filter-simple += "perl-module-filter-util-call"
RDEPENDS_perl-module-filter-simple += "perl-module-text-balanced"
RDEPENDS_perl-module-filter-util-call += "perl-module-exporter"
@@ -3135,6 +821,11 @@ RDEPENDS_perl-module-filter-util-call += "perl-module-xsloader"
RDEPENDS_perl-module-findbin += "perl-module-cwd"
RDEPENDS_perl-module-findbin += "perl-module-exporter"
RDEPENDS_perl-module-findbin += "perl-module-file-basename"
+RDEPENDS_perl-module-gdbm-file += "perl-module-exporter"
+RDEPENDS_perl-module-gdbm-file += "perl-module-strict"
+RDEPENDS_perl-module-gdbm-file += "perl-module-tie-hash"
+RDEPENDS_perl-module-gdbm-file += "perl-module-warnings"
+RDEPENDS_perl-module-gdbm-file += "perl-module-xsloader"
RDEPENDS_perl-module-getopt-long += "perl-module-constant"
RDEPENDS_perl-module-getopt-long += "perl-module-exporter"
RDEPENDS_perl-module-getopt-long += "perl-module-overload"
@@ -3389,6 +1080,7 @@ RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-warnings"
RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-bytes"
RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-compress-raw-zlib"
RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-constant"
+RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-encode"
RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-exporter "
RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-fcntl"
RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-io-compress-base-common"
@@ -3486,116 +1178,6 @@ RDEPENDS_perl-module-load += "perl-module-strict"
RDEPENDS_perl-module-load += "perl-module-vars"
RDEPENDS_perl-module-load += "perl-module-version"
RDEPENDS_perl-module-load += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-constants += "perl-module-constant"
-RDEPENDS_perl-module-locale-codes-constants += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes-constants += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-constants += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-country-codes += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-country-codes += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-country-codes += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-country += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes-country += "perl-module-if"
-RDEPENDS_perl-module-locale-codes-country += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-codes-country += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-codes-country += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-country += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-country-retired += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-country-retired += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-country-retired += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-currency-codes += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-currency-codes += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-currency-codes += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-currency += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes-currency += "perl-module-if"
-RDEPENDS_perl-module-locale-codes-currency += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-codes-currency += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-codes-currency += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-currency += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-currency-retired += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-currency-retired += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-currency-retired += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langext-codes += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langext-codes += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-langext-codes += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langext += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes-langext += "perl-module-if"
-RDEPENDS_perl-module-locale-codes-langext += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-codes-langext += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-codes-langext += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langext += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langext-retired += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langext-retired += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-langext-retired += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langfam-codes += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langfam-codes += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-langfam-codes += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langfam += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes-langfam += "perl-module-if"
-RDEPENDS_perl-module-locale-codes-langfam += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-codes-langfam += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-codes-langfam += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langfam += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langfam-retired += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langfam-retired += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-language-codes += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-language-codes += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-language-codes += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-language += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes-language += "perl-module-if"
-RDEPENDS_perl-module-locale-codes-language += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-codes-language += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-codes-language += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-language += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-language-retired += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-language-retired += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-language-retired += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langvar-codes += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langvar-codes += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-langvar-codes += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langvar += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes-langvar += "perl-module-if"
-RDEPENDS_perl-module-locale-codes-langvar += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-codes-langvar += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-codes-langvar += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langvar += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-langvar-retired += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-langvar-retired += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-langvar-retired += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes += "perl-module-if"
-RDEPENDS_perl-module-locale-codes += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-codes += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-script-codes += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-script-codes += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-script-codes += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-script += "perl-module-exporter"
-RDEPENDS_perl-module-locale-codes-script += "perl-module-if"
-RDEPENDS_perl-module-locale-codes-script += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-codes-script += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-codes-script += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-script += "perl-module-warnings"
-RDEPENDS_perl-module-locale-codes-script-retired += "perl-module-strict"
-RDEPENDS_perl-module-locale-codes-script-retired += "perl-module-utf8"
-RDEPENDS_perl-module-locale-codes-script-retired += "perl-module-warnings"
-RDEPENDS_perl-module-locale-country += "perl-module-exporter"
-RDEPENDS_perl-module-locale-country += "perl-module-if"
-RDEPENDS_perl-module-locale-country += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-country += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-country += "perl-module-strict"
-RDEPENDS_perl-module-locale-country += "perl-module-warnings"
-RDEPENDS_perl-module-locale-currency += "perl-module-exporter"
-RDEPENDS_perl-module-locale-currency += "perl-module-if"
-RDEPENDS_perl-module-locale-currency += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-currency += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-currency += "perl-module-strict"
-RDEPENDS_perl-module-locale-currency += "perl-module-warnings"
-RDEPENDS_perl-module-locale-language += "perl-module-exporter"
-RDEPENDS_perl-module-locale-language += "perl-module-if"
-RDEPENDS_perl-module-locale-language += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-language += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-language += "perl-module-strict"
-RDEPENDS_perl-module-locale-language += "perl-module-warnings"
RDEPENDS_perl-module-locale-maketext-gutsloader += "perl-module-locale-maketext"
RDEPENDS_perl-module-locale-maketext-guts += "perl-module-locale-maketext"
RDEPENDS_perl-module-locale-maketext += "perl-module-i18n-langtags"
@@ -3605,12 +1187,6 @@ RDEPENDS_perl-module-locale-maketext += "perl-module-strict"
RDEPENDS_perl-module-locale-maketext-simple += "perl-module-base"
RDEPENDS_perl-module-locale-maketext-simple += "perl-module-strict"
RDEPENDS_perl-module-locale += "perl-module-config"
-RDEPENDS_perl-module-locale-script += "perl-module-exporter"
-RDEPENDS_perl-module-locale-script += "perl-module-if"
-RDEPENDS_perl-module-locale-script += "perl-module-locale-codes"
-RDEPENDS_perl-module-locale-script += "perl-module-locale-codes-constants"
-RDEPENDS_perl-module-locale-script += "perl-module-strict"
-RDEPENDS_perl-module-locale-script += "perl-module-warnings"
RDEPENDS_perl-module-math-bigfloat += "perl-module-exporter"
RDEPENDS_perl-module-math-bigfloat += "perl-module-math-bigint"
RDEPENDS_perl-module-math-bigfloat += "perl-module-math-complex"
@@ -3622,8 +1198,6 @@ RDEPENDS_perl-module-math-bigfloat-trace += "perl-module-math-bigfloat"
RDEPENDS_perl-module-math-bigfloat-trace += "perl-module-overload"
RDEPENDS_perl-module-math-bigfloat-trace += "perl-module-strict"
RDEPENDS_perl-module-math-bigfloat-trace += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigint-calcemu += "perl-module-strict"
-RDEPENDS_perl-module-math-bigint-calcemu += "perl-module-warnings"
RDEPENDS_perl-module-math-bigint-calc += "perl-module-constant"
RDEPENDS_perl-module-math-bigint-calc += "perl-module-integer"
RDEPENDS_perl-module-math-bigint-calc += "perl-module-math-bigint-lib"
@@ -3800,7 +1374,6 @@ RDEPENDS_perl-module-params-check += "perl-module-locale-maketext-simple"
RDEPENDS_perl-module-params-check += "perl-module-strict"
RDEPENDS_perl-module-params-check += "perl-module-vars"
RDEPENDS_perl-module-parent += "perl-module-strict"
-RDEPENDS_perl-module-parent += "perl-module-vars"
RDEPENDS_perl-module-perlfaq += "perl-module-strict"
RDEPENDS_perl-module-perlfaq += "perl-module-warnings"
RDEPENDS_perl-module-perlio-encoding += "perl-module-strict"
@@ -3820,16 +1393,8 @@ RDEPENDS_perl-module-pod-escapes += "perl-module-exporter"
RDEPENDS_perl-module-pod-escapes += "perl-module-strict"
RDEPENDS_perl-module-pod-escapes += "perl-module-vars"
RDEPENDS_perl-module-pod-escapes += "perl-module-warnings"
-RDEPENDS_perl-module-pod-find += "perl-module-config"
-RDEPENDS_perl-module-pod-find += "perl-module-cwd"
-RDEPENDS_perl-module-pod-find += "perl-module-exporter"
-RDEPENDS_perl-module-pod-find += "perl-module-file-find"
-RDEPENDS_perl-module-pod-find += "perl-module-strict"
-RDEPENDS_perl-module-pod-find += "perl-module-vars"
RDEPENDS_perl-module-pod-functions += "perl-module-exporter"
RDEPENDS_perl-module-pod-functions += "perl-module-strict"
-RDEPENDS_perl-module-pod-inputobjects += "perl-module-strict"
-RDEPENDS_perl-module-pod-inputobjects += "perl-module-vars"
RDEPENDS_perl-module-pod-man += "perl-module-file-basename"
RDEPENDS_perl-module-pod-man += "perl-module-pod-simple"
RDEPENDS_perl-module-pod-man += "perl-module-strict"
@@ -3840,12 +1405,6 @@ RDEPENDS_perl-module-pod-parselink += "perl-module-exporter"
RDEPENDS_perl-module-pod-parselink += "perl-module-strict"
RDEPENDS_perl-module-pod-parselink += "perl-module-vars"
RDEPENDS_perl-module-pod-parselink += "perl-module-warnings"
-RDEPENDS_perl-module-pod-parser += "perl-module-exporter"
-RDEPENDS_perl-module-pod-parser += "perl-module-pod-inputobjects"
-RDEPENDS_perl-module-pod-parser += "perl-module-strict"
-RDEPENDS_perl-module-pod-parser += "perl-module-vars"
-RDEPENDS_perl-module-pod-parseutils += "perl-module-strict"
-RDEPENDS_perl-module-pod-parseutils += "perl-module-vars"
RDEPENDS_perl-module-pod-perldoc-baseto += "perl-module-config"
RDEPENDS_perl-module-pod-perldoc-baseto += "perl-module-strict"
RDEPENDS_perl-module-pod-perldoc-baseto += "perl-module-vars"
@@ -3908,12 +1467,7 @@ RDEPENDS_perl-module-pod-perldoc-toxml += "perl-module-parent"
RDEPENDS_perl-module-pod-perldoc-toxml += "perl-module-strict"
RDEPENDS_perl-module-pod-perldoc-toxml += "perl-module-vars"
RDEPENDS_perl-module-pod-perldoc-toxml += "perl-module-warnings"
-RDEPENDS_perl-module-pod-plaintext += "perl-module-pod-select"
-RDEPENDS_perl-module-pod-plaintext += "perl-module-strict"
-RDEPENDS_perl-module-pod-plaintext += "perl-module-vars"
-RDEPENDS_perl-module-pod-select += "perl-module-pod-parser"
-RDEPENDS_perl-module-pod-select += "perl-module-strict"
-RDEPENDS_perl-module-pod-select += "perl-module-vars"
+RDEPENDS_perl-module-pod-simple-blackbox += "perl-module-if"
RDEPENDS_perl-module-pod-simple-blackbox += "perl-module-integer"
RDEPENDS_perl-module-pod-simple-blackbox += "perl-module-pod-simple"
RDEPENDS_perl-module-pod-simple-blackbox += "perl-module-pod-simple-transcode"
@@ -3932,6 +1486,9 @@ RDEPENDS_perl-module-pod-simple-dumpastext += "perl-module-strict"
RDEPENDS_perl-module-pod-simple-dumpasxml += "perl-module-pod-simple"
RDEPENDS_perl-module-pod-simple-dumpasxml += "perl-module-strict"
RDEPENDS_perl-module-pod-simple-dumpasxml += "perl-module-text-wrap"
+RDEPENDS_perl-module-pod-simple-justpod += "perl-module-pod-simple-methody"
+RDEPENDS_perl-module-pod-simple-justpod += "perl-module-strict"
+RDEPENDS_perl-module-pod-simple-justpod += "perl-module-warnings"
RDEPENDS_perl-module-pod-simple-linksection += "perl-module-overload"
RDEPENDS_perl-module-pod-simple-linksection += "perl-module-pod-simple-blackbox"
RDEPENDS_perl-module-pod-simple-linksection += "perl-module-strict"
@@ -3962,6 +1519,7 @@ RDEPENDS_perl-module-pod-simple-pullparsertexttoken += "perl-module-pod-simple-p
RDEPENDS_perl-module-pod-simple-pullparsertexttoken += "perl-module-strict"
RDEPENDS_perl-module-pod-simple-pullparsertexttoken += "perl-module-vars"
RDEPENDS_perl-module-pod-simple-pullparsertoken += "perl-module-strict"
+RDEPENDS_perl-module-pod-simple-rtf += "perl-module-if"
RDEPENDS_perl-module-pod-simple-rtf += "perl-module-integer"
RDEPENDS_perl-module-pod-simple-rtf += "perl-module-pod-simple-pullparser"
RDEPENDS_perl-module-pod-simple-rtf += "perl-module-strict"
@@ -3987,8 +1545,6 @@ RDEPENDS_perl-module-pod-simple-tiedoutfh += "perl-module-vars"
RDEPENDS_perl-module-pod-simple-transcodedumb += "perl-module-strict"
RDEPENDS_perl-module-pod-simple-transcodedumb += "perl-module-vars"
RDEPENDS_perl-module-pod-simple-transcode += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-transcode += "perl-module-pod-simple-transcodedumb"
-RDEPENDS_perl-module-pod-simple-transcode += "perl-module-pod-simple-transcodesmart"
RDEPENDS_perl-module-pod-simple-transcode += "perl-module-vars"
RDEPENDS_perl-module-pod-simple-transcodesmart += "perl-module-encode"
RDEPENDS_perl-module-pod-simple-transcodesmart += "perl-module-pod-simple"
@@ -4055,7 +1611,6 @@ RDEPENDS_perl-module-socket += "perl-module-xsloader"
RDEPENDS_perl-module-sort += "perl-module-strict"
RDEPENDS_perl-module-storable += "perl-module-exporter"
RDEPENDS_perl-module-storable += "perl-module-io-file"
-RDEPENDS_perl-module-storable += "perl-module-xsloader"
RDEPENDS_perl-module-sub-util += "perl-module-exporter"
RDEPENDS_perl-module-sub-util += "perl-module-list-util"
RDEPENDS_perl-module-sub-util += "perl-module-strict"
@@ -4082,7 +1637,6 @@ RDEPENDS_perl-module-sys-syslog += "perl-module-xsloader"
RDEPENDS_perl-module-tap-base += "perl-module-base"
RDEPENDS_perl-module-tap-base += "perl-module-constant"
RDEPENDS_perl-module-tap-base += "perl-module-strict"
-RDEPENDS_perl-module-tap-base += "perl-module-tap-object"
RDEPENDS_perl-module-tap-base += "perl-module-warnings"
RDEPENDS_perl-module-tap-formatter-base += "perl-module-base"
RDEPENDS_perl-module-tap-formatter-base += "perl-module-posix"
@@ -4108,9 +1662,7 @@ RDEPENDS_perl-module-tap-formatter-console-session += "perl-module-warnings"
RDEPENDS_perl-module-tap-formatter-file += "perl-module-base"
RDEPENDS_perl-module-tap-formatter-file += "perl-module-posix"
RDEPENDS_perl-module-tap-formatter-file += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-file += "perl-module-tap-formatter-base"
RDEPENDS_perl-module-tap-formatter-file += "perl-module-tap-formatter-file-session"
-RDEPENDS_perl-module-tap-formatter-file += "perl-module-tap-formatter-session"
RDEPENDS_perl-module-tap-formatter-file += "perl-module-warnings"
RDEPENDS_perl-module-tap-formatter-file-session += "perl-module-base"
RDEPENDS_perl-module-tap-formatter-file-session += "perl-module-strict"
@@ -4127,7 +1679,6 @@ RDEPENDS_perl-module-tap-harness += "perl-module-base"
RDEPENDS_perl-module-tap-harness += "perl-module-file-path"
RDEPENDS_perl-module-tap-harness += "perl-module-io-handle"
RDEPENDS_perl-module-tap-harness += "perl-module-strict"
-RDEPENDS_perl-module-tap-harness += "perl-module-tap-formatter-file"
RDEPENDS_perl-module-tap-harness += "perl-module-warnings"
RDEPENDS_perl-module-tap-object += "perl-module-strict"
RDEPENDS_perl-module-tap-object += "perl-module-warnings"
@@ -4252,7 +1803,6 @@ RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-constant"
RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-strict"
RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-tap-parser-iteratorfactory"
RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-tap-parser-iterator-process"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-tap-parser-sourcehandler-executable"
RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-text-parsewords"
RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-warnings"
RDEPENDS_perl-module-tap-parser-sourcehandler-rawtap += "perl-module-base"
@@ -4319,7 +1869,6 @@ RDEPENDS_perl-module-test-simple += "perl-module-test-builder-module"
RDEPENDS_perl-module-test-tester-capture += "perl-module-config"
RDEPENDS_perl-module-test-tester-capture += "perl-module-strict"
RDEPENDS_perl-module-test-tester-capture += "perl-module-test-builder"
-RDEPENDS_perl-module-test-tester-capture += "perl-module-threads-shared"
RDEPENDS_perl-module-test-tester-capture += "perl-module-vars"
RDEPENDS_perl-module-test-tester-capturerunner += "perl-module-exporter"
RDEPENDS_perl-module-test-tester-capturerunner += "perl-module-strict"
@@ -4367,6 +1916,7 @@ RDEPENDS_perl-module-threads += "perl-module-overload"
RDEPENDS_perl-module-threads += "perl-module-strict"
RDEPENDS_perl-module-threads += "perl-module-warnings"
RDEPENDS_perl-module-threads += "perl-module-xsloader"
+RDEPENDS_perl-module-threads-shared += "perl-module-config"
RDEPENDS_perl-module-threads-shared += "perl-module-strict"
RDEPENDS_perl-module-threads-shared += "perl-module-warnings"
RDEPENDS_perl-module-threads-shared += "perl-module-xsloader"
@@ -4374,10 +1924,10 @@ RDEPENDS_perl-module-tie-array += "perl-module-strict"
RDEPENDS_perl-module-tie-file += "perl-module-fcntl"
RDEPENDS_perl-module-tie-file += "perl-module-posix"
RDEPENDS_perl-module-tie-file += "perl-module-strict"
+RDEPENDS_perl-module-tie-file += "perl-module-warnings"
RDEPENDS_perl-module-tie-handle += "perl-module-tie-stdhandle"
RDEPENDS_perl-module-tie-handle += "perl-module-warnings-register"
RDEPENDS_perl-module-tie-hash-namedcapture += "perl-module-strict"
-RDEPENDS_perl-module-tie-hash-namedcapture += "perl-module-xsloader"
RDEPENDS_perl-module-tie-hash += "perl-module-warnings-register"
RDEPENDS_perl-module-tie-memoize += "perl-module-strict"
RDEPENDS_perl-module-tie-memoize += "perl-module-tie-hash"
@@ -4448,9 +1998,9 @@ RDEPENDS_perl-module-unicode-ucd += "perl-module-exporter"
RDEPENDS_perl-module-unicode-ucd += "perl-module-feature"
RDEPENDS_perl-module-unicode-ucd += "perl-module-if"
RDEPENDS_perl-module-unicode-ucd += "perl-module-integer"
+RDEPENDS_perl-module-unicode-ucd += "perl-module-re"
RDEPENDS_perl-module-unicode-ucd += "perl-module-strict"
RDEPENDS_perl-module-unicode-ucd += "perl-module-unicode-normalize"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-utf8-heavy"
RDEPENDS_perl-module-unicode-ucd += "perl-module-warnings"
RDEPENDS_perl-module-user-grent += "perl-module-class-struct"
RDEPENDS_perl-module-user-grent += "perl-module-exporter"
@@ -4460,7 +2010,6 @@ RDEPENDS_perl-module-user-pwent += "perl-module-config"
RDEPENDS_perl-module-user-pwent += "perl-module-exporter"
RDEPENDS_perl-module-user-pwent += "perl-module-strict"
RDEPENDS_perl-module-user-pwent += "perl-module-warnings"
-RDEPENDS_perl-module-utf8 += "perl-module-utf8-heavy"
RDEPENDS_perl-module-version += "perl-module-strict"
RDEPENDS_perl-module-version += "perl-module-version-regex"
RDEPENDS_perl-module-version += "perl-module-warnings-register"
diff --git a/poky/meta/recipes-devtools/perl/perl_5.30.2.bb b/poky/meta/recipes-devtools/perl/perl_5.32.0.bb
index 26138ea9e..bba8263b9 100644
--- a/poky/meta/recipes-devtools/perl/perl_5.30.2.bb
+++ b/poky/meta/recipes-devtools/perl/perl_5.32.0.bb
@@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://Copying;md5=5b122a36d0f6dc55279a0ebc69f3c60b \
SRC_URI = "https://www.cpan.org/src/5.0/perl-${PV}.tar.gz;name=perl \
- https://github.com/arsv/perl-cross/releases/download/1.3.2/perl-cross-1.3.2.tar.gz;name=perl-cross \
+ https://github.com/arsv/perl-cross/releases/download/1.3.4/perl-cross-1.3.4.tar.gz;name=perl-cross \
file://perl-rdepends.txt \
file://0001-configure_tool.sh-do-not-quote-the-argument-to-comma.patch \
file://0001-ExtUtils-MakeMaker-add-LDFLAGS-when-linking-binary-m.patch \
@@ -18,10 +18,9 @@ SRC_URI = "https://www.cpan.org/src/5.0/perl-${PV}.tar.gz;name=perl \
file://0001-perl-cross-add-LDFLAGS-when-linking-libperl.patch \
file://perl-dynloader.patch \
file://0001-configure_path.sh-do-not-hardcode-prefix-lib-as-libr.patch \
- file://0001-enc2xs-Add-environment-variable-to-suppress-comments.patch \
file://0002-Constant-Fix-up-shebang.patch \
- file://0001-PATCH-perl-134117-Close-DATA-in-loc_tools.pl.patch \
file://determinism.patch \
+ file://perl-cross-makefile.patch \
"
SRC_URI_append_class-native = " \
file://perl-configpm-switch.patch \
@@ -30,8 +29,8 @@ SRC_URI_append_class-target = " \
file://encodefix.patch \
"
-SRC_URI[perl.sha256sum] = "66db7df8a91979eb576fac91743644da878244cf8ee152f02cd6f5cd7a731689"
-SRC_URI[perl-cross.sha256sum] = "defa12f0ad7be0b6c48b4f76e2fb5b37c1b37fbeb6e9ebe938279cd539a0c20c"
+SRC_URI[perl.sha256sum] = "efeb1ce1f10824190ad1cadbcccf6fdb8a5d37007d0100d2d9ae5f2b5900c0b4"
+SRC_URI[perl-cross.sha256sum] = "755aa0ca8141a942188a269564f86c3c82349f82c346ed5c992495d7f35138ba"
S = "${WORKDIR}/perl-${PV}"
@@ -140,6 +139,11 @@ do_install() {
# Fix up shared library
rm ${D}/${libdir}/perl5/${PV}/*/CORE/libperl.so
ln -sf ../../../../libperl.so.${PERL_LIB_VER} $(echo ${D}/${libdir}/perl5/${PV}/*/CORE)/libperl.so
+
+ # Try to catch Bug #13946
+ if [ -e ${D}/${libdir}/perl5/${PV}/Storable.pm ]; then
+ bbfatal 'non-arch specific Storable.pm found! See https://bugzilla.yoctoproject.org/show_bug.cgi?id=13946'
+ fi
}
do_install_append_class-target() {
@@ -156,7 +160,7 @@ do_install_append_class-nativesdk() {
ln -s Config_heavy.pl ${D}${libdir}/perl5/${PV}/${TARGET_ARCH}-linux/Config_heavy-target.pl
create_wrapper ${D}${bindir}/perl \
- PERL5LIB='$PERL5LIB:$OECORE_NATIVE_SYSROOT/${libdir_nativesdk}/perl5/site_perl/${PV}:$OECORE_NATIVE_SYSROOT/${libdir_nativesdk}/perl5/vendor_perl/${PV}:$OECORE_NATIVE_SYSROOT/${libdir_nativesdk}/perl5/${PV}'
+ PERL5LIB='$PERL5LIB:${SDKPATHNATIVE}/${libdir_nativesdk}/perl5/site_perl/${PV}:${SDKPATHNATIVE}/${libdir_nativesdk}/perl5/vendor_perl/${PV}:${SDKPATHNATIVE}/${libdir_nativesdk}/perl5/${PV}'
}
do_install_append_class-native () {
@@ -192,7 +196,6 @@ perl_package_preprocess () {
${PKGD}${bindir}/pod2text.perl \
${PKGD}${bindir}/pod2usage.perl \
${PKGD}${bindir}/podchecker.perl \
- ${PKGD}${bindir}/podselect.perl \
${PKGD}${libdir}/perl5/${PV}/${TARGET_ARCH}-linux/CORE/config.h \
${PKGD}${libdir}/perl5/${PV}/${TARGET_ARCH}-linux/CORE/perl.h \
${PKGD}${libdir}/perl5/${PV}/${TARGET_ARCH}-linux/CORE/pp.h \
@@ -212,7 +215,7 @@ inherit update-alternatives
ALTERNATIVE_PRIORITY = "100"
ALTERNATIVE_${PN}-misc = "corelist cpan enc2xs encguess h2ph h2xs instmodsh json_pp libnetcfg \
- piconv pl2pm pod2html pod2man pod2text pod2usage podchecker podselect \
+ piconv pl2pm pod2html pod2man pod2text pod2usage podchecker \
prove ptar ptardiff ptargrep shasum splain xsubpp zipdetails"
ALTERNATIVE_LINK_NAME[corelist] = "${bindir}/corelist"
ALTERNATIVE_LINK_NAME[cpan] = "${bindir}/cpan"
@@ -230,7 +233,6 @@ ALTERNATIVE_LINK_NAME[pod2man] = "${bindir}/pod2man"
ALTERNATIVE_LINK_NAME[pod2text] = "${bindir}/pod2text"
ALTERNATIVE_LINK_NAME[pod2usage] = "${bindir}/pod2usage"
ALTERNATIVE_LINK_NAME[podchecker] = "${bindir}/podchecker"
-ALTERNATIVE_LINK_NAME[podselect] = "${bindir}/podselect"
ALTERNATIVE_LINK_NAME[prove] = "${bindir}/prove"
ALTERNATIVE_LINK_NAME[ptar] = "${bindir}/ptar"
ALTERNATIVE_LINK_NAME[ptardiff] = "${bindir}/ptardiff"
@@ -306,7 +308,7 @@ python split_perl_packages () {
do_split_packages(d, libdir, r'Module/([^\/]*)\.pm', '${PN}-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True, prepend=False)
do_split_packages(d, libdir, r'Module/([^\/]*)/.*', '${PN}-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True, prepend=False)
do_split_packages(d, libdir, r'.*linux/([^\/].*)\.(pm|pl|e2x)', '${PN}-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True, prepend=False)
- do_split_packages(d, libdir, r'(^(?!(CPAN\/|CPANPLUS\/|Module\/|unicore\/)[^\/]).*)\.(pm|pl|e2x)', '${PN}-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True, prepend=False)
+ do_split_packages(d, libdir, r'(^(?!(CPAN\/|CPANPLUS\/|Module\/|unicore\/|.*linux\/)[^\/]).*)\.(pm|pl|e2x)', '${PN}-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True, prepend=False)
# perl-modules should recommend every perl module, and only the
# modules. Don't attempt to use the result of do_split_packages() as some
diff --git a/poky/meta/recipes-devtools/pkgconf/pkgconf_1.6.3.bb b/poky/meta/recipes-devtools/pkgconf/pkgconf_1.7.3.bb
index 732ca2a03..12496c384 100644
--- a/poky/meta/recipes-devtools/pkgconf/pkgconf_1.6.3.bb
+++ b/poky/meta/recipes-devtools/pkgconf/pkgconf_1.7.3.bb
@@ -20,8 +20,7 @@ SRC_URI = "\
file://pkg-config-native.in \
file://pkg-config-esdk.in \
"
-SRC_URI[md5sum] = "f93fb1be95a5cb62e43c219c82b5791a"
-SRC_URI[sha256sum] = "61f0b31b0d5ea0e862b454a80c170f57bad47879c0c42bd8de89200ff62ea210"
+SRC_URI[sha256sum] = "b846aea51cf696c3392a0ae58bef93e2e72f8e7073ca6ad1ed8b01c85871f9c0"
inherit autotools
diff --git a/poky/meta/recipes-devtools/pseudo/files/0001-Add-statx.patch b/poky/meta/recipes-devtools/pseudo/files/0001-Add-statx.patch
deleted file mode 100644
index f01e699de..000000000
--- a/poky/meta/recipes-devtools/pseudo/files/0001-Add-statx.patch
+++ /dev/null
@@ -1,106 +0,0 @@
-From 4e41a05de1f34ba00a68ca4f20fb49c4d1cbd2d0 Mon Sep 17 00:00:00 2001
-From: Richard Purdie <richard.purdie@linuxfoundation.org>
-Date: Wed, 6 Nov 2019 12:17:46 +0000
-Subject: [PATCH] Add statx glibc/syscall support
-
-Modern distros (e.g. fedora30) are starting to use the new statx() syscall through
-the newly exposed glibc wrapper function in software like coreutils (e.g. the ls
-command). Add support to intercept this to pseudo.
-
-Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-Upstream-Status: Submitted [Emailed to seebs]
----
- ports/linux/guts/statx.c | 48 ++++++++++++++++++++++++++++++++++++++++
- ports/linux/portdefs.h | 1 +
- ports/linux/wrapfuncs.in | 1 +
- 3 files changed, 50 insertions(+)
- create mode 100644 ports/linux/guts/statx.c
-
-diff --git a/ports/linux/statx/guts/statx.c b/ports/linux/statx/guts/statx.c
-new file mode 100644
-index 0000000..a3259c4
---- /dev/null
-+++ b/ports/linux/statx/guts/statx.c
-@@ -0,0 +1,42 @@
-+/*
-+ * Copyright (c) 2019 Linux Foundation
-+ * Author: Richard Purdie
-+ *
-+ * SPDX-License-Identifier: LGPL-2.1-only
-+ *
-+ * int
-+ * statx(int dirfd, const char *pathname, int flags, unsigned int mask, struct statx *statxbuf) {
-+ * int rc = -1;
-+ */
-+ pseudo_msg_t *msg;
-+ PSEUDO_STATBUF buf;
-+ int save_errno;
-+
-+ rc = real_statx(dirfd, pathname, flags, mask, statxbuf);
-+ save_errno = errno;
-+ if (rc == -1) {
-+ return rc;
-+ }
-+
-+ buf.st_uid = statxbuf->stx_uid;
-+ buf.st_gid = statxbuf->stx_gid;
-+ buf.st_dev = makedev(statxbuf->stx_dev_major, statxbuf->stx_dev_minor);
-+ buf.st_ino = statxbuf->stx_ino;
-+ buf.st_mode = statxbuf->stx_mode;
-+ buf.st_rdev = makedev(statxbuf->stx_rdev_major, statxbuf->stx_rdev_minor);
-+ buf.st_nlink = statxbuf->stx_nlink;
-+ msg = pseudo_client_op(OP_STAT, 0, -1, dirfd, pathname, &buf);
-+ if (msg && msg->result == RESULT_SUCCEED) {
-+ pseudo_debug(PDBGF_FILE, "statx(path %s), flags %o, stat rc %d, stat uid %o\n", pathname, flags, rc, statxbuf->stx_uid);
-+ statxbuf->stx_uid = msg->uid;
-+ statxbuf->stx_gid = msg->gid;
-+ statxbuf->stx_mode = msg->mode;
-+ statxbuf->stx_rdev_major = major(msg->rdev);
-+ statxbuf->stx_rdev_minor = minor(msg->rdev);
-+ } else {
-+ pseudo_debug(PDBGF_FILE, "statx(path %s) failed, flags %o, stat rc %d, stat uid %o\n", pathname, flags, rc, statxbuf->stx_uid);
-+ }
-+ errno = save_errno;
-+/* return rc;
-+ * }
-+ */
-diff --git a/ports/linux/statx/portdefs.h b/ports/linux/statx/portdefs.h
-new file mode 100644
-index 0000000..bf934dc
---- /dev/null
-+++ b/ports/linux/statx/portdefs.h
-@@ -0,0 +1,6 @@
-+/*
-+ * SPDX-License-Identifier: LGPL-2.1-only
-+ *
-+ */
-+#include <sys/stat.h>
-+#include <sys/sysmacros.h>
-diff --git a/ports/linux/statx/wrapfuncs.in b/ports/linux/statx/wrapfuncs.in
-new file mode 100644
-index 0000000..c9cd4c3
---- /dev/null
-+++ b/ports/linux/statx/wrapfuncs.in
-@@ -0,0 +1 @@
-+int statx(int dirfd, const char *pathname, int flags, unsigned int mask, struct statx *statxbuf);
-diff --git a/ports/linux/subports b/ports/linux/subports
-index a29044a..49081bf 100755
---- a/ports/linux/subports
-+++ b/ports/linux/subports
-@@ -54,3 +54,13 @@ else
- fi
- rm -f dummy.c dummy.o
-
-+cat > dummy.c <<EOF
-+#define _GNU_SOURCE
-+#include <sys/stat.h>
-+struct statx x;
-+EOF
-+if ${CC} -c -o dummy.o dummy.c >/dev/null 2>&1; then
-+ echo "linux/statx"
-+fi
-+rm -f dummy.c dummy.o
-+
---
-2.17.1
-
diff --git a/poky/meta/recipes-devtools/pseudo/files/0001-maketables-wrappers-use-Python-3.patch b/poky/meta/recipes-devtools/pseudo/files/0001-maketables-wrappers-use-Python-3.patch
deleted file mode 100644
index b2dbdad27..000000000
--- a/poky/meta/recipes-devtools/pseudo/files/0001-maketables-wrappers-use-Python-3.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From dbd34b1b2af8fbf44a0d5c37abe3448405819823 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Wed, 28 Aug 2019 19:20:29 +0200
-Subject: [PATCH] maketables/wrappers: use Python 3
-
-Changelog indicates they should be compatible.
-
-Upstream-Status: Pending
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- maketables | 2 +-
- makewrappers | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/maketables b/maketables
-index a211772..52285e2 100755
---- a/maketables
-+++ b/maketables
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- #
- # Copyright (c) 2008-2010, 2013 Wind River Systems, Inc.
- #
-diff --git a/makewrappers b/makewrappers
-index e84607d..b34f7eb 100755
---- a/makewrappers
-+++ b/makewrappers
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- #
- # Copyright (c) 2008-2011,2013 Wind River Systems, Inc.
- #
diff --git a/poky/meta/recipes-devtools/pseudo/files/0001-pseudo-On-a-DB-fixup-remove-files-that-do-not-exist-.patch b/poky/meta/recipes-devtools/pseudo/files/0001-pseudo-On-a-DB-fixup-remove-files-that-do-not-exist-.patch
deleted file mode 100644
index 9c49e33b0..000000000
--- a/poky/meta/recipes-devtools/pseudo/files/0001-pseudo-On-a-DB-fixup-remove-files-that-do-not-exist-.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From b0902e36108b49e6bc88d6b251cc2f8cffcd5a13 Mon Sep 17 00:00:00 2001
-From: Ricardo Ribalda <ricardo@ribalda.com>
-Date: Sun, 5 Apr 2020 11:40:30 +0000
-Subject: [PATCH] pseudo: On a DB fixup remove files that do not exist anymore
-
-If the user decides to fix a database, remove the files that do not
-exist anymore.
-If only DB test is selected do not change the behaviour (return error).
-
-Signed-off-by: Ricardo Ribalda <ricardo@ribalda.com>
-Upstream-Status: Submitted [https://lists.openembedded.org/g/openembedded-core/message/137045]
----
- pseudo.c | 13 ++++++++++---
- 1 file changed, 10 insertions(+), 3 deletions(-)
-
-diff --git a/pseudo.c b/pseudo.c
-index 0f5850e..98e5b0c 100644
---- a/pseudo.c
-+++ b/pseudo.c
-@@ -1087,9 +1087,15 @@ pseudo_db_check(int fix) {
- int fixup_needed = 0;
- pseudo_debug(PDBGF_DB, "Checking <%s>\n", m->path);
- if (lstat(m->path, &buf)) {
-- errors = EXIT_FAILURE;
-- pseudo_diag("can't stat <%s>\n", m->path);
-- continue;
-+ if (!fix) {
-+ pseudo_diag("can't stat <%s>\n", m->path);
-+ errors = EXIT_FAILURE;
-+ continue;
-+ } else {
-+ pseudo_debug(PDBGF_DB, "can't stat <%s>\n", m->path);
-+ fixup_needed = 2;
-+ goto do_fixup;
-+ }
- }
- /* can't check for device type mismatches, uid/gid, or
- * permissions, because those are the very things we
-@@ -1125,6 +1131,7 @@ pseudo_db_check(int fix) {
- S_ISDIR(m->mode));
- fixup_needed = 2;
- }
-+ do_fixup:
- if (fixup_needed) {
- /* in fixup mode, either delete (mismatches) or
- * correct (dev/ino).
---
-2.21.1
-
diff --git a/poky/meta/recipes-devtools/pseudo/files/0001-pseudo_ipc.h-Fix-enum-typedef.patch b/poky/meta/recipes-devtools/pseudo/files/0001-pseudo_ipc.h-Fix-enum-typedef.patch
deleted file mode 100644
index 33d4ef3b2..000000000
--- a/poky/meta/recipes-devtools/pseudo/files/0001-pseudo_ipc.h-Fix-enum-typedef.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From a491aececfedf7313d29b80d626e0964fb533548 Mon Sep 17 00:00:00 2001
-From: Jacob Kroon <jacob.kroon@gmail.com>
-Date: Sun, 3 May 2020 06:24:03 +0200
-Subject: [PATCH] pseudo_ipc.h: Fix enum typedef
-
-'pseudo_access_t' is a type, so use typedef.
-
-Fixes building pseudo with gcc 10 where -fno-common is the default.
-
-Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com>
-Upstream-Status: Submitted [https://lists.openembedded.org/g/openembedded-core/message/137758]
----
- pseudo_ipc.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/pseudo_ipc.h b/pseudo_ipc.h
-index caeae5c..d945257 100644
---- a/pseudo_ipc.h
-+++ b/pseudo_ipc.h
-@@ -29,7 +29,7 @@ typedef struct {
- char path[];
- } pseudo_msg_t;
-
--enum {
-+typedef enum {
- PSA_EXEC = 1,
- PSA_WRITE = (PSA_EXEC << 1),
- PSA_READ = (PSA_WRITE << 1),
---
-2.26.2
-
diff --git a/poky/meta/recipes-devtools/pseudo/files/0001-realpath.c-Remove-trailing-slashes.patch b/poky/meta/recipes-devtools/pseudo/files/0001-realpath.c-Remove-trailing-slashes.patch
deleted file mode 100644
index 17829ef3a..000000000
--- a/poky/meta/recipes-devtools/pseudo/files/0001-realpath.c-Remove-trailing-slashes.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 86c9a5610e3333ad6aaadb1ac1e8b5a2c948d119 Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.yang@windriver.com>
-Date: Mon, 25 Nov 2019 18:46:45 +0800
-Subject: [PATCH] realpath.c: Remove trailing slashes
-
-Linux system's realpath() remove trailing slashes, but pseudo's doesn't, need
-make them identical.
-
-E.g., the following code (rel.c) prints '/tmp' with system's realpath, but
-pseudo's realpath prints '/tmp/':
-
- #include <stdio.h>
- #include <limits.h>
- #include <stdlib.h>
-
- int main() {
- char out[PATH_MAX];
- printf("%s\n", realpath("/tmp/", out));
- return 0;
- }
-
-$ bitbake base-passwd -cdevshell # For pseudo env
-$ gcc rel.c
-$ ./a.out
-/tmp/ (but should be /tmp)
-
-This patch fixes the problem.
-
-Upstream-Status: Submitted [https://lists.yoctoproject.org/g/poky/message/11879]
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
----
- ports/unix/guts/realpath.c | 9 ++++++++-
- 1 file changed, 8 insertions(+), 1 deletion(-)
-
-diff --git a/ports/unix/guts/realpath.c b/ports/unix/guts/realpath.c
---- a/ports/unix/guts/realpath.c
-+++ b/ports/unix/guts/realpath.c
-@@ -14,7 +14,14 @@
- errno = ENAMETOOLONG;
- return NULL;
- }
-- if ((len = strlen(rname)) >= pseudo_sys_path_max()) {
-+ len = strlen(rname);
-+ char *ep = rname + len - 1;
-+ while (ep > rname && *ep == '/') {
-+ --len;
-+ *(ep--) = '\0';
-+ }
-+
-+ if (len >= pseudo_sys_path_max()) {
- errno = ENAMETOOLONG;
- return NULL;
- }
---
-2.7.4
-
diff --git a/poky/meta/recipes-devtools/pseudo/files/0006-xattr-adjust-for-attr-2.4.48-release.patch b/poky/meta/recipes-devtools/pseudo/files/0006-xattr-adjust-for-attr-2.4.48-release.patch
deleted file mode 100644
index 161357d55..000000000
--- a/poky/meta/recipes-devtools/pseudo/files/0006-xattr-adjust-for-attr-2.4.48-release.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From 93d95ed2eaedcca110c214e1fe3f8896b1f6f853 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Tue, 17 Dec 2019 20:24:27 +0100
-Subject: [PATCH] xattr: adjust for attr 2.4.48 release
-
-Latest versions of attr have removed the xattr.h header,
-with the rationale that libc is providing the same wrappers.
-
-attr/attributes.h is providing the ENOATTR definition.
-
-Upstream-Status: Pending
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- ports/linux/subports | 5 +++--
- ports/linux/xattr/portdefs.h | 3 ++-
- 2 files changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/ports/linux/subports b/ports/linux/subports
-index 2c43ac9..740ec83 100755
---- a/ports/linux/subports
-+++ b/ports/linux/subports
-@@ -29,11 +29,12 @@ fi
- if $port_xattr; then
- cat > dummy.c <<EOF
- #include <sys/types.h>
--#include <attr/xattr.h>
-+#include <sys/xattr.h>
-+#include <attr/attributes.h>
- int i;
- EOF
- if ! ${CC} -c -o dummy.o dummy.c >/dev/null 2>&1; then
-- echo >&2 "Warning: Can't compile trivial program using <attr/xattr.h>".
-+ echo >&2 "Warning: Can't compile trivial program using <attr/attributes.h>".
- echo >&2 " xattr support will require that header."
- fi
- echo "linux/xattr"
-diff --git a/ports/linux/xattr/portdefs.h b/ports/linux/xattr/portdefs.h
-index 56cd3ca..068d39a 100644
---- a/ports/linux/xattr/portdefs.h
-+++ b/ports/linux/xattr/portdefs.h
-@@ -2,5 +2,6 @@
- * SPDX-License-Identifier: LGPL-2.1-only
- *
- */
--#include <attr/xattr.h>
-+#include <sys/xattr.h>
-+#include <attr/attributes.h>
- #include <stdint.h>
diff --git a/poky/meta/recipes-devtools/pseudo/files/moreretries.patch b/poky/meta/recipes-devtools/pseudo/files/moreretries.patch
deleted file mode 100644
index adea2665b..000000000
--- a/poky/meta/recipes-devtools/pseudo/files/moreretries.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Increase the number of retries in pseudo due to occasional slow
-server shutdowns.
-
-Upstream-Status: Pending
-RP 2016/2/28
-
-Index: git/pseudo_client.c
-===================================================================
---- git.orig/pseudo_client.c
-+++ git/pseudo_client.c
-@@ -1282,7 +1282,7 @@ pseudo_client_setup(void) {
- }
- }
-
--#define PSEUDO_RETRIES 20
-+#define PSEUDO_RETRIES 250
- static pseudo_msg_t *
- pseudo_client_request(pseudo_msg_t *msg, size_t len, const char *path) {
- pseudo_msg_t *response = 0;
diff --git a/poky/meta/recipes-devtools/pseudo/files/seccomp.patch b/poky/meta/recipes-devtools/pseudo/files/seccomp.patch
deleted file mode 100644
index 283f99794..000000000
--- a/poky/meta/recipes-devtools/pseudo/files/seccomp.patch
+++ /dev/null
@@ -1,137 +0,0 @@
-Pseudo changes the syscall access patterns which makes it incompatible with
-seccomp. Therefore intercept the seccomp syscall and alter it, pretending that
-seccomp was setup when in fact we do nothing. If we error as unsupported,
-utilities like file will exit with errors so we can't just disable it.
-
-Upstream-Status: Pending
-RP 2020/4/3
-Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-
-It fails to compile pseudo-native on centos 7:
-
-| ports/linux/pseudo_wrappers.c: In function ‘prctl’:
-| ports/linux/pseudo_wrappers.c:129:14: error: ‘SECCOMP_SET_MODE_FILTER’ undeclared (first use in this function)
-| if (cmd == SECCOMP_SET_MODE_FILTER) {
-| ^
-
-Add macro guard for seccomp to avoid the failure.
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
-
-Index: git/ports/linux/pseudo_wrappers.c
-===================================================================
---- git.orig/ports/linux/pseudo_wrappers.c
-+++ git/ports/linux/pseudo_wrappers.c
-@@ -57,6 +57,7 @@ int pseudo_capset(cap_user_header_t hdrp
- long
- syscall(long number, ...) {
- long rc = -1;
-+ va_list ap;
-
- if (!pseudo_check_wrappers() || !real_syscall) {
- /* rc was initialized to the "failure" value */
-@@ -77,6 +78,20 @@ syscall(long number, ...) {
- (void) number;
- #endif
-
-+#ifdef SYS_seccomp
-+ /* pseudo and seccomp are incompatible as pseudo uses different syscalls
-+ * so pretend to enable seccomp but really do nothing */
-+ if (number == SYS_seccomp) {
-+ unsigned long cmd;
-+ va_start(ap, number);
-+ cmd = va_arg(ap, unsigned long);
-+ va_end(ap);
-+ if (cmd == SECCOMP_SET_MODE_FILTER) {
-+ return 0;
-+ }
-+ }
-+#endif
-+
- /* gcc magic to attempt to just pass these args to syscall. we have to
- * guess about the number of args; the docs discuss calling conventions
- * up to 7, so let's try that?
-@@ -92,3 +108,44 @@ static long wrap_syscall(long nr, va_lis
- (void) ap;
- return -1;
- }
-+
-+int
-+prctl(int option, ...) {
-+ int rc = -1;
-+ va_list ap;
-+
-+ if (!pseudo_check_wrappers() || !real_prctl) {
-+ /* rc was initialized to the "failure" value */
-+ pseudo_enosys("prctl");
-+ return rc;
-+ }
-+
-+#ifdef SECCOMP_SET_MODE_FILTER
-+ /* pseudo and seccomp are incompatible as pseudo uses different syscalls
-+ * so pretend to enable seccomp but really do nothing */
-+ if (option == PR_SET_SECCOMP) {
-+ unsigned long cmd;
-+ va_start(ap, option);
-+ cmd = va_arg(ap, unsigned long);
-+ va_end(ap);
-+ if (cmd == SECCOMP_SET_MODE_FILTER) {
-+ return 0;
-+ }
-+ }
-+#endif
-+
-+ /* gcc magic to attempt to just pass these args to prctl. we have to
-+ * guess about the number of args; the docs discuss calling conventions
-+ * up to 5, so let's try that?
-+ */
-+ void *res = __builtin_apply((void (*)()) real_prctl, __builtin_apply_args(), sizeof(long) * 5);
-+ __builtin_return(res);
-+}
-+
-+/* unused.
-+ */
-+static int wrap_prctl(int option, va_list ap) {
-+ (void) option;
-+ (void) ap;
-+ return -1;
-+}
-Index: git/ports/linux/guts/prctl.c
-===================================================================
---- /dev/null
-+++ git/ports/linux/guts/prctl.c
-@@ -0,0 +1,15 @@
-+/*
-+ * Copyright (c) 2020 Richard Purdie
-+ *
-+ * SPDX-License-Identifier: LGPL-2.1-only
-+ *
-+ * int prctl(int option, ...)
-+ * int rc = -1;
-+ */
-+
-+ /* we should never get here, prctl is hand-wrapped */
-+ rc = -1;
-+
-+/* return rc;
-+ * }
-+ */
-Index: git/ports/linux/portdefs.h
-===================================================================
---- git.orig/ports/linux/portdefs.h
-+++ git/ports/linux/portdefs.h
-@@ -32,3 +32,5 @@ GLIBC_COMPAT_SYMBOL(memcpy,2.0);
-
- #include <linux/capability.h>
- #include <sys/syscall.h>
-+#include <sys/prctl.h>
-+#include <linux/seccomp.h>
-Index: git/ports/linux/wrapfuncs.in
-===================================================================
---- git.orig/ports/linux/wrapfuncs.in
-+++ git/ports/linux/wrapfuncs.in
-@@ -56,3 +56,4 @@ int getgrent_r(struct group *gbuf, char
- int capset(cap_user_header_t hdrp, const cap_user_data_t datap); /* real_func=pseudo_capset */
- long syscall(long nr, ...); /* hand_wrapped=1 */
- int renameat2(int olddirfd, const char *oldpath, int newdirfd, const char *newpath, unsigned int flags); /* flags=AT_SYMLINK_NOFOLLOW */
-+int prctl(int option, ...); /* hand_wrapped=1 */
diff --git a/poky/meta/recipes-devtools/pseudo/files/toomanyfiles.patch b/poky/meta/recipes-devtools/pseudo/files/toomanyfiles.patch
deleted file mode 100644
index bda7e4b20..000000000
--- a/poky/meta/recipes-devtools/pseudo/files/toomanyfiles.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From b0b25fbc041a148d1de09f5a6503cd95973ec77c Mon Sep 17 00:00:00 2001
-From: Richard Purdie <richard.purdie@linuxfoundation.org>
-Date: Tue, 25 Apr 2017 15:25:54 +0100
-Subject: [PATCH 3/3] pseudo: Handle too many files deadlock
-
-Currently if we max out the maximum number of files, pseudo can deadlock, unable to
-accept new connections yet unable to move forward and unblock the other processes
-waiting either.
-
-Rather than hang, when this happens, close out inactive connections, allowing us
-to accept the new ones. The disconnected clients will simply reconnect. There is
-a small risk of data loss here sadly but its better than hanging.
-
-RP
-2017/4/25
-
-Upstream-Status: Submitted [Peter is aware of the issue]
-
----
- pseudo_server.c | 10 ++++++++++
- 1 file changed, 10 insertions(+)
-
-diff --git a/pseudo_server.c b/pseudo_server.c
-index dac3258..15a3e8f 100644
---- a/pseudo_server.c
-+++ b/pseudo_server.c
-@@ -802,6 +802,7 @@ pseudo_server_loop(void) {
- struct sigaction eat_usr2 = {
- .sa_handler = set_do_list_clients
- };
-+ int hitmaxfiles;
-
- clients = malloc(16 * sizeof(*clients));
-
-@@ -820,6 +821,7 @@ pseudo_server_loop(void) {
- active_clients = 1;
- max_clients = 16;
- highest_client = 0;
-+ hitmaxfiles = 0;
-
- pseudo_debug(PDBGF_SERVER, "server loop started.\n");
- if (listen_fd < 0) {
-@@ -878,10 +880,15 @@ pseudo_server_loop(void) {
- } else {
- serve_client(i);
- }
-+ } else if (hitmaxfiles) {
-+ /* Only close one per loop iteration in the interests of caution */
-+ close_client(i);
-+ hitmaxfiles = 0;
- }
- if (die_forcefully)
- break;
- }
-+ hitmaxfiles = 0;
- if (!die_forcefully &&
- (FD_ISSET(clients[0].fd, &events) ||
- FD_ISSET(clients[0].fd, &reads))) {
-@@ -903,6 +910,9 @@ pseudo_server_loop(void) {
- */
- pseudo_server_timeout = DEFAULT_PSEUDO_SERVER_TIMEOUT;
- die_peacefully = 0;
-+ } else if (errno == EMFILE) {
-+ hitmaxfiles = 1;
-+ pseudo_debug(PDBGF_SERVER, "Hit max open files, dropping a client.\n");
- }
- }
- pseudo_debug(PDBGF_SERVER, "server loop complete [%d clients left]\n", active_clients);
---
-2.15.1
-
diff --git a/poky/meta/recipes-devtools/pseudo/pseudo_git.bb b/poky/meta/recipes-devtools/pseudo/pseudo_git.bb
index 324ae9071..3b623d8bd 100644
--- a/poky/meta/recipes-devtools/pseudo/pseudo_git.bb
+++ b/poky/meta/recipes-devtools/pseudo/pseudo_git.bb
@@ -1,21 +1,12 @@
require pseudo.inc
-SRC_URI = "git://git.yoctoproject.org/pseudo \
+SRC_URI = "git://git.yoctoproject.org/pseudo;branch=oe-core \
file://0001-configure-Prune-PIE-flags.patch \
file://fallback-passwd \
file://fallback-group \
- file://moreretries.patch \
- file://toomanyfiles.patch \
- file://0001-maketables-wrappers-use-Python-3.patch \
- file://0001-Add-statx.patch \
- file://0001-realpath.c-Remove-trailing-slashes.patch \
- file://0006-xattr-adjust-for-attr-2.4.48-release.patch \
- file://seccomp.patch \
- file://0001-pseudo-On-a-DB-fixup-remove-files-that-do-not-exist-.patch \
- file://0001-pseudo_ipc.h-Fix-enum-typedef.patch \
"
-SRCREV = "060058bb29f70b244e685b3c704eb0641b736f73"
+SRCREV = "d6b1b13c268d7246f0288d32d6b5eccc658cff4e"
S = "${WORKDIR}/git"
PV = "1.9.0+git${SRCPV}"
diff --git a/poky/meta/recipes-devtools/python-numpy/files/0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch b/poky/meta/recipes-devtools/python-numpy/files/0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch
index 98a970583..cdb6a473d 100644
--- a/poky/meta/recipes-devtools/python-numpy/files/0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch
+++ b/poky/meta/recipes-devtools/python-numpy/files/0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch
@@ -1,4 +1,4 @@
-From 672a75c8417ce08db9e31fc415ec445479231d5a Mon Sep 17 00:00:00 2001
+From 27f6687e49bf555fc494d2f14bae6ecd0fa30f14 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Thu, 10 Dec 2015 13:20:30 +0200
Subject: [PATCH] Don't search /usr and so on for libraries by default to
@@ -14,11 +14,11 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
1 file changed, 5 insertions(+), 37 deletions(-)
diff --git a/numpy/distutils/system_info.py b/numpy/distutils/system_info.py
-index ba2b1f4..f94dce1 100644
+index 3a6a7b2..6c2c3da 100644
--- a/numpy/distutils/system_info.py
+++ b/numpy/distutils/system_info.py
-@@ -278,45 +278,13 @@ if sys.platform == 'win32':
- add_system_root(os.path.join(conda_dir, 'Library'))
+@@ -309,45 +309,13 @@ if sys.platform == 'win32':
+ add_system_root(os.path.join(conda_dir, 'Library'))
else:
- default_lib_dirs = libpaths(['/usr/local/lib', '/opt/lib', '/usr/lib',
@@ -68,3 +68,6 @@ index ba2b1f4..f94dce1 100644
if os.path.join(sys.prefix, 'lib') not in default_lib_dirs:
default_lib_dirs.insert(0, os.path.join(sys.prefix, 'lib'))
+--
+2.17.1
+
diff --git a/poky/meta/recipes-devtools/python-numpy/files/0001-convert-shebang-from-python-to-python3.patch b/poky/meta/recipes-devtools/python-numpy/files/0001-convert-shebang-from-python-to-python3.patch
deleted file mode 100644
index a41624442..000000000
--- a/poky/meta/recipes-devtools/python-numpy/files/0001-convert-shebang-from-python-to-python3.patch
+++ /dev/null
@@ -1,555 +0,0 @@
-From 00848d760fa3999e2bed759b585452b35d65d6ec Mon Sep 17 00:00:00 2001
-From: Changqing Li <changqing.li@windriver.com>
-Date: Thu, 5 Mar 2020 12:02:35 +0800
-Subject: [PATCH] convert shebang from python to python3
-
-Upstream-Status: Backport
-[https://github.com/numpy/numpy/commit/583901a074dc65145d3d6136ba7dcd02634d680b]
-
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
-
----
- doc/DISTUTILS.rst.txt | 2 +-
- doc/cdoc/numpyfilter.py | 2 +-
- doc/postprocess.py | 2 +-
- doc/summarize.py | 2 +-
- numpy/distutils/conv_template.py | 2 +-
- numpy/distutils/cpuinfo.py | 2 +-
- numpy/distutils/from_template.py | 2 +-
- numpy/distutils/setup.py | 2 +-
- numpy/distutils/system_info.py | 2 +-
- numpy/f2py/__init__.py | 2 +-
- numpy/f2py/auxfuncs.py | 2 +-
- numpy/f2py/capi_maps.py | 2 +-
- numpy/f2py/cb_rules.py | 2 +-
- numpy/f2py/cfuncs.py | 2 +-
- numpy/f2py/common_rules.py | 2 +-
- numpy/f2py/crackfortran.py | 2 +-
- numpy/f2py/diagnose.py | 2 +-
- numpy/f2py/f2py2e.py | 2 +-
- numpy/f2py/f90mod_rules.py | 2 +-
- numpy/f2py/func2subr.py | 2 +-
- numpy/f2py/rules.py | 2 +-
- numpy/f2py/setup.py | 2 +-
- numpy/f2py/use_rules.py | 2 +-
- numpy/linalg/lapack_lite/clapack_scrub.py | 2 +-
- numpy/linalg/lapack_lite/make_lite.py | 2 +-
- numpy/ma/bench.py | 2 +-
- numpy/ma/setup.py | 2 +-
- numpy/matrixlib/setup.py | 2 +-
- numpy/random/_examples/cython/extending.pyx | 2 +-
- numpy/random/_examples/cython/extending_distributions.pyx | 2 +-
- numpy/setup.py | 2 +-
- numpy/testing/print_coercion_tables.py | 2 +-
- numpy/testing/setup.py | 2 +-
- runtests.py | 2 +-
- setup.py | 2 +-
- tools/c_coverage/c_coverage_report.py | 2 +-
- tools/changelog.py | 2 +-
- tools/ci/push_docs_to_repo.py | 2 +-
- tools/find_deprecated_escaped_characters.py | 2 +-
- tools/refguide_check.py | 2 +-
- tools/swig/test/setup.py | 2 +-
- tools/swig/test/testArray.py | 2 +-
- tools/swig/test/testFarray.py | 2 +-
- tools/swig/test/testFlat.py | 2 +-
- tools/swig/test/testFortran.py | 2 +-
- tools/swig/test/testMatrix.py | 2 +-
- tools/swig/test/testSuperTensor.py | 2 +-
- tools/swig/test/testTensor.py | 2 +-
- tools/swig/test/testVector.py | 2 +-
- 49 files changed, 49 insertions(+), 49 deletions(-)
-
-diff --git a/doc/DISTUTILS.rst.txt b/doc/DISTUTILS.rst.txt
-index bcef825..bc1700f 100644
---- a/doc/DISTUTILS.rst.txt
-+++ b/doc/DISTUTILS.rst.txt
-@@ -59,7 +59,7 @@ SciPy pure Python package example
-
- Below is an example of a minimal ``setup.py`` file for a pure SciPy package::
-
-- #!/usr/bin/env python
-+ #!/usr/bin/env python3
- def configuration(parent_package='',top_path=None):
- from numpy.distutils.misc_util import Configuration
- config = Configuration('mypackage',parent_package,top_path)
-diff --git a/doc/cdoc/numpyfilter.py b/doc/cdoc/numpyfilter.py
-index 0ec5069..067bd36 100755
---- a/doc/cdoc/numpyfilter.py
-+++ b/doc/cdoc/numpyfilter.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
- numpyfilter.py INPUTFILE
-
-diff --git a/doc/postprocess.py b/doc/postprocess.py
-index 2e50c11..1be6f39 100755
---- a/doc/postprocess.py
-+++ b/doc/postprocess.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
- %prog MODE FILES...
-
-diff --git a/doc/summarize.py b/doc/summarize.py
-index cfce271..563af02 100755
---- a/doc/summarize.py
-+++ b/doc/summarize.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
- summarize.py
-
-diff --git a/numpy/distutils/conv_template.py b/numpy/distutils/conv_template.py
-index 3bcb7b8..88432c8 100644
---- a/numpy/distutils/conv_template.py
-+++ b/numpy/distutils/conv_template.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
- takes templated file .xxx.src and produces .xxx file where .xxx is
- .i or .c or .h, using the following template rules
-diff --git a/numpy/distutils/cpuinfo.py b/numpy/distutils/cpuinfo.py
-index bc97283..87502a9 100644
---- a/numpy/distutils/cpuinfo.py
-+++ b/numpy/distutils/cpuinfo.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
- cpuinfo
-
-diff --git a/numpy/distutils/from_template.py b/numpy/distutils/from_template.py
-index c5c1163..af75971 100644
---- a/numpy/distutils/from_template.py
-+++ b/numpy/distutils/from_template.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
-
- process_file(filename)
-diff --git a/numpy/distutils/setup.py b/numpy/distutils/setup.py
-index 82a53bd..646921b 100644
---- a/numpy/distutils/setup.py
-+++ b/numpy/distutils/setup.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- from __future__ import division, print_function
-
- def configuration(parent_package='',top_path=None):
-diff --git a/numpy/distutils/system_info.py b/numpy/distutils/system_info.py
-index 4f340b6..189081d 100644
---- a/numpy/distutils/system_info.py
-+++ b/numpy/distutils/system_info.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
- This file defines a set of system_info classes for getting
- information about various resources (libraries, library directories,
-diff --git a/numpy/f2py/__init__.py b/numpy/f2py/__init__.py
-index 42e3632..09a3657 100644
---- a/numpy/f2py/__init__.py
-+++ b/numpy/f2py/__init__.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """Fortran to Python Interface Generator.
-
- """
-diff --git a/numpy/f2py/auxfuncs.py b/numpy/f2py/auxfuncs.py
-index 404bdbd..d23d959 100644
---- a/numpy/f2py/auxfuncs.py
-+++ b/numpy/f2py/auxfuncs.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
-
- Auxiliary functions for f2py2e.
-diff --git a/numpy/f2py/capi_maps.py b/numpy/f2py/capi_maps.py
-index ce79f68..e5d3fd2 100644
---- a/numpy/f2py/capi_maps.py
-+++ b/numpy/f2py/capi_maps.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
-
- Copyright 1999,2000 Pearu Peterson all rights reserved,
-diff --git a/numpy/f2py/cb_rules.py b/numpy/f2py/cb_rules.py
-index 183d7c2..93e93fe 100644
---- a/numpy/f2py/cb_rules.py
-+++ b/numpy/f2py/cb_rules.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
-
- Build call-back mechanism for f2py2e.
-diff --git a/numpy/f2py/cfuncs.py b/numpy/f2py/cfuncs.py
-index ccb7b3a..cdb783d 100644
---- a/numpy/f2py/cfuncs.py
-+++ b/numpy/f2py/cfuncs.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
-
- C declarations, CPP macros, and C functions for f2py2e.
-diff --git a/numpy/f2py/common_rules.py b/numpy/f2py/common_rules.py
-index f61d881..fe510bf 100644
---- a/numpy/f2py/common_rules.py
-+++ b/numpy/f2py/common_rules.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
-
- Build common block mechanism for f2py2e.
-diff --git a/numpy/f2py/crackfortran.py b/numpy/f2py/crackfortran.py
-index 2aaf5d7..fb5ef2f 100755
---- a/numpy/f2py/crackfortran.py
-+++ b/numpy/f2py/crackfortran.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
- crackfortran --- read fortran (77,90) code and extract declaration information.
-
-diff --git a/numpy/f2py/diagnose.py b/numpy/f2py/diagnose.py
-index 0241fed..6c0304c 100644
---- a/numpy/f2py/diagnose.py
-+++ b/numpy/f2py/diagnose.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- from __future__ import division, absolute_import, print_function
-
- import os
-diff --git a/numpy/f2py/f2py2e.py b/numpy/f2py/f2py2e.py
-index d03eff9..c17bfd9 100755
---- a/numpy/f2py/f2py2e.py
-+++ b/numpy/f2py/f2py2e.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
-
- f2py2e - Fortran to Python C/API generator. 2nd Edition.
-diff --git a/numpy/f2py/f90mod_rules.py b/numpy/f2py/f90mod_rules.py
-index 85eae80..70be128 100644
---- a/numpy/f2py/f90mod_rules.py
-+++ b/numpy/f2py/f90mod_rules.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
-
- Build F90 module support for f2py2e.
-diff --git a/numpy/f2py/func2subr.py b/numpy/f2py/func2subr.py
-index 6010d5a..fdea0c2 100644
---- a/numpy/f2py/func2subr.py
-+++ b/numpy/f2py/func2subr.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
-
- Rules for building C/API module with f2py2e.
-diff --git a/numpy/f2py/rules.py b/numpy/f2py/rules.py
-index f2f713b..f87b03c 100755
---- a/numpy/f2py/rules.py
-+++ b/numpy/f2py/rules.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
-
- Rules for building C/API module with f2py2e.
-diff --git a/numpy/f2py/setup.py b/numpy/f2py/setup.py
-index a8c1401..2e7a517 100644
---- a/numpy/f2py/setup.py
-+++ b/numpy/f2py/setup.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
- setup.py for installing F2PY
-
-diff --git a/numpy/f2py/use_rules.py b/numpy/f2py/use_rules.py
-index 6f44f16..8214f42 100644
---- a/numpy/f2py/use_rules.py
-+++ b/numpy/f2py/use_rules.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
-
- Build 'use others module data' mechanism for f2py2e.
-diff --git a/numpy/linalg/lapack_lite/clapack_scrub.py b/numpy/linalg/lapack_lite/clapack_scrub.py
-index 4345861..91e66e7 100644
---- a/numpy/linalg/lapack_lite/clapack_scrub.py
-+++ b/numpy/linalg/lapack_lite/clapack_scrub.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- from __future__ import division, absolute_import, print_function
-
- import sys, os
-diff --git a/numpy/linalg/lapack_lite/make_lite.py b/numpy/linalg/lapack_lite/make_lite.py
-index 61102d6..0211f4e 100755
---- a/numpy/linalg/lapack_lite/make_lite.py
-+++ b/numpy/linalg/lapack_lite/make_lite.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
- Usage: make_lite.py <wrapped_routines_file> <lapack_dir> <output_dir>
-
-diff --git a/numpy/ma/bench.py b/numpy/ma/bench.py
-index a9ba42d..a377436 100644
---- a/numpy/ma/bench.py
-+++ b/numpy/ma/bench.py
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#!/usr/bin/env python3
- # -*- coding: utf-8 -*-
-
- from __future__ import division, print_function
-diff --git a/numpy/ma/setup.py b/numpy/ma/setup.py
-index d1d6c89..a04b79b 100644
---- a/numpy/ma/setup.py
-+++ b/numpy/ma/setup.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- from __future__ import division, print_function
-
- def configuration(parent_package='',top_path=None):
-diff --git a/numpy/matrixlib/setup.py b/numpy/matrixlib/setup.py
-index d0981d6..57534d1 100644
---- a/numpy/matrixlib/setup.py
-+++ b/numpy/matrixlib/setup.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- from __future__ import division, print_function
-
- def configuration(parent_package='', top_path=None):
-diff --git a/numpy/random/_examples/cython/extending.pyx b/numpy/random/_examples/cython/extending.pyx
-index 7a0dfe0..3a7f81a 100644
---- a/numpy/random/_examples/cython/extending.pyx
-+++ b/numpy/random/_examples/cython/extending.pyx
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- #cython: language_level=3
-
- from libc.stdint cimport uint32_t
-diff --git a/numpy/random/_examples/cython/extending_distributions.pyx b/numpy/random/_examples/cython/extending_distributions.pyx
-index 1bef506..4da6a4b 100644
---- a/numpy/random/_examples/cython/extending_distributions.pyx
-+++ b/numpy/random/_examples/cython/extending_distributions.pyx
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- #cython: language_level=3
- """
- This file shows how the to use a BitGenerator to create a distribution.
-diff --git a/numpy/setup.py b/numpy/setup.py
-index 4ccdaee..db06c82 100644
---- a/numpy/setup.py
-+++ b/numpy/setup.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- from __future__ import division, print_function
-
-
-diff --git a/numpy/testing/print_coercion_tables.py b/numpy/testing/print_coercion_tables.py
-index 72b22ce..1e9a301 100755
---- a/numpy/testing/print_coercion_tables.py
-+++ b/numpy/testing/print_coercion_tables.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """Prints type-coercion tables for the built-in NumPy types
-
- """
-diff --git a/numpy/testing/setup.py b/numpy/testing/setup.py
-index 7c3f2fb..bd315ee 100755
---- a/numpy/testing/setup.py
-+++ b/numpy/testing/setup.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- from __future__ import division, print_function
-
-
-diff --git a/runtests.py b/runtests.py
-index a38054f..383ddaa 100755
---- a/runtests.py
-+++ b/runtests.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
- runtests.py [OPTIONS] [-- ARGS]
-
-diff --git a/setup.py b/setup.py
-index d7f807b..705ea5d 100755
---- a/setup.py
-+++ b/setup.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """ NumPy is the fundamental package for array computing with Python.
-
- It provides:
-diff --git a/tools/c_coverage/c_coverage_report.py b/tools/c_coverage/c_coverage_report.py
-index 327f6dc..8837684 100755
---- a/tools/c_coverage/c_coverage_report.py
-+++ b/tools/c_coverage/c_coverage_report.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
- A script to create C code-coverage reports based on the output of
- valgrind's callgrind tool.
-diff --git a/tools/changelog.py b/tools/changelog.py
-index b135b14..5d8b33c 100755
---- a/tools/changelog.py
-+++ b/tools/changelog.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- # -*- encoding:utf-8 -*-
- """
- Script to generate contributor and pull request lists
-diff --git a/tools/ci/push_docs_to_repo.py b/tools/ci/push_docs_to_repo.py
-index a989668..ae53054 100755
---- a/tools/ci/push_docs_to_repo.py
-+++ b/tools/ci/push_docs_to_repo.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
-
- import argparse
- import subprocess
-diff --git a/tools/find_deprecated_escaped_characters.py b/tools/find_deprecated_escaped_characters.py
-index 6f90001..10e0378 100644
---- a/tools/find_deprecated_escaped_characters.py
-+++ b/tools/find_deprecated_escaped_characters.py
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#!/usr/bin/env python3
- r"""
- Look for escape sequences deprecated in Python 3.6.
-
-diff --git a/tools/refguide_check.py b/tools/refguide_check.py
-index 2c62809..a19a29e 100644
---- a/tools/refguide_check.py
-+++ b/tools/refguide_check.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
- refguide_check.py [OPTIONS] [-- ARGS]
-
-diff --git a/tools/swig/test/setup.py b/tools/swig/test/setup.py
-index 4ff870e..f8f05e6 100755
---- a/tools/swig/test/setup.py
-+++ b/tools/swig/test/setup.py
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#!/usr/bin/env python3
- from __future__ import division, print_function
-
- # System imports
-diff --git a/tools/swig/test/testArray.py b/tools/swig/test/testArray.py
-index 8d9c797..54ffe71 100755
---- a/tools/swig/test/testArray.py
-+++ b/tools/swig/test/testArray.py
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#!/usr/bin/env python3
- from __future__ import division, absolute_import, print_function
-
- # System imports
-diff --git a/tools/swig/test/testFarray.py b/tools/swig/test/testFarray.py
-index e8bf711..b377f7c 100755
---- a/tools/swig/test/testFarray.py
-+++ b/tools/swig/test/testFarray.py
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#!/usr/bin/env python3
- from __future__ import division, absolute_import, print_function
-
- # System imports
-diff --git a/tools/swig/test/testFlat.py b/tools/swig/test/testFlat.py
-index 71be277..55034bf 100755
---- a/tools/swig/test/testFlat.py
-+++ b/tools/swig/test/testFlat.py
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#!/usr/bin/env python3
- from __future__ import division, absolute_import, print_function
-
- # System imports
-diff --git a/tools/swig/test/testFortran.py b/tools/swig/test/testFortran.py
-index 426e894..0f7d0e6 100644
---- a/tools/swig/test/testFortran.py
-+++ b/tools/swig/test/testFortran.py
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#!/usr/bin/env python3
- from __future__ import division, absolute_import, print_function
-
- # System imports
-diff --git a/tools/swig/test/testMatrix.py b/tools/swig/test/testMatrix.py
-index 065be0d..854a23c 100755
---- a/tools/swig/test/testMatrix.py
-+++ b/tools/swig/test/testMatrix.py
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#!/usr/bin/env python3
- from __future__ import division, absolute_import, print_function
-
- # System imports
-diff --git a/tools/swig/test/testSuperTensor.py b/tools/swig/test/testSuperTensor.py
-index 97fe80c..31b63d0 100644
---- a/tools/swig/test/testSuperTensor.py
-+++ b/tools/swig/test/testSuperTensor.py
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#!/usr/bin/env python3
- from __future__ import division, print_function
-
- # System imports
-diff --git a/tools/swig/test/testTensor.py b/tools/swig/test/testTensor.py
-index ac1b749..f47d9e8 100755
---- a/tools/swig/test/testTensor.py
-+++ b/tools/swig/test/testTensor.py
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#!/usr/bin/env python3
- from __future__ import division, absolute_import, print_function
-
- # System imports
-diff --git a/tools/swig/test/testVector.py b/tools/swig/test/testVector.py
-index 45e763b..067b922 100755
---- a/tools/swig/test/testVector.py
-+++ b/tools/swig/test/testVector.py
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#!/usr/bin/env python3
- from __future__ import division, absolute_import, print_function
-
- # System imports
diff --git a/poky/meta/recipes-devtools/python-numpy/python-numpy.inc b/poky/meta/recipes-devtools/python-numpy/python-numpy.inc
index 0bff979a6..0113f4098 100644
--- a/poky/meta/recipes-devtools/python-numpy/python-numpy.inc
+++ b/poky/meta/recipes-devtools/python-numpy/python-numpy.inc
@@ -1,16 +1,14 @@
SUMMARY = "A sophisticated Numeric Processing Package for Python"
SECTION = "devel/python"
LICENSE = "BSD-3-Clause & BSD-2-Clause & PSF & Apache-2.0 & BSD & MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=1a32aba007a415aa8a1c708a0e2b86a1"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=643d4e90100b7abe468c4db88127b895"
SRCNAME = "numpy"
SRC_URI = "https://github.com/${SRCNAME}/${SRCNAME}/releases/download/v${PV}/${SRCNAME}-${PV}.tar.gz \
file://0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch \
- file://0001-convert-shebang-from-python-to-python3.patch \
"
-SRC_URI[md5sum] = "cd631c761f141d382b4e1b31c8232fc0"
-SRC_URI[sha256sum] = "93ee59ec38f3bf8f9a42d5f4301f60e6825a4a6385a145f70badcd2bf2a11134"
+SRC_URI[sha256sum] = "1396e6c3d20cbfc119195303b0272e749610b7042cc498be4134f013e9a3215c"
UPSTREAM_CHECK_URI = "https://github.com/numpy/numpy/releases"
UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar"
@@ -21,7 +19,7 @@ S = "${WORKDIR}/numpy-${PV}"
CLEANBROKEN = "1"
-FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/numpy/core/lib/*.a"
+FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/numpy/core/lib/*.a ${PYTHON_SITEPACKAGES_DIR}/numpy/random/lib/*.a"
# install what is needed for numpy.test()
RDEPENDS_${PN} = "${PYTHON_PN}-unittest \
diff --git a/poky/meta/recipes-devtools/python-numpy/python3-numpy_1.18.3.bb b/poky/meta/recipes-devtools/python-numpy/python3-numpy_1.19.1.bb
index d388e88d2..d388e88d2 100644
--- a/poky/meta/recipes-devtools/python-numpy/python3-numpy_1.18.3.bb
+++ b/poky/meta/recipes-devtools/python-numpy/python3-numpy_1.19.1.bb
diff --git a/poky/meta/recipes-devtools/python/files/0001-bpo-39503-CVE-2020-8492-Fix-AbstractBasicAuthHandler.patch b/poky/meta/recipes-devtools/python/files/0001-bpo-39503-CVE-2020-8492-Fix-AbstractBasicAuthHandler.patch
deleted file mode 100644
index e16b99bcb..000000000
--- a/poky/meta/recipes-devtools/python/files/0001-bpo-39503-CVE-2020-8492-Fix-AbstractBasicAuthHandler.patch
+++ /dev/null
@@ -1,248 +0,0 @@
-From 0b297d4ff1c0e4480ad33acae793fbaf4bf015b4 Mon Sep 17 00:00:00 2001
-From: Victor Stinner <vstinner@python.org>
-Date: Thu, 2 Apr 2020 02:52:20 +0200
-Subject: [PATCH] bpo-39503: CVE-2020-8492: Fix AbstractBasicAuthHandler
- (GH-18284)
-
-Upstream-Status: Backport
-(https://github.com/python/cpython/commit/0b297d4ff1c0e4480ad33acae793fbaf4bf015b4)
-
-CVE: CVE-2020-8492
-
-The AbstractBasicAuthHandler class of the urllib.request module uses
-an inefficient regular expression which can be exploited by an
-attacker to cause a denial of service. Fix the regex to prevent the
-catastrophic backtracking. Vulnerability reported by Ben Caller
-and Matt Schwager.
-
-AbstractBasicAuthHandler of urllib.request now parses all
-WWW-Authenticate HTTP headers and accepts multiple challenges per
-header: use the realm of the first Basic challenge.
-
-Co-Authored-By: Serhiy Storchaka <storchaka@gmail.com>
-Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
----
- Lib/test/test_urllib2.py | 90 ++++++++++++-------
- Lib/urllib/request.py | 69 ++++++++++----
- .../2020-03-25-16-02-16.bpo-39503.YmMbYn.rst | 3 +
- .../2020-01-30-16-15-29.bpo-39503.B299Yq.rst | 5 ++
- 4 files changed, 115 insertions(+), 52 deletions(-)
- create mode 100644 Misc/NEWS.d/next/Library/2020-03-25-16-02-16.bpo-39503.YmMbYn.rst
- create mode 100644 Misc/NEWS.d/next/Security/2020-01-30-16-15-29.bpo-39503.B299Yq.rst
-
-diff --git a/Lib/test/test_urllib2.py b/Lib/test/test_urllib2.py
-index 8abedaac98..e69ac3e213 100644
---- a/Lib/test/test_urllib2.py
-+++ b/Lib/test/test_urllib2.py
-@@ -1446,40 +1446,64 @@ class HandlerTests(unittest.TestCase):
- bypass = {'exclude_simple': True, 'exceptions': []}
- self.assertTrue(_proxy_bypass_macosx_sysconf('test', bypass))
-
-- def test_basic_auth(self, quote_char='"'):
-- opener = OpenerDirector()
-- password_manager = MockPasswordManager()
-- auth_handler = urllib.request.HTTPBasicAuthHandler(password_manager)
-- realm = "ACME Widget Store"
-- http_handler = MockHTTPHandler(
-- 401, 'WWW-Authenticate: Basic realm=%s%s%s\r\n\r\n' %
-- (quote_char, realm, quote_char))
-- opener.add_handler(auth_handler)
-- opener.add_handler(http_handler)
-- self._test_basic_auth(opener, auth_handler, "Authorization",
-- realm, http_handler, password_manager,
-- "http://acme.example.com/protected",
-- "http://acme.example.com/protected",
-- )
--
-- def test_basic_auth_with_single_quoted_realm(self):
-- self.test_basic_auth(quote_char="'")
--
-- def test_basic_auth_with_unquoted_realm(self):
-- opener = OpenerDirector()
-- password_manager = MockPasswordManager()
-- auth_handler = urllib.request.HTTPBasicAuthHandler(password_manager)
-- realm = "ACME Widget Store"
-- http_handler = MockHTTPHandler(
-- 401, 'WWW-Authenticate: Basic realm=%s\r\n\r\n' % realm)
-- opener.add_handler(auth_handler)
-- opener.add_handler(http_handler)
-- with self.assertWarns(UserWarning):
-+ def check_basic_auth(self, headers, realm):
-+ with self.subTest(realm=realm, headers=headers):
-+ opener = OpenerDirector()
-+ password_manager = MockPasswordManager()
-+ auth_handler = urllib.request.HTTPBasicAuthHandler(password_manager)
-+ body = '\r\n'.join(headers) + '\r\n\r\n'
-+ http_handler = MockHTTPHandler(401, body)
-+ opener.add_handler(auth_handler)
-+ opener.add_handler(http_handler)
- self._test_basic_auth(opener, auth_handler, "Authorization",
-- realm, http_handler, password_manager,
-- "http://acme.example.com/protected",
-- "http://acme.example.com/protected",
-- )
-+ realm, http_handler, password_manager,
-+ "http://acme.example.com/protected",
-+ "http://acme.example.com/protected")
-+
-+ def test_basic_auth(self):
-+ realm = "realm2@example.com"
-+ realm2 = "realm2@example.com"
-+ basic = f'Basic realm="{realm}"'
-+ basic2 = f'Basic realm="{realm2}"'
-+ other_no_realm = 'Otherscheme xxx'
-+ digest = (f'Digest realm="{realm2}", '
-+ f'qop="auth, auth-int", '
-+ f'nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093", '
-+ f'opaque="5ccc069c403ebaf9f0171e9517f40e41"')
-+ for realm_str in (
-+ # test "quote" and 'quote'
-+ f'Basic realm="{realm}"',
-+ f"Basic realm='{realm}'",
-+
-+ # charset is ignored
-+ f'Basic realm="{realm}", charset="UTF-8"',
-+
-+ # Multiple challenges per header
-+ f'{basic}, {basic2}',
-+ f'{basic}, {other_no_realm}',
-+ f'{other_no_realm}, {basic}',
-+ f'{basic}, {digest}',
-+ f'{digest}, {basic}',
-+ ):
-+ headers = [f'WWW-Authenticate: {realm_str}']
-+ self.check_basic_auth(headers, realm)
-+
-+ # no quote: expect a warning
-+ with support.check_warnings(("Basic Auth Realm was unquoted",
-+ UserWarning)):
-+ headers = [f'WWW-Authenticate: Basic realm={realm}']
-+ self.check_basic_auth(headers, realm)
-+
-+ # Multiple headers: one challenge per header.
-+ # Use the first Basic realm.
-+ for challenges in (
-+ [basic, basic2],
-+ [basic, digest],
-+ [digest, basic],
-+ ):
-+ headers = [f'WWW-Authenticate: {challenge}'
-+ for challenge in challenges]
-+ self.check_basic_auth(headers, realm)
-
- def test_proxy_basic_auth(self):
- opener = OpenerDirector()
-diff --git a/Lib/urllib/request.py b/Lib/urllib/request.py
-index 7fe50535da..2a3d71554f 100644
---- a/Lib/urllib/request.py
-+++ b/Lib/urllib/request.py
-@@ -937,8 +937,15 @@ class AbstractBasicAuthHandler:
-
- # allow for double- and single-quoted realm values
- # (single quotes are a violation of the RFC, but appear in the wild)
-- rx = re.compile('(?:.*,)*[ \t]*([^ \t]+)[ \t]+'
-- 'realm=(["\']?)([^"\']*)\\2', re.I)
-+ rx = re.compile('(?:^|,)' # start of the string or ','
-+ '[ \t]*' # optional whitespaces
-+ '([^ \t]+)' # scheme like "Basic"
-+ '[ \t]+' # mandatory whitespaces
-+ # realm=xxx
-+ # realm='xxx'
-+ # realm="xxx"
-+ 'realm=(["\']?)([^"\']*)\\2',
-+ re.I)
-
- # XXX could pre-emptively send auth info already accepted (RFC 2617,
- # end of section 2, and section 1.2 immediately after "credentials"
-@@ -950,27 +957,51 @@ class AbstractBasicAuthHandler:
- self.passwd = password_mgr
- self.add_password = self.passwd.add_password
-
-+ def _parse_realm(self, header):
-+ # parse WWW-Authenticate header: accept multiple challenges per header
-+ found_challenge = False
-+ for mo in AbstractBasicAuthHandler.rx.finditer(header):
-+ scheme, quote, realm = mo.groups()
-+ if quote not in ['"', "'"]:
-+ warnings.warn("Basic Auth Realm was unquoted",
-+ UserWarning, 3)
-+
-+ yield (scheme, realm)
-+
-+ found_challenge = True
-+
-+ if not found_challenge:
-+ if header:
-+ scheme = header.split()[0]
-+ else:
-+ scheme = ''
-+ yield (scheme, None)
-+
- def http_error_auth_reqed(self, authreq, host, req, headers):
- # host may be an authority (without userinfo) or a URL with an
- # authority
-- # XXX could be multiple headers
-- authreq = headers.get(authreq, None)
-+ headers = headers.get_all(authreq)
-+ if not headers:
-+ # no header found
-+ return
-
-- if authreq:
-- scheme = authreq.split()[0]
-- if scheme.lower() != 'basic':
-- raise ValueError("AbstractBasicAuthHandler does not"
-- " support the following scheme: '%s'" %
-- scheme)
-- else:
-- mo = AbstractBasicAuthHandler.rx.search(authreq)
-- if mo:
-- scheme, quote, realm = mo.groups()
-- if quote not in ['"',"'"]:
-- warnings.warn("Basic Auth Realm was unquoted",
-- UserWarning, 2)
-- if scheme.lower() == 'basic':
-- return self.retry_http_basic_auth(host, req, realm)
-+ unsupported = None
-+ for header in headers:
-+ for scheme, realm in self._parse_realm(header):
-+ if scheme.lower() != 'basic':
-+ unsupported = scheme
-+ continue
-+
-+ if realm is not None:
-+ # Use the first matching Basic challenge.
-+ # Ignore following challenges even if they use the Basic
-+ # scheme.
-+ return self.retry_http_basic_auth(host, req, realm)
-+
-+ if unsupported is not None:
-+ raise ValueError("AbstractBasicAuthHandler does not "
-+ "support the following scheme: %r"
-+ % (scheme,))
-
- def retry_http_basic_auth(self, host, req, realm):
- user, pw = self.passwd.find_user_password(realm, host)
-diff --git a/Misc/NEWS.d/next/Library/2020-03-25-16-02-16.bpo-39503.YmMbYn.rst b/Misc/NEWS.d/next/Library/2020-03-25-16-02-16.bpo-39503.YmMbYn.rst
-new file mode 100644
-index 0000000000..be80ce79d9
---- /dev/null
-+++ b/Misc/NEWS.d/next/Library/2020-03-25-16-02-16.bpo-39503.YmMbYn.rst
-@@ -0,0 +1,3 @@
-+:class:`~urllib.request.AbstractBasicAuthHandler` of :mod:`urllib.request`
-+now parses all WWW-Authenticate HTTP headers and accepts multiple challenges
-+per header: use the realm of the first Basic challenge.
-diff --git a/Misc/NEWS.d/next/Security/2020-01-30-16-15-29.bpo-39503.B299Yq.rst b/Misc/NEWS.d/next/Security/2020-01-30-16-15-29.bpo-39503.B299Yq.rst
-new file mode 100644
-index 0000000000..9f2800581c
---- /dev/null
-+++ b/Misc/NEWS.d/next/Security/2020-01-30-16-15-29.bpo-39503.B299Yq.rst
-@@ -0,0 +1,5 @@
-+CVE-2020-8492: The :class:`~urllib.request.AbstractBasicAuthHandler` class of the
-+:mod:`urllib.request` module uses an inefficient regular expression which can
-+be exploited by an attacker to cause a denial of service. Fix the regex to
-+prevent the catastrophic backtracking. Vulnerability reported by Ben Caller
-+and Matt Schwager.
---
-2.24.1
-
diff --git a/poky/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch b/poky/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch
index 5f99cd251..ee0a9dbb1 100644
--- a/poky/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch
+++ b/poky/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch
@@ -1,4 +1,4 @@
-From a8f871c9ebc4fcb99d4163b226aabeef26567099 Mon Sep 17 00:00:00 2001
+From 6a5086619ee1c4bcebc7df622face11de6679255 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Tue, 17 Jul 2018 10:13:38 +0800
Subject: [PATCH] conditionally do not fetch code by easy_install
@@ -15,10 +15,10 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
1 file changed, 5 insertions(+)
diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py
-index 426301d..55c8062 100644
+index bcbd4f5..6455afd 100644
--- a/setuptools/command/easy_install.py
+++ b/setuptools/command/easy_install.py
-@@ -649,6 +649,11 @@ class easy_install(Command):
+@@ -653,6 +653,11 @@ class easy_install(Command):
os.path.exists(tmpdir) and rmtree(rmtree_safe(tmpdir))
def easy_install(self, spec, deps=False):
@@ -27,6 +27,6 @@ index 426301d..55c8062 100644
+ "Please add its native recipe to DEPENDS." % spec)
+ return None
+
- if not self.editable:
- self.install_site_py()
-
+ with self._tmpdir() as tmpdir:
+ if not isinstance(spec, Requirement):
+ if URL_SCHEME(spec):
diff --git a/poky/meta/recipes-devtools/python/python-cython.inc b/poky/meta/recipes-devtools/python/python-cython.inc
index 437e79662..b1e71f3cc 100644
--- a/poky/meta/recipes-devtools/python/python-cython.inc
+++ b/poky/meta/recipes-devtools/python/python-cython.inc
@@ -7,8 +7,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e23fadd6ceef8c618fc1c65191d846fa"
PYPI_PACKAGE = "Cython"
BBCLASSEXTEND = "native nativesdk"
-SRC_URI[md5sum] = "a899abaa48b68bb679aef45ceb4b89d3"
-SRC_URI[sha256sum] = "232755284f942cbb3b43a06cd85974ef3c970a021aef19b5243c03ee2b08fa05"
+SRC_URI[sha256sum] = "e57acb89bd55943c8d8bf813763d20b9099cc7165c0f16b707631a7654be9cad"
UPSTREAM_CHECK_REGEX = "Cython-(?P<pver>.*)\.tar"
inherit pypi
diff --git a/poky/meta/recipes-devtools/python/python-extras.inc b/poky/meta/recipes-devtools/python/python-extras.inc
index b5e11b711..335bde272 100644
--- a/poky/meta/recipes-devtools/python/python-extras.inc
+++ b/poky/meta/recipes-devtools/python/python-extras.inc
@@ -1,5 +1,5 @@
SUMMARY = "Useful extra bits for Python - things that should be in the standard library"
-HOMEPAGE = "https://pypi.python.org/pypi/extras/"
+HOMEPAGE = "https://pypi.org/project/extras/"
SECTION = "devel/python"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=6d108f338b2f68fe48ac366c4650bd8b"
diff --git a/poky/meta/recipes-devtools/python/python-gitdb.inc b/poky/meta/recipes-devtools/python/python-gitdb.inc
index a91bb32c3..618d85ff8 100644
--- a/poky/meta/recipes-devtools/python/python-gitdb.inc
+++ b/poky/meta/recipes-devtools/python/python-gitdb.inc
@@ -8,7 +8,7 @@ inherit pypi
PYPI_PACKAGE = "gitdb"
-SRC_URI[sha256sum] = "6f0ecd46f99bb4874e5678d628c3a198e2b4ef38daea2756a2bfd8df7dd5c1a5"
+SRC_URI[sha256sum] = "c9e1f2d0db7ddb9a704c2a0217be31214e91a4fe1dea1efad19ae42ba0c285c9"
DEPENDS = "${PYTHON_PN}-async ${PYTHON_PN}-setuptools-native ${PYTHON_PN}-smmap"
diff --git a/poky/meta/recipes-devtools/python/python-pbr.inc b/poky/meta/recipes-devtools/python/python-pbr.inc
index ce3c224d5..bc470e727 100644
--- a/poky/meta/recipes-devtools/python/python-pbr.inc
+++ b/poky/meta/recipes-devtools/python/python-pbr.inc
@@ -1,6 +1,6 @@
SUMMARY = "Python Build Reasonableness"
DESCRIPTION = "PBR is a library that injects some useful and sensible default behaviors into your setuptools run"
-HOMEPAGE = "https://pypi.python.org/pypi/pbr"
+HOMEPAGE = "https://pypi.org/project/pbr"
SECTION = "devel/python"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=1dece7821bf3fd70fe1309eaa37d52a2"
diff --git a/poky/meta/recipes-devtools/python/python-six.inc b/poky/meta/recipes-devtools/python/python-six.inc
index 05b32810b..df97f845b 100644
--- a/poky/meta/recipes-devtools/python/python-six.inc
+++ b/poky/meta/recipes-devtools/python/python-six.inc
@@ -1,5 +1,5 @@
SUMMARY = "Python 2 and 3 compatibility library"
-HOMEPAGE = "https://pypi.python.org/pypi/six/"
+HOMEPAGE = "https://pypi.org/project/six/"
SECTION = "devel/python"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=43cfc9e4ac0e377acfb9b76f56b8415d"
diff --git a/poky/meta/recipes-devtools/python/python-smmap.inc b/poky/meta/recipes-devtools/python/python-smmap.inc
index b878b4b39..7703722bc 100644
--- a/poky/meta/recipes-devtools/python/python-smmap.inc
+++ b/poky/meta/recipes-devtools/python/python-smmap.inc
@@ -9,10 +9,9 @@ LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=e910b35b0ef4e1f665
inherit pypi
-PYPI_PACKAGE = "smmap2"
+PYPI_PACKAGE = "smmap"
-SRC_URI[md5sum] = "1c59a985be5aa645c4c5a4e063a40dd5"
-SRC_URI[sha256sum] = "29a9ffa0497e7f2be94ca0ed1ca1aa3cd4cf25a1f6b4f5f87f74b46ed91d609a"
+SRC_URI[sha256sum] = "9c98bbd1f9786d22f14b3d4126894d56befb835ec90cef151af566c7e19b5d24"
RDEPENDS_${PN} += "${PYTHON_PN}-codecs \
${PYTHON_PN}-mmap \
diff --git a/poky/meta/recipes-devtools/python/python-subunit.inc b/poky/meta/recipes-devtools/python/python-subunit.inc
index afaaa51fa..a2f9c5c3f 100644
--- a/poky/meta/recipes-devtools/python/python-subunit.inc
+++ b/poky/meta/recipes-devtools/python/python-subunit.inc
@@ -1,13 +1,13 @@
SUMMARY = "Python implementation of subunit test streaming protocol"
-HOMEPAGE = "https://pypi.python.org/pypi/python-subunit/"
+HOMEPAGE = "https://pypi.org/project/python-subunit/"
SECTION = "devel/python"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://README.rst;beginline=1;endline=20;md5=909c08e291647fd985fbe5d9836d51b6"
PYPI_PACKAGE = "python-subunit"
-SRC_URI[md5sum] = "16d468a3aeafe6c60a0c3b2b9132d65b"
-SRC_URI[sha256sum] = "9607edbee4c1e5a30ff88549ce8d9feb0b9bcbcb5e55033a9d76e86075465cbb"
+SRC_URI[md5sum] = "30f1ab20651d94442dd9a7f8c9e8d633"
+SRC_URI[sha256sum] = "042039928120fbf392e8c983d60f3d8ae1b88f90a9f8fd7188ddd9c26cad1e48"
inherit pypi
diff --git a/poky/meta/recipes-devtools/python/python-testtools.inc b/poky/meta/recipes-devtools/python/python-testtools.inc
index d0b2e46d7..e8d308b71 100644
--- a/poky/meta/recipes-devtools/python/python-testtools.inc
+++ b/poky/meta/recipes-devtools/python/python-testtools.inc
@@ -1,13 +1,13 @@
SUMMARY = "Extensions to the Python standard library unit testing framework"
-HOMEPAGE = "https://pypi.python.org/pypi/testtools/"
+HOMEPAGE = "https://pypi.org/project/testtools/"
SECTION = "devel/python"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e2c9d3e8ba7141c83bfef190e0b9379a"
inherit pypi
-SRC_URI[md5sum] = "0f0feb915497816cb99e39437494217e"
-SRC_URI[sha256sum] = "5827ec6cf8233e0f29f51025addd713ca010061204fdea77484a2934690a0559"
+SRC_URI[md5sum] = "e8fc7185b47cfb908c641f8c4b2a6add"
+SRC_URI[sha256sum] = "64c974a6cca4385d05f4bbfa2deca1c39ce88ede31c3448bee86a7259a9a61c8"
DEPENDS += " \
${PYTHON_PN}-pbr \
diff --git a/poky/meta/recipes-devtools/python/python3-cython_0.29.16.bb b/poky/meta/recipes-devtools/python/python3-cython_0.29.21.bb
index 2ce6bdbd6..2ce6bdbd6 100644
--- a/poky/meta/recipes-devtools/python/python3-cython_0.29.16.bb
+++ b/poky/meta/recipes-devtools/python/python3-cython_0.29.21.bb
diff --git a/poky/meta/recipes-devtools/python/python3-dbusmock_0.19.bb b/poky/meta/recipes-devtools/python/python3-dbusmock_0.19.bb
index 5389e4897..d297dbc1d 100644
--- a/poky/meta/recipes-devtools/python/python3-dbusmock_0.19.bb
+++ b/poky/meta/recipes-devtools/python/python3-dbusmock_0.19.bb
@@ -12,5 +12,6 @@ inherit pypi setuptools3
RDEPENDS_${PN} += "\
${PYTHON_PN}-dbus \
${PYTHON_PN}-pygobject \
+ ${PYTHON_PN}-unittest \
${PYTHON_PN}-xml \
"
diff --git a/poky/meta/recipes-devtools/python/python3-git_3.1.2.bb b/poky/meta/recipes-devtools/python/python3-git_3.1.7.bb
index 72280ec30..6d1fc4b65 100644
--- a/poky/meta/recipes-devtools/python/python3-git_3.1.2.bb
+++ b/poky/meta/recipes-devtools/python/python3-git_3.1.7.bb
@@ -12,8 +12,7 @@ PYPI_PACKAGE = "GitPython"
inherit pypi setuptools3
-SRC_URI[md5sum] = "2397bea2d7c36ef9f874ab6355abae59"
-SRC_URI[sha256sum] = "864a47472548f3ba716ca202e034c1900f197c0fb3a08f641c20c3cafd15ed94"
+SRC_URI[sha256sum] = "2db287d71a284e22e5c2846042d0602465c7434d910406990d5b74df4afb0858"
DEPENDS += " ${PYTHON_PN}-gitdb"
diff --git a/poky/meta/recipes-devtools/python/python3-gitdb_4.0.4.bb b/poky/meta/recipes-devtools/python/python3-gitdb_4.0.4.bb
deleted file mode 100644
index 2dcd9c8af..000000000
--- a/poky/meta/recipes-devtools/python/python3-gitdb_4.0.4.bb
+++ /dev/null
@@ -1,3 +0,0 @@
-inherit setuptools3
-require python-gitdb.inc
-
diff --git a/poky/meta/recipes-devtools/python/python3-gitdb_4.0.5.bb b/poky/meta/recipes-devtools/python/python3-gitdb_4.0.5.bb
new file mode 100644
index 000000000..fe56bf964
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-gitdb_4.0.5.bb
@@ -0,0 +1,4 @@
+inherit setuptools3
+require python-gitdb.inc
+
+SRC_URI[md5sum] = "0e2d3f34efece5deda7c55fede6507cc"
diff --git a/poky/meta/recipes-devtools/python/python3-iniparse_0.4.bb b/poky/meta/recipes-devtools/python/python3-iniparse_0.4.bb
index 4eba9ecd3..47cd6598c 100644
--- a/poky/meta/recipes-devtools/python/python3-iniparse_0.4.bb
+++ b/poky/meta/recipes-devtools/python/python3-iniparse_0.4.bb
@@ -1,5 +1,5 @@
SUMMARY = "Accessing and Modifying INI files"
-HOMEPAGE = "https://pypi.python.org/pypi/iniparse/"
+HOMEPAGE = "https://pypi.org/project/iniparse/"
LICENSE = "MIT & PSF"
LIC_FILES_CHKSUM = "file://LICENSE-PSF;md5=1c78a5bb3584b353496d5f6f34edb4b2 \
file://LICENSE;md5=52f28065af11d69382693b45b5a8eb54"
diff --git a/poky/meta/recipes-devtools/python/python3-jinja2/run-ptest b/poky/meta/recipes-devtools/python/python3-jinja2/run-ptest
new file mode 100644
index 000000000..5cec71169
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-jinja2/run-ptest
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+pytest
diff --git a/poky/meta/recipes-devtools/python/python3-jinja2_2.11.2.bb b/poky/meta/recipes-devtools/python/python3-jinja2_2.11.2.bb
new file mode 100644
index 000000000..89538d2f2
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-jinja2_2.11.2.bb
@@ -0,0 +1,45 @@
+DESCRIPTION = "Python Jinja2: A small but fast and easy to use stand-alone template engine written in pure python."
+
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=5dc88300786f1c214c1e9827a5229462"
+
+SRC_URI[sha256sum] = "89aab215427ef59c34ad58735269eb58b1a5808103067f7bb9d5836c651b3bb0"
+
+PYPI_PACKAGE = "Jinja2"
+
+CLEANBROKEN = "1"
+
+inherit pypi setuptools3
+# ptest disabled in OE-Core for now due to missing dependencies
+
+
+SRC_URI += " \
+ file://run-ptest \
+"
+
+do_install_ptest() {
+ install -d ${D}${PTEST_PATH}/tests
+ cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/
+}
+
+RDEPENDS_${PN}-ptest += " \
+ ${PYTHON_PN}-pytest \
+ ${PYTHON_PN}-unixadmin \
+"
+
+RDEPENDS_${PN} += " \
+ ${PYTHON_PN}-asyncio \
+ ${PYTHON_PN}-crypt \
+ ${PYTHON_PN}-io \
+ ${PYTHON_PN}-json \
+ ${PYTHON_PN}-markupsafe \
+ ${PYTHON_PN}-math \
+ ${PYTHON_PN}-netclient \
+ ${PYTHON_PN}-numbers\
+ ${PYTHON_PN}-pickle \
+ ${PYTHON_PN}-pprint \
+ ${PYTHON_PN}-shell \
+ ${PYTHON_PN}-threading \
+"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python3-libarchive-c_2.9.bb b/poky/meta/recipes-devtools/python/python3-libarchive-c_2.9.bb
index 4983ae527..3a2d8733e 100644
--- a/poky/meta/recipes-devtools/python/python3-libarchive-c_2.9.bb
+++ b/poky/meta/recipes-devtools/python/python3-libarchive-c_2.9.bb
@@ -12,6 +12,10 @@ inherit pypi setuptools3
SRC_URI[md5sum] = "083bd2cb0043c1e22a52cb9a05e31532"
SRC_URI[sha256sum] = "9919344cec203f5db6596a29b5bc26b07ba9662925a05e24980b84709232ef60"
-RDEPENDS_${PN} += "libarchive"
+RDEPENDS_${PN} += "\
+ libarchive \
+ ${PYTHON_PN}-ctypes \
+ ${PYTHON_PN}-mmap \
+"
BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/python/python3-magic_0.4.18.bb b/poky/meta/recipes-devtools/python/python3-magic_0.4.18.bb
index be423adac..101b96d31 100644
--- a/poky/meta/recipes-devtools/python/python3-magic_0.4.18.bb
+++ b/poky/meta/recipes-devtools/python/python3-magic_0.4.18.bb
@@ -14,6 +14,9 @@ inherit pypi setuptools3
SRC_URI[md5sum] = "5edc6caa39cc62641850f6b1b6f284ba"
SRC_URI[sha256sum] = "b757db2a5289ea3f1ced9e60f072965243ea43a2221430048fd8cacab17be0ce"
-RDEPENDS_${PN} += "file"
+RDEPENDS_${PN} += "file \
+ ${PYTHON_PN}-ctypes \
+ ${PYTHON_PN}-io \
+ ${PYTHON_PN}-shell"
BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/python/python3-mako_1.1.1.bb b/poky/meta/recipes-devtools/python/python3-mako_1.1.3.bb
index bc38009de..cda4e9922 100644
--- a/poky/meta/recipes-devtools/python/python3-mako_1.1.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-mako_1.1.3.bb
@@ -8,8 +8,7 @@ PYPI_PACKAGE = "Mako"
inherit pypi setuptools3
-SRC_URI[md5sum] = "2660a4916f2f63456e6885c727b7cd2f"
-SRC_URI[sha256sum] = "2984a6733e1d472796ceef37ad48c26f4a984bb18119bb2dbc37a44d8f6e75a4"
+SRC_URI[sha256sum] = "8195c8c1400ceb53496064314c6736719c6f25e7479cd24c77be3d9361cddc27"
RDEPENDS_${PN} = "${PYTHON_PN}-html \
${PYTHON_PN}-netclient \
diff --git a/poky/meta/recipes-devtools/python/python3-markupsafe/run-ptest b/poky/meta/recipes-devtools/python/python3-markupsafe/run-ptest
new file mode 100644
index 000000000..5cec71169
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-markupsafe/run-ptest
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+pytest
diff --git a/poky/meta/recipes-devtools/python/python3-markupsafe_1.1.1.bb b/poky/meta/recipes-devtools/python/python3-markupsafe_1.1.1.bb
new file mode 100644
index 000000000..403a98a43
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-markupsafe_1.1.1.bb
@@ -0,0 +1,28 @@
+DESCRIPTION = "Implements a XML/HTML/XHTML Markup safe string for Python"
+HOMEPAGE = "http://github.com/mitsuhiko/markupsafe"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=ffeffa59c90c9c4a033c7574f8f3fb75"
+
+SRC_URI[md5sum] = "43fd756864fe42063068e092e220c57b"
+SRC_URI[sha256sum] = "29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b"
+
+PYPI_PACKAGE = "MarkupSafe"
+inherit pypi setuptools3
+# ptest disabled in OE-Core for now due to missing dependencies
+
+RDEPENDS_${PN} += "${PYTHON_PN}-stringold"
+
+BBCLASSEXTEND = "native nativesdk"
+
+SRC_URI += " \
+ file://run-ptest \
+"
+
+RDEPENDS_${PN}-ptest += " \
+ ${PYTHON_PN}-pytest \
+"
+
+do_install_ptest() {
+ install -d ${D}${PTEST_PATH}/tests
+ cp -f ${S}/tests/* ${D}${PTEST_PATH}/tests/
+}
diff --git a/poky/meta/recipes-devtools/python/python3-pip_20.0.2.bb b/poky/meta/recipes-devtools/python/python3-pip_20.0.2.bb
index 96973db77..99eeea2ed 100644
--- a/poky/meta/recipes-devtools/python/python3-pip_20.0.2.bb
+++ b/poky/meta/recipes-devtools/python/python3-pip_20.0.2.bb
@@ -1,5 +1,5 @@
SUMMARY = "The PyPA recommended tool for installing Python packages"
-HOMEPAGE = "https://pypi.python.org/pypi/pip"
+HOMEPAGE = "https://pypi.org/project/pip"
SECTION = "devel/python"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=8ba06d529c955048e5ddd7c45459eb2e"
diff --git a/poky/meta/recipes-devtools/python/python3-pycairo_1.19.0.bb b/poky/meta/recipes-devtools/python/python3-pycairo_1.19.1.bb
index 8f60834c1..34c8543bc 100644
--- a/poky/meta/recipes-devtools/python/python3-pycairo_1.19.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-pycairo_1.19.1.bb
@@ -13,8 +13,8 @@ DEPENDS = "cairo python3"
SRC_URI = "https://github.com/pygobject/pycairo/releases/download/v${PV}/pycairo-${PV}.tar.gz"
UPSTREAM_CHECK_URI = "https://github.com/pygobject/pycairo/releases/"
-SRC_URI[md5sum] = "38b84416021640b01250c8f8ec4c52d4"
-SRC_URI[sha256sum] = "4f5ba9374a46c98729dd3727d993f5e17ed0286fd6738ed464fe4efa0612d19c"
+SRC_URI[md5sum] = "59bc5c5d1debc3af0f6791af9d612551"
+SRC_URI[sha256sum] = "2c143183280feb67f5beb4e543fd49990c28e7df427301ede04fc550d3562e84"
S = "${WORKDIR}/pycairo-${PV}"
diff --git a/poky/meta/recipes-devtools/python/python3-pycryptodome_3.9.7.bb b/poky/meta/recipes-devtools/python/python3-pycryptodome_3.9.7.bb
deleted file mode 100644
index 8f19984be..000000000
--- a/poky/meta/recipes-devtools/python/python3-pycryptodome_3.9.7.bb
+++ /dev/null
@@ -1,5 +0,0 @@
-require python-pycryptodome.inc
-inherit setuptools3
-
-SRC_URI[sha256sum] = "f1add21b6d179179b3c177c33d18a2186a09cc0d3af41ff5ed3f377360b869f2"
-
diff --git a/poky/meta/recipes-devtools/python/python3-pycryptodome_3.9.8.bb b/poky/meta/recipes-devtools/python/python3-pycryptodome_3.9.8.bb
new file mode 100644
index 000000000..46e122072
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-pycryptodome_3.9.8.bb
@@ -0,0 +1,5 @@
+require python-pycryptodome.inc
+inherit setuptools3
+
+SRC_URI[sha256sum] = "0e24171cf01021bc5dc17d6a9d4f33a048f09d62cc3f62541e95ef104588bda4"
+
diff --git a/poky/meta/recipes-devtools/python/python3-pycryptodomex_3.9.7.bb b/poky/meta/recipes-devtools/python/python3-pycryptodomex_3.9.8.bb
index abb03b990..035c7fa63 100644
--- a/poky/meta/recipes-devtools/python/python3-pycryptodomex_3.9.7.bb
+++ b/poky/meta/recipes-devtools/python/python3-pycryptodomex_3.9.8.bb
@@ -1,7 +1,7 @@
require python-pycryptodome.inc
inherit setuptools3
-SRC_URI[sha256sum] = "50163324834edd0c9ce3e4512ded3e221c969086e10fdd5d3fdcaadac5e24a78"
+SRC_URI[sha256sum] = "48cc2cfc251f04a6142badeb666d1ff49ca6fdfc303fd72579f62b768aaa52b9"
FILES_${PN}-tests = " \
${PYTHON_SITEPACKAGES_DIR}/Cryptodome/SelfTest/ \
diff --git a/poky/meta/recipes-devtools/python/python3-pygments_2.5.2.bb b/poky/meta/recipes-devtools/python/python3-pygments_2.6.1.bb
index 474b95494..bffef59e6 100644
--- a/poky/meta/recipes-devtools/python/python3-pygments_2.5.2.bb
+++ b/poky/meta/recipes-devtools/python/python3-pygments_2.6.1.bb
@@ -5,8 +5,8 @@ LICENSE = "BSD-2-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e1d7b7bffbfeaa14083fd2bd3236aea8"
inherit setuptools3
-SRC_URI[md5sum] = "465a35559863089d959d783a69f79b9f"
-SRC_URI[sha256sum] = "98c8aa5a9f778fcd1026a17361ddaf7330d1b7c62ae97c3bb0ae73e0b9b6b0fe"
+SRC_URI[md5sum] = "a48c5219de92f12c41acba814730b31a"
+SRC_URI[sha256sum] = "647344a061c249a3b74e230c739f434d7ea4d8b1d5f3721bc0f3558049b38f44"
DEPENDS += "\
${PYTHON_PN} \
diff --git a/poky/meta/recipes-devtools/python/python3-pygobject_3.34.0.bb b/poky/meta/recipes-devtools/python/python3-pygobject_3.36.1.bb
index 6babf0cae..0a34d4373 100644
--- a/poky/meta/recipes-devtools/python/python3-pygobject_3.34.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-pygobject_3.36.1.bb
@@ -14,8 +14,8 @@ SRC_URI = " \
http://ftp.gnome.org/pub/GNOME/sources/${SRCNAME}/${@gnome_verdir("${PV}")}/${SRCNAME}-${PV}.tar.xz \
file://0001-Do-not-build-tests.patch \
"
-SRC_URI[md5sum] = "ca1dc4f31c1d6d283758e8f315a88ab6"
-SRC_URI[sha256sum] = "87e2c9aa785f352ef111dcc5f63df9b85cf6e05e52ff04f803ffbebdacf5271a"
+SRC_URI[md5sum] = "ebfebc4533856572281add29f08412bf"
+SRC_URI[sha256sum] = "d1bf42802d1cec113b5adaa0e7bf7f3745b44521dc2163588d276d5cd61d718f"
UNKNOWN_CONFIGURE_WHITELIST = "introspection"
diff --git a/poky/meta/recipes-devtools/python/python3-setuptools/0001-change-shebang-to-python3.patch b/poky/meta/recipes-devtools/python/python3-setuptools/0001-change-shebang-to-python3.patch
index 33af8daed..6dcf52771 100644
--- a/poky/meta/recipes-devtools/python/python3-setuptools/0001-change-shebang-to-python3.patch
+++ b/poky/meta/recipes-devtools/python/python3-setuptools/0001-change-shebang-to-python3.patch
@@ -8,8 +8,7 @@ Upstream-Status: Pending
Signed-off-by: Changqing Li <changqing.li@windriver.com>
---
pkg_resources/_vendor/appdirs.py | 2 +-
- setuptools/command/easy_install.py | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
+ 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/pkg_resources/_vendor/appdirs.py b/pkg_resources/_vendor/appdirs.py
index ae67001..933e398 100644
@@ -21,16 +20,6 @@ index ae67001..933e398 100644
# -*- coding: utf-8 -*-
# Copyright (c) 2005-2010 ActiveState Software Inc.
# Copyright (c) 2013 Eddy Petrișor
-diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py
-index abca1ae..6bcdc98 100644
---- a/setuptools/command/easy_install.py
-+++ b/setuptools/command/easy_install.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python3
- """
- Easy Install
- ------------
--
2.24.1
diff --git a/poky/meta/recipes-devtools/python/python3-setuptools_45.2.0.bb b/poky/meta/recipes-devtools/python/python3-setuptools_45.2.0.bb
deleted file mode 100644
index 0dc1ed862..000000000
--- a/poky/meta/recipes-devtools/python/python3-setuptools_45.2.0.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require python-setuptools.inc
-inherit setuptools3
-
-do_install_append() {
- mv ${D}${bindir}/easy_install ${D}${bindir}/easy3_install
-}
diff --git a/poky/meta/recipes-devtools/python/python-setuptools.inc b/poky/meta/recipes-devtools/python/python3-setuptools_49.6.0.bb
index e9ad93dbe..360128b11 100644
--- a/poky/meta/recipes-devtools/python/python-setuptools.inc
+++ b/poky/meta/recipes-devtools/python/python3-setuptools_49.6.0.bb
@@ -1,19 +1,18 @@
SUMMARY = "Download, build, install, upgrade, and uninstall Python packages"
-HOMEPAGE = "https://pypi.python.org/pypi/setuptools"
+HOMEPAGE = "https://pypi.org/project/setuptools"
SECTION = "devel/python"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;beginline=1;endline=19;md5=9a33897f1bca1160d7aad3835152e158"
PYPI_PACKAGE_EXT = "zip"
-inherit pypi
+inherit pypi setuptools3
SRC_URI_append_class-native = " file://0001-conditionally-do-not-fetch-code-by-easy_install.patch"
SRC_URI += "file://0001-change-shebang-to-python3.patch"
-SRC_URI[md5sum] = "0c956eea142af9c2b02d72e3c042af30"
-SRC_URI[sha256sum] = "89c6e6011ec2f6d57d43a3f9296c4ef022c2cbf49bab26b407fe67992ae3397f"
+SRC_URI[sha256sum] = "46bd862894ed22c2edff033c758c2dc026324788d758e96788e8f7c11f4e9707"
DEPENDS += "${PYTHON_PN}"
@@ -37,10 +36,15 @@ RDEPENDS_${PN} = "\
${PYTHON_PN}-unittest \
${PYTHON_PN}-xml \
"
+
do_install_prepend() {
install -d ${D}${PYTHON_SITEPACKAGES_DIR}
}
+do_install_append() {
+ mv ${D}${bindir}/easy_install ${D}${bindir}/easy3_install
+}
+
BBCLASSEXTEND = "native nativesdk"
# The pkg-resources module can be used by itself, without the package downloader
@@ -48,6 +52,12 @@ BBCLASSEXTEND = "native nativesdk"
# minimal distributions.
PACKAGES =+ "${PYTHON_PN}-pkg-resources "
FILES_${PYTHON_PN}-pkg-resources = "${PYTHON_SITEPACKAGES_DIR}/pkg_resources/*"
+RDEPENDS_${PYTHON_PN}-pkg-resources = "\
+ ${PYTHON_PN}-compression \
+ ${PYTHON_PN}-email \
+ ${PYTHON_PN}-plistlib \
+ ${PYTHON_PN}-pprint \
+"
# Due to the way OE-Core implemented native recipes, the native class cannot
# have a dependency on something that is not a recipe name. Work around that by
# manually setting RPROVIDES.
diff --git a/poky/meta/recipes-devtools/python/python3-six_1.14.0.bb b/poky/meta/recipes-devtools/python/python3-six_1.14.0.bb
deleted file mode 100644
index 151c366ca..000000000
--- a/poky/meta/recipes-devtools/python/python3-six_1.14.0.bb
+++ /dev/null
@@ -1,5 +0,0 @@
-inherit setuptools3
-require python-six.inc
-
-SRC_URI[md5sum] = "21674588a57e649d1a6d977ec3122140"
-SRC_URI[sha256sum] = "236bdbdce46e6e6a3d61a337c0f8b763ca1e8717c03b369e87a7ec7ce1319c0a"
diff --git a/poky/meta/recipes-devtools/python/python3-six_1.15.0.bb b/poky/meta/recipes-devtools/python/python3-six_1.15.0.bb
new file mode 100644
index 000000000..6c6f3f962
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-six_1.15.0.bb
@@ -0,0 +1,5 @@
+inherit setuptools3
+require python-six.inc
+
+SRC_URI[md5sum] = "9f90a0eaa0ea7747fda01ca79d21ebcb"
+SRC_URI[sha256sum] = "30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259"
diff --git a/poky/meta/recipes-devtools/python/python3-smmap_2.0.5.bb b/poky/meta/recipes-devtools/python/python3-smmap_3.0.4.bb
index e87b8df8c..5f0f341d6 100644
--- a/poky/meta/recipes-devtools/python/python3-smmap_2.0.5.bb
+++ b/poky/meta/recipes-devtools/python/python3-smmap_3.0.4.bb
@@ -1,2 +1,3 @@
inherit setuptools3
require python-smmap.inc
+
diff --git a/poky/meta/recipes-devtools/python/python3-subunit_1.3.0.bb b/poky/meta/recipes-devtools/python/python3-subunit_1.4.0.bb
index 55066e2d0..55066e2d0 100644
--- a/poky/meta/recipes-devtools/python/python3-subunit_1.3.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-subunit_1.4.0.bb
diff --git a/poky/meta/recipes-devtools/python/python3-testtools_2.3.0.bb b/poky/meta/recipes-devtools/python/python3-testtools_2.4.0.bb
index a254b90a7..a254b90a7 100644
--- a/poky/meta/recipes-devtools/python/python3-testtools_2.3.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-testtools_2.4.0.bb
diff --git a/poky/meta/recipes-devtools/python/python3/0001-Don-t-search-system-for-headers-libraries.patch b/poky/meta/recipes-devtools/python/python3/0001-Don-t-search-system-for-headers-libraries.patch
index acf8e1e9b..3e471b9a4 100644
--- a/poky/meta/recipes-devtools/python/python3/0001-Don-t-search-system-for-headers-libraries.patch
+++ b/poky/meta/recipes-devtools/python/python3/0001-Don-t-search-system-for-headers-libraries.patch
@@ -1,16 +1,17 @@
-From 85e8f86ad2b7dec0848cd55b8e810a5e2722b20a Mon Sep 17 00:00:00 2001
+From b880e78bf4a1852e260188e6df3ec6034403d2fc Mon Sep 17 00:00:00 2001
From: Jeremy Puhlman <jpuhlman@mvista.com>
Date: Wed, 4 Mar 2020 00:06:42 +0000
Subject: [PATCH] Don't search system for headers/libraries
Upstream-Status: Inappropriate [oe-core specific]
Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
+
---
setup.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/setup.py b/setup.py
-index 9da1b3a..59782c0 100644
+index 7208cd0..c0bd0ad 100644
--- a/setup.py
+++ b/setup.py
@@ -674,8 +674,8 @@ class PyBuildExt(build_ext):
@@ -24,6 +25,3 @@ index 9da1b3a..59782c0 100644
# lib_dirs and inc_dirs are used to search for files;
# if a file is found in one of those directories, it can
# be assumed that no additional -I,-L directives are needed.
---
-2.24.1
-
diff --git a/poky/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch b/poky/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch
index e7af3c6f5..2b68c0acc 100644
--- a/poky/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch
+++ b/poky/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch
@@ -1,4 +1,4 @@
-From 7ada9c749f6beb51c13a3debc850755e911548a6 Mon Sep 17 00:00:00 2001
+From bc59d49efff41051034d7fbf5d0c8505e4c3134b Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Thu, 31 Jan 2019 16:46:30 +0100
Subject: [PATCH] distutils/sysconfig: append
diff --git a/poky/meta/recipes-devtools/python/python3/0001-setup.py-pass-missing-libraries-to-Extension-for-mul.patch b/poky/meta/recipes-devtools/python/python3/0001-setup.py-pass-missing-libraries-to-Extension-for-mul.patch
index d38ed61dd..ea0af02e7 100644
--- a/poky/meta/recipes-devtools/python/python3/0001-setup.py-pass-missing-libraries-to-Extension-for-mul.patch
+++ b/poky/meta/recipes-devtools/python/python3/0001-setup.py-pass-missing-libraries-to-Extension-for-mul.patch
@@ -46,7 +46,7 @@ ValueError: semaphore or lock released too many times
And the semaphore issue also caused multiprocessing.Queue().put() hung.
-Upstream-Status: Pensing
+Upstream-Status: Pending
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
diff --git a/poky/meta/recipes-devtools/python/python3/12-distutils-prefix-is-inside-staging-area.patch b/poky/meta/recipes-devtools/python/python3/12-distutils-prefix-is-inside-staging-area.patch
index 61ac3e71d..820fb98ed 100644
--- a/poky/meta/recipes-devtools/python/python3/12-distutils-prefix-is-inside-staging-area.patch
+++ b/poky/meta/recipes-devtools/python/python3/12-distutils-prefix-is-inside-staging-area.patch
@@ -1,4 +1,4 @@
-From 251347fc970a397a9cd63ed3f87c5e6c52e15187 Mon Sep 17 00:00:00 2001
+From 064187668fcbefdd39a8cde372bf651124c3e578 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 14 May 2013 15:00:26 -0700
Subject: [PATCH] python3: Add target and native recipes
diff --git a/poky/meta/recipes-devtools/python/python3/get_module_deps3.py b/poky/meta/recipes-devtools/python/python3/get_module_deps3.py
index fd12baad8..6806f2317 100644
--- a/poky/meta/recipes-devtools/python/python3/get_module_deps3.py
+++ b/poky/meta/recipes-devtools/python/python3/get_module_deps3.py
@@ -9,6 +9,7 @@
debug=False
import sys
+import os
# We can get a list of the modules which are currently required to run python
# so we run python-core and get its modules, we then import what we need
@@ -48,8 +49,19 @@ current_module = str(sys.argv[1]).rstrip()
if(debug==True):
log = open('log_%s' % current_module,'w')
log.write('Module %s generated the following dependencies:\n' % current_module)
-try:
- importlib.import_module('%s' % current_module)
+try:
+ m = importlib.import_module(current_module)
+ # handle python packages which may not include all modules in the __init__
+ if os.path.basename(m.__file__) == "__init__.py":
+ modulepath = os.path.dirname(m.__file__)
+ for i in os.listdir(modulepath):
+ if i.startswith("_") or not(i.endswith(".py")):
+ continue
+ submodule = "{}.{}".format(current_module, i[:-3])
+ try:
+ importlib.import_module(submodule)
+ except:
+ pass # ignore all import or other exceptions raised during import
except ImportError as e:
if (debug==True):
log.write('Module was not found')
@@ -107,6 +119,8 @@ for item in dif:
dep_path = dep_path.replace(soabi,'*')
print (dep_path)
continue
+ if "_sysconfigdata" in dep_path:
+ dep_path = dep_path.replace(sysconfig._get_sysconfigdata_name(), "_sysconfigdata*")
if (debug==True):
log.write(dep_path+'\n')
@@ -140,6 +154,8 @@ for item in dif:
log.write(cached)
cached = fix_path(cached)
cached = cached.replace(cpython_tag,'*')
+ if "_sysconfigdata" in cached:
+ cached = cached.replace(sysconfig._get_sysconfigdata_name(), "_sysconfigdata*")
print (cached)
if debug==True:
diff --git a/poky/meta/recipes-devtools/python/python3/python3-manifest.json b/poky/meta/recipes-devtools/python/python3/python3-manifest.json
index 3bcc9b866..69aecb700 100644
--- a/poky/meta/recipes-devtools/python/python3/python3-manifest.json
+++ b/poky/meta/recipes-devtools/python/python3/python3-manifest.json
@@ -285,7 +285,7 @@
"${libdir}/python${PYTHON_MAJMIN}/operator.py",
"${libdir}/python${PYTHON_MAJMIN}/optparse.py",
"${libdir}/python${PYTHON_MAJMIN}/os.py",
- "${libdir}/python${PYTHON_MAJMIN}/pathlib.py",
+ "${libdir}/python${PYTHON_MAJMIN}/pathlib.py",
"${libdir}/python${PYTHON_MAJMIN}/pkgutil.py",
"${libdir}/python${PYTHON_MAJMIN}/platform.py",
"${libdir}/python${PYTHON_MAJMIN}/posixpath.py",
@@ -313,6 +313,8 @@
"${libdir}/python${PYTHON_MAJMIN}/tokenize.py",
"${libdir}/python${PYTHON_MAJMIN}/traceback.py",
"${libdir}/python${PYTHON_MAJMIN}/types.py",
+ "${libdir}/python${PYTHON_MAJMIN}/urllib",
+ "${libdir}/python${PYTHON_MAJMIN}/urllib/parse.py",
"${libdir}/python${PYTHON_MAJMIN}/warnings.py",
"${libdir}/python${PYTHON_MAJMIN}/weakref.py",
"${prefix}/lib/python${PYTHON_MAJMIN}/config*/*[!.a]"
@@ -324,7 +326,7 @@
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/_compression.*.pyc",
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/_markupbase.*.pyc",
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/_sitebuiltins.*.pyc",
- "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_sysconfigdata.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_sysconfigdata*.*.pyc",
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/_weakrefset.*.pyc",
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/abc.*.pyc",
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/argparse.*.pyc",
@@ -359,7 +361,7 @@
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/operator.*.pyc",
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/optparse.*.pyc",
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/os.*.pyc",
- "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pathlib.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pathlib.*.pyc",
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/pkgutil.*.pyc",
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/platform.*.pyc",
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/posixpath.*.pyc",
@@ -397,7 +399,9 @@
"${libdir}/python${PYTHON_MAJMIN}/importlib/__pycache__",
"${libdir}/python${PYTHON_MAJMIN}/importlib/__pycache__/abc.*.pyc",
"${libdir}/python${PYTHON_MAJMIN}/importlib/__pycache__/machinery.*.pyc",
- "${libdir}/python${PYTHON_MAJMIN}/importlib/__pycache__/util.*.pyc"
+ "${libdir}/python${PYTHON_MAJMIN}/importlib/__pycache__/util.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/urllib/__pycache__",
+ "${libdir}/python${PYTHON_MAJMIN}/urllib/__pycache__/parse.*.pyc"
]
},
"crypt": {
@@ -427,7 +431,10 @@
"ctypes": {
"summary": "Python C types support",
"rdepends": [
- "core"
+ "core",
+ "crypt",
+ "io",
+ "math"
],
"files": [
"${libdir}/python${PYTHON_MAJMIN}/ctypes",
@@ -537,7 +544,10 @@
"distutils": {
"summary": "Python Distribution Utilities",
"rdepends": [
- "core"
+ "compression",
+ "core",
+ "email",
+ "stringold"
],
"files": [
"${libdir}/python${PYTHON_MAJMIN}/distutils"
@@ -548,7 +558,6 @@
"summary": "Python framework for running examples in docstrings",
"rdepends": [
"asyncio",
- "compression",
"core",
"debugger",
"difflib",
@@ -577,7 +586,9 @@
"datetime",
"io",
"math",
- "netclient"
+ "mime",
+ "netclient",
+ "stringold"
],
"files": [
"${libdir}/python${PYTHON_MAJMIN}/email",
@@ -648,7 +659,6 @@
"io": {
"summary": "Python low-level I/O",
"rdepends": [
- "compression",
"core",
"crypt",
"math",
@@ -690,7 +700,11 @@
"summary": "Python logging support",
"rdepends": [
"core",
- "stringold"
+ "io",
+ "netserver",
+ "pickle",
+ "stringold",
+ "threading"
],
"files": [
"${libdir}/python${PYTHON_MAJMIN}/logging"
@@ -824,11 +838,18 @@
"summary": "Python multiprocessing support",
"rdepends": [
"core",
+ "crypt",
+ "ctypes",
"io",
- "pickle"
+ "math",
+ "mmap",
+ "netclient",
+ "pickle",
+ "threading"
],
"files": [
"${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_multiprocessing.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_posixshmem.*.so",
"${libdir}/python${PYTHON_MAJMIN}/multiprocessing"
],
"cached": []
@@ -855,10 +876,9 @@
"${libdir}/python${PYTHON_MAJMIN}/mimetypes.py",
"${libdir}/python${PYTHON_MAJMIN}/nntplib.py",
"${libdir}/python${PYTHON_MAJMIN}/poplib.py",
+ "${libdir}/python${PYTHON_MAJMIN}/secrets.py",
"${libdir}/python${PYTHON_MAJMIN}/smtplib.py",
"${libdir}/python${PYTHON_MAJMIN}/telnetlib.py",
- "${libdir}/python${PYTHON_MAJMIN}/urllib",
- "${libdir}/python${PYTHON_MAJMIN}/urllib/__pycache__",
"${libdir}/python${PYTHON_MAJMIN}/uuid.py"
],
"cached": [
@@ -868,6 +888,7 @@
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/mimetypes.*.pyc",
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/nntplib.*.pyc",
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/poplib.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/secrets.*.pyc",
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/smtplib.*.pyc",
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/telnetlib.*.pyc",
"${libdir}/python${PYTHON_MAJMIN}/__pycache__/uuid.*.pyc"
@@ -876,7 +897,6 @@
"netserver": {
"summary": "Python Internet Protocol servers",
"rdepends": [
- "compression",
"core",
"crypt",
"datetime",
@@ -992,8 +1012,7 @@
"pydoc": {
"summary": "Python interactive help support",
"rdepends": [
- "core",
- "netclient"
+ "core"
],
"files": [
"${bindir}/pydoc*",
@@ -1017,7 +1036,6 @@
"shell": {
"summary": "Python shell-like functionality",
"rdepends": [
- "compression",
"core",
"stringold"
],
@@ -1150,7 +1168,6 @@
"summary": "Python unit testing framework",
"rdepends": [
"asyncio",
- "compression",
"core",
"difflib",
"io",
@@ -1185,7 +1202,6 @@
"venv": {
"summary": "Provides support for creating lightweight virtual environments with their own site directories, optionally isolated from system site directories.",
"rdepends": [
- "compression",
"core",
"logging",
"stringold"
@@ -1211,7 +1227,21 @@
"xmlrpc": {
"summary": "Python XML-RPC support",
"rdepends": [
+ "compression",
"core",
+ "crypt",
+ "datetime",
+ "email",
+ "fcntl",
+ "html",
+ "io",
+ "math",
+ "mime",
+ "netclient",
+ "netserver",
+ "numbers",
+ "pydoc",
+ "stringold",
"xml"
],
"files": [
diff --git a/poky/meta/recipes-devtools/python/python3_3.8.2.bb b/poky/meta/recipes-devtools/python/python3_3.8.5.bb
index 0474f0721..cabe5dc07 100644
--- a/poky/meta/recipes-devtools/python/python3_3.8.2.bb
+++ b/poky/meta/recipes-devtools/python/python3_3.8.5.bb
@@ -32,7 +32,6 @@ SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \
file://0001-configure.ac-fix-LIBPL.patch \
file://0001-python3-Do-not-hardcode-lib-for-distutils.patch \
file://0020-configure.ac-setup.py-do-not-add-a-curses-include-pa.patch \
- file://0001-bpo-39503-CVE-2020-8492-Fix-AbstractBasicAuthHandler.patch \
"
SRC_URI_append_class-native = " \
@@ -41,8 +40,8 @@ SRC_URI_append_class-native = " \
file://0001-Don-t-search-system-for-headers-libraries.patch \
"
-SRC_URI[md5sum] = "e9d6ebc92183a177b8e8a58cad5b8d67"
-SRC_URI[sha256sum] = "2646e7dc233362f59714c6193017bb2d6f7b38d6ab4a0cb5fbac5c36c4d845df"
+SRC_URI[md5sum] = "35b5a3d0254c1c59be9736373d429db7"
+SRC_URI[sha256sum] = "e3003ed57db17e617acb382b0cade29a248c6026b1bd8aad1f976e9af66a83b0"
# exclude pre-releases for both python 2.x and 3.x
UPSTREAM_CHECK_REGEX = "[Pp]ython-(?P<pver>\d+(\.\d+)+).tar"
@@ -83,16 +82,16 @@ CACHED_CONFIGUREVARS = " \
ac_cv_file__dev_ptc=no \
ac_cv_working_tzset=yes \
"
-python() {
+
+def possibly_include_pgo(d):
# PGO currently causes builds to not be reproducible, so disable it for
# now. See YOCTO #13407
if bb.utils.contains('MACHINE_FEATURES', 'qemu-usermode', True, False, d) and d.getVar('BUILD_REPRODUCIBLE_BINARIES') != '1':
- d.setVar('PACKAGECONFIG_PGO', 'pgo')
- else:
- d.setVar('PACKAGECONFIG_PGO', '')
-}
+ return 'pgo'
+
+ return ''
-PACKAGECONFIG_class-target ??= "readline ${PACKAGECONFIG_PGO} gdbm"
+PACKAGECONFIG_class-target ??= "readline ${@possibly_include_pgo(d)} gdbm"
PACKAGECONFIG_class-native ??= "readline gdbm"
PACKAGECONFIG_class-nativesdk ??= "readline gdbm"
PACKAGECONFIG[readline] = ",,readline"
@@ -332,7 +331,15 @@ INSANE_SKIP_${PN}-dev += "dev-elf"
# catch all the rest (unsorted)
PACKAGES += "${PN}-misc"
-RDEPENDS_${PN}-misc += "python3-core python3-email python3-codecs python3-pydoc python3-pickle python3-audio"
+RDEPENDS_${PN}-misc += "\
+ ${PN}-core \
+ ${PN}-email \
+ ${PN}-codecs \
+ ${PN}-pydoc \
+ ${PN}-pickle \
+ ${PN}-audio \
+ ${PN}-numbers \
+"
RDEPENDS_${PN}-modules_append_class-target = " ${MLPREFIX}python3-misc"
RDEPENDS_${PN}-modules_append_class-nativesdk = " ${MLPREFIX}python3-misc"
FILES_${PN}-misc = "${libdir}/python${PYTHON_MAJMIN} ${libdir}/python${PYTHON_MAJMIN}/lib-dynload"
@@ -343,9 +350,11 @@ FILES_${PN}-man = "${datadir}/man"
# See https://bugs.python.org/issue18748 and https://bugs.python.org/issue37395
RDEPENDS_libpython3_append_libc-glibc = " libgcc"
+RDEPENDS_${PN}-ctypes_append_libc-glibc = " ${MLPREFIX}ldconfig"
RDEPENDS_${PN}-ptest = "${PN}-modules ${PN}-tests unzip bzip2 libgcc tzdata-europe coreutils sed"
RDEPENDS_${PN}-ptest_append_libc-glibc = " locale-base-tr-tr.iso-8859-9"
RDEPENDS_${PN}-tkinter += "${@bb.utils.contains('PACKAGECONFIG', 'tk', 'tk tk-lib', '', d)}"
+RDEPENDS_${PN}-idle += "${@bb.utils.contains('PACKAGECONFIG', 'tk', '${PN}-tkinter tcl', '', d)}"
RDEPENDS_${PN}-dev = ""
RDEPENDS_${PN}-tests_append_class-target = " ${MLPREFIX}bash"
diff --git a/poky/meta/recipes-devtools/qemu/qemu-native.inc b/poky/meta/recipes-devtools/qemu/qemu-native.inc
index 28cfd2cca..aa5c9b9a7 100644
--- a/poky/meta/recipes-devtools/qemu/qemu-native.inc
+++ b/poky/meta/recipes-devtools/qemu/qemu-native.inc
@@ -2,11 +2,6 @@ inherit native
require qemu.inc
-SRC_URI_append = " \
- file://0012-fix-libcap-header-issue-on-some-distro.patch \
- file://0013-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch \
- "
-
EXTRA_OEMAKE_append = " LD='${LD}' AR='${AR}' OBJCOPY='${OBJCOPY}' LDFLAGS='${LDFLAGS}'"
LDFLAGS_append = " -fuse-ld=bfd"
diff --git a/poky/meta/recipes-devtools/qemu/qemu-native_4.2.0.bb b/poky/meta/recipes-devtools/qemu/qemu-native_5.1.0.bb
index c8acff8e1..c8acff8e1 100644
--- a/poky/meta/recipes-devtools/qemu/qemu-native_4.2.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu-native_5.1.0.bb
diff --git a/poky/meta/recipes-devtools/qemu/qemu-system-native_4.2.0.bb b/poky/meta/recipes-devtools/qemu/qemu-system-native_5.1.0.bb
index 7394385d3..222b55cbc 100644
--- a/poky/meta/recipes-devtools/qemu/qemu-system-native_4.2.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu-system-native_5.1.0.bb
@@ -10,7 +10,7 @@ DEPENDS = "glib-2.0-native zlib-native pixman-native qemu-native bison-native"
EXTRA_OECONF_append = " --target-list=${@get_qemu_system_target_list(d)}"
PACKAGECONFIG ??= "fdt alsa kvm \
- ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer glx', '' ,d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer glx', '', d)} \
"
# Handle distros such as CentOS 5 32-bit that do not have kvm support
diff --git a/poky/meta/recipes-devtools/qemu/qemu.inc b/poky/meta/recipes-devtools/qemu/qemu.inc
index 126e7d442..bbb903896 100644
--- a/poky/meta/recipes-devtools/qemu/qemu.inc
+++ b/poky/meta/recipes-devtools/qemu/qemu.inc
@@ -27,26 +27,22 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \
file://0008-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch \
file://0009-Fix-webkitgtk-builds.patch \
file://0010-configure-Add-pkg-config-handling-for-libgcrypt.patch \
- file://0011-hw-i386-pc-fix-regression-in-parsing-vga-cmdline-par.patch \
- file://CVE-2019-15890.patch \
- file://CVE-2020-1711.patch \
- file://CVE-2020-7039-1.patch \
- file://CVE-2020-7039-2.patch \
- file://CVE-2020-7039-3.patch \
file://0001-Add-enable-disable-udev.patch \
- file://CVE-2020-7211.patch \
- file://0001-qemu-Do-not-include-file-if-not-exists.patch \
- file://CVE-2020-11102.patch \
- file://CVE-2020-11869.patch \
- "
+ file://0001-qemu-Do-not-include-file-if-not-exists.patch \
+ file://find_datadir.patch \
+ file://usb-fix-setup_len-init.patch \
+ "
UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+(\.\d+)+)\.tar"
-SRC_URI[md5sum] = "278eeb294e4b497e79af7a57e660cb9a"
-SRC_URI[sha256sum] = "d3481d4108ce211a053ef15be69af1bdd9dde1510fda80d92be0f6c3e98768f0"
+SRC_URI[sha256sum] = "c9174eb5933d9eb5e61f541cd6d1184cd3118dfe4c5c4955bc1bdc4d390fa4e5"
COMPATIBLE_HOST_mipsarchn32 = "null"
COMPATIBLE_HOST_mipsarchn64 = "null"
+# Per https://lists.nongnu.org/archive/html/qemu-devel/2020-09/msg03873.html
+# upstream states qemu doesn't work without optimization
+DEBUG_BUILD = "0"
+
do_install_append() {
# Prevent QA warnings about installed ${localstatedir}/run
if [ -d ${D}${localstatedir}/run ]; then rmdir ${D}${localstatedir}/run; fi
@@ -66,6 +62,7 @@ do_install_ptest() {
-e '$ {/endif/d}' ${D}${PTEST_PATH}/tests/Makefile.include
sed -i -e 's,${HOSTTOOLS_DIR}/python3,${bindir}/python3,' \
${D}/${PTEST_PATH}/tests/qemu-iotests/common.env
+ sed -i -e "1s,#!/usr/bin/bash,#!${base_bindir}/bash," ${D}${PTEST_PATH}/tests/data/acpi/disassemle-aml.sh
}
# QEMU_TARGETS is overridable variable
@@ -86,6 +83,7 @@ EXTRA_OECONF = " \
--disable-strip \
--disable-werror \
--extra-cflags='${CFLAGS}' \
+ --extra-ldflags='${LDFLAGS}' \
--with-git=/bin/false \
--disable-git-update \
${PACKAGECONFIG_CONFARGS} \
@@ -145,7 +143,7 @@ PACKAGECONFIG_remove_darwin = "kvm virglrenderer glx gtk+"
PACKAGECONFIG_remove_mingw32 = "kvm virglrenderer glx gtk+"
PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,libsdl2"
-PACKAGECONFIG[virtfs] = "--enable-virtfs --enable-attr,--disable-virtfs,libcap attr,"
+PACKAGECONFIG[virtfs] = "--enable-virtfs --enable-attr --enable-cap-ng,--disable-virtfs,libcap-ng attr,"
PACKAGECONFIG[aio] = "--enable-linux-aio,--disable-linux-aio,libaio,"
PACKAGECONFIG[xfs] = "--enable-xfsctl,--disable-xfsctl,xfsprogs,"
PACKAGECONFIG[xen] = "--enable-xen,--disable-xen,xen-tools,xen-tools-libxenstore xen-tools-libxenctrl xen-tools-libxenguest"
@@ -164,12 +162,11 @@ PACKAGECONFIG[nettle] = "--enable-nettle,--disable-nettle,nettle"
PACKAGECONFIG[libusb] = "--enable-libusb,--disable-libusb,libusb1"
PACKAGECONFIG[fdt] = "--enable-fdt,--disable-fdt,dtc"
PACKAGECONFIG[alsa] = "--audio-drv-list='oss alsa',,alsa-lib"
-PACKAGECONFIG[glx] = "--enable-opengl,--disable-opengl,mesa"
+PACKAGECONFIG[glx] = "--enable-opengl,--disable-opengl,virtual/libgl"
PACKAGECONFIG[lzo] = "--enable-lzo,--disable-lzo,lzo"
PACKAGECONFIG[numa] = "--enable-numa,--disable-numa,numactl"
PACKAGECONFIG[gnutls] = "--enable-gnutls,--disable-gnutls,gnutls"
PACKAGECONFIG[bzip2] = "--enable-bzip2,--disable-bzip2,bzip2"
-PACKAGECONFIG[bluez] = "--enable-bluez,--disable-bluez,bluez5"
PACKAGECONFIG[libiscsi] = "--enable-libiscsi,--disable-libiscsi"
PACKAGECONFIG[kvm] = "--enable-kvm,--disable-kvm"
PACKAGECONFIG[virglrenderer] = "--enable-virglrenderer,--disable-virglrenderer,virglrenderer"
@@ -178,10 +175,15 @@ PACKAGECONFIG[spice] = "--enable-spice,--disable-spice,spice"
# usbredir will be in meta-networking layer
PACKAGECONFIG[usb-redir] = "--enable-usb-redir,--disable-usb-redir,usbredir"
PACKAGECONFIG[snappy] = "--enable-snappy,--disable-snappy,snappy"
-PACKAGECONFIG[glusterfs] = "--enable-glusterfs,--disable-glusterfs"
+PACKAGECONFIG[glusterfs] = "--enable-glusterfs,--disable-glusterfs,glusterfs"
PACKAGECONFIG[xkbcommon] = "--enable-xkbcommon,--disable-xkbcommon,libxkbcommon"
PACKAGECONFIG[libudev] = "--enable-libudev,--disable-libudev,eudev"
PACKAGECONFIG[libxml2] = "--enable-libxml2,--disable-libxml2,libxml2"
+PACKAGECONFIG[attr] = "--enable-attr,--disable-attr,attr,"
+PACKAGECONFIG[rbd] = "--enable-rbd,--disable-rbd,ceph,ceph"
+PACKAGECONFIG[vhost] = "--enable-vhost-net,--disable-vhost-net,,"
+PACKAGECONFIG[ust] = "--enable-trace-backend=ust,--enable-trace-backend=nop,lttng-ust,"
+PACKAGECONFIG[pie] = "--enable-pie,--disable-pie,,"
INSANE_SKIP_${PN} = "arch"
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-Add-enable-disable-udev.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-Add-enable-disable-udev.patch
index c2c5849d6..1304ee3bf 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-Add-enable-disable-udev.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0001-Add-enable-disable-udev.patch
@@ -1,21 +1,24 @@
-From a471cf4e4c73350e090eb2cd87ec959d138012e5 Mon Sep 17 00:00:00 2001
+From b921e5204030845dc7c9d16d5f66d965e8d05367 Mon Sep 17 00:00:00 2001
From: Jeremy Puhlman <jpuhlman@mvista.com>
Date: Thu, 19 Mar 2020 11:54:26 -0700
Subject: [PATCH] Add enable/disable libudev
Upstream-Status: Pending
Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
+
+[update patch context]
+Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
---
configure | 4 ++++
1 file changed, 4 insertions(+)
-diff --git a/configure b/configure
-index cac271c..bd116eb 100755
---- a/configure
-+++ b/configure
-@@ -1539,6 +1539,10 @@ for opt do
+Index: qemu-5.1.0/configure
+===================================================================
+--- qemu-5.1.0.orig/configure
++++ qemu-5.1.0/configure
+@@ -1640,6 +1640,10 @@ for opt do
;;
- --disable-plugins) plugins="no"
+ --disable-libdaxctl) libdaxctl=no
;;
+ --enable-libudev) libudev="yes"
+ ;;
@@ -24,6 +27,3 @@ index cac271c..bd116eb 100755
*)
echo "ERROR: unknown option $opt"
echo "Try '$0 --help' for more information"
---
-1.8.3.1
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-missing-wacom-HID-descriptor.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-missing-wacom-HID-descriptor.patch
index 66ff99650..46c9da08a 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-missing-wacom-HID-descriptor.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-missing-wacom-HID-descriptor.patch
@@ -1,4 +1,4 @@
-From 526cb7e26f6dd96c9ee2ffa05ce0a358d3bfbfb3 Mon Sep 17 00:00:00 2001
+From 883feb43129dc39b491e492c7ccfe89aefe53c44 Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Thu, 27 Nov 2014 14:04:29 +0000
Subject: [PATCH] qemu: Add missing wacom HID descriptor
@@ -14,15 +14,17 @@ Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Upstream-Status: Submitted
2014/11/27
+[update patch context]
+Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
---
hw/usb/dev-wacom.c | 94 +++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 93 insertions(+), 1 deletion(-)
-diff --git a/hw/usb/dev-wacom.c b/hw/usb/dev-wacom.c
-index 8ed57b3b..1502928b 100644
---- a/hw/usb/dev-wacom.c
-+++ b/hw/usb/dev-wacom.c
-@@ -74,6 +74,89 @@ static const USBDescStrings desc_strings = {
+Index: qemu-5.1.0/hw/usb/dev-wacom.c
+===================================================================
+--- qemu-5.1.0.orig/hw/usb/dev-wacom.c
++++ qemu-5.1.0/hw/usb/dev-wacom.c
+@@ -74,6 +74,89 @@ static const USBDescStrings desc_strings
[STR_SERIALNUMBER] = "1",
};
@@ -112,7 +114,7 @@ index 8ed57b3b..1502928b 100644
static const USBDescIface desc_iface_wacom = {
.bInterfaceNumber = 0,
.bNumEndpoints = 1,
-@@ -91,7 +174,7 @@ static const USBDescIface desc_iface_wacom = {
+@@ -91,7 +174,7 @@ static const USBDescIface desc_iface_wac
0x00, /* u8 country_code */
0x01, /* u8 num_descriptors */
0x22, /* u8 type: Report */
@@ -121,7 +123,7 @@ index 8ed57b3b..1502928b 100644
},
},
},
-@@ -271,6 +354,15 @@ static void usb_wacom_handle_control(USBDevice *dev, USBPacket *p,
+@@ -271,6 +354,15 @@ static void usb_wacom_handle_control(USB
}
switch (request) {
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Do-not-include-file-if-not-exists.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Do-not-include-file-if-not-exists.patch
index eccac0509..d6c0f9ebe 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Do-not-include-file-if-not-exists.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Do-not-include-file-if-not-exists.patch
@@ -1,4 +1,4 @@
-From 98c2da129db19ee63d7e21b77a0ef70822c95069 Mon Sep 17 00:00:00 2001
+From 34247f83095f8cdcdc1f9d7f0c6ffbd46b25d979 Mon Sep 17 00:00:00 2001
From: Oleksiy Obitotskyy <oobitots@cisco.com>
Date: Wed, 25 Mar 2020 21:21:35 +0200
Subject: [PATCH] qemu: Do not include file if not exists
@@ -6,26 +6,26 @@ Subject: [PATCH] qemu: Do not include file if not exists
Script configure checks for if_alg.h and check failed but
if_alg.h still included.
-Upstream-status: Submitted [https://lists.gnu.org/archive/html/qemu-devel/2020-03/msg07188.html]
+Upstream-Status: Submitted [https://lists.gnu.org/archive/html/qemu-devel/2020-03/msg07188.html]
Signed-off-by: Oleksiy Obitotskyy <oobitots@cisco.com>
+
+[update patch context]
+Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
---
linux-user/syscall.c | 2 ++
1 file changed, 2 insertions(+)
-diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index fc18f244..68d62666 100644
---- a/linux-user/syscall.c
-+++ b/linux-user/syscall.c
-@@ -106,7 +106,9 @@
+Index: qemu-5.1.0/linux-user/syscall.c
+===================================================================
+--- qemu-5.1.0.orig/linux-user/syscall.c
++++ qemu-5.1.0/linux-user/syscall.c
+@@ -109,7 +109,9 @@
#include <linux/blkpg.h>
#include <netpacket/packet.h>
#include <linux/netlink.h>
+#if defined(CONFIG_AF_ALG)
#include <linux/if_alg.h>
+#endif
- #include "linux_loop.h"
- #include "uname.h"
-
---
-2.20.1
-
+ #include <linux/rtc.h>
+ #include <sound/asound.h>
+ #ifdef HAVE_DRM_H
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0002-Add-subpackage-ptest-which-runs-all-unit-test-cases-.patch b/poky/meta/recipes-devtools/qemu/qemu/0002-Add-subpackage-ptest-which-runs-all-unit-test-cases-.patch
index 7f7da5100..f379948f1 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0002-Add-subpackage-ptest-which-runs-all-unit-test-cases-.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0002-Add-subpackage-ptest-which-runs-all-unit-test-cases-.patch
@@ -1,4 +1,4 @@
-From 8ee6281516bd9210e75e91d705da8916bab3bf51 Mon Sep 17 00:00:00 2001
+From 5da6cef7761157a003e7ebde74fb3cf90ab396d9 Mon Sep 17 00:00:00 2001
From: Juro Bystricky <juro.bystricky@intel.com>
Date: Thu, 31 Aug 2017 11:06:56 -0700
Subject: [PATCH] Add subpackage -ptest which runs all unit test cases for
@@ -10,17 +10,19 @@ Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
+[update patch context]
+Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
---
tests/Makefile.include | 8 ++++++++
1 file changed, 8 insertions(+)
-diff --git a/tests/Makefile.include b/tests/Makefile.include
-index 8566f5f1..52d0320b 100644
---- a/tests/Makefile.include
-+++ b/tests/Makefile.include
-@@ -1210,4 +1210,12 @@ all: $(QEMU_IOTESTS_HELPERS-y)
- -include $(wildcard tests/*.d)
- -include $(wildcard tests/libqos/*.d)
+Index: qemu-5.1.0/tests/Makefile.include
+===================================================================
+--- qemu-5.1.0.orig/tests/Makefile.include
++++ qemu-5.1.0/tests/Makefile.include
+@@ -982,4 +982,12 @@ all: $(QEMU_IOTESTS_HELPERS-y)
+ -include $(wildcard tests/qtest/*.d)
+ -include $(wildcard tests/qtest/libqos/*.d)
+buildtest-TESTS: $(check-unit-y)
+
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0003-qemu-Add-addition-environment-space-to-boot-loader-q.patch b/poky/meta/recipes-devtools/qemu/qemu/0003-qemu-Add-addition-environment-space-to-boot-loader-q.patch
index 012d60d8f..33cef4221 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0003-qemu-Add-addition-environment-space-to-boot-loader-q.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0003-qemu-Add-addition-environment-space-to-boot-loader-q.patch
@@ -15,13 +15,13 @@ Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Roy Li <rongqing.li@windriver.com>
---
- hw/mips/mips_malta.c | 2 +-
+ hw/mips/malta.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/hw/mips/mips_malta.c b/hw/mips/mips_malta.c
-index 92e9ca5b..3a7f3954 100644
---- a/hw/mips/mips_malta.c
-+++ b/hw/mips/mips_malta.c
+Index: qemu-5.1.0/hw/mips/malta.c
+===================================================================
+--- qemu-5.1.0.orig/hw/mips/malta.c
++++ qemu-5.1.0/hw/mips/malta.c
@@ -59,7 +59,7 @@
#define ENVP_ADDR 0x80002000l
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0004-qemu-disable-Valgrind.patch b/poky/meta/recipes-devtools/qemu/qemu/0004-qemu-disable-Valgrind.patch
index bc30397e8..71f537f9b 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0004-qemu-disable-Valgrind.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0004-qemu-disable-Valgrind.patch
@@ -12,11 +12,11 @@ Signed-off-by: Ross Burton <ross.burton@intel.com>
configure | 9 ---------
1 file changed, 9 deletions(-)
-diff --git a/configure b/configure
-index 6099be1d..a766017b 100755
---- a/configure
-+++ b/configure
-@@ -5390,15 +5390,6 @@ fi
+Index: qemu-5.1.0/configure
+===================================================================
+--- qemu-5.1.0.orig/configure
++++ qemu-5.1.0/configure
+@@ -5751,15 +5751,6 @@ fi
# check if we have valgrind/valgrind.h
valgrind_h=no
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0005-qemu-native-set-ld.bfd-fix-cflags-and-set-some-envir.patch b/poky/meta/recipes-devtools/qemu/qemu/0005-qemu-native-set-ld.bfd-fix-cflags-and-set-some-envir.patch
index ec303371b..02ebbee1a 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0005-qemu-native-set-ld.bfd-fix-cflags-and-set-some-envir.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0005-qemu-native-set-ld.bfd-fix-cflags-and-set-some-envir.patch
@@ -1,22 +1,24 @@
-From 6cdf82af2eba312b9b8da86dda28b98d3d51f4d4 Mon Sep 17 00:00:00 2001
+From 230fe5804099bdca0c9e4cae7280c9fc513cb7f5 Mon Sep 17 00:00:00 2001
From: Stephen Arnold <sarnold@vctlabs.com>
Date: Sun, 12 Jun 2016 18:09:56 -0700
Subject: [PATCH] qemu-native: set ld.bfd, fix cflags, and set some environment
Upstream-Status: Pending
+[update patch context]
+Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
---
configure | 4 ----
1 file changed, 4 deletions(-)
-diff --git a/configure b/configure
-index a766017b..72f11aca 100755
---- a/configure
-+++ b/configure
-@@ -6085,10 +6085,6 @@ write_c_skeleton
+Index: qemu-5.1.0/configure
+===================================================================
+--- qemu-5.1.0.orig/configure
++++ qemu-5.1.0/configure
+@@ -6515,10 +6515,6 @@ write_c_skeleton
if test "$gcov" = "yes" ; then
- CFLAGS="-fprofile-arcs -ftest-coverage -g $CFLAGS"
- LDFLAGS="-fprofile-arcs -ftest-coverage $LDFLAGS"
+ QEMU_CFLAGS="-fprofile-arcs -ftest-coverage -g $QEMU_CFLAGS"
+ QEMU_LDFLAGS="-fprofile-arcs -ftest-coverage $QEMU_LDFLAGS"
-elif test "$fortify_source" = "yes" ; then
- CFLAGS="-O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 $CFLAGS"
-elif test "$debug" = "no"; then
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0006-chardev-connect-socket-to-a-spawned-command.patch b/poky/meta/recipes-devtools/qemu/qemu/0006-chardev-connect-socket-to-a-spawned-command.patch
index 0810ae84c..98fd5e913 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0006-chardev-connect-socket-to-a-spawned-command.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0006-chardev-connect-socket-to-a-spawned-command.patch
@@ -51,11 +51,11 @@ Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
qapi/char.json | 5 +++
3 files changed, 109 insertions(+)
-diff --git a/chardev/char-socket.c b/chardev/char-socket.c
-index 185fe38d..54fa4234 100644
---- a/chardev/char-socket.c
-+++ b/chardev/char-socket.c
-@@ -1288,6 +1288,67 @@ static bool qmp_chardev_validate_socket(ChardevSocket *sock,
+Index: qemu-5.1.0/chardev/char-socket.c
+===================================================================
+--- qemu-5.1.0.orig/chardev/char-socket.c
++++ qemu-5.1.0/chardev/char-socket.c
+@@ -1292,6 +1292,67 @@ static bool qmp_chardev_validate_socket(
return true;
}
@@ -123,7 +123,7 @@ index 185fe38d..54fa4234 100644
static void qmp_chardev_open_socket(Chardev *chr,
ChardevBackend *backend,
-@@ -1296,6 +1357,9 @@ static void qmp_chardev_open_socket(Chardev *chr,
+@@ -1300,6 +1361,9 @@ static void qmp_chardev_open_socket(Char
{
SocketChardev *s = SOCKET_CHARDEV(chr);
ChardevSocket *sock = backend->u.socket.data;
@@ -133,7 +133,7 @@ index 185fe38d..54fa4234 100644
bool do_nodelay = sock->has_nodelay ? sock->nodelay : false;
bool is_listen = sock->has_server ? sock->server : true;
bool is_telnet = sock->has_telnet ? sock->telnet : false;
-@@ -1361,6 +1425,14 @@ static void qmp_chardev_open_socket(Chardev *chr,
+@@ -1365,6 +1429,14 @@ static void qmp_chardev_open_socket(Char
update_disconnected_filename(s);
@@ -148,13 +148,15 @@ index 185fe38d..54fa4234 100644
if (s->is_listen) {
if (qmp_chardev_open_socket_server(chr, is_telnet || is_tn3270,
is_waitconnect, errp) < 0) {
-@@ -1380,9 +1452,26 @@ static void qemu_chr_parse_socket(QemuOpts *opts, ChardevBackend *backend,
+@@ -1384,11 +1456,27 @@ static void qemu_chr_parse_socket(QemuOp
const char *host = qemu_opt_get(opts, "host");
const char *port = qemu_opt_get(opts, "port");
const char *fd = qemu_opt_get(opts, "fd");
+#ifndef _WIN32
+ const char *cmd = qemu_opt_get(opts, "cmd");
+#endif
+ bool tight = qemu_opt_get_bool(opts, "tight", true);
+ bool abstract = qemu_opt_get_bool(opts, "abstract", false);
SocketAddressLegacy *addr;
ChardevSocket *sock;
@@ -171,19 +173,19 @@ index 185fe38d..54fa4234 100644
+ }
+ } else
+#endif
-+
if ((!!path + !!fd + !!host) != 1) {
error_setg(errp,
"Exactly one of 'path', 'fd' or 'host' required");
-@@ -1425,12 +1514,24 @@ static void qemu_chr_parse_socket(QemuOpts *opts, ChardevBackend *backend,
+@@ -1431,12 +1519,24 @@ static void qemu_chr_parse_socket(QemuOp
sock->has_tls_authz = qemu_opt_get(opts, "tls-authz");
sock->tls_authz = g_strdup(qemu_opt_get(opts, "tls-authz"));
+- addr = g_new0(SocketAddressLegacy, 1);
+#ifndef _WIN32
+ sock->cmd = g_strdup(cmd);
+#endif
+
- addr = g_new0(SocketAddressLegacy, 1);
++ addr = g_new0(SocketAddressLegacy, 1);
+#ifndef _WIN32
+ if (path || cmd) {
+#else
@@ -197,28 +199,28 @@ index 185fe38d..54fa4234 100644
+#else
q_unix->path = g_strdup(path);
+#endif
+ q_unix->tight = tight;
+ q_unix->abstract = abstract;
} else if (host) {
- addr->type = SOCKET_ADDRESS_LEGACY_KIND_INET;
- addr->u.inet.data = g_new(InetSocketAddress, 1);
-diff --git a/chardev/char.c b/chardev/char.c
-index 7b6b2cb1..0c2ca64b 100644
---- a/chardev/char.c
-+++ b/chardev/char.c
-@@ -837,6 +837,9 @@ QemuOptsList qemu_chardev_opts = {
- },{
+Index: qemu-5.1.0/chardev/char.c
+===================================================================
+--- qemu-5.1.0.orig/chardev/char.c
++++ qemu-5.1.0/chardev/char.c
+@@ -826,6 +826,9 @@ QemuOptsList qemu_chardev_opts = {
.name = "path",
.type = QEMU_OPT_STRING,
-+ },{
+ },{
+ .name = "cmd",
+ .type = QEMU_OPT_STRING,
- },{
++ },{
.name = "host",
.type = QEMU_OPT_STRING,
-diff --git a/qapi/char.json b/qapi/char.json
-index a6e81ac7..517962c6 100644
---- a/qapi/char.json
-+++ b/qapi/char.json
-@@ -247,6 +247,10 @@
+ },{
+Index: qemu-5.1.0/qapi/char.json
+===================================================================
+--- qemu-5.1.0.orig/qapi/char.json
++++ qemu-5.1.0/qapi/char.json
+@@ -250,6 +250,10 @@
#
# @addr: socket address to listen on (server=true)
# or connect to (server=false)
@@ -229,7 +231,7 @@ index a6e81ac7..517962c6 100644
# @tls-creds: the ID of the TLS credentials object (since 2.6)
# @tls-authz: the ID of the QAuthZ authorization object against which
# the client's x509 distinguished name will be validated. This
-@@ -272,6 +276,7 @@
+@@ -276,6 +280,7 @@
##
{ 'struct': 'ChardevSocket',
'data': { 'addr': 'SocketAddressLegacy',
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0007-apic-fixup-fallthrough-to-PIC.patch b/poky/meta/recipes-devtools/qemu/qemu/0007-apic-fixup-fallthrough-to-PIC.patch
index 89baad9b7..034ac5782 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0007-apic-fixup-fallthrough-to-PIC.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0007-apic-fixup-fallthrough-to-PIC.patch
@@ -29,11 +29,11 @@ Signed-off-by: He Zhe <zhe.he@windriver.com>
hw/intc/apic.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/hw/intc/apic.c b/hw/intc/apic.c
-index 2a74f7b4..4d5da365 100644
---- a/hw/intc/apic.c
-+++ b/hw/intc/apic.c
-@@ -603,7 +603,7 @@ int apic_accept_pic_intr(DeviceState *dev)
+Index: qemu-5.1.0/hw/intc/apic.c
+===================================================================
+--- qemu-5.1.0.orig/hw/intc/apic.c
++++ qemu-5.1.0/hw/intc/apic.c
+@@ -603,7 +603,7 @@ int apic_accept_pic_intr(DeviceState *de
APICCommonState *s = APIC(dev);
uint32_t lvt0;
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0008-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch b/poky/meta/recipes-devtools/qemu/qemu/0008-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch
index 30bb4ddf2..d20f04ee5 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0008-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0008-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch
@@ -18,11 +18,11 @@ Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
linux-user/main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/linux-user/main.c b/linux-user/main.c
-index 6ff7851e..ebff0485 100644
---- a/linux-user/main.c
-+++ b/linux-user/main.c
-@@ -78,7 +78,7 @@ int have_guest_base;
+Index: qemu-5.1.0/linux-user/main.c
+===================================================================
+--- qemu-5.1.0.orig/linux-user/main.c
++++ qemu-5.1.0/linux-user/main.c
+@@ -92,7 +92,7 @@ static int last_log_mask;
(TARGET_LONG_BITS == 32 || defined(TARGET_ABI32))
/* There are a number of places where we assign reserved_va to a variable
of type abi_ulong and expect it to fit. Avoid the last page. */
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0009-Fix-webkitgtk-builds.patch b/poky/meta/recipes-devtools/qemu/qemu/0009-Fix-webkitgtk-builds.patch
index 7e273eece..f2a44986b 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0009-Fix-webkitgtk-builds.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0009-Fix-webkitgtk-builds.patch
@@ -1,4 +1,4 @@
-From 613166007e3b852c99caf2cd34a972e2c8460737 Mon Sep 17 00:00:00 2001
+From 815c97ba0de02da9dace3fcfcbdf9b20e029f0d7 Mon Sep 17 00:00:00 2001
From: Martin Jansa <martin.jansa@lge.com>
Date: Fri, 1 Jun 2018 08:41:07 +0000
Subject: [PATCH] Fix webkitgtk builds
@@ -19,6 +19,8 @@ This reverts commit ebf9a3630c911d0cfc9c20f7cafe9ba4f88cf583.
Upstream-Status: Pending
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
+[update patch context]
+Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
---
include/exec/cpu-all.h | 6 +-----
include/exec/cpu_ldst.h | 5 ++++-
@@ -26,29 +28,29 @@ Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
linux-user/syscall.c | 5 +----
4 files changed, 10 insertions(+), 23 deletions(-)
-diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h
-index e96781a4..a369f81a 100644
---- a/include/exec/cpu-all.h
-+++ b/include/exec/cpu-all.h
-@@ -162,12 +162,8 @@ extern unsigned long guest_base;
- extern int have_guest_base;
- extern unsigned long reserved_va;
-
--#if HOST_LONG_BITS <= TARGET_VIRT_ADDR_SPACE_BITS
--#define GUEST_ADDR_MAX (~0ul)
--#else
--#define GUEST_ADDR_MAX (reserved_va ? reserved_va - 1 : \
+Index: qemu-5.1.0/include/exec/cpu-all.h
+===================================================================
+--- qemu-5.1.0.orig/include/exec/cpu-all.h
++++ qemu-5.1.0/include/exec/cpu-all.h
+@@ -176,11 +176,8 @@ extern unsigned long reserved_va;
+ * avoid setting bits at the top of guest addresses that might need
+ * to be used for tags.
+ */
+-#define GUEST_ADDR_MAX_ \
+- ((MIN_CONST(TARGET_VIRT_ADDR_SPACE_BITS, TARGET_ABI_BITS) <= 32) ? \
+- UINT32_MAX : ~0ul)
+-#define GUEST_ADDR_MAX (reserved_va ? reserved_va - 1 : GUEST_ADDR_MAX_)
+-
+#define GUEST_ADDR_MAX (reserved_va ? reserved_va : \
- (1ul << TARGET_VIRT_ADDR_SPACE_BITS) - 1)
--#endif
++ (1ul << TARGET_VIRT_ADDR_SPACE_BITS) - 1)
#else
#include "exec/hwaddr.h"
-diff --git a/include/exec/cpu_ldst.h b/include/exec/cpu_ldst.h
-index fd499f7e..30575f60 100644
---- a/include/exec/cpu_ldst.h
-+++ b/include/exec/cpu_ldst.h
-@@ -65,7 +65,10 @@ typedef uint64_t abi_ptr;
+Index: qemu-5.1.0/include/exec/cpu_ldst.h
+===================================================================
+--- qemu-5.1.0.orig/include/exec/cpu_ldst.h
++++ qemu-5.1.0/include/exec/cpu_ldst.h
+@@ -75,7 +75,10 @@ typedef uint64_t abi_ptr;
#if HOST_LONG_BITS <= TARGET_VIRT_ADDR_SPACE_BITS
#define guest_addr_valid(x) (1)
#else
@@ -60,11 +62,11 @@ index fd499f7e..30575f60 100644
#endif
#define h2g_valid(x) guest_addr_valid((unsigned long)(x) - guest_base)
-diff --git a/linux-user/mmap.c b/linux-user/mmap.c
-index 46a6e3a7..77354654 100644
---- a/linux-user/mmap.c
-+++ b/linux-user/mmap.c
-@@ -78,7 +78,7 @@ int target_mprotect(abi_ulong start, abi_ulong len, int prot)
+Index: qemu-5.1.0/linux-user/mmap.c
+===================================================================
+--- qemu-5.1.0.orig/linux-user/mmap.c
++++ qemu-5.1.0/linux-user/mmap.c
+@@ -71,7 +71,7 @@ int target_mprotect(abi_ulong start, abi
return -TARGET_EINVAL;
len = TARGET_PAGE_ALIGN(len);
end = start + len;
@@ -73,18 +75,18 @@ index 46a6e3a7..77354654 100644
return -TARGET_ENOMEM;
}
prot &= PROT_READ | PROT_WRITE | PROT_EXEC;
-@@ -495,8 +495,8 @@ abi_long target_mmap(abi_ulong start, abi_ulong len, int prot,
+@@ -467,8 +467,8 @@ abi_long target_mmap(abi_ulong start, ab
* It can fail only on 64-bit host with 32-bit target.
* On any other target/host host mmap() handles this error correctly.
*/
-- if (!guest_range_valid(start, len)) {
+- if (end < start || !guest_range_valid(start, len)) {
- errno = ENOMEM;
-+ if ((unsigned long)start + len - 1 > (abi_ulong) -1) {
++ if (end < start || ((unsigned long)start + len - 1 > (abi_ulong) -1)) {
+ errno = EINVAL;
goto fail;
}
-@@ -636,10 +636,8 @@ int target_munmap(abi_ulong start, abi_ulong len)
+@@ -604,10 +604,8 @@ int target_munmap(abi_ulong start, abi_u
if (start & ~TARGET_PAGE_MASK)
return -TARGET_EINVAL;
len = TARGET_PAGE_ALIGN(len);
@@ -96,7 +98,7 @@ index 46a6e3a7..77354654 100644
mmap_lock();
end = start + len;
real_start = start & qemu_host_page_mask;
-@@ -694,13 +692,6 @@ abi_long target_mremap(abi_ulong old_addr, abi_ulong old_size,
+@@ -662,13 +660,6 @@ abi_long target_mremap(abi_ulong old_add
int prot;
void *host_addr;
@@ -110,11 +112,11 @@ index 46a6e3a7..77354654 100644
mmap_lock();
if (flags & MREMAP_FIXED) {
-diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index 171c0cae..fc18f244 100644
---- a/linux-user/syscall.c
-+++ b/linux-user/syscall.c
-@@ -4138,9 +4138,6 @@ static inline abi_ulong do_shmat(CPUArchState *cpu_env,
+Index: qemu-5.1.0/linux-user/syscall.c
+===================================================================
+--- qemu-5.1.0.orig/linux-user/syscall.c
++++ qemu-5.1.0/linux-user/syscall.c
+@@ -4336,9 +4336,6 @@ static inline abi_ulong do_shmat(CPUArch
return -TARGET_EINVAL;
}
}
@@ -124,12 +126,12 @@ index 171c0cae..fc18f244 100644
mmap_lock();
-@@ -6990,7 +6987,7 @@ static int open_self_maps(void *cpu_env, int fd)
- }
- if (h2g_valid(min)) {
- int flags = page_get_flags(h2g(min));
-- max = h2g_valid(max - 1) ? max : (uintptr_t)g2h(GUEST_ADDR_MAX) + 1;
-+ max = h2g_valid(max - 1) ? max : (uintptr_t)g2h(GUEST_ADDR_MAX);
+@@ -7376,7 +7373,7 @@ static int open_self_maps(void *cpu_env,
+ const char *path;
+
+ max = h2g_valid(max - 1) ?
+- max : (uintptr_t) g2h(GUEST_ADDR_MAX) + 1;
++ max : (uintptr_t) g2h(GUEST_ADDR_MAX);
+
if (page_check_range(h2g(min), max - min, flags) == -1) {
continue;
- }
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0010-configure-Add-pkg-config-handling-for-libgcrypt.patch b/poky/meta/recipes-devtools/qemu/qemu/0010-configure-Add-pkg-config-handling-for-libgcrypt.patch
index 34df78b7f..d7e3fffdd 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0010-configure-Add-pkg-config-handling-for-libgcrypt.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0010-configure-Add-pkg-config-handling-for-libgcrypt.patch
@@ -14,11 +14,11 @@ Signed-off-by: He Zhe <zhe.he@windriver.com>
configure | 48 ++++++++++++++++++++++++++++++++++++++++--------
1 file changed, 40 insertions(+), 8 deletions(-)
-diff --git a/configure b/configure
-index 72f11aca..cac271ce 100755
---- a/configure
-+++ b/configure
-@@ -2875,6 +2875,30 @@ has_libgcrypt() {
+Index: qemu-5.1.0/configure
+===================================================================
+--- qemu-5.1.0.orig/configure
++++ qemu-5.1.0/configure
+@@ -3084,6 +3084,30 @@ has_libgcrypt() {
return 0
}
@@ -49,7 +49,7 @@ index 72f11aca..cac271ce 100755
if test "$nettle" != "no"; then
pass="no"
-@@ -2915,7 +2939,14 @@ fi
+@@ -3124,7 +3148,14 @@ fi
if test "$gcrypt" != "no"; then
pass="no"
@@ -65,7 +65,7 @@ index 72f11aca..cac271ce 100755
gcrypt_cflags=$(libgcrypt-config --cflags)
gcrypt_libs=$(libgcrypt-config --libs)
# Debian has removed -lgpg-error from libgcrypt-config
-@@ -2925,15 +2956,16 @@ if test "$gcrypt" != "no"; then
+@@ -3134,15 +3165,16 @@ if test "$gcrypt" != "no"; then
then
gcrypt_libs="$gcrypt_libs -lgpg-error"
fi
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0011-hw-i386-pc-fix-regression-in-parsing-vga-cmdline-par.patch b/poky/meta/recipes-devtools/qemu/qemu/0011-hw-i386-pc-fix-regression-in-parsing-vga-cmdline-par.patch
deleted file mode 100644
index 2fe0850a3..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0011-hw-i386-pc-fix-regression-in-parsing-vga-cmdline-par.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From a88c40f02ace88f09b2a85a64831b277b2ebc88c Mon Sep 17 00:00:00 2001
-From: Peter Wu <peter@lekensteyn.nl>
-Date: Sat, 21 Dec 2019 17:21:24 +0100
-Subject: [PATCH] hw/i386/pc: fix regression in parsing vga cmdline parameter
-
-When the 'vga=' parameter is succeeded by another parameter, QEMU 4.2.0
-would refuse to start with a rather cryptic message:
-
- $ qemu-system-x86_64 -kernel /boot/vmlinuz-linux -append 'vga=792 quiet'
- qemu: can't parse 'vga' parameter: Invalid argument
-
-It was not clear whether this applied to the '-vga std' parameter or the
-'-append' one. Fix the parsing regression and clarify the error.
-
-Fixes: 133ef074bd ("hw/i386/pc: replace use of strtol with qemu_strtoui in x86_load_linux()")
-Cc: Sergio Lopez <slp@redhat.com>
-Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-Message-Id: <20191221162124.1159291-1-peter@lekensteyn.nl>
-Cc: qemu-stable@nongnu.org
-Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-Upstream-Status: Backport [https://git.qemu.org/?p=qemu.git;a=commitdiff;h=a88c40f02ace88f09b2a85a64831b277b2ebc88c]
----
- hw/i386/x86.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/hw/i386/x86.c b/hw/i386/x86.c
-index d8bb5c2a96..9b9a4d5837 100644
---- a/hw/i386/x86.c
-+++ b/hw/i386/x86.c
-@@ -612,6 +612,7 @@ void x86_load_linux(X86MachineState *x86ms,
- vmode = strstr(kernel_cmdline, "vga=");
- if (vmode) {
- unsigned int video_mode;
-+ const char *end;
- int ret;
- /* skip "vga=" */
- vmode += 4;
-@@ -622,10 +623,9 @@ void x86_load_linux(X86MachineState *x86ms,
- } else if (!strncmp(vmode, "ask", 3)) {
- video_mode = 0xfffd;
- } else {
-- ret = qemu_strtoui(vmode, NULL, 0, &video_mode);
-- if (ret != 0) {
-- fprintf(stderr, "qemu: can't parse 'vga' parameter: %s\n",
-- strerror(-ret));
-+ ret = qemu_strtoui(vmode, &end, 0, &video_mode);
-+ if (ret != 0 || (*end && *end != ' ')) {
-+ fprintf(stderr, "qemu: invalid 'vga=' kernel parameter.\n");
- exit(1);
- }
- }
---
-2.25.0
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0012-fix-libcap-header-issue-on-some-distro.patch b/poky/meta/recipes-devtools/qemu/qemu/0012-fix-libcap-header-issue-on-some-distro.patch
deleted file mode 100644
index 3a7d7bbd3..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0012-fix-libcap-header-issue-on-some-distro.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-From 9125afb733d8c96416bb83c5adad39bb8d0803a1 Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Tue, 12 Mar 2013 09:54:06 +0800
-Subject: [PATCH] fix libcap header issue on some distro
-
-1, When build qemu-native on SLED 11.2, there is an error:
-...
-| In file included from /usr/include/bits/sigcontext.h:28,
-| from /usr/include/signal.h:339,
-| from /buildarea2/tmp/work/i686-linux/qemu-native/1.4.0-r0/
-qemu-1.4.0/include/qemu-common.h:42,
-| from fsdev/virtfs-proxy-helper.c:23:
-| /usr/include/asm/sigcontext.h:28: error: expected specifier-
-qualifier-list before '__u64'
-| /usr/include/asm/sigcontext.h:191: error: expected specifier-
-qualifier-list before '__u64'
-...
-
-2, The virtfs-proxy-helper.c includes <sys/capability.h> and
-qemu-common.h in sequence. The header include map is:
-(`-->' presents `include')
-...
-"virtfs-proxy-helper.c" --> <sys/capability.h>
-...
-"virtfs-proxy-helper.c" --> "qemu-common.h" --> <signal.h> -->
-<bits/sigcontext.h> --> <asm/sigcontext.h> --> <linux/types.h> -->
-<asm/types.h> --> <asm-generic/types.h> --> <asm-generic/int-ll64.h>
-...
-
-3, The bug is found on SLED 11.2 x86. In libcap header file
-/usr/include/sys/capability.h, it does evil stuff like this:
-...
- 25 /*
- 26 * Make sure we can be included from userland by preventing
- 27 * capability.h from including other kernel headers
- 28 */
- 29 #define _LINUX_TYPES_H
- 30 #define _LINUX_FS_H
- 31 #define __LINUX_COMPILER_H
- 32 #define __user
- 33
- 34 typedef unsigned int __u32;
- 35 typedef __u32 __le32;
-...
-This completely prevents including /usr/include/linux/types.h.
-The above `<asm/sigcontext.h> --> <linux/types.h>' is prevented,
-and '__u64' is defined in <asm-generic/int-ll64.h>.
-
-4, Modify virtfs-proxy-helper.c to include <sys/capability.h>
-last to workaround the issue.
-
-http://www.linuxtv.org/pipermail/vdr/2009-August/021194.html
-http://patchwork.linuxtv.org/patch/12748/
-
-Upstream-Status: Pending
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
----
- fsdev/virtfs-proxy-helper.c | 7 +++++--
- 1 file changed, 5 insertions(+), 2 deletions(-)
-
-diff --git a/fsdev/virtfs-proxy-helper.c b/fsdev/virtfs-proxy-helper.c
-index 6f132c5f..8329950c 100644
---- a/fsdev/virtfs-proxy-helper.c
-+++ b/fsdev/virtfs-proxy-helper.c
-@@ -13,7 +13,6 @@
- #include <sys/resource.h>
- #include <getopt.h>
- #include <syslog.h>
--#include <sys/capability.h>
- #include <sys/fsuid.h>
- #include <sys/vfs.h>
- #include <sys/ioctl.h>
-@@ -27,7 +26,11 @@
- #include "9p-iov-marshal.h"
- #include "hw/9pfs/9p-proxy.h"
- #include "fsdev/9p-iov-marshal.h"
--
-+/*
-+ * Include this one last due to some versions of it being buggy:
-+ * http://www.linuxtv.org/pipermail/vdr/2009-August/021194.html
-+ */
-+#include <sys/capability.h>
- #define PROGNAME "virtfs-proxy-helper"
-
- #ifndef XFS_SUPER_MAGIC
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0013-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch b/poky/meta/recipes-devtools/qemu/qemu/0013-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch
deleted file mode 100644
index e5ebfc126..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0013-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From 0a53e906510cce1f32bc04a11e81ea40f834dac4 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= <anibal.limon@linux.intel.com>
-Date: Wed, 12 Aug 2015 15:11:30 -0500
-Subject: [PATCH] cpus.c: Add error messages when qemi_cpu_kick_thread fails.
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Add custom_debug.h with function for print backtrace information.
-When pthread_kill fails in qemu_cpu_kick_thread display backtrace and
-current cpu information.
-
-Upstream-Status: Inappropriate
-Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
-
----
- cpus.c | 5 +++++
- custom_debug.h | 24 ++++++++++++++++++++++++
- 2 files changed, 29 insertions(+)
- create mode 100644 custom_debug.h
-
-diff --git a/cpus.c b/cpus.c
-index e83f72b4..e6e2576e 100644
---- a/cpus.c
-+++ b/cpus.c
-@@ -1769,6 +1769,8 @@ static void *qemu_tcg_cpu_thread_fn(void *arg)
- return NULL;
- }
-
-+#include "custom_debug.h"
-+
- static void qemu_cpu_kick_thread(CPUState *cpu)
- {
- #ifndef _WIN32
-@@ -1781,6 +1783,9 @@ static void qemu_cpu_kick_thread(CPUState *cpu)
- err = pthread_kill(cpu->thread->thread, SIG_IPI);
- if (err && err != ESRCH) {
- fprintf(stderr, "qemu:%s: %s", __func__, strerror(err));
-+ fprintf(stderr, "CPU #%d:\n", cpu->cpu_index);
-+ cpu_dump_state(cpu, stderr, 0);
-+ backtrace_print();
- exit(1);
- }
- #else /* _WIN32 */
-diff --git a/custom_debug.h b/custom_debug.h
-new file mode 100644
-index 00000000..f029e455
---- /dev/null
-+++ b/custom_debug.h
-@@ -0,0 +1,24 @@
-+#include <execinfo.h>
-+#include <stdio.h>
-+#define BACKTRACE_MAX 128
-+static void backtrace_print(void)
-+{
-+ int nfuncs = 0;
-+ void *buf[BACKTRACE_MAX];
-+ char **symbols;
-+ int i;
-+
-+ nfuncs = backtrace(buf, BACKTRACE_MAX);
-+
-+ symbols = backtrace_symbols(buf, nfuncs);
-+ if (symbols == NULL) {
-+ fprintf(stderr, "backtrace_print failed to get symbols");
-+ return;
-+ }
-+
-+ fprintf(stderr, "Backtrace ...\n");
-+ for (i = 0; i < nfuncs; i++)
-+ fprintf(stderr, "%s\n", symbols[i]);
-+
-+ free(symbols);
-+}
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2019-15890.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2019-15890.patch
deleted file mode 100644
index 1d89431be..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/CVE-2019-15890.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From 4fc0d23e8f6d795c679623d2ed2cbe6a7a17b9c7 Mon Sep 17 00:00:00 2001
-From: Li Zhou <li.zhou@windriver.com>
-Date: Tue, 10 Sep 2019 20:02:15 -0700
-Subject: [PATCH] ip_reass: Fix use after free
-
-Using ip_deq after m_free might read pointers from an allocation reuse.
-
-This would be difficult to exploit, but that is still related with
-CVE-2019-14378 which generates fragmented IP packets that would trigger this
-issue and at least produce a DoS.
-
-Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
-
-Upstream-Status: Backport
-CVE: CVE-2019-15890
-Signed-off-by: Li Zhou <li.zhou@windriver.com>
----
- slirp/src/ip_input.c | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/slirp/src/ip_input.c b/slirp/src/ip_input.c
-index 8c75d914..c07d7d40 100644
---- a/slirp/src/ip_input.c
-+++ b/slirp/src/ip_input.c
-@@ -292,6 +292,7 @@ static struct ip *ip_reass(Slirp *slirp, struct ip *ip, struct ipq *fp)
- */
- while (q != (struct ipasfrag *)&fp->frag_link &&
- ip->ip_off + ip->ip_len > q->ipf_off) {
-+ struct ipasfrag *prev;
- i = (ip->ip_off + ip->ip_len) - q->ipf_off;
- if (i < q->ipf_len) {
- q->ipf_len -= i;
-@@ -299,9 +300,10 @@ static struct ip *ip_reass(Slirp *slirp, struct ip *ip, struct ipq *fp)
- m_adj(dtom(slirp, q), i);
- break;
- }
-+ prev = q;
- q = q->ipf_next;
-- m_free(dtom(slirp, q->ipf_prev));
-- ip_deq(q->ipf_prev);
-+ ip_deq(prev);
-+ m_free(dtom(slirp, prev));
- }
-
- insert:
---
-2.23.0
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-11102.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-11102.patch
deleted file mode 100644
index e8f3e1dbd..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-11102.patch
+++ /dev/null
@@ -1,148 +0,0 @@
-From 8ffb7265af64ec81748335ec8f20e7ab542c3850 Mon Sep 17 00:00:00 2001
-From: Prasad J Pandit <pjp@fedoraproject.org>
-Date: Tue, 24 Mar 2020 22:57:22 +0530
-Subject: [PATCH] net: tulip: check frame size and r/w data length
-
-Tulip network driver while copying tx/rx buffers does not check
-frame size against r/w data length. This may lead to OOB buffer
-access. Add check to avoid it.
-
-Limit iterations over descriptors to avoid potential infinite
-loop issue in tulip_xmit_list_update.
-
-Reported-by: Li Qiang <pangpei.lq@antfin.com>
-Reported-by: Ziming Zhang <ezrakiez@gmail.com>
-Reported-by: Jason Wang <jasowang@redhat.com>
-Tested-by: Li Qiang <liq3ea@gmail.com>
-Reviewed-by: Li Qiang <liq3ea@gmail.com>
-Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
-Signed-off-by: Jason Wang <jasowang@redhat.com>
-
-Upstream-Status: Backport [https://git.qemu.org/?p=qemu.git;a=commit;h=8ffb7265af64ec81748335ec8f20e7ab542c3850]
-CVE: CVE-2020-11102
-Signed-off-by: Chee Yang Lee <chee.yang.lee@intel.com>
----
- hw/net/tulip.c | 36 +++++++++++++++++++++++++++---------
- 1 file changed, 27 insertions(+), 9 deletions(-)
-
-diff --git a/hw/net/tulip.c b/hw/net/tulip.c
-index cfac271..1295f51 100644
---- a/hw/net/tulip.c
-+++ b/hw/net/tulip.c
-@@ -170,6 +170,10 @@ static void tulip_copy_rx_bytes(TULIPState *s, struct tulip_descriptor *desc)
- } else {
- len = s->rx_frame_len;
- }
-+
-+ if (s->rx_frame_len + len > sizeof(s->rx_frame)) {
-+ return;
-+ }
- pci_dma_write(&s->dev, desc->buf_addr1, s->rx_frame +
- (s->rx_frame_size - s->rx_frame_len), len);
- s->rx_frame_len -= len;
-@@ -181,6 +185,10 @@ static void tulip_copy_rx_bytes(TULIPState *s, struct tulip_descriptor *desc)
- } else {
- len = s->rx_frame_len;
- }
-+
-+ if (s->rx_frame_len + len > sizeof(s->rx_frame)) {
-+ return;
-+ }
- pci_dma_write(&s->dev, desc->buf_addr2, s->rx_frame +
- (s->rx_frame_size - s->rx_frame_len), len);
- s->rx_frame_len -= len;
-@@ -227,7 +235,8 @@ static ssize_t tulip_receive(TULIPState *s, const uint8_t *buf, size_t size)
-
- trace_tulip_receive(buf, size);
-
-- if (size < 14 || size > 2048 || s->rx_frame_len || tulip_rx_stopped(s)) {
-+ if (size < 14 || size > sizeof(s->rx_frame) - 4
-+ || s->rx_frame_len || tulip_rx_stopped(s)) {
- return 0;
- }
-
-@@ -275,7 +284,6 @@ static ssize_t tulip_receive_nc(NetClientState *nc,
- return tulip_receive(qemu_get_nic_opaque(nc), buf, size);
- }
-
--
- static NetClientInfo net_tulip_info = {
- .type = NET_CLIENT_DRIVER_NIC,
- .size = sizeof(NICState),
-@@ -558,7 +566,7 @@ static void tulip_tx(TULIPState *s, struct tulip_descriptor *desc)
- if ((s->csr[6] >> CSR6_OM_SHIFT) & CSR6_OM_MASK) {
- /* Internal or external Loopback */
- tulip_receive(s, s->tx_frame, s->tx_frame_len);
-- } else {
-+ } else if (s->tx_frame_len <= sizeof(s->tx_frame)) {
- qemu_send_packet(qemu_get_queue(s->nic),
- s->tx_frame, s->tx_frame_len);
- }
-@@ -570,23 +578,31 @@ static void tulip_tx(TULIPState *s, struct tulip_descriptor *desc)
- }
- }
-
--static void tulip_copy_tx_buffers(TULIPState *s, struct tulip_descriptor *desc)
-+static int tulip_copy_tx_buffers(TULIPState *s, struct tulip_descriptor *desc)
- {
- int len1 = (desc->control >> TDES1_BUF1_SIZE_SHIFT) & TDES1_BUF1_SIZE_MASK;
- int len2 = (desc->control >> TDES1_BUF2_SIZE_SHIFT) & TDES1_BUF2_SIZE_MASK;
-
-+ if (s->tx_frame_len + len1 > sizeof(s->tx_frame)) {
-+ return -1;
-+ }
- if (len1) {
- pci_dma_read(&s->dev, desc->buf_addr1,
- s->tx_frame + s->tx_frame_len, len1);
- s->tx_frame_len += len1;
- }
-
-+ if (s->tx_frame_len + len2 > sizeof(s->tx_frame)) {
-+ return -1;
-+ }
- if (len2) {
- pci_dma_read(&s->dev, desc->buf_addr2,
- s->tx_frame + s->tx_frame_len, len2);
- s->tx_frame_len += len2;
- }
- desc->status = (len1 + len2) ? 0 : 0x7fffffff;
-+
-+ return 0;
- }
-
- static void tulip_setup_filter_addr(TULIPState *s, uint8_t *buf, int n)
-@@ -651,13 +667,15 @@ static uint32_t tulip_ts(TULIPState *s)
-
- static void tulip_xmit_list_update(TULIPState *s)
- {
-+#define TULIP_DESC_MAX 128
-+ uint8_t i = 0;
- struct tulip_descriptor desc;
-
- if (tulip_ts(s) != CSR5_TS_SUSPENDED) {
- return;
- }
-
-- for (;;) {
-+ for (i = 0; i < TULIP_DESC_MAX; i++) {
- tulip_desc_read(s, s->current_tx_desc, &desc);
- tulip_dump_tx_descriptor(s, &desc);
-
-@@ -675,10 +693,10 @@ static void tulip_xmit_list_update(TULIPState *s)
- s->tx_frame_len = 0;
- }
-
-- tulip_copy_tx_buffers(s, &desc);
--
-- if (desc.control & TDES1_LS) {
-- tulip_tx(s, &desc);
-+ if (!tulip_copy_tx_buffers(s, &desc)) {
-+ if (desc.control & TDES1_LS) {
-+ tulip_tx(s, &desc);
-+ }
- }
- }
- tulip_desc_write(s, s->current_tx_desc, &desc);
---
-1.8.3.1
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-11869.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-11869.patch
deleted file mode 100644
index ca7ffed93..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-11869.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-From ac2071c3791b67fc7af78b8ceb320c01ca1b5df7 Mon Sep 17 00:00:00 2001
-From: BALATON Zoltan <balaton@eik.bme.hu>
-Date: Mon, 6 Apr 2020 22:34:26 +0200
-Subject: [PATCH] ati-vga: Fix checks in ati_2d_blt() to avoid crash
-
-In some corner cases (that never happen during normal operation but a
-malicious guest could program wrong values) pixman functions were
-called with parameters that result in a crash. Fix this and add more
-checks to disallow such cases.
-
-Reported-by: Ziming Zhang <ezrakiez@gmail.com>
-Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
-Message-id: 20200406204029.19559747D5D@zero.eik.bme.hu
-Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-
-Upstream-Status: Backport [https://git.qemu.org/?p=qemu.git;a=commit;h=ac2071c3791b67fc7af78b8ceb320c01ca1b5df7]
-CVE: CVE-2020-11869
-Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
----
- hw/display/ati_2d.c | 37 ++++++++++++++++++++++++++-----------
- 1 file changed, 26 insertions(+), 11 deletions(-)
-
-diff --git a/hw/display/ati_2d.c b/hw/display/ati_2d.c
-index 42e8231..23a8ae0 100644
---- a/hw/display/ati_2d.c
-+++ b/hw/display/ati_2d.c
-@@ -53,12 +53,20 @@ void ati_2d_blt(ATIVGAState *s)
- s->vga.vbe_start_addr, surface_data(ds), surface_stride(ds),
- surface_bits_per_pixel(ds),
- (s->regs.dp_mix & GMC_ROP3_MASK) >> 16);
-- int dst_x = (s->regs.dp_cntl & DST_X_LEFT_TO_RIGHT ?
-- s->regs.dst_x : s->regs.dst_x + 1 - s->regs.dst_width);
-- int dst_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ?
-- s->regs.dst_y : s->regs.dst_y + 1 - s->regs.dst_height);
-+ unsigned dst_x = (s->regs.dp_cntl & DST_X_LEFT_TO_RIGHT ?
-+ s->regs.dst_x : s->regs.dst_x + 1 - s->regs.dst_width);
-+ unsigned dst_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ?
-+ s->regs.dst_y : s->regs.dst_y + 1 - s->regs.dst_height);
- int bpp = ati_bpp_from_datatype(s);
-+ if (!bpp) {
-+ qemu_log_mask(LOG_GUEST_ERROR, "Invalid bpp\n");
-+ return;
-+ }
- int dst_stride = DEFAULT_CNTL ? s->regs.dst_pitch : s->regs.default_pitch;
-+ if (!dst_stride) {
-+ qemu_log_mask(LOG_GUEST_ERROR, "Zero dest pitch\n");
-+ return;
-+ }
- uint8_t *dst_bits = s->vga.vram_ptr + (DEFAULT_CNTL ?
- s->regs.dst_offset : s->regs.default_offset);
-
-@@ -82,12 +90,16 @@ void ati_2d_blt(ATIVGAState *s)
- switch (s->regs.dp_mix & GMC_ROP3_MASK) {
- case ROP3_SRCCOPY:
- {
-- int src_x = (s->regs.dp_cntl & DST_X_LEFT_TO_RIGHT ?
-- s->regs.src_x : s->regs.src_x + 1 - s->regs.dst_width);
-- int src_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ?
-- s->regs.src_y : s->regs.src_y + 1 - s->regs.dst_height);
-+ unsigned src_x = (s->regs.dp_cntl & DST_X_LEFT_TO_RIGHT ?
-+ s->regs.src_x : s->regs.src_x + 1 - s->regs.dst_width);
-+ unsigned src_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ?
-+ s->regs.src_y : s->regs.src_y + 1 - s->regs.dst_height);
- int src_stride = DEFAULT_CNTL ?
- s->regs.src_pitch : s->regs.default_pitch;
-+ if (!src_stride) {
-+ qemu_log_mask(LOG_GUEST_ERROR, "Zero source pitch\n");
-+ return;
-+ }
- uint8_t *src_bits = s->vga.vram_ptr + (DEFAULT_CNTL ?
- s->regs.src_offset : s->regs.default_offset);
-
-@@ -137,8 +149,10 @@ void ati_2d_blt(ATIVGAState *s)
- dst_y * surface_stride(ds),
- s->regs.dst_height * surface_stride(ds));
- }
-- s->regs.dst_x += s->regs.dst_width;
-- s->regs.dst_y += s->regs.dst_height;
-+ s->regs.dst_x = (s->regs.dp_cntl & DST_X_LEFT_TO_RIGHT ?
-+ dst_x + s->regs.dst_width : dst_x);
-+ s->regs.dst_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ?
-+ dst_y + s->regs.dst_height : dst_y);
- break;
- }
- case ROP3_PATCOPY:
-@@ -179,7 +193,8 @@ void ati_2d_blt(ATIVGAState *s)
- dst_y * surface_stride(ds),
- s->regs.dst_height * surface_stride(ds));
- }
-- s->regs.dst_y += s->regs.dst_height;
-+ s->regs.dst_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ?
-+ dst_y + s->regs.dst_height : dst_y);
- break;
- }
- default:
---
-1.8.3.1
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-1711.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-1711.patch
deleted file mode 100644
index aa7bc8232..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-1711.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 693fd2acdf14dd86c0bf852610f1c2cca80a74dc Mon Sep 17 00:00:00 2001
-From: Felipe Franciosi <felipe@nutanix.com>
-Date: Thu, 23 Jan 2020 12:44:59 +0000
-Subject: [PATCH] iscsi: Cap block count from GET LBA STATUS (CVE-2020-1711)
-
-When querying an iSCSI server for the provisioning status of blocks (via
-GET LBA STATUS), Qemu only validates that the response descriptor zero's
-LBA matches the one requested. Given the SCSI spec allows servers to
-respond with the status of blocks beyond the end of the LUN, Qemu may
-have its heap corrupted by clearing/setting too many bits at the end of
-its allocmap for the LUN.
-
-A malicious guest in control of the iSCSI server could carefully program
-Qemu's heap (by selectively setting the bitmap) and then smash it.
-
-This limits the number of bits that iscsi_co_block_status() will try to
-update in the allocmap so it can't overflow the bitmap.
-
-Upstream-Status: Backport [https://git.qemu.org/?p=qemu.git;a=patch;h=693fd2acdf14dd86c0bf852610f1c2cca80a74dc]
-CVE: CVE-2020-1711
-
-Fixes: CVE-2020-1711
-Cc: qemu-stable@nongnu.org
-Signed-off-by: Felipe Franciosi <felipe@nutanix.com>
-Signed-off-by: Peter Turschmid <peter.turschm@nutanix.com>
-Signed-off-by: Raphael Norwitz <raphael.norwitz@nutanix.com>
-Signed-off-by: Kevin Wolf <kwolf@redhat.com>
-Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
----
- block/iscsi.c | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/block/iscsi.c b/block/iscsi.c
-index 2aea7e3..cbd5729 100644
---- a/block/iscsi.c
-+++ b/block/iscsi.c
-@@ -701,7 +701,7 @@ static int coroutine_fn iscsi_co_block_status(BlockDriverState *bs,
- struct scsi_get_lba_status *lbas = NULL;
- struct scsi_lba_status_descriptor *lbasd = NULL;
- struct IscsiTask iTask;
-- uint64_t lba;
-+ uint64_t lba, max_bytes;
- int ret;
-
- iscsi_co_init_iscsitask(iscsilun, &iTask);
-@@ -721,6 +721,7 @@ static int coroutine_fn iscsi_co_block_status(BlockDriverState *bs,
- }
-
- lba = offset / iscsilun->block_size;
-+ max_bytes = (iscsilun->num_blocks - lba) * iscsilun->block_size;
-
- qemu_mutex_lock(&iscsilun->mutex);
- retry:
-@@ -764,7 +765,7 @@ retry:
- goto out_unlock;
- }
-
-- *pnum = (int64_t) lbasd->num_blocks * iscsilun->block_size;
-+ *pnum = MIN((int64_t) lbasd->num_blocks * iscsilun->block_size, max_bytes);
-
- if (lbasd->provisioning == SCSI_PROVISIONING_TYPE_DEALLOCATED ||
- lbasd->provisioning == SCSI_PROVISIONING_TYPE_ANCHORED) {
---
-1.8.3.1
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-7039-1.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-7039-1.patch
deleted file mode 100644
index df6bca6db..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-7039-1.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From b2663d527a1992ba98c0266458b21ada3b9d0d2e Mon Sep 17 00:00:00 2001
-From: Changqing Li <changqing.li@windriver.com>
-Date: Thu, 27 Feb 2020 12:07:35 +0800
-Subject: [PATCH] tcp_emu: Fix oob access
-
-The main loop only checks for one available byte, while we sometimes
-need two bytes.
-
-CVE: CVE-2020-7039
-Upstream-Status: Backport
-[https://gitlab.freedesktop.org/slirp/libslirp/commit/2655fffed7a9e765bcb4701dd876e9dab975f289]
-
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
----
- slirp/src/tcp_subr.c | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/slirp/src/tcp_subr.c b/slirp/src/tcp_subr.c
-index d6dd133..4bea2d4 100644
---- a/slirp/src/tcp_subr.c
-+++ b/slirp/src/tcp_subr.c
-@@ -886,6 +886,8 @@ int tcp_emu(struct socket *so, struct mbuf *m)
- break;
-
- case 5:
-+ if (bptr == m->m_data + m->m_len - 1)
-+ return 1; /* We need two bytes */
- /*
- * The difference between versions 1.0 and
- * 2.0 is here. For future versions of
-@@ -901,6 +903,10 @@ int tcp_emu(struct socket *so, struct mbuf *m)
- /* This is the field containing the port
- * number that RA-player is listening to.
- */
-+
-+ if (bptr == m->m_data + m->m_len - 1)
-+ return 1; /* We need two bytes */
-+
- lport = (((uint8_t *)bptr)[0] << 8) + ((uint8_t *)bptr)[1];
- if (lport < 6970)
- lport += 256; /* don't know why */
---
-2.7.4
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-7039-2.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-7039-2.patch
deleted file mode 100644
index 4a00fa2af..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-7039-2.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From 8f67e76e4148e37f3d8d2bcbdee7417fdedb7669 Mon Sep 17 00:00:00 2001
-From: Changqing Li <changqing.li@windriver.com>
-Date: Thu, 27 Feb 2020 12:10:34 +0800
-Subject: [PATCH] slirp: use correct size while emulating commands
-
-While emulating services in tcp_emu(), it uses 'mbuf' size
-'m->m_size' to write commands via snprintf(3). Use M_FREEROOM(m)
-size to avoid possible OOB access.
-Signed-off-by: default avatarPrasad J Pandit <pjp@fedoraproject.org>
-Signed-off-by: Samuel Thibault's avatarSamuel Thibault
-<samuel.thibault@ens-lyon.org>
-Message-Id: <20200109094228.79764-3-ppandit@redhat.com>
-
-CVE: CVE-2020-7039
-Upstream-Status: Backport
-[https://gitlab.freedesktop.org/slirp/libslirp/commit/82ebe9c370a0e2970fb5695aa19aa5214a6a1c80]
-
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
----
- slirp/src/tcp_subr.c | 9 ++++-----
- 1 file changed, 4 insertions(+), 5 deletions(-)
-
-diff --git a/slirp/src/tcp_subr.c b/slirp/src/tcp_subr.c
-index 4bea2d4..e8ed4ef 100644
---- a/slirp/src/tcp_subr.c
-+++ b/slirp/src/tcp_subr.c
-@@ -696,7 +696,7 @@ int tcp_emu(struct socket *so, struct mbuf *m)
- n4 = (laddr & 0xff);
-
- m->m_len = bptr - m->m_data; /* Adjust length */
-- m->m_len += snprintf(bptr, m->m_size - m->m_len,
-+ m->m_len += snprintf(bptr, M_FREEROOM(m),
- "ORT %d,%d,%d,%d,%d,%d\r\n%s", n1, n2, n3, n4,
- n5, n6, x == 7 ? buff : "");
- return 1;
-@@ -731,8 +731,7 @@ int tcp_emu(struct socket *so, struct mbuf *m)
- n4 = (laddr & 0xff);
-
- m->m_len = bptr - m->m_data; /* Adjust length */
-- m->m_len +=
-- snprintf(bptr, m->m_size - m->m_len,
-+ m->m_len += snprintf(bptr, M_FREEROOM(m),
- "27 Entering Passive Mode (%d,%d,%d,%d,%d,%d)\r\n%s",
- n1, n2, n3, n4, n5, n6, x == 7 ? buff : "");
-
-@@ -758,8 +757,8 @@ int tcp_emu(struct socket *so, struct mbuf *m)
- if (m->m_data[m->m_len - 1] == '\0' && lport != 0 &&
- (so = tcp_listen(slirp, INADDR_ANY, 0, so->so_laddr.s_addr,
- htons(lport), SS_FACCEPTONCE)) != NULL)
-- m->m_len =
-- snprintf(m->m_data, m->m_size, "%d", ntohs(so->so_fport)) + 1;
-+ m->m_len = snprintf(m->m_data, M_ROOM(m),
-+ "%d", ntohs(so->so_fport)) + 1;
- return 1;
-
- case EMU_IRC:
---
-2.7.4
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-7039-3.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-7039-3.patch
deleted file mode 100644
index 70ce480d8..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-7039-3.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 0b03959b72036afce151783720d9e54988cf76ef Mon Sep 17 00:00:00 2001
-From: Changqing Li <changqing.li@windriver.com>
-Date: Thu, 27 Feb 2020 12:15:04 +0800
-Subject: [PATCH] slirp: use correct size while emulating IRC commands
-
-While emulating IRC DCC commands, tcp_emu() uses 'mbuf' size
-'m->m_size' to write DCC commands via snprintf(3). This may
-lead to OOB write access, because 'bptr' points somewhere in
-the middle of 'mbuf' buffer, not at the start. Use M_FREEROOM(m)
-size to avoid OOB access.
-Reported-by: default avatarVishnu Dev TJ <vishnudevtj@gmail.com>
-Signed-off-by: default avatarPrasad J Pandit <pjp@fedoraproject.org>
-Reviewed-by: Samuel Thibault's avatarSamuel Thibault
-<samuel.thibault@ens-lyon.org>
-Message-Id: <20200109094228.79764-2-ppandit@redhat.com>
-
-CVE: CVE-2020-7039
-Upstream-Status: Backport
-[https://gitlab.freedesktop.org/slirp/libslirp/commit/ce131029d6d4a405cb7d3ac6716d03e58fb4a5d9]
-
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
----
- slirp/src/tcp_subr.c | 11 ++++++-----
- 1 file changed, 6 insertions(+), 5 deletions(-)
-
-diff --git a/slirp/src/tcp_subr.c b/slirp/src/tcp_subr.c
-index e8ed4ef..3a4a8ee 100644
---- a/slirp/src/tcp_subr.c
-+++ b/slirp/src/tcp_subr.c
-@@ -777,7 +777,8 @@ int tcp_emu(struct socket *so, struct mbuf *m)
- return 1;
- }
- m->m_len = bptr - m->m_data; /* Adjust length */
-- m->m_len += snprintf(bptr, m->m_size, "DCC CHAT chat %lu %u%c\n",
-+ m->m_len += snprintf(bptr, M_FREEROOM(m),
-+ "DCC CHAT chat %lu %u%c\n",
- (unsigned long)ntohl(so->so_faddr.s_addr),
- ntohs(so->so_fport), 1);
- } else if (sscanf(bptr, "DCC SEND %256s %u %u %u", buff, &laddr, &lport,
-@@ -787,8 +788,8 @@ int tcp_emu(struct socket *so, struct mbuf *m)
- return 1;
- }
- m->m_len = bptr - m->m_data; /* Adjust length */
-- m->m_len +=
-- snprintf(bptr, m->m_size, "DCC SEND %s %lu %u %u%c\n", buff,
-+ m->m_len += snprintf(bptr, M_FREEROOM(m),
-+ "DCC SEND %s %lu %u %u%c\n", buff,
- (unsigned long)ntohl(so->so_faddr.s_addr),
- ntohs(so->so_fport), n1, 1);
- } else if (sscanf(bptr, "DCC MOVE %256s %u %u %u", buff, &laddr, &lport,
-@@ -798,8 +799,8 @@ int tcp_emu(struct socket *so, struct mbuf *m)
- return 1;
- }
- m->m_len = bptr - m->m_data; /* Adjust length */
-- m->m_len +=
-- snprintf(bptr, m->m_size, "DCC MOVE %s %lu %u %u%c\n", buff,
-+ m->m_len += snprintf(bptr, M_FREEROOM(m),
-+ "DCC MOVE %s %lu %u %u%c\n", buff,
- (unsigned long)ntohl(so->so_faddr.s_addr),
- ntohs(so->so_fport), n1, 1);
- }
---
-2.7.4
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-7211.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-7211.patch
deleted file mode 100644
index 11be4c92e..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-7211.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 14ec36e107a8c9af7d0a80c3571fe39b291ff1d4 Mon Sep 17 00:00:00 2001
-From: Prasad J Pandit <pjp@fedoraproject.org>
-Date: Mon, 13 Jan 2020 17:44:31 +0530
-Subject: [PATCH] slirp: tftp: restrict relative path access
-
-tftp restricts relative or directory path access on Linux systems.
-Apply same restrictions on Windows systems too. It helps to avoid
-directory traversal issue.
-
-Fixes: https://bugs.launchpad.net/qemu/+bug/1812451
-Reported-by: Peter Maydell <peter.maydell@linaro.org>
-Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
-Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
-Message-Id: <20200113121431.156708-1-ppandit@redhat.com>
-
-Upstream-Status: Backport [https://gitlab.freedesktop.org/slirp/libslirp/-/commit/14ec36e107a8c9af7d0a80c3571fe39b291ff1d4.patch]
-CVE: CVE-2020-7211
-Signed-off-by: Chee Yang Lee <chee.yang.lee@intel.com>
-
----
- slirp/src/tftp.c | 9 +++++++--
- 1 file changed, 7 insertions(+), 2 deletions(-)
-
-diff --git a/slirp/src/tftp.c b/slirp/src/tftp.c
-index 093c2e0..e52e71b 100644
---- a/slirp/src/tftp.c
-+++ b/slirp/src/tftp.c
-@@ -344,8 +344,13 @@ static void tftp_handle_rrq(Slirp *slirp, struct sockaddr_storage *srcsas,
- k += 6; /* skipping octet */
-
- /* do sanity checks on the filename */
-- if (!strncmp(req_fname, "../", 3) ||
-- req_fname[strlen(req_fname) - 1] == '/' || strstr(req_fname, "/../")) {
-+ if (
-+#ifdef G_OS_WIN32
-+ strstr(req_fname, "..\\") ||
-+ req_fname[strlen(req_fname) - 1] == '\\' ||
-+#endif
-+ strstr(req_fname, "../") ||
-+ req_fname[strlen(req_fname) - 1] == '/') {
- tftp_send_error(spt, 2, "Access violation", tp);
- return;
- }
---
-2.24.1
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/find_datadir.patch b/poky/meta/recipes-devtools/qemu/qemu/find_datadir.patch
new file mode 100644
index 000000000..9a4c11267
--- /dev/null
+++ b/poky/meta/recipes-devtools/qemu/qemu/find_datadir.patch
@@ -0,0 +1,39 @@
+qemu: search for datadir as in version 4.2
+
+os_find_datadir() was changed after the 4.2 release. We need to check for
+../share/qemu relative to the executable because that is where the runqemu
+configuration assumes it will be.
+
+Upstream-Status: Submitted [qemu-devel@nongnu.org]
+
+Signed-off-by: Joe Slater <joe.slater@windriver.com>
+
+
+Index: qemu-5.1.0/os-posix.c
+===================================================================
+--- qemu-5.1.0.orig/os-posix.c
++++ qemu-5.1.0/os-posix.c
+@@ -82,8 +82,9 @@ void os_setup_signal_handling(void)
+
+ /*
+ * Find a likely location for support files using the location of the binary.
++ * Typically, this would be "$bindir/../share/qemu".
+ * When running from the build tree this will be "$bindir/../pc-bios".
+- * Otherwise, this is CONFIG_QEMU_DATADIR.
++ * Otherwise, this is CONFIG_QEMU_DATADIR as constructed by configure.
+ *
+ * The caller must use g_free() to free the returned data when it is
+ * no longer required.
+@@ -96,6 +97,12 @@ char *os_find_datadir(void)
+ exec_dir = qemu_get_exec_dir();
+ g_return_val_if_fail(exec_dir != NULL, NULL);
+
++ dir = g_build_filename(exec_dir, "..", "share", "qemu", NULL);
++ if (g_file_test(dir, G_FILE_TEST_IS_DIR)) {
++ return g_steal_pointer(&dir);
++ }
++ g_free(dir); /* no autofree this time */
++
+ dir = g_build_filename(exec_dir, "..", "pc-bios", NULL);
+ if (g_file_test(dir, G_FILE_TEST_IS_DIR)) {
+ return g_steal_pointer(&dir);
diff --git a/poky/meta/recipes-devtools/qemu/qemu/usb-fix-setup_len-init.patch b/poky/meta/recipes-devtools/qemu/qemu/usb-fix-setup_len-init.patch
new file mode 100644
index 000000000..92801da46
--- /dev/null
+++ b/poky/meta/recipes-devtools/qemu/qemu/usb-fix-setup_len-init.patch
@@ -0,0 +1,89 @@
+CVE: CVE-2020-14364
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+From b946434f2659a182afc17e155be6791ebfb302eb Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel@redhat.com>
+Date: Tue, 25 Aug 2020 07:36:36 +0200
+Subject: [PATCH] usb: fix setup_len init (CVE-2020-14364)
+
+Store calculated setup_len in a local variable, verify it, and only
+write it to the struct (USBDevice->setup_len) in case it passed the
+sanity checks.
+
+This prevents other code (do_token_{in,out} functions specifically)
+from working with invalid USBDevice->setup_len values and overrunning
+the USBDevice->setup_buf[] buffer.
+
+Fixes: CVE-2020-14364
+Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
+Tested-by: Gonglei <arei.gonglei@huawei.com>
+Reviewed-by: Li Qiang <liq3ea@gmail.com>
+Message-id: 20200825053636.29648-1-kraxel@redhat.com
+---
+ hw/usb/core.c | 16 ++++++++++------
+ 1 file changed, 10 insertions(+), 6 deletions(-)
+
+diff --git a/hw/usb/core.c b/hw/usb/core.c
+index 5abd128b6bc..5234dcc73fe 100644
+--- a/hw/usb/core.c
++++ b/hw/usb/core.c
+@@ -129,6 +129,7 @@ void usb_wakeup(USBEndpoint *ep, unsigned int stream)
+ static void do_token_setup(USBDevice *s, USBPacket *p)
+ {
+ int request, value, index;
++ unsigned int setup_len;
+
+ if (p->iov.size != 8) {
+ p->status = USB_RET_STALL;
+@@ -138,14 +139,15 @@ static void do_token_setup(USBDevice *s, USBPacket *p)
+ usb_packet_copy(p, s->setup_buf, p->iov.size);
+ s->setup_index = 0;
+ p->actual_length = 0;
+- s->setup_len = (s->setup_buf[7] << 8) | s->setup_buf[6];
+- if (s->setup_len > sizeof(s->data_buf)) {
++ setup_len = (s->setup_buf[7] << 8) | s->setup_buf[6];
++ if (setup_len > sizeof(s->data_buf)) {
+ fprintf(stderr,
+ "usb_generic_handle_packet: ctrl buffer too small (%d > %zu)\n",
+- s->setup_len, sizeof(s->data_buf));
++ setup_len, sizeof(s->data_buf));
+ p->status = USB_RET_STALL;
+ return;
+ }
++ s->setup_len = setup_len;
+
+ request = (s->setup_buf[0] << 8) | s->setup_buf[1];
+ value = (s->setup_buf[3] << 8) | s->setup_buf[2];
+@@ -259,26 +261,28 @@ static void do_token_out(USBDevice *s, USBPacket *p)
+ static void do_parameter(USBDevice *s, USBPacket *p)
+ {
+ int i, request, value, index;
++ unsigned int setup_len;
+
+ for (i = 0; i < 8; i++) {
+ s->setup_buf[i] = p->parameter >> (i*8);
+ }
+
+ s->setup_state = SETUP_STATE_PARAM;
+- s->setup_len = (s->setup_buf[7] << 8) | s->setup_buf[6];
+ s->setup_index = 0;
+
+ request = (s->setup_buf[0] << 8) | s->setup_buf[1];
+ value = (s->setup_buf[3] << 8) | s->setup_buf[2];
+ index = (s->setup_buf[5] << 8) | s->setup_buf[4];
+
+- if (s->setup_len > sizeof(s->data_buf)) {
++ setup_len = (s->setup_buf[7] << 8) | s->setup_buf[6];
++ if (setup_len > sizeof(s->data_buf)) {
+ fprintf(stderr,
+ "usb_generic_handle_packet: ctrl buffer too small (%d > %zu)\n",
+- s->setup_len, sizeof(s->data_buf));
++ setup_len, sizeof(s->data_buf));
+ p->status = USB_RET_STALL;
+ return;
+ }
++ s->setup_len = setup_len;
+
+ if (p->pid == USB_TOKEN_OUT) {
+ usb_packet_copy(p, s->data_buf, s->setup_len);
diff --git a/poky/meta/recipes-devtools/qemu/qemu_4.2.0.bb b/poky/meta/recipes-devtools/qemu/qemu_5.1.0.bb
index a4018cc44..599ff82fc 100644
--- a/poky/meta/recipes-devtools/qemu/qemu_4.2.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu_5.1.0.bb
@@ -21,8 +21,8 @@ do_install_append_class-nativesdk() {
PACKAGECONFIG ??= " \
fdt sdl kvm \
${@bb.utils.filter('DISTRO_FEATURES', 'alsa xen', d)} \
- ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer glx', '' ,d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer glx', '', d)} \
"
PACKAGECONFIG_class-nativesdk ??= "fdt sdl kvm \
- ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer glx', '' ,d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer glx', '', d)} \
"
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-Bump-up-the-limit-of-signature-header-to-64MB.patch b/poky/meta/recipes-devtools/rpm/files/0001-Bump-up-the-limit-of-signature-header-to-64MB.patch
new file mode 100644
index 000000000..0a19c12a7
--- /dev/null
+++ b/poky/meta/recipes-devtools/rpm/files/0001-Bump-up-the-limit-of-signature-header-to-64MB.patch
@@ -0,0 +1,62 @@
+From e8bf0eba7143abb6e69db82ee747a0c6790dd00a Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Wed, 3 Jun 2020 10:25:24 +0800
+Subject: [PATCH] Bump up the limit of signature header to 64MB
+
+Since commits [Place file signatures into the signature header where they
+belong][1] applied, run `rpm -Kv **.rpm' failed if signature header
+is larger than 64KB. Here are steps:
+
+1) A unsigned rpm package, the size is 227560 bytes
+$ ls -al xz-src-5.2.5-r0.corei7_64.rpm
+-rw-------. 1 mockbuild 1000 227560 Jun 3 09:59
+
+2) Sign the rpm package
+$ rpmsign --addsign ... xz-src-5.2.5-r0.corei7_64.rpm
+
+3) The size of signed rpm is 312208 bytes
+$ ls -al xz-src-5.2.5-r0.corei7_64.rpm
+-rw-------. 1 mockbuild 1000 312208 Jun 3 09:48
+
+4) Run `rpm -Kv' failed with signature hdr data out of range
+$ rpm -Kv xz-src-5.2.5-r0.corei7_64.rpm
+xz-src-5.2.5-r0.corei7_64.rpm:
+error: xz-src-5.2.5-r0.corei7_64.rpm: signature hdr data: BAD, no. of
+bytes(88864) out of range
+
+From 1) and 3), the size of signed rpm package increased
+312208 - 227560 = 84648, so the check of dl_max (64KB,65536)
+is not enough.
+
+As [1] said:
+
+ This also means the signature header can be MUCH bigger than ever
+ before,so bump up the limit (to 64MB, arbitrary something for now)
+
+So [1] missed to multiply by 1024.
+
+[1] https://github.com/rpm-software-management/rpm/commit/f558e886050c4e98f6cdde391df679a411b3f62c
+
+Upstream-Status: Backport [https://github.com/rpm-software-management/rpm/commit/486579912381ede82172dc6d0ff3941a6d0536b5]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ lib/header.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/header.c b/lib/header.c
+index 9ec7ed0..cbf6890 100644
+--- a/lib/header.c
++++ b/lib/header.c
+@@ -1906,7 +1906,7 @@ rpmRC hdrblobRead(FD_t fd, int magic, int exact_size, rpmTagVal regionTag, hdrbl
+
+ if (regionTag == RPMTAG_HEADERSIGNATURES) {
+ il_max = 32;
+- dl_max = 64 * 1024;
++ dl_max = 64 * 1024 * 1024;
+ }
+
+ memset(block, 0, sizeof(block));
+--
+2.25.4
+
diff --git a/poky/meta/recipes-devtools/rpm/files/environment.d-rpm.sh b/poky/meta/recipes-devtools/rpm/files/environment.d-rpm.sh
new file mode 100644
index 000000000..9b669a18d
--- /dev/null
+++ b/poky/meta/recipes-devtools/rpm/files/environment.d-rpm.sh
@@ -0,0 +1 @@
+export RPM_CONFIGDIR="$OECORE_NATIVE_SYSROOT/usr/lib/rpm"
diff --git a/poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb b/poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb
index 8add14246..a1c520555 100644
--- a/poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb
+++ b/poky/meta/recipes-devtools/rpm/rpm_4.15.1.bb
@@ -25,6 +25,7 @@ LICENSE = "GPL-2.0"
LIC_FILES_CHKSUM = "file://COPYING;md5=c0bf017c0fd1920e6158a333acabfd4a"
SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.15.x \
+ file://environment.d-rpm.sh \
file://0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch \
file://0001-Do-not-read-config-files-from-HOME.patch \
file://0001-When-cross-installing-execute-package-scriptlets-wit.patch \
@@ -40,6 +41,7 @@ SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.15.x \
file://0001-rpmplugins.c-call-dlerror-prior-to-dlsym.patch \
file://0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch \
file://0001-lib-transaction.c-fix-file-conflicts-for-MIPS64-N32.patch \
+ file://0001-Bump-up-the-limit-of-signature-header-to-64MB.patch \
"
PE = "1"
@@ -47,7 +49,7 @@ SRCREV = "ab2179452c5be276a6b96c591afded485c7e58c3"
S = "${WORKDIR}/git"
-DEPENDS = "openssl libarchive db file popt xz bzip2 dbus elfutils python3"
+DEPENDS = "openssl db file popt xz bzip2 elfutils python3"
DEPENDS_append_class-native = " file-replacement-native bzip2-replacement-native"
inherit autotools gettext pkgconfig python3native
@@ -60,18 +62,22 @@ EXTRA_OECONF_append = " --without-lua --enable-python --with-crypto=openssl"
EXTRA_OECONF_append_libc-musl = " --disable-nls --disable-openmp"
# --sysconfdir prevents rpm from attempting to access machine-specific configuration in sysroot/etc; we need to have it in rootfs
-#
# --localstatedir prevents rpm from writing its database to native sysroot when building images
-#
-# Disable dbus for native, so that rpm doesn't attempt to inhibit shutdown via session dbus even when plugins support is enabled.
-# Also disable plugins by default for native.
+# Forcibly disable plugins for native/nativesdk, as the inhibit and prioreset
+# plugins both behave badly inside builds.
EXTRA_OECONF_append_class-native = " --sysconfdir=/etc --localstatedir=/var --disable-plugins"
-EXTRA_OECONF_append_class-nativesdk = " --sysconfdir=/etc --localstatedir=/var --disable-plugins"
+EXTRA_OECONF_append_class-nativesdk = " --sysconfdir=/etc --disable-plugins"
BBCLASSEXTEND = "native nativesdk"
-PACKAGECONFIG ??= ""
+PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'inhibit', '', d)}"
+# The inhibit plugin serves no purpose outside of the target
+PACKAGECONFIG_remove_class-native = "inhibit"
+PACKAGECONFIG_remove_class-nativesdk = "inhibit"
+
PACKAGECONFIG[imaevm] = "--with-imaevm,,ima-evm-utils"
+PACKAGECONFIG[inhibit] = "--enable-inhibit-plugin,--disable-inhibit-plugin,dbus"
+PACKAGECONFIG[rpm2archive] = "--with-archive,--without-archive,libarchive"
ASNEEDED = ""
@@ -93,7 +99,7 @@ WRAPPER_TOOLS = " \
do_install_append_class-native() {
for tool in ${WRAPPER_TOOLS}; do
- create_wrapper ${D}$tool \
+ test -x ${D}$tool && create_wrapper ${D}$tool \
RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm \
RPM_ETCCONFIGDIR=${STAGING_DIR_NATIVE} \
MAGIC=${STAGING_DIR_NATIVE}${datadir_native}/misc/magic.mgc \
@@ -103,7 +109,7 @@ do_install_append_class-native() {
do_install_append_class-nativesdk() {
for tool in ${WRAPPER_TOOLS}; do
- create_wrapper ${D}$tool \
+ test -x ${D}$tool && create_wrapper ${D}$tool \
RPM_CONFIGDIR='`dirname $''realpath`'/${@os.path.relpath(d.getVar('libdir'), d.getVar('bindir'))}/rpm \
RPM_ETCCONFIGDIR='$'{RPM_ETCCONFIGDIR-'`dirname $''realpath`'/${@os.path.relpath(d.getVar('sysconfdir'), d.getVar('bindir'))}/..} \
MAGIC='`dirname $''realpath`'/${@os.path.relpath(d.getVar('datadir'), d.getVar('bindir'))}/misc/magic.mgc \
@@ -111,6 +117,9 @@ do_install_append_class-nativesdk() {
done
rm -rf ${D}/var
+
+ mkdir -p ${D}${SDKPATHNATIVE}/environment-setup.d
+ install -m 644 ${WORKDIR}/environment.d-rpm.sh ${D}${SDKPATHNATIVE}/environment-setup.d/rpm.sh
}
# Rpm's make install creates var/tmp which clashes with base-files packaging
@@ -128,6 +137,7 @@ do_install_append () {
FILES_${PN} += "${libdir}/rpm-plugins/*.so \
"
+FILES_${PN}_append_class-nativesdk = " ${SDKPATHNATIVE}/environment-setup.d/rpm.sh"
FILES_${PN}-dev += "${libdir}/rpm-plugins/*.la \
"
diff --git a/poky/meta/recipes-devtools/rsync/files/CVE-2016-9840.patch b/poky/meta/recipes-devtools/rsync/files/CVE-2016-9840.patch
deleted file mode 100644
index 758188779..000000000
--- a/poky/meta/recipes-devtools/rsync/files/CVE-2016-9840.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From 6a043145ca6e9c55184013841a67b2fef87e44c0 Mon Sep 17 00:00:00 2001
-From: Mark Adler <madler@alumni.caltech.edu>
-Date: Wed, 21 Sep 2016 23:35:50 -0700
-Subject: [PATCH] Remove offset pointer optimization in inftrees.c.
-
-inftrees.c was subtracting an offset from a pointer to an array,
-in order to provide a pointer that allowed indexing starting at
-the offset. This is not compliant with the C standard, for which
-the behavior of a pointer decremented before its allocated memory
-is undefined. Per the recommendation of a security audit of the
-zlib code by Trail of Bits and TrustInSoft, in support of the
-Mozilla Foundation, this tiny optimization was removed, in order
-to avoid the possibility of undefined behavior.
-
-CVE: CVE-2016-9840
-Upstream-Status: Backport
-Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
----
- inftrees.c | 18 ++++++++----------
- 1 file changed, 8 insertions(+), 10 deletions(-)
-
-diff --git a/zlib/inftrees.c b/zlib/inftrees.c
-index 22fcd666..0d2670d5 100644
---- a/zlib/inftrees.c
-+++ b/zlib/inftrees.c
-@@ -54,7 +54,7 @@ unsigned short FAR *work;
- code FAR *next; /* next available space in table */
- const unsigned short FAR *base; /* base value table to use */
- const unsigned short FAR *extra; /* extra bits table to use */
-- int end; /* use base and extra for symbol > end */
-+ unsigned match; /* use base and extra for symbol >= match */
- unsigned short count[MAXBITS+1]; /* number of codes of each length */
- unsigned short offs[MAXBITS+1]; /* offsets in table for each length */
- static const unsigned short lbase[31] = { /* Length codes 257..285 base */
-@@ -181,19 +181,17 @@ unsigned short FAR *work;
- switch (type) {
- case CODES:
- base = extra = work; /* dummy value--not used */
-- end = 19;
-+ match = 20;
- break;
- case LENS:
- base = lbase;
-- base -= 257;
- extra = lext;
-- extra -= 257;
-- end = 256;
-+ match = 257;
- break;
- default: /* DISTS */
- base = dbase;
- extra = dext;
-- end = -1;
-+ match = 0;
- }
-
- /* initialize state for loop */
-@@ -216,13 +214,13 @@ unsigned short FAR *work;
- for (;;) {
- /* create table entry */
- here.bits = (unsigned char)(len - drop);
-- if ((int)(work[sym]) < end) {
-+ if (work[sym] + 1 < match) {
- here.op = (unsigned char)0;
- here.val = work[sym];
- }
-- else if ((int)(work[sym]) > end) {
-- here.op = (unsigned char)(extra[work[sym]]);
-- here.val = base[work[sym]];
-+ else if (work[sym] >= match) {
-+ here.op = (unsigned char)(extra[work[sym] - match]);
-+ here.val = base[work[sym] - match];
- }
- else {
- here.op = (unsigned char)(32 + 64); /* end of block */
diff --git a/poky/meta/recipes-devtools/rsync/files/CVE-2016-9841.patch b/poky/meta/recipes-devtools/rsync/files/CVE-2016-9841.patch
deleted file mode 100644
index 3942176de..000000000
--- a/poky/meta/recipes-devtools/rsync/files/CVE-2016-9841.patch
+++ /dev/null
@@ -1,228 +0,0 @@
-From 9aaec95e82117c1cb0f9624264c3618fc380cecb Mon Sep 17 00:00:00 2001
-From: Mark Adler <madler@alumni.caltech.edu>
-Date: Wed, 21 Sep 2016 22:25:21 -0700
-Subject: [PATCH] Use post-increment only in inffast.c.
-
-An old inffast.c optimization turns out to not be optimal anymore
-with modern compilers, and furthermore was not compliant with the
-C standard, for which decrementing a pointer before its allocated
-memory is undefined. Per the recommendation of a security audit of
-the zlib code by Trail of Bits and TrustInSoft, in support of the
-Mozilla Foundation, this "optimization" was removed, in order to
-avoid the possibility of undefined behavior.
-
-CVE: CVE-2016-9841
-Upstream-Status: Backport
-Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
----
- zlib/inffast.c | 81 +++++++++++++++++++++----------------------------------
- 1 file changed, 31 insertions(+), 50 deletions(-)
-
-diff --git a/zlib/inffast.c b/zlib/inffast.c
-index bda59ceb..f0d163db 100644
---- a/zlib/inffast.c
-+++ b/zlib/inffast.c
-@@ -10,25 +10,6 @@
-
- #ifndef ASMINF
-
--/* Allow machine dependent optimization for post-increment or pre-increment.
-- Based on testing to date,
-- Pre-increment preferred for:
-- - PowerPC G3 (Adler)
-- - MIPS R5000 (Randers-Pehrson)
-- Post-increment preferred for:
-- - none
-- No measurable difference:
-- - Pentium III (Anderson)
-- - M68060 (Nikl)
-- */
--#ifdef POSTINC
--# define OFF 0
--# define PUP(a) *(a)++
--#else
--# define OFF 1
--# define PUP(a) *++(a)
--#endif
--
- /*
- Decode literal, length, and distance codes and write out the resulting
- literal and match bytes until either not enough input or output is
-@@ -96,9 +77,9 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
-
- /* copy state to local variables */
- state = (struct inflate_state FAR *)strm->state;
-- in = strm->next_in - OFF;
-+ in = strm->next_in;
- last = in + (strm->avail_in - 5);
-- out = strm->next_out - OFF;
-+ out = strm->next_out;
- beg = out - (start - strm->avail_out);
- end = out + (strm->avail_out - 257);
- #ifdef INFLATE_STRICT
-@@ -119,9 +100,9 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
- input data or output space */
- do {
- if (bits < 15) {
-- hold += (unsigned long)(PUP(in)) << bits;
-+ hold += (unsigned long)(*in++) << bits;
- bits += 8;
-- hold += (unsigned long)(PUP(in)) << bits;
-+ hold += (unsigned long)(*in++) << bits;
- bits += 8;
- }
- here = lcode[hold & lmask];
-@@ -134,14 +115,14 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
- Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ?
- "inflate: literal '%c'\n" :
- "inflate: literal 0x%02x\n", here.val));
-- PUP(out) = (unsigned char)(here.val);
-+ *out++ = (unsigned char)(here.val);
- }
- else if (op & 16) { /* length base */
- len = (unsigned)(here.val);
- op &= 15; /* number of extra bits */
- if (op) {
- if (bits < op) {
-- hold += (unsigned long)(PUP(in)) << bits;
-+ hold += (unsigned long)(*in++) << bits;
- bits += 8;
- }
- len += (unsigned)hold & ((1U << op) - 1);
-@@ -150,9 +131,9 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
- }
- Tracevv((stderr, "inflate: length %u\n", len));
- if (bits < 15) {
-- hold += (unsigned long)(PUP(in)) << bits;
-+ hold += (unsigned long)(*in++) << bits;
- bits += 8;
-- hold += (unsigned long)(PUP(in)) << bits;
-+ hold += (unsigned long)(*in++) << bits;
- bits += 8;
- }
- here = dcode[hold & dmask];
-@@ -165,10 +146,10 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
- dist = (unsigned)(here.val);
- op &= 15; /* number of extra bits */
- if (bits < op) {
-- hold += (unsigned long)(PUP(in)) << bits;
-+ hold += (unsigned long)(*in++) << bits;
- bits += 8;
- if (bits < op) {
-- hold += (unsigned long)(PUP(in)) << bits;
-+ hold += (unsigned long)(*in++) << bits;
- bits += 8;
- }
- }
-@@ -196,30 +177,30 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
- #ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR
- if (len <= op - whave) {
- do {
-- PUP(out) = 0;
-+ *out++ = 0;
- } while (--len);
- continue;
- }
- len -= op - whave;
- do {
-- PUP(out) = 0;
-+ *out++ = 0;
- } while (--op > whave);
- if (op == 0) {
- from = out - dist;
- do {
-- PUP(out) = PUP(from);
-+ *out++ = *from++;
- } while (--len);
- continue;
- }
- #endif
- }
-- from = window - OFF;
-+ from = window;
- if (wnext == 0) { /* very common case */
- from += wsize - op;
- if (op < len) { /* some from window */
- len -= op;
- do {
-- PUP(out) = PUP(from);
-+ *out++ = *from++;
- } while (--op);
- from = out - dist; /* rest from output */
- }
-@@ -230,14 +211,14 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
- if (op < len) { /* some from end of window */
- len -= op;
- do {
-- PUP(out) = PUP(from);
-+ *out++ = *from++;
- } while (--op);
-- from = window - OFF;
-+ from = window;
- if (wnext < len) { /* some from start of window */
- op = wnext;
- len -= op;
- do {
-- PUP(out) = PUP(from);
-+ *out++ = *from++;
- } while (--op);
- from = out - dist; /* rest from output */
- }
-@@ -248,35 +229,35 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
- if (op < len) { /* some from window */
- len -= op;
- do {
-- PUP(out) = PUP(from);
-+ *out++ = *from++;
- } while (--op);
- from = out - dist; /* rest from output */
- }
- }
- while (len > 2) {
-- PUP(out) = PUP(from);
-- PUP(out) = PUP(from);
-- PUP(out) = PUP(from);
-+ *out++ = *from++;
-+ *out++ = *from++;
-+ *out++ = *from++;
- len -= 3;
- }
- if (len) {
-- PUP(out) = PUP(from);
-+ *out++ = *from++;
- if (len > 1)
-- PUP(out) = PUP(from);
-+ *out++ = *from++;
- }
- }
- else {
- from = out - dist; /* copy direct from output */
- do { /* minimum length is three */
-- PUP(out) = PUP(from);
-- PUP(out) = PUP(from);
-- PUP(out) = PUP(from);
-+ *out++ = *from++;
-+ *out++ = *from++;
-+ *out++ = *from++;
- len -= 3;
- } while (len > 2);
- if (len) {
-- PUP(out) = PUP(from);
-+ *out++ = *from++;
- if (len > 1)
-- PUP(out) = PUP(from);
-+ *out++ = *from++;
- }
- }
- }
-@@ -313,8 +294,8 @@ unsigned start; /* inflate()'s starting value for strm->avail_out */
- hold &= (1U << bits) - 1;
-
- /* update state and return */
-- strm->next_in = in + OFF;
-- strm->next_out = out + OFF;
-+ strm->next_in = in;
-+ strm->next_out = out;
- strm->avail_in = (unsigned)(in < last ? 5 + (last - in) : 5 - (in - last));
- strm->avail_out = (unsigned)(out < end ?
- 257 + (end - out) : 257 - (out - end));
diff --git a/poky/meta/recipes-devtools/rsync/files/CVE-2016-9842.patch b/poky/meta/recipes-devtools/rsync/files/CVE-2016-9842.patch
deleted file mode 100644
index 810d8a3fd..000000000
--- a/poky/meta/recipes-devtools/rsync/files/CVE-2016-9842.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From e54e1299404101a5a9d0cf5e45512b543967f958 Mon Sep 17 00:00:00 2001
-From: Mark Adler <madler@alumni.caltech.edu>
-Date: Sat, 5 Sep 2015 17:45:55 -0700
-Subject: [PATCH] Avoid shifts of negative values inflateMark().
-
-The C standard says that bit shifts of negative integers is
-undefined. This casts to unsigned values to assure a known
-result.
-
-CVE: CVE-2016-9842
-Upstream-Status: Backport
-Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
----
- inflate.c | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/zlib/inflate.c b/zlib/inflate.c
-index 2889e3a0..a7184167 100644
---- a/zlib/inflate.c
-+++ b/zlib/inflate.c
-@@ -1506,9 +1506,10 @@ z_streamp strm;
- {
- struct inflate_state FAR *state;
-
-- if (strm == Z_NULL || strm->state == Z_NULL) return -1L << 16;
-+ if (strm == Z_NULL || strm->state == Z_NULL)
-+ return (long)(((unsigned long)0 - 1) << 16);
- state = (struct inflate_state FAR *)strm->state;
-- return ((long)(state->back) << 16) +
-+ return (long)(((unsigned long)((long)state->back)) << 16) +
- (state->mode == COPY ? state->length :
- (state->mode == MATCH ? state->was - state->length : 0));
- }
diff --git a/poky/meta/recipes-devtools/rsync/files/CVE-2016-9843.patch b/poky/meta/recipes-devtools/rsync/files/CVE-2016-9843.patch
deleted file mode 100644
index ea2e42fe7..000000000
--- a/poky/meta/recipes-devtools/rsync/files/CVE-2016-9843.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From d1d577490c15a0c6862473d7576352a9f18ef811 Mon Sep 17 00:00:00 2001
-From: Mark Adler <madler@alumni.caltech.edu>
-Date: Wed, 28 Sep 2016 20:20:25 -0700
-Subject: [PATCH] Avoid pre-decrement of pointer in big-endian CRC calculation.
-
-There was a small optimization for PowerPCs to pre-increment a
-pointer when accessing a word, instead of post-incrementing. This
-required prefacing the loop with a decrement of the pointer,
-possibly pointing before the object passed. This is not compliant
-with the C standard, for which decrementing a pointer before its
-allocated memory is undefined. When tested on a modern PowerPC
-with a modern compiler, the optimization no longer has any effect.
-Due to all that, and per the recommendation of a security audit of
-the zlib code by Trail of Bits and TrustInSoft, in support of the
-Mozilla Foundation, this "optimization" was removed, in order to
-avoid the possibility of undefined behavior.
-
-CVE: CVE-2016-9843
-Upstream-Status: Backport
-Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
----
- crc32.c | 4 +---
- 1 file changed, 1 insertion(+), 3 deletions(-)
-
-diff --git a/zlib/crc32.c b/zlib/crc32.c
-index 979a7190..05733f4e 100644
---- a/zlib/crc32.c
-+++ b/zlib/crc32.c
-@@ -278,7 +278,7 @@ local unsigned long crc32_little(crc, buf, len)
- }
-
- /* ========================================================================= */
--#define DOBIG4 c ^= *++buf4; \
-+#define DOBIG4 c ^= *buf4++; \
- c = crc_table[4][c & 0xff] ^ crc_table[5][(c >> 8) & 0xff] ^ \
- crc_table[6][(c >> 16) & 0xff] ^ crc_table[7][c >> 24]
- #define DOBIG32 DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4
-@@ -300,7 +300,6 @@ local unsigned long crc32_big(crc, buf, len)
- }
-
- buf4 = (const z_crc_t FAR *)(const void FAR *)buf;
-- buf4--;
- while (len >= 32) {
- DOBIG32;
- len -= 32;
-@@ -309,7 +308,6 @@ local unsigned long crc32_big(crc, buf, len)
- DOBIG4;
- len -= 4;
- }
-- buf4++;
- buf = (const unsigned char FAR *)buf4;
-
- if (len) do {
diff --git a/poky/meta/recipes-devtools/rsync/files/makefile-no-rebuild.patch b/poky/meta/recipes-devtools/rsync/files/makefile-no-rebuild.patch
index 3d27fe72c..4ba766528 100644
--- a/poky/meta/recipes-devtools/rsync/files/makefile-no-rebuild.patch
+++ b/poky/meta/recipes-devtools/rsync/files/makefile-no-rebuild.patch
@@ -1,20 +1,26 @@
+From 1f29584e57f5fda09970c66f3b94f4720e09c1bb Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@intel.com>
+Date: Tue, 12 Apr 2016 15:51:54 +0100
+Subject: [PATCH] rsync: remove upstream's rebuild logic
+
Remove the Makefile rules to reinvoke autoconf, they're not out-of-tree safe and
generally overcomplicated, and we ensure that autoreconf is invoked if required.
Upstream-Status: Inappropriate
Signed-off-by: Ross Burton <ross.burton@intel.com>
+---
+ Makefile.in | 54 -----------------------------------------------------
+ 1 file changed, 54 deletions(-)
+
diff --git a/Makefile.in b/Makefile.in
-index 151247d..8f3fdb6 100644
+index 672fcc4..c12d8d4 100644
--- a/Makefile.in
+++ b/Makefile.in
-@@ -141,58 +141,6 @@ gen: conf proto.h man
+@@ -168,60 +168,6 @@ gen: conf proto.h man
gensend: gen
- rsync -aivzc $(GENFILES) $${SAMBA_HOST-samba.org}:/home/ftp/pub/rsync/generated-files/
+ rsync -aic $(GENFILES) $${SAMBA_HOST-samba.org}:/home/ftp/pub/rsync/generated-files/
--conf:
-- cd $(srcdir) && $(MAKE) -f prepare-source.mak conf
--
-aclocal.m4: $(srcdir)/m4/*.m4
- aclocal -I $(srcdir)/m4
-
@@ -45,10 +51,15 @@ index 151247d..8f3fdb6 100644
- fi \
- fi
-
+-.PHONY: reconfigure
-reconfigure: configure.sh
- ./config.status --recheck
- ./config.status
-
+-.PHONY: restatus
+-restatus:
+- ./config.status
+-
-Makefile: Makefile.in config.status configure.sh config.h.in
- @if test -f Makefile; then cp -p Makefile Makefile.old; else touch Makefile.old; fi
- @./config.status
@@ -64,6 +75,6 @@ index 151247d..8f3fdb6 100644
- fi \
- fi
-
- rsync-ssl: $(srcdir)/rsync-ssl.in Makefile
- sed 's;\@bindir\@;$(bindir);g' <$(srcdir)/rsync-ssl.in >rsync-ssl
- @chmod +x rsync-ssl
+ stunnel-rsyncd.conf: $(srcdir)/stunnel-rsyncd.conf.in Makefile
+ sed 's;\@bindir\@;$(bindir);g' <$(srcdir)/stunnel-rsyncd.conf.in >stunnel-rsyncd.conf
+
diff --git a/poky/meta/recipes-devtools/rsync/rsync_3.1.3.bb b/poky/meta/recipes-devtools/rsync/rsync_3.2.3.bb
index 152ff02a2..375efa0de 100644
--- a/poky/meta/recipes-devtools/rsync/rsync_3.1.3.bb
+++ b/poky/meta/recipes-devtools/rsync/rsync_3.2.3.bb
@@ -3,27 +3,23 @@ HOMEPAGE = "http://rsync.samba.org/"
BUGTRACKER = "http://rsync.samba.org/bugzilla.html"
SECTION = "console/network"
# GPLv2+ (<< 3.0.0), GPLv3+ (>= 3.0.0)
+# Includes opennsh and xxhash dynamic link exception
LICENSE = "GPLv3+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+LIC_FILES_CHKSUM = "file://COPYING;md5=9e5a4f9b3a253d51520617aa54f8eb26"
DEPENDS = "popt"
SRC_URI = "https://download.samba.org/pub/${BPN}/src/${BP}.tar.gz \
file://rsyncd.conf \
file://makefile-no-rebuild.patch \
- file://CVE-2016-9840.patch \
- file://CVE-2016-9841.patch \
- file://CVE-2016-9842.patch \
- file://CVE-2016-9843.patch \
-"
+ "
-SRC_URI[md5sum] = "1581a588fde9d89f6bc6201e8129afaf"
-SRC_URI[sha256sum] = "55cc554efec5fdaad70de921cd5a5eeb6c29a95524c715f3bbf849235b0800c0"
+SRC_URI[sha256sum] = "becc3c504ceea499f4167a260040ccf4d9f2ef9499ad5683c179a697146ce50e"
# -16548 required for v3.1.3pre1. Already in v3.1.3.
CVE_CHECK_WHITELIST += " CVE-2017-16548 "
-inherit autotools
+inherit autotools-brokensep
PACKAGECONFIG ??= "acl attr \
${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
@@ -32,12 +28,17 @@ PACKAGECONFIG ??= "acl attr \
PACKAGECONFIG[acl] = "--enable-acl-support,--disable-acl-support,acl,"
PACKAGECONFIG[attr] = "--enable-xattr-support,--disable-xattr-support,attr,"
PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
+PACKAGECONFIG[lz4] = "--enable-lz4,--disable-lz4,lz4"
+PACKAGECONFIG[openssl] = "--enable-openssl,--disable-openssl,openssl"
+PACKAGECONFIG[xxhash] = "--enable-xxhash,--disable-xxhash,xxhash"
+PACKAGECONFIG[zstd] = "--enable-zstd,--disable-zstd,zstd"
# By default, if crosscompiling, rsync disables a number of
# capabilities, hardlinking symlinks and special files (i.e. devices)
CACHED_CONFIGUREVARS += "rsync_cv_can_hardlink_special=yes rsync_cv_can_hardlink_symlink=yes"
EXTRA_OEMAKE = 'STRIP=""'
+EXTRA_OECONF = "--disable-simd --disable-md2man --disable-asm"
# rsync 3.0 uses configure.sh instead of configure, and
# makefile checks the existence of configure.sh
diff --git a/poky/meta/recipes-devtools/strace/strace_5.5.bb b/poky/meta/recipes-devtools/strace/strace_5.8.bb
index ae552da02..70d5940f6 100644
--- a/poky/meta/recipes-devtools/strace/strace_5.5.bb
+++ b/poky/meta/recipes-devtools/strace/strace_5.8.bb
@@ -15,8 +15,7 @@ SRC_URI = "https://strace.io/files/${PV}/strace-${PV}.tar.xz \
file://uintptr_t.patch \
file://0001-strace-fix-reproducibilty-issues.patch \
"
-SRC_URI[md5sum] = "dbce2e84632b39a4ed86b9fc60447af9"
-SRC_URI[sha256sum] = "9f58958c8e59ea62293d907d10572e352b582bd7948ed21aa28ebb47e5bf30ff"
+SRC_URI[sha256sum] = "df4a669f7fff9cc302784085bd4b72fab216a426a3f72c892b28a537b71e7aa9"
inherit autotools ptest
@@ -27,7 +26,7 @@ PACKAGECONFIG_class-target ??= "\
PACKAGECONFIG[bluez] = "ac_cv_header_bluetooth_bluetooth_h=yes,ac_cv_header_bluetooth_bluetooth_h=no,bluez5"
PACKAGECONFIG[libunwind] = "--with-libunwind,--without-libunwind,libunwind"
-EXTRA_OECONF += "--enable-mpers=no"
+EXTRA_OECONF += "--enable-mpers=no --disable-gcc-Werror"
CFLAGS_append_libc-musl = " -Dsigcontext_struct=sigcontext"
diff --git a/poky/meta/recipes-devtools/subversion/subversion_1.13.0.bb b/poky/meta/recipes-devtools/subversion/subversion_1.14.0.bb
index 6879f1249..452a025fc 100644
--- a/poky/meta/recipes-devtools/subversion/subversion_1.13.0.bb
+++ b/poky/meta/recipes-devtools/subversion/subversion_1.14.0.bb
@@ -13,10 +13,9 @@ SRC_URI = "${APACHE_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \
file://serfmacro.patch \
"
-SRC_URI[md5sum] = "3004b4dae18bf45a0b6ea4ef8820064d"
-SRC_URI[sha256sum] = "bc50ce2c3faa7b1ae9103c432017df98dfd989c4239f9f8270bb3a314ed9e5bd"
+SRC_URI[sha256sum] = "6ba8e218f9f97a83a799e58a3c6da1221d034b18d9d8cbbcb6ec52ab11722102"
-inherit autotools pkgconfig gettext
+inherit autotools pkgconfig gettext python3native
CVE_PRODUCT = "apache:subversion"
@@ -60,4 +59,4 @@ PARALLEL_MAKEINST = ""
RDEPENDS_${PN} = "serf"
-BBCLASSEXTEND = "native"
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/vala/vala/0001-git-version-gen-don-t-append-dirty-if-we-re-not-in-g.patch b/poky/meta/recipes-devtools/vala/vala/0001-git-version-gen-don-t-append-dirty-if-we-re-not-in-g.patch
deleted file mode 100644
index ac9dc8c83..000000000
--- a/poky/meta/recipes-devtools/vala/vala/0001-git-version-gen-don-t-append-dirty-if-we-re-not-in-g.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From 2460d7b79f7e90dcfeebde5e9c53d9b6798a1f3c Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa@gmail.com>
-Date: Tue, 21 Feb 2012 17:12:50 +0100
-Subject: [PATCH] git-version-gen: don't append -dirty if we're not in git
- repo
-
-* for example if we have some dirty directory and we unpack clean vala tarball in it, then it will append -dirty
-
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
-
-Upstream-Status: Inappropriate [OE-Specific]
----
- build-aux/git-version-gen | 25 ++++++++++++++-----------
- 1 files changed, 14 insertions(+), 11 deletions(-)
-
-diff --git a/build-aux/git-version-gen b/build-aux/git-version-gen
-index 0fa6faa..1d1f9d2 100755
---- a/build-aux/git-version-gen
-+++ b/build-aux/git-version-gen
-@@ -126,18 +126,21 @@ fi
-
- v=`echo "$v" |sed 's/^v//'`
-
--# Don't declare a version "dirty" merely because a time stamp has changed.
--git status > /dev/null 2>&1
-+if test -d .git
-+then
-+ # Don't declare a version "dirty" merely because a time stamp has changed.
-+ git status > /dev/null 2>&1
-
--dirty=`sh -c 'git diff-index --name-only HEAD' 2>/dev/null` || dirty=
--case "$dirty" in
-- '') ;;
-- *) # Append the suffix only if there isn't one already.
-- case $v in
-- *-dirty) ;;
-- *) v="$v-dirty" ;;
-- esac ;;
--esac
-+ dirty=`sh -c 'git diff-index --name-only HEAD' 2>/dev/null` || dirty=
-+ case "$dirty" in
-+ '') ;;
-+ *) # Append the suffix only if there isn't one already.
-+ case $v in
-+ *-dirty) ;;
-+ *) v="$v-dirty" ;;
-+ esac ;;
-+ esac
-+fi
-
- # Omit the trailing newline, so that m4_esyscmd can use the result directly.
- echo "$v" | tr -d '\012'
---
-1.7.8.4
-
diff --git a/poky/meta/recipes-devtools/vala/vala_0.46.6.bb b/poky/meta/recipes-devtools/vala/vala_0.46.6.bb
deleted file mode 100644
index 66f620384..000000000
--- a/poky/meta/recipes-devtools/vala/vala_0.46.6.bb
+++ /dev/null
@@ -1,8 +0,0 @@
-require ${BPN}.inc
-
-SRC_URI += "file://0001-git-version-gen-don-t-append-dirty-if-we-re-not-in-g.patch \
- file://0001-vapigen.m4-use-PKG_CONFIG_SYSROOT_DIR.patch \
- "
-
-SRC_URI[md5sum] = "d9af125648505503b139ebc2d2c9eee5"
-SRC_URI[sha256sum] = "ef31649932872f094971d46453b21c60a41661670f98afa334062425b4aec47a"
diff --git a/poky/meta/recipes-devtools/vala/vala_0.48.9.bb b/poky/meta/recipes-devtools/vala/vala_0.48.9.bb
new file mode 100644
index 000000000..09bfcd647
--- /dev/null
+++ b/poky/meta/recipes-devtools/vala/vala_0.48.9.bb
@@ -0,0 +1,5 @@
+require ${BPN}.inc
+
+SRC_URI += " file://0001-vapigen.m4-use-PKG_CONFIG_SYSROOT_DIR.patch"
+
+SRC_URI[sha256sum] = "9cea16d3bb3daddbfe0556b99fbfa08146230db7651e1e674cd08b4df5cefea9"
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch
deleted file mode 100644
index 9afa7f6a5..000000000
--- a/poky/meta/recipes-devtools/valgrind/valgrind/0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch
+++ /dev/null
@@ -1,144 +0,0 @@
-From abbc0761fa0349d49b10dc8c0f10af6bc0578c40 Mon Sep 17 00:00:00 2001
-From: Mark Wielaard <mark@klomp.org>
-Date: Tue, 12 May 2020 16:58:36 +0200
-Subject: [PATCH 1/2] gcc10 arm64 build needs __getauxval for linking with
- libgcc
-
-Provide a new library libgcc-sup-<platform>.a that contains symbols
-needed by libgcc. This needs to be linked after -lgcc to provide
-any symbols missing which would normally be provided by glibc.
-At the moment this only provides __getauxval on arm64 linux.
-
-https://bugs.kde.org/show_bug.cgi?id=421321
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Upstream-Status: Backport [https://sourceware.org/git/?p=valgrind.git;a=commit;h=abbc0761fa0349d49b10dc8c0f10af6bc0578c40]
-
----
- Makefile.tool.am | 3 +-
- coregrind/Makefile.am | 26 +++++++++++++++++
- coregrind/m_libgcc_sup.c | 61 ++++++++++++++++++++++++++++++++++++++++
- 3 files changed, 89 insertions(+), 1 deletion(-)
- create mode 100644 coregrind/m_libgcc_sup.c
-
-diff --git a/Makefile.tool.am b/Makefile.tool.am
-index cc2fa0ee6..2bf90de5d 100644
---- a/Makefile.tool.am
-+++ b/Makefile.tool.am
-@@ -17,7 +17,8 @@ TOOL_DEPENDENCIES_@VGCONF_PLATFORM_SEC_CAPS@ = \
- endif
-
-
--TOOL_LDADD_COMMON = -lgcc
-+TOOL_LDADD_COMMON = -lgcc \
-+ $(top_builddir)/coregrind/libgcc-sup-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a
- TOOL_LDADD_@VGCONF_PLATFORM_PRI_CAPS@ = \
- $(TOOL_DEPENDENCIES_@VGCONF_PLATFORM_PRI_CAPS@) $(TOOL_LDADD_COMMON)
- if VGCONF_HAVE_PLATFORM_SEC
-diff --git a/coregrind/Makefile.am b/coregrind/Makefile.am
-index 6a1a925fb..1753fb633 100644
---- a/coregrind/Makefile.am
-+++ b/coregrind/Makefile.am
-@@ -542,6 +542,32 @@ libcoregrind_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_DEPENDENCIES = \
- libnolto_coregrind-@VGCONF_ARCH_SEC@-@VGCONF_OS@.a
- endif
-
-+#----------------------------------------------------------------------------
-+# libgcc-sup-<platform>.a
-+# Special supplemental library for functions normally supplied by glibc
-+# used by libgcc.
-+#----------------------------------------------------------------------------
-+
-+pkglib_LIBRARIES += libgcc-sup-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a
-+if VGCONF_HAVE_PLATFORM_SEC
-+pkglib_LIBRARIES += libgcc-sup-@VGCONF_ARCH_SEC@-@VGCONF_OS@.a
-+endif
-+
-+libgcc_sup_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_SOURCES = \
-+ m_libgcc_sup.c
-+libgcc_sup_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_CPPFLAGS = \
-+ $(AM_CPPFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
-+libgcc_sup_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_CFLAGS = \
-+ $(AM_CFLAGS_PSO_@VGCONF_PLATFORM_PRI_CAPS@)
-+if VGCONF_HAVE_PLATFORM_SEC
-+libgcc_sup_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_SOURCES = \
-+ m_libgcc_sup.c
-+libgcc_sup_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_CPPFLAGS = \
-+ $(AM_CPPFLAGS_@VGCONF_PLATFORM_SEC_CAPS@)
-+libgcc_sup_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_CFLAGS = \
-+ $(AM_CFLAGS_PSO_@VGCONF_PLATFORM_SEC_CAPS@)
-+endif
-+
- #----------------------------------------------------------------------------
- # libreplacemalloc_toolpreload-<platform>.a
- #----------------------------------------------------------------------------
-diff --git a/coregrind/m_libgcc_sup.c b/coregrind/m_libgcc_sup.c
-new file mode 100644
-index 000000000..e29325459
---- /dev/null
-+++ b/coregrind/m_libgcc_sup.c
-@@ -0,0 +1,61 @@
-+/* -*- mode: C; c-basic-offset: 3; -*- */
-+
-+/*--------------------------------------------------------------------*/
-+/*--- Supplemental functions for libgcc normally provided by glibc ---*/
-+/*--------------------------------------------------------------------*/
-+
-+/*
-+ This file is part of Valgrind, a dynamic binary instrumentation
-+ framework.
-+
-+ Copyright (C) 2020 Mark Wielaard
-+ mark@klomp.org
-+
-+ This program 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 2 of the
-+ License, or (at your option) any later version.
-+
-+ This program 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
-+ along with this program; if not, see <http://www.gnu.org/licenses/>.
-+
-+ The GNU General Public License is contained in the file COPYING.
-+*/
-+
-+#include "config.h"
-+#include "pub_core_basics.h"
-+#include "pub_core_clientstate.h"
-+
-+/*====================================================================*/
-+/*=== arm64 libgcc support function for init_have_lse_atomics ===*/
-+/*====================================================================*/
-+
-+#if defined(VGP_arm64_linux)
-+struct auxv
-+{
-+ Word a_type;
-+ union {
-+ void *a_ptr;
-+ Word a_val;
-+ } u;
-+};
-+#define AT_NULL 0
-+
-+unsigned long int __getauxval (unsigned long int type);
-+unsigned long int __getauxval (unsigned long int type)
-+{
-+ struct auxv *p;
-+ for (p = (struct auxv *) VG_(client_auxv);
-+ p != NULL && p->a_type != AT_NULL;
-+ p++)
-+ if (p->a_type == type)
-+ return p->u.a_val;
-+
-+ return 0;
-+}
-+#endif
---
-2.26.2
-
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-adjust-path-filter-for-2-memcheck-tests.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-vgtests-remove-fullpath-after-flags.patch
index 4bc4bb086..dce8b52ba 100644
--- a/poky/meta/recipes-devtools/valgrind/valgrind/0001-adjust-path-filter-for-2-memcheck-tests.patch
+++ b/poky/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-vgtests-remove-fullpath-after-flags.patch
@@ -1,40 +1,42 @@
-From bf63e35c3036e6040c8cfecabc7160b1f36b0591 Mon Sep 17 00:00:00 2001
-From: Randy MacLeod <Randy.MacLeod@windriver.com>
-Date: Wed, 28 Aug 2019 12:31:15 -0400
-Subject: [PATCH] adjust path filter for 2 memcheck tests
+From 3ff82dcb844f98dbf67c69f11f6516bc234725a9 Mon Sep 17 00:00:00 2001
+From: Stacy Gaikovaia <Stacy.Gaikovaia@windriver.com>
+Date: Wed, 16 Sep 2020 13:45:07 -0400
+Subject: [PATCH] memcheck vgtests remove fullpath-after flags
Test executables produced when cross-compiling can contain
-relative paths such as:
- coregrind/tests/../../../valgrind-3.15.0/coregrind/
-Use the --fullpath-after option to match and therefore
-suppress more of the prefix to enable test to pass.
+relative paths containing version number, such as:
+ coregrind/tests/../../../valgrind-3.16.1/coregrind
+
+Remove the --fullpath-after option so yocto project doesn't
+have to upgrade patch every valgrind uprev. Upgrade test stderr
+paths in corresponding tests .bb script.
Upstream-Status: Inappropriate [embedded specific]
-Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
+Signed-off-by: Stacy Gaikovaia <Stacy.Gaikovaia@windriver.com>
---
memcheck/tests/badfree3.vgtest | 2 +-
memcheck/tests/varinfo5.vgtest | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/memcheck/tests/badfree3.vgtest b/memcheck/tests/badfree3.vgtest
-index 3dfc5fd8a..57eec21f3 100644
+index 3dfc5fd8a..4ee03f00a 100644
--- a/memcheck/tests/badfree3.vgtest
+++ b/memcheck/tests/badfree3.vgtest
@@ -1,3 +1,3 @@
prog: badfree
-vgopts: -q --fullpath-after=memcheck/ --fullpath-after=coregrind/
-+vgopts: -q --fullpath-after=/valgrind-3.15.0/memcheck/ --fullpath-after=/valgrind-3.15.0/coregrind/
++vgopts: -q
stderr_filter_args: badfree.c
diff --git a/memcheck/tests/varinfo5.vgtest b/memcheck/tests/varinfo5.vgtest
-index 063d00dce..6907bb2f6 100644
+index 063d00dce..79c4a72a4 100644
--- a/memcheck/tests/varinfo5.vgtest
+++ b/memcheck/tests/varinfo5.vgtest
@@ -1,3 +1,3 @@
prog: varinfo5
-vgopts: --fullpath-after=memcheck/ --fullpath-after=coregrind/ --read-var-info=yes --read-inline-info=yes -q
-+vgopts: --fullpath-after=/valgrind-3.15.0/memcheck/ --fullpath-after=/valgrind-3.15.0/coregrind/ --read-var-info=yes --read-inline-info=yes -q
++vgopts: --read-var-info=yes --read-inline-info=yes -q
stderr_filter: filter_varinfo3
--
-2.22.0
+2.25.1
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-tests-Make-pthread_detatch-call-portable-across-plat.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-tests-Make-pthread_detatch-call-portable-across-plat.patch
deleted file mode 100644
index f407d8191..000000000
--- a/poky/meta/recipes-devtools/valgrind/valgrind/0001-tests-Make-pthread_detatch-call-portable-across-plat.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-From 92fcf75d6d3903e45492b041bf4ad07787d2e58a Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 27 Jan 2020 19:50:04 -0800
-Subject: [PATCH] drd/tests/pth_detached3: Make pthread_detach() call portable
- across platforms
-
-pthread_t is opaque type therefore we can not apply simple arithmetic to
-variables of pthread_t type this test needs to pass a invalid pthread_t
-handle, typcasting to uintptr_t works too and is portable across glibc and
-musl
-
-Fixes
-| pth_detached3.c:24:25: error: invalid use of undefined type 'struct __pthread'
-| 24 | pthread_detach(thread + 8);
-| | ^
-
-[ bvanassche: reformatted patch description and fixed up line numbers ]
-
-Upstream-Status: Backport [https://sourceware.org/git/?p=valgrind.git;a=commit;h=92fcf75d6d3903e45492b041bf4ad07787d2e58a]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- drd/tests/pth_detached3.c | 3 ++-
- drd/tests/pth_detached3.stderr.exp1 | 4 ++--
- drd/tests/pth_detached3.stderr.exp2 | 4 ++--
- 3 files changed, 6 insertions(+), 5 deletions(-)
-
-diff --git a/drd/tests/pth_detached3.c b/drd/tests/pth_detached3.c
-index c02eef1..efeb15b 100644
---- a/drd/tests/pth_detached3.c
-+++ b/drd/tests/pth_detached3.c
-@@ -4,6 +4,7 @@
- #include <errno.h>
- #include <pthread.h>
- #include <stdio.h>
-+#include <stdint.h>
-
- static void* thread_func(void* arg)
- {
-@@ -21,7 +22,7 @@ int main(int argc, char** argv)
- pthread_detach(thread);
-
- /* Invoke pthread_detach() with an invalid thread ID. */
-- pthread_detach(thread + 8);
-+ pthread_detach((pthread_t)((uintptr_t)thread + 8));
-
- fprintf(stderr, "Finished.\n");
-
-diff --git a/drd/tests/pth_detached3.stderr.exp1 b/drd/tests/pth_detached3.stderr.exp1
-index 58412ec..8dd58ba 100644
---- a/drd/tests/pth_detached3.stderr.exp1
-+++ b/drd/tests/pth_detached3.stderr.exp1
-@@ -1,11 +1,11 @@
-
- pthread_detach(): invalid thread ID 0x........
- at 0x........: pthread_detach (drd_pthread_intercepts.c:?)
-- by 0x........: main (pth_detached3.c:21)
-+ by 0x........: main (pth_detached3.c:22)
-
- pthread_detach(): invalid thread ID 0x........
- at 0x........: pthread_detach (drd_pthread_intercepts.c:?)
-- by 0x........: main (pth_detached3.c:24)
-+ by 0x........: main (pth_detached3.c:25)
-
- Finished.
-
-diff --git a/drd/tests/pth_detached3.stderr.exp2 b/drd/tests/pth_detached3.stderr.exp2
-index bdc5cf8..e82dee1 100644
---- a/drd/tests/pth_detached3.stderr.exp2
-+++ b/drd/tests/pth_detached3.stderr.exp2
-@@ -2,12 +2,12 @@
- pthread_detach(): invalid thread ID 0x........
- at 0x........: vgDrd_set_joinable (drd_pthread_intercepts.c:?)
- by 0x........: pthread_detach (drd_pthread_intercepts.c:?)
-- by 0x........: main (pth_detached3.c:21)
-+ by 0x........: main (pth_detached3.c:22)
-
- pthread_detach(): invalid thread ID 0x........
- at 0x........: vgDrd_set_joinable (drd_pthread_intercepts.c:?)
- by 0x........: pthread_detach (drd_pthread_intercepts.c:?)
-- by 0x........: main (pth_detached3.c:24)
-+ by 0x........: main (pth_detached3.c:25)
-
- Finished.
-
---
-2.9.3
-
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0004-Fix-out-of-tree-builds.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0004-Fix-out-of-tree-builds.patch
index 75bb0aa7c..4570f6399 100644
--- a/poky/meta/recipes-devtools/valgrind/valgrind/0004-Fix-out-of-tree-builds.patch
+++ b/poky/meta/recipes-devtools/valgrind/valgrind/0004-Fix-out-of-tree-builds.patch
@@ -4,7 +4,8 @@ Date: Tue, 16 Oct 2018 21:01:04 -0400
Subject: [PATCH] Fix out of tree builds.
The paths to these files need to be fully specified in
-the out of tree build case. glibc-2.X.supp is a generated file so the full path
+the out of tree build case. glibc-2.X.supp is a generated file so the
+full path
is deliberately not specified in that case.
RP 2013/03/23
@@ -16,81 +17,81 @@ Upstream-Status: Pending
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
---
- configure.ac | 68 ++++++++++++++++++++++++++--------------------------
- 1 file changed, 34 insertions(+), 34 deletions(-)
+ configure.ac | 66 ++++++++++++++++++++++++++--------------------------
+ 1 file changed, 33 insertions(+), 33 deletions(-)
diff --git a/configure.ac b/configure.ac
-index c18ae5f2a..99667ce57 100644
+index 524230d..54861c5 100755
--- a/configure.ac
+++ b/configure.ac
-@@ -392,50 +392,50 @@ case "${host_os}" in
+@@ -396,50 +396,50 @@ case "${host_os}" in
9.*)
AC_MSG_RESULT([Darwin 9.x (${kernel}) / Mac OS X 10.5 Leopard])
AC_DEFINE([DARWIN_VERS], DARWIN_10_5, [Darwin / Mac OS X version])
- DEFAULT_SUPP="darwin9.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="darwin9-drd.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/darwin9.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/darwin9-drd.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/darwin9.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/darwin9-drd.supp ${DEFAULT_SUPP}"
;;
10.*)
AC_MSG_RESULT([Darwin 10.x (${kernel}) / Mac OS X 10.6 Snow Leopard])
AC_DEFINE([DARWIN_VERS], DARWIN_10_6, [Darwin / Mac OS X version])
- DEFAULT_SUPP="darwin10.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/darwin10.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/darwin10.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
;;
11.*)
AC_MSG_RESULT([Darwin 11.x (${kernel}) / Mac OS X 10.7 Lion])
AC_DEFINE([DARWIN_VERS], DARWIN_10_7, [Darwin / Mac OS X version])
- DEFAULT_SUPP="darwin11.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/darwin11.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/darwin11.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
;;
12.*)
AC_MSG_RESULT([Darwin 12.x (${kernel}) / Mac OS X 10.8 Mountain Lion])
AC_DEFINE([DARWIN_VERS], DARWIN_10_8, [Darwin / Mac OS X version])
- DEFAULT_SUPP="darwin12.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/darwin12.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/darwin12.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
;;
13.*)
AC_MSG_RESULT([Darwin 13.x (${kernel}) / Mac OS X 10.9 Mavericks])
AC_DEFINE([DARWIN_VERS], DARWIN_10_9, [Darwin / Mac OS X version])
- DEFAULT_SUPP="darwin13.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/darwin13.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/darwin13.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
;;
14.*)
AC_MSG_RESULT([Darwin 14.x (${kernel}) / Mac OS X 10.10 Yosemite])
AC_DEFINE([DARWIN_VERS], DARWIN_10_10, [Darwin / Mac OS X version])
- DEFAULT_SUPP="darwin14.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/darwin14.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/darwin14.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
;;
15.*)
AC_MSG_RESULT([Darwin 15.x (${kernel}) / Mac OS X 10.11 El Capitan])
AC_DEFINE([DARWIN_VERS], DARWIN_10_11, [Darwin / Mac OS X version])
- DEFAULT_SUPP="darwin15.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/darwin15.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/darwin15.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
;;
16.*)
AC_MSG_RESULT([Darwin 16.x (${kernel}) / macOS 10.12 Sierra])
AC_DEFINE([DARWIN_VERS], DARWIN_10_12, [Darwin / Mac OS X version])
- DEFAULT_SUPP="darwin16.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="darwin10-drd.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/darwin16.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/darwin16.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
;;
17.*)
AC_MSG_RESULT([Darwin 17.x (${kernel}) / macOS 10.13 High Sierra])
-@@ -460,7 +460,7 @@ case "${host_os}" in
+@@ -464,7 +464,7 @@ case "${host_os}" in
DEFAULT_SUPP="solaris12.supp ${DEFAULT_SUPP}"
;;
*)
@@ -99,7 +100,7 @@ index c18ae5f2a..99667ce57 100644
;;
esac
;;
-@@ -468,7 +468,7 @@ case "${host_os}" in
+@@ -472,7 +472,7 @@ case "${host_os}" in
solaris2.12*)
AC_MSG_RESULT([ok (${host_os})])
VGCONF_OS="solaris"
@@ -108,33 +109,33 @@ index c18ae5f2a..99667ce57 100644
;;
*)
-@@ -1051,29 +1051,29 @@ AC_MSG_CHECKING([the glibc version])
+@@ -1095,29 +1095,29 @@ AC_MSG_CHECKING([the glibc version])
case "${GLIBC_VERSION}" in
2.2)
AC_MSG_RESULT(${GLIBC_VERSION} family)
- DEFAULT_SUPP="glibc-2.2.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="glibc-2.2-LinuxThreads-helgrind.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/glibc-2.2.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/glibc-2.2-LinuxThreads-helgrind.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/glibc-2.2.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/glibc-2.2-LinuxThreads-helgrind.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
;;
2.[[3-6]])
AC_MSG_RESULT(${GLIBC_VERSION} family)
- DEFAULT_SUPP="glibc-${GLIBC_VERSION}.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/glibc-${GLIBC_VERSION}.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/glibc-${GLIBC_VERSION}.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
;;
2.[[7-9]])
AC_MSG_RESULT(${GLIBC_VERSION} family)
DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
;;
2.10|2.11)
AC_MSG_RESULT(${GLIBC_VERSION} family)
@@ -143,23 +144,23 @@ index c18ae5f2a..99667ce57 100644
DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
;;
2.*)
AC_MSG_RESULT(${GLIBC_VERSION} family)
-@@ -1082,8 +1082,8 @@ case "${GLIBC_VERSION}" in
+@@ -1126,8 +1126,8 @@ case "${GLIBC_VERSION}" in
AC_DEFINE([GLIBC_MANDATORY_INDEX_AND_STRLEN_REDIRECT], 1,
[Define to 1 if index() and strlen() have been optimized heavily (x86 glibc >= 2.12)])
DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
;;
darwin)
AC_MSG_RESULT(Darwin)
-@@ -1093,7 +1093,7 @@ case "${GLIBC_VERSION}" in
+@@ -1137,7 +1137,7 @@ case "${GLIBC_VERSION}" in
bionic)
AC_MSG_RESULT(Bionic)
AC_DEFINE([BIONIC_LIBC], 1, [Define to 1 if you're using Bionic])
@@ -168,7 +169,7 @@ index c18ae5f2a..99667ce57 100644
;;
solaris)
AC_MSG_RESULT(Solaris)
-@@ -1120,11 +1120,11 @@ if test "$VGCONF_OS" != "solaris"; then
+@@ -1164,8 +1164,8 @@ if test "$VGCONF_OS" != "solaris"; then
# attempt to detect whether such libraries are installed on the
# build machine (or even if any X facilities are present); just
# add the suppressions antidisirregardless.
@@ -176,13 +177,9 @@ index c18ae5f2a..99667ce57 100644
- DEFAULT_SUPP="xfree-3.supp ${DEFAULT_SUPP}"
+ DEFAULT_SUPP="$srcdir/xfree-4.supp ${DEFAULT_SUPP}"
+ DEFAULT_SUPP="$srcdir/xfree-3.supp ${DEFAULT_SUPP}"
-
- # Add glibc and X11 suppressions for exp-sgcheck
-- DEFAULT_SUPP="exp-sgcheck.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/exp-sgcheck.supp ${DEFAULT_SUPP}"
fi
--
-2.17.0
+2.17.1
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0004-pth_atfork1.c-Define-error-API-for-musl.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0004-pth_atfork1.c-Define-error-API-for-musl.patch
deleted file mode 100644
index 1cb706254..000000000
--- a/poky/meta/recipes-devtools/valgrind/valgrind/0004-pth_atfork1.c-Define-error-API-for-musl.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From fb77fef4f866dac7bcc6d1ae025da60564869f84 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 10 Jun 2017 01:06:11 -0700
-Subject: [PATCH 4/6] pth_atfork1.c: Define error() API for musl
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- none/tests/pth_atfork1.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/none/tests/pth_atfork1.c b/none/tests/pth_atfork1.c
-index 34201ef..b7f5f2d 100644
---- a/none/tests/pth_atfork1.c
-+++ b/none/tests/pth_atfork1.c
-@@ -18,7 +18,7 @@
- Boston, MA 02111-1307, USA. */
-
- #include <errno.h>
--#if !defined(__APPLE__) && !defined(__sun)
-+#if !defined(__APPLE__) && !defined(__sun) && defined(__GLIBC__)
- # include <error.h>
- #endif
- #include <stdlib.h>
-@@ -27,7 +27,7 @@
- #include <sys/wait.h>
- #include <stdio.h>
-
--#if defined(__APPLE__) || defined(__sun)
-+#if defined(__APPLE__) || defined(__sun) || (defined(__linux__) && !defined(__GLIBC__))
- #include <string.h> /* strerror */
- static void error (int status, int errnum, char* msg)
- {
---
-2.13.1
-
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb b/poky/meta/recipes-devtools/valgrind/valgrind_3.16.1.bb
index a764d1817..d4ca1a775 100644
--- a/poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb
+++ b/poky/meta/recipes-devtools/valgrind/valgrind_3.16.1.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "http://valgrind.org/"
BUGTRACKER = "http://valgrind.org/support/bug_reports.html"
LICENSE = "GPLv2 & GPLv2+ & BSD"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
- file://include/pub_tool_basics.h;beginline=6;endline=29;md5=d4de0407239381463cf01dd276d7c22e \
+ file://include/pub_tool_basics.h;beginline=6;endline=29;md5=41c410e8d3f305aee7aaa666b2e4f366 \
file://include/valgrind.h;beginline=1;endline=56;md5=ad3b317f3286b6b704575d9efe6ca5df \
file://COPYING.DOCS;md5=24ea4c7092233849b4394699333b5c56"
@@ -27,7 +27,6 @@ SRC_URI = "https://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \
file://0001-sigqueue-Rename-_sifields-to-__si_fields-on-musl.patch \
file://0002-context-APIs-are-not-available-on-musl.patch \
file://0003-correct-include-directive-path-for-config.h.patch \
- file://0004-pth_atfork1.c-Define-error-API-for-musl.patch \
file://0005-tc20_verifywrap.c-Fake-__GLIBC_PREREQ-with-musl.patch \
file://0001-memcheck-arm64-Define-__THROW-if-not-already-defined.patch \
file://0002-memcheck-x86-Define-__THROW-if-not-defined.patch \
@@ -37,24 +36,36 @@ SRC_URI = "https://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \
file://0001-Make-local-functions-static-to-avoid-assembler-error.patch \
file://0001-Return-a-valid-exit_code-from-vg_regtest.patch \
file://0001-valgrind-filter_xml_frames-do-not-filter-usr.patch \
- file://0001-adjust-path-filter-for-2-memcheck-tests.patch \
+ file://0001-memcheck-vgtests-remove-fullpath-after-flags.patch \
file://s390x_vec_op_t.patch \
file://0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch \
- file://0001-tests-Make-pthread_detatch-call-portable-across-plat.patch \
file://0001-memcheck-tests-Fix-timerfd-syscall-test.patch \
- file://0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch \
"
-SRC_URI[md5sum] = "46e5fbdcbc3502a5976a317a0860a975"
-SRC_URI[sha256sum] = "417c7a9da8f60dd05698b3a7bc6002e4ef996f14c13f0ff96679a16873e78ab1"
+SRC_URI[md5sum] = "d1b153f1ab17cf1f311705e7a83ef589"
+SRC_URI[sha256sum] = "c91f3a2f7b02db0f3bc99479861656154d241d2fdb265614ba918cc6720a33ca"
UPSTREAM_CHECK_REGEX = "valgrind-(?P<pver>\d+(\.\d+)+)\.tar"
COMPATIBLE_HOST = '(i.86|x86_64|arm|aarch64|mips|powerpc|powerpc64).*-linux'
+# patch 0001-memcheck-vgtests-remove-fullpath-after-flags.patch removes relative path
+# argument. Change expected stderr files accordingly.
+do_patch_append() {
+ bb.build.exec_func('do_sed_paths', d)
+}
+
+do_sed_paths() {
+ sed -i -e 's|tests/||' ${S}/memcheck/tests/badfree3.stderr.exp
+ sed -i -e 's|tests/||' ${S}/memcheck/tests/varinfo5.stderr.exp
+}
+
# valgrind supports armv7 and above
COMPATIBLE_HOST_armv4 = 'null'
COMPATIBLE_HOST_armv5 = 'null'
COMPATIBLE_HOST_armv6 = 'null'
+# valgrind fails with powerpc soft-float
+COMPATIBLE_HOST_powerpc = "${@bb.utils.contains('TARGET_FPU', 'soft', 'null', '.*-linux', d)}"
+
# X32 isn't supported by valgrind at this time
COMPATIBLE_HOST_linux-gnux32 = 'null'
COMPATIBLE_HOST_linux-muslx32 = 'null'
@@ -118,7 +129,8 @@ RRECOMMENDS_${PN} += "${TCLIBC}-dbg"
RDEPENDS_${PN}-ptest += " bash coreutils file \
gdb libgomp \
perl \
- perl-module-getopt-long perl-module-file-basename perl-module-file-glob \
+ perl-module-file-basename perl-module-file-glob perl-module-getopt-long \
+ perl-module-overloading \
procps sed ${PN}-dbg ${PN}-src"
RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils"