diff --git a/images/ovn/Earthfile b/images/ovn/Earthfile
index 436535a..aa4507f 100644
--- a/images/ovn/Earthfile
+++ b/images/ovn/Earthfile
@@ -1,19 +1,35 @@
 VERSION 0.7
 
+ARG --global REGISTRY=ghcr.io/vexxhost/atmosphere
 ARG --global SERIES=23.03
 ARG --global VERSION=23.03.0-69
 
+ovn-kubernetes:
+  FROM golang:1.20
+  GIT CLONE --branch master https://github.com/ovn-org/ovn-kubernetes /src
+  WORKDIR /src
+  COPY patches/ovn-kubernetes /patches
+  DO ../+APT_INSTALL --PACKAGES "git"
+  RUN git apply --verbose /patches/*.patch
+  SAVE ARTIFACT /src/dist/images/ovndb-raft-functions.sh
+  SAVE ARTIFACT /src/dist/images/ovnkube.sh
+  RUN \
+    cd /src/go-controller && \
+    go build -o /build/ovn-kube-util ./cmd/ovn-kube-util
+  SAVE ARTIFACT /build/ovn-kube-util
+
 component-image:
   FROM ../openvswitch+platform-image
   DO ../+DNF_INSTALL --PACKAGES "firewalld-filesystem hostname ovn${SERIES}-${VERSION}.el9s procps-ng"
   ARG --required NAME
   DO ../+DNF_INSTALL --PACKAGES "ovn${SERIES}-${NAME}-${VERSION}.el9s"
-  IF [ "${NAME}" = "host" ]
-    COPY ../kubernetes+image/kubectl /usr/local/bin/kubectl
-  END
+  COPY ../kubernetes+image/kubectl /usr/local/bin/kubectl
+  COPY +ovn-kubernetes/ovndb-raft-functions.sh /root
+  COPY +ovn-kubernetes/ovnkube.sh /root
+  COPY +ovn-kubernetes/ovn-kube-util /usr/bin
   SAVE IMAGE --push \
-    ghcr.io/vexxhost/atmosphere/ovn-${NAME}:${SERIES} \
-    ghcr.io/vexxhost/atmosphere/ovn-${NAME}:${VERSION}
+    ${REGISTRY}/ovn-${NAME}:${SERIES} \
+    ${REGISTRY}/ovn-${NAME}:${VERSION}
 
 central:
   BUILD +component-image --NAME central
diff --git a/images/ovn/patches/ovn-kubernetes/0001-chore-refactor-to-using-OVN_KUBERNETES_STATEFULSET.patch b/images/ovn/patches/ovn-kubernetes/0001-chore-refactor-to-using-OVN_KUBERNETES_STATEFULSET.patch
new file mode 100644
index 0000000..8071192
--- /dev/null
+++ b/images/ovn/patches/ovn-kubernetes/0001-chore-refactor-to-using-OVN_KUBERNETES_STATEFULSET.patch
@@ -0,0 +1,161 @@
+From 0227559bb404c3d7d5f32737809c38024bbabef0 Mon Sep 17 00:00:00 2001
+From: Mohammed Naser <mnaser@vexxhost.com>
+Date: Thu, 18 Jan 2024 12:42:24 -0500
+Subject: [PATCH 1/2] chore: refactor to using OVN_KUBERNETES_STATEFULSET
+
+---
+ dist/images/ovndb-raft-functions.sh | 32 ++++++++++++++---------------
+ dist/images/ovnkube.sh              |  5 ++++-
+ 2 files changed, 20 insertions(+), 17 deletions(-)
+
+diff --git a/dist/images/ovndb-raft-functions.sh b/dist/images/ovndb-raft-functions.sh
+index dceb4ec2e..65e9b6d9b 100644
+--- a/dist/images/ovndb-raft-functions.sh
++++ b/dist/images/ovndb-raft-functions.sh
+@@ -10,7 +10,7 @@ verify-ovsdb-raft() {
+   fi
+ 
+   replicas=$(kubectl --server=${K8S_APISERVER} --token=${k8s_token} --certificate-authority=${K8S_CACERT} \
+-    get statefulset -n ${ovn_kubernetes_namespace} ovnkube-db -o=jsonpath='{.spec.replicas}')
++    get statefulset -n ${ovn_kubernetes_namespace} ${ovn_kubernetes_statefulset} -o=jsonpath='{.spec.replicas}')
+   if [[ ${replicas} -lt 3 || $((${replicas} % 2)) -eq 0 ]]; then
+     echo "at least 3 nodes need to be configured, and it must be odd number of nodes"
+     exit 1
+@@ -45,14 +45,14 @@ db_part_of_cluster() {
+ }
+ 
+ # Checks if cluster has already been initialized.
+-# If not it returns false and sets init_ip to ovnkube-db-0
++# If not it returns false and sets init_ip to ${ovn_kubernetes_statefulset}-0
+ cluster_exists() {
+   # See if ep is available ...
+   local db=${1}
+   local port=${2}
+ 
+   db_pods=$(kubectl --server=${K8S_APISERVER} --token=${k8s_token} --certificate-authority=${K8S_CACERT} \
+-    get pod -n ${ovn_kubernetes_namespace} -o=jsonpath='{.items[*].metadata.name}' | egrep -o 'ovnkube-db[^ ]+')
++    get pod -n ${ovn_kubernetes_namespace} -o=jsonpath='{.items[*].metadata.name}' | egrep -o "${ovn_kubernetes_statefulset}[^ ]+")
+ 
+   for db_pod in $db_pods; do
+     if db_part_of_cluster $db_pod $db $port; then
+@@ -63,7 +63,7 @@ cluster_exists() {
+ 
+   # if we get here  there is no cluster, set init_ip and get out
+   init_ip="$(kubectl --server=${K8S_APISERVER} --token=${k8s_token} --certificate-authority=${K8S_CACERT} \
+-    get pod -n ${ovn_kubernetes_namespace} ovnkube-db-0 -o=jsonpath='{.status.podIP}')"
++    get pod -n ${ovn_kubernetes_namespace} ${ovn_kubernetes_statefulset}-0 -o=jsonpath='{.status.podIP}')"
+   if [[ $? != 0 ]]; then
+     return 1
+   fi
+@@ -90,17 +90,17 @@ check_and_apply_ovnkube_db_ep() {
+ 
+   # return if ovn db service endpoint already exists
+   result=$(kubectl --server=${K8S_APISERVER} --token=${k8s_token} --certificate-authority=${K8S_CACERT} \
+-      get ep -n ${ovn_kubernetes_namespace} ovnkube-db 2>&1)
++      get ep -n ${ovn_kubernetes_namespace} ${ovn_kubernetes_statefulset} 2>&1)
+   test $? -eq 0 && return
+   if ! echo ${result} | grep -q "NotFound"; then
+-      echo "Failed to find ovnkube-db endpoint: ${result}, Exiting..."
++      echo "Failed to find ${ovn_kubernetes_statefulset} endpoint: ${result}, Exiting..."
+       exit 12
+   fi
+-  # Get IPs of all ovnkube-db PODs
++  # Get IPs of all ${ovn_kubernetes_statefulset} PODs
+   ips=()
+   for ((i = 0; i < ${replicas}; i++)); do
+     ip=$(kubectl --server=${K8S_APISERVER} --token=${k8s_token} --certificate-authority=${K8S_CACERT} \
+-      get pod -n ${ovn_kubernetes_namespace} ovnkube-db-${i} -o=jsonpath='{.status.podIP}')
++      get pod -n ${ovn_kubernetes_namespace} ${ovn_kubernetes_statefulset}-${i} -o=jsonpath='{.status.podIP}')
+     if [[ ${ip} == "" ]]; then
+       break
+     fi
+@@ -108,7 +108,7 @@ check_and_apply_ovnkube_db_ep() {
+   done
+ 
+   if [[ ${i} -eq ${replicas} ]]; then
+-    # Number of POD IPs is same as number of statefulset replicas. Now, if the number of ovnkube-db endpoints
++    # Number of POD IPs is same as number of statefulset replicas. Now, if the number of ${ovn_kubernetes_statefulset} endpoints
+     # is 0, then we are applying the endpoint for the first time. So, we need to make sure that each of the
+     # pod IP responds to the `ovsdb-client list-dbs` call before we set the endpoint. If they don't, retry several
+     # times and then give up.
+@@ -170,7 +170,7 @@ set_election_timer() {
+   return 0
+ }
+ 
+-# set_connection() will be called for ovnkube-db-0 pod when :
++# set_connection() will be called for ${ovn_kubernetes_statefulset}-0 pod when :
+ #    1. it is first started or
+ #    2. it restarts after the initial start has failed or
+ #    3. subsequent restarts during the lifetime of the pod
+@@ -307,7 +307,7 @@ ovsdb-raft() {
+       --ovn-${db}-log="${ovn_loglevel_db}" &
+     else
+       # either we need to initialize a new cluster or wait for db-0 to create it
+-      if [[ "${POD_NAME}" == "ovnkube-db-0" ]]; then
++      if [[ "${POD_NAME}" == "${ovn_kubernetes_statefulset}-0" ]]; then
+         echo "Cluster does not exist for DB: ${db}, creating new raft cluster"
+         run_as_ovs_user_if_needed \
+         ${OVNCTL_PATH} run_${db}_ovsdb --no-monitor \
+@@ -317,7 +317,7 @@ ovsdb-raft() {
+         ${db_ssl_opts} \
+         --ovn-${db}-log="${ovn_loglevel_db}" &
+       else
+-        echo "Cluster does not exist for DB: ${db}, waiting for ovnkube-db-0 pod to create it"
++        echo "Cluster does not exist for DB: ${db}, waiting for ${ovn_kubernetes_statefulset}-0 pod to create it"
+         # all non pod-0 pods will be blocked here till connection is set
+         wait_for_event cluster_exists ${db} ${port}
+         run_as_ovs_user_if_needed \
+@@ -356,8 +356,8 @@ ovsdb-raft() {
+   fi
+   echo "=============== ${db}-ovsdb-raft ========== RUNNING"
+ 
+-  if [[ "${POD_NAME}" == "ovnkube-db-0" ]]; then
+-    # post raft create work has to be done only once and in ovnkube-db-0 while it is still
++  if [[ "${POD_NAME}" == "${ovn_kubernetes_statefulset}-0" ]]; then
++    # post raft create work has to be done only once and in ${ovn_kubernetes_statefulset}-0 while it is still
+     # a single-node cluster, additional protection against the case when pod-0 isn't a leader
+     # is needed in the cases of sudden pod-0 initialization logic restarts
+     current_raft_role=$(ovs-appctl -t ${OVN_RUNDIR}/ovn${db}_db.ctl cluster/status ${database} 2>&1 | grep "^Role")
+@@ -381,9 +381,9 @@ ovsdb-raft() {
+   fi
+ 
+   last_node_index=$(expr ${replicas} - 1)
+-  # Create endpoints only if all ovnkube-db pods have started and are running. We do this
++  # Create endpoints only if all ${ovn_kubernetes_statefulset} pods have started and are running. We do this
+   # from the last pod of the statefulset.
+-  if [[ ${db} == "nb" && "${POD_NAME}" == "ovnkube-db-"${last_node_index} ]]; then
++  if [[ ${db} == "nb" && "${POD_NAME}" == "${ovn_kubernetes_statefulset}-"${last_node_index} ]]; then
+     check_and_apply_ovnkube_db_ep ${port}
+   fi
+ 
+diff --git a/dist/images/ovnkube.sh b/dist/images/ovnkube.sh
+index bf3989e37..720b3e14d 100755
+--- a/dist/images/ovnkube.sh
++++ b/dist/images/ovnkube.sh
+@@ -40,6 +40,7 @@ fi
+ # OVN_NET_CIDR - the network cidr - v3
+ # OVN_SVC_CIDR - the cluster-service-cidr - v3
+ # OVN_KUBERNETES_NAMESPACE - k8s namespace - v3
++# OVN_KUBERNETES_STATEFULSET - k8s statefulset - v3
+ # K8S_NODE - hostname of the node - v3
+ #
+ # OVN_DAEMONSET_VERSION - version match daemonset and image - v3
+@@ -198,12 +199,14 @@ metrics_bind_port=${OVN_METRICS_BIND_PORT:-9476}
+ metrics_exporter_port=${OVN_METRICS_EXPORTER_PORT:-9310}
+ 
+ ovn_kubernetes_namespace=${OVN_KUBERNETES_NAMESPACE:-ovn-kubernetes}
++ovn_kubernetes_statefulset=${OVN_KUBERNETES_STATEFULSET:-ovnkube-db}
++
+ # namespace used for classifying host network traffic
+ ovn_host_network_namespace=${OVN_HOST_NETWORK_NAMESPACE:-ovn-host-network}
+ 
+ # host on which ovnkube-db POD is running and this POD contains both
+ # OVN NB and SB DB running in their own container.
+-ovn_db_host=${K8S_NODE_IP:-""}
++ovn_db_host=${K8S_NODE_IP:-$(hostname -f)}
+ 
+ # OVN_NB_PORT - ovn north db port (default 6641)
+ ovn_nb_port=${OVN_NB_PORT:-6641}
+-- 
+2.42.0
+
diff --git a/images/ovn/patches/ovn-kubernetes/0002-chore-northd-refactor-to-being-able-to-use-split-svc.patch b/images/ovn/patches/ovn-kubernetes/0002-chore-northd-refactor-to-being-able-to-use-split-svc.patch
new file mode 100644
index 0000000..c615f63
--- /dev/null
+++ b/images/ovn/patches/ovn-kubernetes/0002-chore-northd-refactor-to-being-able-to-use-split-svc.patch
@@ -0,0 +1,144 @@
+From 90851bd77718bc834446ebe2ddf34b8e9383dee8 Mon Sep 17 00:00:00 2001
+From: Mohammed Naser <mnaser@vexxhost.com>
+Date: Thu, 18 Jan 2024 16:16:11 -0500
+Subject: [PATCH 2/2] chore(northd): refactor to being able to use split svcs
+
+---
+ dist/images/ovnkube.sh | 75 +++++++++++++++++++++++++++++++++---------
+ 1 file changed, 59 insertions(+), 16 deletions(-)
+
+diff --git a/dist/images/ovnkube.sh b/dist/images/ovnkube.sh
+index 720b3e14d..1d3059cf8 100755
+--- a/dist/images/ovnkube.sh
++++ b/dist/images/ovnkube.sh
+@@ -200,6 +200,8 @@ metrics_exporter_port=${OVN_METRICS_EXPORTER_PORT:-9310}
+ 
+ ovn_kubernetes_namespace=${OVN_KUBERNETES_NAMESPACE:-ovn-kubernetes}
+ ovn_kubernetes_statefulset=${OVN_KUBERNETES_STATEFULSET:-ovnkube-db}
++ovn_kubernetes_nb_statefulset=${OVN_KUBERNETES_NB_STATEFULSET:-ovnkube-db}
++ovn_kubernetes_sb_statefulset=${OVN_KUBERNETES_SB_STATEFULSET:-ovnkube-db}
+ 
+ # namespace used for classifying host network traffic
+ ovn_host_network_namespace=${OVN_HOST_NETWORK_NAMESPACE:-ovn-host-network}
+@@ -374,6 +376,24 @@ wait_for_event() {
+   done
+ }
+ 
++wait_for_db () {
++  local db=$1
++  local ep=$(get_ovnkube_zone_db_ep ${db})
++
++  echo "Getting the ${ep} ep"
++  # See if ep is available ...
++  IFS=" " read -a ep_hosts <<<"$(kubectl --server=${K8S_APISERVER} --token=${k8s_token} --certificate-authority=${K8S_CACERT} \
++    get endpointslice -n ${ovn_kubernetes_namespace} -l kubernetes.io/service-name=${ep} -o=jsonpath='{range .items[0].endpoints[*]}{.addresses[0]} ')"
++  if [[ ${#ep_hosts[@]} == 0 ]]; then
++    return 1
++  fi
++
++  ep_hosts_string="${ep_hosts[*]}"
++  declare -g -a "ovn_${db}db_hosts=($ep_hosts_string)"
++
++  return 0
++}
++
+ # The ovnkube-db kubernetes service must be populated with OVN DB service endpoints
+ # before various OVN K8s containers can come up. This functions checks for that.
+ # If OVN dbs are configured to listen only on unix sockets, then there will not be
+@@ -384,15 +404,18 @@ ready_to_start_node() {
+     return 0
+   fi
+ 
+-  ovnkube_db_ep=$(get_ovnkube_zone_db_ep)
+-  echo "Getting the ${ovnkube_db_ep} ep"
+-  # See if ep is available ...
+-  IFS=" " read -a ovn_db_hosts <<<"$(kubectl --server=${K8S_APISERVER} --token=${k8s_token} --certificate-authority=${K8S_CACERT} \
+-    get ep -n ${ovn_kubernetes_namespace} ${ovnkube_db_ep} -o=jsonpath='{range .subsets[0].addresses[*]}{.ip}{" "}')"
+-  if [[ ${#ovn_db_hosts[@]} == 0 ]]; then
++  wait_for_db nb
++  if [[ $? != 0 ]]; then
++    return 1
++  fi
++
++  wait_for_db sb
++  if [[ $? != 0 ]]; then
+     return 1
+   fi
++
+   get_ovn_db_vars
++
+   return 0
+ }
+ # wait_for_event ready_to_start_node
+@@ -410,17 +433,29 @@ check_ovn_daemonset_version() {
+ }
+ 
+ get_ovn_db_vars() {
++
++  index=0
+   ovn_nbdb_str=""
+-  ovn_sbdb_str=""
+-  for i in "${ovn_db_hosts[@]}"; do
++  for i in "${ovn_nbdb_hosts[@]}"; do
+     if [ -n "$ovn_nbdb_str" ]; then
+       ovn_nbdb_str=${ovn_nbdb_str}","
++    fi
++    host="${ovn_kubernetes_nb_statefulset}-${index}.${ovn_kubernetes_nb_statefulset}.${ovn_kubernetes_namespace}.svc.cluster.local"
++    ovn_nbdb_str=${ovn_nbdb_str}${transport}://${host}:${ovn_nb_port}
++    index=$((index + 1))
++  done
++
++  index=0
++  ovn_sbdb_str=""
++  for i in "${ovn_sbdb_hosts[@]}"; do
++    if [ -n "$ovn_sbdb_str" ]; then
+       ovn_sbdb_str=${ovn_sbdb_str}","
+     fi
+-    ip=$(bracketify $i)
+-    ovn_nbdb_str=${ovn_nbdb_str}${transport}://${ip}:${ovn_nb_port}
+-    ovn_sbdb_str=${ovn_sbdb_str}${transport}://${ip}:${ovn_sb_port}
++    host="${ovn_kubernetes_sb_statefulset}-${index}.${ovn_kubernetes_sb_statefulset}.${ovn_kubernetes_namespace}.svc.cluster.local"
++    ovn_sbdb_str=${ovn_sbdb_str}${transport}://${host}:${ovn_sb_port}
++    index=$((index + 1))
+   done
++
+   # OVN_NORTH and OVN_SOUTH override derived host
+   ovn_nbdb=${OVN_NORTH:-$ovn_nbdb_str}
+   ovn_sbdb=${OVN_SOUTH:-$ovn_sbdb_str}
+@@ -730,7 +765,7 @@ set_ovnkube_db_ep() {
+   ips=("$@")
+ 
+   ovn_zone=$(get_node_zone)
+-  ovnkube_db_ep=$(get_ovnkube_zone_db_ep)
++  ovnkube_db_ep=$(get_ovnkube_zone_db_ep sb)
+   echo "=============== setting ${ovnkube_db_ep} endpoints to ${ips[@]}"
+   # create a new endpoint for the headless onvkube-db service without selectors
+   kubectl --server=${K8S_APISERVER} --token=${k8s_token} --certificate-authority=${K8S_CACERT} apply -f - <<EOF
+@@ -779,12 +814,20 @@ function get_node_zone() {
+ }
+ 
+ function get_ovnkube_zone_db_ep() {
+-  zone=$(get_node_zone)
+-  if [ "$zone" == "global" ]; then
+-      echo "ovnkube-db"
++  local db=$1
++
++  if [ "$db" == "nb" ]; then
++      ep="${ovn_kubernetes_nb_statefulset}"
+   else
+-      echo "ovnkube-db-$zone"
++      ep="${ovn_kubernetes_sb_statefulset}"
+   fi
++
++  zone=$(get_node_zone)
++  if [ "$zone" != "global" ]; then
++      ep="${ep}-${zone}"
++  fi
++
++  echo "${ep}"
+ }
+ 
+ # v3 - run nb_ovsdb in a separate container
+-- 
+2.42.0
+
diff --git a/images/ovn/patches/ovn-kubernetes/0003-chore-bump-golang.org-x-crypto-for-security.patch b/images/ovn/patches/ovn-kubernetes/0003-chore-bump-golang.org-x-crypto-for-security.patch
new file mode 100644
index 0000000..66e0b00
--- /dev/null
+++ b/images/ovn/patches/ovn-kubernetes/0003-chore-bump-golang.org-x-crypto-for-security.patch
@@ -0,0 +1,6184 @@
+From 6d47afb26fb1bb1e6d5668f336ee292ad48954f3 Mon Sep 17 00:00:00 2001
+From: Mohammed Naser <mnaser@vexxhost.com>
+Date: Sun, 4 Feb 2024 02:22:36 -0500
+Subject: [PATCH] chore: bump golang.org/x/crypto for security
+
+---
+ go-controller/go.mod                          |  8 +-
+ go-controller/go.sum                          | 16 ++--
+ .../golang.org/x/sys/execabs/execabs_go118.go |  1 -
+ .../golang.org/x/sys/execabs/execabs_go119.go |  1 -
+ .../golang.org/x/sys/plan9/pwd_go15_plan9.go  |  1 -
+ .../golang.org/x/sys/plan9/pwd_plan9.go       |  1 -
+ .../vendor/golang.org/x/sys/plan9/race.go     |  1 -
+ .../vendor/golang.org/x/sys/plan9/race0.go    |  1 -
+ .../vendor/golang.org/x/sys/plan9/str.go      |  1 -
+ .../vendor/golang.org/x/sys/plan9/syscall.go  |  1 -
+ .../x/sys/plan9/zsyscall_plan9_386.go         |  1 -
+ .../x/sys/plan9/zsyscall_plan9_amd64.go       |  1 -
+ .../x/sys/plan9/zsyscall_plan9_arm.go         |  1 -
+ .../vendor/golang.org/x/sys/unix/aliases.go   |  2 -
+ .../golang.org/x/sys/unix/asm_aix_ppc64.s     |  1 -
+ .../golang.org/x/sys/unix/asm_bsd_386.s       |  2 -
+ .../golang.org/x/sys/unix/asm_bsd_amd64.s     |  2 -
+ .../golang.org/x/sys/unix/asm_bsd_arm.s       |  2 -
+ .../golang.org/x/sys/unix/asm_bsd_arm64.s     |  2 -
+ .../golang.org/x/sys/unix/asm_bsd_ppc64.s     |  2 -
+ .../golang.org/x/sys/unix/asm_bsd_riscv64.s   |  2 -
+ .../golang.org/x/sys/unix/asm_linux_386.s     |  1 -
+ .../golang.org/x/sys/unix/asm_linux_amd64.s   |  1 -
+ .../golang.org/x/sys/unix/asm_linux_arm.s     |  1 -
+ .../golang.org/x/sys/unix/asm_linux_arm64.s   |  3 -
+ .../golang.org/x/sys/unix/asm_linux_loong64.s |  3 -
+ .../golang.org/x/sys/unix/asm_linux_mips64x.s |  3 -
+ .../golang.org/x/sys/unix/asm_linux_mipsx.s   |  3 -
+ .../golang.org/x/sys/unix/asm_linux_ppc64x.s  |  3 -
+ .../golang.org/x/sys/unix/asm_linux_riscv64.s |  2 -
+ .../golang.org/x/sys/unix/asm_linux_s390x.s   |  3 -
+ .../x/sys/unix/asm_openbsd_mips64.s           |  1 -
+ .../golang.org/x/sys/unix/asm_solaris_amd64.s |  1 -
+ .../golang.org/x/sys/unix/asm_zos_s390x.s     |  3 -
+ .../golang.org/x/sys/unix/cap_freebsd.go      |  1 -
+ .../vendor/golang.org/x/sys/unix/constants.go |  1 -
+ .../golang.org/x/sys/unix/dev_aix_ppc.go      |  1 -
+ .../golang.org/x/sys/unix/dev_aix_ppc64.go    |  1 -
+ .../vendor/golang.org/x/sys/unix/dev_zos.go   |  1 -
+ .../vendor/golang.org/x/sys/unix/dirent.go    |  1 -
+ .../golang.org/x/sys/unix/endian_big.go       |  1 -
+ .../golang.org/x/sys/unix/endian_little.go    |  1 -
+ .../vendor/golang.org/x/sys/unix/env_unix.go  |  1 -
+ .../vendor/golang.org/x/sys/unix/epoll_zos.go |  1 -
+ .../vendor/golang.org/x/sys/unix/fcntl.go     |  3 +-
+ .../x/sys/unix/fcntl_linux_32bit.go           |  1 -
+ .../vendor/golang.org/x/sys/unix/fdset.go     |  1 -
+ .../golang.org/x/sys/unix/fstatfs_zos.go      |  1 -
+ .../vendor/golang.org/x/sys/unix/gccgo.go     |  1 -
+ .../vendor/golang.org/x/sys/unix/gccgo_c.c    |  1 -
+ .../x/sys/unix/gccgo_linux_amd64.go           |  1 -
+ .../golang.org/x/sys/unix/ifreq_linux.go      |  1 -
+ .../golang.org/x/sys/unix/ioctl_linux.go      |  5 +
+ .../golang.org/x/sys/unix/ioctl_signed.go     |  1 -
+ .../golang.org/x/sys/unix/ioctl_unsigned.go   |  1 -
+ .../vendor/golang.org/x/sys/unix/ioctl_zos.go |  1 -
+ .../vendor/golang.org/x/sys/unix/mkerrors.sh  |  4 +-
+ .../golang.org/x/sys/unix/mmap_nomremap.go    |  1 -
+ .../vendor/golang.org/x/sys/unix/mremap.go    |  1 -
+ .../golang.org/x/sys/unix/pagesize_unix.go    |  1 -
+ .../golang.org/x/sys/unix/pledge_openbsd.go   | 92 ++++---------------
+ .../golang.org/x/sys/unix/ptrace_darwin.go    |  1 -
+ .../golang.org/x/sys/unix/ptrace_ios.go       |  1 -
+ .../vendor/golang.org/x/sys/unix/race.go      |  1 -
+ .../vendor/golang.org/x/sys/unix/race0.go     |  1 -
+ .../x/sys/unix/readdirent_getdents.go         |  1 -
+ .../x/sys/unix/readdirent_getdirentries.go    |  1 -
+ .../golang.org/x/sys/unix/sockcmsg_unix.go    |  1 -
+ .../x/sys/unix/sockcmsg_unix_other.go         |  1 -
+ .../vendor/golang.org/x/sys/unix/syscall.go   |  1 -
+ .../golang.org/x/sys/unix/syscall_aix.go      |  4 +-
+ .../golang.org/x/sys/unix/syscall_aix_ppc.go  |  1 -
+ .../x/sys/unix/syscall_aix_ppc64.go           |  1 -
+ .../golang.org/x/sys/unix/syscall_bsd.go      |  3 +-
+ .../x/sys/unix/syscall_darwin_amd64.go        |  1 -
+ .../x/sys/unix/syscall_darwin_arm64.go        |  1 -
+ .../x/sys/unix/syscall_darwin_libSystem.go    |  1 -
+ .../x/sys/unix/syscall_dragonfly_amd64.go     |  1 -
+ .../x/sys/unix/syscall_freebsd_386.go         |  1 -
+ .../x/sys/unix/syscall_freebsd_amd64.go       |  1 -
+ .../x/sys/unix/syscall_freebsd_arm.go         |  1 -
+ .../x/sys/unix/syscall_freebsd_arm64.go       |  1 -
+ .../x/sys/unix/syscall_freebsd_riscv64.go     |  1 -
+ .../golang.org/x/sys/unix/syscall_hurd.go     |  1 -
+ .../golang.org/x/sys/unix/syscall_hurd_386.go |  1 -
+ .../golang.org/x/sys/unix/syscall_illumos.go  |  1 -
+ .../golang.org/x/sys/unix/syscall_linux.go    | 33 ++++---
+ .../x/sys/unix/syscall_linux_386.go           |  1 -
+ .../x/sys/unix/syscall_linux_alarm.go         |  2 -
+ .../x/sys/unix/syscall_linux_amd64.go         |  1 -
+ .../x/sys/unix/syscall_linux_amd64_gc.go      |  1 -
+ .../x/sys/unix/syscall_linux_arm.go           |  1 -
+ .../x/sys/unix/syscall_linux_arm64.go         |  1 -
+ .../golang.org/x/sys/unix/syscall_linux_gc.go |  1 -
+ .../x/sys/unix/syscall_linux_gc_386.go        |  1 -
+ .../x/sys/unix/syscall_linux_gc_arm.go        |  1 -
+ .../x/sys/unix/syscall_linux_gccgo_386.go     |  1 -
+ .../x/sys/unix/syscall_linux_gccgo_arm.go     |  1 -
+ .../x/sys/unix/syscall_linux_loong64.go       |  1 -
+ .../x/sys/unix/syscall_linux_mips64x.go       |  2 -
+ .../x/sys/unix/syscall_linux_mipsx.go         |  2 -
+ .../x/sys/unix/syscall_linux_ppc.go           |  1 -
+ .../x/sys/unix/syscall_linux_ppc64x.go        |  2 -
+ .../x/sys/unix/syscall_linux_riscv64.go       |  1 -
+ .../x/sys/unix/syscall_linux_s390x.go         |  1 -
+ .../x/sys/unix/syscall_linux_sparc64.go       |  1 -
+ .../x/sys/unix/syscall_netbsd_386.go          |  1 -
+ .../x/sys/unix/syscall_netbsd_amd64.go        |  1 -
+ .../x/sys/unix/syscall_netbsd_arm.go          |  1 -
+ .../x/sys/unix/syscall_netbsd_arm64.go        |  1 -
+ .../golang.org/x/sys/unix/syscall_openbsd.go  | 28 ++++--
+ .../x/sys/unix/syscall_openbsd_386.go         |  1 -
+ .../x/sys/unix/syscall_openbsd_amd64.go       |  1 -
+ .../x/sys/unix/syscall_openbsd_arm.go         |  1 -
+ .../x/sys/unix/syscall_openbsd_arm64.go       |  1 -
+ .../x/sys/unix/syscall_openbsd_libc.go        |  1 -
+ .../x/sys/unix/syscall_openbsd_ppc64.go       |  1 -
+ .../x/sys/unix/syscall_openbsd_riscv64.go     |  1 -
+ .../golang.org/x/sys/unix/syscall_solaris.go  |  5 +-
+ .../x/sys/unix/syscall_solaris_amd64.go       |  1 -
+ .../golang.org/x/sys/unix/syscall_unix.go     |  1 -
+ .../golang.org/x/sys/unix/syscall_unix_gc.go  |  2 -
+ .../x/sys/unix/syscall_unix_gc_ppc64x.go      |  3 -
+ .../x/sys/unix/syscall_zos_s390x.go           |  3 +-
+ .../golang.org/x/sys/unix/sysvshm_linux.go    |  1 -
+ .../golang.org/x/sys/unix/sysvshm_unix.go     |  1 -
+ .../x/sys/unix/sysvshm_unix_other.go          |  1 -
+ .../golang.org/x/sys/unix/timestruct.go       |  1 -
+ .../golang.org/x/sys/unix/unveil_openbsd.go   | 41 +++++----
+ .../vendor/golang.org/x/sys/unix/xattr_bsd.go |  1 -
+ .../golang.org/x/sys/unix/zerrors_aix_ppc.go  |  1 -
+ .../x/sys/unix/zerrors_aix_ppc64.go           |  1 -
+ .../x/sys/unix/zerrors_darwin_amd64.go        |  1 -
+ .../x/sys/unix/zerrors_darwin_arm64.go        |  1 -
+ .../x/sys/unix/zerrors_dragonfly_amd64.go     |  1 -
+ .../x/sys/unix/zerrors_freebsd_386.go         |  1 -
+ .../x/sys/unix/zerrors_freebsd_amd64.go       |  1 -
+ .../x/sys/unix/zerrors_freebsd_arm.go         |  1 -
+ .../x/sys/unix/zerrors_freebsd_arm64.go       |  1 -
+ .../x/sys/unix/zerrors_freebsd_riscv64.go     |  1 -
+ .../golang.org/x/sys/unix/zerrors_linux.go    | 14 ++-
+ .../x/sys/unix/zerrors_linux_386.go           |  1 -
+ .../x/sys/unix/zerrors_linux_amd64.go         |  1 -
+ .../x/sys/unix/zerrors_linux_arm.go           |  1 -
+ .../x/sys/unix/zerrors_linux_arm64.go         |  1 -
+ .../x/sys/unix/zerrors_linux_loong64.go       |  2 +-
+ .../x/sys/unix/zerrors_linux_mips.go          |  1 -
+ .../x/sys/unix/zerrors_linux_mips64.go        |  1 -
+ .../x/sys/unix/zerrors_linux_mips64le.go      |  1 -
+ .../x/sys/unix/zerrors_linux_mipsle.go        |  1 -
+ .../x/sys/unix/zerrors_linux_ppc.go           |  1 -
+ .../x/sys/unix/zerrors_linux_ppc64.go         |  1 -
+ .../x/sys/unix/zerrors_linux_ppc64le.go       |  1 -
+ .../x/sys/unix/zerrors_linux_riscv64.go       |  4 +-
+ .../x/sys/unix/zerrors_linux_s390x.go         |  1 -
+ .../x/sys/unix/zerrors_linux_sparc64.go       |  1 -
+ .../x/sys/unix/zerrors_netbsd_386.go          |  1 -
+ .../x/sys/unix/zerrors_netbsd_amd64.go        |  1 -
+ .../x/sys/unix/zerrors_netbsd_arm.go          |  1 -
+ .../x/sys/unix/zerrors_netbsd_arm64.go        |  1 -
+ .../x/sys/unix/zerrors_openbsd_386.go         |  1 -
+ .../x/sys/unix/zerrors_openbsd_amd64.go       |  1 -
+ .../x/sys/unix/zerrors_openbsd_arm.go         |  1 -
+ .../x/sys/unix/zerrors_openbsd_arm64.go       |  1 -
+ .../x/sys/unix/zerrors_openbsd_mips64.go      |  1 -
+ .../x/sys/unix/zerrors_openbsd_ppc64.go       |  1 -
+ .../x/sys/unix/zerrors_openbsd_riscv64.go     |  1 -
+ .../x/sys/unix/zerrors_solaris_amd64.go       |  1 -
+ .../x/sys/unix/zerrors_zos_s390x.go           |  1 -
+ .../x/sys/unix/zptrace_armnn_linux.go         |  2 -
+ .../x/sys/unix/zptrace_mipsnn_linux.go        |  2 -
+ .../x/sys/unix/zptrace_mipsnnle_linux.go      |  2 -
+ .../x/sys/unix/zptrace_x86_linux.go           |  2 -
+ .../golang.org/x/sys/unix/zsyscall_aix_ppc.go |  1 -
+ .../x/sys/unix/zsyscall_aix_ppc64.go          |  1 -
+ .../x/sys/unix/zsyscall_aix_ppc64_gc.go       |  1 -
+ .../x/sys/unix/zsyscall_aix_ppc64_gccgo.go    |  1 -
+ .../x/sys/unix/zsyscall_darwin_amd64.go       |  1 -
+ .../x/sys/unix/zsyscall_darwin_arm64.go       |  1 -
+ .../x/sys/unix/zsyscall_dragonfly_amd64.go    |  1 -
+ .../x/sys/unix/zsyscall_freebsd_386.go        |  1 -
+ .../x/sys/unix/zsyscall_freebsd_amd64.go      |  1 -
+ .../x/sys/unix/zsyscall_freebsd_arm.go        |  1 -
+ .../x/sys/unix/zsyscall_freebsd_arm64.go      |  1 -
+ .../x/sys/unix/zsyscall_freebsd_riscv64.go    |  1 -
+ .../x/sys/unix/zsyscall_illumos_amd64.go      |  1 -
+ .../golang.org/x/sys/unix/zsyscall_linux.go   | 26 +++++-
+ .../x/sys/unix/zsyscall_linux_386.go          |  1 -
+ .../x/sys/unix/zsyscall_linux_amd64.go        |  1 -
+ .../x/sys/unix/zsyscall_linux_arm.go          |  1 -
+ .../x/sys/unix/zsyscall_linux_arm64.go        |  1 -
+ .../x/sys/unix/zsyscall_linux_loong64.go      |  1 -
+ .../x/sys/unix/zsyscall_linux_mips.go         |  1 -
+ .../x/sys/unix/zsyscall_linux_mips64.go       |  1 -
+ .../x/sys/unix/zsyscall_linux_mips64le.go     |  1 -
+ .../x/sys/unix/zsyscall_linux_mipsle.go       |  1 -
+ .../x/sys/unix/zsyscall_linux_ppc.go          |  1 -
+ .../x/sys/unix/zsyscall_linux_ppc64.go        |  1 -
+ .../x/sys/unix/zsyscall_linux_ppc64le.go      |  1 -
+ .../x/sys/unix/zsyscall_linux_riscv64.go      |  1 -
+ .../x/sys/unix/zsyscall_linux_s390x.go        |  1 -
+ .../x/sys/unix/zsyscall_linux_sparc64.go      |  1 -
+ .../x/sys/unix/zsyscall_netbsd_386.go         |  1 -
+ .../x/sys/unix/zsyscall_netbsd_amd64.go       |  1 -
+ .../x/sys/unix/zsyscall_netbsd_arm.go         |  1 -
+ .../x/sys/unix/zsyscall_netbsd_arm64.go       |  1 -
+ .../x/sys/unix/zsyscall_openbsd_386.go        | 72 ++++++++++++++-
+ .../x/sys/unix/zsyscall_openbsd_386.s         | 20 ++++
+ .../x/sys/unix/zsyscall_openbsd_amd64.go      | 72 ++++++++++++++-
+ .../x/sys/unix/zsyscall_openbsd_amd64.s       | 20 ++++
+ .../x/sys/unix/zsyscall_openbsd_arm.go        | 72 ++++++++++++++-
+ .../x/sys/unix/zsyscall_openbsd_arm.s         | 20 ++++
+ .../x/sys/unix/zsyscall_openbsd_arm64.go      | 72 ++++++++++++++-
+ .../x/sys/unix/zsyscall_openbsd_arm64.s       | 20 ++++
+ .../x/sys/unix/zsyscall_openbsd_mips64.go     | 72 ++++++++++++++-
+ .../x/sys/unix/zsyscall_openbsd_mips64.s      | 20 ++++
+ .../x/sys/unix/zsyscall_openbsd_ppc64.go      | 72 ++++++++++++++-
+ .../x/sys/unix/zsyscall_openbsd_ppc64.s       | 24 +++++
+ .../x/sys/unix/zsyscall_openbsd_riscv64.go    | 72 ++++++++++++++-
+ .../x/sys/unix/zsyscall_openbsd_riscv64.s     | 20 ++++
+ .../x/sys/unix/zsyscall_solaris_amd64.go      |  1 -
+ .../x/sys/unix/zsyscall_zos_s390x.go          |  1 -
+ .../x/sys/unix/zsysctl_openbsd_386.go         |  1 -
+ .../x/sys/unix/zsysctl_openbsd_amd64.go       |  1 -
+ .../x/sys/unix/zsysctl_openbsd_arm.go         |  1 -
+ .../x/sys/unix/zsysctl_openbsd_arm64.go       |  1 -
+ .../x/sys/unix/zsysctl_openbsd_mips64.go      |  1 -
+ .../x/sys/unix/zsysctl_openbsd_ppc64.go       |  1 -
+ .../x/sys/unix/zsysctl_openbsd_riscv64.go     |  1 -
+ .../x/sys/unix/zsysnum_darwin_amd64.go        |  1 -
+ .../x/sys/unix/zsysnum_darwin_arm64.go        |  1 -
+ .../x/sys/unix/zsysnum_dragonfly_amd64.go     |  1 -
+ .../x/sys/unix/zsysnum_freebsd_386.go         |  1 -
+ .../x/sys/unix/zsysnum_freebsd_amd64.go       |  1 -
+ .../x/sys/unix/zsysnum_freebsd_arm.go         |  1 -
+ .../x/sys/unix/zsysnum_freebsd_arm64.go       |  1 -
+ .../x/sys/unix/zsysnum_freebsd_riscv64.go     |  1 -
+ .../x/sys/unix/zsysnum_linux_386.go           |  2 +-
+ .../x/sys/unix/zsysnum_linux_amd64.go         |  3 +-
+ .../x/sys/unix/zsysnum_linux_arm.go           |  2 +-
+ .../x/sys/unix/zsysnum_linux_arm64.go         |  2 +-
+ .../x/sys/unix/zsysnum_linux_loong64.go       |  2 +-
+ .../x/sys/unix/zsysnum_linux_mips.go          |  2 +-
+ .../x/sys/unix/zsysnum_linux_mips64.go        |  2 +-
+ .../x/sys/unix/zsysnum_linux_mips64le.go      |  2 +-
+ .../x/sys/unix/zsysnum_linux_mipsle.go        |  2 +-
+ .../x/sys/unix/zsysnum_linux_ppc.go           |  2 +-
+ .../x/sys/unix/zsysnum_linux_ppc64.go         |  2 +-
+ .../x/sys/unix/zsysnum_linux_ppc64le.go       |  2 +-
+ .../x/sys/unix/zsysnum_linux_riscv64.go       |  2 +-
+ .../x/sys/unix/zsysnum_linux_s390x.go         |  2 +-
+ .../x/sys/unix/zsysnum_linux_sparc64.go       |  2 +-
+ .../x/sys/unix/zsysnum_netbsd_386.go          |  1 -
+ .../x/sys/unix/zsysnum_netbsd_amd64.go        |  1 -
+ .../x/sys/unix/zsysnum_netbsd_arm.go          |  1 -
+ .../x/sys/unix/zsysnum_netbsd_arm64.go        |  1 -
+ .../x/sys/unix/zsysnum_openbsd_386.go         |  1 -
+ .../x/sys/unix/zsysnum_openbsd_amd64.go       |  1 -
+ .../x/sys/unix/zsysnum_openbsd_arm.go         |  1 -
+ .../x/sys/unix/zsysnum_openbsd_arm64.go       |  1 -
+ .../x/sys/unix/zsysnum_openbsd_mips64.go      |  1 -
+ .../x/sys/unix/zsysnum_openbsd_ppc64.go       |  1 -
+ .../x/sys/unix/zsysnum_openbsd_riscv64.go     |  1 -
+ .../x/sys/unix/zsysnum_zos_s390x.go           |  1 -
+ .../golang.org/x/sys/unix/ztypes_aix_ppc.go   |  1 -
+ .../golang.org/x/sys/unix/ztypes_aix_ppc64.go |  1 -
+ .../x/sys/unix/ztypes_darwin_amd64.go         |  1 -
+ .../x/sys/unix/ztypes_darwin_arm64.go         |  1 -
+ .../x/sys/unix/ztypes_dragonfly_amd64.go      |  1 -
+ .../x/sys/unix/ztypes_freebsd_386.go          |  1 -
+ .../x/sys/unix/ztypes_freebsd_amd64.go        |  1 -
+ .../x/sys/unix/ztypes_freebsd_arm.go          |  1 -
+ .../x/sys/unix/ztypes_freebsd_arm64.go        |  1 -
+ .../x/sys/unix/ztypes_freebsd_riscv64.go      |  1 -
+ .../golang.org/x/sys/unix/ztypes_linux.go     | 45 ++++++++-
+ .../golang.org/x/sys/unix/ztypes_linux_386.go |  1 -
+ .../x/sys/unix/ztypes_linux_amd64.go          |  1 -
+ .../golang.org/x/sys/unix/ztypes_linux_arm.go |  1 -
+ .../x/sys/unix/ztypes_linux_arm64.go          |  1 -
+ .../x/sys/unix/ztypes_linux_loong64.go        |  1 -
+ .../x/sys/unix/ztypes_linux_mips.go           |  1 -
+ .../x/sys/unix/ztypes_linux_mips64.go         |  1 -
+ .../x/sys/unix/ztypes_linux_mips64le.go       |  1 -
+ .../x/sys/unix/ztypes_linux_mipsle.go         |  1 -
+ .../golang.org/x/sys/unix/ztypes_linux_ppc.go |  1 -
+ .../x/sys/unix/ztypes_linux_ppc64.go          |  1 -
+ .../x/sys/unix/ztypes_linux_ppc64le.go        |  1 -
+ .../x/sys/unix/ztypes_linux_riscv64.go        |  1 -
+ .../x/sys/unix/ztypes_linux_s390x.go          |  1 -
+ .../x/sys/unix/ztypes_linux_sparc64.go        |  1 -
+ .../x/sys/unix/ztypes_netbsd_386.go           |  1 -
+ .../x/sys/unix/ztypes_netbsd_amd64.go         |  1 -
+ .../x/sys/unix/ztypes_netbsd_arm.go           |  1 -
+ .../x/sys/unix/ztypes_netbsd_arm64.go         |  1 -
+ .../x/sys/unix/ztypes_openbsd_386.go          |  1 -
+ .../x/sys/unix/ztypes_openbsd_amd64.go        |  1 -
+ .../x/sys/unix/ztypes_openbsd_arm.go          |  1 -
+ .../x/sys/unix/ztypes_openbsd_arm64.go        |  1 -
+ .../x/sys/unix/ztypes_openbsd_mips64.go       |  1 -
+ .../x/sys/unix/ztypes_openbsd_ppc64.go        |  1 -
+ .../x/sys/unix/ztypes_openbsd_riscv64.go      |  1 -
+ .../x/sys/unix/ztypes_solaris_amd64.go        |  1 -
+ .../golang.org/x/sys/unix/ztypes_zos_s390x.go |  1 -
+ .../golang.org/x/sys/windows/aliases.go       |  1 -
+ .../vendor/golang.org/x/sys/windows/empty.s   |  1 -
+ .../golang.org/x/sys/windows/eventlog.go      |  1 -
+ .../golang.org/x/sys/windows/mksyscall.go     |  1 -
+ .../vendor/golang.org/x/sys/windows/race.go   |  1 -
+ .../vendor/golang.org/x/sys/windows/race0.go  |  1 -
+ .../golang.org/x/sys/windows/registry/key.go  |  1 -
+ .../x/sys/windows/registry/mksyscall.go       |  1 -
+ .../x/sys/windows/registry/syscall.go         |  1 -
+ .../x/sys/windows/registry/value.go           |  1 -
+ .../golang.org/x/sys/windows/service.go       |  1 -
+ .../vendor/golang.org/x/sys/windows/str.go    |  1 -
+ .../golang.org/x/sys/windows/svc/security.go  |  1 -
+ .../golang.org/x/sys/windows/svc/service.go   |  1 -
+ .../golang.org/x/sys/windows/syscall.go       |  1 -
+ .../x/sys/windows/syscall_windows.go          |  6 +-
+ .../golang.org/x/sys/windows/types_windows.go | 28 +++++-
+ .../x/sys/windows/zsyscall_windows.go         | 28 ++++++
+ .../vendor/golang.org/x/term/term_unix.go     |  1 -
+ .../vendor/golang.org/x/term/term_unix_bsd.go |  1 -
+ .../golang.org/x/term/term_unix_other.go      |  1 -
+ .../golang.org/x/term/term_unsupported.go     |  1 -
+ .../x/text/secure/bidirule/bidirule10.0.0.go  |  1 -
+ .../x/text/secure/bidirule/bidirule9.0.0.go   |  1 -
+ .../x/text/unicode/bidi/tables10.0.0.go       |  1 -
+ .../x/text/unicode/bidi/tables11.0.0.go       |  1 -
+ .../x/text/unicode/bidi/tables12.0.0.go       |  1 -
+ .../x/text/unicode/bidi/tables13.0.0.go       |  1 -
+ .../x/text/unicode/bidi/tables15.0.0.go       |  1 -
+ .../x/text/unicode/bidi/tables9.0.0.go        |  1 -
+ .../x/text/unicode/norm/tables10.0.0.go       |  1 -
+ .../x/text/unicode/norm/tables11.0.0.go       |  1 -
+ .../x/text/unicode/norm/tables12.0.0.go       |  1 -
+ .../x/text/unicode/norm/tables13.0.0.go       |  1 -
+ .../x/text/unicode/norm/tables15.0.0.go       |  1 -
+ .../x/text/unicode/norm/tables9.0.0.go        |  1 -
+ .../k8s.io/client-go/informers/factory.go     | 10 --
+ go-controller/vendor/modules.txt              | 16 ++--
+ 341 files changed, 924 insertions(+), 501 deletions(-)
+
+diff --git a/go-controller/go.mod b/go-controller/go.mod
+index e3c730420..394778ac7 100644
+--- a/go-controller/go.mod
++++ b/go-controller/go.mod
+@@ -41,7 +41,7 @@ require (
+ 	golang.org/x/exp v0.0.0-20230811145659-89c5cff77bcb
+ 	golang.org/x/net v0.17.0
+ 	golang.org/x/sync v0.2.0
+-	golang.org/x/sys v0.13.0
++	golang.org/x/sys v0.15.0
+ 	golang.org/x/time v0.3.0
+ 	google.golang.org/grpc v1.56.3
+ 	google.golang.org/protobuf v1.30.0
+@@ -105,11 +105,11 @@ require (
+ 	github.com/stretchr/objx v0.5.0 // indirect
+ 	github.com/vishvananda/netns v0.0.4 // indirect
+ 	go.opencensus.io v0.24.0 // indirect
+-	golang.org/x/crypto v0.14.0 // indirect
++	golang.org/x/crypto v0.17.0 // indirect
+ 	golang.org/x/mod v0.11.0 // indirect
+ 	golang.org/x/oauth2 v0.8.0 // indirect
+-	golang.org/x/term v0.13.0 // indirect
+-	golang.org/x/text v0.13.0 // indirect
++	golang.org/x/term v0.15.0 // indirect
++	golang.org/x/text v0.14.0 // indirect
+ 	golang.org/x/tools v0.9.1 // indirect
+ 	gomodules.xyz/jsonpatch/v2 v2.3.0 // indirect
+ 	google.golang.org/appengine v1.6.7 // indirect
+diff --git a/go-controller/go.sum b/go-controller/go.sum
+index da8817fbb..a3818d28a 100644
+--- a/go-controller/go.sum
++++ b/go-controller/go.sum
+@@ -811,8 +811,8 @@ golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPh
+ golang.org/x/crypto v0.0.0-20210322153248-0c34fe9e7dc2/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4=
+ golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4=
+ golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
+-golang.org/x/crypto v0.14.0 h1:wBqGXzWJW6m1XrIKlAH0Hs1JJ7+9KBwnIO8v66Q9cHc=
+-golang.org/x/crypto v0.14.0/go.mod h1:MVFd36DqK4CsrnJYDkBA3VC4m2GkXAM0PvzMCn4JQf4=
++golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k=
++golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
+ golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
+ golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
+ golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8=
+@@ -1022,12 +1022,12 @@ golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBc
+ golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+ golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+ golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+-golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE=
+-golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
++golang.org/x/sys v0.15.0 h1:h48lPFYpsTvQJZF4EKyI4aLHaev3CxivZmv7yZig9pc=
++golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+ golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
+ golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
+-golang.org/x/term v0.13.0 h1:bb+I9cTfFazGW51MZqBVmZy7+JEJMouUHTUSKVQLBek=
+-golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U=
++golang.org/x/term v0.15.0 h1:y/Oo/a/q3IXu26lQgl04j/gjuBDOBlx7X6Om1j2CPW4=
++golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0=
+ golang.org/x/text v0.0.0-20160726164857-2910a502d2bf/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
+ golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
+ golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
+@@ -1038,8 +1038,8 @@ golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
+ golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
+ golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
+ golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
+-golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k=
+-golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
++golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
++golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
+ golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
+ golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
+ golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
+diff --git a/go-controller/vendor/golang.org/x/sys/execabs/execabs_go118.go b/go-controller/vendor/golang.org/x/sys/execabs/execabs_go118.go
+index 2000064a8..5627d70e3 100644
+--- a/go-controller/vendor/golang.org/x/sys/execabs/execabs_go118.go
++++ b/go-controller/vendor/golang.org/x/sys/execabs/execabs_go118.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build !go1.19
+-// +build !go1.19
+ 
+ package execabs
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/execabs/execabs_go119.go b/go-controller/vendor/golang.org/x/sys/execabs/execabs_go119.go
+index f364b3418..d60ab1b41 100644
+--- a/go-controller/vendor/golang.org/x/sys/execabs/execabs_go119.go
++++ b/go-controller/vendor/golang.org/x/sys/execabs/execabs_go119.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build go1.19
+-// +build go1.19
+ 
+ package execabs
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/plan9/pwd_go15_plan9.go b/go-controller/vendor/golang.org/x/sys/plan9/pwd_go15_plan9.go
+index c9b69937a..73687de74 100644
+--- a/go-controller/vendor/golang.org/x/sys/plan9/pwd_go15_plan9.go
++++ b/go-controller/vendor/golang.org/x/sys/plan9/pwd_go15_plan9.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build go1.5
+-// +build go1.5
+ 
+ package plan9
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/plan9/pwd_plan9.go b/go-controller/vendor/golang.org/x/sys/plan9/pwd_plan9.go
+index 98bf56b73..fb9458218 100644
+--- a/go-controller/vendor/golang.org/x/sys/plan9/pwd_plan9.go
++++ b/go-controller/vendor/golang.org/x/sys/plan9/pwd_plan9.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build !go1.5
+-// +build !go1.5
+ 
+ package plan9
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/plan9/race.go b/go-controller/vendor/golang.org/x/sys/plan9/race.go
+index 62377d2ff..c02d9ed33 100644
+--- a/go-controller/vendor/golang.org/x/sys/plan9/race.go
++++ b/go-controller/vendor/golang.org/x/sys/plan9/race.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build plan9 && race
+-// +build plan9,race
+ 
+ package plan9
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/plan9/race0.go b/go-controller/vendor/golang.org/x/sys/plan9/race0.go
+index f8da30876..7b15e15f6 100644
+--- a/go-controller/vendor/golang.org/x/sys/plan9/race0.go
++++ b/go-controller/vendor/golang.org/x/sys/plan9/race0.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build plan9 && !race
+-// +build plan9,!race
+ 
+ package plan9
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/plan9/str.go b/go-controller/vendor/golang.org/x/sys/plan9/str.go
+index 55fa8d025..ba3e8ff8a 100644
+--- a/go-controller/vendor/golang.org/x/sys/plan9/str.go
++++ b/go-controller/vendor/golang.org/x/sys/plan9/str.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build plan9
+-// +build plan9
+ 
+ package plan9
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/plan9/syscall.go b/go-controller/vendor/golang.org/x/sys/plan9/syscall.go
+index 67e5b0115..d631fd664 100644
+--- a/go-controller/vendor/golang.org/x/sys/plan9/syscall.go
++++ b/go-controller/vendor/golang.org/x/sys/plan9/syscall.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build plan9
+-// +build plan9
+ 
+ // Package plan9 contains an interface to the low-level operating system
+ // primitives. OS details vary depending on the underlying system, and
+diff --git a/go-controller/vendor/golang.org/x/sys/plan9/zsyscall_plan9_386.go b/go-controller/vendor/golang.org/x/sys/plan9/zsyscall_plan9_386.go
+index 3f40b9bd7..f780d5c80 100644
+--- a/go-controller/vendor/golang.org/x/sys/plan9/zsyscall_plan9_386.go
++++ b/go-controller/vendor/golang.org/x/sys/plan9/zsyscall_plan9_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build plan9 && 386
+-// +build plan9,386
+ 
+ package plan9
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/plan9/zsyscall_plan9_amd64.go b/go-controller/vendor/golang.org/x/sys/plan9/zsyscall_plan9_amd64.go
+index 0e6a96aa4..7de61065f 100644
+--- a/go-controller/vendor/golang.org/x/sys/plan9/zsyscall_plan9_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/plan9/zsyscall_plan9_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build plan9 && amd64
+-// +build plan9,amd64
+ 
+ package plan9
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/plan9/zsyscall_plan9_arm.go b/go-controller/vendor/golang.org/x/sys/plan9/zsyscall_plan9_arm.go
+index 244c501b7..ea85780f0 100644
+--- a/go-controller/vendor/golang.org/x/sys/plan9/zsyscall_plan9_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/plan9/zsyscall_plan9_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build plan9 && arm
+-// +build plan9,arm
+ 
+ package plan9
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/aliases.go b/go-controller/vendor/golang.org/x/sys/unix/aliases.go
+index abc89c104..e7d3df4bd 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/aliases.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/aliases.go
+@@ -3,8 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build (aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos) && go1.9
+-// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos
+-// +build go1.9
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s b/go-controller/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s
+index db9171c2e..269e173ca 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build gc
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_386.s b/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_386.s
+index e0fcd9b3d..a4fcef0e0 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_386.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_386.s
+@@ -3,8 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build (freebsd || netbsd || openbsd) && gc
+-// +build freebsd netbsd openbsd
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_amd64.s b/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_amd64.s
+index 2b99c349a..1e63615c5 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_amd64.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_amd64.s
+@@ -3,8 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build (darwin || dragonfly || freebsd || netbsd || openbsd) && gc
+-// +build darwin dragonfly freebsd netbsd openbsd
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_arm.s b/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_arm.s
+index d702d4adc..6496c3100 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_arm.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_arm.s
+@@ -3,8 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build (freebsd || netbsd || openbsd) && gc
+-// +build freebsd netbsd openbsd
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_arm64.s b/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_arm64.s
+index fe36a7391..4fd1f54da 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_arm64.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_arm64.s
+@@ -3,8 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build (darwin || freebsd || netbsd || openbsd) && gc
+-// +build darwin freebsd netbsd openbsd
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_ppc64.s b/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_ppc64.s
+index e5b9a8489..42f7eb9e4 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_ppc64.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_ppc64.s
+@@ -3,8 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build (darwin || freebsd || netbsd || openbsd) && gc
+-// +build darwin freebsd netbsd openbsd
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_riscv64.s b/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_riscv64.s
+index d560019ea..f8902667e 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_riscv64.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_bsd_riscv64.s
+@@ -3,8 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build (darwin || freebsd || netbsd || openbsd) && gc
+-// +build darwin freebsd netbsd openbsd
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_386.s b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_386.s
+index 8fd101d07..3b4734870 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_386.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_386.s
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build gc
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_amd64.s b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_amd64.s
+index 7ed38e43c..67e29f317 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_amd64.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_amd64.s
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build gc
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_arm.s b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_arm.s
+index 8ef1d5140..d6ae269ce 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_arm.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_arm.s
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build gc
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_arm64.s b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_arm64.s
+index 98ae02760..01e5e253c 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_arm64.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_arm64.s
+@@ -3,9 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux && arm64 && gc
+-// +build linux
+-// +build arm64
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_loong64.s b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_loong64.s
+index 565357288..2abf12f6e 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_loong64.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_loong64.s
+@@ -3,9 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux && loong64 && gc
+-// +build linux
+-// +build loong64
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
+index 21231d2ce..f84bae712 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s
+@@ -3,9 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux && (mips64 || mips64le) && gc
+-// +build linux
+-// +build mips64 mips64le
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s
+index 6783b26c6..f08f62807 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s
+@@ -3,9 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux && (mips || mipsle) && gc
+-// +build linux
+-// +build mips mipsle
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s
+index 19d498934..bdfc024d2 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s
+@@ -3,9 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux && (ppc64 || ppc64le) && gc
+-// +build linux
+-// +build ppc64 ppc64le
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s
+index e42eb81d5..2e8c99612 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s
+@@ -3,8 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build riscv64 && gc
+-// +build riscv64
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_s390x.s b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_s390x.s
+index c46aab339..2c394b11e 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_linux_s390x.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_linux_s390x.s
+@@ -3,9 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux && s390x && gc
+-// +build linux
+-// +build s390x
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s b/go-controller/vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s
+index 5e7a1169c..fab586a2c 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build gc
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s b/go-controller/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s
+index f8c5394c1..f949ec547 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build gc
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/asm_zos_s390x.s b/go-controller/vendor/golang.org/x/sys/unix/asm_zos_s390x.s
+index 3b54e1858..2f67ba86d 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/asm_zos_s390x.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/asm_zos_s390x.s
+@@ -3,9 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build zos && s390x && gc
+-// +build zos
+-// +build s390x
+-// +build gc
+ 
+ #include "textflag.h"
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/cap_freebsd.go b/go-controller/vendor/golang.org/x/sys/unix/cap_freebsd.go
+index 0b7c6adb8..a08657890 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/cap_freebsd.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/cap_freebsd.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build freebsd
+-// +build freebsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/constants.go b/go-controller/vendor/golang.org/x/sys/unix/constants.go
+index 394a3965b..6fb7cb77d 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/constants.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/constants.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos
+-// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/dev_aix_ppc.go b/go-controller/vendor/golang.org/x/sys/unix/dev_aix_ppc.go
+index 65a998508..d78513461 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/dev_aix_ppc.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/dev_aix_ppc.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix && ppc
+-// +build aix,ppc
+ 
+ // Functions to access/create device major and minor numbers matching the
+ // encoding used by AIX.
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/dev_aix_ppc64.go b/go-controller/vendor/golang.org/x/sys/unix/dev_aix_ppc64.go
+index 8fc08ad0a..623a5e697 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/dev_aix_ppc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/dev_aix_ppc64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix && ppc64
+-// +build aix,ppc64
+ 
+ // Functions to access/create device major and minor numbers matching the
+ // encoding used AIX.
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/dev_zos.go b/go-controller/vendor/golang.org/x/sys/unix/dev_zos.go
+index a388e59a0..bb6a64fe9 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/dev_zos.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/dev_zos.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build zos && s390x
+-// +build zos,s390x
+ 
+ // Functions to access/create device major and minor numbers matching the
+ // encoding used by z/OS.
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/dirent.go b/go-controller/vendor/golang.org/x/sys/unix/dirent.go
+index 2499f977b..1ebf11782 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/dirent.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/dirent.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos
+-// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/endian_big.go b/go-controller/vendor/golang.org/x/sys/unix/endian_big.go
+index a52026557..1095fd31d 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/endian_big.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/endian_big.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ //
+ //go:build armbe || arm64be || m68k || mips || mips64 || mips64p32 || ppc || ppc64 || s390 || s390x || shbe || sparc || sparc64
+-// +build armbe arm64be m68k mips mips64 mips64p32 ppc ppc64 s390 s390x shbe sparc sparc64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/endian_little.go b/go-controller/vendor/golang.org/x/sys/unix/endian_little.go
+index b0f2bc4ae..b9f0e277b 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/endian_little.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/endian_little.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ //
+ //go:build 386 || amd64 || amd64p32 || alpha || arm || arm64 || loong64 || mipsle || mips64le || mips64p32le || nios2 || ppc64le || riscv || riscv64 || sh
+-// +build 386 amd64 amd64p32 alpha arm arm64 loong64 mipsle mips64le mips64p32le nios2 ppc64le riscv riscv64 sh
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/env_unix.go b/go-controller/vendor/golang.org/x/sys/unix/env_unix.go
+index 29ccc4d13..a96da71f4 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/env_unix.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/env_unix.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos
+-// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos
+ 
+ // Unix environment variables.
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/epoll_zos.go b/go-controller/vendor/golang.org/x/sys/unix/epoll_zos.go
+index cedaf7e02..7753fddea 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/epoll_zos.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/epoll_zos.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build zos && s390x
+-// +build zos,s390x
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/fcntl.go b/go-controller/vendor/golang.org/x/sys/unix/fcntl.go
+index e9b991258..6200876fb 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/fcntl.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/fcntl.go
+@@ -2,8 +2,7 @@
+ // Use of this source code is governed by a BSD-style
+ // license that can be found in the LICENSE file.
+ 
+-//go:build dragonfly || freebsd || linux || netbsd || openbsd
+-// +build dragonfly freebsd linux netbsd openbsd
++//go:build dragonfly || freebsd || linux || netbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go b/go-controller/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go
+index 29d44808b..13b4acd5c 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build (linux && 386) || (linux && arm) || (linux && mips) || (linux && mipsle) || (linux && ppc)
+-// +build linux,386 linux,arm linux,mips linux,mipsle linux,ppc
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/fdset.go b/go-controller/vendor/golang.org/x/sys/unix/fdset.go
+index a8068f94f..9e83d18cd 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/fdset.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/fdset.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos
+-// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/fstatfs_zos.go b/go-controller/vendor/golang.org/x/sys/unix/fstatfs_zos.go
+index e377cc9f4..c8bde601e 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/fstatfs_zos.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/fstatfs_zos.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build zos && s390x
+-// +build zos,s390x
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/gccgo.go b/go-controller/vendor/golang.org/x/sys/unix/gccgo.go
+index b06f52d74..aca5721dd 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/gccgo.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/gccgo.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build gccgo && !aix && !hurd
+-// +build gccgo,!aix,!hurd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/gccgo_c.c b/go-controller/vendor/golang.org/x/sys/unix/gccgo_c.c
+index f98a1c542..d468b7b47 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/gccgo_c.c
++++ b/go-controller/vendor/golang.org/x/sys/unix/gccgo_c.c
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build gccgo && !aix && !hurd
+-// +build gccgo,!aix,!hurd
+ 
+ #include <errno.h>
+ #include <stdint.h>
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go
+index e60e49a3d..972d61bd7 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build gccgo && linux && amd64
+-// +build gccgo,linux,amd64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ifreq_linux.go b/go-controller/vendor/golang.org/x/sys/unix/ifreq_linux.go
+index 15721a510..848840ae4 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ifreq_linux.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ifreq_linux.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux
+-// +build linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ioctl_linux.go b/go-controller/vendor/golang.org/x/sys/unix/ioctl_linux.go
+index 0d12c0851..dbe680eab 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ioctl_linux.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ioctl_linux.go
+@@ -231,3 +231,8 @@ func IoctlLoopGetStatus64(fd int) (*LoopInfo64, error) {
+ func IoctlLoopSetStatus64(fd int, value *LoopInfo64) error {
+ 	return ioctlPtr(fd, LOOP_SET_STATUS64, unsafe.Pointer(value))
+ }
++
++// IoctlLoopConfigure configures all loop device parameters in a single step
++func IoctlLoopConfigure(fd int, value *LoopConfig) error {
++	return ioctlPtr(fd, LOOP_CONFIGURE, unsafe.Pointer(value))
++}
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ioctl_signed.go b/go-controller/vendor/golang.org/x/sys/unix/ioctl_signed.go
+index 7def9580e..5b0759bd8 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ioctl_signed.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ioctl_signed.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix || solaris
+-// +build aix solaris
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ioctl_unsigned.go b/go-controller/vendor/golang.org/x/sys/unix/ioctl_unsigned.go
+index 649913d1e..20f470b9d 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ioctl_unsigned.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ioctl_unsigned.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build darwin || dragonfly || freebsd || hurd || linux || netbsd || openbsd
+-// +build darwin dragonfly freebsd hurd linux netbsd openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ioctl_zos.go b/go-controller/vendor/golang.org/x/sys/unix/ioctl_zos.go
+index cdc21bf76..c8b2a750f 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ioctl_zos.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ioctl_zos.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build zos && s390x
+-// +build zos,s390x
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/mkerrors.sh b/go-controller/vendor/golang.org/x/sys/unix/mkerrors.sh
+index 47fa6a7eb..6202638ba 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/mkerrors.sh
++++ b/go-controller/vendor/golang.org/x/sys/unix/mkerrors.sh
+@@ -519,6 +519,7 @@ ccflags="$@"
+ 		$2 ~ /^LOCK_(SH|EX|NB|UN)$/ ||
+ 		$2 ~ /^LO_(KEY|NAME)_SIZE$/ ||
+ 		$2 ~ /^LOOP_(CLR|CTL|GET|SET)_/ ||
++		$2 == "LOOP_CONFIGURE" ||
+ 		$2 ~ /^(AF|SOCK|SO|SOL|IPPROTO|IP|IPV6|TCP|MCAST|EVFILT|NOTE|SHUT|PROT|MAP|MREMAP|MFD|T?PACKET|MSG|SCM|MCL|DT|MADV|PR|LOCAL|TCPOPT|UDP)_/ ||
+ 		$2 ~ /^NFC_(GENL|PROTO|COMM|RF|SE|DIRECTION|LLCP|SOCKPROTO)_/ ||
+ 		$2 ~ /^NFC_.*_(MAX)?SIZE$/ ||
+@@ -560,7 +561,7 @@ ccflags="$@"
+ 		$2 ~ /^RLIMIT_(AS|CORE|CPU|DATA|FSIZE|LOCKS|MEMLOCK|MSGQUEUE|NICE|NOFILE|NPROC|RSS|RTPRIO|RTTIME|SIGPENDING|STACK)|RLIM_INFINITY/ ||
+ 		$2 ~ /^PRIO_(PROCESS|PGRP|USER)/ ||
+ 		$2 ~ /^CLONE_[A-Z_]+/ ||
+-		$2 !~ /^(BPF_TIMEVAL|BPF_FIB_LOOKUP_[A-Z]+)$/ &&
++		$2 !~ /^(BPF_TIMEVAL|BPF_FIB_LOOKUP_[A-Z]+|BPF_F_LINK)$/ &&
+ 		$2 ~ /^(BPF|DLT)_/ ||
+ 		$2 ~ /^AUDIT_/ ||
+ 		$2 ~ /^(CLOCK|TIMER)_/ ||
+@@ -663,7 +664,6 @@ echo '// mkerrors.sh' "$@"
+ echo '// Code generated by the command above; see README.md. DO NOT EDIT.'
+ echo
+ echo "//go:build ${GOARCH} && ${GOOS}"
+-echo "// +build ${GOARCH},${GOOS}"
+ echo
+ go tool cgo -godefs -- "$@" _const.go >_error.out
+ cat _error.out | grep -vf _error.grep | grep -vf _signal.grep
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/mmap_nomremap.go b/go-controller/vendor/golang.org/x/sys/unix/mmap_nomremap.go
+index ca0513632..4b68e5978 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/mmap_nomremap.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/mmap_nomremap.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix || darwin || dragonfly || freebsd || openbsd || solaris
+-// +build aix darwin dragonfly freebsd openbsd solaris
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/mremap.go b/go-controller/vendor/golang.org/x/sys/unix/mremap.go
+index fa93d0aa9..fd45fe529 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/mremap.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/mremap.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux || netbsd
+-// +build linux netbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/pagesize_unix.go b/go-controller/vendor/golang.org/x/sys/unix/pagesize_unix.go
+index 53f1b4c5b..4d0a3430e 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/pagesize_unix.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/pagesize_unix.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris
+-// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
+ 
+ // For Unix, get the pagesize from the runtime.
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/pledge_openbsd.go b/go-controller/vendor/golang.org/x/sys/unix/pledge_openbsd.go
+index eb48294b2..6a09af53e 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/pledge_openbsd.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/pledge_openbsd.go
+@@ -8,54 +8,31 @@ 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.
++// This changes both the promises and execpromises; use PledgePromises or
++// PledgeExecpromises to only change the promises or execpromises
++// respectively.
+ //
+ // For more information see pledge(2).
+ func Pledge(promises, execpromises string) error {
+-	maj, min, err := majmin()
+-	if err != nil {
++	if err := pledgeAvailable(); err != nil {
+ 		return err
+ 	}
+ 
+-	err = pledgeAvailable(maj, min, execpromises)
++	pptr, err := BytePtrFromString(promises)
+ 	if err != nil {
+ 		return err
+ 	}
+ 
+-	pptr, err := syscall.BytePtrFromString(promises)
++	exptr, err := BytePtrFromString(execpromises)
+ 	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
++	return pledge(pptr, exptr)
+ }
+ 
+ // PledgePromises implements the pledge syscall.
+@@ -64,30 +41,16 @@ func Pledge(promises, execpromises string) error {
+ //
+ // 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 {
++	if err := pledgeAvailable(); err != nil {
+ 		return err
+ 	}
+ 
+-	// This variable holds the execpromises and is always nil.
+-	var expr unsafe.Pointer
+-
+-	pptr, err := syscall.BytePtrFromString(promises)
++	pptr, err := 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
++	return pledge(pptr, nil)
+ }
+ 
+ // PledgeExecpromises implements the pledge syscall.
+@@ -96,30 +59,16 @@ func PledgePromises(promises string) error {
+ //
+ // For more information see pledge(2).
+ func PledgeExecpromises(execpromises string) error {
+-	maj, min, err := majmin()
+-	if err != nil {
++	if err := pledgeAvailable(); err != nil {
+ 		return err
+ 	}
+ 
+-	err = pledgeAvailable(maj, min, execpromises)
++	exptr, err := BytePtrFromString(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
++	return pledge(nil, exptr)
+ }
+ 
+ // majmin returns major and minor version number for an OpenBSD system.
+@@ -147,16 +96,15 @@ func majmin() (major int, minor int, err error) {
+ 
+ // 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)
++func pledgeAvailable() error {
++	maj, min, err := majmin()
++	if err != nil {
++		return err
+ 	}
+ 
+-	// 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)
++	// Require OpenBSD 6.4 as a minimum.
++	if maj < 6 || (maj == 6 && min <= 3) {
++		return fmt.Errorf("cannot call Pledge on OpenBSD %d.%d", maj, min)
+ 	}
+ 
+ 	return nil
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ptrace_darwin.go b/go-controller/vendor/golang.org/x/sys/unix/ptrace_darwin.go
+index 463c3eff7..3f0975f3d 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ptrace_darwin.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ptrace_darwin.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build darwin && !ios
+-// +build darwin,!ios
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ptrace_ios.go b/go-controller/vendor/golang.org/x/sys/unix/ptrace_ios.go
+index ed0509a01..a4d35db5d 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ptrace_ios.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ptrace_ios.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build ios
+-// +build ios
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/race.go b/go-controller/vendor/golang.org/x/sys/unix/race.go
+index 6f6c5fec5..714d2aae7 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/race.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/race.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build (darwin && race) || (linux && race) || (freebsd && race)
+-// +build darwin,race linux,race freebsd,race
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/race0.go b/go-controller/vendor/golang.org/x/sys/unix/race0.go
+index 706e1322a..4a9f6634c 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/race0.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/race0.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix || (darwin && !race) || (linux && !race) || (freebsd && !race) || netbsd || openbsd || solaris || dragonfly || zos
+-// +build aix darwin,!race linux,!race freebsd,!race netbsd openbsd solaris dragonfly zos
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/readdirent_getdents.go b/go-controller/vendor/golang.org/x/sys/unix/readdirent_getdents.go
+index 4d6257569..dbd2b6ccb 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/readdirent_getdents.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/readdirent_getdents.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix || dragonfly || freebsd || linux || netbsd || openbsd
+-// +build aix dragonfly freebsd linux netbsd openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go b/go-controller/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go
+index 2a4ba47c4..130398b6b 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build darwin
+-// +build darwin
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/sockcmsg_unix.go b/go-controller/vendor/golang.org/x/sys/unix/sockcmsg_unix.go
+index 3865943f6..c3a62dbb1 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/sockcmsg_unix.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/sockcmsg_unix.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos
+-// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos
+ 
+ // Socket control messages
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go b/go-controller/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go
+index 0840fe4a5..4a1eab37e 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix || darwin || freebsd || linux || netbsd || openbsd || solaris || zos
+-// +build aix darwin freebsd linux netbsd openbsd solaris zos
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall.go b/go-controller/vendor/golang.org/x/sys/unix/syscall.go
+index 63e8c8383..5ea74da98 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos
+-// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos
+ 
+ // Package unix contains an interface to the low-level operating system
+ // primitives. OS details vary depending on the underlying system, and
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_aix.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_aix.go
+index e94e6cdac..67ce6cef2 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_aix.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_aix.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix
+-// +build aix
+ 
+ // Aix system calls.
+ // This file is compiled as ordinary Go code,
+@@ -107,7 +106,8 @@ func (sa *SockaddrUnix) sockaddr() (unsafe.Pointer, _Socklen, error) {
+ 	if n > 0 {
+ 		sl += _Socklen(n) + 1
+ 	}
+-	if sa.raw.Path[0] == '@' {
++	if sa.raw.Path[0] == '@' || (sa.raw.Path[0] == 0 && sl > 3) {
++		// Check sl > 3 so we don't change unnamed socket behavior.
+ 		sa.raw.Path[0] = 0
+ 		// Don't count trailing NUL for abstract address.
+ 		sl--
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_aix_ppc.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_aix_ppc.go
+index f2871fa95..1fdaa4760 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_aix_ppc.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_aix_ppc.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix && ppc
+-// +build aix,ppc
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go
+index 75718ec0f..c87f9a9f4 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix && ppc64
+-// +build aix,ppc64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_bsd.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_bsd.go
+index 4217de518..a00c3e545 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_bsd.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_bsd.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build darwin || dragonfly || freebsd || netbsd || openbsd
+-// +build darwin dragonfly freebsd netbsd openbsd
+ 
+ // BSD system call wrappers shared by *BSD based systems
+ // including OS X (Darwin) and FreeBSD.  Like the other
+@@ -317,7 +316,7 @@ func GetsockoptString(fd, level, opt int) (string, error) {
+ 	if err != nil {
+ 		return "", err
+ 	}
+-	return string(buf[:vallen-1]), nil
++	return ByteSliceToString(buf[:vallen]), nil
+ }
+ 
+ //sys	recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error)
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go
+index b37310ce9..0eaecf5fc 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build amd64 && darwin
+-// +build amd64,darwin
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go
+index d51ec9963..f36c6707c 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build arm64 && darwin
+-// +build arm64,darwin
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go
+index 53c96641f..16dc69937 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build darwin && go1.12
+-// +build darwin,go1.12
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go
+index 4e2d32120..14bab6b2d 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build amd64 && dragonfly
+-// +build amd64,dragonfly
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go
+index b8da51004..3967bca77 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build 386 && freebsd
+-// +build 386,freebsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go
+index 47155c483..eff19ada2 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build amd64 && freebsd
+-// +build amd64,freebsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go
+index 08932093f..4f24b517a 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build arm && freebsd
+-// +build arm,freebsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go
+index d151a0d0e..ac30759ec 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build arm64 && freebsd
+-// +build arm64,freebsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_riscv64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_riscv64.go
+index d5cd64b37..aab725ca7 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_riscv64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_freebsd_riscv64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build riscv64 && freebsd
+-// +build riscv64,freebsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_hurd.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_hurd.go
+index 381fd4673..ba46651f8 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_hurd.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_hurd.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build hurd
+-// +build hurd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_hurd_386.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_hurd_386.go
+index 7cf54a3e4..df89f9e6b 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_hurd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_hurd_386.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build 386 && hurd
+-// +build 386,hurd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_illumos.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_illumos.go
+index 87db5a6a8..a863f7052 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_illumos.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_illumos.go
+@@ -5,7 +5,6 @@
+ // illumos system calls not present on Solaris.
+ 
+ //go:build amd64 && illumos
+-// +build amd64,illumos
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux.go
+index fb4e50224..0f85e29e6 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux.go
+@@ -61,15 +61,23 @@ func FanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname string) (
+ }
+ 
+ //sys	fchmodat(dirfd int, path string, mode uint32) (err error)
+-
+-func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
+-	// Linux fchmodat doesn't support the flags parameter. Mimick glibc's behavior
+-	// and check the flags. Otherwise the mode would be applied to the symlink
+-	// destination which is not what the user expects.
+-	if flags&^AT_SYMLINK_NOFOLLOW != 0 {
+-		return EINVAL
+-	} else if flags&AT_SYMLINK_NOFOLLOW != 0 {
+-		return EOPNOTSUPP
++//sys	fchmodat2(dirfd int, path string, mode uint32, flags int) (err error)
++
++func Fchmodat(dirfd int, path string, mode uint32, flags int) error {
++	// Linux fchmodat doesn't support the flags parameter, but fchmodat2 does.
++	// Try fchmodat2 if flags are specified.
++	if flags != 0 {
++		err := fchmodat2(dirfd, path, mode, flags)
++		if err == ENOSYS {
++			// fchmodat2 isn't available. If the flags are known to be valid,
++			// return EOPNOTSUPP to indicate that fchmodat doesn't support them.
++			if flags&^(AT_SYMLINK_NOFOLLOW|AT_EMPTY_PATH) != 0 {
++				return EINVAL
++			} else if flags&(AT_SYMLINK_NOFOLLOW|AT_EMPTY_PATH) != 0 {
++				return EOPNOTSUPP
++			}
++		}
++		return err
+ 	}
+ 	return fchmodat(dirfd, path, mode)
+ }
+@@ -417,7 +425,8 @@ func (sa *SockaddrUnix) sockaddr() (unsafe.Pointer, _Socklen, error) {
+ 	if n > 0 {
+ 		sl += _Socklen(n) + 1
+ 	}
+-	if sa.raw.Path[0] == '@' {
++	if sa.raw.Path[0] == '@' || (sa.raw.Path[0] == 0 && sl > 3) {
++		// Check sl > 3 so we don't change unnamed socket behavior.
+ 		sa.raw.Path[0] = 0
+ 		// Don't count trailing NUL for abstract address.
+ 		sl--
+@@ -1301,7 +1310,7 @@ func GetsockoptString(fd, level, opt int) (string, error) {
+ 			return "", err
+ 		}
+ 	}
+-	return string(buf[:vallen-1]), nil
++	return ByteSliceToString(buf[:vallen]), nil
+ }
+ 
+ func GetsockoptTpacketStats(fd, level, opt int) (*TpacketStats, error) {
+@@ -2482,3 +2491,5 @@ func SchedGetAttr(pid int, flags uint) (*SchedAttr, error) {
+ 	}
+ 	return attr, nil
+ }
++
++//sys	Cachestat(fd uint, crange *CachestatRange, cstat *Cachestat_t, flags uint) (err error)
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_386.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_386.go
+index c7d9945ea..506dafa7b 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_386.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build 386 && linux
+-// +build 386,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_alarm.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_alarm.go
+index 08086ac6a..38d55641b 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_alarm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_alarm.go
+@@ -3,8 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux && (386 || amd64 || mips || mipsle || mips64 || mipsle || ppc64 || ppc64le || ppc || s390x || sparc64)
+-// +build linux
+-// +build 386 amd64 mips mipsle mips64 mipsle ppc64 ppc64le ppc s390x sparc64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go
+index 70601ce36..d557cf8de 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build amd64 && linux
+-// +build amd64,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go
+index 8b0f0f3aa..facdb83b2 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build amd64 && linux && gc
+-// +build amd64,linux,gc
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_arm.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_arm.go
+index da2986415..cd2dd797f 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_arm.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build arm && linux
+-// +build arm,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
+index f5266689a..cf2ee6c75 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build arm64 && linux
+-// +build arm64,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gc.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gc.go
+index 2b1168d7d..ffc4c2b63 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gc.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gc.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux && gc
+-// +build linux,gc
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go
+index 9843fb489..9ebfdcf44 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux && gc && 386
+-// +build linux,gc,386
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go
+index a6008fccd..5f2b57c4c 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build arm && gc && linux
+-// +build arm,gc,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go
+index 7740af242..d1a3ad826 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux && gccgo && 386
+-// +build linux,gccgo,386
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go
+index e16a12299..f2f67423e 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux && gccgo && arm
+-// +build linux,gccgo,arm
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_loong64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_loong64.go
+index f6ab02ec1..3d0e98451 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_loong64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_loong64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build loong64 && linux
+-// +build loong64,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go
+index 93fe59d25..70963a95a 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go
+@@ -3,8 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux && (mips64 || mips64le)
+-// +build linux
+-// +build mips64 mips64le
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go
+index aae7f0ffd..c218ebd28 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go
+@@ -3,8 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux && (mips || mipsle)
+-// +build linux
+-// +build mips mipsle
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_ppc.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_ppc.go
+index 66eff19a3..e6c48500c 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_ppc.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_ppc.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux && ppc
+-// +build linux,ppc
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go
+index 806aa2574..7286a9aa8 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go
+@@ -3,8 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux && (ppc64 || ppc64le)
+-// +build linux
+-// +build ppc64 ppc64le
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go
+index 5e6ceee12..6f5a28894 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build riscv64 && linux
+-// +build riscv64,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go
+index 2f89e8f5d..66f31210d 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build s390x && linux
+-// +build s390x,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go
+index 7ca064ae7..11d1f1698 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build sparc64 && linux
+-// +build sparc64,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go
+index 5199d282f..7a5eb5743 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build 386 && netbsd
+-// +build 386,netbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go
+index 70a9c52e9..62d8957ae 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build amd64 && netbsd
+-// +build amd64,netbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go
+index 3eb5942f9..ce6a06885 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build arm && netbsd
+-// +build arm,netbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go
+index fc6ccfd81..d46d689d1 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build arm64 && netbsd
+-// +build arm64,netbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd.go
+index 6f34479b5..b25343c71 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd.go
+@@ -137,18 +137,13 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
+ }
+ 
+ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) {
+-	var _p0 unsafe.Pointer
++	var bufptr *Statfs_t
+ 	var bufsize uintptr
+ 	if len(buf) > 0 {
+-		_p0 = unsafe.Pointer(&buf[0])
++		bufptr = &buf[0]
+ 		bufsize = unsafe.Sizeof(Statfs_t{}) * uintptr(len(buf))
+ 	}
+-	r0, _, e1 := Syscall(SYS_GETFSSTAT, uintptr(_p0), bufsize, uintptr(flags))
+-	n = int(r0)
+-	if e1 != 0 {
+-		err = e1
+-	}
+-	return
++	return getfsstat(bufptr, bufsize, flags)
+ }
+ 
+ //sysnb	getresuid(ruid *_C_int, euid *_C_int, suid *_C_int)
+@@ -171,6 +166,20 @@ func Getresgid() (rgid, egid, sgid int) {
+ 
+ //sys	sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL
+ 
++//sys	fcntl(fd int, cmd int, arg int) (n int, err error)
++//sys	fcntlPtr(fd int, cmd int, arg unsafe.Pointer) (n int, err error) = SYS_FCNTL
++
++// 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 := fcntlPtr(int(fd), cmd, unsafe.Pointer(lk))
++	return err
++}
++
+ //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) {
+@@ -326,4 +335,7 @@ func Uname(uname *Utsname) 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)
+ //sys	munmap(addr uintptr, length uintptr) (err error)
++//sys	getfsstat(stat *Statfs_t, bufsize uintptr, flags int) (n int, err error)
+ //sys	utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error)
++//sys	pledge(promises *byte, execpromises *byte) (err error)
++//sys	unveil(path *byte, flags *byte) (err error)
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go
+index 6baabcdcb..9ddc89f4f 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build 386 && openbsd
+-// +build 386,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go
+index bab25360e..70a3c96ee 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build amd64 && openbsd
+-// +build amd64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go
+index 8eed3c4d4..265caa87f 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build arm && openbsd
+-// +build arm,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go
+index 483dde99d..ac4fda171 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build arm64 && openbsd
+-// +build arm64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_libc.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_libc.go
+index 04aa43f41..0a451e6dd 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_libc.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_libc.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build openbsd
+-// +build openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_ppc64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_ppc64.go
+index c2796139c..30a308cbb 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_ppc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_ppc64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build ppc64 && openbsd
+-// +build ppc64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_riscv64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_riscv64.go
+index 23199a7ff..ea954330f 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_riscv64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_openbsd_riscv64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build riscv64 && openbsd
+-// +build riscv64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_solaris.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_solaris.go
+index b99cfa134..21974af06 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_solaris.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_solaris.go
+@@ -128,7 +128,8 @@ func (sa *SockaddrUnix) sockaddr() (unsafe.Pointer, _Socklen, error) {
+ 	if n > 0 {
+ 		sl += _Socklen(n) + 1
+ 	}
+-	if sa.raw.Path[0] == '@' {
++	if sa.raw.Path[0] == '@' || (sa.raw.Path[0] == 0 && sl > 3) {
++		// Check sl > 3 so we don't change unnamed socket behavior.
+ 		sa.raw.Path[0] = 0
+ 		// Don't count trailing NUL for abstract address.
+ 		sl--
+@@ -157,7 +158,7 @@ func GetsockoptString(fd, level, opt int) (string, error) {
+ 	if err != nil {
+ 		return "", err
+ 	}
+-	return string(buf[:vallen-1]), nil
++	return ByteSliceToString(buf[:vallen]), nil
+ }
+ 
+ const ImplementsGetwd = true
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go
+index 0bd25ef81..e02d8ceae 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build amd64 && solaris
+-// +build amd64,solaris
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_unix.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_unix.go
+index f6eda2705..77081de8c 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_unix.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_unix.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris
+-// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_unix_gc.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_unix_gc.go
+index b6919ca58..05c95bccf 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_unix_gc.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_unix_gc.go
+@@ -3,8 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build (darwin || dragonfly || freebsd || (linux && !ppc64 && !ppc64le) || netbsd || openbsd || solaris) && gc
+-// +build darwin dragonfly freebsd linux,!ppc64,!ppc64le netbsd openbsd solaris
+-// +build gc
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go
+index f6f707acf..23f39b7af 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go
+@@ -3,9 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux && (ppc64le || ppc64) && gc
+-// +build linux
+-// +build ppc64le ppc64
+-// +build gc
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/syscall_zos_s390x.go b/go-controller/vendor/golang.org/x/sys/unix/syscall_zos_s390x.go
+index 4596d041c..b473038c6 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/syscall_zos_s390x.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/syscall_zos_s390x.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build zos && s390x
+-// +build zos,s390x
+ 
+ package unix
+ 
+@@ -1105,7 +1104,7 @@ func GetsockoptString(fd, level, opt int) (string, error) {
+ 		return "", err
+ 	}
+ 
+-	return string(buf[:vallen-1]), nil
++	return ByteSliceToString(buf[:vallen]), nil
+ }
+ 
+ func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from Sockaddr, err error) {
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/sysvshm_linux.go b/go-controller/vendor/golang.org/x/sys/unix/sysvshm_linux.go
+index 2c3a4437f..4fcd38de2 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/sysvshm_linux.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/sysvshm_linux.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build linux
+-// +build linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/sysvshm_unix.go b/go-controller/vendor/golang.org/x/sys/unix/sysvshm_unix.go
+index 5bb41d17b..79a84f18b 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/sysvshm_unix.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/sysvshm_unix.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build (darwin && !ios) || linux
+-// +build darwin,!ios linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/sysvshm_unix_other.go b/go-controller/vendor/golang.org/x/sys/unix/sysvshm_unix_other.go
+index 71bddefdb..9eb0db664 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/sysvshm_unix_other.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/sysvshm_unix_other.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build darwin && !ios
+-// +build darwin,!ios
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/timestruct.go b/go-controller/vendor/golang.org/x/sys/unix/timestruct.go
+index 616b1b284..7997b1902 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/timestruct.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/timestruct.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos
+-// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/unveil_openbsd.go b/go-controller/vendor/golang.org/x/sys/unix/unveil_openbsd.go
+index 168d5ae77..cb7e598ce 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/unveil_openbsd.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/unveil_openbsd.go
+@@ -4,39 +4,48 @@
+ 
+ package unix
+ 
+-import (
+-	"syscall"
+-	"unsafe"
+-)
++import "fmt"
+ 
+ // 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 {
++	if err := supportsUnveil(); err != nil {
+ 		return err
+ 	}
+-	flagsPtr, err := syscall.BytePtrFromString(flags)
++	pathPtr, err := BytePtrFromString(path)
+ 	if err != nil {
+ 		return err
+ 	}
+-	_, _, e := syscall.Syscall(SYS_UNVEIL, uintptr(unsafe.Pointer(pathPtr)), uintptr(unsafe.Pointer(flagsPtr)), 0)
+-	if e != 0 {
+-		return e
++	flagsPtr, err := BytePtrFromString(flags)
++	if err != nil {
++		return err
+ 	}
+-	return nil
++	return unveil(pathPtr, flagsPtr)
+ }
+ 
+ // 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
++	if err := supportsUnveil(); err != nil {
++		return err
+ 	}
++	return unveil(nil, nil)
++}
++
++// supportsUnveil checks for availability of the unveil(2) system call based
++// on the running OpenBSD version.
++func supportsUnveil() error {
++	maj, min, err := majmin()
++	if err != nil {
++		return err
++	}
++
++	// unveil is not available before 6.4
++	if maj < 6 || (maj == 6 && min <= 3) {
++		return fmt.Errorf("cannot call Unveil on OpenBSD %d.%d", maj, min)
++	}
++
+ 	return nil
+ }
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/xattr_bsd.go b/go-controller/vendor/golang.org/x/sys/unix/xattr_bsd.go
+index f5f8e9f36..e16879396 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/xattr_bsd.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/xattr_bsd.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build freebsd || netbsd
+-// +build freebsd netbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go
+index ca9799b79..2fb219d78 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build ppc && aix
+-// +build ppc,aix
+ 
+ // Created by cgo -godefs - DO NOT EDIT
+ // cgo -godefs -- -maix32 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go
+index 200c8c26f..b0e6f5c85 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build ppc64 && aix
+-// +build ppc64,aix
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -maix64 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go
+index 143007627..e40fa8524 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && darwin
+-// +build amd64,darwin
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go
+index ab044a742..bb02aa6c0 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm64 && darwin
+-// +build arm64,darwin
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go
+index 17bba0e44..c0e0f8694 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && dragonfly
+-// +build amd64,dragonfly
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go
+index f8c2c5138..6c6923906 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build 386 && freebsd
+-// +build 386,freebsd
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m32 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
+index 96310c3be..dd9163f8e 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && freebsd
+-// +build amd64,freebsd
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go
+index 777b69def..493a2a793 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm && freebsd
+-// +build arm,freebsd
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go
+index c557ac2db..8b437b307 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm64 && freebsd
+-// +build arm64,freebsd
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_riscv64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_riscv64.go
+index 341b4d962..67c02dd57 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_riscv64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_freebsd_riscv64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build riscv64 && freebsd
+-// +build riscv64,freebsd
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux.go
+index f9c7f479b..c73cfe2f1 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux.go
+@@ -1,7 +1,6 @@
+ // Code generated by mkmerge; DO NOT EDIT.
+ 
+ //go:build linux
+-// +build linux
+ 
+ package unix
+ 
+@@ -481,10 +480,13 @@ const (
+ 	BPF_FROM_BE                                 = 0x8
+ 	BPF_FROM_LE                                 = 0x0
+ 	BPF_FS_MAGIC                                = 0xcafe4a11
++	BPF_F_AFTER                                 = 0x10
+ 	BPF_F_ALLOW_MULTI                           = 0x2
+ 	BPF_F_ALLOW_OVERRIDE                        = 0x1
+ 	BPF_F_ANY_ALIGNMENT                         = 0x2
+-	BPF_F_KPROBE_MULTI_RETURN                   = 0x1
++	BPF_F_BEFORE                                = 0x8
++	BPF_F_ID                                    = 0x20
++	BPF_F_NETFILTER_IP_DEFRAG                   = 0x1
+ 	BPF_F_QUERY_EFFECTIVE                       = 0x1
+ 	BPF_F_REPLACE                               = 0x4
+ 	BPF_F_SLEEPABLE                             = 0x10
+@@ -521,6 +523,7 @@ const (
+ 	BPF_MAJOR_VERSION                           = 0x1
+ 	BPF_MAXINSNS                                = 0x1000
+ 	BPF_MEM                                     = 0x60
++	BPF_MEMSX                                   = 0x80
+ 	BPF_MEMWORDS                                = 0x10
+ 	BPF_MINOR_VERSION                           = 0x1
+ 	BPF_MISC                                    = 0x7
+@@ -776,6 +779,8 @@ const (
+ 	DEVLINK_GENL_MCGRP_CONFIG_NAME              = "config"
+ 	DEVLINK_GENL_NAME                           = "devlink"
+ 	DEVLINK_GENL_VERSION                        = 0x1
++	DEVLINK_PORT_FN_CAP_IPSEC_CRYPTO            = 0x4
++	DEVLINK_PORT_FN_CAP_IPSEC_PACKET            = 0x8
+ 	DEVLINK_PORT_FN_CAP_MIGRATABLE              = 0x2
+ 	DEVLINK_PORT_FN_CAP_ROCE                    = 0x1
+ 	DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX           = 0x14
+@@ -1698,6 +1703,7 @@ const (
+ 	KEXEC_ON_CRASH                              = 0x1
+ 	KEXEC_PRESERVE_CONTEXT                      = 0x2
+ 	KEXEC_SEGMENT_MAX                           = 0x10
++	KEXEC_UPDATE_ELFCOREHDR                     = 0x4
+ 	KEYCTL_ASSUME_AUTHORITY                     = 0x10
+ 	KEYCTL_CAPABILITIES                         = 0x1f
+ 	KEYCTL_CAPS0_BIG_KEY                        = 0x10
+@@ -1795,6 +1801,7 @@ const (
+ 	LOCK_SH                                     = 0x1
+ 	LOCK_UN                                     = 0x8
+ 	LOOP_CLR_FD                                 = 0x4c01
++	LOOP_CONFIGURE                              = 0x4c0a
+ 	LOOP_CTL_ADD                                = 0x4c80
+ 	LOOP_CTL_GET_FREE                           = 0x4c82
+ 	LOOP_CTL_REMOVE                             = 0x4c81
+@@ -2275,6 +2282,7 @@ const (
+ 	PERF_MEM_LVLNUM_PMEM                        = 0xe
+ 	PERF_MEM_LVLNUM_RAM                         = 0xd
+ 	PERF_MEM_LVLNUM_SHIFT                       = 0x21
++	PERF_MEM_LVLNUM_UNC                         = 0x8
+ 	PERF_MEM_LVL_HIT                            = 0x2
+ 	PERF_MEM_LVL_IO                             = 0x1000
+ 	PERF_MEM_LVL_L1                             = 0x8
+@@ -3461,6 +3469,7 @@ const (
+ 	XDP_PACKET_HEADROOM                         = 0x100
+ 	XDP_PGOFF_RX_RING                           = 0x0
+ 	XDP_PGOFF_TX_RING                           = 0x80000000
++	XDP_PKT_CONTD                               = 0x1
+ 	XDP_RING_NEED_WAKEUP                        = 0x1
+ 	XDP_RX_RING                                 = 0x2
+ 	XDP_SHARED_UMEM                             = 0x1
+@@ -3473,6 +3482,7 @@ const (
+ 	XDP_UMEM_REG                                = 0x4
+ 	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1
+ 	XDP_USE_NEED_WAKEUP                         = 0x8
++	XDP_USE_SG                                  = 0x10
+ 	XDP_ZEROCOPY                                = 0x4
+ 	XENFS_SUPER_MAGIC                           = 0xabba1974
+ 	XFS_SUPER_MAGIC                             = 0x58465342
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_386.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_386.go
+index 30aee00a5..4920821cf 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build 386 && linux
+-// +build 386,linux
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/386/include -m32 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go
+index 8ebfa5127..a0c1e4112 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && linux
+-// +build amd64,linux
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/amd64/include -m64 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go
+index 271a21cdc..c63985560 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm && linux
+-// +build arm,linux
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/arm/include _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go
+index 910c330a3..47cc62e25 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm64 && linux
+-// +build arm64,linux
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/arm64/include -fsigned-char _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go
+index a640798c9..27ac4a09e 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build loong64 && linux
+-// +build loong64,linux
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/loong64/include _const.go
+@@ -119,6 +118,7 @@ const (
+ 	IXOFF                            = 0x1000
+ 	IXON                             = 0x400
+ 	LASX_CTX_MAGIC                   = 0x41535801
++	LBT_CTX_MAGIC                    = 0x42540001
+ 	LSX_CTX_MAGIC                    = 0x53580001
+ 	MAP_ANON                         = 0x20
+ 	MAP_ANONYMOUS                    = 0x20
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go
+index 0d5925d34..54694642a 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build mips && linux
+-// +build mips,linux
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/mips/include _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go
+index d72a00e0b..3adb81d75 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build mips64 && linux
+-// +build mips64,linux
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/mips64/include _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go
+index 02ba129f8..2dfe98f0d 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build mips64le && linux
+-// +build mips64le,linux
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/mips64le/include _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go
+index 8daa6dd96..f5398f84f 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build mipsle && linux
+-// +build mipsle,linux
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/mipsle/include _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go
+index 63c8fa2f7..c54f152d6 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build ppc && linux
+-// +build ppc,linux
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/ppc/include _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go
+index 930799ec1..76057dc72 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build ppc64 && linux
+-// +build ppc64,linux
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/ppc64/include _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
+index 8605a7dd7..e0c3725e2 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build ppc64le && linux
+-// +build ppc64le,linux
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/ppc64le/include _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go
+index 95a016f1c..18f2813ed 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build riscv64 && linux
+-// +build riscv64,linux
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/riscv64/include _const.go
+@@ -228,6 +227,9 @@ const (
+ 	PPPIOCUNBRIDGECHAN               = 0x7434
+ 	PPPIOCXFERUNIT                   = 0x744e
+ 	PR_SET_PTRACER_ANY               = 0xffffffffffffffff
++	PTRACE_GETFDPIC                  = 0x21
++	PTRACE_GETFDPIC_EXEC             = 0x0
++	PTRACE_GETFDPIC_INTERP           = 0x1
+ 	RLIMIT_AS                        = 0x9
+ 	RLIMIT_MEMLOCK                   = 0x8
+ 	RLIMIT_NOFILE                    = 0x7
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go
+index 1ae0108f5..11619d4ec 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build s390x && linux
+-// +build s390x,linux
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/s390x/include -fsigned-char _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go
+index 1bb7c6333..396d994da 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build sparc64 && linux
+-// +build sparc64,linux
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -Wall -Werror -static -I/tmp/sparc64/include _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go
+index 72f7420d2..130085df4 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build 386 && netbsd
+-// +build 386,netbsd
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m32 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
+index 8d4eb0c08..84769a1a3 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && netbsd
+-// +build amd64,netbsd
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go
+index 9eef9749f..602ded003 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm && netbsd
+-// +build arm,netbsd
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -marm _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go
+index 3b62ba192..efc0406ee 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm64 && netbsd
+-// +build arm64,netbsd
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go
+index af20e474b..5a6500f83 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build 386 && openbsd
+-// +build 386,openbsd
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m32 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
+index 6015fcb2b..a5aeeb979 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && openbsd
+-// +build amd64,openbsd
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go
+index 8d44955e4..0e9748a72 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm && openbsd
+-// +build arm,openbsd
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go
+index ae16fe754..4f4449abc 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm64 && openbsd
+-// +build arm64,openbsd
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_mips64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_mips64.go
+index 03d90fe35..76a363f0f 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_mips64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_mips64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build mips64 && openbsd
+-// +build mips64,openbsd
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_ppc64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_ppc64.go
+index 8e2c51b1e..43ca0cdfd 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_ppc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_ppc64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build ppc64 && openbsd
+-// +build ppc64,openbsd
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_riscv64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_riscv64.go
+index 13d403031..b1b8bb200 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_riscv64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_openbsd_riscv64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build riscv64 && openbsd
+-// +build riscv64,openbsd
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go
+index 1afee6a08..d2ddd3176 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && solaris
+-// +build amd64,solaris
+ 
+ // Code generated by cmd/cgo -godefs; DO NOT EDIT.
+ // cgo -godefs -- -m64 _const.go
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go b/go-controller/vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go
+index fc7d0506f..4dfd2e051 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build zos && s390x
+-// +build zos,s390x
+ 
+ // Hand edited based on zerrors_linux_s390x.go
+ // TODO: auto-generate.
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go b/go-controller/vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go
+index 97f20ca28..586317c78 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go
+@@ -1,8 +1,6 @@
+ // Code generated by linux/mkall.go generatePtracePair("arm", "arm64"). DO NOT EDIT.
+ 
+ //go:build linux && (arm || arm64)
+-// +build linux
+-// +build arm arm64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go b/go-controller/vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go
+index 0b5f79430..d7c881be7 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go
+@@ -1,8 +1,6 @@
+ // Code generated by linux/mkall.go generatePtracePair("mips", "mips64"). DO NOT EDIT.
+ 
+ //go:build linux && (mips || mips64)
+-// +build linux
+-// +build mips mips64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go b/go-controller/vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go
+index 2807f7e64..2d2de5d29 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go
+@@ -1,8 +1,6 @@
+ // Code generated by linux/mkall.go generatePtracePair("mipsle", "mips64le"). DO NOT EDIT.
+ 
+ //go:build linux && (mipsle || mips64le)
+-// +build linux
+-// +build mipsle mips64le
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zptrace_x86_linux.go b/go-controller/vendor/golang.org/x/sys/unix/zptrace_x86_linux.go
+index 281ea64e3..5adc79fb5 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zptrace_x86_linux.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zptrace_x86_linux.go
+@@ -1,8 +1,6 @@
+ // Code generated by linux/mkall.go generatePtracePair("386", "amd64"). DO NOT EDIT.
+ 
+ //go:build linux && (386 || amd64)
+-// +build linux
+-// +build 386 amd64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go
+index d1d1d2331..6ea64a3c0 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build aix && ppc
+-// +build aix,ppc
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go
+index f99a18adc..99ee4399a 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build aix && ppc64
+-// +build aix,ppc64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go
+index c4d50ae50..b68a78362 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build aix && ppc64 && gc
+-// +build aix,ppc64,gc
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go
+index 6903d3b09..0a87450bf 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build aix && ppc64 && gccgo
+-// +build aix,ppc64,gccgo
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go
+index 1cad561e9..ccb02f240 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build darwin && amd64
+-// +build darwin,amd64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
+index b18edbd0e..1b40b997b 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build darwin && arm64
+-// +build darwin,arm64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go
+index 0c67df64a..aad65fc79 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build dragonfly && amd64
+-// +build dragonfly,amd64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go
+index e6e05d145..c0096391a 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build freebsd && 386
+-// +build freebsd,386
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
+index 7508accac..7664df749 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build freebsd && amd64
+-// +build freebsd,amd64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go
+index 7b56aead4..ae099182c 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build freebsd && arm
+-// +build freebsd,arm
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go
+index cc623dcaa..11fd5d45b 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build freebsd && arm64
+-// +build freebsd,arm64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_riscv64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_riscv64.go
+index 581849197..c3d2d6530 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_riscv64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_freebsd_riscv64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build freebsd && riscv64
+-// +build freebsd,riscv64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go
+index 6be25cd19..c698cbc01 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build illumos && amd64
+-// +build illumos,amd64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux.go
+index 1ff3aec74..1488d2712 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux.go
+@@ -1,7 +1,6 @@
+ // Code generated by mkmerge; DO NOT EDIT.
+ 
+ //go:build linux
+-// +build linux
+ 
+ package unix
+ 
+@@ -38,6 +37,21 @@ func fchmodat(dirfd int, path string, mode uint32) (err error) {
+ 
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+ 
++func fchmodat2(dirfd int, path string, mode uint32, flags int) (err error) {
++	var _p0 *byte
++	_p0, err = BytePtrFromString(path)
++	if err != nil {
++		return
++	}
++	_, _, e1 := Syscall6(SYS_FCHMODAT2, 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 ioctl(fd int, req uint, arg uintptr) (err error) {
+ 	_, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg))
+ 	if e1 != 0 {
+@@ -2195,3 +2209,13 @@ func schedGetattr(pid int, attr *SchedAttr, size uint, flags uint) (err error) {
+ 	}
+ 	return
+ }
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func Cachestat(fd uint, crange *CachestatRange, cstat *Cachestat_t, flags uint) (err error) {
++	_, _, e1 := Syscall6(SYS_CACHESTAT, uintptr(fd), uintptr(unsafe.Pointer(crange)), uintptr(unsafe.Pointer(cstat)), uintptr(flags), 0, 0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go
+index 07b549cc2..4def3e9fc 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build linux && 386
+-// +build linux,386
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go
+index 5f481bf83..fef2bc8ba 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build linux && amd64
+-// +build linux,amd64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go
+index 824cd52c7..a9fd76a88 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build linux && arm
+-// +build linux,arm
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go
+index e77aecfe9..460065028 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build linux && arm64
+-// +build linux,arm64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_loong64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_loong64.go
+index 806ffd1e1..c8987d264 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_loong64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_loong64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build linux && loong64
+-// +build linux,loong64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go
+index 961a3afb7..921f43061 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build linux && mips
+-// +build linux,mips
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go
+index ed05005e9..44f067829 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build linux && mips64
+-// +build linux,mips64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go
+index d365b718f..e7fa0abf0 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build linux && mips64le
+-// +build linux,mips64le
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go
+index c3f1b8bbd..8c5125675 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build linux && mipsle
+-// +build linux,mipsle
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc.go
+index a6574cf98..7392fd45e 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build linux && ppc
+-// +build linux,ppc
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go
+index f40990264..41180434e 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build linux && ppc64
+-// +build linux,ppc64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go
+index 9dfcc2997..40c6ce7ae 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build linux && ppc64le
+-// +build linux,ppc64le
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go
+index 0ab4f2ed7..2cfe34adb 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build linux && riscv64
+-// +build linux,riscv64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
+index 6cde32237..61e6f0709 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build linux && s390x
+-// +build linux,s390x
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go
+index 5253d65bf..834b84204 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build linux && sparc64
+-// +build linux,sparc64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go
+index 2df3c5bac..e91ebc14a 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build netbsd && 386
+-// +build netbsd,386
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go
+index a60556bab..be28babbc 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build netbsd && amd64
+-// +build netbsd,amd64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go
+index 9f788917a..fb587e826 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build netbsd && arm
+-// +build netbsd,arm
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go
+index 82a4cb2dc..d576438bb 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build netbsd && arm64
+-// +build netbsd,arm64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go
+index 66b3b6456..a1d061597 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build openbsd && 386
+-// +build openbsd,386
+ 
+ package unix
+ 
+@@ -585,6 +584,32 @@ var libc_sysctl_trampoline_addr uintptr
+ 
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+ 
++func fcntl(fd int, cmd int, arg int) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg))
++	n = int(r0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_fcntl_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_fcntl fcntl "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fcntlPtr(fd int, cmd int, arg unsafe.Pointer) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg))
++	n = 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 := syscall_syscall6(libc_ppoll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+ 	n = int(r0)
+@@ -2213,6 +2238,21 @@ var libc_munmap_trampoline_addr uintptr
+ 
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+ 
++func getfsstat(stat *Statfs_t, bufsize uintptr, flags int) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_getfsstat_trampoline_addr, uintptr(unsafe.Pointer(stat)), uintptr(bufsize), uintptr(flags))
++	n = int(r0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_getfsstat_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_getfsstat getfsstat "libc.so"
++
++// 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)
+@@ -2229,3 +2269,33 @@ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error
+ var libc_utimensat_trampoline_addr uintptr
+ 
+ //go:cgo_import_dynamic libc_utimensat utimensat "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func pledge(promises *byte, execpromises *byte) (err error) {
++	_, _, e1 := syscall_syscall(libc_pledge_trampoline_addr, uintptr(unsafe.Pointer(promises)), uintptr(unsafe.Pointer(execpromises)), 0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_pledge_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_pledge pledge "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func unveil(path *byte, flags *byte) (err error) {
++	_, _, e1 := syscall_syscall(libc_unveil_trampoline_addr, uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(flags)), 0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_unveil_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_unveil unveil "libc.so"
++
++
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.s b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.s
+index 3dcacd30d..41b561731 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.s
+@@ -178,6 +178,11 @@ TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0
+ GLOBL	·libc_sysctl_trampoline_addr(SB), RODATA, $4
+ DATA	·libc_sysctl_trampoline_addr(SB)/4, $libc_sysctl_trampoline<>(SB)
+ 
++TEXT libc_fcntl_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_fcntl(SB)
++GLOBL	·libc_fcntl_trampoline_addr(SB), RODATA, $4
++DATA	·libc_fcntl_trampoline_addr(SB)/4, $libc_fcntl_trampoline<>(SB)
++
+ TEXT libc_ppoll_trampoline<>(SB),NOSPLIT,$0-0
+ 	JMP	libc_ppoll(SB)
+ GLOBL	·libc_ppoll_trampoline_addr(SB), RODATA, $4
+@@ -668,7 +673,22 @@ TEXT libc_munmap_trampoline<>(SB),NOSPLIT,$0-0
+ GLOBL	·libc_munmap_trampoline_addr(SB), RODATA, $4
+ DATA	·libc_munmap_trampoline_addr(SB)/4, $libc_munmap_trampoline<>(SB)
+ 
++TEXT libc_getfsstat_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_getfsstat(SB)
++GLOBL	·libc_getfsstat_trampoline_addr(SB), RODATA, $4
++DATA	·libc_getfsstat_trampoline_addr(SB)/4, $libc_getfsstat_trampoline<>(SB)
++
+ TEXT libc_utimensat_trampoline<>(SB),NOSPLIT,$0-0
+ 	JMP	libc_utimensat(SB)
+ GLOBL	·libc_utimensat_trampoline_addr(SB), RODATA, $4
+ DATA	·libc_utimensat_trampoline_addr(SB)/4, $libc_utimensat_trampoline<>(SB)
++
++TEXT libc_pledge_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_pledge(SB)
++GLOBL	·libc_pledge_trampoline_addr(SB), RODATA, $4
++DATA	·libc_pledge_trampoline_addr(SB)/4, $libc_pledge_trampoline<>(SB)
++
++TEXT libc_unveil_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_unveil(SB)
++GLOBL	·libc_unveil_trampoline_addr(SB), RODATA, $4
++DATA	·libc_unveil_trampoline_addr(SB)/4, $libc_unveil_trampoline<>(SB)
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go
+index c5c4cc112..5b2a74097 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build openbsd && amd64
+-// +build openbsd,amd64
+ 
+ package unix
+ 
+@@ -585,6 +584,32 @@ var libc_sysctl_trampoline_addr uintptr
+ 
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+ 
++func fcntl(fd int, cmd int, arg int) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg))
++	n = int(r0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_fcntl_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_fcntl fcntl "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fcntlPtr(fd int, cmd int, arg unsafe.Pointer) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg))
++	n = 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 := syscall_syscall6(libc_ppoll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+ 	n = int(r0)
+@@ -2213,6 +2238,21 @@ var libc_munmap_trampoline_addr uintptr
+ 
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+ 
++func getfsstat(stat *Statfs_t, bufsize uintptr, flags int) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_getfsstat_trampoline_addr, uintptr(unsafe.Pointer(stat)), uintptr(bufsize), uintptr(flags))
++	n = int(r0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_getfsstat_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_getfsstat getfsstat "libc.so"
++
++// 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)
+@@ -2229,3 +2269,33 @@ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error
+ var libc_utimensat_trampoline_addr uintptr
+ 
+ //go:cgo_import_dynamic libc_utimensat utimensat "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func pledge(promises *byte, execpromises *byte) (err error) {
++	_, _, e1 := syscall_syscall(libc_pledge_trampoline_addr, uintptr(unsafe.Pointer(promises)), uintptr(unsafe.Pointer(execpromises)), 0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_pledge_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_pledge pledge "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func unveil(path *byte, flags *byte) (err error) {
++	_, _, e1 := syscall_syscall(libc_unveil_trampoline_addr, uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(flags)), 0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_unveil_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_unveil unveil "libc.so"
++
++
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.s b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.s
+index 2763620b0..4019a656f 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.s
+@@ -178,6 +178,11 @@ TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0
+ GLOBL	·libc_sysctl_trampoline_addr(SB), RODATA, $8
+ DATA	·libc_sysctl_trampoline_addr(SB)/8, $libc_sysctl_trampoline<>(SB)
+ 
++TEXT libc_fcntl_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_fcntl(SB)
++GLOBL	·libc_fcntl_trampoline_addr(SB), RODATA, $8
++DATA	·libc_fcntl_trampoline_addr(SB)/8, $libc_fcntl_trampoline<>(SB)
++
+ TEXT libc_ppoll_trampoline<>(SB),NOSPLIT,$0-0
+ 	JMP	libc_ppoll(SB)
+ GLOBL	·libc_ppoll_trampoline_addr(SB), RODATA, $8
+@@ -668,7 +673,22 @@ TEXT libc_munmap_trampoline<>(SB),NOSPLIT,$0-0
+ GLOBL	·libc_munmap_trampoline_addr(SB), RODATA, $8
+ DATA	·libc_munmap_trampoline_addr(SB)/8, $libc_munmap_trampoline<>(SB)
+ 
++TEXT libc_getfsstat_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_getfsstat(SB)
++GLOBL	·libc_getfsstat_trampoline_addr(SB), RODATA, $8
++DATA	·libc_getfsstat_trampoline_addr(SB)/8, $libc_getfsstat_trampoline<>(SB)
++
+ TEXT libc_utimensat_trampoline<>(SB),NOSPLIT,$0-0
+ 	JMP	libc_utimensat(SB)
+ GLOBL	·libc_utimensat_trampoline_addr(SB), RODATA, $8
+ DATA	·libc_utimensat_trampoline_addr(SB)/8, $libc_utimensat_trampoline<>(SB)
++
++TEXT libc_pledge_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_pledge(SB)
++GLOBL	·libc_pledge_trampoline_addr(SB), RODATA, $8
++DATA	·libc_pledge_trampoline_addr(SB)/8, $libc_pledge_trampoline<>(SB)
++
++TEXT libc_unveil_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_unveil(SB)
++GLOBL	·libc_unveil_trampoline_addr(SB), RODATA, $8
++DATA	·libc_unveil_trampoline_addr(SB)/8, $libc_unveil_trampoline<>(SB)
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go
+index 93bfbb328..f6eda1344 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build openbsd && arm
+-// +build openbsd,arm
+ 
+ package unix
+ 
+@@ -585,6 +584,32 @@ var libc_sysctl_trampoline_addr uintptr
+ 
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+ 
++func fcntl(fd int, cmd int, arg int) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg))
++	n = int(r0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_fcntl_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_fcntl fcntl "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fcntlPtr(fd int, cmd int, arg unsafe.Pointer) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg))
++	n = 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 := syscall_syscall6(libc_ppoll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+ 	n = int(r0)
+@@ -2213,6 +2238,21 @@ var libc_munmap_trampoline_addr uintptr
+ 
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+ 
++func getfsstat(stat *Statfs_t, bufsize uintptr, flags int) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_getfsstat_trampoline_addr, uintptr(unsafe.Pointer(stat)), uintptr(bufsize), uintptr(flags))
++	n = int(r0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_getfsstat_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_getfsstat getfsstat "libc.so"
++
++// 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)
+@@ -2229,3 +2269,33 @@ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error
+ var libc_utimensat_trampoline_addr uintptr
+ 
+ //go:cgo_import_dynamic libc_utimensat utimensat "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func pledge(promises *byte, execpromises *byte) (err error) {
++	_, _, e1 := syscall_syscall(libc_pledge_trampoline_addr, uintptr(unsafe.Pointer(promises)), uintptr(unsafe.Pointer(execpromises)), 0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_pledge_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_pledge pledge "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func unveil(path *byte, flags *byte) (err error) {
++	_, _, e1 := syscall_syscall(libc_unveil_trampoline_addr, uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(flags)), 0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_unveil_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_unveil unveil "libc.so"
++
++
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.s b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.s
+index c92231404..ac4af24f9 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.s
+@@ -178,6 +178,11 @@ TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0
+ GLOBL	·libc_sysctl_trampoline_addr(SB), RODATA, $4
+ DATA	·libc_sysctl_trampoline_addr(SB)/4, $libc_sysctl_trampoline<>(SB)
+ 
++TEXT libc_fcntl_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_fcntl(SB)
++GLOBL	·libc_fcntl_trampoline_addr(SB), RODATA, $4
++DATA	·libc_fcntl_trampoline_addr(SB)/4, $libc_fcntl_trampoline<>(SB)
++
+ TEXT libc_ppoll_trampoline<>(SB),NOSPLIT,$0-0
+ 	JMP	libc_ppoll(SB)
+ GLOBL	·libc_ppoll_trampoline_addr(SB), RODATA, $4
+@@ -668,7 +673,22 @@ TEXT libc_munmap_trampoline<>(SB),NOSPLIT,$0-0
+ GLOBL	·libc_munmap_trampoline_addr(SB), RODATA, $4
+ DATA	·libc_munmap_trampoline_addr(SB)/4, $libc_munmap_trampoline<>(SB)
+ 
++TEXT libc_getfsstat_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_getfsstat(SB)
++GLOBL	·libc_getfsstat_trampoline_addr(SB), RODATA, $4
++DATA	·libc_getfsstat_trampoline_addr(SB)/4, $libc_getfsstat_trampoline<>(SB)
++
+ TEXT libc_utimensat_trampoline<>(SB),NOSPLIT,$0-0
+ 	JMP	libc_utimensat(SB)
+ GLOBL	·libc_utimensat_trampoline_addr(SB), RODATA, $4
+ DATA	·libc_utimensat_trampoline_addr(SB)/4, $libc_utimensat_trampoline<>(SB)
++
++TEXT libc_pledge_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_pledge(SB)
++GLOBL	·libc_pledge_trampoline_addr(SB), RODATA, $4
++DATA	·libc_pledge_trampoline_addr(SB)/4, $libc_pledge_trampoline<>(SB)
++
++TEXT libc_unveil_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_unveil(SB)
++GLOBL	·libc_unveil_trampoline_addr(SB), RODATA, $4
++DATA	·libc_unveil_trampoline_addr(SB)/4, $libc_unveil_trampoline<>(SB)
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go
+index a107b8fda..55df20ae9 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build openbsd && arm64
+-// +build openbsd,arm64
+ 
+ package unix
+ 
+@@ -585,6 +584,32 @@ var libc_sysctl_trampoline_addr uintptr
+ 
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+ 
++func fcntl(fd int, cmd int, arg int) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg))
++	n = int(r0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_fcntl_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_fcntl fcntl "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fcntlPtr(fd int, cmd int, arg unsafe.Pointer) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg))
++	n = 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 := syscall_syscall6(libc_ppoll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+ 	n = int(r0)
+@@ -2213,6 +2238,21 @@ var libc_munmap_trampoline_addr uintptr
+ 
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+ 
++func getfsstat(stat *Statfs_t, bufsize uintptr, flags int) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_getfsstat_trampoline_addr, uintptr(unsafe.Pointer(stat)), uintptr(bufsize), uintptr(flags))
++	n = int(r0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_getfsstat_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_getfsstat getfsstat "libc.so"
++
++// 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)
+@@ -2229,3 +2269,33 @@ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error
+ var libc_utimensat_trampoline_addr uintptr
+ 
+ //go:cgo_import_dynamic libc_utimensat utimensat "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func pledge(promises *byte, execpromises *byte) (err error) {
++	_, _, e1 := syscall_syscall(libc_pledge_trampoline_addr, uintptr(unsafe.Pointer(promises)), uintptr(unsafe.Pointer(execpromises)), 0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_pledge_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_pledge pledge "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func unveil(path *byte, flags *byte) (err error) {
++	_, _, e1 := syscall_syscall(libc_unveil_trampoline_addr, uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(flags)), 0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_unveil_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_unveil unveil "libc.so"
++
++
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.s b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.s
+index a6bc32c92..f77d53212 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.s
+@@ -178,6 +178,11 @@ TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0
+ GLOBL	·libc_sysctl_trampoline_addr(SB), RODATA, $8
+ DATA	·libc_sysctl_trampoline_addr(SB)/8, $libc_sysctl_trampoline<>(SB)
+ 
++TEXT libc_fcntl_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_fcntl(SB)
++GLOBL	·libc_fcntl_trampoline_addr(SB), RODATA, $8
++DATA	·libc_fcntl_trampoline_addr(SB)/8, $libc_fcntl_trampoline<>(SB)
++
+ TEXT libc_ppoll_trampoline<>(SB),NOSPLIT,$0-0
+ 	JMP	libc_ppoll(SB)
+ GLOBL	·libc_ppoll_trampoline_addr(SB), RODATA, $8
+@@ -668,7 +673,22 @@ TEXT libc_munmap_trampoline<>(SB),NOSPLIT,$0-0
+ GLOBL	·libc_munmap_trampoline_addr(SB), RODATA, $8
+ DATA	·libc_munmap_trampoline_addr(SB)/8, $libc_munmap_trampoline<>(SB)
+ 
++TEXT libc_getfsstat_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_getfsstat(SB)
++GLOBL	·libc_getfsstat_trampoline_addr(SB), RODATA, $8
++DATA	·libc_getfsstat_trampoline_addr(SB)/8, $libc_getfsstat_trampoline<>(SB)
++
+ TEXT libc_utimensat_trampoline<>(SB),NOSPLIT,$0-0
+ 	JMP	libc_utimensat(SB)
+ GLOBL	·libc_utimensat_trampoline_addr(SB), RODATA, $8
+ DATA	·libc_utimensat_trampoline_addr(SB)/8, $libc_utimensat_trampoline<>(SB)
++
++TEXT libc_pledge_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_pledge(SB)
++GLOBL	·libc_pledge_trampoline_addr(SB), RODATA, $8
++DATA	·libc_pledge_trampoline_addr(SB)/8, $libc_pledge_trampoline<>(SB)
++
++TEXT libc_unveil_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_unveil(SB)
++GLOBL	·libc_unveil_trampoline_addr(SB), RODATA, $8
++DATA	·libc_unveil_trampoline_addr(SB)/8, $libc_unveil_trampoline<>(SB)
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.go
+index c427de509..8c1155cbc 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build openbsd && mips64
+-// +build openbsd,mips64
+ 
+ package unix
+ 
+@@ -585,6 +584,32 @@ var libc_sysctl_trampoline_addr uintptr
+ 
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+ 
++func fcntl(fd int, cmd int, arg int) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg))
++	n = int(r0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_fcntl_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_fcntl fcntl "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fcntlPtr(fd int, cmd int, arg unsafe.Pointer) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg))
++	n = 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 := syscall_syscall6(libc_ppoll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+ 	n = int(r0)
+@@ -2213,6 +2238,21 @@ var libc_munmap_trampoline_addr uintptr
+ 
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+ 
++func getfsstat(stat *Statfs_t, bufsize uintptr, flags int) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_getfsstat_trampoline_addr, uintptr(unsafe.Pointer(stat)), uintptr(bufsize), uintptr(flags))
++	n = int(r0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_getfsstat_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_getfsstat getfsstat "libc.so"
++
++// 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)
+@@ -2229,3 +2269,33 @@ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error
+ var libc_utimensat_trampoline_addr uintptr
+ 
+ //go:cgo_import_dynamic libc_utimensat utimensat "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func pledge(promises *byte, execpromises *byte) (err error) {
++	_, _, e1 := syscall_syscall(libc_pledge_trampoline_addr, uintptr(unsafe.Pointer(promises)), uintptr(unsafe.Pointer(execpromises)), 0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_pledge_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_pledge pledge "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func unveil(path *byte, flags *byte) (err error) {
++	_, _, e1 := syscall_syscall(libc_unveil_trampoline_addr, uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(flags)), 0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_unveil_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_unveil unveil "libc.so"
++
++
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.s b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.s
+index b4e7bceab..fae140b62 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.s
+@@ -178,6 +178,11 @@ TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0
+ GLOBL	·libc_sysctl_trampoline_addr(SB), RODATA, $8
+ DATA	·libc_sysctl_trampoline_addr(SB)/8, $libc_sysctl_trampoline<>(SB)
+ 
++TEXT libc_fcntl_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_fcntl(SB)
++GLOBL	·libc_fcntl_trampoline_addr(SB), RODATA, $8
++DATA	·libc_fcntl_trampoline_addr(SB)/8, $libc_fcntl_trampoline<>(SB)
++
+ TEXT libc_ppoll_trampoline<>(SB),NOSPLIT,$0-0
+ 	JMP	libc_ppoll(SB)
+ GLOBL	·libc_ppoll_trampoline_addr(SB), RODATA, $8
+@@ -668,7 +673,22 @@ TEXT libc_munmap_trampoline<>(SB),NOSPLIT,$0-0
+ GLOBL	·libc_munmap_trampoline_addr(SB), RODATA, $8
+ DATA	·libc_munmap_trampoline_addr(SB)/8, $libc_munmap_trampoline<>(SB)
+ 
++TEXT libc_getfsstat_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_getfsstat(SB)
++GLOBL	·libc_getfsstat_trampoline_addr(SB), RODATA, $8
++DATA	·libc_getfsstat_trampoline_addr(SB)/8, $libc_getfsstat_trampoline<>(SB)
++
+ TEXT libc_utimensat_trampoline<>(SB),NOSPLIT,$0-0
+ 	JMP	libc_utimensat(SB)
+ GLOBL	·libc_utimensat_trampoline_addr(SB), RODATA, $8
+ DATA	·libc_utimensat_trampoline_addr(SB)/8, $libc_utimensat_trampoline<>(SB)
++
++TEXT libc_pledge_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_pledge(SB)
++GLOBL	·libc_pledge_trampoline_addr(SB), RODATA, $8
++DATA	·libc_pledge_trampoline_addr(SB)/8, $libc_pledge_trampoline<>(SB)
++
++TEXT libc_unveil_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_unveil(SB)
++GLOBL	·libc_unveil_trampoline_addr(SB), RODATA, $8
++DATA	·libc_unveil_trampoline_addr(SB)/8, $libc_unveil_trampoline<>(SB)
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.go
+index 60c1a99ae..7cc80c58d 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build openbsd && ppc64
+-// +build openbsd,ppc64
+ 
+ package unix
+ 
+@@ -585,6 +584,32 @@ var libc_sysctl_trampoline_addr uintptr
+ 
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+ 
++func fcntl(fd int, cmd int, arg int) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg))
++	n = int(r0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_fcntl_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_fcntl fcntl "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fcntlPtr(fd int, cmd int, arg unsafe.Pointer) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg))
++	n = 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 := syscall_syscall6(libc_ppoll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+ 	n = int(r0)
+@@ -2213,6 +2238,21 @@ var libc_munmap_trampoline_addr uintptr
+ 
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+ 
++func getfsstat(stat *Statfs_t, bufsize uintptr, flags int) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_getfsstat_trampoline_addr, uintptr(unsafe.Pointer(stat)), uintptr(bufsize), uintptr(flags))
++	n = int(r0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_getfsstat_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_getfsstat getfsstat "libc.so"
++
++// 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)
+@@ -2229,3 +2269,33 @@ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error
+ var libc_utimensat_trampoline_addr uintptr
+ 
+ //go:cgo_import_dynamic libc_utimensat utimensat "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func pledge(promises *byte, execpromises *byte) (err error) {
++	_, _, e1 := syscall_syscall(libc_pledge_trampoline_addr, uintptr(unsafe.Pointer(promises)), uintptr(unsafe.Pointer(execpromises)), 0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_pledge_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_pledge pledge "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func unveil(path *byte, flags *byte) (err error) {
++	_, _, e1 := syscall_syscall(libc_unveil_trampoline_addr, uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(flags)), 0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_unveil_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_unveil unveil "libc.so"
++
++
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.s b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.s
+index ca3f76600..9d1e0ff06 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.s
+@@ -213,6 +213,12 @@ TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0
+ GLOBL	·libc_sysctl_trampoline_addr(SB), RODATA, $8
+ DATA	·libc_sysctl_trampoline_addr(SB)/8, $libc_sysctl_trampoline<>(SB)
+ 
++TEXT libc_fcntl_trampoline<>(SB),NOSPLIT,$0-0
++	CALL	libc_fcntl(SB)
++	RET
++GLOBL	·libc_fcntl_trampoline_addr(SB), RODATA, $8
++DATA	·libc_fcntl_trampoline_addr(SB)/8, $libc_fcntl_trampoline<>(SB)
++
+ TEXT libc_ppoll_trampoline<>(SB),NOSPLIT,$0-0
+ 	CALL	libc_ppoll(SB)
+ 	RET
+@@ -801,8 +807,26 @@ TEXT libc_munmap_trampoline<>(SB),NOSPLIT,$0-0
+ GLOBL	·libc_munmap_trampoline_addr(SB), RODATA, $8
+ DATA	·libc_munmap_trampoline_addr(SB)/8, $libc_munmap_trampoline<>(SB)
+ 
++TEXT libc_getfsstat_trampoline<>(SB),NOSPLIT,$0-0
++	CALL	libc_getfsstat(SB)
++	RET
++GLOBL	·libc_getfsstat_trampoline_addr(SB), RODATA, $8
++DATA	·libc_getfsstat_trampoline_addr(SB)/8, $libc_getfsstat_trampoline<>(SB)
++
+ TEXT libc_utimensat_trampoline<>(SB),NOSPLIT,$0-0
+ 	CALL	libc_utimensat(SB)
+ 	RET
+ GLOBL	·libc_utimensat_trampoline_addr(SB), RODATA, $8
+ DATA	·libc_utimensat_trampoline_addr(SB)/8, $libc_utimensat_trampoline<>(SB)
++
++TEXT libc_pledge_trampoline<>(SB),NOSPLIT,$0-0
++	CALL	libc_pledge(SB)
++	RET
++GLOBL	·libc_pledge_trampoline_addr(SB), RODATA, $8
++DATA	·libc_pledge_trampoline_addr(SB)/8, $libc_pledge_trampoline<>(SB)
++
++TEXT libc_unveil_trampoline<>(SB),NOSPLIT,$0-0
++	CALL	libc_unveil(SB)
++	RET
++GLOBL	·libc_unveil_trampoline_addr(SB), RODATA, $8
++DATA	·libc_unveil_trampoline_addr(SB)/8, $libc_unveil_trampoline<>(SB)
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.go
+index 52eba360f..0688737f4 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build openbsd && riscv64
+-// +build openbsd,riscv64
+ 
+ package unix
+ 
+@@ -585,6 +584,32 @@ var libc_sysctl_trampoline_addr uintptr
+ 
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+ 
++func fcntl(fd int, cmd int, arg int) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg))
++	n = int(r0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_fcntl_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_fcntl fcntl "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func fcntlPtr(fd int, cmd int, arg unsafe.Pointer) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg))
++	n = 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 := syscall_syscall6(libc_ppoll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0)
+ 	n = int(r0)
+@@ -2213,6 +2238,21 @@ var libc_munmap_trampoline_addr uintptr
+ 
+ // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+ 
++func getfsstat(stat *Statfs_t, bufsize uintptr, flags int) (n int, err error) {
++	r0, _, e1 := syscall_syscall(libc_getfsstat_trampoline_addr, uintptr(unsafe.Pointer(stat)), uintptr(bufsize), uintptr(flags))
++	n = int(r0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_getfsstat_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_getfsstat getfsstat "libc.so"
++
++// 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)
+@@ -2229,3 +2269,33 @@ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error
+ var libc_utimensat_trampoline_addr uintptr
+ 
+ //go:cgo_import_dynamic libc_utimensat utimensat "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func pledge(promises *byte, execpromises *byte) (err error) {
++	_, _, e1 := syscall_syscall(libc_pledge_trampoline_addr, uintptr(unsafe.Pointer(promises)), uintptr(unsafe.Pointer(execpromises)), 0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_pledge_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_pledge pledge "libc.so"
++
++// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
++
++func unveil(path *byte, flags *byte) (err error) {
++	_, _, e1 := syscall_syscall(libc_unveil_trampoline_addr, uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(flags)), 0)
++	if e1 != 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
++var libc_unveil_trampoline_addr uintptr
++
++//go:cgo_import_dynamic libc_unveil unveil "libc.so"
++
++
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.s b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.s
+index 477a7d5b2..da115f9a4 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.s
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.s
+@@ -178,6 +178,11 @@ TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0
+ GLOBL	·libc_sysctl_trampoline_addr(SB), RODATA, $8
+ DATA	·libc_sysctl_trampoline_addr(SB)/8, $libc_sysctl_trampoline<>(SB)
+ 
++TEXT libc_fcntl_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_fcntl(SB)
++GLOBL	·libc_fcntl_trampoline_addr(SB), RODATA, $8
++DATA	·libc_fcntl_trampoline_addr(SB)/8, $libc_fcntl_trampoline<>(SB)
++
+ TEXT libc_ppoll_trampoline<>(SB),NOSPLIT,$0-0
+ 	JMP	libc_ppoll(SB)
+ GLOBL	·libc_ppoll_trampoline_addr(SB), RODATA, $8
+@@ -668,7 +673,22 @@ TEXT libc_munmap_trampoline<>(SB),NOSPLIT,$0-0
+ GLOBL	·libc_munmap_trampoline_addr(SB), RODATA, $8
+ DATA	·libc_munmap_trampoline_addr(SB)/8, $libc_munmap_trampoline<>(SB)
+ 
++TEXT libc_getfsstat_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_getfsstat(SB)
++GLOBL	·libc_getfsstat_trampoline_addr(SB), RODATA, $8
++DATA	·libc_getfsstat_trampoline_addr(SB)/8, $libc_getfsstat_trampoline<>(SB)
++
+ TEXT libc_utimensat_trampoline<>(SB),NOSPLIT,$0-0
+ 	JMP	libc_utimensat(SB)
+ GLOBL	·libc_utimensat_trampoline_addr(SB), RODATA, $8
+ DATA	·libc_utimensat_trampoline_addr(SB)/8, $libc_utimensat_trampoline<>(SB)
++
++TEXT libc_pledge_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_pledge(SB)
++GLOBL	·libc_pledge_trampoline_addr(SB), RODATA, $8
++DATA	·libc_pledge_trampoline_addr(SB)/8, $libc_pledge_trampoline<>(SB)
++
++TEXT libc_unveil_trampoline<>(SB),NOSPLIT,$0-0
++	JMP	libc_unveil(SB)
++GLOBL	·libc_unveil_trampoline_addr(SB), RODATA, $8
++DATA	·libc_unveil_trampoline_addr(SB)/8, $libc_unveil_trampoline<>(SB)
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
+index b40189464..829b87feb 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build solaris && amd64
+-// +build solaris,amd64
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go
+index 1d8fe1d4b..94f011238 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build zos && s390x
+-// +build zos,s390x
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go b/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go
+index 55e048471..3a58ae819 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; DO NOT EDIT.
+ 
+ //go:build 386 && openbsd
+-// +build 386,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go
+index d2243cf83..dcb7a0eb7 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; DO NOT EDIT.
+ 
+ //go:build amd64 && openbsd
+-// +build amd64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go b/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go
+index 82dc51bd8..db5a7bf13 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; DO NOT EDIT.
+ 
+ //go:build arm && openbsd
+-// +build arm,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go
+index cbdda1a4a..7be575a77 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; DO NOT EDIT.
+ 
+ //go:build arm64 && openbsd
+-// +build arm64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go
+index f55eae1a8..d6e3174c6 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; DO NOT EDIT.
+ 
+ //go:build mips64 && openbsd
+-// +build mips64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_ppc64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_ppc64.go
+index e44054470..ee97157d0 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_ppc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_ppc64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; DO NOT EDIT.
+ 
+ //go:build ppc64 && openbsd
+-// +build ppc64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_riscv64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_riscv64.go
+index a0db82fce..35c3b91d0 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_riscv64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysctl_openbsd_riscv64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; DO NOT EDIT.
+ 
+ //go:build riscv64 && openbsd
+-// +build riscv64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go
+index f8298ff9b..5edda7687 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && darwin
+-// +build amd64,darwin
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go
+index 5eb433bbf..0dc9e8b4d 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm64 && darwin
+-// +build arm64,darwin
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go
+index 703675c0c..308ddf3a1 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && dragonfly
+-// +build amd64,dragonfly
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go
+index 4e0d96107..418664e3d 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build 386 && freebsd
+-// +build 386,freebsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go
+index 01636b838..34d0b86d7 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && freebsd
+-// +build amd64,freebsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go
+index ad99bc106..b71cf45e2 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm && freebsd
+-// +build arm,freebsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go
+index 89dcc4274..e32df1c1e 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm64 && freebsd
+-// +build arm64,freebsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_riscv64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_riscv64.go
+index ee37aaa0c..15ad6111f 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_riscv64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_freebsd_riscv64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build riscv64 && freebsd
+-// +build riscv64,freebsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
+index 9862853d3..fcf3ecbdd 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build 386 && linux
+-// +build 386,linux
+ 
+ package unix
+ 
+@@ -448,4 +447,5 @@ const (
+ 	SYS_FUTEX_WAITV                  = 449
+ 	SYS_SET_MEMPOLICY_HOME_NODE      = 450
+ 	SYS_CACHESTAT                    = 451
++	SYS_FCHMODAT2                    = 452
+ )
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go
+index 8901f0f4e..f56dc2504 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && linux
+-// +build amd64,linux
+ 
+ package unix
+ 
+@@ -370,4 +369,6 @@ const (
+ 	SYS_FUTEX_WAITV             = 449
+ 	SYS_SET_MEMPOLICY_HOME_NODE = 450
+ 	SYS_CACHESTAT               = 451
++	SYS_FCHMODAT2               = 452
++	SYS_MAP_SHADOW_STACK        = 453
+ )
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go
+index 6902c37ee..974bf2467 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm && linux
+-// +build arm,linux
+ 
+ package unix
+ 
+@@ -412,4 +411,5 @@ const (
+ 	SYS_FUTEX_WAITV                  = 449
+ 	SYS_SET_MEMPOLICY_HOME_NODE      = 450
+ 	SYS_CACHESTAT                    = 451
++	SYS_FCHMODAT2                    = 452
+ )
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
+index a6d3dff81..39a2739e2 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm64 && linux
+-// +build arm64,linux
+ 
+ package unix
+ 
+@@ -315,4 +314,5 @@ const (
+ 	SYS_FUTEX_WAITV             = 449
+ 	SYS_SET_MEMPOLICY_HOME_NODE = 450
+ 	SYS_CACHESTAT               = 451
++	SYS_FCHMODAT2               = 452
+ )
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go
+index b18f3f710..cf9c9d77e 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build loong64 && linux
+-// +build loong64,linux
+ 
+ package unix
+ 
+@@ -309,4 +308,5 @@ const (
+ 	SYS_FUTEX_WAITV             = 449
+ 	SYS_SET_MEMPOLICY_HOME_NODE = 450
+ 	SYS_CACHESTAT               = 451
++	SYS_FCHMODAT2               = 452
+ )
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go
+index 0302e5e3d..10b7362ef 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build mips && linux
+-// +build mips,linux
+ 
+ package unix
+ 
+@@ -432,4 +431,5 @@ const (
+ 	SYS_FUTEX_WAITV                  = 4449
+ 	SYS_SET_MEMPOLICY_HOME_NODE      = 4450
+ 	SYS_CACHESTAT                    = 4451
++	SYS_FCHMODAT2                    = 4452
+ )
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go
+index 6693ba4a0..cd4d8b4fd 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build mips64 && linux
+-// +build mips64,linux
+ 
+ package unix
+ 
+@@ -362,4 +361,5 @@ const (
+ 	SYS_FUTEX_WAITV             = 5449
+ 	SYS_SET_MEMPOLICY_HOME_NODE = 5450
+ 	SYS_CACHESTAT               = 5451
++	SYS_FCHMODAT2               = 5452
+ )
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go
+index fd93f4987..2c0efca81 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build mips64le && linux
+-// +build mips64le,linux
+ 
+ package unix
+ 
+@@ -362,4 +361,5 @@ const (
+ 	SYS_FUTEX_WAITV             = 5449
+ 	SYS_SET_MEMPOLICY_HOME_NODE = 5450
+ 	SYS_CACHESTAT               = 5451
++	SYS_FCHMODAT2               = 5452
+ )
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go
+index 760ddcadc..a72e31d39 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build mipsle && linux
+-// +build mipsle,linux
+ 
+ package unix
+ 
+@@ -432,4 +431,5 @@ const (
+ 	SYS_FUTEX_WAITV                  = 4449
+ 	SYS_SET_MEMPOLICY_HOME_NODE      = 4450
+ 	SYS_CACHESTAT                    = 4451
++	SYS_FCHMODAT2                    = 4452
+ )
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go
+index cff2b2555..c7d1e3747 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build ppc && linux
+-// +build ppc,linux
+ 
+ package unix
+ 
+@@ -439,4 +438,5 @@ const (
+ 	SYS_FUTEX_WAITV                  = 449
+ 	SYS_SET_MEMPOLICY_HOME_NODE      = 450
+ 	SYS_CACHESTAT                    = 451
++	SYS_FCHMODAT2                    = 452
+ )
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
+index a4b2405d0..f4d4838c8 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build ppc64 && linux
+-// +build ppc64,linux
+ 
+ package unix
+ 
+@@ -411,4 +410,5 @@ const (
+ 	SYS_FUTEX_WAITV             = 449
+ 	SYS_SET_MEMPOLICY_HOME_NODE = 450
+ 	SYS_CACHESTAT               = 451
++	SYS_FCHMODAT2               = 452
+ )
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
+index aca54b4e3..b64f0e591 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build ppc64le && linux
+-// +build ppc64le,linux
+ 
+ package unix
+ 
+@@ -411,4 +410,5 @@ const (
+ 	SYS_FUTEX_WAITV             = 449
+ 	SYS_SET_MEMPOLICY_HOME_NODE = 450
+ 	SYS_CACHESTAT               = 451
++	SYS_FCHMODAT2               = 452
+ )
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go
+index 9d1738d64..95711195a 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build riscv64 && linux
+-// +build riscv64,linux
+ 
+ package unix
+ 
+@@ -316,4 +315,5 @@ const (
+ 	SYS_FUTEX_WAITV             = 449
+ 	SYS_SET_MEMPOLICY_HOME_NODE = 450
+ 	SYS_CACHESTAT               = 451
++	SYS_FCHMODAT2               = 452
+ )
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go
+index 022878dc8..f94e943bc 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build s390x && linux
+-// +build s390x,linux
+ 
+ package unix
+ 
+@@ -377,4 +376,5 @@ const (
+ 	SYS_FUTEX_WAITV             = 449
+ 	SYS_SET_MEMPOLICY_HOME_NODE = 450
+ 	SYS_CACHESTAT               = 451
++	SYS_FCHMODAT2               = 452
+ )
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go
+index 4100a761c..ba0c2bc51 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build sparc64 && linux
+-// +build sparc64,linux
+ 
+ package unix
+ 
+@@ -390,4 +389,5 @@ const (
+ 	SYS_FUTEX_WAITV             = 449
+ 	SYS_SET_MEMPOLICY_HOME_NODE = 450
+ 	SYS_CACHESTAT               = 451
++	SYS_FCHMODAT2               = 452
+ )
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go
+index 3a6699eba..b2aa8cd49 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build 386 && netbsd
+-// +build 386,netbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go
+index 5677cd4f1..524a1b1c9 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && netbsd
+-// +build amd64,netbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go
+index e784cb6db..d59b943ac 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm && netbsd
+-// +build arm,netbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go
+index bd4952efa..31e771d53 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; DO NOT EDIT.
+ 
+ //go:build arm64 && netbsd
+-// +build arm64,netbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go
+index 597733813..9fd77c6cb 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build 386 && openbsd
+-// +build 386,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go
+index 16af29189..af10af28c 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && openbsd
+-// +build amd64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go
+index f59b18a97..cc2028af4 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm && openbsd
+-// +build arm,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go
+index 721ef5910..c06dd4415 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm64 && openbsd
+-// +build arm64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go
+index 01c43a01f..9ddbf3e08 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build mips64 && openbsd
+-// +build mips64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_ppc64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_ppc64.go
+index f258cfa24..19a6ee413 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_ppc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_ppc64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build ppc64 && openbsd
+-// +build ppc64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_riscv64.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_riscv64.go
+index 07919e0ec..05192a782 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_riscv64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_openbsd_riscv64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build riscv64 && openbsd
+-// +build riscv64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_zos_s390x.go b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_zos_s390x.go
+index 073daad43..b2e308581 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/zsysnum_zos_s390x.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/zsysnum_zos_s390x.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build zos && s390x
+-// +build zos,s390x
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go
+index 7a8161c1d..3e6d57cae 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build ppc && aix
+-// +build ppc,aix
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go
+index 07ed733c5..3a219bdce 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build ppc64 && aix
+-// +build ppc64,aix
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go
+index 690cefc3d..091d107f3 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && darwin
+-// +build amd64,darwin
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go
+index 5bffc10ea..28ff4ef74 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm64 && darwin
+-// +build arm64,darwin
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go
+index d0ba8e9b8..30e405bb4 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && dragonfly
+-// +build amd64,dragonfly
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go
+index 29dc48337..6cbd094a3 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build 386 && freebsd
+-// +build 386,freebsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
+index 0a89b2890..7c03b6ee7 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && freebsd
+-// +build amd64,freebsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go
+index c8666bb15..422107ee8 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm && freebsd
+-// +build arm,freebsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go
+index 88fb48a88..505a12acf 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm64 && freebsd
+-// +build arm64,freebsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_riscv64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_riscv64.go
+index 698dc975e..cc986c790 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_riscv64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_freebsd_riscv64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build riscv64 && freebsd
+-// +build riscv64,freebsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux.go
+index 18aa70b42..bbf8399ff 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux.go
+@@ -1,7 +1,6 @@
+ // Code generated by mkmerge; DO NOT EDIT.
+ 
+ //go:build linux
+-// +build linux
+ 
+ package unix
+ 
+@@ -2672,6 +2671,7 @@ const (
+ 	BPF_PROG_TYPE_LSM                          = 0x1d
+ 	BPF_PROG_TYPE_SK_LOOKUP                    = 0x1e
+ 	BPF_PROG_TYPE_SYSCALL                      = 0x1f
++	BPF_PROG_TYPE_NETFILTER                    = 0x20
+ 	BPF_CGROUP_INET_INGRESS                    = 0x0
+ 	BPF_CGROUP_INET_EGRESS                     = 0x1
+ 	BPF_CGROUP_INET_SOCK_CREATE                = 0x2
+@@ -2716,6 +2716,11 @@ const (
+ 	BPF_PERF_EVENT                             = 0x29
+ 	BPF_TRACE_KPROBE_MULTI                     = 0x2a
+ 	BPF_LSM_CGROUP                             = 0x2b
++	BPF_STRUCT_OPS                             = 0x2c
++	BPF_NETFILTER                              = 0x2d
++	BPF_TCX_INGRESS                            = 0x2e
++	BPF_TCX_EGRESS                             = 0x2f
++	BPF_TRACE_UPROBE_MULTI                     = 0x30
+ 	BPF_LINK_TYPE_UNSPEC                       = 0x0
+ 	BPF_LINK_TYPE_RAW_TRACEPOINT               = 0x1
+ 	BPF_LINK_TYPE_TRACING                      = 0x2
+@@ -2726,6 +2731,18 @@ const (
+ 	BPF_LINK_TYPE_PERF_EVENT                   = 0x7
+ 	BPF_LINK_TYPE_KPROBE_MULTI                 = 0x8
+ 	BPF_LINK_TYPE_STRUCT_OPS                   = 0x9
++	BPF_LINK_TYPE_NETFILTER                    = 0xa
++	BPF_LINK_TYPE_TCX                          = 0xb
++	BPF_LINK_TYPE_UPROBE_MULTI                 = 0xc
++	BPF_PERF_EVENT_UNSPEC                      = 0x0
++	BPF_PERF_EVENT_UPROBE                      = 0x1
++	BPF_PERF_EVENT_URETPROBE                   = 0x2
++	BPF_PERF_EVENT_KPROBE                      = 0x3
++	BPF_PERF_EVENT_KRETPROBE                   = 0x4
++	BPF_PERF_EVENT_TRACEPOINT                  = 0x5
++	BPF_PERF_EVENT_EVENT                       = 0x6
++	BPF_F_KPROBE_MULTI_RETURN                  = 0x1
++	BPF_F_UPROBE_MULTI_RETURN                  = 0x1
+ 	BPF_ANY                                    = 0x0
+ 	BPF_NOEXIST                                = 0x1
+ 	BPF_EXIST                                  = 0x2
+@@ -2743,6 +2760,8 @@ const (
+ 	BPF_F_MMAPABLE                             = 0x400
+ 	BPF_F_PRESERVE_ELEMS                       = 0x800
+ 	BPF_F_INNER_MAP                            = 0x1000
++	BPF_F_LINK                                 = 0x2000
++	BPF_F_PATH_FD                              = 0x4000
+ 	BPF_STATS_RUN_TIME                         = 0x0
+ 	BPF_STACK_BUILD_ID_EMPTY                   = 0x0
+ 	BPF_STACK_BUILD_ID_VALID                   = 0x1
+@@ -2763,6 +2782,7 @@ const (
+ 	BPF_F_ZERO_CSUM_TX                         = 0x2
+ 	BPF_F_DONT_FRAGMENT                        = 0x4
+ 	BPF_F_SEQ_NUMBER                           = 0x8
++	BPF_F_NO_TUNNEL_KEY                        = 0x10
+ 	BPF_F_TUNINFO_FLAGS                        = 0x10
+ 	BPF_F_INDEX_MASK                           = 0xffffffff
+ 	BPF_F_CURRENT_CPU                          = 0xffffffff
+@@ -2779,6 +2799,8 @@ const (
+ 	BPF_F_ADJ_ROOM_ENCAP_L4_UDP                = 0x10
+ 	BPF_F_ADJ_ROOM_NO_CSUM_RESET               = 0x20
+ 	BPF_F_ADJ_ROOM_ENCAP_L2_ETH                = 0x40
++	BPF_F_ADJ_ROOM_DECAP_L3_IPV4               = 0x80
++	BPF_F_ADJ_ROOM_DECAP_L3_IPV6               = 0x100
+ 	BPF_ADJ_ROOM_ENCAP_L2_MASK                 = 0xff
+ 	BPF_ADJ_ROOM_ENCAP_L2_SHIFT                = 0x38
+ 	BPF_F_SYSCTL_BASE_NAME                     = 0x1
+@@ -2867,6 +2889,8 @@ const (
+ 	BPF_DEVCG_DEV_CHAR                         = 0x2
+ 	BPF_FIB_LOOKUP_DIRECT                      = 0x1
+ 	BPF_FIB_LOOKUP_OUTPUT                      = 0x2
++	BPF_FIB_LOOKUP_SKIP_NEIGH                  = 0x4
++	BPF_FIB_LOOKUP_TBID                        = 0x8
+ 	BPF_FIB_LKUP_RET_SUCCESS                   = 0x0
+ 	BPF_FIB_LKUP_RET_BLACKHOLE                 = 0x1
+ 	BPF_FIB_LKUP_RET_UNREACHABLE               = 0x2
+@@ -2902,6 +2926,7 @@ const (
+ 	BPF_CORE_ENUMVAL_EXISTS                    = 0xa
+ 	BPF_CORE_ENUMVAL_VALUE                     = 0xb
+ 	BPF_CORE_TYPE_MATCHES                      = 0xc
++	BPF_F_TIMER_ABS                            = 0x1
+ )
+ 
+ const (
+@@ -2980,6 +3005,12 @@ type LoopInfo64 struct {
+ 	Encrypt_key      [32]uint8
+ 	Init             [2]uint64
+ }
++type LoopConfig struct {
++	Fd   uint32
++	Size uint32
++	Info LoopInfo64
++	_    [8]uint64
++}
+ 
+ type TIPCSocketAddr struct {
+ 	Ref  uint32
+@@ -5883,3 +5914,15 @@ type SchedAttr struct {
+ }
+ 
+ const SizeofSchedAttr = 0x38
++
++type Cachestat_t struct {
++	Cache            uint64
++	Dirty            uint64
++	Writeback        uint64
++	Evicted          uint64
++	Recently_evicted uint64
++}
++type CachestatRange struct {
++	Off uint64
++	Len uint64
++}
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_386.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_386.go
+index 6d8acbcc5..438a30aff 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build 386 && linux
+-// +build 386,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
+index 59293c688..adceca355 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && linux
+-// +build amd64,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
+index 40cfa38c2..eeaa00a37 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm && linux
+-// +build arm,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
+index 055bc4216..6739aa91d 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm64 && linux
+-// +build arm64,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_loong64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_loong64.go
+index f28affbc6..9920ef631 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_loong64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_loong64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build loong64 && linux
+-// +build loong64,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go
+index 9d71e7ccd..2923b799a 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build mips && linux
+-// +build mips,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go
+index fd5ccd332..ce2750ee4 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build mips64 && linux
+-// +build mips64,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go
+index 7704de77a..3038811d7 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build mips64le && linux
+-// +build mips64le,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go
+index df00b8757..efc6fed18 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build mipsle && linux
+-// +build mipsle,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go
+index 0942840db..9a654b75a 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build ppc && linux
+-// +build ppc,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
+index 034874395..40d358e33 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build ppc64 && linux
+-// +build ppc64,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
+index bad067047..148c6ceb8 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build ppc64le && linux
+-// +build ppc64le,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go
+index 1b4c97c32..72ba81543 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build riscv64 && linux
+-// +build riscv64,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go
+index aa268d025..71e765508 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build s390x && linux
+-// +build s390x,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go
+index 444045b6c..4abbdb9de 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build sparc64 && linux
+-// +build sparc64,linux
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go
+index 9bc4c8f9d..f22e7947d 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build 386 && netbsd
+-// +build 386,netbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
+index bb05f655d..066a7d83d 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && netbsd
+-// +build amd64,netbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go
+index db40e3a19..439548ec9 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm && netbsd
+-// +build arm,netbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go
+index 11121151c..16085d3bb 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm64 && netbsd
+-// +build arm64,netbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go
+index 26eba23b7..afd13a3af 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build 386 && openbsd
+-// +build 386,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
+index 5a5479886..5d97f1f9b 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && openbsd
+-// +build amd64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go
+index be58c4e1f..34871cdc1 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm && openbsd
+-// +build arm,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go
+index 52338266c..5911bceb3 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build arm64 && openbsd
+-// +build arm64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go
+index 605cfdb12..e4f24f3bc 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build mips64 && openbsd
+-// +build mips64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_ppc64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_ppc64.go
+index d6724c010..ca50a7930 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_ppc64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_ppc64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build ppc64 && openbsd
+-// +build ppc64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_riscv64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_riscv64.go
+index ddfd27a43..d7d7f7902 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_riscv64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_openbsd_riscv64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build riscv64 && openbsd
+-// +build riscv64,openbsd
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go
+index 0400747c6..14160576d 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go
+@@ -2,7 +2,6 @@
+ // Code generated by the command above; see README.md. DO NOT EDIT.
+ 
+ //go:build amd64 && solaris
+-// +build amd64,solaris
+ 
+ package unix
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go b/go-controller/vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go
+index aec1efcb3..54f31be63 100644
+--- a/go-controller/vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go
++++ b/go-controller/vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build zos && s390x
+-// +build zos,s390x
+ 
+ // Hand edited based on ztypes_linux_s390x.go
+ // TODO: auto-generate.
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/aliases.go b/go-controller/vendor/golang.org/x/sys/windows/aliases.go
+index a20ebea63..ce2d713d6 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/aliases.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/aliases.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build windows && go1.9
+-// +build windows,go1.9
+ 
+ package windows
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/empty.s b/go-controller/vendor/golang.org/x/sys/windows/empty.s
+index fdbbbcd31..ba64caca5 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/empty.s
++++ b/go-controller/vendor/golang.org/x/sys/windows/empty.s
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build !go1.12
+-// +build !go1.12
+ 
+ // This file is here to allow bodyless functions with go:linkname for Go 1.11
+ // and earlier (see https://golang.org/issue/23311).
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/eventlog.go b/go-controller/vendor/golang.org/x/sys/windows/eventlog.go
+index 2cd60645e..6c366955d 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/eventlog.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/eventlog.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build windows
+-// +build windows
+ 
+ package windows
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/mksyscall.go b/go-controller/vendor/golang.org/x/sys/windows/mksyscall.go
+index 8563f79c5..dbcdb090c 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/mksyscall.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/mksyscall.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build generate
+-// +build generate
+ 
+ package windows
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/race.go b/go-controller/vendor/golang.org/x/sys/windows/race.go
+index 9196b089c..0f1bdc386 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/race.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/race.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build windows && race
+-// +build windows,race
+ 
+ package windows
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/race0.go b/go-controller/vendor/golang.org/x/sys/windows/race0.go
+index 7bae4817a..0c78da78b 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/race0.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/race0.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build windows && !race
+-// +build windows,!race
+ 
+ package windows
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/registry/key.go b/go-controller/vendor/golang.org/x/sys/windows/registry/key.go
+index 6c8d97b6a..fd8632444 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/registry/key.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/registry/key.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build windows
+-// +build windows
+ 
+ // Package registry provides access to the Windows registry.
+ //
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/registry/mksyscall.go b/go-controller/vendor/golang.org/x/sys/windows/registry/mksyscall.go
+index ee74927d3..bbf86ccf0 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/registry/mksyscall.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/registry/mksyscall.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build generate
+-// +build generate
+ 
+ package registry
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/registry/syscall.go b/go-controller/vendor/golang.org/x/sys/windows/registry/syscall.go
+index 417335123..f533091c1 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/registry/syscall.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/registry/syscall.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build windows
+-// +build windows
+ 
+ package registry
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/registry/value.go b/go-controller/vendor/golang.org/x/sys/windows/registry/value.go
+index 2789f6f18..74db26b94 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/registry/value.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/registry/value.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build windows
+-// +build windows
+ 
+ package registry
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/service.go b/go-controller/vendor/golang.org/x/sys/windows/service.go
+index c44a1b963..a9dc6308d 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/service.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/service.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build windows
+-// +build windows
+ 
+ package windows
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/str.go b/go-controller/vendor/golang.org/x/sys/windows/str.go
+index 4fc01434e..6a4f9ce6a 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/str.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/str.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build windows
+-// +build windows
+ 
+ package windows
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/svc/security.go b/go-controller/vendor/golang.org/x/sys/windows/svc/security.go
+index 1c51006ea..6a1f3c627 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/svc/security.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/svc/security.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build windows
+-// +build windows
+ 
+ package svc
+ 
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/svc/service.go b/go-controller/vendor/golang.org/x/sys/windows/svc/service.go
+index e9e47f0b4..c96932d96 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/svc/service.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/svc/service.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build windows
+-// +build windows
+ 
+ // Package svc provides everything required to build Windows service.
+ package svc
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/syscall.go b/go-controller/vendor/golang.org/x/sys/windows/syscall.go
+index 8732cdb95..e85ed6b9c 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/syscall.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/syscall.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build windows
+-// +build windows
+ 
+ // Package windows contains an interface to the low-level operating system
+ // primitives. OS details vary depending on the underlying system, and
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/syscall_windows.go b/go-controller/vendor/golang.org/x/sys/windows/syscall_windows.go
+index 35cfc57ca..47dc57967 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/syscall_windows.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/syscall_windows.go
+@@ -155,6 +155,8 @@ func NewCallbackCDecl(fn interface{}) uintptr {
+ //sys	GetModuleFileName(module Handle, filename *uint16, size uint32) (n uint32, err error) = kernel32.GetModuleFileNameW
+ //sys	GetModuleHandleEx(flags uint32, moduleName *uint16, module *Handle) (err error) = kernel32.GetModuleHandleExW
+ //sys	SetDefaultDllDirectories(directoryFlags uint32) (err error)
++//sys	AddDllDirectory(path *uint16) (cookie uintptr, err error) = kernel32.AddDllDirectory
++//sys	RemoveDllDirectory(cookie uintptr) (err error) = kernel32.RemoveDllDirectory
+ //sys	SetDllDirectory(path string) (err error) = kernel32.SetDllDirectoryW
+ //sys	GetVersion() (ver uint32, err error)
+ //sys	FormatMessage(flags uint32, msgsrc uintptr, msgid uint32, langid uint32, buf []uint16, args *byte) (n uint32, err error) = FormatMessageW
+@@ -233,6 +235,7 @@ func NewCallbackCDecl(fn interface{}) uintptr {
+ //sys	CreateEnvironmentBlock(block **uint16, token Token, inheritExisting bool) (err error) = userenv.CreateEnvironmentBlock
+ //sys	DestroyEnvironmentBlock(block *uint16) (err error) = userenv.DestroyEnvironmentBlock
+ //sys	getTickCount64() (ms uint64) = kernel32.GetTickCount64
++//sys   GetFileTime(handle Handle, ctime *Filetime, atime *Filetime, wtime *Filetime) (err error)
+ //sys	SetFileTime(handle Handle, ctime *Filetime, atime *Filetime, wtime *Filetime) (err error)
+ //sys	GetFileAttributes(name *uint16) (attrs uint32, err error) [failretval==INVALID_FILE_ATTRIBUTES] = kernel32.GetFileAttributesW
+ //sys	SetFileAttributes(name *uint16, attrs uint32) (err error) = kernel32.SetFileAttributesW
+@@ -969,7 +972,8 @@ func (sa *SockaddrUnix) sockaddr() (unsafe.Pointer, int32, error) {
+ 	if n > 0 {
+ 		sl += int32(n) + 1
+ 	}
+-	if sa.raw.Path[0] == '@' {
++	if sa.raw.Path[0] == '@' || (sa.raw.Path[0] == 0 && sl > 3) {
++		// Check sl > 3 so we don't change unnamed socket behavior.
+ 		sa.raw.Path[0] = 0
+ 		// Don't count trailing NUL for abstract address.
+ 		sl--
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/types_windows.go b/go-controller/vendor/golang.org/x/sys/windows/types_windows.go
+index b88dc7c85..359780f6a 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/types_windows.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/types_windows.go
+@@ -1094,7 +1094,33 @@ const (
+ 
+ 	SOMAXCONN = 0x7fffffff
+ 
+-	TCP_NODELAY = 1
++	TCP_NODELAY                    = 1
++	TCP_EXPEDITED_1122             = 2
++	TCP_KEEPALIVE                  = 3
++	TCP_MAXSEG                     = 4
++	TCP_MAXRT                      = 5
++	TCP_STDURG                     = 6
++	TCP_NOURG                      = 7
++	TCP_ATMARK                     = 8
++	TCP_NOSYNRETRIES               = 9
++	TCP_TIMESTAMPS                 = 10
++	TCP_OFFLOAD_PREFERENCE         = 11
++	TCP_CONGESTION_ALGORITHM       = 12
++	TCP_DELAY_FIN_ACK              = 13
++	TCP_MAXRTMS                    = 14
++	TCP_FASTOPEN                   = 15
++	TCP_KEEPCNT                    = 16
++	TCP_KEEPIDLE                   = TCP_KEEPALIVE
++	TCP_KEEPINTVL                  = 17
++	TCP_FAIL_CONNECT_ON_ICMP_ERROR = 18
++	TCP_ICMP_ERROR_INFO            = 19
++
++	UDP_NOCHECKSUM              = 1
++	UDP_SEND_MSG_SIZE           = 2
++	UDP_RECV_MAX_COALESCED_SIZE = 3
++	UDP_CHECKSUM_COVERAGE       = 20
++
++	UDP_COALESCED_INFO = 3
+ 
+ 	SHUT_RD   = 0
+ 	SHUT_WR   = 1
+diff --git a/go-controller/vendor/golang.org/x/sys/windows/zsyscall_windows.go b/go-controller/vendor/golang.org/x/sys/windows/zsyscall_windows.go
+index 8b1688de4..146a1f019 100644
+--- a/go-controller/vendor/golang.org/x/sys/windows/zsyscall_windows.go
++++ b/go-controller/vendor/golang.org/x/sys/windows/zsyscall_windows.go
+@@ -184,6 +184,7 @@ var (
+ 	procGetAdaptersInfo                                      = modiphlpapi.NewProc("GetAdaptersInfo")
+ 	procGetBestInterfaceEx                                   = modiphlpapi.NewProc("GetBestInterfaceEx")
+ 	procGetIfEntry                                           = modiphlpapi.NewProc("GetIfEntry")
++	procAddDllDirectory                                      = modkernel32.NewProc("AddDllDirectory")
+ 	procAssignProcessToJobObject                             = modkernel32.NewProc("AssignProcessToJobObject")
+ 	procCancelIo                                             = modkernel32.NewProc("CancelIo")
+ 	procCancelIoEx                                           = modkernel32.NewProc("CancelIoEx")
+@@ -253,6 +254,7 @@ var (
+ 	procGetFileAttributesW                                   = modkernel32.NewProc("GetFileAttributesW")
+ 	procGetFileInformationByHandle                           = modkernel32.NewProc("GetFileInformationByHandle")
+ 	procGetFileInformationByHandleEx                         = modkernel32.NewProc("GetFileInformationByHandleEx")
++	procGetFileTime                                          = modkernel32.NewProc("GetFileTime")
+ 	procGetFileType                                          = modkernel32.NewProc("GetFileType")
+ 	procGetFinalPathNameByHandleW                            = modkernel32.NewProc("GetFinalPathNameByHandleW")
+ 	procGetFullPathNameW                                     = modkernel32.NewProc("GetFullPathNameW")
+@@ -329,6 +331,7 @@ var (
+ 	procReadProcessMemory                                    = modkernel32.NewProc("ReadProcessMemory")
+ 	procReleaseMutex                                         = modkernel32.NewProc("ReleaseMutex")
+ 	procRemoveDirectoryW                                     = modkernel32.NewProc("RemoveDirectoryW")
++	procRemoveDllDirectory                                   = modkernel32.NewProc("RemoveDllDirectory")
+ 	procResetEvent                                           = modkernel32.NewProc("ResetEvent")
+ 	procResizePseudoConsole                                  = modkernel32.NewProc("ResizePseudoConsole")
+ 	procResumeThread                                         = modkernel32.NewProc("ResumeThread")
+@@ -1604,6 +1607,15 @@ func GetIfEntry(pIfRow *MibIfRow) (errcode error) {
+ 	return
+ }
+ 
++func AddDllDirectory(path *uint16) (cookie uintptr, err error) {
++	r0, _, e1 := syscall.Syscall(procAddDllDirectory.Addr(), 1, uintptr(unsafe.Pointer(path)), 0, 0)
++	cookie = uintptr(r0)
++	if cookie == 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
+ func AssignProcessToJobObject(job Handle, process Handle) (err error) {
+ 	r1, _, e1 := syscall.Syscall(procAssignProcessToJobObject.Addr(), 2, uintptr(job), uintptr(process), 0)
+ 	if r1 == 0 {
+@@ -2185,6 +2197,14 @@ func GetFileInformationByHandleEx(handle Handle, class uint32, outBuffer *byte,
+ 	return
+ }
+ 
++func GetFileTime(handle Handle, ctime *Filetime, atime *Filetime, wtime *Filetime) (err error) {
++	r1, _, e1 := syscall.Syscall6(procGetFileTime.Addr(), 4, uintptr(handle), uintptr(unsafe.Pointer(ctime)), uintptr(unsafe.Pointer(atime)), uintptr(unsafe.Pointer(wtime)), 0, 0)
++	if r1 == 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
+ func GetFileType(filehandle Handle) (n uint32, err error) {
+ 	r0, _, e1 := syscall.Syscall(procGetFileType.Addr(), 1, uintptr(filehandle), 0, 0)
+ 	n = uint32(r0)
+@@ -2870,6 +2890,14 @@ func RemoveDirectory(path *uint16) (err error) {
+ 	return
+ }
+ 
++func RemoveDllDirectory(cookie uintptr) (err error) {
++	r1, _, e1 := syscall.Syscall(procRemoveDllDirectory.Addr(), 1, uintptr(cookie), 0, 0)
++	if r1 == 0 {
++		err = errnoErr(e1)
++	}
++	return
++}
++
+ func ResetEvent(event Handle) (err error) {
+ 	r1, _, e1 := syscall.Syscall(procResetEvent.Addr(), 1, uintptr(event), 0, 0)
+ 	if r1 == 0 {
+diff --git a/go-controller/vendor/golang.org/x/term/term_unix.go b/go-controller/vendor/golang.org/x/term/term_unix.go
+index 62c2b3f41..1ad0ddfe3 100644
+--- a/go-controller/vendor/golang.org/x/term/term_unix.go
++++ b/go-controller/vendor/golang.org/x/term/term_unix.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos
+-// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos
+ 
+ package term
+ 
+diff --git a/go-controller/vendor/golang.org/x/term/term_unix_bsd.go b/go-controller/vendor/golang.org/x/term/term_unix_bsd.go
+index 853b3d698..9dbf54629 100644
+--- a/go-controller/vendor/golang.org/x/term/term_unix_bsd.go
++++ b/go-controller/vendor/golang.org/x/term/term_unix_bsd.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build darwin || dragonfly || freebsd || netbsd || openbsd
+-// +build darwin dragonfly freebsd netbsd openbsd
+ 
+ package term
+ 
+diff --git a/go-controller/vendor/golang.org/x/term/term_unix_other.go b/go-controller/vendor/golang.org/x/term/term_unix_other.go
+index 1e8955c93..1b36de799 100644
+--- a/go-controller/vendor/golang.org/x/term/term_unix_other.go
++++ b/go-controller/vendor/golang.org/x/term/term_unix_other.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build aix || linux || solaris || zos
+-// +build aix linux solaris zos
+ 
+ package term
+ 
+diff --git a/go-controller/vendor/golang.org/x/term/term_unsupported.go b/go-controller/vendor/golang.org/x/term/term_unsupported.go
+index f1df85065..3c409e588 100644
+--- a/go-controller/vendor/golang.org/x/term/term_unsupported.go
++++ b/go-controller/vendor/golang.org/x/term/term_unsupported.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build !aix && !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !zos && !windows && !solaris && !plan9
+-// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!zos,!windows,!solaris,!plan9
+ 
+ package term
+ 
+diff --git a/go-controller/vendor/golang.org/x/text/secure/bidirule/bidirule10.0.0.go b/go-controller/vendor/golang.org/x/text/secure/bidirule/bidirule10.0.0.go
+index 8a7392c4a..784bb8808 100644
+--- a/go-controller/vendor/golang.org/x/text/secure/bidirule/bidirule10.0.0.go
++++ b/go-controller/vendor/golang.org/x/text/secure/bidirule/bidirule10.0.0.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build go1.10
+-// +build go1.10
+ 
+ package bidirule
+ 
+diff --git a/go-controller/vendor/golang.org/x/text/secure/bidirule/bidirule9.0.0.go b/go-controller/vendor/golang.org/x/text/secure/bidirule/bidirule9.0.0.go
+index bb0a92001..8e1e94395 100644
+--- a/go-controller/vendor/golang.org/x/text/secure/bidirule/bidirule9.0.0.go
++++ b/go-controller/vendor/golang.org/x/text/secure/bidirule/bidirule9.0.0.go
+@@ -3,7 +3,6 @@
+ // license that can be found in the LICENSE file.
+ 
+ //go:build !go1.10
+-// +build !go1.10
+ 
+ package bidirule
+ 
+diff --git a/go-controller/vendor/golang.org/x/text/unicode/bidi/tables10.0.0.go b/go-controller/vendor/golang.org/x/text/unicode/bidi/tables10.0.0.go
+index 42fa8d72c..d2bd71181 100644
+--- a/go-controller/vendor/golang.org/x/text/unicode/bidi/tables10.0.0.go
++++ b/go-controller/vendor/golang.org/x/text/unicode/bidi/tables10.0.0.go
+@@ -1,7 +1,6 @@
+ // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
+ 
+ //go:build go1.10 && !go1.13
+-// +build go1.10,!go1.13
+ 
+ package bidi
+ 
+diff --git a/go-controller/vendor/golang.org/x/text/unicode/bidi/tables11.0.0.go b/go-controller/vendor/golang.org/x/text/unicode/bidi/tables11.0.0.go
+index 56a0e1ea2..f76bdca27 100644
+--- a/go-controller/vendor/golang.org/x/text/unicode/bidi/tables11.0.0.go
++++ b/go-controller/vendor/golang.org/x/text/unicode/bidi/tables11.0.0.go
+@@ -1,7 +1,6 @@
+ // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
+ 
+ //go:build go1.13 && !go1.14
+-// +build go1.13,!go1.14
+ 
+ package bidi
+ 
+diff --git a/go-controller/vendor/golang.org/x/text/unicode/bidi/tables12.0.0.go b/go-controller/vendor/golang.org/x/text/unicode/bidi/tables12.0.0.go
+index baacf32b4..3aa2c3bdf 100644
+--- a/go-controller/vendor/golang.org/x/text/unicode/bidi/tables12.0.0.go
++++ b/go-controller/vendor/golang.org/x/text/unicode/bidi/tables12.0.0.go
+@@ -1,7 +1,6 @@
+ // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
+ 
+ //go:build go1.14 && !go1.16
+-// +build go1.14,!go1.16
+ 
+ package bidi
+ 
+diff --git a/go-controller/vendor/golang.org/x/text/unicode/bidi/tables13.0.0.go b/go-controller/vendor/golang.org/x/text/unicode/bidi/tables13.0.0.go
+index ffadb7beb..a71375790 100644
+--- a/go-controller/vendor/golang.org/x/text/unicode/bidi/tables13.0.0.go
++++ b/go-controller/vendor/golang.org/x/text/unicode/bidi/tables13.0.0.go
+@@ -1,7 +1,6 @@
+ // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
+ 
+ //go:build go1.16 && !go1.21
+-// +build go1.16,!go1.21
+ 
+ package bidi
+ 
+diff --git a/go-controller/vendor/golang.org/x/text/unicode/bidi/tables15.0.0.go b/go-controller/vendor/golang.org/x/text/unicode/bidi/tables15.0.0.go
+index 92cce5802..f15746f7d 100644
+--- a/go-controller/vendor/golang.org/x/text/unicode/bidi/tables15.0.0.go
++++ b/go-controller/vendor/golang.org/x/text/unicode/bidi/tables15.0.0.go
+@@ -1,7 +1,6 @@
+ // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
+ 
+ //go:build go1.21
+-// +build go1.21
+ 
+ package bidi
+ 
+diff --git a/go-controller/vendor/golang.org/x/text/unicode/bidi/tables9.0.0.go b/go-controller/vendor/golang.org/x/text/unicode/bidi/tables9.0.0.go
+index f517fdb20..c164d3791 100644
+--- a/go-controller/vendor/golang.org/x/text/unicode/bidi/tables9.0.0.go
++++ b/go-controller/vendor/golang.org/x/text/unicode/bidi/tables9.0.0.go
+@@ -1,7 +1,6 @@
+ // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
+ 
+ //go:build !go1.10
+-// +build !go1.10
+ 
+ package bidi
+ 
+diff --git a/go-controller/vendor/golang.org/x/text/unicode/norm/tables10.0.0.go b/go-controller/vendor/golang.org/x/text/unicode/norm/tables10.0.0.go
+index f5a078827..1af161c75 100644
+--- a/go-controller/vendor/golang.org/x/text/unicode/norm/tables10.0.0.go
++++ b/go-controller/vendor/golang.org/x/text/unicode/norm/tables10.0.0.go
+@@ -1,7 +1,6 @@
+ // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
+ 
+ //go:build go1.10 && !go1.13
+-// +build go1.10,!go1.13
+ 
+ package norm
+ 
+diff --git a/go-controller/vendor/golang.org/x/text/unicode/norm/tables11.0.0.go b/go-controller/vendor/golang.org/x/text/unicode/norm/tables11.0.0.go
+index cb7239c43..eb73ecc37 100644
+--- a/go-controller/vendor/golang.org/x/text/unicode/norm/tables11.0.0.go
++++ b/go-controller/vendor/golang.org/x/text/unicode/norm/tables11.0.0.go
+@@ -1,7 +1,6 @@
+ // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
+ 
+ //go:build go1.13 && !go1.14
+-// +build go1.13,!go1.14
+ 
+ package norm
+ 
+diff --git a/go-controller/vendor/golang.org/x/text/unicode/norm/tables12.0.0.go b/go-controller/vendor/golang.org/x/text/unicode/norm/tables12.0.0.go
+index 11b273300..276cb8d8c 100644
+--- a/go-controller/vendor/golang.org/x/text/unicode/norm/tables12.0.0.go
++++ b/go-controller/vendor/golang.org/x/text/unicode/norm/tables12.0.0.go
+@@ -1,7 +1,6 @@
+ // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
+ 
+ //go:build go1.14 && !go1.16
+-// +build go1.14,!go1.16
+ 
+ package norm
+ 
+diff --git a/go-controller/vendor/golang.org/x/text/unicode/norm/tables13.0.0.go b/go-controller/vendor/golang.org/x/text/unicode/norm/tables13.0.0.go
+index f65785e8a..0cceffd73 100644
+--- a/go-controller/vendor/golang.org/x/text/unicode/norm/tables13.0.0.go
++++ b/go-controller/vendor/golang.org/x/text/unicode/norm/tables13.0.0.go
+@@ -1,7 +1,6 @@
+ // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
+ 
+ //go:build go1.16 && !go1.21
+-// +build go1.16,!go1.21
+ 
+ package norm
+ 
+diff --git a/go-controller/vendor/golang.org/x/text/unicode/norm/tables15.0.0.go b/go-controller/vendor/golang.org/x/text/unicode/norm/tables15.0.0.go
+index e1858b879..b0819e42d 100644
+--- a/go-controller/vendor/golang.org/x/text/unicode/norm/tables15.0.0.go
++++ b/go-controller/vendor/golang.org/x/text/unicode/norm/tables15.0.0.go
+@@ -1,7 +1,6 @@
+ // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
+ 
+ //go:build go1.21
+-// +build go1.21
+ 
+ package norm
+ 
+diff --git a/go-controller/vendor/golang.org/x/text/unicode/norm/tables9.0.0.go b/go-controller/vendor/golang.org/x/text/unicode/norm/tables9.0.0.go
+index 0175eae50..bf65457d9 100644
+--- a/go-controller/vendor/golang.org/x/text/unicode/norm/tables9.0.0.go
++++ b/go-controller/vendor/golang.org/x/text/unicode/norm/tables9.0.0.go
+@@ -1,7 +1,6 @@
+ // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
+ 
+ //go:build !go1.10
+-// +build !go1.10
+ 
+ package norm
+ 
+diff --git a/go-controller/vendor/k8s.io/client-go/informers/factory.go b/go-controller/vendor/k8s.io/client-go/informers/factory.go
+index 9fc86441a..7dd0ae635 100644
+--- a/go-controller/vendor/k8s.io/client-go/informers/factory.go
++++ b/go-controller/vendor/k8s.io/client-go/informers/factory.go
+@@ -60,7 +60,6 @@ type sharedInformerFactory struct {
+ 	lock             sync.Mutex
+ 	defaultResync    time.Duration
+ 	customResync     map[reflect.Type]time.Duration
+-	transform        cache.TransformFunc
+ 
+ 	informers map[reflect.Type]cache.SharedIndexInformer
+ 	// startedInformers is used for tracking which informers have been started.
+@@ -99,14 +98,6 @@ func WithNamespace(namespace string) SharedInformerOption {
+ 	}
+ }
+ 
+-// WithTransform sets a transform on all informers.
+-func WithTransform(transform cache.TransformFunc) SharedInformerOption {
+-	return func(factory *sharedInformerFactory) *sharedInformerFactory {
+-		factory.transform = transform
+-		return factory
+-	}
+-}
+-
+ // NewSharedInformerFactory constructs a new instance of sharedInformerFactory for all namespaces.
+ func NewSharedInformerFactory(client kubernetes.Interface, defaultResync time.Duration) SharedInformerFactory {
+ 	return NewSharedInformerFactoryWithOptions(client, defaultResync)
+@@ -211,7 +202,6 @@ func (f *sharedInformerFactory) InformerFor(obj runtime.Object, newFunc internal
+ 	}
+ 
+ 	informer = newFunc(f.client, resyncPeriod)
+-	informer.SetTransform(f.transform)
+ 	f.informers[informerType] = informer
+ 
+ 	return informer
+diff --git a/go-controller/vendor/modules.txt b/go-controller/vendor/modules.txt
+index c88f00fa8..a9683f0a0 100644
+--- a/go-controller/vendor/modules.txt
++++ b/go-controller/vendor/modules.txt
+@@ -385,8 +385,8 @@ go.opencensus.io/internal
+ go.opencensus.io/trace
+ go.opencensus.io/trace/internal
+ go.opencensus.io/trace/tracestate
+-# golang.org/x/crypto v0.14.0
+-## explicit; go 1.17
++# golang.org/x/crypto v0.17.0
++## explicit; go 1.18
+ golang.org/x/crypto/ed25519
+ # golang.org/x/exp v0.0.0-20230811145659-89c5cff77bcb
+ ## explicit; go 1.20
+@@ -420,19 +420,19 @@ golang.org/x/oauth2/internal
+ # golang.org/x/sync v0.2.0
+ ## explicit
+ golang.org/x/sync/errgroup
+-# golang.org/x/sys v0.13.0
+-## explicit; go 1.17
++# golang.org/x/sys v0.15.0
++## explicit; go 1.18
+ golang.org/x/sys/execabs
+ golang.org/x/sys/plan9
+ golang.org/x/sys/unix
+ golang.org/x/sys/windows
+ golang.org/x/sys/windows/registry
+ golang.org/x/sys/windows/svc
+-# golang.org/x/term v0.13.0
+-## explicit; go 1.17
++# golang.org/x/term v0.15.0
++## explicit; go 1.18
+ golang.org/x/term
+-# golang.org/x/text v0.13.0
+-## explicit; go 1.17
++# golang.org/x/text v0.14.0
++## explicit; go 1.18
+ golang.org/x/text/encoding
+ golang.org/x/text/encoding/charmap
+ golang.org/x/text/encoding/htmlindex
+-- 
+2.43.0
+
diff --git a/images/ovn/patches/ovn-kubernetes/0004-stop-creating-ovnkube-eps.patch b/images/ovn/patches/ovn-kubernetes/0004-stop-creating-ovnkube-eps.patch
new file mode 100644
index 0000000..60dd327
--- /dev/null
+++ b/images/ovn/patches/ovn-kubernetes/0004-stop-creating-ovnkube-eps.patch
@@ -0,0 +1,26 @@
+From 71b19667c04fd114e49d3fda957e26e7fa595675 Mon Sep 17 00:00:00 2001
+From: Mohammed Naser <mnaser@vexxhost.com>
+Date: Sun, 4 Feb 2024 14:15:49 -0500
+Subject: [PATCH] stop creating ovnkube eps
+
+---
+ dist/images/ovnkube.sh | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/dist/images/ovnkube.sh b/dist/images/ovnkube.sh
+index 1d3059cf8..069d36648 100755
+--- a/dist/images/ovnkube.sh
++++ b/dist/images/ovnkube.sh
+@@ -908,9 +908,6 @@ sb-ovsdb() {
+   }
+   ovn-sbctl --inactivity-probe=0 set-connection p${transport}:${ovn_sb_port}:$(bracketify ${ovn_db_host})
+ 
+-  # create the ovnkube-db endpoints
+-  wait_for_event attempts=10 check_ovnkube_db_ep ${ovn_db_host} ${ovn_nb_port}
+-  set_ovnkube_db_ep ${ovn_db_host}
+   if memory_trim_on_compaction_supported "sbdb"
+   then
+     # Enable SBDB memory trimming on DB compaction, Every 10mins DBs are compacted
+-- 
+2.43.0
+
