Enum Class WellKnownKernelControlNames

java.lang.Object
java.lang.Enum<WellKnownKernelControlNames>
org.newsclub.net.unix.darwin.system.WellKnownKernelControlNames
All Implemented Interfaces:
Serializable, Comparable<WellKnownKernelControlNames>, Constable

public enum WellKnownKernelControlNames extends Enum<WellKnownKernelControlNames>
Well-known AF_SYSTEM control names. Most of these can only be accessed by the superuser (root). Unless otherwise specified, one usually accesses these as datagrams (SOCK_DGRAM). You can see which control names are registered via netstat -an; check for the IDs below "Registered kernel control modules". Also see New OSX Book Volume 1 Chapter 16
Author:
Christian Kohlschütter
  • Enum Constant Details

    • NETSRC

      public static final WellKnownKernelControlNames NETSRC
      com.apple.netsrc. Network/route policies and statistics. Available to non-root. See https://github.com/apple-oss-distributions/xnu/blob/main/bsd/net/netsrc.h and https://github.com/apple-oss-distributions/xnu/blob/main/bsd/net/netsrc.c, as well as https://github.com/appleopen/Libinfo/blob/master/lookup.subproj/si_compare.c
    • NETWORK_STATISTICS

      public static final WellKnownKernelControlNames NETWORK_STATISTICS
      com.apple.network.statistics. Live socket statistics and notifications. Available to non-root. See http://newosxbook.com/src.jl?tree=listings&file=lsock.c as well as https://github.com/packetzero/libntstat
      See Also:
      • "xnu/bsd/net/ntstat.c"
    • FLOW_DIVERT

      public static final WellKnownKernelControlNames FLOW_DIVERT
      com.apple.flow-divert. MPTCP flow diversions (XNU-2422). See https://github.com/apple-oss-distributions/xnu/blob/main/bsd/netinet/flow_divert.c and https://github.com/apple-oss-distributions/xnu/blob/main/bsd/netinet/flow_divert.h
    • NET_NETAGENT

      public static final WellKnownKernelControlNames NET_NETAGENT
      com.apple.net.netagent.
      See Also:
      • "xnu/bsd/net/network_agent.c"
    • CONTENT_FILTER

      public static final WellKnownKernelControlNames CONTENT_FILTER
      com.apple.content-filter.
      See Also:
      • "xnu/bsd/net/content_filter.c"
    • UTUN_CONTROL

      public static final WellKnownKernelControlNames UTUN_CONTROL
      com.apple.net.utun_control. User-mode tunneling (VPN).
      See Also:
      • "xnu/bsd/net/if_utun.h"
    • IPSEC_CONTROL

      public static final WellKnownKernelControlNames IPSEC_CONTROL
      com.apple.net.ipsec_control.
      See Also:
      • "xnu/bsd/net/if_ipsec.c"
    • NETWORK_TCP_CCDEBUG

      public static final WellKnownKernelControlNames NETWORK_TCP_CCDEBUG
      com.apple.network.tcp_ccdebug. Requires SOCK_STREAM.
      See Also:
      • "xnu/bsd/netinet/tcp_cc.c"
    • NETWORK_ADVISORY

      public static final WellKnownKernelControlNames NETWORK_ADVISORY
      com.apple.network.advisory. MPTCP-related.
      See Also:
      • "xnu/bsd/netinet/mptcp_subr.c"
    • NET_RVI_CONTROL

      public static final WellKnownKernelControlNames NET_RVI_CONTROL
      com.apple.net.rvi_control.
      See Also:
      • "xnu/bsd/net/remote_vif.c"
    • NKE_SOCKWALL

      public static final WellKnownKernelControlNames NKE_SOCKWALL
      com.apple.nke.sockwall.
    • SPMI_NFC

      public static final WellKnownKernelControlNames SPMI_NFC
      com.apple.spmi.nfc. Available to non-root. Requires SOCK_STREAM.
    • PACKET_MANGLER

      public static final WellKnownKernelControlNames PACKET_MANGLER
      com.apple.packet-mangler. xnu/bsd/net/packet_mangler.c
    • NECP_CONTROL

      public static final WellKnownKernelControlNames NECP_CONTROL
      com.apple.net.necp_control.
    • FILEUTIL_KEXT_STATEFUL_CTL

      public static final WellKnownKernelControlNames FILEUTIL_KEXT_STATEFUL_CTL
      com.apple.fileutil.kext.stateful.ctl.
    • FILEUTIL_KEXT_STATELESS_CTL

      public static final WellKnownKernelControlNames FILEUTIL_KEXT_STATELESS_CTL
      com.apple.fileutil.kext.stateless.ctl.
    • MCX_KERNCTL_ALR

      public static final WellKnownKernelControlNames MCX_KERNCTL_ALR
      com.apple.mcx.kernctl.alr.
    • NKE_WEBCONTENTFILTER

      public static final WellKnownKernelControlNames NKE_WEBCONTENTFILTER
      com.apple.nke.webcontentfilter.
    • UART_WLAN_DEBUG

      public static final WellKnownKernelControlNames UART_WLAN_DEBUG
      com.apple.uart.wlan-debug.
    • UART_SK_WLAN_DEBUG

      public static final WellKnownKernelControlNames UART_SK_WLAN_DEBUG
      com.apple.uart.sk.wlan-debug.
    • UART_DEBUG_CONSOLE

      public static final WellKnownKernelControlNames UART_DEBUG_CONSOLE
      com.apple.uart.debug-console.
    • UART_SK_DEBUG_CONSOLE

      public static final WellKnownKernelControlNames UART_SK_DEBUG_CONSOLE
      com.apple.uart.sk.debug-console.
    • USERSPACE_ETHERNET

      public static final WellKnownKernelControlNames USERSPACE_ETHERNET
      com.apple.userspace_ethernet.
    • NET_KCTL_TEST

      public static final WellKnownKernelControlNames NET_KCTL_TEST
      com.apple.net.kctl_test.
      See Also:
      • "xnu/bsd/net/kctl_test.c"
    • NET_NECP_CONTROL

      public static final WellKnownKernelControlNames NET_NECP_CONTROL
      com.apple.net.necp_control.
      See Also:
      • "xnu/bsd/net/necp.h"
  • Method Details

    • values

      public static WellKnownKernelControlNames[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static WellKnownKernelControlNames valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • getControlName

      public String getControlName()
      Returns the control name identifier.
      Returns:
      The name.