]> source.dussan.org Git - gitea.git/commitdiff
update golang libraries (#15258)
authortechknowlogick <techknowlogick@gitea.io>
Sat, 3 Apr 2021 03:02:27 +0000 (23:02 -0400)
committerGitHub <noreply@github.com>
Sat, 3 Apr 2021 03:02:27 +0000 (11:02 +0800)
113 files changed:
go.mod
go.sum
vendor/golang.org/x/net/ipv4/control_pktinfo.go
vendor/golang.org/x/net/ipv4/control_zos.go
vendor/golang.org/x/net/ipv4/sys_aix.go
vendor/golang.org/x/net/ipv4/sys_bsd.go
vendor/golang.org/x/net/ipv4/sys_darwin.go
vendor/golang.org/x/net/ipv4/sys_dragonfly.go
vendor/golang.org/x/net/ipv4/sys_freebsd.go
vendor/golang.org/x/net/ipv4/sys_linux.go
vendor/golang.org/x/net/ipv4/sys_solaris.go
vendor/golang.org/x/net/ipv4/sys_windows.go
vendor/golang.org/x/net/ipv4/sys_zos.go
vendor/golang.org/x/net/ipv4/zsys_aix_ppc64.go
vendor/golang.org/x/net/ipv4/zsys_darwin.go
vendor/golang.org/x/net/ipv4/zsys_dragonfly.go
vendor/golang.org/x/net/ipv4/zsys_freebsd_386.go
vendor/golang.org/x/net/ipv4/zsys_freebsd_amd64.go
vendor/golang.org/x/net/ipv4/zsys_freebsd_arm.go
vendor/golang.org/x/net/ipv4/zsys_freebsd_arm64.go
vendor/golang.org/x/net/ipv4/zsys_linux_386.go
vendor/golang.org/x/net/ipv4/zsys_linux_amd64.go
vendor/golang.org/x/net/ipv4/zsys_linux_arm.go
vendor/golang.org/x/net/ipv4/zsys_linux_arm64.go
vendor/golang.org/x/net/ipv4/zsys_linux_mips.go
vendor/golang.org/x/net/ipv4/zsys_linux_mips64.go
vendor/golang.org/x/net/ipv4/zsys_linux_mips64le.go
vendor/golang.org/x/net/ipv4/zsys_linux_mipsle.go
vendor/golang.org/x/net/ipv4/zsys_linux_ppc.go
vendor/golang.org/x/net/ipv4/zsys_linux_ppc64.go
vendor/golang.org/x/net/ipv4/zsys_linux_ppc64le.go
vendor/golang.org/x/net/ipv4/zsys_linux_riscv64.go
vendor/golang.org/x/net/ipv4/zsys_linux_s390x.go
vendor/golang.org/x/net/ipv4/zsys_netbsd.go
vendor/golang.org/x/net/ipv4/zsys_openbsd.go
vendor/golang.org/x/net/ipv4/zsys_solaris.go
vendor/golang.org/x/net/ipv4/zsys_zos_s390x.go
vendor/golang.org/x/net/ipv6/control_rfc2292_unix.go
vendor/golang.org/x/net/ipv6/sys_aix.go
vendor/golang.org/x/net/ipv6/sys_bsd.go
vendor/golang.org/x/net/ipv6/sys_darwin.go
vendor/golang.org/x/net/ipv6/sys_freebsd.go
vendor/golang.org/x/net/ipv6/sys_linux.go
vendor/golang.org/x/net/ipv6/sys_windows.go
vendor/golang.org/x/net/ipv6/zsys_aix_ppc64.go
vendor/golang.org/x/net/ipv6/zsys_darwin.go
vendor/golang.org/x/net/ipv6/zsys_dragonfly.go
vendor/golang.org/x/net/ipv6/zsys_freebsd_386.go
vendor/golang.org/x/net/ipv6/zsys_freebsd_amd64.go
vendor/golang.org/x/net/ipv6/zsys_freebsd_arm.go
vendor/golang.org/x/net/ipv6/zsys_freebsd_arm64.go
vendor/golang.org/x/net/ipv6/zsys_linux_386.go
vendor/golang.org/x/net/ipv6/zsys_linux_amd64.go
vendor/golang.org/x/net/ipv6/zsys_linux_arm.go
vendor/golang.org/x/net/ipv6/zsys_linux_arm64.go
vendor/golang.org/x/net/ipv6/zsys_linux_mips.go
vendor/golang.org/x/net/ipv6/zsys_linux_mips64.go
vendor/golang.org/x/net/ipv6/zsys_linux_mips64le.go
vendor/golang.org/x/net/ipv6/zsys_linux_mipsle.go
vendor/golang.org/x/net/ipv6/zsys_linux_ppc.go
vendor/golang.org/x/net/ipv6/zsys_linux_ppc64.go
vendor/golang.org/x/net/ipv6/zsys_linux_ppc64le.go
vendor/golang.org/x/net/ipv6/zsys_linux_riscv64.go
vendor/golang.org/x/net/ipv6/zsys_linux_s390x.go
vendor/golang.org/x/net/ipv6/zsys_netbsd.go
vendor/golang.org/x/net/ipv6/zsys_openbsd.go
vendor/golang.org/x/sys/unix/asm_bsd_386.s [new file with mode: 0644]
vendor/golang.org/x/sys/unix/asm_bsd_amd64.s [new file with mode: 0644]
vendor/golang.org/x/sys/unix/asm_bsd_arm.s [new file with mode: 0644]
vendor/golang.org/x/sys/unix/asm_bsd_arm64.s [new file with mode: 0644]
vendor/golang.org/x/sys/unix/asm_darwin_386.s [deleted file]
vendor/golang.org/x/sys/unix/asm_darwin_amd64.s [deleted file]
vendor/golang.org/x/sys/unix/asm_darwin_arm.s [deleted file]
vendor/golang.org/x/sys/unix/asm_darwin_arm64.s [deleted file]
vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s [deleted file]
vendor/golang.org/x/sys/unix/asm_freebsd_386.s [deleted file]
vendor/golang.org/x/sys/unix/asm_freebsd_amd64.s [deleted file]
vendor/golang.org/x/sys/unix/asm_freebsd_arm.s [deleted file]
vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s [deleted file]
vendor/golang.org/x/sys/unix/asm_netbsd_386.s [deleted file]
vendor/golang.org/x/sys/unix/asm_netbsd_amd64.s [deleted file]
vendor/golang.org/x/sys/unix/asm_netbsd_arm.s [deleted file]
vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s [deleted file]
vendor/golang.org/x/sys/unix/asm_openbsd_386.s [deleted file]
vendor/golang.org/x/sys/unix/asm_openbsd_amd64.s [deleted file]
vendor/golang.org/x/sys/unix/asm_openbsd_arm.s [deleted file]
vendor/golang.org/x/sys/unix/asm_openbsd_arm64.s [deleted file]
vendor/golang.org/x/sys/unix/mkall.sh
vendor/golang.org/x/sys/unix/mkerrors.sh
vendor/golang.org/x/sys/unix/syscall_aix.go
vendor/golang.org/x/sys/unix/syscall_illumos.go
vendor/golang.org/x/sys/unix/syscall_linux.go
vendor/golang.org/x/sys/unix/syscall_linux_s390x.go
vendor/golang.org/x/sys/unix/syscall_solaris.go
vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go
vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go
vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go
vendor/golang.org/x/sys/unix/zerrors_linux.go
vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go
vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go
vendor/golang.org/x/sys/unix/zsyscall_linux.go
vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go
vendor/golang.org/x/sys/unix/ztypes_illumos_amd64.go [new file with mode: 0644]
vendor/golang.org/x/sys/unix/ztypes_linux.go
vendor/golang.org/x/sys/windows/exec_windows.go
vendor/golang.org/x/sys/windows/mkerrors.bash
vendor/golang.org/x/sys/windows/security_windows.go
vendor/golang.org/x/sys/windows/svc/security.go
vendor/golang.org/x/sys/windows/syscall_windows.go
vendor/golang.org/x/sys/windows/types_windows.go
vendor/golang.org/x/sys/windows/zerrors_windows.go
vendor/golang.org/x/sys/windows/zsyscall_windows.go
vendor/modules.txt

diff --git a/go.mod b/go.mod
index 6311d551c066d8914a6dc360adfb3bc48fdeb7e3..8b1135921c8e0abef28f64882899e0237e8c95fc 100644 (file)
--- a/go.mod
+++ b/go.mod
@@ -86,7 +86,7 @@ require (
        github.com/mgechev/revive v1.0.3
        github.com/mholt/acmez v0.1.3 // indirect
        github.com/mholt/archiver/v3 v3.5.0
-       github.com/microcosm-cc/bluemonday v1.0.4
+       github.com/microcosm-cc/bluemonday v1.0.5
        github.com/miekg/dns v1.1.40 // indirect
        github.com/minio/md5-simd v1.1.2 // indirect
        github.com/minio/minio-go/v7 v7.0.10
@@ -136,9 +136,9 @@ require (
        go.uber.org/multierr v1.6.0 // indirect
        go.uber.org/zap v1.16.0 // indirect
        golang.org/x/crypto v0.0.0-20210220033148-5ea612d1eb83
-       golang.org/x/net v0.0.0-20210226172049-e18ecbb05110
+       golang.org/x/net v0.0.0-20210331212208-0fccb6fa2b5c
        golang.org/x/oauth2 v0.0.0-20210220000619-9bb904979d93
-       golang.org/x/sys v0.0.0-20210228012217-479acdf4ea46
+       golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44
        golang.org/x/text v0.3.5
        golang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba // indirect
        golang.org/x/tools v0.1.0
diff --git a/go.sum b/go.sum
index 1170db6631c941e5ed0167634bca648fd3fbcfab..9526a811688ad6b0b0a20d23bd128f287725c21e 100644 (file)
--- a/go.sum
+++ b/go.sum
@@ -1321,8 +1321,8 @@ golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb/go.mod h1:sp8m0HH+o8qH0wwXwY
 golang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
 golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
 golang.org/x/net v0.0.0-20210119194325-5f4716e94777/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
-golang.org/x/net v0.0.0-20210226172049-e18ecbb05110 h1:qWPm9rbaAMKs8Bq/9LRpbMqxWRVUAQwMI9fVrssnTfw=
-golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
+golang.org/x/net v0.0.0-20210331212208-0fccb6fa2b5c h1:KHUzaHIpjWVlVVNh65G3hhuj3KB1HnjY6Cq5cTvRQT8=
+golang.org/x/net v0.0.0-20210331212208-0fccb6fa2b5c/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM=
 golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
 golang.org/x/oauth2 v0.0.0-20181106182150-f42d05182288/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
 golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
@@ -1418,8 +1418,8 @@ golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7w
 golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20210220050731-9a76102bfb43/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
-golang.org/x/sys v0.0.0-20210228012217-479acdf4ea46 h1:V066+OYJ66oTjnhm4Yrn7SXIwSCiDQJxpBxmvqb1N1c=
-golang.org/x/sys v0.0.0-20210228012217-479acdf4ea46/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44 h1:Bli41pIlzTzf3KEY06n+xnzK/BESIg2ze4Pgfh/aI8c=
+golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
 golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1 h1:v+OssWQX+hTHEmOBgwxdZxK4zHq3yOs8F9J7mk0PY8E=
 golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
index b0a8dbe4e25e5df751178c75f57c38350f0fa916..0e748dbdc46805aed6b29eae30852af2e30303e2 100644 (file)
@@ -13,11 +13,13 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
+       "golang.org/x/sys/unix"
 )
 
 func marshalPacketInfo(b []byte, cm *ControlMessage) []byte {
        m := socket.ControlMessage(b)
-       m.MarshalHeader(iana.ProtocolIP, sysIP_PKTINFO, sizeofInetPktinfo)
+       m.MarshalHeader(iana.ProtocolIP, unix.IP_PKTINFO, sizeofInetPktinfo)
        if cm != nil {
                pi := (*inetPktinfo)(unsafe.Pointer(&m.Data(sizeofInetPktinfo)[0]))
                if ip := cm.Src.To4(); ip != nil {
index 04420003e0261192dd8385b426d031ad3e5c6db4..de11c42e559d1266888f98a937557284edb93fa7 100644 (file)
@@ -10,11 +10,13 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
+       "golang.org/x/sys/unix"
 )
 
 func marshalPacketInfo(b []byte, cm *ControlMessage) []byte {
        m := socket.ControlMessage(b)
-       m.MarshalHeader(iana.ProtocolIP, sysIP_PKTINFO, sizeofInetPktinfo)
+       m.MarshalHeader(iana.ProtocolIP, unix.IP_PKTINFO, sizeofInetPktinfo)
        if cm != nil {
                pi := (*inetPktinfo)(unsafe.Pointer(&m.Data(sizeofInetPktinfo)[0]))
                if ip := cm.Src.To4(); ip != nil {
index b0b69d9c02cecf6d94940873c3f790b856cc29da..7b65dd6ef4b4500d75ef63f090c115df83e327d0 100644 (file)
@@ -14,26 +14,28 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
+       "golang.org/x/sys/unix"
 )
 
 var (
        ctlOpts = [ctlMax]ctlOpt{
-               ctlTTL:       {sysIP_RECVTTL, 1, marshalTTL, parseTTL},
-               ctlDst:       {sysIP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst},
-               ctlInterface: {sysIP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface},
+               ctlTTL:       {unix.IP_RECVTTL, 1, marshalTTL, parseTTL},
+               ctlDst:       {unix.IP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst},
+               ctlInterface: {unix.IP_RECVINTERFACE, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface},
        }
 
        sockOpts = map[int]*sockOpt{
-               ssoTOS:                {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TOS, Len: 4}},
-               ssoTTL:                {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TTL, Len: 4}},
-               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 1}},
-               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: 4}},
-               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 1}},
-               ssoReceiveTTL:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVTTL, Len: 4}},
-               ssoReceiveDst:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVDSTADDR, Len: 4}},
-               ssoReceiveInterface:   {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVIF, Len: 4}},
-               ssoHeaderPrepend:      {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_HDRINCL, Len: 4}},
-               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_ADD_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq},
-               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_DROP_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq},
+               ssoTOS:                {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TOS, Len: 4}},
+               ssoTTL:                {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TTL, Len: 4}},
+               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_TTL, Len: 1}},
+               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: 4}},
+               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_LOOP, Len: 1}},
+               ssoReceiveTTL:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVTTL, Len: 4}},
+               ssoReceiveDst:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVDSTADDR, Len: 4}},
+               ssoReceiveInterface:   {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVINTERFACE, Len: 4}},
+               ssoHeaderPrepend:      {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_HDRINCL, Len: 4}},
+               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_ADD_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq},
+               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_DROP_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq},
        }
 )
index 8074f9898c30e658ac11a848ee847894a142e6b0..e8299b4145a3c438e2dc09860a9b582223833139 100644 (file)
@@ -13,26 +13,28 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
+       "golang.org/x/sys/unix"
 )
 
 var (
        ctlOpts = [ctlMax]ctlOpt{
-               ctlTTL:       {sysIP_RECVTTL, 1, marshalTTL, parseTTL},
-               ctlDst:       {sysIP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst},
-               ctlInterface: {sysIP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface},
+               ctlTTL:       {unix.IP_RECVTTL, 1, marshalTTL, parseTTL},
+               ctlDst:       {unix.IP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst},
+               ctlInterface: {unix.IP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface},
        }
 
        sockOpts = map[int]*sockOpt{
-               ssoTOS:                {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TOS, Len: 4}},
-               ssoTTL:                {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TTL, Len: 4}},
-               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 1}},
-               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: 4}},
-               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 1}},
-               ssoReceiveTTL:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVTTL, Len: 4}},
-               ssoReceiveDst:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVDSTADDR, Len: 4}},
-               ssoReceiveInterface:   {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVIF, Len: 4}},
-               ssoHeaderPrepend:      {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_HDRINCL, Len: 4}},
-               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_ADD_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq},
-               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_DROP_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq},
+               ssoTOS:                {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TOS, Len: 4}},
+               ssoTTL:                {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TTL, Len: 4}},
+               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_TTL, Len: 1}},
+               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: 4}},
+               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_LOOP, Len: 1}},
+               ssoReceiveTTL:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVTTL, Len: 4}},
+               ssoReceiveDst:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVDSTADDR, Len: 4}},
+               ssoReceiveInterface:   {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVIF, Len: 4}},
+               ssoHeaderPrepend:      {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_HDRINCL, Len: 4}},
+               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_ADD_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq},
+               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_DROP_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq},
        }
 )
index ac213c73509d42885d21da51ecc0596a597e1474..f6bf8eddb6adc56f828a77323a452d940705e0b6 100644 (file)
@@ -11,34 +11,36 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
+       "golang.org/x/sys/unix"
 )
 
 var (
        ctlOpts = [ctlMax]ctlOpt{
-               ctlTTL:        {sysIP_RECVTTL, 1, marshalTTL, parseTTL},
-               ctlDst:        {sysIP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst},
-               ctlInterface:  {sysIP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface},
-               ctlPacketInfo: {sysIP_PKTINFO, sizeofInetPktinfo, marshalPacketInfo, parsePacketInfo},
+               ctlTTL:        {unix.IP_RECVTTL, 1, marshalTTL, parseTTL},
+               ctlDst:        {unix.IP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst},
+               ctlInterface:  {unix.IP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface},
+               ctlPacketInfo: {unix.IP_PKTINFO, sizeofInetPktinfo, marshalPacketInfo, parsePacketInfo},
        }
 
        sockOpts = map[int]*sockOpt{
-               ssoTOS:                {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TOS, Len: 4}},
-               ssoTTL:                {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TTL, Len: 4}},
-               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 1}},
-               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: sizeofIPMreqn}, typ: ssoTypeIPMreqn},
-               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 4}},
-               ssoReceiveTTL:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVTTL, Len: 4}},
-               ssoReceiveDst:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVDSTADDR, Len: 4}},
-               ssoReceiveInterface:   {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVIF, Len: 4}},
-               ssoHeaderPrepend:      {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_HDRINCL, Len: 4}},
-               ssoStripHeader:        {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_STRIPHDR, Len: 4}},
-               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
-               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
-               ssoJoinSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoLeaveSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoBlockSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoPacketInfo:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVPKTINFO, Len: 4}},
+               ssoTOS:                {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TOS, Len: 4}},
+               ssoTTL:                {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TTL, Len: 4}},
+               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_TTL, Len: 1}},
+               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: sizeofIPMreqn}, typ: ssoTypeIPMreqn},
+               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_LOOP, Len: 4}},
+               ssoReceiveTTL:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVTTL, Len: 4}},
+               ssoReceiveDst:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVDSTADDR, Len: 4}},
+               ssoReceiveInterface:   {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVIF, Len: 4}},
+               ssoHeaderPrepend:      {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_HDRINCL, Len: 4}},
+               ssoStripHeader:        {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_STRIPHDR, Len: 4}},
+               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
+               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
+               ssoJoinSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoLeaveSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoBlockSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoPacketInfo:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVPKTINFO, Len: 4}},
        }
 )
 
index 859764f33a55333ad783882e025b03973ba029ac..f34925c05e63039cdceb9730b542f282a4797b24 100644 (file)
@@ -10,26 +10,28 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
+       "golang.org/x/sys/unix"
 )
 
 var (
        ctlOpts = [ctlMax]ctlOpt{
-               ctlTTL:       {sysIP_RECVTTL, 1, marshalTTL, parseTTL},
-               ctlDst:       {sysIP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst},
-               ctlInterface: {sysIP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface},
+               ctlTTL:       {unix.IP_RECVTTL, 1, marshalTTL, parseTTL},
+               ctlDst:       {unix.IP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst},
+               ctlInterface: {unix.IP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface},
        }
 
        sockOpts = map[int]*sockOpt{
-               ssoTOS:                {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TOS, Len: 4}},
-               ssoTTL:                {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TTL, Len: 4}},
-               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 1}},
-               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: 4}},
-               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 4}},
-               ssoReceiveTTL:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVTTL, Len: 4}},
-               ssoReceiveDst:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVDSTADDR, Len: 4}},
-               ssoReceiveInterface:   {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVIF, Len: 4}},
-               ssoHeaderPrepend:      {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_HDRINCL, Len: 4}},
-               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_ADD_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq},
-               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_DROP_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq},
+               ssoTOS:                {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TOS, Len: 4}},
+               ssoTTL:                {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TTL, Len: 4}},
+               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_TTL, Len: 1}},
+               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: 4}},
+               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_LOOP, Len: 4}},
+               ssoReceiveTTL:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVTTL, Len: 4}},
+               ssoReceiveDst:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVDSTADDR, Len: 4}},
+               ssoReceiveInterface:   {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVIF, Len: 4}},
+               ssoHeaderPrepend:      {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_HDRINCL, Len: 4}},
+               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_ADD_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq},
+               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_DROP_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq},
        }
 )
index 482873d9a15d0d9eb37c59b9639b2b82d40f0f88..cba9063022811a9aa9f5e3d18298757813441dca 100644 (file)
@@ -13,38 +13,40 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
+       "golang.org/x/sys/unix"
 )
 
 var (
        ctlOpts = [ctlMax]ctlOpt{
-               ctlTTL:       {sysIP_RECVTTL, 1, marshalTTL, parseTTL},
-               ctlDst:       {sysIP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst},
-               ctlInterface: {sysIP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface},
+               ctlTTL:       {unix.IP_RECVTTL, 1, marshalTTL, parseTTL},
+               ctlDst:       {unix.IP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst},
+               ctlInterface: {unix.IP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface},
        }
 
        sockOpts = map[int]*sockOpt{
-               ssoTOS:                {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TOS, Len: 4}},
-               ssoTTL:                {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TTL, Len: 4}},
-               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 1}},
-               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: 4}},
-               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 4}},
-               ssoReceiveTTL:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVTTL, Len: 4}},
-               ssoReceiveDst:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVDSTADDR, Len: 4}},
-               ssoReceiveInterface:   {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVIF, Len: 4}},
-               ssoHeaderPrepend:      {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_HDRINCL, Len: 4}},
-               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
-               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
-               ssoJoinSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoLeaveSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoBlockSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoTOS:                {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TOS, Len: 4}},
+               ssoTTL:                {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TTL, Len: 4}},
+               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_TTL, Len: 1}},
+               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: 4}},
+               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_LOOP, Len: 4}},
+               ssoReceiveTTL:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVTTL, Len: 4}},
+               ssoReceiveDst:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVDSTADDR, Len: 4}},
+               ssoReceiveInterface:   {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVIF, Len: 4}},
+               ssoHeaderPrepend:      {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_HDRINCL, Len: 4}},
+               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
+               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
+               ssoJoinSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoLeaveSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoBlockSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
        }
 )
 
 func init() {
        freebsdVersion, _ = syscall.SysctlUint32("kern.osreldate")
        if freebsdVersion >= 1000000 {
-               sockOpts[ssoMulticastInterface] = &sockOpt{Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: sizeofIPMreqn}, typ: ssoTypeIPMreqn}
+               sockOpts[ssoMulticastInterface] = &sockOpt{Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: sizeofIPMreqn}, typ: ssoTypeIPMreqn}
        }
        if runtime.GOOS == "freebsd" && runtime.GOARCH == "386" {
                archs, _ := syscall.Sysctl("kern.supported_archs")
index cf755c7fbaf7cd6eb7b8cf7523e007500841be7a..a0631ac92e1aea1006d225ba714de129342c655c 100644 (file)
@@ -11,31 +11,32 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
        "golang.org/x/sys/unix"
 )
 
 var (
        ctlOpts = [ctlMax]ctlOpt{
-               ctlTTL:        {sysIP_TTL, 1, marshalTTL, parseTTL},
-               ctlPacketInfo: {sysIP_PKTINFO, sizeofInetPktinfo, marshalPacketInfo, parsePacketInfo},
+               ctlTTL:        {unix.IP_TTL, 1, marshalTTL, parseTTL},
+               ctlPacketInfo: {unix.IP_PKTINFO, sizeofInetPktinfo, marshalPacketInfo, parsePacketInfo},
        }
 
        sockOpts = map[int]*sockOpt{
-               ssoTOS:                {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TOS, Len: 4}},
-               ssoTTL:                {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TTL, Len: 4}},
-               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 4}},
-               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: sizeofIPMreqn}, typ: ssoTypeIPMreqn},
-               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 4}},
-               ssoReceiveTTL:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVTTL, Len: 4}},
-               ssoPacketInfo:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_PKTINFO, Len: 4}},
-               ssoHeaderPrepend:      {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_HDRINCL, Len: 4}},
-               ssoICMPFilter:         {Option: socket.Option{Level: iana.ProtocolReserved, Name: sysICMP_FILTER, Len: sizeofICMPFilter}},
-               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
-               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
-               ssoJoinSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoLeaveSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoBlockSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoTOS:                {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TOS, Len: 4}},
+               ssoTTL:                {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TTL, Len: 4}},
+               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_TTL, Len: 4}},
+               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: sizeofIPMreqn}, typ: ssoTypeIPMreqn},
+               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_LOOP, Len: 4}},
+               ssoReceiveTTL:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVTTL, Len: 4}},
+               ssoPacketInfo:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_PKTINFO, Len: 4}},
+               ssoHeaderPrepend:      {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_HDRINCL, Len: 4}},
+               ssoICMPFilter:         {Option: socket.Option{Level: iana.ProtocolReserved, Name: unix.ICMP_FILTER, Len: sizeofICMPFilter}},
+               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
+               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
+               ssoJoinSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoLeaveSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoBlockSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
                ssoAttachFilter:       {Option: socket.Option{Level: unix.SOL_SOCKET, Name: unix.SO_ATTACH_FILTER, Len: unix.SizeofSockFprog}},
        }
 )
index 832fef1e2e259a40de2771e35f85e09512cbd179..b79b695834eff8f9e7c48d83c69c4b80b79751dd 100644 (file)
@@ -11,29 +11,31 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
+       "golang.org/x/sys/unix"
 )
 
 var (
        ctlOpts = [ctlMax]ctlOpt{
-               ctlTTL:        {sysIP_RECVTTL, 4, marshalTTL, parseTTL},
-               ctlPacketInfo: {sysIP_PKTINFO, sizeofInetPktinfo, marshalPacketInfo, parsePacketInfo},
+               ctlTTL:        {unix.IP_RECVTTL, 4, marshalTTL, parseTTL},
+               ctlPacketInfo: {unix.IP_PKTINFO, sizeofInetPktinfo, marshalPacketInfo, parsePacketInfo},
        }
 
        sockOpts = map[int]sockOpt{
-               ssoTOS:                {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TOS, Len: 4}},
-               ssoTTL:                {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TTL, Len: 4}},
-               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 1}},
-               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: 4}},
-               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 1}},
-               ssoReceiveTTL:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVTTL, Len: 4}},
-               ssoPacketInfo:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVPKTINFO, Len: 4}},
-               ssoHeaderPrepend:      {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_HDRINCL, Len: 4}},
-               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
-               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
-               ssoJoinSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoLeaveSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoBlockSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoTOS:                {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TOS, Len: 4}},
+               ssoTTL:                {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TTL, Len: 4}},
+               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_TTL, Len: 1}},
+               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: 4}},
+               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_LOOP, Len: 1}},
+               ssoReceiveTTL:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVTTL, Len: 4}},
+               ssoPacketInfo:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVPKTINFO, Len: 4}},
+               ssoHeaderPrepend:      {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_HDRINCL, Len: 4}},
+               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
+               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
+               ssoJoinSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoLeaveSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoBlockSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
        }
 )
 
index b0913d539c30757484fcd41bbd938c6671023245..c5e950633c7f7e04245fe6049ec7583b620f376e 100644 (file)
@@ -7,34 +7,15 @@ package ipv4
 import (
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
+       "golang.org/x/sys/windows"
 )
 
 const (
-       // See ws2tcpip.h.
-       sysIP_OPTIONS                = 0x1
-       sysIP_HDRINCL                = 0x2
-       sysIP_TOS                    = 0x3
-       sysIP_TTL                    = 0x4
-       sysIP_MULTICAST_IF           = 0x9
-       sysIP_MULTICAST_TTL          = 0xa
-       sysIP_MULTICAST_LOOP         = 0xb
-       sysIP_ADD_MEMBERSHIP         = 0xc
-       sysIP_DROP_MEMBERSHIP        = 0xd
-       sysIP_DONTFRAGMENT           = 0xe
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0xf
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x10
-       sysIP_PKTINFO                = 0x13
-
-       sizeofInetPktinfo  = 0x8
        sizeofIPMreq       = 0x8
        sizeofIPMreqSource = 0xc
 )
 
-type inetPktinfo struct {
-       Addr    [4]byte
-       Ifindex int32
-}
-
 type ipMreq struct {
        Multiaddr [4]byte
        Interface [4]byte
@@ -51,17 +32,13 @@ var (
        ctlOpts = [ctlMax]ctlOpt{}
 
        sockOpts = map[int]*sockOpt{
-               ssoTOS:                {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TOS, Len: 4}},
-               ssoTTL:                {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TTL, Len: 4}},
-               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 4}},
-               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: 4}},
-               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 4}},
-               ssoHeaderPrepend:      {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_HDRINCL, Len: 4}},
-               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_ADD_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq},
-               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_DROP_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq},
+               ssoTOS:                {Option: socket.Option{Level: iana.ProtocolIP, Name: windows.IP_TOS, Len: 4}},
+               ssoTTL:                {Option: socket.Option{Level: iana.ProtocolIP, Name: windows.IP_TTL, Len: 4}},
+               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: windows.IP_MULTICAST_TTL, Len: 4}},
+               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: windows.IP_MULTICAST_IF, Len: 4}},
+               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: windows.IP_MULTICAST_LOOP, Len: 4}},
+               ssoHeaderPrepend:      {Option: socket.Option{Level: iana.ProtocolIP, Name: windows.IP_HDRINCL, Len: 4}},
+               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: windows.IP_ADD_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq},
+               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: windows.IP_DROP_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq},
        }
 )
-
-func (pi *inetPktinfo) setIfindex(i int) {
-       pi.Ifindex = int32(i)
-}
index 7426606cff3c2ef666af4006104db1335a9e8e06..be2064098782eb9383428d8f8b49557bf0e69e6b 100644 (file)
@@ -11,24 +11,26 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
+       "golang.org/x/sys/unix"
 )
 
 var (
        ctlOpts = [ctlMax]ctlOpt{
-               ctlPacketInfo: {sysIP_PKTINFO, sizeofInetPktinfo, marshalPacketInfo, parsePacketInfo},
+               ctlPacketInfo: {unix.IP_PKTINFO, sizeofInetPktinfo, marshalPacketInfo, parsePacketInfo},
        }
 
        sockOpts = map[int]*sockOpt{
-               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 1}},
-               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: 4}},
-               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 1}},
-               ssoPacketInfo:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVPKTINFO, Len: 4}},
-               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
-               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
-               ssoJoinSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoLeaveSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoBlockSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoMulticastTTL:       {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_TTL, Len: 1}},
+               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: 4}},
+               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_LOOP, Len: 1}},
+               ssoPacketInfo:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVPKTINFO, Len: 4}},
+               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
+               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
+               ssoJoinSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoLeaveSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoBlockSourceGroup:   {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
        }
 )
 
index d6f24754e5a4d873b7e6a322710db691140c801a..42a81863c314f4406bb489d141c33dbae9b0c13e 100644 (file)
@@ -8,23 +8,10 @@
 package ipv4
 
 const (
-       sysIP_OPTIONS     = 0x1
-       sysIP_HDRINCL     = 0x2
-       sysIP_TOS         = 0x3
-       sysIP_TTL         = 0x4
-       sysIP_RECVOPTS    = 0x5
-       sysIP_RECVRETOPTS = 0x6
        sysIP_RECVDSTADDR = 0x7
-       sysIP_RETOPTS     = 0x8
        sysIP_RECVIF      = 0x20
        sysIP_RECVTTL     = 0x22
 
-       sysIP_MULTICAST_IF    = 0x9
-       sysIP_MULTICAST_TTL   = 0xa
-       sysIP_MULTICAST_LOOP  = 0xb
-       sysIP_ADD_MEMBERSHIP  = 0xc
-       sysIP_DROP_MEMBERSHIP = 0xd
-
        sizeofIPMreq = 0x8
 )
 
index e05a251ba07610384b96258f9158e3d0876ce5fb..d14b871715b19dc0b0fde5764fd79b2ba77df17f 100644 (file)
@@ -4,38 +4,9 @@
 package ipv4
 
 const (
-       sysIP_OPTIONS     = 0x1
-       sysIP_HDRINCL     = 0x2
-       sysIP_TOS         = 0x3
-       sysIP_TTL         = 0x4
-       sysIP_RECVOPTS    = 0x5
-       sysIP_RECVRETOPTS = 0x6
        sysIP_RECVDSTADDR = 0x7
-       sysIP_RETOPTS     = 0x8
        sysIP_RECVIF      = 0x14
-       sysIP_STRIPHDR    = 0x17
        sysIP_RECVTTL     = 0x18
-       sysIP_BOUND_IF    = 0x19
-       sysIP_PKTINFO     = 0x1a
-       sysIP_RECVPKTINFO = 0x1a
-
-       sysIP_MULTICAST_IF           = 0x9
-       sysIP_MULTICAST_TTL          = 0xa
-       sysIP_MULTICAST_LOOP         = 0xb
-       sysIP_ADD_MEMBERSHIP         = 0xc
-       sysIP_DROP_MEMBERSHIP        = 0xd
-       sysIP_MULTICAST_VIF          = 0xe
-       sysIP_MULTICAST_IFINDEX      = 0x42
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x46
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x47
-       sysIP_BLOCK_SOURCE           = 0x48
-       sysIP_UNBLOCK_SOURCE         = 0x49
-       sysMCAST_JOIN_GROUP          = 0x50
-       sysMCAST_LEAVE_GROUP         = 0x51
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x52
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x53
-       sysMCAST_BLOCK_SOURCE        = 0x54
-       sysMCAST_UNBLOCK_SOURCE      = 0x55
 
        sizeofSockaddrStorage = 0x80
        sizeofSockaddrInet    = 0x10
index 6d65e9fcb8155e72b0113bfb1c3e67abde36619b..9631421dad8fb775d2bd8825bdd2fee3628e6309 100644 (file)
@@ -4,24 +4,10 @@
 package ipv4
 
 const (
-       sysIP_OPTIONS     = 0x1
-       sysIP_HDRINCL     = 0x2
-       sysIP_TOS         = 0x3
-       sysIP_TTL         = 0x4
-       sysIP_RECVOPTS    = 0x5
-       sysIP_RECVRETOPTS = 0x6
        sysIP_RECVDSTADDR = 0x7
-       sysIP_RETOPTS     = 0x8
        sysIP_RECVIF      = 0x14
        sysIP_RECVTTL     = 0x41
 
-       sysIP_MULTICAST_IF    = 0x9
-       sysIP_MULTICAST_TTL   = 0xa
-       sysIP_MULTICAST_LOOP  = 0xb
-       sysIP_MULTICAST_VIF   = 0xe
-       sysIP_ADD_MEMBERSHIP  = 0xc
-       sysIP_DROP_MEMBERSHIP = 0xd
-
        sizeofIPMreq = 0x8
 )
 
index 136e2b8f1d6152e4d2e8bb1a3c1147c238b6d49e..9a0e3283d266ec1d4ef6da1bf44ec2de01847b9d 100644 (file)
@@ -4,39 +4,9 @@
 package ipv4
 
 const (
-       sysIP_OPTIONS     = 0x1
-       sysIP_HDRINCL     = 0x2
-       sysIP_TOS         = 0x3
-       sysIP_TTL         = 0x4
-       sysIP_RECVOPTS    = 0x5
-       sysIP_RECVRETOPTS = 0x6
        sysIP_RECVDSTADDR = 0x7
-       sysIP_SENDSRCADDR = 0x7
-       sysIP_RETOPTS     = 0x8
        sysIP_RECVIF      = 0x14
-       sysIP_ONESBCAST   = 0x17
-       sysIP_BINDANY     = 0x18
        sysIP_RECVTTL     = 0x41
-       sysIP_MINTTL      = 0x42
-       sysIP_DONTFRAG    = 0x43
-       sysIP_RECVTOS     = 0x44
-
-       sysIP_MULTICAST_IF           = 0x9
-       sysIP_MULTICAST_TTL          = 0xa
-       sysIP_MULTICAST_LOOP         = 0xb
-       sysIP_ADD_MEMBERSHIP         = 0xc
-       sysIP_DROP_MEMBERSHIP        = 0xd
-       sysIP_MULTICAST_VIF          = 0xe
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x46
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x47
-       sysIP_BLOCK_SOURCE           = 0x48
-       sysIP_UNBLOCK_SOURCE         = 0x49
-       sysMCAST_JOIN_GROUP          = 0x50
-       sysMCAST_LEAVE_GROUP         = 0x51
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x52
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x53
-       sysMCAST_BLOCK_SOURCE        = 0x54
-       sysMCAST_UNBLOCK_SOURCE      = 0x55
 
        sizeofSockaddrStorage = 0x80
        sizeofSockaddrInet    = 0x10
index 4f730f19ef3498c1def772fed6438b92939d853e..143623bbd7f199bdb1c31079a613c570f6288f6b 100644 (file)
@@ -4,39 +4,9 @@
 package ipv4
 
 const (
-       sysIP_OPTIONS     = 0x1
-       sysIP_HDRINCL     = 0x2
-       sysIP_TOS         = 0x3
-       sysIP_TTL         = 0x4
-       sysIP_RECVOPTS    = 0x5
-       sysIP_RECVRETOPTS = 0x6
        sysIP_RECVDSTADDR = 0x7
-       sysIP_SENDSRCADDR = 0x7
-       sysIP_RETOPTS     = 0x8
        sysIP_RECVIF      = 0x14
-       sysIP_ONESBCAST   = 0x17
-       sysIP_BINDANY     = 0x18
        sysIP_RECVTTL     = 0x41
-       sysIP_MINTTL      = 0x42
-       sysIP_DONTFRAG    = 0x43
-       sysIP_RECVTOS     = 0x44
-
-       sysIP_MULTICAST_IF           = 0x9
-       sysIP_MULTICAST_TTL          = 0xa
-       sysIP_MULTICAST_LOOP         = 0xb
-       sysIP_ADD_MEMBERSHIP         = 0xc
-       sysIP_DROP_MEMBERSHIP        = 0xd
-       sysIP_MULTICAST_VIF          = 0xe
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x46
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x47
-       sysIP_BLOCK_SOURCE           = 0x48
-       sysIP_UNBLOCK_SOURCE         = 0x49
-       sysMCAST_JOIN_GROUP          = 0x50
-       sysMCAST_LEAVE_GROUP         = 0x51
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x52
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x53
-       sysMCAST_BLOCK_SOURCE        = 0x54
-       sysMCAST_UNBLOCK_SOURCE      = 0x55
 
        sizeofSockaddrStorage = 0x80
        sizeofSockaddrInet    = 0x10
index 4f730f19ef3498c1def772fed6438b92939d853e..143623bbd7f199bdb1c31079a613c570f6288f6b 100644 (file)
@@ -4,39 +4,9 @@
 package ipv4
 
 const (
-       sysIP_OPTIONS     = 0x1
-       sysIP_HDRINCL     = 0x2
-       sysIP_TOS         = 0x3
-       sysIP_TTL         = 0x4
-       sysIP_RECVOPTS    = 0x5
-       sysIP_RECVRETOPTS = 0x6
        sysIP_RECVDSTADDR = 0x7
-       sysIP_SENDSRCADDR = 0x7
-       sysIP_RETOPTS     = 0x8
        sysIP_RECVIF      = 0x14
-       sysIP_ONESBCAST   = 0x17
-       sysIP_BINDANY     = 0x18
        sysIP_RECVTTL     = 0x41
-       sysIP_MINTTL      = 0x42
-       sysIP_DONTFRAG    = 0x43
-       sysIP_RECVTOS     = 0x44
-
-       sysIP_MULTICAST_IF           = 0x9
-       sysIP_MULTICAST_TTL          = 0xa
-       sysIP_MULTICAST_LOOP         = 0xb
-       sysIP_ADD_MEMBERSHIP         = 0xc
-       sysIP_DROP_MEMBERSHIP        = 0xd
-       sysIP_MULTICAST_VIF          = 0xe
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x46
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x47
-       sysIP_BLOCK_SOURCE           = 0x48
-       sysIP_UNBLOCK_SOURCE         = 0x49
-       sysMCAST_JOIN_GROUP          = 0x50
-       sysMCAST_LEAVE_GROUP         = 0x51
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x52
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x53
-       sysMCAST_BLOCK_SOURCE        = 0x54
-       sysMCAST_UNBLOCK_SOURCE      = 0x55
 
        sizeofSockaddrStorage = 0x80
        sizeofSockaddrInet    = 0x10
index ecebf3272392e8ce1f432d4df64936db06508cd5..1be70237fedb64e69c55e652c8a77e59bf01d380 100644 (file)
@@ -4,39 +4,9 @@
 package ipv4
 
 const (
-       sysIP_OPTIONS     = 0x1
-       sysIP_HDRINCL     = 0x2
-       sysIP_TOS         = 0x3
-       sysIP_TTL         = 0x4
-       sysIP_RECVOPTS    = 0x5
-       sysIP_RECVRETOPTS = 0x6
        sysIP_RECVDSTADDR = 0x7
-       sysIP_SENDSRCADDR = 0x7
-       sysIP_RETOPTS     = 0x8
        sysIP_RECVIF      = 0x14
-       sysIP_ONESBCAST   = 0x17
-       sysIP_BINDANY     = 0x18
        sysIP_RECVTTL     = 0x41
-       sysIP_MINTTL      = 0x42
-       sysIP_DONTFRAG    = 0x43
-       sysIP_RECVTOS     = 0x44
-
-       sysIP_MULTICAST_IF           = 0x9
-       sysIP_MULTICAST_TTL          = 0xa
-       sysIP_MULTICAST_LOOP         = 0xb
-       sysIP_ADD_MEMBERSHIP         = 0xc
-       sysIP_DROP_MEMBERSHIP        = 0xd
-       sysIP_MULTICAST_VIF          = 0xe
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x46
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x47
-       sysIP_BLOCK_SOURCE           = 0x48
-       sysIP_UNBLOCK_SOURCE         = 0x49
-       sysMCAST_JOIN_GROUP          = 0x50
-       sysMCAST_LEAVE_GROUP         = 0x51
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x52
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x53
-       sysMCAST_BLOCK_SOURCE        = 0x54
-       sysMCAST_UNBLOCK_SOURCE      = 0x55
 
        sizeofSockaddrStorage = 0x80
        sizeofSockaddrInet    = 0x10
index 1c7fdfa13af9b9b00211f0189d6b7f4a3694ce67..8c5795ea64166babe00c751ac83790408368d0ca 100644 (file)
@@ -4,56 +4,7 @@
 package ipv4
 
 const (
-       sysIP_TOS             = 0x1
-       sysIP_TTL             = 0x2
-       sysIP_HDRINCL         = 0x3
-       sysIP_OPTIONS         = 0x4
-       sysIP_ROUTER_ALERT    = 0x5
-       sysIP_RECVOPTS        = 0x6
-       sysIP_RETOPTS         = 0x7
-       sysIP_PKTINFO         = 0x8
-       sysIP_PKTOPTIONS      = 0x9
-       sysIP_MTU_DISCOVER    = 0xa
-       sysIP_RECVERR         = 0xb
-       sysIP_RECVTTL         = 0xc
-       sysIP_RECVTOS         = 0xd
-       sysIP_MTU             = 0xe
-       sysIP_FREEBIND        = 0xf
-       sysIP_TRANSPARENT     = 0x13
-       sysIP_RECVRETOPTS     = 0x7
-       sysIP_ORIGDSTADDR     = 0x14
-       sysIP_RECVORIGDSTADDR = 0x14
-       sysIP_MINTTL          = 0x15
-       sysIP_NODEFRAG        = 0x16
-       sysIP_UNICAST_IF      = 0x32
-
-       sysIP_MULTICAST_IF           = 0x20
-       sysIP_MULTICAST_TTL          = 0x21
-       sysIP_MULTICAST_LOOP         = 0x22
-       sysIP_ADD_MEMBERSHIP         = 0x23
-       sysIP_DROP_MEMBERSHIP        = 0x24
-       sysIP_UNBLOCK_SOURCE         = 0x25
-       sysIP_BLOCK_SOURCE           = 0x26
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x27
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x28
-       sysIP_MSFILTER               = 0x29
-       sysMCAST_JOIN_GROUP          = 0x2a
-       sysMCAST_LEAVE_GROUP         = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x2f
-       sysMCAST_BLOCK_SOURCE        = 0x2b
-       sysMCAST_UNBLOCK_SOURCE      = 0x2c
-       sysMCAST_MSFILTER            = 0x30
-       sysIP_MULTICAST_ALL          = 0x31
-
-       sysICMP_FILTER = 0x1
-
-       sysSO_EE_ORIGIN_NONE         = 0x0
-       sysSO_EE_ORIGIN_LOCAL        = 0x1
-       sysSO_EE_ORIGIN_ICMP         = 0x2
-       sysSO_EE_ORIGIN_ICMP6        = 0x3
-       sysSO_EE_ORIGIN_TXSTATUS     = 0x4
-       sysSO_EE_ORIGIN_TIMESTAMPING = 0x4
+       sysIP_RECVTTL = 0xc
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet          = 0x10
index a04e785187af578363d58b604d01ede63f3c7017..7b40aa1b628d84a81819a208e87c5d4909101d6e 100644 (file)
@@ -4,56 +4,7 @@
 package ipv4
 
 const (
-       sysIP_TOS             = 0x1
-       sysIP_TTL             = 0x2
-       sysIP_HDRINCL         = 0x3
-       sysIP_OPTIONS         = 0x4
-       sysIP_ROUTER_ALERT    = 0x5
-       sysIP_RECVOPTS        = 0x6
-       sysIP_RETOPTS         = 0x7
-       sysIP_PKTINFO         = 0x8
-       sysIP_PKTOPTIONS      = 0x9
-       sysIP_MTU_DISCOVER    = 0xa
-       sysIP_RECVERR         = 0xb
-       sysIP_RECVTTL         = 0xc
-       sysIP_RECVTOS         = 0xd
-       sysIP_MTU             = 0xe
-       sysIP_FREEBIND        = 0xf
-       sysIP_TRANSPARENT     = 0x13
-       sysIP_RECVRETOPTS     = 0x7
-       sysIP_ORIGDSTADDR     = 0x14
-       sysIP_RECVORIGDSTADDR = 0x14
-       sysIP_MINTTL          = 0x15
-       sysIP_NODEFRAG        = 0x16
-       sysIP_UNICAST_IF      = 0x32
-
-       sysIP_MULTICAST_IF           = 0x20
-       sysIP_MULTICAST_TTL          = 0x21
-       sysIP_MULTICAST_LOOP         = 0x22
-       sysIP_ADD_MEMBERSHIP         = 0x23
-       sysIP_DROP_MEMBERSHIP        = 0x24
-       sysIP_UNBLOCK_SOURCE         = 0x25
-       sysIP_BLOCK_SOURCE           = 0x26
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x27
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x28
-       sysIP_MSFILTER               = 0x29
-       sysMCAST_JOIN_GROUP          = 0x2a
-       sysMCAST_LEAVE_GROUP         = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x2f
-       sysMCAST_BLOCK_SOURCE        = 0x2b
-       sysMCAST_UNBLOCK_SOURCE      = 0x2c
-       sysMCAST_MSFILTER            = 0x30
-       sysIP_MULTICAST_ALL          = 0x31
-
-       sysICMP_FILTER = 0x1
-
-       sysSO_EE_ORIGIN_NONE         = 0x0
-       sysSO_EE_ORIGIN_LOCAL        = 0x1
-       sysSO_EE_ORIGIN_ICMP         = 0x2
-       sysSO_EE_ORIGIN_ICMP6        = 0x3
-       sysSO_EE_ORIGIN_TXSTATUS     = 0x4
-       sysSO_EE_ORIGIN_TIMESTAMPING = 0x4
+       sysIP_RECVTTL = 0xc
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet          = 0x10
index 1c7fdfa13af9b9b00211f0189d6b7f4a3694ce67..8c5795ea64166babe00c751ac83790408368d0ca 100644 (file)
@@ -4,56 +4,7 @@
 package ipv4
 
 const (
-       sysIP_TOS             = 0x1
-       sysIP_TTL             = 0x2
-       sysIP_HDRINCL         = 0x3
-       sysIP_OPTIONS         = 0x4
-       sysIP_ROUTER_ALERT    = 0x5
-       sysIP_RECVOPTS        = 0x6
-       sysIP_RETOPTS         = 0x7
-       sysIP_PKTINFO         = 0x8
-       sysIP_PKTOPTIONS      = 0x9
-       sysIP_MTU_DISCOVER    = 0xa
-       sysIP_RECVERR         = 0xb
-       sysIP_RECVTTL         = 0xc
-       sysIP_RECVTOS         = 0xd
-       sysIP_MTU             = 0xe
-       sysIP_FREEBIND        = 0xf
-       sysIP_TRANSPARENT     = 0x13
-       sysIP_RECVRETOPTS     = 0x7
-       sysIP_ORIGDSTADDR     = 0x14
-       sysIP_RECVORIGDSTADDR = 0x14
-       sysIP_MINTTL          = 0x15
-       sysIP_NODEFRAG        = 0x16
-       sysIP_UNICAST_IF      = 0x32
-
-       sysIP_MULTICAST_IF           = 0x20
-       sysIP_MULTICAST_TTL          = 0x21
-       sysIP_MULTICAST_LOOP         = 0x22
-       sysIP_ADD_MEMBERSHIP         = 0x23
-       sysIP_DROP_MEMBERSHIP        = 0x24
-       sysIP_UNBLOCK_SOURCE         = 0x25
-       sysIP_BLOCK_SOURCE           = 0x26
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x27
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x28
-       sysIP_MSFILTER               = 0x29
-       sysMCAST_JOIN_GROUP          = 0x2a
-       sysMCAST_LEAVE_GROUP         = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x2f
-       sysMCAST_BLOCK_SOURCE        = 0x2b
-       sysMCAST_UNBLOCK_SOURCE      = 0x2c
-       sysMCAST_MSFILTER            = 0x30
-       sysIP_MULTICAST_ALL          = 0x31
-
-       sysICMP_FILTER = 0x1
-
-       sysSO_EE_ORIGIN_NONE         = 0x0
-       sysSO_EE_ORIGIN_LOCAL        = 0x1
-       sysSO_EE_ORIGIN_ICMP         = 0x2
-       sysSO_EE_ORIGIN_ICMP6        = 0x3
-       sysSO_EE_ORIGIN_TXSTATUS     = 0x4
-       sysSO_EE_ORIGIN_TIMESTAMPING = 0x4
+       sysIP_RECVTTL = 0xc
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet          = 0x10
index a04e785187af578363d58b604d01ede63f3c7017..7b40aa1b628d84a81819a208e87c5d4909101d6e 100644 (file)
@@ -4,56 +4,7 @@
 package ipv4
 
 const (
-       sysIP_TOS             = 0x1
-       sysIP_TTL             = 0x2
-       sysIP_HDRINCL         = 0x3
-       sysIP_OPTIONS         = 0x4
-       sysIP_ROUTER_ALERT    = 0x5
-       sysIP_RECVOPTS        = 0x6
-       sysIP_RETOPTS         = 0x7
-       sysIP_PKTINFO         = 0x8
-       sysIP_PKTOPTIONS      = 0x9
-       sysIP_MTU_DISCOVER    = 0xa
-       sysIP_RECVERR         = 0xb
-       sysIP_RECVTTL         = 0xc
-       sysIP_RECVTOS         = 0xd
-       sysIP_MTU             = 0xe
-       sysIP_FREEBIND        = 0xf
-       sysIP_TRANSPARENT     = 0x13
-       sysIP_RECVRETOPTS     = 0x7
-       sysIP_ORIGDSTADDR     = 0x14
-       sysIP_RECVORIGDSTADDR = 0x14
-       sysIP_MINTTL          = 0x15
-       sysIP_NODEFRAG        = 0x16
-       sysIP_UNICAST_IF      = 0x32
-
-       sysIP_MULTICAST_IF           = 0x20
-       sysIP_MULTICAST_TTL          = 0x21
-       sysIP_MULTICAST_LOOP         = 0x22
-       sysIP_ADD_MEMBERSHIP         = 0x23
-       sysIP_DROP_MEMBERSHIP        = 0x24
-       sysIP_UNBLOCK_SOURCE         = 0x25
-       sysIP_BLOCK_SOURCE           = 0x26
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x27
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x28
-       sysIP_MSFILTER               = 0x29
-       sysMCAST_JOIN_GROUP          = 0x2a
-       sysMCAST_LEAVE_GROUP         = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x2f
-       sysMCAST_BLOCK_SOURCE        = 0x2b
-       sysMCAST_UNBLOCK_SOURCE      = 0x2c
-       sysMCAST_MSFILTER            = 0x30
-       sysIP_MULTICAST_ALL          = 0x31
-
-       sysICMP_FILTER = 0x1
-
-       sysSO_EE_ORIGIN_NONE         = 0x0
-       sysSO_EE_ORIGIN_LOCAL        = 0x1
-       sysSO_EE_ORIGIN_ICMP         = 0x2
-       sysSO_EE_ORIGIN_ICMP6        = 0x3
-       sysSO_EE_ORIGIN_TXSTATUS     = 0x4
-       sysSO_EE_ORIGIN_TIMESTAMPING = 0x4
+       sysIP_RECVTTL = 0xc
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet          = 0x10
index 1c7fdfa13af9b9b00211f0189d6b7f4a3694ce67..8c5795ea64166babe00c751ac83790408368d0ca 100644 (file)
@@ -4,56 +4,7 @@
 package ipv4
 
 const (
-       sysIP_TOS             = 0x1
-       sysIP_TTL             = 0x2
-       sysIP_HDRINCL         = 0x3
-       sysIP_OPTIONS         = 0x4
-       sysIP_ROUTER_ALERT    = 0x5
-       sysIP_RECVOPTS        = 0x6
-       sysIP_RETOPTS         = 0x7
-       sysIP_PKTINFO         = 0x8
-       sysIP_PKTOPTIONS      = 0x9
-       sysIP_MTU_DISCOVER    = 0xa
-       sysIP_RECVERR         = 0xb
-       sysIP_RECVTTL         = 0xc
-       sysIP_RECVTOS         = 0xd
-       sysIP_MTU             = 0xe
-       sysIP_FREEBIND        = 0xf
-       sysIP_TRANSPARENT     = 0x13
-       sysIP_RECVRETOPTS     = 0x7
-       sysIP_ORIGDSTADDR     = 0x14
-       sysIP_RECVORIGDSTADDR = 0x14
-       sysIP_MINTTL          = 0x15
-       sysIP_NODEFRAG        = 0x16
-       sysIP_UNICAST_IF      = 0x32
-
-       sysIP_MULTICAST_IF           = 0x20
-       sysIP_MULTICAST_TTL          = 0x21
-       sysIP_MULTICAST_LOOP         = 0x22
-       sysIP_ADD_MEMBERSHIP         = 0x23
-       sysIP_DROP_MEMBERSHIP        = 0x24
-       sysIP_UNBLOCK_SOURCE         = 0x25
-       sysIP_BLOCK_SOURCE           = 0x26
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x27
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x28
-       sysIP_MSFILTER               = 0x29
-       sysMCAST_JOIN_GROUP          = 0x2a
-       sysMCAST_LEAVE_GROUP         = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x2f
-       sysMCAST_BLOCK_SOURCE        = 0x2b
-       sysMCAST_UNBLOCK_SOURCE      = 0x2c
-       sysMCAST_MSFILTER            = 0x30
-       sysIP_MULTICAST_ALL          = 0x31
-
-       sysICMP_FILTER = 0x1
-
-       sysSO_EE_ORIGIN_NONE         = 0x0
-       sysSO_EE_ORIGIN_LOCAL        = 0x1
-       sysSO_EE_ORIGIN_ICMP         = 0x2
-       sysSO_EE_ORIGIN_ICMP6        = 0x3
-       sysSO_EE_ORIGIN_TXSTATUS     = 0x4
-       sysSO_EE_ORIGIN_TIMESTAMPING = 0x4
+       sysIP_RECVTTL = 0xc
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet          = 0x10
index a04e785187af578363d58b604d01ede63f3c7017..7b40aa1b628d84a81819a208e87c5d4909101d6e 100644 (file)
@@ -4,56 +4,7 @@
 package ipv4
 
 const (
-       sysIP_TOS             = 0x1
-       sysIP_TTL             = 0x2
-       sysIP_HDRINCL         = 0x3
-       sysIP_OPTIONS         = 0x4
-       sysIP_ROUTER_ALERT    = 0x5
-       sysIP_RECVOPTS        = 0x6
-       sysIP_RETOPTS         = 0x7
-       sysIP_PKTINFO         = 0x8
-       sysIP_PKTOPTIONS      = 0x9
-       sysIP_MTU_DISCOVER    = 0xa
-       sysIP_RECVERR         = 0xb
-       sysIP_RECVTTL         = 0xc
-       sysIP_RECVTOS         = 0xd
-       sysIP_MTU             = 0xe
-       sysIP_FREEBIND        = 0xf
-       sysIP_TRANSPARENT     = 0x13
-       sysIP_RECVRETOPTS     = 0x7
-       sysIP_ORIGDSTADDR     = 0x14
-       sysIP_RECVORIGDSTADDR = 0x14
-       sysIP_MINTTL          = 0x15
-       sysIP_NODEFRAG        = 0x16
-       sysIP_UNICAST_IF      = 0x32
-
-       sysIP_MULTICAST_IF           = 0x20
-       sysIP_MULTICAST_TTL          = 0x21
-       sysIP_MULTICAST_LOOP         = 0x22
-       sysIP_ADD_MEMBERSHIP         = 0x23
-       sysIP_DROP_MEMBERSHIP        = 0x24
-       sysIP_UNBLOCK_SOURCE         = 0x25
-       sysIP_BLOCK_SOURCE           = 0x26
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x27
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x28
-       sysIP_MSFILTER               = 0x29
-       sysMCAST_JOIN_GROUP          = 0x2a
-       sysMCAST_LEAVE_GROUP         = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x2f
-       sysMCAST_BLOCK_SOURCE        = 0x2b
-       sysMCAST_UNBLOCK_SOURCE      = 0x2c
-       sysMCAST_MSFILTER            = 0x30
-       sysIP_MULTICAST_ALL          = 0x31
-
-       sysICMP_FILTER = 0x1
-
-       sysSO_EE_ORIGIN_NONE         = 0x0
-       sysSO_EE_ORIGIN_LOCAL        = 0x1
-       sysSO_EE_ORIGIN_ICMP         = 0x2
-       sysSO_EE_ORIGIN_ICMP6        = 0x3
-       sysSO_EE_ORIGIN_TXSTATUS     = 0x4
-       sysSO_EE_ORIGIN_TIMESTAMPING = 0x4
+       sysIP_RECVTTL = 0xc
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet          = 0x10
index a04e785187af578363d58b604d01ede63f3c7017..7b40aa1b628d84a81819a208e87c5d4909101d6e 100644 (file)
@@ -4,56 +4,7 @@
 package ipv4
 
 const (
-       sysIP_TOS             = 0x1
-       sysIP_TTL             = 0x2
-       sysIP_HDRINCL         = 0x3
-       sysIP_OPTIONS         = 0x4
-       sysIP_ROUTER_ALERT    = 0x5
-       sysIP_RECVOPTS        = 0x6
-       sysIP_RETOPTS         = 0x7
-       sysIP_PKTINFO         = 0x8
-       sysIP_PKTOPTIONS      = 0x9
-       sysIP_MTU_DISCOVER    = 0xa
-       sysIP_RECVERR         = 0xb
-       sysIP_RECVTTL         = 0xc
-       sysIP_RECVTOS         = 0xd
-       sysIP_MTU             = 0xe
-       sysIP_FREEBIND        = 0xf
-       sysIP_TRANSPARENT     = 0x13
-       sysIP_RECVRETOPTS     = 0x7
-       sysIP_ORIGDSTADDR     = 0x14
-       sysIP_RECVORIGDSTADDR = 0x14
-       sysIP_MINTTL          = 0x15
-       sysIP_NODEFRAG        = 0x16
-       sysIP_UNICAST_IF      = 0x32
-
-       sysIP_MULTICAST_IF           = 0x20
-       sysIP_MULTICAST_TTL          = 0x21
-       sysIP_MULTICAST_LOOP         = 0x22
-       sysIP_ADD_MEMBERSHIP         = 0x23
-       sysIP_DROP_MEMBERSHIP        = 0x24
-       sysIP_UNBLOCK_SOURCE         = 0x25
-       sysIP_BLOCK_SOURCE           = 0x26
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x27
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x28
-       sysIP_MSFILTER               = 0x29
-       sysMCAST_JOIN_GROUP          = 0x2a
-       sysMCAST_LEAVE_GROUP         = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x2f
-       sysMCAST_BLOCK_SOURCE        = 0x2b
-       sysMCAST_UNBLOCK_SOURCE      = 0x2c
-       sysMCAST_MSFILTER            = 0x30
-       sysIP_MULTICAST_ALL          = 0x31
-
-       sysICMP_FILTER = 0x1
-
-       sysSO_EE_ORIGIN_NONE         = 0x0
-       sysSO_EE_ORIGIN_LOCAL        = 0x1
-       sysSO_EE_ORIGIN_ICMP         = 0x2
-       sysSO_EE_ORIGIN_ICMP6        = 0x3
-       sysSO_EE_ORIGIN_TXSTATUS     = 0x4
-       sysSO_EE_ORIGIN_TIMESTAMPING = 0x4
+       sysIP_RECVTTL = 0xc
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet          = 0x10
index 1c7fdfa13af9b9b00211f0189d6b7f4a3694ce67..8c5795ea64166babe00c751ac83790408368d0ca 100644 (file)
@@ -4,56 +4,7 @@
 package ipv4
 
 const (
-       sysIP_TOS             = 0x1
-       sysIP_TTL             = 0x2
-       sysIP_HDRINCL         = 0x3
-       sysIP_OPTIONS         = 0x4
-       sysIP_ROUTER_ALERT    = 0x5
-       sysIP_RECVOPTS        = 0x6
-       sysIP_RETOPTS         = 0x7
-       sysIP_PKTINFO         = 0x8
-       sysIP_PKTOPTIONS      = 0x9
-       sysIP_MTU_DISCOVER    = 0xa
-       sysIP_RECVERR         = 0xb
-       sysIP_RECVTTL         = 0xc
-       sysIP_RECVTOS         = 0xd
-       sysIP_MTU             = 0xe
-       sysIP_FREEBIND        = 0xf
-       sysIP_TRANSPARENT     = 0x13
-       sysIP_RECVRETOPTS     = 0x7
-       sysIP_ORIGDSTADDR     = 0x14
-       sysIP_RECVORIGDSTADDR = 0x14
-       sysIP_MINTTL          = 0x15
-       sysIP_NODEFRAG        = 0x16
-       sysIP_UNICAST_IF      = 0x32
-
-       sysIP_MULTICAST_IF           = 0x20
-       sysIP_MULTICAST_TTL          = 0x21
-       sysIP_MULTICAST_LOOP         = 0x22
-       sysIP_ADD_MEMBERSHIP         = 0x23
-       sysIP_DROP_MEMBERSHIP        = 0x24
-       sysIP_UNBLOCK_SOURCE         = 0x25
-       sysIP_BLOCK_SOURCE           = 0x26
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x27
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x28
-       sysIP_MSFILTER               = 0x29
-       sysMCAST_JOIN_GROUP          = 0x2a
-       sysMCAST_LEAVE_GROUP         = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x2f
-       sysMCAST_BLOCK_SOURCE        = 0x2b
-       sysMCAST_UNBLOCK_SOURCE      = 0x2c
-       sysMCAST_MSFILTER            = 0x30
-       sysIP_MULTICAST_ALL          = 0x31
-
-       sysICMP_FILTER = 0x1
-
-       sysSO_EE_ORIGIN_NONE         = 0x0
-       sysSO_EE_ORIGIN_LOCAL        = 0x1
-       sysSO_EE_ORIGIN_ICMP         = 0x2
-       sysSO_EE_ORIGIN_ICMP6        = 0x3
-       sysSO_EE_ORIGIN_TXSTATUS     = 0x4
-       sysSO_EE_ORIGIN_TIMESTAMPING = 0x4
+       sysIP_RECVTTL = 0xc
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet          = 0x10
index 3c5ea54731edde5d83fd3e92f2d8c90b5b2e52b9..2c9e7e3cba02393da8ed697905f960c0d5167b2f 100644 (file)
@@ -4,56 +4,7 @@
 package ipv4
 
 const (
-       sysIP_TOS             = 0x1
-       sysIP_TTL             = 0x2
-       sysIP_HDRINCL         = 0x3
-       sysIP_OPTIONS         = 0x4
-       sysIP_ROUTER_ALERT    = 0x5
-       sysIP_RECVOPTS        = 0x6
-       sysIP_RETOPTS         = 0x7
-       sysIP_PKTINFO         = 0x8
-       sysIP_PKTOPTIONS      = 0x9
-       sysIP_MTU_DISCOVER    = 0xa
-       sysIP_RECVERR         = 0xb
-       sysIP_RECVTTL         = 0xc
-       sysIP_RECVTOS         = 0xd
-       sysIP_MTU             = 0xe
-       sysIP_FREEBIND        = 0xf
-       sysIP_TRANSPARENT     = 0x13
-       sysIP_RECVRETOPTS     = 0x7
-       sysIP_ORIGDSTADDR     = 0x14
-       sysIP_RECVORIGDSTADDR = 0x14
-       sysIP_MINTTL          = 0x15
-       sysIP_NODEFRAG        = 0x16
-       sysIP_UNICAST_IF      = 0x32
-
-       sysIP_MULTICAST_IF           = 0x20
-       sysIP_MULTICAST_TTL          = 0x21
-       sysIP_MULTICAST_LOOP         = 0x22
-       sysIP_ADD_MEMBERSHIP         = 0x23
-       sysIP_DROP_MEMBERSHIP        = 0x24
-       sysIP_UNBLOCK_SOURCE         = 0x25
-       sysIP_BLOCK_SOURCE           = 0x26
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x27
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x28
-       sysIP_MSFILTER               = 0x29
-       sysMCAST_JOIN_GROUP          = 0x2a
-       sysMCAST_LEAVE_GROUP         = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x2f
-       sysMCAST_BLOCK_SOURCE        = 0x2b
-       sysMCAST_UNBLOCK_SOURCE      = 0x2c
-       sysMCAST_MSFILTER            = 0x30
-       sysIP_MULTICAST_ALL          = 0x31
-
-       sysICMP_FILTER = 0x1
-
-       sysSO_EE_ORIGIN_NONE         = 0x0
-       sysSO_EE_ORIGIN_LOCAL        = 0x1
-       sysSO_EE_ORIGIN_ICMP         = 0x2
-       sysSO_EE_ORIGIN_ICMP6        = 0x3
-       sysSO_EE_ORIGIN_TXSTATUS     = 0x4
-       sysSO_EE_ORIGIN_TIMESTAMPING = 0x4
+       sysIP_RECVTTL = 0xc
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet          = 0x10
index a04e785187af578363d58b604d01ede63f3c7017..7b40aa1b628d84a81819a208e87c5d4909101d6e 100644 (file)
@@ -4,56 +4,7 @@
 package ipv4
 
 const (
-       sysIP_TOS             = 0x1
-       sysIP_TTL             = 0x2
-       sysIP_HDRINCL         = 0x3
-       sysIP_OPTIONS         = 0x4
-       sysIP_ROUTER_ALERT    = 0x5
-       sysIP_RECVOPTS        = 0x6
-       sysIP_RETOPTS         = 0x7
-       sysIP_PKTINFO         = 0x8
-       sysIP_PKTOPTIONS      = 0x9
-       sysIP_MTU_DISCOVER    = 0xa
-       sysIP_RECVERR         = 0xb
-       sysIP_RECVTTL         = 0xc
-       sysIP_RECVTOS         = 0xd
-       sysIP_MTU             = 0xe
-       sysIP_FREEBIND        = 0xf
-       sysIP_TRANSPARENT     = 0x13
-       sysIP_RECVRETOPTS     = 0x7
-       sysIP_ORIGDSTADDR     = 0x14
-       sysIP_RECVORIGDSTADDR = 0x14
-       sysIP_MINTTL          = 0x15
-       sysIP_NODEFRAG        = 0x16
-       sysIP_UNICAST_IF      = 0x32
-
-       sysIP_MULTICAST_IF           = 0x20
-       sysIP_MULTICAST_TTL          = 0x21
-       sysIP_MULTICAST_LOOP         = 0x22
-       sysIP_ADD_MEMBERSHIP         = 0x23
-       sysIP_DROP_MEMBERSHIP        = 0x24
-       sysIP_UNBLOCK_SOURCE         = 0x25
-       sysIP_BLOCK_SOURCE           = 0x26
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x27
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x28
-       sysIP_MSFILTER               = 0x29
-       sysMCAST_JOIN_GROUP          = 0x2a
-       sysMCAST_LEAVE_GROUP         = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x2f
-       sysMCAST_BLOCK_SOURCE        = 0x2b
-       sysMCAST_UNBLOCK_SOURCE      = 0x2c
-       sysMCAST_MSFILTER            = 0x30
-       sysIP_MULTICAST_ALL          = 0x31
-
-       sysICMP_FILTER = 0x1
-
-       sysSO_EE_ORIGIN_NONE         = 0x0
-       sysSO_EE_ORIGIN_LOCAL        = 0x1
-       sysSO_EE_ORIGIN_ICMP         = 0x2
-       sysSO_EE_ORIGIN_ICMP6        = 0x3
-       sysSO_EE_ORIGIN_TXSTATUS     = 0x4
-       sysSO_EE_ORIGIN_TIMESTAMPING = 0x4
+       sysIP_RECVTTL = 0xc
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet          = 0x10
index a04e785187af578363d58b604d01ede63f3c7017..7b40aa1b628d84a81819a208e87c5d4909101d6e 100644 (file)
@@ -4,56 +4,7 @@
 package ipv4
 
 const (
-       sysIP_TOS             = 0x1
-       sysIP_TTL             = 0x2
-       sysIP_HDRINCL         = 0x3
-       sysIP_OPTIONS         = 0x4
-       sysIP_ROUTER_ALERT    = 0x5
-       sysIP_RECVOPTS        = 0x6
-       sysIP_RETOPTS         = 0x7
-       sysIP_PKTINFO         = 0x8
-       sysIP_PKTOPTIONS      = 0x9
-       sysIP_MTU_DISCOVER    = 0xa
-       sysIP_RECVERR         = 0xb
-       sysIP_RECVTTL         = 0xc
-       sysIP_RECVTOS         = 0xd
-       sysIP_MTU             = 0xe
-       sysIP_FREEBIND        = 0xf
-       sysIP_TRANSPARENT     = 0x13
-       sysIP_RECVRETOPTS     = 0x7
-       sysIP_ORIGDSTADDR     = 0x14
-       sysIP_RECVORIGDSTADDR = 0x14
-       sysIP_MINTTL          = 0x15
-       sysIP_NODEFRAG        = 0x16
-       sysIP_UNICAST_IF      = 0x32
-
-       sysIP_MULTICAST_IF           = 0x20
-       sysIP_MULTICAST_TTL          = 0x21
-       sysIP_MULTICAST_LOOP         = 0x22
-       sysIP_ADD_MEMBERSHIP         = 0x23
-       sysIP_DROP_MEMBERSHIP        = 0x24
-       sysIP_UNBLOCK_SOURCE         = 0x25
-       sysIP_BLOCK_SOURCE           = 0x26
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x27
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x28
-       sysIP_MSFILTER               = 0x29
-       sysMCAST_JOIN_GROUP          = 0x2a
-       sysMCAST_LEAVE_GROUP         = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x2f
-       sysMCAST_BLOCK_SOURCE        = 0x2b
-       sysMCAST_UNBLOCK_SOURCE      = 0x2c
-       sysMCAST_MSFILTER            = 0x30
-       sysIP_MULTICAST_ALL          = 0x31
-
-       sysICMP_FILTER = 0x1
-
-       sysSO_EE_ORIGIN_NONE         = 0x0
-       sysSO_EE_ORIGIN_LOCAL        = 0x1
-       sysSO_EE_ORIGIN_ICMP         = 0x2
-       sysSO_EE_ORIGIN_ICMP6        = 0x3
-       sysSO_EE_ORIGIN_TXSTATUS     = 0x4
-       sysSO_EE_ORIGIN_TIMESTAMPING = 0x4
+       sysIP_RECVTTL = 0xc
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet          = 0x10
index ec9e2dbecca9e4e6ca088bba2e1bac4611fe9f8c..b31766a02b4a4f1310566b040711280b02c7b3ce 100644 (file)
@@ -7,56 +7,7 @@
 package ipv4
 
 const (
-       sysIP_TOS             = 0x1
-       sysIP_TTL             = 0x2
-       sysIP_HDRINCL         = 0x3
-       sysIP_OPTIONS         = 0x4
-       sysIP_ROUTER_ALERT    = 0x5
-       sysIP_RECVOPTS        = 0x6
-       sysIP_RETOPTS         = 0x7
-       sysIP_PKTINFO         = 0x8
-       sysIP_PKTOPTIONS      = 0x9
-       sysIP_MTU_DISCOVER    = 0xa
-       sysIP_RECVERR         = 0xb
-       sysIP_RECVTTL         = 0xc
-       sysIP_RECVTOS         = 0xd
-       sysIP_MTU             = 0xe
-       sysIP_FREEBIND        = 0xf
-       sysIP_TRANSPARENT     = 0x13
-       sysIP_RECVRETOPTS     = 0x7
-       sysIP_ORIGDSTADDR     = 0x14
-       sysIP_RECVORIGDSTADDR = 0x14
-       sysIP_MINTTL          = 0x15
-       sysIP_NODEFRAG        = 0x16
-       sysIP_UNICAST_IF      = 0x32
-
-       sysIP_MULTICAST_IF           = 0x20
-       sysIP_MULTICAST_TTL          = 0x21
-       sysIP_MULTICAST_LOOP         = 0x22
-       sysIP_ADD_MEMBERSHIP         = 0x23
-       sysIP_DROP_MEMBERSHIP        = 0x24
-       sysIP_UNBLOCK_SOURCE         = 0x25
-       sysIP_BLOCK_SOURCE           = 0x26
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x27
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x28
-       sysIP_MSFILTER               = 0x29
-       sysMCAST_JOIN_GROUP          = 0x2a
-       sysMCAST_LEAVE_GROUP         = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x2f
-       sysMCAST_BLOCK_SOURCE        = 0x2b
-       sysMCAST_UNBLOCK_SOURCE      = 0x2c
-       sysMCAST_MSFILTER            = 0x30
-       sysIP_MULTICAST_ALL          = 0x31
-
-       sysICMP_FILTER = 0x1
-
-       sysSO_EE_ORIGIN_NONE         = 0x0
-       sysSO_EE_ORIGIN_LOCAL        = 0x1
-       sysSO_EE_ORIGIN_ICMP         = 0x2
-       sysSO_EE_ORIGIN_ICMP6        = 0x3
-       sysSO_EE_ORIGIN_TXSTATUS     = 0x4
-       sysSO_EE_ORIGIN_TIMESTAMPING = 0x4
+       sysIP_RECVTTL = 0xc
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet          = 0x10
index a04e785187af578363d58b604d01ede63f3c7017..7b40aa1b628d84a81819a208e87c5d4909101d6e 100644 (file)
@@ -4,56 +4,7 @@
 package ipv4
 
 const (
-       sysIP_TOS             = 0x1
-       sysIP_TTL             = 0x2
-       sysIP_HDRINCL         = 0x3
-       sysIP_OPTIONS         = 0x4
-       sysIP_ROUTER_ALERT    = 0x5
-       sysIP_RECVOPTS        = 0x6
-       sysIP_RETOPTS         = 0x7
-       sysIP_PKTINFO         = 0x8
-       sysIP_PKTOPTIONS      = 0x9
-       sysIP_MTU_DISCOVER    = 0xa
-       sysIP_RECVERR         = 0xb
-       sysIP_RECVTTL         = 0xc
-       sysIP_RECVTOS         = 0xd
-       sysIP_MTU             = 0xe
-       sysIP_FREEBIND        = 0xf
-       sysIP_TRANSPARENT     = 0x13
-       sysIP_RECVRETOPTS     = 0x7
-       sysIP_ORIGDSTADDR     = 0x14
-       sysIP_RECVORIGDSTADDR = 0x14
-       sysIP_MINTTL          = 0x15
-       sysIP_NODEFRAG        = 0x16
-       sysIP_UNICAST_IF      = 0x32
-
-       sysIP_MULTICAST_IF           = 0x20
-       sysIP_MULTICAST_TTL          = 0x21
-       sysIP_MULTICAST_LOOP         = 0x22
-       sysIP_ADD_MEMBERSHIP         = 0x23
-       sysIP_DROP_MEMBERSHIP        = 0x24
-       sysIP_UNBLOCK_SOURCE         = 0x25
-       sysIP_BLOCK_SOURCE           = 0x26
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x27
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x28
-       sysIP_MSFILTER               = 0x29
-       sysMCAST_JOIN_GROUP          = 0x2a
-       sysMCAST_LEAVE_GROUP         = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP   = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP  = 0x2f
-       sysMCAST_BLOCK_SOURCE        = 0x2b
-       sysMCAST_UNBLOCK_SOURCE      = 0x2c
-       sysMCAST_MSFILTER            = 0x30
-       sysIP_MULTICAST_ALL          = 0x31
-
-       sysICMP_FILTER = 0x1
-
-       sysSO_EE_ORIGIN_NONE         = 0x0
-       sysSO_EE_ORIGIN_LOCAL        = 0x1
-       sysSO_EE_ORIGIN_ICMP         = 0x2
-       sysSO_EE_ORIGIN_ICMP6        = 0x3
-       sysSO_EE_ORIGIN_TXSTATUS     = 0x4
-       sysSO_EE_ORIGIN_TIMESTAMPING = 0x4
+       sysIP_RECVTTL = 0xc
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet          = 0x10
index 8cfc648ad7e8c8246a1e93665c8fcfaa3a6aea48..df99ef69396f8f86c976656a230b249ddbfe1e82 100644 (file)
@@ -4,23 +4,10 @@
 package ipv4
 
 const (
-       sysIP_OPTIONS     = 0x1
-       sysIP_HDRINCL     = 0x2
-       sysIP_TOS         = 0x3
-       sysIP_TTL         = 0x4
-       sysIP_RECVOPTS    = 0x5
-       sysIP_RECVRETOPTS = 0x6
        sysIP_RECVDSTADDR = 0x7
-       sysIP_RETOPTS     = 0x8
        sysIP_RECVIF      = 0x14
        sysIP_RECVTTL     = 0x17
 
-       sysIP_MULTICAST_IF    = 0x9
-       sysIP_MULTICAST_TTL   = 0xa
-       sysIP_MULTICAST_LOOP  = 0xb
-       sysIP_ADD_MEMBERSHIP  = 0xc
-       sysIP_DROP_MEMBERSHIP = 0xd
-
        sizeofIPMreq = 0x8
 )
 
index 37629cb0ab5f5f6fab58c5028bead98f741b6f8a..9052a9bd42463d9751dd7b5d6b7db52f15ab7e83 100644 (file)
@@ -4,23 +4,10 @@
 package ipv4
 
 const (
-       sysIP_OPTIONS     = 0x1
-       sysIP_HDRINCL     = 0x2
-       sysIP_TOS         = 0x3
-       sysIP_TTL         = 0x4
-       sysIP_RECVOPTS    = 0x5
-       sysIP_RECVRETOPTS = 0x6
        sysIP_RECVDSTADDR = 0x7
-       sysIP_RETOPTS     = 0x8
        sysIP_RECVIF      = 0x1e
        sysIP_RECVTTL     = 0x1f
 
-       sysIP_MULTICAST_IF    = 0x9
-       sysIP_MULTICAST_TTL   = 0xa
-       sysIP_MULTICAST_LOOP  = 0xb
-       sysIP_ADD_MEMBERSHIP  = 0xc
-       sysIP_DROP_MEMBERSHIP = 0xd
-
        sizeofIPMreq = 0x8
 )
 
index cb80a308b0e6400e32a23cbdf489f46f9c357b6f..1cdc45c27053354f15d58c8d0acfa813abde3359 100644 (file)
@@ -4,49 +4,10 @@
 package ipv4
 
 const (
-       sysIP_OPTIONS     = 0x1
-       sysIP_HDRINCL     = 0x2
-       sysIP_TOS         = 0x3
-       sysIP_TTL         = 0x4
-       sysIP_RECVOPTS    = 0x5
-       sysIP_RECVRETOPTS = 0x6
        sysIP_RECVDSTADDR = 0x7
-       sysIP_RETOPTS     = 0x8
        sysIP_RECVIF      = 0x9
-       sysIP_RECVSLLA    = 0xa
        sysIP_RECVTTL     = 0xb
 
-       sysIP_MULTICAST_IF           = 0x10
-       sysIP_MULTICAST_TTL          = 0x11
-       sysIP_MULTICAST_LOOP         = 0x12
-       sysIP_ADD_MEMBERSHIP         = 0x13
-       sysIP_DROP_MEMBERSHIP        = 0x14
-       sysIP_BLOCK_SOURCE           = 0x15
-       sysIP_UNBLOCK_SOURCE         = 0x16
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 0x17
-       sysIP_DROP_SOURCE_MEMBERSHIP = 0x18
-       sysIP_NEXTHOP                = 0x19
-
-       sysIP_PKTINFO     = 0x1a
-       sysIP_RECVPKTINFO = 0x1a
-       sysIP_DONTFRAG    = 0x1b
-
-       sysIP_BOUND_IF      = 0x41
-       sysIP_UNSPEC_SRC    = 0x42
-       sysIP_BROADCAST_TTL = 0x43
-       sysIP_DHCPINIT_IF   = 0x45
-
-       sysIP_REUSEADDR = 0x104
-       sysIP_DONTROUTE = 0x105
-       sysIP_BROADCAST = 0x106
-
-       sysMCAST_JOIN_GROUP         = 0x29
-       sysMCAST_LEAVE_GROUP        = 0x2a
-       sysMCAST_BLOCK_SOURCE       = 0x2b
-       sysMCAST_UNBLOCK_SOURCE     = 0x2c
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x2d
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x2e
-
        sizeofSockaddrStorage = 0x100
        sizeofSockaddrInet    = 0x10
        sizeofInetPktinfo     = 0xc
index 4bbfda07dc3a263e9cc943db4749bbeb24562918..692abf68823393a502a0693f98a1d703284da503 100644 (file)
@@ -8,30 +8,6 @@
 package ipv4
 
 const (
-       sysIP_ADD_MEMBERSHIP         = 5
-       sysIP_ADD_SOURCE_MEMBERSHIP  = 12
-       sysIP_BLOCK_SOURCE           = 10
-       sysIP_DEFAULT_MULTICAST_LOOP = 1
-       sysIP_DEFAULT_MULTICAST_TTL  = 1
-       sysIP_DROP_MEMBERSHIP        = 6
-       sysIP_DROP_SOURCE_MEMBERSHIP = 13
-       sysIP_MAX_MEMBERSHIPS        = 20
-       sysIP_MULTICAST_IF           = 7
-       sysIP_MULTICAST_LOOP         = 4
-       sysIP_MULTICAST_TTL          = 3
-       sysIP_OPTIONS                = 1
-       sysIP_PKTINFO                = 101
-       sysIP_RECVPKTINFO            = 102
-       sysIP_TOS                    = 2
-       sysIP_UNBLOCK_SOURCE         = 11
-
-       sysMCAST_JOIN_GROUP         = 40
-       sysMCAST_LEAVE_GROUP        = 41
-       sysMCAST_JOIN_SOURCE_GROUP  = 42
-       sysMCAST_LEAVE_SOURCE_GROUP = 43
-       sysMCAST_BLOCK_SOURCE       = 44
-       sysMCAST_UNBLOCK_SOURCE     = 45
-
        sizeofIPMreq          = 8
        sizeofSockaddrInet4   = 16
        sizeofSockaddrStorage = 128
index dd5fdc3133cab2c6b2166affa04778cd755cf375..2733ddbe272d90e308259cbbde7b99a2e14168d0 100644 (file)
@@ -12,11 +12,13 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
+       "golang.org/x/sys/unix"
 )
 
 func marshal2292HopLimit(b []byte, cm *ControlMessage) []byte {
        m := socket.ControlMessage(b)
-       m.MarshalHeader(iana.ProtocolIPv6, sysIPV6_2292HOPLIMIT, 4)
+       m.MarshalHeader(iana.ProtocolIPv6, unix.IPV6_2292HOPLIMIT, 4)
        if cm != nil {
                socket.NativeEndian.PutUint32(m.Data(4), uint32(cm.HopLimit))
        }
@@ -25,7 +27,7 @@ func marshal2292HopLimit(b []byte, cm *ControlMessage) []byte {
 
 func marshal2292PacketInfo(b []byte, cm *ControlMessage) []byte {
        m := socket.ControlMessage(b)
-       m.MarshalHeader(iana.ProtocolIPv6, sysIPV6_2292PKTINFO, sizeofInet6Pktinfo)
+       m.MarshalHeader(iana.ProtocolIPv6, unix.IPV6_2292PKTINFO, sizeofInet6Pktinfo)
        if cm != nil {
                pi := (*inet6Pktinfo)(unsafe.Pointer(&m.Data(sizeofInet6Pktinfo)[0]))
                if ip := cm.Src.To16(); ip != nil && ip.To4() == nil {
@@ -40,7 +42,7 @@ func marshal2292PacketInfo(b []byte, cm *ControlMessage) []byte {
 
 func marshal2292NextHop(b []byte, cm *ControlMessage) []byte {
        m := socket.ControlMessage(b)
-       m.MarshalHeader(iana.ProtocolIPv6, sysIPV6_2292NEXTHOP, sizeofSockaddrInet6)
+       m.MarshalHeader(iana.ProtocolIPv6, unix.IPV6_2292NEXTHOP, sizeofSockaddrInet6)
        if cm != nil {
                sa := (*sockaddrInet6)(unsafe.Pointer(&m.Data(sizeofSockaddrInet6)[0]))
                sa.setSockaddr(cm.NextHop, cm.IfIndex)
index 29c5c0e4f91552000fc6063bb7633c12bc66bc57..a47182afb9d6de83bb59a36fb47a318e1aad52a0 100644 (file)
@@ -15,32 +15,34 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
+       "golang.org/x/sys/unix"
 )
 
 var (
        ctlOpts = [ctlMax]ctlOpt{
-               ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass},
-               ctlHopLimit:     {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit},
-               ctlPacketInfo:   {sysIPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo},
-               ctlNextHop:      {sysIPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop},
-               ctlPathMTU:      {sysIPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU},
+               ctlTrafficClass: {unix.IPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass},
+               ctlHopLimit:     {unix.IPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit},
+               ctlPacketInfo:   {unix.IPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo},
+               ctlNextHop:      {unix.IPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop},
+               ctlPathMTU:      {unix.IPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU},
        }
 
        sockOpts = map[int]*sockOpt{
-               ssoTrafficClass:        {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_TCLASS, Len: 4}},
-               ssoHopLimit:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_UNICAST_HOPS, Len: 4}},
-               ssoMulticastInterface:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_IF, Len: 4}},
-               ssoMulticastHopLimit:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_HOPS, Len: 4}},
-               ssoMulticastLoopback:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_LOOP, Len: 4}},
-               ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVTCLASS, Len: 4}},
-               ssoReceiveHopLimit:     {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVHOPLIMIT, Len: 4}},
-               ssoReceivePacketInfo:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPKTINFO, Len: 4}},
-               ssoReceivePathMTU:      {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPATHMTU, Len: 4}},
-               ssoPathMTU:             {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}},
-               ssoChecksum:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_CHECKSUM, Len: 4}},
-               ssoICMPFilter:          {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: sysICMP6_FILTER, Len: sizeofICMPv6Filter}},
-               ssoJoinGroup:           {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_JOIN_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq},
-               ssoLeaveGroup:          {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_LEAVE_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq},
+               ssoTrafficClass:        {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_TCLASS, Len: 4}},
+               ssoHopLimit:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_UNICAST_HOPS, Len: 4}},
+               ssoMulticastInterface:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_IF, Len: 4}},
+               ssoMulticastHopLimit:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_HOPS, Len: 4}},
+               ssoMulticastLoopback:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_LOOP, Len: 4}},
+               ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVTCLASS, Len: 4}},
+               ssoReceiveHopLimit:     {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVHOPLIMIT, Len: 4}},
+               ssoReceivePacketInfo:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPKTINFO, Len: 4}},
+               ssoReceivePathMTU:      {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPATHMTU, Len: 4}},
+               ssoPathMTU:             {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}},
+               ssoChecksum:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_CHECKSUM, Len: 4}},
+               ssoICMPFilter:          {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: unix.ICMP6_FILTER, Len: sizeofICMPv6Filter}},
+               ssoJoinGroup:           {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_JOIN_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq},
+               ssoLeaveGroup:          {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_LEAVE_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq},
        }
 )
 
index 63e5ee2d599dd3b6e9a77ab93c1f1b7dc5241490..bde41a6cef91fbba387d71fc813a6d7d1d1078f6 100644 (file)
@@ -13,32 +13,34 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
+       "golang.org/x/sys/unix"
 )
 
 var (
        ctlOpts = [ctlMax]ctlOpt{
-               ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass},
-               ctlHopLimit:     {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit},
-               ctlPacketInfo:   {sysIPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo},
-               ctlNextHop:      {sysIPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop},
-               ctlPathMTU:      {sysIPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU},
+               ctlTrafficClass: {unix.IPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass},
+               ctlHopLimit:     {unix.IPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit},
+               ctlPacketInfo:   {unix.IPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo},
+               ctlNextHop:      {unix.IPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop},
+               ctlPathMTU:      {unix.IPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU},
        }
 
        sockOpts = map[int]*sockOpt{
-               ssoTrafficClass:        {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_TCLASS, Len: 4}},
-               ssoHopLimit:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_UNICAST_HOPS, Len: 4}},
-               ssoMulticastInterface:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_IF, Len: 4}},
-               ssoMulticastHopLimit:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_HOPS, Len: 4}},
-               ssoMulticastLoopback:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_LOOP, Len: 4}},
-               ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVTCLASS, Len: 4}},
-               ssoReceiveHopLimit:     {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVHOPLIMIT, Len: 4}},
-               ssoReceivePacketInfo:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPKTINFO, Len: 4}},
-               ssoReceivePathMTU:      {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPATHMTU, Len: 4}},
-               ssoPathMTU:             {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}},
-               ssoChecksum:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_CHECKSUM, Len: 4}},
-               ssoICMPFilter:          {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: sysICMP6_FILTER, Len: sizeofICMPv6Filter}},
-               ssoJoinGroup:           {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_JOIN_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq},
-               ssoLeaveGroup:          {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_LEAVE_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq},
+               ssoTrafficClass:        {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_TCLASS, Len: 4}},
+               ssoHopLimit:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_UNICAST_HOPS, Len: 4}},
+               ssoMulticastInterface:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_IF, Len: 4}},
+               ssoMulticastHopLimit:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_HOPS, Len: 4}},
+               ssoMulticastLoopback:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_LOOP, Len: 4}},
+               ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVTCLASS, Len: 4}},
+               ssoReceiveHopLimit:     {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVHOPLIMIT, Len: 4}},
+               ssoReceivePacketInfo:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPKTINFO, Len: 4}},
+               ssoReceivePathMTU:      {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPATHMTU, Len: 4}},
+               ssoPathMTU:             {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}},
+               ssoChecksum:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_CHECKSUM, Len: 4}},
+               ssoICMPFilter:          {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: unix.ICMP6_FILTER, Len: sizeofICMPv6Filter}},
+               ssoJoinGroup:           {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_JOIN_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq},
+               ssoLeaveGroup:          {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_LEAVE_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq},
        }
 )
 
index 12cc5cb2c1e2ea014de90d54c6eb33223b0c70e4..b80ec8064a67b7a8473fc1934a970eebb92194b8 100644 (file)
@@ -11,36 +11,38 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
+       "golang.org/x/sys/unix"
 )
 
 var (
        ctlOpts = [ctlMax]ctlOpt{
-               ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass},
-               ctlHopLimit:     {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit},
-               ctlPacketInfo:   {sysIPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo},
-               ctlNextHop:      {sysIPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop},
-               ctlPathMTU:      {sysIPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU},
+               ctlTrafficClass: {unix.IPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass},
+               ctlHopLimit:     {unix.IPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit},
+               ctlPacketInfo:   {unix.IPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo},
+               ctlNextHop:      {unix.IPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop},
+               ctlPathMTU:      {unix.IPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU},
        }
 
        sockOpts = map[int]*sockOpt{
-               ssoHopLimit:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_UNICAST_HOPS, Len: 4}},
-               ssoMulticastInterface:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_IF, Len: 4}},
-               ssoMulticastHopLimit:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_HOPS, Len: 4}},
-               ssoMulticastLoopback:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_LOOP, Len: 4}},
-               ssoTrafficClass:        {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_TCLASS, Len: 4}},
-               ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVTCLASS, Len: 4}},
-               ssoReceiveHopLimit:     {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVHOPLIMIT, Len: 4}},
-               ssoReceivePacketInfo:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPKTINFO, Len: 4}},
-               ssoReceivePathMTU:      {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPATHMTU, Len: 4}},
-               ssoPathMTU:             {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}},
-               ssoChecksum:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_CHECKSUM, Len: 4}},
-               ssoICMPFilter:          {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: sysICMP6_FILTER, Len: sizeofICMPv6Filter}},
-               ssoJoinGroup:           {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
-               ssoLeaveGroup:          {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
-               ssoJoinSourceGroup:     {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoLeaveSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoBlockSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoUnblockSourceGroup:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoHopLimit:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_UNICAST_HOPS, Len: 4}},
+               ssoMulticastInterface:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_IF, Len: 4}},
+               ssoMulticastHopLimit:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_HOPS, Len: 4}},
+               ssoMulticastLoopback:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_LOOP, Len: 4}},
+               ssoTrafficClass:        {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_TCLASS, Len: 4}},
+               ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVTCLASS, Len: 4}},
+               ssoReceiveHopLimit:     {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVHOPLIMIT, Len: 4}},
+               ssoReceivePacketInfo:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPKTINFO, Len: 4}},
+               ssoReceivePathMTU:      {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPATHMTU, Len: 4}},
+               ssoPathMTU:             {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}},
+               ssoChecksum:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_CHECKSUM, Len: 4}},
+               ssoICMPFilter:          {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: unix.ICMP6_FILTER, Len: sizeofICMPv6Filter}},
+               ssoJoinGroup:           {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
+               ssoLeaveGroup:          {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
+               ssoJoinSourceGroup:     {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoLeaveSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoBlockSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoUnblockSourceGroup:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
        }
 )
 
index 85a9f5d07de4804540e35f7ae03ef321ca7eadbc..6282cf9770514e679ce316bbe579b7ead8c78838 100644 (file)
@@ -13,36 +13,38 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
+       "golang.org/x/sys/unix"
 )
 
 var (
        ctlOpts = [ctlMax]ctlOpt{
-               ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass},
-               ctlHopLimit:     {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit},
-               ctlPacketInfo:   {sysIPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo},
-               ctlNextHop:      {sysIPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop},
-               ctlPathMTU:      {sysIPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU},
+               ctlTrafficClass: {unix.IPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass},
+               ctlHopLimit:     {unix.IPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit},
+               ctlPacketInfo:   {unix.IPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo},
+               ctlNextHop:      {unix.IPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop},
+               ctlPathMTU:      {unix.IPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU},
        }
 
        sockOpts = map[int]sockOpt{
-               ssoTrafficClass:        {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_TCLASS, Len: 4}},
-               ssoHopLimit:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_UNICAST_HOPS, Len: 4}},
-               ssoMulticastInterface:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_IF, Len: 4}},
-               ssoMulticastHopLimit:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_HOPS, Len: 4}},
-               ssoMulticastLoopback:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_LOOP, Len: 4}},
-               ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVTCLASS, Len: 4}},
-               ssoReceiveHopLimit:     {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVHOPLIMIT, Len: 4}},
-               ssoReceivePacketInfo:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPKTINFO, Len: 4}},
-               ssoReceivePathMTU:      {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPATHMTU, Len: 4}},
-               ssoPathMTU:             {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}},
-               ssoChecksum:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_CHECKSUM, Len: 4}},
-               ssoICMPFilter:          {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: sysICMP6_FILTER, Len: sizeofICMPv6Filter}},
-               ssoJoinGroup:           {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
-               ssoLeaveGroup:          {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
-               ssoJoinSourceGroup:     {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoLeaveSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoBlockSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoUnblockSourceGroup:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoTrafficClass:        {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_TCLASS, Len: 4}},
+               ssoHopLimit:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_UNICAST_HOPS, Len: 4}},
+               ssoMulticastInterface:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_IF, Len: 4}},
+               ssoMulticastHopLimit:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_HOPS, Len: 4}},
+               ssoMulticastLoopback:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_LOOP, Len: 4}},
+               ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVTCLASS, Len: 4}},
+               ssoReceiveHopLimit:     {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVHOPLIMIT, Len: 4}},
+               ssoReceivePacketInfo:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPKTINFO, Len: 4}},
+               ssoReceivePathMTU:      {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPATHMTU, Len: 4}},
+               ssoPathMTU:             {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}},
+               ssoChecksum:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_CHECKSUM, Len: 4}},
+               ssoICMPFilter:          {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: unix.ICMP6_FILTER, Len: sizeofICMPv6Filter}},
+               ssoJoinGroup:           {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
+               ssoLeaveGroup:          {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
+               ssoJoinSourceGroup:     {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoLeaveSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoBlockSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoUnblockSourceGroup:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
        }
 )
 
index 96e8093a307d10da445cbf9847f7595f889df481..82e212100088d091559f7fd5d2427e6378be0820 100644 (file)
@@ -11,36 +11,37 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
        "golang.org/x/sys/unix"
 )
 
 var (
        ctlOpts = [ctlMax]ctlOpt{
-               ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass},
-               ctlHopLimit:     {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit},
-               ctlPacketInfo:   {sysIPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo},
-               ctlPathMTU:      {sysIPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU},
+               ctlTrafficClass: {unix.IPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass},
+               ctlHopLimit:     {unix.IPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit},
+               ctlPacketInfo:   {unix.IPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo},
+               ctlPathMTU:      {unix.IPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU},
        }
 
        sockOpts = map[int]*sockOpt{
-               ssoTrafficClass:        {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_TCLASS, Len: 4}},
-               ssoHopLimit:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_UNICAST_HOPS, Len: 4}},
-               ssoMulticastInterface:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_IF, Len: 4}},
-               ssoMulticastHopLimit:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_HOPS, Len: 4}},
-               ssoMulticastLoopback:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_LOOP, Len: 4}},
-               ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVTCLASS, Len: 4}},
-               ssoReceiveHopLimit:     {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVHOPLIMIT, Len: 4}},
-               ssoReceivePacketInfo:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPKTINFO, Len: 4}},
-               ssoReceivePathMTU:      {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPATHMTU, Len: 4}},
-               ssoPathMTU:             {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}},
-               ssoChecksum:            {Option: socket.Option{Level: iana.ProtocolReserved, Name: sysIPV6_CHECKSUM, Len: 4}},
-               ssoICMPFilter:          {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: sysICMPV6_FILTER, Len: sizeofICMPv6Filter}},
-               ssoJoinGroup:           {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
-               ssoLeaveGroup:          {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
-               ssoJoinSourceGroup:     {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoLeaveSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoBlockSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
-               ssoUnblockSourceGroup:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoTrafficClass:        {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_TCLASS, Len: 4}},
+               ssoHopLimit:            {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_UNICAST_HOPS, Len: 4}},
+               ssoMulticastInterface:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_IF, Len: 4}},
+               ssoMulticastHopLimit:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_HOPS, Len: 4}},
+               ssoMulticastLoopback:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_LOOP, Len: 4}},
+               ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVTCLASS, Len: 4}},
+               ssoReceiveHopLimit:     {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVHOPLIMIT, Len: 4}},
+               ssoReceivePacketInfo:   {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPKTINFO, Len: 4}},
+               ssoReceivePathMTU:      {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPATHMTU, Len: 4}},
+               ssoPathMTU:             {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}},
+               ssoChecksum:            {Option: socket.Option{Level: iana.ProtocolReserved, Name: unix.IPV6_CHECKSUM, Len: 4}},
+               ssoICMPFilter:          {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: unix.ICMPV6_FILTER, Len: sizeofICMPv6Filter}},
+               ssoJoinGroup:           {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
+               ssoLeaveGroup:          {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq},
+               ssoJoinSourceGroup:     {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoLeaveSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoBlockSourceGroup:    {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
+               ssoUnblockSourceGroup:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq},
                ssoAttachFilter:        {Option: socket.Option{Level: unix.SOL_SOCKET, Name: unix.SO_ATTACH_FILTER, Len: unix.SizeofSockFprog}},
        }
 )
index fc36b018bd2faecc803460741800d7e362187f97..fda8a2994911935a70e7227238768ae9639e195f 100644 (file)
@@ -10,18 +10,11 @@ import (
 
        "golang.org/x/net/internal/iana"
        "golang.org/x/net/internal/socket"
+
+       "golang.org/x/sys/windows"
 )
 
 const (
-       // See ws2tcpip.h.
-       sysIPV6_UNICAST_HOPS   = 0x4
-       sysIPV6_MULTICAST_IF   = 0x9
-       sysIPV6_MULTICAST_HOPS = 0xa
-       sysIPV6_MULTICAST_LOOP = 0xb
-       sysIPV6_JOIN_GROUP     = 0xc
-       sysIPV6_LEAVE_GROUP    = 0xd
-       sysIPV6_PKTINFO        = 0x13
-
        sizeofSockaddrInet6 = 0x1c
 
        sizeofIPv6Mreq     = 0x14
@@ -55,12 +48,12 @@ var (
        ctlOpts = [ctlMax]ctlOpt{}
 
        sockOpts = map[int]*sockOpt{
-               ssoHopLimit:           {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_UNICAST_HOPS, Len: 4}},
-               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_IF, Len: 4}},
-               ssoMulticastHopLimit:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_HOPS, Len: 4}},
-               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_LOOP, Len: 4}},
-               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_JOIN_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq},
-               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_LEAVE_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq},
+               ssoHopLimit:           {Option: socket.Option{Level: iana.ProtocolIPv6, Name: windows.IPV6_UNICAST_HOPS, Len: 4}},
+               ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: windows.IPV6_MULTICAST_IF, Len: 4}},
+               ssoMulticastHopLimit:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: windows.IPV6_MULTICAST_HOPS, Len: 4}},
+               ssoMulticastLoopback:  {Option: socket.Option{Level: iana.ProtocolIPv6, Name: windows.IPV6_MULTICAST_LOOP, Len: 4}},
+               ssoJoinGroup:          {Option: socket.Option{Level: iana.ProtocolIPv6, Name: windows.IPV6_JOIN_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq},
+               ssoLeaveGroup:         {Option: socket.Option{Level: iana.ProtocolIPv6, Name: windows.IPV6_LEAVE_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq},
        }
 )
 
index 75e2dd99486da8571f4a3827d6f145af47c8976b..869f4b2bc928fcf8f60ff3b958b001544377eb7d 100644 (file)
@@ -8,40 +8,11 @@
 package ipv6
 
 const (
-       sysIPV6_UNICAST_HOPS   = 0x4
-       sysIPV6_MULTICAST_IF   = 0x9
-       sysIPV6_MULTICAST_HOPS = 0xa
-       sysIPV6_MULTICAST_LOOP = 0xb
-       sysIPV6_JOIN_GROUP     = 0xc
-       sysIPV6_LEAVE_GROUP    = 0xd
-       sysICMP6_FILTER        = 0x26
-
-       sysIPV6_CHECKSUM = 0x27
-       sysIPV6_V6ONLY   = 0x25
-
-       sysIPV6_RTHDRDSTOPTS = 0x37
-
-       sysIPV6_RECVPKTINFO  = 0x23
-       sysIPV6_RECVHOPLIMIT = 0x29
-       sysIPV6_RECVRTHDR    = 0x33
-       sysIPV6_RECVHOPOPTS  = 0x35
-       sysIPV6_RECVDSTOPTS  = 0x38
-
-       sysIPV6_USE_MIN_MTU = 0x2c
-       sysIPV6_RECVPATHMTU = 0x2f
-       sysIPV6_PATHMTU     = 0x2e
-
+       sysIPV6_PATHMTU  = 0x2e
        sysIPV6_PKTINFO  = 0x21
        sysIPV6_HOPLIMIT = 0x28
        sysIPV6_NEXTHOP  = 0x30
-       sysIPV6_HOPOPTS  = 0x34
-       sysIPV6_DSTOPTS  = 0x36
-       sysIPV6_RTHDR    = 0x32
-
-       sysIPV6_RECVTCLASS = 0x2a
-
        sysIPV6_TCLASS   = 0x2b
-       sysIPV6_DONTFRAG = 0x2d
 
        sizeofSockaddrStorage = 0x508
        sizeofSockaddrInet6   = 0x1c
index 555744afd71ad6e28dcb5ab541f477f62986730d..a1211729e435a57c72f38759a64fc83f8d792675 100644 (file)
@@ -4,72 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_UNICAST_HOPS   = 0x4
-       sysIPV6_MULTICAST_IF   = 0x9
-       sysIPV6_MULTICAST_HOPS = 0xa
-       sysIPV6_MULTICAST_LOOP = 0xb
-       sysIPV6_JOIN_GROUP     = 0xc
-       sysIPV6_LEAVE_GROUP    = 0xd
-
-       sysIPV6_PORTRANGE    = 0xe
-       sysICMP6_FILTER      = 0x12
-       sysIPV6_2292PKTINFO  = 0x13
-       sysIPV6_2292HOPLIMIT = 0x14
-       sysIPV6_2292NEXTHOP  = 0x15
-       sysIPV6_2292HOPOPTS  = 0x16
-       sysIPV6_2292DSTOPTS  = 0x17
-       sysIPV6_2292RTHDR    = 0x18
-
-       sysIPV6_2292PKTOPTIONS = 0x19
-
-       sysIPV6_CHECKSUM = 0x1a
-       sysIPV6_V6ONLY   = 0x1b
-
-       sysIPV6_IPSEC_POLICY = 0x1c
-
-       sysIPV6_RECVTCLASS = 0x23
-       sysIPV6_TCLASS     = 0x24
-
-       sysIPV6_RTHDRDSTOPTS = 0x39
-
-       sysIPV6_RECVPKTINFO = 0x3d
-
-       sysIPV6_RECVHOPLIMIT = 0x25
-       sysIPV6_RECVRTHDR    = 0x26
-       sysIPV6_RECVHOPOPTS  = 0x27
-       sysIPV6_RECVDSTOPTS  = 0x28
-
-       sysIPV6_USE_MIN_MTU = 0x2a
-       sysIPV6_RECVPATHMTU = 0x2b
-
-       sysIPV6_PATHMTU = 0x2c
-
+       sysIPV6_TCLASS   = 0x24
+       sysIPV6_PATHMTU  = 0x2c
        sysIPV6_PKTINFO  = 0x2e
        sysIPV6_HOPLIMIT = 0x2f
        sysIPV6_NEXTHOP  = 0x30
-       sysIPV6_HOPOPTS  = 0x31
-       sysIPV6_DSTOPTS  = 0x32
-       sysIPV6_RTHDR    = 0x33
-
-       sysIPV6_AUTOFLOWLABEL = 0x3b
-
-       sysIPV6_DONTFRAG = 0x3e
-
-       sysIPV6_PREFER_TEMPADDR = 0x3f
-
-       sysIPV6_MSFILTER            = 0x4a
-       sysMCAST_JOIN_GROUP         = 0x50
-       sysMCAST_LEAVE_GROUP        = 0x51
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x52
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x53
-       sysMCAST_BLOCK_SOURCE       = 0x54
-       sysMCAST_UNBLOCK_SOURCE     = 0x55
-
-       sysIPV6_BOUND_IF = 0x7d
-
-       sysIPV6_PORTRANGE_DEFAULT = 0x0
-       sysIPV6_PORTRANGE_HIGH    = 0x1
-       sysIPV6_PORTRANGE_LOW     = 0x2
 
        sizeofSockaddrStorage = 0x80
        sizeofSockaddrInet6   = 0x1c
index cf3cc1024acb153a7f323c998c06e92be247b44f..512db656e53e9fac711378b4853b83bef5169d7a 100644 (file)
@@ -4,51 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_UNICAST_HOPS   = 0x4
-       sysIPV6_MULTICAST_IF   = 0x9
-       sysIPV6_MULTICAST_HOPS = 0xa
-       sysIPV6_MULTICAST_LOOP = 0xb
-       sysIPV6_JOIN_GROUP     = 0xc
-       sysIPV6_LEAVE_GROUP    = 0xd
-       sysIPV6_PORTRANGE      = 0xe
-       sysICMP6_FILTER        = 0x12
-
-       sysIPV6_CHECKSUM = 0x1a
-       sysIPV6_V6ONLY   = 0x1b
-
-       sysIPV6_IPSEC_POLICY = 0x1c
-
-       sysIPV6_RTHDRDSTOPTS = 0x23
-       sysIPV6_RECVPKTINFO  = 0x24
-       sysIPV6_RECVHOPLIMIT = 0x25
-       sysIPV6_RECVRTHDR    = 0x26
-       sysIPV6_RECVHOPOPTS  = 0x27
-       sysIPV6_RECVDSTOPTS  = 0x28
-
-       sysIPV6_USE_MIN_MTU = 0x2a
-       sysIPV6_RECVPATHMTU = 0x2b
-
-       sysIPV6_PATHMTU = 0x2c
-
+       sysIPV6_PATHMTU  = 0x2c
        sysIPV6_PKTINFO  = 0x2e
        sysIPV6_HOPLIMIT = 0x2f
        sysIPV6_NEXTHOP  = 0x30
-       sysIPV6_HOPOPTS  = 0x31
-       sysIPV6_DSTOPTS  = 0x32
-       sysIPV6_RTHDR    = 0x33
-
-       sysIPV6_RECVTCLASS = 0x39
-
-       sysIPV6_AUTOFLOWLABEL = 0x3b
-
        sysIPV6_TCLASS   = 0x3d
-       sysIPV6_DONTFRAG = 0x3e
-
-       sysIPV6_PREFER_TEMPADDR = 0x3f
-
-       sysIPV6_PORTRANGE_DEFAULT = 0x0
-       sysIPV6_PORTRANGE_HIGH    = 0x1
-       sysIPV6_PORTRANGE_LOW     = 0x2
 
        sizeofSockaddrInet6 = 0x1c
        sizeofInet6Pktinfo  = 0x14
index 73f31b260ea18cd43c18c73f71fe263a2d828815..46a62b88513a601f37f32077179f0859fa977ceb 100644 (file)
@@ -4,63 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_UNICAST_HOPS   = 0x4
-       sysIPV6_MULTICAST_IF   = 0x9
-       sysIPV6_MULTICAST_HOPS = 0xa
-       sysIPV6_MULTICAST_LOOP = 0xb
-       sysIPV6_JOIN_GROUP     = 0xc
-       sysIPV6_LEAVE_GROUP    = 0xd
-       sysIPV6_PORTRANGE      = 0xe
-       sysICMP6_FILTER        = 0x12
-
-       sysIPV6_CHECKSUM = 0x1a
-       sysIPV6_V6ONLY   = 0x1b
-
-       sysIPV6_IPSEC_POLICY = 0x1c
-
-       sysIPV6_RTHDRDSTOPTS = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x24
-       sysIPV6_RECVHOPLIMIT = 0x25
-       sysIPV6_RECVRTHDR    = 0x26
-       sysIPV6_RECVHOPOPTS  = 0x27
-       sysIPV6_RECVDSTOPTS  = 0x28
-
-       sysIPV6_USE_MIN_MTU = 0x2a
-       sysIPV6_RECVPATHMTU = 0x2b
-
-       sysIPV6_PATHMTU = 0x2c
-
+       sysIPV6_PATHMTU  = 0x2c
        sysIPV6_PKTINFO  = 0x2e
        sysIPV6_HOPLIMIT = 0x2f
        sysIPV6_NEXTHOP  = 0x30
-       sysIPV6_HOPOPTS  = 0x31
-       sysIPV6_DSTOPTS  = 0x32
-       sysIPV6_RTHDR    = 0x33
-
-       sysIPV6_RECVTCLASS = 0x39
-
-       sysIPV6_AUTOFLOWLABEL = 0x3b
-
        sysIPV6_TCLASS   = 0x3d
-       sysIPV6_DONTFRAG = 0x3e
-
-       sysIPV6_PREFER_TEMPADDR = 0x3f
-
-       sysIPV6_BINDANY = 0x40
-
-       sysIPV6_MSFILTER = 0x4a
-
-       sysMCAST_JOIN_GROUP         = 0x50
-       sysMCAST_LEAVE_GROUP        = 0x51
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x52
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x53
-       sysMCAST_BLOCK_SOURCE       = 0x54
-       sysMCAST_UNBLOCK_SOURCE     = 0x55
-
-       sysIPV6_PORTRANGE_DEFAULT = 0x0
-       sysIPV6_PORTRANGE_HIGH    = 0x1
-       sysIPV6_PORTRANGE_LOW     = 0x2
 
        sizeofSockaddrStorage = 0x80
        sizeofSockaddrInet6   = 0x1c
index 490ce7cf1044c085f2569f707b83d84a8a21178d..e475f51118522337ea9d063f78d9a12e64dc743b 100644 (file)
@@ -4,63 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_UNICAST_HOPS   = 0x4
-       sysIPV6_MULTICAST_IF   = 0x9
-       sysIPV6_MULTICAST_HOPS = 0xa
-       sysIPV6_MULTICAST_LOOP = 0xb
-       sysIPV6_JOIN_GROUP     = 0xc
-       sysIPV6_LEAVE_GROUP    = 0xd
-       sysIPV6_PORTRANGE      = 0xe
-       sysICMP6_FILTER        = 0x12
-
-       sysIPV6_CHECKSUM = 0x1a
-       sysIPV6_V6ONLY   = 0x1b
-
-       sysIPV6_IPSEC_POLICY = 0x1c
-
-       sysIPV6_RTHDRDSTOPTS = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x24
-       sysIPV6_RECVHOPLIMIT = 0x25
-       sysIPV6_RECVRTHDR    = 0x26
-       sysIPV6_RECVHOPOPTS  = 0x27
-       sysIPV6_RECVDSTOPTS  = 0x28
-
-       sysIPV6_USE_MIN_MTU = 0x2a
-       sysIPV6_RECVPATHMTU = 0x2b
-
-       sysIPV6_PATHMTU = 0x2c
-
+       sysIPV6_PATHMTU  = 0x2c
        sysIPV6_PKTINFO  = 0x2e
        sysIPV6_HOPLIMIT = 0x2f
        sysIPV6_NEXTHOP  = 0x30
-       sysIPV6_HOPOPTS  = 0x31
-       sysIPV6_DSTOPTS  = 0x32
-       sysIPV6_RTHDR    = 0x33
-
-       sysIPV6_RECVTCLASS = 0x39
-
-       sysIPV6_AUTOFLOWLABEL = 0x3b
-
        sysIPV6_TCLASS   = 0x3d
-       sysIPV6_DONTFRAG = 0x3e
-
-       sysIPV6_PREFER_TEMPADDR = 0x3f
-
-       sysIPV6_BINDANY = 0x40
-
-       sysIPV6_MSFILTER = 0x4a
-
-       sysMCAST_JOIN_GROUP         = 0x50
-       sysMCAST_LEAVE_GROUP        = 0x51
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x52
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x53
-       sysMCAST_BLOCK_SOURCE       = 0x54
-       sysMCAST_UNBLOCK_SOURCE     = 0x55
-
-       sysIPV6_PORTRANGE_DEFAULT = 0x0
-       sysIPV6_PORTRANGE_HIGH    = 0x1
-       sysIPV6_PORTRANGE_LOW     = 0x2
 
        sizeofSockaddrStorage = 0x80
        sizeofSockaddrInet6   = 0x1c
index 490ce7cf1044c085f2569f707b83d84a8a21178d..e475f51118522337ea9d063f78d9a12e64dc743b 100644 (file)
@@ -4,63 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_UNICAST_HOPS   = 0x4
-       sysIPV6_MULTICAST_IF   = 0x9
-       sysIPV6_MULTICAST_HOPS = 0xa
-       sysIPV6_MULTICAST_LOOP = 0xb
-       sysIPV6_JOIN_GROUP     = 0xc
-       sysIPV6_LEAVE_GROUP    = 0xd
-       sysIPV6_PORTRANGE      = 0xe
-       sysICMP6_FILTER        = 0x12
-
-       sysIPV6_CHECKSUM = 0x1a
-       sysIPV6_V6ONLY   = 0x1b
-
-       sysIPV6_IPSEC_POLICY = 0x1c
-
-       sysIPV6_RTHDRDSTOPTS = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x24
-       sysIPV6_RECVHOPLIMIT = 0x25
-       sysIPV6_RECVRTHDR    = 0x26
-       sysIPV6_RECVHOPOPTS  = 0x27
-       sysIPV6_RECVDSTOPTS  = 0x28
-
-       sysIPV6_USE_MIN_MTU = 0x2a
-       sysIPV6_RECVPATHMTU = 0x2b
-
-       sysIPV6_PATHMTU = 0x2c
-
+       sysIPV6_PATHMTU  = 0x2c
        sysIPV6_PKTINFO  = 0x2e
        sysIPV6_HOPLIMIT = 0x2f
        sysIPV6_NEXTHOP  = 0x30
-       sysIPV6_HOPOPTS  = 0x31
-       sysIPV6_DSTOPTS  = 0x32
-       sysIPV6_RTHDR    = 0x33
-
-       sysIPV6_RECVTCLASS = 0x39
-
-       sysIPV6_AUTOFLOWLABEL = 0x3b
-
        sysIPV6_TCLASS   = 0x3d
-       sysIPV6_DONTFRAG = 0x3e
-
-       sysIPV6_PREFER_TEMPADDR = 0x3f
-
-       sysIPV6_BINDANY = 0x40
-
-       sysIPV6_MSFILTER = 0x4a
-
-       sysMCAST_JOIN_GROUP         = 0x50
-       sysMCAST_LEAVE_GROUP        = 0x51
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x52
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x53
-       sysMCAST_BLOCK_SOURCE       = 0x54
-       sysMCAST_UNBLOCK_SOURCE     = 0x55
-
-       sysIPV6_PORTRANGE_DEFAULT = 0x0
-       sysIPV6_PORTRANGE_HIGH    = 0x1
-       sysIPV6_PORTRANGE_LOW     = 0x2
 
        sizeofSockaddrStorage = 0x80
        sizeofSockaddrInet6   = 0x1c
index 47e99ac9d304e92691a874802cac49db55f4493e..edaf7f15edc271029a94fbbc392776bd8d5c83d3 100644 (file)
@@ -4,63 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_UNICAST_HOPS   = 0x4
-       sysIPV6_MULTICAST_IF   = 0x9
-       sysIPV6_MULTICAST_HOPS = 0xa
-       sysIPV6_MULTICAST_LOOP = 0xb
-       sysIPV6_JOIN_GROUP     = 0xc
-       sysIPV6_LEAVE_GROUP    = 0xd
-       sysIPV6_PORTRANGE      = 0xe
-       sysICMP6_FILTER        = 0x12
-
-       sysIPV6_CHECKSUM = 0x1a
-       sysIPV6_V6ONLY   = 0x1b
-
-       sysIPV6_IPSEC_POLICY = 0x1c
-
-       sysIPV6_RTHDRDSTOPTS = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x24
-       sysIPV6_RECVHOPLIMIT = 0x25
-       sysIPV6_RECVRTHDR    = 0x26
-       sysIPV6_RECVHOPOPTS  = 0x27
-       sysIPV6_RECVDSTOPTS  = 0x28
-
-       sysIPV6_USE_MIN_MTU = 0x2a
-       sysIPV6_RECVPATHMTU = 0x2b
-
-       sysIPV6_PATHMTU = 0x2c
-
+       sysIPV6_PATHMTU  = 0x2c
        sysIPV6_PKTINFO  = 0x2e
        sysIPV6_HOPLIMIT = 0x2f
        sysIPV6_NEXTHOP  = 0x30
-       sysIPV6_HOPOPTS  = 0x31
-       sysIPV6_DSTOPTS  = 0x32
-       sysIPV6_RTHDR    = 0x33
-
-       sysIPV6_RECVTCLASS = 0x39
-
-       sysIPV6_AUTOFLOWLABEL = 0x3b
-
        sysIPV6_TCLASS   = 0x3d
-       sysIPV6_DONTFRAG = 0x3e
-
-       sysIPV6_PREFER_TEMPADDR = 0x3f
-
-       sysIPV6_BINDANY = 0x40
-
-       sysIPV6_MSFILTER = 0x4a
-
-       sysMCAST_JOIN_GROUP         = 0x50
-       sysMCAST_LEAVE_GROUP        = 0x51
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x52
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x53
-       sysMCAST_BLOCK_SOURCE       = 0x54
-       sysMCAST_UNBLOCK_SOURCE     = 0x55
-
-       sysIPV6_PORTRANGE_DEFAULT = 0x0
-       sysIPV6_PORTRANGE_HIGH    = 0x1
-       sysIPV6_PORTRANGE_LOW     = 0x2
 
        sizeofSockaddrStorage = 0x80
        sizeofSockaddrInet6   = 0x1c
index bde4a8f8f5d2f7f12cc996e54d5dec96338c071a..bb579ea1c9d88001986d43bd61260dfe24212bfa 100644 (file)
@@ -4,85 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_ADDRFORM       = 0x1
-       sysIPV6_2292PKTINFO    = 0x2
-       sysIPV6_2292HOPOPTS    = 0x3
-       sysIPV6_2292DSTOPTS    = 0x4
-       sysIPV6_2292RTHDR      = 0x5
-       sysIPV6_2292PKTOPTIONS = 0x6
-       sysIPV6_CHECKSUM       = 0x7
-       sysIPV6_2292HOPLIMIT   = 0x8
-       sysIPV6_NEXTHOP        = 0x9
-       sysIPV6_FLOWINFO       = 0xb
-
-       sysIPV6_UNICAST_HOPS        = 0x10
-       sysIPV6_MULTICAST_IF        = 0x11
-       sysIPV6_MULTICAST_HOPS      = 0x12
-       sysIPV6_MULTICAST_LOOP      = 0x13
-       sysIPV6_ADD_MEMBERSHIP      = 0x14
-       sysIPV6_DROP_MEMBERSHIP     = 0x15
-       sysMCAST_JOIN_GROUP         = 0x2a
-       sysMCAST_LEAVE_GROUP        = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x2f
-       sysMCAST_BLOCK_SOURCE       = 0x2b
-       sysMCAST_UNBLOCK_SOURCE     = 0x2c
-       sysMCAST_MSFILTER           = 0x30
-       sysIPV6_ROUTER_ALERT        = 0x16
-       sysIPV6_MTU_DISCOVER        = 0x17
-       sysIPV6_MTU                 = 0x18
-       sysIPV6_RECVERR             = 0x19
-       sysIPV6_V6ONLY              = 0x1a
-       sysIPV6_JOIN_ANYCAST        = 0x1b
-       sysIPV6_LEAVE_ANYCAST       = 0x1c
-
-       sysIPV6_FLOWLABEL_MGR = 0x20
-       sysIPV6_FLOWINFO_SEND = 0x21
-
-       sysIPV6_IPSEC_POLICY = 0x22
-       sysIPV6_XFRM_POLICY  = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x31
-       sysIPV6_PKTINFO      = 0x32
-       sysIPV6_RECVHOPLIMIT = 0x33
-       sysIPV6_HOPLIMIT     = 0x34
-       sysIPV6_RECVHOPOPTS  = 0x35
-       sysIPV6_HOPOPTS      = 0x36
-       sysIPV6_RTHDRDSTOPTS = 0x37
-       sysIPV6_RECVRTHDR    = 0x38
-       sysIPV6_RTHDR        = 0x39
-       sysIPV6_RECVDSTOPTS  = 0x3a
-       sysIPV6_DSTOPTS      = 0x3b
-       sysIPV6_RECVPATHMTU  = 0x3c
-       sysIPV6_PATHMTU      = 0x3d
-       sysIPV6_DONTFRAG     = 0x3e
-
-       sysIPV6_RECVTCLASS = 0x42
-       sysIPV6_TCLASS     = 0x43
-
-       sysIPV6_ADDR_PREFERENCES = 0x48
-
-       sysIPV6_PREFER_SRC_TMP            = 0x1
-       sysIPV6_PREFER_SRC_PUBLIC         = 0x2
-       sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100
-       sysIPV6_PREFER_SRC_COA            = 0x4
-       sysIPV6_PREFER_SRC_HOME           = 0x400
-       sysIPV6_PREFER_SRC_CGA            = 0x8
-       sysIPV6_PREFER_SRC_NONCGA         = 0x800
-
-       sysIPV6_MINHOPCOUNT = 0x49
-
-       sysIPV6_ORIGDSTADDR     = 0x4a
-       sysIPV6_RECVORIGDSTADDR = 0x4a
-       sysIPV6_TRANSPARENT     = 0x4b
-       sysIPV6_UNICAST_IF      = 0x4c
-
-       sysICMPV6_FILTER = 0x1
-
-       sysICMPV6_FILTER_BLOCK       = 0x1
-       sysICMPV6_FILTER_PASS        = 0x2
-       sysICMPV6_FILTER_BLOCKOTHERS = 0x3
-       sysICMPV6_FILTER_PASSONLY    = 0x4
+       sysIPV6_NEXTHOP  = 0x9
+       sysIPV6_PKTINFO  = 0x32
+       sysIPV6_HOPLIMIT = 0x34
+       sysIPV6_PATHMTU  = 0x3d
+       sysIPV6_TCLASS   = 0x43
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet6         = 0x1c
index 992ac9ec5f2cd346bad77731a1e12fc7c6221a86..9500f7d5ed63fb9aebe2ca62740d0c30ac4bd105 100644 (file)
@@ -4,85 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_ADDRFORM       = 0x1
-       sysIPV6_2292PKTINFO    = 0x2
-       sysIPV6_2292HOPOPTS    = 0x3
-       sysIPV6_2292DSTOPTS    = 0x4
-       sysIPV6_2292RTHDR      = 0x5
-       sysIPV6_2292PKTOPTIONS = 0x6
-       sysIPV6_CHECKSUM       = 0x7
-       sysIPV6_2292HOPLIMIT   = 0x8
-       sysIPV6_NEXTHOP        = 0x9
-       sysIPV6_FLOWINFO       = 0xb
-
-       sysIPV6_UNICAST_HOPS        = 0x10
-       sysIPV6_MULTICAST_IF        = 0x11
-       sysIPV6_MULTICAST_HOPS      = 0x12
-       sysIPV6_MULTICAST_LOOP      = 0x13
-       sysIPV6_ADD_MEMBERSHIP      = 0x14
-       sysIPV6_DROP_MEMBERSHIP     = 0x15
-       sysMCAST_JOIN_GROUP         = 0x2a
-       sysMCAST_LEAVE_GROUP        = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x2f
-       sysMCAST_BLOCK_SOURCE       = 0x2b
-       sysMCAST_UNBLOCK_SOURCE     = 0x2c
-       sysMCAST_MSFILTER           = 0x30
-       sysIPV6_ROUTER_ALERT        = 0x16
-       sysIPV6_MTU_DISCOVER        = 0x17
-       sysIPV6_MTU                 = 0x18
-       sysIPV6_RECVERR             = 0x19
-       sysIPV6_V6ONLY              = 0x1a
-       sysIPV6_JOIN_ANYCAST        = 0x1b
-       sysIPV6_LEAVE_ANYCAST       = 0x1c
-
-       sysIPV6_FLOWLABEL_MGR = 0x20
-       sysIPV6_FLOWINFO_SEND = 0x21
-
-       sysIPV6_IPSEC_POLICY = 0x22
-       sysIPV6_XFRM_POLICY  = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x31
-       sysIPV6_PKTINFO      = 0x32
-       sysIPV6_RECVHOPLIMIT = 0x33
-       sysIPV6_HOPLIMIT     = 0x34
-       sysIPV6_RECVHOPOPTS  = 0x35
-       sysIPV6_HOPOPTS      = 0x36
-       sysIPV6_RTHDRDSTOPTS = 0x37
-       sysIPV6_RECVRTHDR    = 0x38
-       sysIPV6_RTHDR        = 0x39
-       sysIPV6_RECVDSTOPTS  = 0x3a
-       sysIPV6_DSTOPTS      = 0x3b
-       sysIPV6_RECVPATHMTU  = 0x3c
-       sysIPV6_PATHMTU      = 0x3d
-       sysIPV6_DONTFRAG     = 0x3e
-
-       sysIPV6_RECVTCLASS = 0x42
-       sysIPV6_TCLASS     = 0x43
-
-       sysIPV6_ADDR_PREFERENCES = 0x48
-
-       sysIPV6_PREFER_SRC_TMP            = 0x1
-       sysIPV6_PREFER_SRC_PUBLIC         = 0x2
-       sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100
-       sysIPV6_PREFER_SRC_COA            = 0x4
-       sysIPV6_PREFER_SRC_HOME           = 0x400
-       sysIPV6_PREFER_SRC_CGA            = 0x8
-       sysIPV6_PREFER_SRC_NONCGA         = 0x800
-
-       sysIPV6_MINHOPCOUNT = 0x49
-
-       sysIPV6_ORIGDSTADDR     = 0x4a
-       sysIPV6_RECVORIGDSTADDR = 0x4a
-       sysIPV6_TRANSPARENT     = 0x4b
-       sysIPV6_UNICAST_IF      = 0x4c
-
-       sysICMPV6_FILTER = 0x1
-
-       sysICMPV6_FILTER_BLOCK       = 0x1
-       sysICMPV6_FILTER_PASS        = 0x2
-       sysICMPV6_FILTER_BLOCKOTHERS = 0x3
-       sysICMPV6_FILTER_PASSONLY    = 0x4
+       sysIPV6_NEXTHOP  = 0x9
+       sysIPV6_PKTINFO  = 0x32
+       sysIPV6_HOPLIMIT = 0x34
+       sysIPV6_PATHMTU  = 0x3d
+       sysIPV6_TCLASS   = 0x43
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet6         = 0x1c
index bde4a8f8f5d2f7f12cc996e54d5dec96338c071a..bb579ea1c9d88001986d43bd61260dfe24212bfa 100644 (file)
@@ -4,85 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_ADDRFORM       = 0x1
-       sysIPV6_2292PKTINFO    = 0x2
-       sysIPV6_2292HOPOPTS    = 0x3
-       sysIPV6_2292DSTOPTS    = 0x4
-       sysIPV6_2292RTHDR      = 0x5
-       sysIPV6_2292PKTOPTIONS = 0x6
-       sysIPV6_CHECKSUM       = 0x7
-       sysIPV6_2292HOPLIMIT   = 0x8
-       sysIPV6_NEXTHOP        = 0x9
-       sysIPV6_FLOWINFO       = 0xb
-
-       sysIPV6_UNICAST_HOPS        = 0x10
-       sysIPV6_MULTICAST_IF        = 0x11
-       sysIPV6_MULTICAST_HOPS      = 0x12
-       sysIPV6_MULTICAST_LOOP      = 0x13
-       sysIPV6_ADD_MEMBERSHIP      = 0x14
-       sysIPV6_DROP_MEMBERSHIP     = 0x15
-       sysMCAST_JOIN_GROUP         = 0x2a
-       sysMCAST_LEAVE_GROUP        = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x2f
-       sysMCAST_BLOCK_SOURCE       = 0x2b
-       sysMCAST_UNBLOCK_SOURCE     = 0x2c
-       sysMCAST_MSFILTER           = 0x30
-       sysIPV6_ROUTER_ALERT        = 0x16
-       sysIPV6_MTU_DISCOVER        = 0x17
-       sysIPV6_MTU                 = 0x18
-       sysIPV6_RECVERR             = 0x19
-       sysIPV6_V6ONLY              = 0x1a
-       sysIPV6_JOIN_ANYCAST        = 0x1b
-       sysIPV6_LEAVE_ANYCAST       = 0x1c
-
-       sysIPV6_FLOWLABEL_MGR = 0x20
-       sysIPV6_FLOWINFO_SEND = 0x21
-
-       sysIPV6_IPSEC_POLICY = 0x22
-       sysIPV6_XFRM_POLICY  = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x31
-       sysIPV6_PKTINFO      = 0x32
-       sysIPV6_RECVHOPLIMIT = 0x33
-       sysIPV6_HOPLIMIT     = 0x34
-       sysIPV6_RECVHOPOPTS  = 0x35
-       sysIPV6_HOPOPTS      = 0x36
-       sysIPV6_RTHDRDSTOPTS = 0x37
-       sysIPV6_RECVRTHDR    = 0x38
-       sysIPV6_RTHDR        = 0x39
-       sysIPV6_RECVDSTOPTS  = 0x3a
-       sysIPV6_DSTOPTS      = 0x3b
-       sysIPV6_RECVPATHMTU  = 0x3c
-       sysIPV6_PATHMTU      = 0x3d
-       sysIPV6_DONTFRAG     = 0x3e
-
-       sysIPV6_RECVTCLASS = 0x42
-       sysIPV6_TCLASS     = 0x43
-
-       sysIPV6_ADDR_PREFERENCES = 0x48
-
-       sysIPV6_PREFER_SRC_TMP            = 0x1
-       sysIPV6_PREFER_SRC_PUBLIC         = 0x2
-       sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100
-       sysIPV6_PREFER_SRC_COA            = 0x4
-       sysIPV6_PREFER_SRC_HOME           = 0x400
-       sysIPV6_PREFER_SRC_CGA            = 0x8
-       sysIPV6_PREFER_SRC_NONCGA         = 0x800
-
-       sysIPV6_MINHOPCOUNT = 0x49
-
-       sysIPV6_ORIGDSTADDR     = 0x4a
-       sysIPV6_RECVORIGDSTADDR = 0x4a
-       sysIPV6_TRANSPARENT     = 0x4b
-       sysIPV6_UNICAST_IF      = 0x4c
-
-       sysICMPV6_FILTER = 0x1
-
-       sysICMPV6_FILTER_BLOCK       = 0x1
-       sysICMPV6_FILTER_PASS        = 0x2
-       sysICMPV6_FILTER_BLOCKOTHERS = 0x3
-       sysICMPV6_FILTER_PASSONLY    = 0x4
+       sysIPV6_NEXTHOP  = 0x9
+       sysIPV6_PKTINFO  = 0x32
+       sysIPV6_HOPLIMIT = 0x34
+       sysIPV6_PATHMTU  = 0x3d
+       sysIPV6_TCLASS   = 0x43
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet6         = 0x1c
index 992ac9ec5f2cd346bad77731a1e12fc7c6221a86..9500f7d5ed63fb9aebe2ca62740d0c30ac4bd105 100644 (file)
@@ -4,85 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_ADDRFORM       = 0x1
-       sysIPV6_2292PKTINFO    = 0x2
-       sysIPV6_2292HOPOPTS    = 0x3
-       sysIPV6_2292DSTOPTS    = 0x4
-       sysIPV6_2292RTHDR      = 0x5
-       sysIPV6_2292PKTOPTIONS = 0x6
-       sysIPV6_CHECKSUM       = 0x7
-       sysIPV6_2292HOPLIMIT   = 0x8
-       sysIPV6_NEXTHOP        = 0x9
-       sysIPV6_FLOWINFO       = 0xb
-
-       sysIPV6_UNICAST_HOPS        = 0x10
-       sysIPV6_MULTICAST_IF        = 0x11
-       sysIPV6_MULTICAST_HOPS      = 0x12
-       sysIPV6_MULTICAST_LOOP      = 0x13
-       sysIPV6_ADD_MEMBERSHIP      = 0x14
-       sysIPV6_DROP_MEMBERSHIP     = 0x15
-       sysMCAST_JOIN_GROUP         = 0x2a
-       sysMCAST_LEAVE_GROUP        = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x2f
-       sysMCAST_BLOCK_SOURCE       = 0x2b
-       sysMCAST_UNBLOCK_SOURCE     = 0x2c
-       sysMCAST_MSFILTER           = 0x30
-       sysIPV6_ROUTER_ALERT        = 0x16
-       sysIPV6_MTU_DISCOVER        = 0x17
-       sysIPV6_MTU                 = 0x18
-       sysIPV6_RECVERR             = 0x19
-       sysIPV6_V6ONLY              = 0x1a
-       sysIPV6_JOIN_ANYCAST        = 0x1b
-       sysIPV6_LEAVE_ANYCAST       = 0x1c
-
-       sysIPV6_FLOWLABEL_MGR = 0x20
-       sysIPV6_FLOWINFO_SEND = 0x21
-
-       sysIPV6_IPSEC_POLICY = 0x22
-       sysIPV6_XFRM_POLICY  = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x31
-       sysIPV6_PKTINFO      = 0x32
-       sysIPV6_RECVHOPLIMIT = 0x33
-       sysIPV6_HOPLIMIT     = 0x34
-       sysIPV6_RECVHOPOPTS  = 0x35
-       sysIPV6_HOPOPTS      = 0x36
-       sysIPV6_RTHDRDSTOPTS = 0x37
-       sysIPV6_RECVRTHDR    = 0x38
-       sysIPV6_RTHDR        = 0x39
-       sysIPV6_RECVDSTOPTS  = 0x3a
-       sysIPV6_DSTOPTS      = 0x3b
-       sysIPV6_RECVPATHMTU  = 0x3c
-       sysIPV6_PATHMTU      = 0x3d
-       sysIPV6_DONTFRAG     = 0x3e
-
-       sysIPV6_RECVTCLASS = 0x42
-       sysIPV6_TCLASS     = 0x43
-
-       sysIPV6_ADDR_PREFERENCES = 0x48
-
-       sysIPV6_PREFER_SRC_TMP            = 0x1
-       sysIPV6_PREFER_SRC_PUBLIC         = 0x2
-       sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100
-       sysIPV6_PREFER_SRC_COA            = 0x4
-       sysIPV6_PREFER_SRC_HOME           = 0x400
-       sysIPV6_PREFER_SRC_CGA            = 0x8
-       sysIPV6_PREFER_SRC_NONCGA         = 0x800
-
-       sysIPV6_MINHOPCOUNT = 0x49
-
-       sysIPV6_ORIGDSTADDR     = 0x4a
-       sysIPV6_RECVORIGDSTADDR = 0x4a
-       sysIPV6_TRANSPARENT     = 0x4b
-       sysIPV6_UNICAST_IF      = 0x4c
-
-       sysICMPV6_FILTER = 0x1
-
-       sysICMPV6_FILTER_BLOCK       = 0x1
-       sysICMPV6_FILTER_PASS        = 0x2
-       sysICMPV6_FILTER_BLOCKOTHERS = 0x3
-       sysICMPV6_FILTER_PASSONLY    = 0x4
+       sysIPV6_NEXTHOP  = 0x9
+       sysIPV6_PKTINFO  = 0x32
+       sysIPV6_HOPLIMIT = 0x34
+       sysIPV6_PATHMTU  = 0x3d
+       sysIPV6_TCLASS   = 0x43
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet6         = 0x1c
index bde4a8f8f5d2f7f12cc996e54d5dec96338c071a..bb579ea1c9d88001986d43bd61260dfe24212bfa 100644 (file)
@@ -4,85 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_ADDRFORM       = 0x1
-       sysIPV6_2292PKTINFO    = 0x2
-       sysIPV6_2292HOPOPTS    = 0x3
-       sysIPV6_2292DSTOPTS    = 0x4
-       sysIPV6_2292RTHDR      = 0x5
-       sysIPV6_2292PKTOPTIONS = 0x6
-       sysIPV6_CHECKSUM       = 0x7
-       sysIPV6_2292HOPLIMIT   = 0x8
-       sysIPV6_NEXTHOP        = 0x9
-       sysIPV6_FLOWINFO       = 0xb
-
-       sysIPV6_UNICAST_HOPS        = 0x10
-       sysIPV6_MULTICAST_IF        = 0x11
-       sysIPV6_MULTICAST_HOPS      = 0x12
-       sysIPV6_MULTICAST_LOOP      = 0x13
-       sysIPV6_ADD_MEMBERSHIP      = 0x14
-       sysIPV6_DROP_MEMBERSHIP     = 0x15
-       sysMCAST_JOIN_GROUP         = 0x2a
-       sysMCAST_LEAVE_GROUP        = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x2f
-       sysMCAST_BLOCK_SOURCE       = 0x2b
-       sysMCAST_UNBLOCK_SOURCE     = 0x2c
-       sysMCAST_MSFILTER           = 0x30
-       sysIPV6_ROUTER_ALERT        = 0x16
-       sysIPV6_MTU_DISCOVER        = 0x17
-       sysIPV6_MTU                 = 0x18
-       sysIPV6_RECVERR             = 0x19
-       sysIPV6_V6ONLY              = 0x1a
-       sysIPV6_JOIN_ANYCAST        = 0x1b
-       sysIPV6_LEAVE_ANYCAST       = 0x1c
-
-       sysIPV6_FLOWLABEL_MGR = 0x20
-       sysIPV6_FLOWINFO_SEND = 0x21
-
-       sysIPV6_IPSEC_POLICY = 0x22
-       sysIPV6_XFRM_POLICY  = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x31
-       sysIPV6_PKTINFO      = 0x32
-       sysIPV6_RECVHOPLIMIT = 0x33
-       sysIPV6_HOPLIMIT     = 0x34
-       sysIPV6_RECVHOPOPTS  = 0x35
-       sysIPV6_HOPOPTS      = 0x36
-       sysIPV6_RTHDRDSTOPTS = 0x37
-       sysIPV6_RECVRTHDR    = 0x38
-       sysIPV6_RTHDR        = 0x39
-       sysIPV6_RECVDSTOPTS  = 0x3a
-       sysIPV6_DSTOPTS      = 0x3b
-       sysIPV6_RECVPATHMTU  = 0x3c
-       sysIPV6_PATHMTU      = 0x3d
-       sysIPV6_DONTFRAG     = 0x3e
-
-       sysIPV6_RECVTCLASS = 0x42
-       sysIPV6_TCLASS     = 0x43
-
-       sysIPV6_ADDR_PREFERENCES = 0x48
-
-       sysIPV6_PREFER_SRC_TMP            = 0x1
-       sysIPV6_PREFER_SRC_PUBLIC         = 0x2
-       sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100
-       sysIPV6_PREFER_SRC_COA            = 0x4
-       sysIPV6_PREFER_SRC_HOME           = 0x400
-       sysIPV6_PREFER_SRC_CGA            = 0x8
-       sysIPV6_PREFER_SRC_NONCGA         = 0x800
-
-       sysIPV6_MINHOPCOUNT = 0x49
-
-       sysIPV6_ORIGDSTADDR     = 0x4a
-       sysIPV6_RECVORIGDSTADDR = 0x4a
-       sysIPV6_TRANSPARENT     = 0x4b
-       sysIPV6_UNICAST_IF      = 0x4c
-
-       sysICMPV6_FILTER = 0x1
-
-       sysICMPV6_FILTER_BLOCK       = 0x1
-       sysICMPV6_FILTER_PASS        = 0x2
-       sysICMPV6_FILTER_BLOCKOTHERS = 0x3
-       sysICMPV6_FILTER_PASSONLY    = 0x4
+       sysIPV6_NEXTHOP  = 0x9
+       sysIPV6_PKTINFO  = 0x32
+       sysIPV6_HOPLIMIT = 0x34
+       sysIPV6_PATHMTU  = 0x3d
+       sysIPV6_TCLASS   = 0x43
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet6         = 0x1c
index 992ac9ec5f2cd346bad77731a1e12fc7c6221a86..9500f7d5ed63fb9aebe2ca62740d0c30ac4bd105 100644 (file)
@@ -4,85 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_ADDRFORM       = 0x1
-       sysIPV6_2292PKTINFO    = 0x2
-       sysIPV6_2292HOPOPTS    = 0x3
-       sysIPV6_2292DSTOPTS    = 0x4
-       sysIPV6_2292RTHDR      = 0x5
-       sysIPV6_2292PKTOPTIONS = 0x6
-       sysIPV6_CHECKSUM       = 0x7
-       sysIPV6_2292HOPLIMIT   = 0x8
-       sysIPV6_NEXTHOP        = 0x9
-       sysIPV6_FLOWINFO       = 0xb
-
-       sysIPV6_UNICAST_HOPS        = 0x10
-       sysIPV6_MULTICAST_IF        = 0x11
-       sysIPV6_MULTICAST_HOPS      = 0x12
-       sysIPV6_MULTICAST_LOOP      = 0x13
-       sysIPV6_ADD_MEMBERSHIP      = 0x14
-       sysIPV6_DROP_MEMBERSHIP     = 0x15
-       sysMCAST_JOIN_GROUP         = 0x2a
-       sysMCAST_LEAVE_GROUP        = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x2f
-       sysMCAST_BLOCK_SOURCE       = 0x2b
-       sysMCAST_UNBLOCK_SOURCE     = 0x2c
-       sysMCAST_MSFILTER           = 0x30
-       sysIPV6_ROUTER_ALERT        = 0x16
-       sysIPV6_MTU_DISCOVER        = 0x17
-       sysIPV6_MTU                 = 0x18
-       sysIPV6_RECVERR             = 0x19
-       sysIPV6_V6ONLY              = 0x1a
-       sysIPV6_JOIN_ANYCAST        = 0x1b
-       sysIPV6_LEAVE_ANYCAST       = 0x1c
-
-       sysIPV6_FLOWLABEL_MGR = 0x20
-       sysIPV6_FLOWINFO_SEND = 0x21
-
-       sysIPV6_IPSEC_POLICY = 0x22
-       sysIPV6_XFRM_POLICY  = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x31
-       sysIPV6_PKTINFO      = 0x32
-       sysIPV6_RECVHOPLIMIT = 0x33
-       sysIPV6_HOPLIMIT     = 0x34
-       sysIPV6_RECVHOPOPTS  = 0x35
-       sysIPV6_HOPOPTS      = 0x36
-       sysIPV6_RTHDRDSTOPTS = 0x37
-       sysIPV6_RECVRTHDR    = 0x38
-       sysIPV6_RTHDR        = 0x39
-       sysIPV6_RECVDSTOPTS  = 0x3a
-       sysIPV6_DSTOPTS      = 0x3b
-       sysIPV6_RECVPATHMTU  = 0x3c
-       sysIPV6_PATHMTU      = 0x3d
-       sysIPV6_DONTFRAG     = 0x3e
-
-       sysIPV6_RECVTCLASS = 0x42
-       sysIPV6_TCLASS     = 0x43
-
-       sysIPV6_ADDR_PREFERENCES = 0x48
-
-       sysIPV6_PREFER_SRC_TMP            = 0x1
-       sysIPV6_PREFER_SRC_PUBLIC         = 0x2
-       sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100
-       sysIPV6_PREFER_SRC_COA            = 0x4
-       sysIPV6_PREFER_SRC_HOME           = 0x400
-       sysIPV6_PREFER_SRC_CGA            = 0x8
-       sysIPV6_PREFER_SRC_NONCGA         = 0x800
-
-       sysIPV6_MINHOPCOUNT = 0x49
-
-       sysIPV6_ORIGDSTADDR     = 0x4a
-       sysIPV6_RECVORIGDSTADDR = 0x4a
-       sysIPV6_TRANSPARENT     = 0x4b
-       sysIPV6_UNICAST_IF      = 0x4c
-
-       sysICMPV6_FILTER = 0x1
-
-       sysICMPV6_FILTER_BLOCK       = 0x1
-       sysICMPV6_FILTER_PASS        = 0x2
-       sysICMPV6_FILTER_BLOCKOTHERS = 0x3
-       sysICMPV6_FILTER_PASSONLY    = 0x4
+       sysIPV6_NEXTHOP  = 0x9
+       sysIPV6_PKTINFO  = 0x32
+       sysIPV6_HOPLIMIT = 0x34
+       sysIPV6_PATHMTU  = 0x3d
+       sysIPV6_TCLASS   = 0x43
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet6         = 0x1c
index 992ac9ec5f2cd346bad77731a1e12fc7c6221a86..9500f7d5ed63fb9aebe2ca62740d0c30ac4bd105 100644 (file)
@@ -4,85 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_ADDRFORM       = 0x1
-       sysIPV6_2292PKTINFO    = 0x2
-       sysIPV6_2292HOPOPTS    = 0x3
-       sysIPV6_2292DSTOPTS    = 0x4
-       sysIPV6_2292RTHDR      = 0x5
-       sysIPV6_2292PKTOPTIONS = 0x6
-       sysIPV6_CHECKSUM       = 0x7
-       sysIPV6_2292HOPLIMIT   = 0x8
-       sysIPV6_NEXTHOP        = 0x9
-       sysIPV6_FLOWINFO       = 0xb
-
-       sysIPV6_UNICAST_HOPS        = 0x10
-       sysIPV6_MULTICAST_IF        = 0x11
-       sysIPV6_MULTICAST_HOPS      = 0x12
-       sysIPV6_MULTICAST_LOOP      = 0x13
-       sysIPV6_ADD_MEMBERSHIP      = 0x14
-       sysIPV6_DROP_MEMBERSHIP     = 0x15
-       sysMCAST_JOIN_GROUP         = 0x2a
-       sysMCAST_LEAVE_GROUP        = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x2f
-       sysMCAST_BLOCK_SOURCE       = 0x2b
-       sysMCAST_UNBLOCK_SOURCE     = 0x2c
-       sysMCAST_MSFILTER           = 0x30
-       sysIPV6_ROUTER_ALERT        = 0x16
-       sysIPV6_MTU_DISCOVER        = 0x17
-       sysIPV6_MTU                 = 0x18
-       sysIPV6_RECVERR             = 0x19
-       sysIPV6_V6ONLY              = 0x1a
-       sysIPV6_JOIN_ANYCAST        = 0x1b
-       sysIPV6_LEAVE_ANYCAST       = 0x1c
-
-       sysIPV6_FLOWLABEL_MGR = 0x20
-       sysIPV6_FLOWINFO_SEND = 0x21
-
-       sysIPV6_IPSEC_POLICY = 0x22
-       sysIPV6_XFRM_POLICY  = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x31
-       sysIPV6_PKTINFO      = 0x32
-       sysIPV6_RECVHOPLIMIT = 0x33
-       sysIPV6_HOPLIMIT     = 0x34
-       sysIPV6_RECVHOPOPTS  = 0x35
-       sysIPV6_HOPOPTS      = 0x36
-       sysIPV6_RTHDRDSTOPTS = 0x37
-       sysIPV6_RECVRTHDR    = 0x38
-       sysIPV6_RTHDR        = 0x39
-       sysIPV6_RECVDSTOPTS  = 0x3a
-       sysIPV6_DSTOPTS      = 0x3b
-       sysIPV6_RECVPATHMTU  = 0x3c
-       sysIPV6_PATHMTU      = 0x3d
-       sysIPV6_DONTFRAG     = 0x3e
-
-       sysIPV6_RECVTCLASS = 0x42
-       sysIPV6_TCLASS     = 0x43
-
-       sysIPV6_ADDR_PREFERENCES = 0x48
-
-       sysIPV6_PREFER_SRC_TMP            = 0x1
-       sysIPV6_PREFER_SRC_PUBLIC         = 0x2
-       sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100
-       sysIPV6_PREFER_SRC_COA            = 0x4
-       sysIPV6_PREFER_SRC_HOME           = 0x400
-       sysIPV6_PREFER_SRC_CGA            = 0x8
-       sysIPV6_PREFER_SRC_NONCGA         = 0x800
-
-       sysIPV6_MINHOPCOUNT = 0x49
-
-       sysIPV6_ORIGDSTADDR     = 0x4a
-       sysIPV6_RECVORIGDSTADDR = 0x4a
-       sysIPV6_TRANSPARENT     = 0x4b
-       sysIPV6_UNICAST_IF      = 0x4c
-
-       sysICMPV6_FILTER = 0x1
-
-       sysICMPV6_FILTER_BLOCK       = 0x1
-       sysICMPV6_FILTER_PASS        = 0x2
-       sysICMPV6_FILTER_BLOCKOTHERS = 0x3
-       sysICMPV6_FILTER_PASSONLY    = 0x4
+       sysIPV6_NEXTHOP  = 0x9
+       sysIPV6_PKTINFO  = 0x32
+       sysIPV6_HOPLIMIT = 0x34
+       sysIPV6_PATHMTU  = 0x3d
+       sysIPV6_TCLASS   = 0x43
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet6         = 0x1c
index bde4a8f8f5d2f7f12cc996e54d5dec96338c071a..bb579ea1c9d88001986d43bd61260dfe24212bfa 100644 (file)
@@ -4,85 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_ADDRFORM       = 0x1
-       sysIPV6_2292PKTINFO    = 0x2
-       sysIPV6_2292HOPOPTS    = 0x3
-       sysIPV6_2292DSTOPTS    = 0x4
-       sysIPV6_2292RTHDR      = 0x5
-       sysIPV6_2292PKTOPTIONS = 0x6
-       sysIPV6_CHECKSUM       = 0x7
-       sysIPV6_2292HOPLIMIT   = 0x8
-       sysIPV6_NEXTHOP        = 0x9
-       sysIPV6_FLOWINFO       = 0xb
-
-       sysIPV6_UNICAST_HOPS        = 0x10
-       sysIPV6_MULTICAST_IF        = 0x11
-       sysIPV6_MULTICAST_HOPS      = 0x12
-       sysIPV6_MULTICAST_LOOP      = 0x13
-       sysIPV6_ADD_MEMBERSHIP      = 0x14
-       sysIPV6_DROP_MEMBERSHIP     = 0x15
-       sysMCAST_JOIN_GROUP         = 0x2a
-       sysMCAST_LEAVE_GROUP        = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x2f
-       sysMCAST_BLOCK_SOURCE       = 0x2b
-       sysMCAST_UNBLOCK_SOURCE     = 0x2c
-       sysMCAST_MSFILTER           = 0x30
-       sysIPV6_ROUTER_ALERT        = 0x16
-       sysIPV6_MTU_DISCOVER        = 0x17
-       sysIPV6_MTU                 = 0x18
-       sysIPV6_RECVERR             = 0x19
-       sysIPV6_V6ONLY              = 0x1a
-       sysIPV6_JOIN_ANYCAST        = 0x1b
-       sysIPV6_LEAVE_ANYCAST       = 0x1c
-
-       sysIPV6_FLOWLABEL_MGR = 0x20
-       sysIPV6_FLOWINFO_SEND = 0x21
-
-       sysIPV6_IPSEC_POLICY = 0x22
-       sysIPV6_XFRM_POLICY  = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x31
-       sysIPV6_PKTINFO      = 0x32
-       sysIPV6_RECVHOPLIMIT = 0x33
-       sysIPV6_HOPLIMIT     = 0x34
-       sysIPV6_RECVHOPOPTS  = 0x35
-       sysIPV6_HOPOPTS      = 0x36
-       sysIPV6_RTHDRDSTOPTS = 0x37
-       sysIPV6_RECVRTHDR    = 0x38
-       sysIPV6_RTHDR        = 0x39
-       sysIPV6_RECVDSTOPTS  = 0x3a
-       sysIPV6_DSTOPTS      = 0x3b
-       sysIPV6_RECVPATHMTU  = 0x3c
-       sysIPV6_PATHMTU      = 0x3d
-       sysIPV6_DONTFRAG     = 0x3e
-
-       sysIPV6_RECVTCLASS = 0x42
-       sysIPV6_TCLASS     = 0x43
-
-       sysIPV6_ADDR_PREFERENCES = 0x48
-
-       sysIPV6_PREFER_SRC_TMP            = 0x1
-       sysIPV6_PREFER_SRC_PUBLIC         = 0x2
-       sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100
-       sysIPV6_PREFER_SRC_COA            = 0x4
-       sysIPV6_PREFER_SRC_HOME           = 0x400
-       sysIPV6_PREFER_SRC_CGA            = 0x8
-       sysIPV6_PREFER_SRC_NONCGA         = 0x800
-
-       sysIPV6_MINHOPCOUNT = 0x49
-
-       sysIPV6_ORIGDSTADDR     = 0x4a
-       sysIPV6_RECVORIGDSTADDR = 0x4a
-       sysIPV6_TRANSPARENT     = 0x4b
-       sysIPV6_UNICAST_IF      = 0x4c
-
-       sysICMPV6_FILTER = 0x1
-
-       sysICMPV6_FILTER_BLOCK       = 0x1
-       sysICMPV6_FILTER_PASS        = 0x2
-       sysICMPV6_FILTER_BLOCKOTHERS = 0x3
-       sysICMPV6_FILTER_PASSONLY    = 0x4
+       sysIPV6_NEXTHOP  = 0x9
+       sysIPV6_PKTINFO  = 0x32
+       sysIPV6_HOPLIMIT = 0x34
+       sysIPV6_PATHMTU  = 0x3d
+       sysIPV6_TCLASS   = 0x43
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet6         = 0x1c
index 66fd236121047c0abfaf0f6fab06a216f805fcd0..5486c2448acd48b6b02bbcd6dfc6c805c4aeca45 100644 (file)
@@ -4,85 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_ADDRFORM       = 0x1
-       sysIPV6_2292PKTINFO    = 0x2
-       sysIPV6_2292HOPOPTS    = 0x3
-       sysIPV6_2292DSTOPTS    = 0x4
-       sysIPV6_2292RTHDR      = 0x5
-       sysIPV6_2292PKTOPTIONS = 0x6
-       sysIPV6_CHECKSUM       = 0x7
-       sysIPV6_2292HOPLIMIT   = 0x8
-       sysIPV6_NEXTHOP        = 0x9
-       sysIPV6_FLOWINFO       = 0xb
-
-       sysIPV6_UNICAST_HOPS        = 0x10
-       sysIPV6_MULTICAST_IF        = 0x11
-       sysIPV6_MULTICAST_HOPS      = 0x12
-       sysIPV6_MULTICAST_LOOP      = 0x13
-       sysIPV6_ADD_MEMBERSHIP      = 0x14
-       sysIPV6_DROP_MEMBERSHIP     = 0x15
-       sysMCAST_JOIN_GROUP         = 0x2a
-       sysMCAST_LEAVE_GROUP        = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x2f
-       sysMCAST_BLOCK_SOURCE       = 0x2b
-       sysMCAST_UNBLOCK_SOURCE     = 0x2c
-       sysMCAST_MSFILTER           = 0x30
-       sysIPV6_ROUTER_ALERT        = 0x16
-       sysIPV6_MTU_DISCOVER        = 0x17
-       sysIPV6_MTU                 = 0x18
-       sysIPV6_RECVERR             = 0x19
-       sysIPV6_V6ONLY              = 0x1a
-       sysIPV6_JOIN_ANYCAST        = 0x1b
-       sysIPV6_LEAVE_ANYCAST       = 0x1c
-
-       sysIPV6_FLOWLABEL_MGR = 0x20
-       sysIPV6_FLOWINFO_SEND = 0x21
-
-       sysIPV6_IPSEC_POLICY = 0x22
-       sysIPV6_XFRM_POLICY  = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x31
-       sysIPV6_PKTINFO      = 0x32
-       sysIPV6_RECVHOPLIMIT = 0x33
-       sysIPV6_HOPLIMIT     = 0x34
-       sysIPV6_RECVHOPOPTS  = 0x35
-       sysIPV6_HOPOPTS      = 0x36
-       sysIPV6_RTHDRDSTOPTS = 0x37
-       sysIPV6_RECVRTHDR    = 0x38
-       sysIPV6_RTHDR        = 0x39
-       sysIPV6_RECVDSTOPTS  = 0x3a
-       sysIPV6_DSTOPTS      = 0x3b
-       sysIPV6_RECVPATHMTU  = 0x3c
-       sysIPV6_PATHMTU      = 0x3d
-       sysIPV6_DONTFRAG     = 0x3e
-
-       sysIPV6_RECVTCLASS = 0x42
-       sysIPV6_TCLASS     = 0x43
-
-       sysIPV6_ADDR_PREFERENCES = 0x48
-
-       sysIPV6_PREFER_SRC_TMP            = 0x1
-       sysIPV6_PREFER_SRC_PUBLIC         = 0x2
-       sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100
-       sysIPV6_PREFER_SRC_COA            = 0x4
-       sysIPV6_PREFER_SRC_HOME           = 0x400
-       sysIPV6_PREFER_SRC_CGA            = 0x8
-       sysIPV6_PREFER_SRC_NONCGA         = 0x800
-
-       sysIPV6_MINHOPCOUNT = 0x49
-
-       sysIPV6_ORIGDSTADDR     = 0x4a
-       sysIPV6_RECVORIGDSTADDR = 0x4a
-       sysIPV6_TRANSPARENT     = 0x4b
-       sysIPV6_UNICAST_IF      = 0x4c
-
-       sysICMPV6_FILTER = 0x1
-
-       sysICMPV6_FILTER_BLOCK       = 0x1
-       sysICMPV6_FILTER_PASS        = 0x2
-       sysICMPV6_FILTER_BLOCKOTHERS = 0x3
-       sysICMPV6_FILTER_PASSONLY    = 0x4
+       sysIPV6_NEXTHOP  = 0x9
+       sysIPV6_PKTINFO  = 0x32
+       sysIPV6_HOPLIMIT = 0x34
+       sysIPV6_PATHMTU  = 0x3d
+       sysIPV6_TCLASS   = 0x43
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet6         = 0x1c
index 992ac9ec5f2cd346bad77731a1e12fc7c6221a86..9500f7d5ed63fb9aebe2ca62740d0c30ac4bd105 100644 (file)
@@ -4,85 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_ADDRFORM       = 0x1
-       sysIPV6_2292PKTINFO    = 0x2
-       sysIPV6_2292HOPOPTS    = 0x3
-       sysIPV6_2292DSTOPTS    = 0x4
-       sysIPV6_2292RTHDR      = 0x5
-       sysIPV6_2292PKTOPTIONS = 0x6
-       sysIPV6_CHECKSUM       = 0x7
-       sysIPV6_2292HOPLIMIT   = 0x8
-       sysIPV6_NEXTHOP        = 0x9
-       sysIPV6_FLOWINFO       = 0xb
-
-       sysIPV6_UNICAST_HOPS        = 0x10
-       sysIPV6_MULTICAST_IF        = 0x11
-       sysIPV6_MULTICAST_HOPS      = 0x12
-       sysIPV6_MULTICAST_LOOP      = 0x13
-       sysIPV6_ADD_MEMBERSHIP      = 0x14
-       sysIPV6_DROP_MEMBERSHIP     = 0x15
-       sysMCAST_JOIN_GROUP         = 0x2a
-       sysMCAST_LEAVE_GROUP        = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x2f
-       sysMCAST_BLOCK_SOURCE       = 0x2b
-       sysMCAST_UNBLOCK_SOURCE     = 0x2c
-       sysMCAST_MSFILTER           = 0x30
-       sysIPV6_ROUTER_ALERT        = 0x16
-       sysIPV6_MTU_DISCOVER        = 0x17
-       sysIPV6_MTU                 = 0x18
-       sysIPV6_RECVERR             = 0x19
-       sysIPV6_V6ONLY              = 0x1a
-       sysIPV6_JOIN_ANYCAST        = 0x1b
-       sysIPV6_LEAVE_ANYCAST       = 0x1c
-
-       sysIPV6_FLOWLABEL_MGR = 0x20
-       sysIPV6_FLOWINFO_SEND = 0x21
-
-       sysIPV6_IPSEC_POLICY = 0x22
-       sysIPV6_XFRM_POLICY  = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x31
-       sysIPV6_PKTINFO      = 0x32
-       sysIPV6_RECVHOPLIMIT = 0x33
-       sysIPV6_HOPLIMIT     = 0x34
-       sysIPV6_RECVHOPOPTS  = 0x35
-       sysIPV6_HOPOPTS      = 0x36
-       sysIPV6_RTHDRDSTOPTS = 0x37
-       sysIPV6_RECVRTHDR    = 0x38
-       sysIPV6_RTHDR        = 0x39
-       sysIPV6_RECVDSTOPTS  = 0x3a
-       sysIPV6_DSTOPTS      = 0x3b
-       sysIPV6_RECVPATHMTU  = 0x3c
-       sysIPV6_PATHMTU      = 0x3d
-       sysIPV6_DONTFRAG     = 0x3e
-
-       sysIPV6_RECVTCLASS = 0x42
-       sysIPV6_TCLASS     = 0x43
-
-       sysIPV6_ADDR_PREFERENCES = 0x48
-
-       sysIPV6_PREFER_SRC_TMP            = 0x1
-       sysIPV6_PREFER_SRC_PUBLIC         = 0x2
-       sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100
-       sysIPV6_PREFER_SRC_COA            = 0x4
-       sysIPV6_PREFER_SRC_HOME           = 0x400
-       sysIPV6_PREFER_SRC_CGA            = 0x8
-       sysIPV6_PREFER_SRC_NONCGA         = 0x800
-
-       sysIPV6_MINHOPCOUNT = 0x49
-
-       sysIPV6_ORIGDSTADDR     = 0x4a
-       sysIPV6_RECVORIGDSTADDR = 0x4a
-       sysIPV6_TRANSPARENT     = 0x4b
-       sysIPV6_UNICAST_IF      = 0x4c
-
-       sysICMPV6_FILTER = 0x1
-
-       sysICMPV6_FILTER_BLOCK       = 0x1
-       sysICMPV6_FILTER_PASS        = 0x2
-       sysICMPV6_FILTER_BLOCKOTHERS = 0x3
-       sysICMPV6_FILTER_PASSONLY    = 0x4
+       sysIPV6_NEXTHOP  = 0x9
+       sysIPV6_PKTINFO  = 0x32
+       sysIPV6_HOPLIMIT = 0x34
+       sysIPV6_PATHMTU  = 0x3d
+       sysIPV6_TCLASS   = 0x43
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet6         = 0x1c
index 992ac9ec5f2cd346bad77731a1e12fc7c6221a86..9500f7d5ed63fb9aebe2ca62740d0c30ac4bd105 100644 (file)
@@ -4,85 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_ADDRFORM       = 0x1
-       sysIPV6_2292PKTINFO    = 0x2
-       sysIPV6_2292HOPOPTS    = 0x3
-       sysIPV6_2292DSTOPTS    = 0x4
-       sysIPV6_2292RTHDR      = 0x5
-       sysIPV6_2292PKTOPTIONS = 0x6
-       sysIPV6_CHECKSUM       = 0x7
-       sysIPV6_2292HOPLIMIT   = 0x8
-       sysIPV6_NEXTHOP        = 0x9
-       sysIPV6_FLOWINFO       = 0xb
-
-       sysIPV6_UNICAST_HOPS        = 0x10
-       sysIPV6_MULTICAST_IF        = 0x11
-       sysIPV6_MULTICAST_HOPS      = 0x12
-       sysIPV6_MULTICAST_LOOP      = 0x13
-       sysIPV6_ADD_MEMBERSHIP      = 0x14
-       sysIPV6_DROP_MEMBERSHIP     = 0x15
-       sysMCAST_JOIN_GROUP         = 0x2a
-       sysMCAST_LEAVE_GROUP        = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x2f
-       sysMCAST_BLOCK_SOURCE       = 0x2b
-       sysMCAST_UNBLOCK_SOURCE     = 0x2c
-       sysMCAST_MSFILTER           = 0x30
-       sysIPV6_ROUTER_ALERT        = 0x16
-       sysIPV6_MTU_DISCOVER        = 0x17
-       sysIPV6_MTU                 = 0x18
-       sysIPV6_RECVERR             = 0x19
-       sysIPV6_V6ONLY              = 0x1a
-       sysIPV6_JOIN_ANYCAST        = 0x1b
-       sysIPV6_LEAVE_ANYCAST       = 0x1c
-
-       sysIPV6_FLOWLABEL_MGR = 0x20
-       sysIPV6_FLOWINFO_SEND = 0x21
-
-       sysIPV6_IPSEC_POLICY = 0x22
-       sysIPV6_XFRM_POLICY  = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x31
-       sysIPV6_PKTINFO      = 0x32
-       sysIPV6_RECVHOPLIMIT = 0x33
-       sysIPV6_HOPLIMIT     = 0x34
-       sysIPV6_RECVHOPOPTS  = 0x35
-       sysIPV6_HOPOPTS      = 0x36
-       sysIPV6_RTHDRDSTOPTS = 0x37
-       sysIPV6_RECVRTHDR    = 0x38
-       sysIPV6_RTHDR        = 0x39
-       sysIPV6_RECVDSTOPTS  = 0x3a
-       sysIPV6_DSTOPTS      = 0x3b
-       sysIPV6_RECVPATHMTU  = 0x3c
-       sysIPV6_PATHMTU      = 0x3d
-       sysIPV6_DONTFRAG     = 0x3e
-
-       sysIPV6_RECVTCLASS = 0x42
-       sysIPV6_TCLASS     = 0x43
-
-       sysIPV6_ADDR_PREFERENCES = 0x48
-
-       sysIPV6_PREFER_SRC_TMP            = 0x1
-       sysIPV6_PREFER_SRC_PUBLIC         = 0x2
-       sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100
-       sysIPV6_PREFER_SRC_COA            = 0x4
-       sysIPV6_PREFER_SRC_HOME           = 0x400
-       sysIPV6_PREFER_SRC_CGA            = 0x8
-       sysIPV6_PREFER_SRC_NONCGA         = 0x800
-
-       sysIPV6_MINHOPCOUNT = 0x49
-
-       sysIPV6_ORIGDSTADDR     = 0x4a
-       sysIPV6_RECVORIGDSTADDR = 0x4a
-       sysIPV6_TRANSPARENT     = 0x4b
-       sysIPV6_UNICAST_IF      = 0x4c
-
-       sysICMPV6_FILTER = 0x1
-
-       sysICMPV6_FILTER_BLOCK       = 0x1
-       sysICMPV6_FILTER_PASS        = 0x2
-       sysICMPV6_FILTER_BLOCKOTHERS = 0x3
-       sysICMPV6_FILTER_PASSONLY    = 0x4
+       sysIPV6_NEXTHOP  = 0x9
+       sysIPV6_PKTINFO  = 0x32
+       sysIPV6_HOPLIMIT = 0x34
+       sysIPV6_PATHMTU  = 0x3d
+       sysIPV6_TCLASS   = 0x43
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet6         = 0x1c
index 2072c313e9c927bae5ddb910e52da1b7990b1a04..283973e6f0b7d4435595bf8889357879bd251e64 100644 (file)
@@ -7,85 +7,11 @@
 package ipv6
 
 const (
-       sysIPV6_ADDRFORM       = 0x1
-       sysIPV6_2292PKTINFO    = 0x2
-       sysIPV6_2292HOPOPTS    = 0x3
-       sysIPV6_2292DSTOPTS    = 0x4
-       sysIPV6_2292RTHDR      = 0x5
-       sysIPV6_2292PKTOPTIONS = 0x6
-       sysIPV6_CHECKSUM       = 0x7
-       sysIPV6_2292HOPLIMIT   = 0x8
-       sysIPV6_NEXTHOP        = 0x9
-       sysIPV6_FLOWINFO       = 0xb
-
-       sysIPV6_UNICAST_HOPS        = 0x10
-       sysIPV6_MULTICAST_IF        = 0x11
-       sysIPV6_MULTICAST_HOPS      = 0x12
-       sysIPV6_MULTICAST_LOOP      = 0x13
-       sysIPV6_ADD_MEMBERSHIP      = 0x14
-       sysIPV6_DROP_MEMBERSHIP     = 0x15
-       sysMCAST_JOIN_GROUP         = 0x2a
-       sysMCAST_LEAVE_GROUP        = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x2f
-       sysMCAST_BLOCK_SOURCE       = 0x2b
-       sysMCAST_UNBLOCK_SOURCE     = 0x2c
-       sysMCAST_MSFILTER           = 0x30
-       sysIPV6_ROUTER_ALERT        = 0x16
-       sysIPV6_MTU_DISCOVER        = 0x17
-       sysIPV6_MTU                 = 0x18
-       sysIPV6_RECVERR             = 0x19
-       sysIPV6_V6ONLY              = 0x1a
-       sysIPV6_JOIN_ANYCAST        = 0x1b
-       sysIPV6_LEAVE_ANYCAST       = 0x1c
-
-       sysIPV6_FLOWLABEL_MGR = 0x20
-       sysIPV6_FLOWINFO_SEND = 0x21
-
-       sysIPV6_IPSEC_POLICY = 0x22
-       sysIPV6_XFRM_POLICY  = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x31
-       sysIPV6_PKTINFO      = 0x32
-       sysIPV6_RECVHOPLIMIT = 0x33
-       sysIPV6_HOPLIMIT     = 0x34
-       sysIPV6_RECVHOPOPTS  = 0x35
-       sysIPV6_HOPOPTS      = 0x36
-       sysIPV6_RTHDRDSTOPTS = 0x37
-       sysIPV6_RECVRTHDR    = 0x38
-       sysIPV6_RTHDR        = 0x39
-       sysIPV6_RECVDSTOPTS  = 0x3a
-       sysIPV6_DSTOPTS      = 0x3b
-       sysIPV6_RECVPATHMTU  = 0x3c
-       sysIPV6_PATHMTU      = 0x3d
-       sysIPV6_DONTFRAG     = 0x3e
-
-       sysIPV6_RECVTCLASS = 0x42
-       sysIPV6_TCLASS     = 0x43
-
-       sysIPV6_ADDR_PREFERENCES = 0x48
-
-       sysIPV6_PREFER_SRC_TMP            = 0x1
-       sysIPV6_PREFER_SRC_PUBLIC         = 0x2
-       sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100
-       sysIPV6_PREFER_SRC_COA            = 0x4
-       sysIPV6_PREFER_SRC_HOME           = 0x400
-       sysIPV6_PREFER_SRC_CGA            = 0x8
-       sysIPV6_PREFER_SRC_NONCGA         = 0x800
-
-       sysIPV6_MINHOPCOUNT = 0x49
-
-       sysIPV6_ORIGDSTADDR     = 0x4a
-       sysIPV6_RECVORIGDSTADDR = 0x4a
-       sysIPV6_TRANSPARENT     = 0x4b
-       sysIPV6_UNICAST_IF      = 0x4c
-
-       sysICMPV6_FILTER = 0x1
-
-       sysICMPV6_FILTER_BLOCK       = 0x1
-       sysICMPV6_FILTER_PASS        = 0x2
-       sysICMPV6_FILTER_BLOCKOTHERS = 0x3
-       sysICMPV6_FILTER_PASSONLY    = 0x4
+       sysIPV6_NEXTHOP  = 0x9
+       sysIPV6_PKTINFO  = 0x32
+       sysIPV6_HOPLIMIT = 0x34
+       sysIPV6_PATHMTU  = 0x3d
+       sysIPV6_TCLASS   = 0x43
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet6         = 0x1c
index 992ac9ec5f2cd346bad77731a1e12fc7c6221a86..9500f7d5ed63fb9aebe2ca62740d0c30ac4bd105 100644 (file)
@@ -4,85 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_ADDRFORM       = 0x1
-       sysIPV6_2292PKTINFO    = 0x2
-       sysIPV6_2292HOPOPTS    = 0x3
-       sysIPV6_2292DSTOPTS    = 0x4
-       sysIPV6_2292RTHDR      = 0x5
-       sysIPV6_2292PKTOPTIONS = 0x6
-       sysIPV6_CHECKSUM       = 0x7
-       sysIPV6_2292HOPLIMIT   = 0x8
-       sysIPV6_NEXTHOP        = 0x9
-       sysIPV6_FLOWINFO       = 0xb
-
-       sysIPV6_UNICAST_HOPS        = 0x10
-       sysIPV6_MULTICAST_IF        = 0x11
-       sysIPV6_MULTICAST_HOPS      = 0x12
-       sysIPV6_MULTICAST_LOOP      = 0x13
-       sysIPV6_ADD_MEMBERSHIP      = 0x14
-       sysIPV6_DROP_MEMBERSHIP     = 0x15
-       sysMCAST_JOIN_GROUP         = 0x2a
-       sysMCAST_LEAVE_GROUP        = 0x2d
-       sysMCAST_JOIN_SOURCE_GROUP  = 0x2e
-       sysMCAST_LEAVE_SOURCE_GROUP = 0x2f
-       sysMCAST_BLOCK_SOURCE       = 0x2b
-       sysMCAST_UNBLOCK_SOURCE     = 0x2c
-       sysMCAST_MSFILTER           = 0x30
-       sysIPV6_ROUTER_ALERT        = 0x16
-       sysIPV6_MTU_DISCOVER        = 0x17
-       sysIPV6_MTU                 = 0x18
-       sysIPV6_RECVERR             = 0x19
-       sysIPV6_V6ONLY              = 0x1a
-       sysIPV6_JOIN_ANYCAST        = 0x1b
-       sysIPV6_LEAVE_ANYCAST       = 0x1c
-
-       sysIPV6_FLOWLABEL_MGR = 0x20
-       sysIPV6_FLOWINFO_SEND = 0x21
-
-       sysIPV6_IPSEC_POLICY = 0x22
-       sysIPV6_XFRM_POLICY  = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x31
-       sysIPV6_PKTINFO      = 0x32
-       sysIPV6_RECVHOPLIMIT = 0x33
-       sysIPV6_HOPLIMIT     = 0x34
-       sysIPV6_RECVHOPOPTS  = 0x35
-       sysIPV6_HOPOPTS      = 0x36
-       sysIPV6_RTHDRDSTOPTS = 0x37
-       sysIPV6_RECVRTHDR    = 0x38
-       sysIPV6_RTHDR        = 0x39
-       sysIPV6_RECVDSTOPTS  = 0x3a
-       sysIPV6_DSTOPTS      = 0x3b
-       sysIPV6_RECVPATHMTU  = 0x3c
-       sysIPV6_PATHMTU      = 0x3d
-       sysIPV6_DONTFRAG     = 0x3e
-
-       sysIPV6_RECVTCLASS = 0x42
-       sysIPV6_TCLASS     = 0x43
-
-       sysIPV6_ADDR_PREFERENCES = 0x48
-
-       sysIPV6_PREFER_SRC_TMP            = 0x1
-       sysIPV6_PREFER_SRC_PUBLIC         = 0x2
-       sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100
-       sysIPV6_PREFER_SRC_COA            = 0x4
-       sysIPV6_PREFER_SRC_HOME           = 0x400
-       sysIPV6_PREFER_SRC_CGA            = 0x8
-       sysIPV6_PREFER_SRC_NONCGA         = 0x800
-
-       sysIPV6_MINHOPCOUNT = 0x49
-
-       sysIPV6_ORIGDSTADDR     = 0x4a
-       sysIPV6_RECVORIGDSTADDR = 0x4a
-       sysIPV6_TRANSPARENT     = 0x4b
-       sysIPV6_UNICAST_IF      = 0x4c
-
-       sysICMPV6_FILTER = 0x1
-
-       sysICMPV6_FILTER_BLOCK       = 0x1
-       sysICMPV6_FILTER_PASS        = 0x2
-       sysICMPV6_FILTER_BLOCKOTHERS = 0x3
-       sysICMPV6_FILTER_PASSONLY    = 0x4
+       sysIPV6_NEXTHOP  = 0x9
+       sysIPV6_PKTINFO  = 0x32
+       sysIPV6_HOPLIMIT = 0x34
+       sysIPV6_PATHMTU  = 0x3d
+       sysIPV6_TCLASS   = 0x43
 
        sizeofKernelSockaddrStorage = 0x80
        sizeofSockaddrInet6         = 0x1c
index e39571e0725095aacb00e397405ce03968fdafca..524c97fbc7feabbc7fdd14e522d9d8183c44948e 100644 (file)
@@ -4,47 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_UNICAST_HOPS   = 0x4
-       sysIPV6_MULTICAST_IF   = 0x9
-       sysIPV6_MULTICAST_HOPS = 0xa
-       sysIPV6_MULTICAST_LOOP = 0xb
-       sysIPV6_JOIN_GROUP     = 0xc
-       sysIPV6_LEAVE_GROUP    = 0xd
-       sysIPV6_PORTRANGE      = 0xe
-       sysICMP6_FILTER        = 0x12
-
-       sysIPV6_CHECKSUM = 0x1a
-       sysIPV6_V6ONLY   = 0x1b
-
-       sysIPV6_IPSEC_POLICY = 0x1c
-
-       sysIPV6_RTHDRDSTOPTS = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x24
-       sysIPV6_RECVHOPLIMIT = 0x25
-       sysIPV6_RECVRTHDR    = 0x26
-       sysIPV6_RECVHOPOPTS  = 0x27
-       sysIPV6_RECVDSTOPTS  = 0x28
-
-       sysIPV6_USE_MIN_MTU = 0x2a
-       sysIPV6_RECVPATHMTU = 0x2b
-       sysIPV6_PATHMTU     = 0x2c
-
+       sysIPV6_PATHMTU  = 0x2c
        sysIPV6_PKTINFO  = 0x2e
        sysIPV6_HOPLIMIT = 0x2f
        sysIPV6_NEXTHOP  = 0x30
-       sysIPV6_HOPOPTS  = 0x31
-       sysIPV6_DSTOPTS  = 0x32
-       sysIPV6_RTHDR    = 0x33
-
-       sysIPV6_RECVTCLASS = 0x39
-
        sysIPV6_TCLASS   = 0x3d
-       sysIPV6_DONTFRAG = 0x3e
-
-       sysIPV6_PORTRANGE_DEFAULT = 0x0
-       sysIPV6_PORTRANGE_HIGH    = 0x1
-       sysIPV6_PORTRANGE_LOW     = 0x2
 
        sizeofSockaddrInet6 = 0x1c
        sizeofInet6Pktinfo  = 0x14
index cc1899a630c2b8b4689254d751bb614a131b856c..5e7bdedc9c286e5176f460b8ee823795aa42bf69 100644 (file)
@@ -4,56 +4,11 @@
 package ipv6
 
 const (
-       sysIPV6_UNICAST_HOPS   = 0x4
-       sysIPV6_MULTICAST_IF   = 0x9
-       sysIPV6_MULTICAST_HOPS = 0xa
-       sysIPV6_MULTICAST_LOOP = 0xb
-       sysIPV6_JOIN_GROUP     = 0xc
-       sysIPV6_LEAVE_GROUP    = 0xd
-       sysIPV6_PORTRANGE      = 0xe
-       sysICMP6_FILTER        = 0x12
-
-       sysIPV6_CHECKSUM = 0x1a
-       sysIPV6_V6ONLY   = 0x1b
-
-       sysIPV6_RTHDRDSTOPTS = 0x23
-
-       sysIPV6_RECVPKTINFO  = 0x24
-       sysIPV6_RECVHOPLIMIT = 0x25
-       sysIPV6_RECVRTHDR    = 0x26
-       sysIPV6_RECVHOPOPTS  = 0x27
-       sysIPV6_RECVDSTOPTS  = 0x28
-
-       sysIPV6_USE_MIN_MTU = 0x2a
-       sysIPV6_RECVPATHMTU = 0x2b
-
-       sysIPV6_PATHMTU = 0x2c
-
+       sysIPV6_PATHMTU  = 0x2c
        sysIPV6_PKTINFO  = 0x2e
        sysIPV6_HOPLIMIT = 0x2f
        sysIPV6_NEXTHOP  = 0x30
-       sysIPV6_HOPOPTS  = 0x31
-       sysIPV6_DSTOPTS  = 0x32
-       sysIPV6_RTHDR    = 0x33
-
-       sysIPV6_AUTH_LEVEL        = 0x35
-       sysIPV6_ESP_TRANS_LEVEL   = 0x36
-       sysIPV6_ESP_NETWORK_LEVEL = 0x37
-       sysIPSEC6_OUTSA           = 0x38
-       sysIPV6_RECVTCLASS        = 0x39
-
-       sysIPV6_AUTOFLOWLABEL = 0x3b
-       sysIPV6_IPCOMP_LEVEL  = 0x3c
-
        sysIPV6_TCLASS   = 0x3d
-       sysIPV6_DONTFRAG = 0x3e
-       sysIPV6_PIPEX    = 0x3f
-
-       sysIPV6_RTABLE = 0x1021
-
-       sysIPV6_PORTRANGE_DEFAULT = 0x0
-       sysIPV6_PORTRANGE_HIGH    = 0x1
-       sysIPV6_PORTRANGE_LOW     = 0x2
 
        sizeofSockaddrInet6 = 0x1c
        sizeofInet6Pktinfo  = 0x14
diff --git a/vendor/golang.org/x/sys/unix/asm_bsd_386.s b/vendor/golang.org/x/sys/unix/asm_bsd_386.s
new file mode 100644 (file)
index 0000000..7f29275
--- /dev/null
@@ -0,0 +1,29 @@
+// Copyright 2021 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+//go:build (darwin || freebsd || netbsd || openbsd) && gc
+// +build darwin freebsd netbsd openbsd
+// +build gc
+
+#include "textflag.h"
+
+// System call support for 386 BSD
+
+// Just jump to package syscall's implementation for all these functions.
+// The runtime may know about them.
+
+TEXT   Â·Syscall(SB),NOSPLIT,$0-28
+       JMP     syscall·Syscall(SB)
+
+TEXT   Â·Syscall6(SB),NOSPLIT,$0-40
+       JMP     syscall·Syscall6(SB)
+
+TEXT   Â·Syscall9(SB),NOSPLIT,$0-52
+       JMP     syscall·Syscall9(SB)
+
+TEXT   Â·RawSyscall(SB),NOSPLIT,$0-28
+       JMP     syscall·RawSyscall(SB)
+
+TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-40
+       JMP     syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_bsd_amd64.s b/vendor/golang.org/x/sys/unix/asm_bsd_amd64.s
new file mode 100644 (file)
index 0000000..2b99c34
--- /dev/null
@@ -0,0 +1,29 @@
+// Copyright 2021 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+//go:build (darwin || dragonfly || freebsd || netbsd || openbsd) && gc
+// +build darwin dragonfly freebsd netbsd openbsd
+// +build gc
+
+#include "textflag.h"
+
+// System call support for AMD64 BSD
+
+// Just jump to package syscall's implementation for all these functions.
+// The runtime may know about them.
+
+TEXT   Â·Syscall(SB),NOSPLIT,$0-56
+       JMP     syscall·Syscall(SB)
+
+TEXT   Â·Syscall6(SB),NOSPLIT,$0-80
+       JMP     syscall·Syscall6(SB)
+
+TEXT   Â·Syscall9(SB),NOSPLIT,$0-104
+       JMP     syscall·Syscall9(SB)
+
+TEXT   Â·RawSyscall(SB),NOSPLIT,$0-56
+       JMP     syscall·RawSyscall(SB)
+
+TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-80
+       JMP     syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_bsd_arm.s b/vendor/golang.org/x/sys/unix/asm_bsd_arm.s
new file mode 100644 (file)
index 0000000..98ebfad
--- /dev/null
@@ -0,0 +1,29 @@
+// Copyright 2021 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+//go:build (darwin || freebsd || netbsd || openbsd) && gc
+// +build darwin freebsd netbsd openbsd
+// +build gc
+
+#include "textflag.h"
+
+// System call support for ARM BSD
+
+// Just jump to package syscall's implementation for all these functions.
+// The runtime may know about them.
+
+TEXT   Â·Syscall(SB),NOSPLIT,$0-28
+       B       syscall·Syscall(SB)
+
+TEXT   Â·Syscall6(SB),NOSPLIT,$0-40
+       B       syscall·Syscall6(SB)
+
+TEXT   Â·Syscall9(SB),NOSPLIT,$0-52
+       B       syscall·Syscall9(SB)
+
+TEXT   Â·RawSyscall(SB),NOSPLIT,$0-28
+       B       syscall·RawSyscall(SB)
+
+TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-40
+       B       syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_bsd_arm64.s b/vendor/golang.org/x/sys/unix/asm_bsd_arm64.s
new file mode 100644 (file)
index 0000000..fe36a73
--- /dev/null
@@ -0,0 +1,29 @@
+// Copyright 2021 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+//go:build (darwin || freebsd || netbsd || openbsd) && gc
+// +build darwin freebsd netbsd openbsd
+// +build gc
+
+#include "textflag.h"
+
+// System call support for ARM64 BSD
+
+// Just jump to package syscall's implementation for all these functions.
+// The runtime may know about them.
+
+TEXT   Â·Syscall(SB),NOSPLIT,$0-56
+       JMP     syscall·Syscall(SB)
+
+TEXT   Â·Syscall6(SB),NOSPLIT,$0-80
+       JMP     syscall·Syscall6(SB)
+
+TEXT   Â·Syscall9(SB),NOSPLIT,$0-104
+       JMP     syscall·Syscall9(SB)
+
+TEXT   Â·RawSyscall(SB),NOSPLIT,$0-56
+       JMP     syscall·RawSyscall(SB)
+
+TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-80
+       JMP     syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_darwin_386.s b/vendor/golang.org/x/sys/unix/asm_darwin_386.s
deleted file mode 100644 (file)
index 8a06b87..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2009 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-
-#include "textflag.h"
-
-//
-// System call support for 386, Darwin
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-28
-       JMP     syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-40
-       JMP     syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-52
-       JMP     syscall·Syscall9(SB)
-
-TEXT Â·RawSyscall(SB),NOSPLIT,$0-28
-       JMP     syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-40
-       JMP     syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_darwin_amd64.s b/vendor/golang.org/x/sys/unix/asm_darwin_amd64.s
deleted file mode 100644 (file)
index f2397fd..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2009 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-
-#include "textflag.h"
-
-//
-// System call support for AMD64, Darwin
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-56
-       JMP     syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-80
-       JMP     syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-104
-       JMP     syscall·Syscall9(SB)
-
-TEXT   Â·RawSyscall(SB),NOSPLIT,$0-56
-       JMP     syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-80
-       JMP     syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_darwin_arm.s b/vendor/golang.org/x/sys/unix/asm_darwin_arm.s
deleted file mode 100644 (file)
index c9e6b6f..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-// Copyright 2015 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-// +build arm,darwin
-
-#include "textflag.h"
-
-//
-// System call support for ARM, Darwin
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-28
-       B       syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-40
-       B       syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-52
-       B       syscall·Syscall9(SB)
-
-TEXT   Â·RawSyscall(SB),NOSPLIT,$0-28
-       B       syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-40
-       B       syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_darwin_arm64.s b/vendor/golang.org/x/sys/unix/asm_darwin_arm64.s
deleted file mode 100644 (file)
index 89843f8..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-// Copyright 2015 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-// +build arm64,darwin
-
-#include "textflag.h"
-
-//
-// System call support for AMD64, Darwin
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-56
-       B       syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-80
-       B       syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-104
-       B       syscall·Syscall9(SB)
-
-TEXT   Â·RawSyscall(SB),NOSPLIT,$0-56
-       B       syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-80
-       B       syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s b/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s
deleted file mode 100644 (file)
index 27674e1..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2009 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-
-#include "textflag.h"
-
-//
-// System call support for AMD64, DragonFly
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-56
-       JMP     syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-80
-       JMP     syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-104
-       JMP     syscall·Syscall9(SB)
-
-TEXT Â·RawSyscall(SB),NOSPLIT,$0-56
-       JMP     syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-80
-       JMP     syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_freebsd_386.s b/vendor/golang.org/x/sys/unix/asm_freebsd_386.s
deleted file mode 100644 (file)
index 49f0ac2..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2009 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-
-#include "textflag.h"
-
-//
-// System call support for 386, FreeBSD
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-28
-       JMP     syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-40
-       JMP     syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-52
-       JMP     syscall·Syscall9(SB)
-
-TEXT Â·RawSyscall(SB),NOSPLIT,$0-28
-       JMP     syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-40
-       JMP     syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_freebsd_amd64.s b/vendor/golang.org/x/sys/unix/asm_freebsd_amd64.s
deleted file mode 100644 (file)
index f2dfc57..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2009 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-
-#include "textflag.h"
-
-//
-// System call support for AMD64, FreeBSD
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-56
-       JMP     syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-80
-       JMP     syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-104
-       JMP     syscall·Syscall9(SB)
-
-TEXT Â·RawSyscall(SB),NOSPLIT,$0-56
-       JMP     syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-80
-       JMP     syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_freebsd_arm.s b/vendor/golang.org/x/sys/unix/asm_freebsd_arm.s
deleted file mode 100644 (file)
index 6d740db..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2012 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-
-#include "textflag.h"
-
-//
-// System call support for ARM, FreeBSD
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-28
-       B       syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-40
-       B       syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-52
-       B       syscall·Syscall9(SB)
-
-TEXT   Â·RawSyscall(SB),NOSPLIT,$0-28
-       B       syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-40
-       B       syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s b/vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s
deleted file mode 100644 (file)
index a8f5a29..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2018 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-
-#include "textflag.h"
-
-//
-// System call support for ARM64, FreeBSD
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-56
-       JMP     syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-80
-       JMP     syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-104
-       JMP     syscall·Syscall9(SB)
-
-TEXT Â·RawSyscall(SB),NOSPLIT,$0-56
-       JMP     syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-80
-       JMP     syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_netbsd_386.s b/vendor/golang.org/x/sys/unix/asm_netbsd_386.s
deleted file mode 100644 (file)
index ae7b498..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2009 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-
-#include "textflag.h"
-
-//
-// System call support for 386, NetBSD
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-28
-       JMP     syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-40
-       JMP     syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-52
-       JMP     syscall·Syscall9(SB)
-
-TEXT Â·RawSyscall(SB),NOSPLIT,$0-28
-       JMP     syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-40
-       JMP     syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_netbsd_amd64.s b/vendor/golang.org/x/sys/unix/asm_netbsd_amd64.s
deleted file mode 100644 (file)
index e57367c..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2009 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-
-#include "textflag.h"
-
-//
-// System call support for AMD64, NetBSD
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-56
-       JMP     syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-80
-       JMP     syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-104
-       JMP     syscall·Syscall9(SB)
-
-TEXT   Â·RawSyscall(SB),NOSPLIT,$0-56
-       JMP     syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-80
-       JMP     syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_netbsd_arm.s b/vendor/golang.org/x/sys/unix/asm_netbsd_arm.s
deleted file mode 100644 (file)
index d7da175..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2013 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-
-#include "textflag.h"
-
-//
-// System call support for ARM, NetBSD
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-28
-       B       syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-40
-       B       syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-52
-       B       syscall·Syscall9(SB)
-
-TEXT   Â·RawSyscall(SB),NOSPLIT,$0-28
-       B       syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-40
-       B       syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s b/vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s
deleted file mode 100644 (file)
index e7cbe19..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2019 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-
-#include "textflag.h"
-
-//
-// System call support for ARM64, NetBSD
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-56
-       B       syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-80
-       B       syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-104
-       B       syscall·Syscall9(SB)
-
-TEXT   Â·RawSyscall(SB),NOSPLIT,$0-56
-       B       syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-80
-       B       syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_openbsd_386.s b/vendor/golang.org/x/sys/unix/asm_openbsd_386.s
deleted file mode 100644 (file)
index 2f00b03..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2009 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-
-#include "textflag.h"
-
-//
-// System call support for 386, OpenBSD
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-28
-       JMP     syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-40
-       JMP     syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-52
-       JMP     syscall·Syscall9(SB)
-
-TEXT Â·RawSyscall(SB),NOSPLIT,$0-28
-       JMP     syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-40
-       JMP     syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_openbsd_amd64.s b/vendor/golang.org/x/sys/unix/asm_openbsd_amd64.s
deleted file mode 100644 (file)
index 07632c9..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2009 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-
-#include "textflag.h"
-
-//
-// System call support for AMD64, OpenBSD
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-56
-       JMP     syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-80
-       JMP     syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-104
-       JMP     syscall·Syscall9(SB)
-
-TEXT   Â·RawSyscall(SB),NOSPLIT,$0-56
-       JMP     syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-80
-       JMP     syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_openbsd_arm.s b/vendor/golang.org/x/sys/unix/asm_openbsd_arm.s
deleted file mode 100644 (file)
index 73e9973..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2017 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-
-#include "textflag.h"
-
-//
-// System call support for ARM, OpenBSD
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-28
-       B       syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-40
-       B       syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-52
-       B       syscall·Syscall9(SB)
-
-TEXT   Â·RawSyscall(SB),NOSPLIT,$0-28
-       B       syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-40
-       B       syscall·RawSyscall6(SB)
diff --git a/vendor/golang.org/x/sys/unix/asm_openbsd_arm64.s b/vendor/golang.org/x/sys/unix/asm_openbsd_arm64.s
deleted file mode 100644 (file)
index c47302a..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright 2019 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build gc
-
-#include "textflag.h"
-
-//
-// System call support for arm64, OpenBSD
-//
-
-// Just jump to package syscall's implementation for all these functions.
-// The runtime may know about them.
-
-TEXT   Â·Syscall(SB),NOSPLIT,$0-56
-       JMP     syscall·Syscall(SB)
-
-TEXT   Â·Syscall6(SB),NOSPLIT,$0-80
-       JMP     syscall·Syscall6(SB)
-
-TEXT   Â·Syscall9(SB),NOSPLIT,$0-104
-       JMP     syscall·Syscall9(SB)
-
-TEXT   Â·RawSyscall(SB),NOSPLIT,$0-56
-       JMP     syscall·RawSyscall(SB)
-
-TEXT   Â·RawSyscall6(SB),NOSPLIT,$0-80
-       JMP     syscall·RawSyscall6(SB)
index d257fac50576ea59348ee5213f72faa0535b0fbd..d727cad19c14f0d90632b7b27a3701b24b418446 100644 (file)
@@ -199,7 +199,7 @@ illumos_amd64)
         mksyscall="go run mksyscall_solaris.go"
        mkerrors=
        mksysnum=
-       mktypes=
+       mktypes="GOARCH=$GOARCH go tool cgo -godefs"
        ;;
 *)
        echo 'unrecognized $GOOS_$GOARCH: ' "$GOOSARCH" 1>&2
index 60ffa48a29b276f346c1002acdc35284655058d8..f2bc863149460f0a647b9c7a6ae8d069f61780c4 100644 (file)
@@ -56,6 +56,7 @@ includes_Darwin='
 #define _DARWIN_C_SOURCE
 #define KERNEL
 #define _DARWIN_USE_64_BIT_INODE
+#define __APPLE_USE_RFC_3542
 #include <stdint.h>
 #include <sys/attr.h>
 #include <sys/clonefile.h>
@@ -216,6 +217,7 @@ struct ltchars {
 #include <linux/genetlink.h>
 #include <linux/hdreg.h>
 #include <linux/hidraw.h>
+#include <linux/icmp.h>
 #include <linux/icmpv6.h>
 #include <linux/if.h>
 #include <linux/if_addr.h>
@@ -500,7 +502,7 @@ ccflags="$@"
                $2 ~ /^(AF|SOCK|SO|SOL|IPPROTO|IP|IPV6|ICMP6|TCP|MCAST|EVFILT|NOTE|SHUT|PROT|MAP|MFD|T?PACKET|MSG|SCM|MCL|DT|MADV|PR|LOCAL)_/ ||
                $2 ~ /^TP_STATUS_/ ||
                $2 ~ /^FALLOC_/ ||
-               $2 == "ICMPV6_FILTER" ||
+               $2 ~ /^ICMP(V6)?_FILTER/ ||
                $2 == "SOMAXCONN" ||
                $2 == "NAME_MAX" ||
                $2 == "IFNAMSIZ" ||
@@ -627,6 +629,7 @@ echo '#include <signal.h>' | $CC -x c - -E -dM $ccflags |
 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
index d2723225ec58f0b533e5592128c69530fbe71ec5..d8efb715ff1dc6fbe44c707228b8befc1eeebc31 100644 (file)
@@ -252,7 +252,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
                        }
                }
 
-               bytes := (*[10000]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
+               bytes := (*[len(pp.Path)]byte)(unsafe.Pointer(&pp.Path[0]))[0:n]
                sa.Name = string(bytes)
                return sa, nil
 
index bc442e3bace9d4d93b383f889d797e8717cb10d2..c5c58806ca86ebb2cd79e8eec6652a49d9aa50f5 100644 (file)
@@ -9,7 +9,9 @@
 
 package unix
 
-import "unsafe"
+import (
+       "unsafe"
+)
 
 func bytes2iovec(bs [][]byte) []Iovec {
        iovecs := make([]Iovec, len(bs))
@@ -76,3 +78,52 @@ func Accept4(fd int, flags int) (nfd int, sa Sockaddr, err error) {
        }
        return
 }
+
+//sys  putmsg(fd int, clptr *strbuf, dataptr *strbuf, flags int) (err error)
+
+func Putmsg(fd int, cl []byte, data []byte, flags int) (err error) {
+       var clp, datap *strbuf
+       if len(cl) > 0 {
+               clp = &strbuf{
+                       Len: int32(len(cl)),
+                       Buf: (*int8)(unsafe.Pointer(&cl[0])),
+               }
+       }
+       if len(data) > 0 {
+               datap = &strbuf{
+                       Len: int32(len(data)),
+                       Buf: (*int8)(unsafe.Pointer(&data[0])),
+               }
+       }
+       return putmsg(fd, clp, datap, flags)
+}
+
+//sys  getmsg(fd int, clptr *strbuf, dataptr *strbuf, flags *int) (err error)
+
+func Getmsg(fd int, cl []byte, data []byte) (retCl []byte, retData []byte, flags int, err error) {
+       var clp, datap *strbuf
+       if len(cl) > 0 {
+               clp = &strbuf{
+                       Maxlen: int32(len(cl)),
+                       Buf:    (*int8)(unsafe.Pointer(&cl[0])),
+               }
+       }
+       if len(data) > 0 {
+               datap = &strbuf{
+                       Maxlen: int32(len(data)),
+                       Buf:    (*int8)(unsafe.Pointer(&data[0])),
+               }
+       }
+
+       if err = getmsg(fd, clp, datap, &flags); err != nil {
+               return nil, nil, 0, err
+       }
+
+       if len(cl) > 0 {
+               retCl = cl[:clp.Len]
+       }
+       if len(data) > 0 {
+               retData = data[:datap.Len]
+       }
+       return retCl, retData, flags, nil
+}
index 0a48548e80f31aa9052f3df995ceccab99f711a5..44ea96e39c6b0df60d6c4ffac1867ab6ff3ade9b 100644 (file)
@@ -1877,6 +1877,7 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
 //sys  ClockGettime(clockid int32, time *Timespec) (err error)
 //sys  ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error)
 //sys  Close(fd int) (err error)
+//sys  CloseRange(first uint, last uint, flags uint) (err error)
 //sys  CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error)
 //sys  DeleteModule(name string, flags int) (err error)
 //sys  Dup(oldfd int) (fd int, err error)
index a941d888150138a17a7776899a294731c20ea5ee..a1e45694b441b4b11c7816aff0c5ca5ea6ff3724 100644 (file)
@@ -250,7 +250,7 @@ func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen
 }
 
 func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) error {
-       args := [4]uintptr{uintptr(s), uintptr(level), uintptr(name), uintptr(val)}
+       args := [5]uintptr{uintptr(s), uintptr(level), uintptr(name), uintptr(val), vallen}
        _, _, err := Syscall(SYS_SOCKETCALL, netSetSockOpt, uintptr(unsafe.Pointer(&args)), 0)
        if err != 0 {
                return err
index 169497f0620e478d652fa58ba32ad55c298b6adc..77fcde7c180a282a3295d9ba61d753fc95dca12d 100644 (file)
@@ -565,7 +565,12 @@ func Minor(dev uint64) uint32 {
  * Expose the ioctl function
  */
 
-//sys  ioctl(fd int, req uint, arg uintptr) (err error)
+//sys  ioctlRet(fd int, req uint, arg uintptr) (ret int, err error) = libc.ioctl
+
+func ioctl(fd int, req uint, arg uintptr) (err error) {
+       _, err = ioctlRet(fd, req, arg)
+       return err
+}
 
 func IoctlSetTermio(fd int, req uint, value *Termio) error {
        err := ioctl(fd, req, uintptr(unsafe.Pointer(value)))
index 0100cb12f1f3ba79ee92b2c85cc577145d4ff004..991996b60911e4e7c9e894d8b6b7815d404c1fd7 100644 (file)
@@ -776,15 +776,24 @@ const (
        IPV6_2292PKTINFO                  = 0x13
        IPV6_2292PKTOPTIONS               = 0x19
        IPV6_2292RTHDR                    = 0x18
+       IPV6_3542DSTOPTS                  = 0x32
+       IPV6_3542HOPLIMIT                 = 0x2f
+       IPV6_3542HOPOPTS                  = 0x31
+       IPV6_3542NEXTHOP                  = 0x30
+       IPV6_3542PKTINFO                  = 0x2e
+       IPV6_3542RTHDR                    = 0x33
        IPV6_ADDR_MC_FLAGS_PREFIX         = 0x20
        IPV6_ADDR_MC_FLAGS_TRANSIENT      = 0x10
        IPV6_ADDR_MC_FLAGS_UNICAST_BASED  = 0x30
+       IPV6_AUTOFLOWLABEL                = 0x3b
        IPV6_BINDV6ONLY                   = 0x1b
        IPV6_BOUND_IF                     = 0x7d
        IPV6_CHECKSUM                     = 0x1a
        IPV6_DEFAULT_MULTICAST_HOPS       = 0x1
        IPV6_DEFAULT_MULTICAST_LOOP       = 0x1
        IPV6_DEFHLIM                      = 0x40
+       IPV6_DONTFRAG                     = 0x3e
+       IPV6_DSTOPTS                      = 0x32
        IPV6_FAITH                        = 0x1d
        IPV6_FLOWINFO_MASK                = 0xffffff0f
        IPV6_FLOWLABEL_MASK               = 0xffff0f00
@@ -796,6 +805,8 @@ const (
        IPV6_FW_GET                       = 0x22
        IPV6_FW_ZERO                      = 0x21
        IPV6_HLIMDEC                      = 0x1
+       IPV6_HOPLIMIT                     = 0x2f
+       IPV6_HOPOPTS                      = 0x31
        IPV6_IPSEC_POLICY                 = 0x1c
        IPV6_JOIN_GROUP                   = 0xc
        IPV6_LEAVE_GROUP                  = 0xd
@@ -807,20 +818,34 @@ const (
        IPV6_MAX_SOCK_SRC_FILTER          = 0x80
        IPV6_MIN_MEMBERSHIPS              = 0x1f
        IPV6_MMTU                         = 0x500
+       IPV6_MSFILTER                     = 0x4a
        IPV6_MULTICAST_HOPS               = 0xa
        IPV6_MULTICAST_IF                 = 0x9
        IPV6_MULTICAST_LOOP               = 0xb
+       IPV6_NEXTHOP                      = 0x30
+       IPV6_PATHMTU                      = 0x2c
+       IPV6_PKTINFO                      = 0x2e
        IPV6_PORTRANGE                    = 0xe
        IPV6_PORTRANGE_DEFAULT            = 0x0
        IPV6_PORTRANGE_HIGH               = 0x1
        IPV6_PORTRANGE_LOW                = 0x2
+       IPV6_PREFER_TEMPADDR              = 0x3f
+       IPV6_RECVDSTOPTS                  = 0x28
+       IPV6_RECVHOPLIMIT                 = 0x25
+       IPV6_RECVHOPOPTS                  = 0x27
+       IPV6_RECVPATHMTU                  = 0x2b
+       IPV6_RECVPKTINFO                  = 0x3d
+       IPV6_RECVRTHDR                    = 0x26
        IPV6_RECVTCLASS                   = 0x23
+       IPV6_RTHDR                        = 0x33
+       IPV6_RTHDRDSTOPTS                 = 0x39
        IPV6_RTHDR_LOOSE                  = 0x0
        IPV6_RTHDR_STRICT                 = 0x1
        IPV6_RTHDR_TYPE_0                 = 0x0
        IPV6_SOCKOPT_RESERVED1            = 0x3
        IPV6_TCLASS                       = 0x24
        IPV6_UNICAST_HOPS                 = 0x4
+       IPV6_USE_MIN_MTU                  = 0x2a
        IPV6_V6ONLY                       = 0x1b
        IPV6_VERSION                      = 0x60
        IPV6_VERSION_MASK                 = 0xf0
index df26a19681e31212a9f64261bf72753ced5aa69c..e644eaf5e757e0f7856c722151b76acb03783071 100644 (file)
@@ -776,15 +776,24 @@ const (
        IPV6_2292PKTINFO                  = 0x13
        IPV6_2292PKTOPTIONS               = 0x19
        IPV6_2292RTHDR                    = 0x18
+       IPV6_3542DSTOPTS                  = 0x32
+       IPV6_3542HOPLIMIT                 = 0x2f
+       IPV6_3542HOPOPTS                  = 0x31
+       IPV6_3542NEXTHOP                  = 0x30
+       IPV6_3542PKTINFO                  = 0x2e
+       IPV6_3542RTHDR                    = 0x33
        IPV6_ADDR_MC_FLAGS_PREFIX         = 0x20
        IPV6_ADDR_MC_FLAGS_TRANSIENT      = 0x10
        IPV6_ADDR_MC_FLAGS_UNICAST_BASED  = 0x30
+       IPV6_AUTOFLOWLABEL                = 0x3b
        IPV6_BINDV6ONLY                   = 0x1b
        IPV6_BOUND_IF                     = 0x7d
        IPV6_CHECKSUM                     = 0x1a
        IPV6_DEFAULT_MULTICAST_HOPS       = 0x1
        IPV6_DEFAULT_MULTICAST_LOOP       = 0x1
        IPV6_DEFHLIM                      = 0x40
+       IPV6_DONTFRAG                     = 0x3e
+       IPV6_DSTOPTS                      = 0x32
        IPV6_FAITH                        = 0x1d
        IPV6_FLOWINFO_MASK                = 0xffffff0f
        IPV6_FLOWLABEL_MASK               = 0xffff0f00
@@ -796,6 +805,8 @@ const (
        IPV6_FW_GET                       = 0x22
        IPV6_FW_ZERO                      = 0x21
        IPV6_HLIMDEC                      = 0x1
+       IPV6_HOPLIMIT                     = 0x2f
+       IPV6_HOPOPTS                      = 0x31
        IPV6_IPSEC_POLICY                 = 0x1c
        IPV6_JOIN_GROUP                   = 0xc
        IPV6_LEAVE_GROUP                  = 0xd
@@ -807,20 +818,34 @@ const (
        IPV6_MAX_SOCK_SRC_FILTER          = 0x80
        IPV6_MIN_MEMBERSHIPS              = 0x1f
        IPV6_MMTU                         = 0x500
+       IPV6_MSFILTER                     = 0x4a
        IPV6_MULTICAST_HOPS               = 0xa
        IPV6_MULTICAST_IF                 = 0x9
        IPV6_MULTICAST_LOOP               = 0xb
+       IPV6_NEXTHOP                      = 0x30
+       IPV6_PATHMTU                      = 0x2c
+       IPV6_PKTINFO                      = 0x2e
        IPV6_PORTRANGE                    = 0xe
        IPV6_PORTRANGE_DEFAULT            = 0x0
        IPV6_PORTRANGE_HIGH               = 0x1
        IPV6_PORTRANGE_LOW                = 0x2
+       IPV6_PREFER_TEMPADDR              = 0x3f
+       IPV6_RECVDSTOPTS                  = 0x28
+       IPV6_RECVHOPLIMIT                 = 0x25
+       IPV6_RECVHOPOPTS                  = 0x27
+       IPV6_RECVPATHMTU                  = 0x2b
+       IPV6_RECVPKTINFO                  = 0x3d
+       IPV6_RECVRTHDR                    = 0x26
        IPV6_RECVTCLASS                   = 0x23
+       IPV6_RTHDR                        = 0x33
+       IPV6_RTHDRDSTOPTS                 = 0x39
        IPV6_RTHDR_LOOSE                  = 0x0
        IPV6_RTHDR_STRICT                 = 0x1
        IPV6_RTHDR_TYPE_0                 = 0x0
        IPV6_SOCKOPT_RESERVED1            = 0x3
        IPV6_TCLASS                       = 0x24
        IPV6_UNICAST_HOPS                 = 0x4
+       IPV6_USE_MIN_MTU                  = 0x2a
        IPV6_V6ONLY                       = 0x1b
        IPV6_VERSION                      = 0x60
        IPV6_VERSION_MASK                 = 0xf0
index 0326a6b3af9754477b530d6c2840e2370ea23fe5..3df99f285f14edb9366a758b18f5e7317d851ca3 100644 (file)
@@ -1022,6 +1022,15 @@ const (
        MAP_RESERVED0100               = 0x100
        MAP_SHARED                     = 0x1
        MAP_STACK                      = 0x400
+       MCAST_BLOCK_SOURCE             = 0x54
+       MCAST_EXCLUDE                  = 0x2
+       MCAST_INCLUDE                  = 0x1
+       MCAST_JOIN_GROUP               = 0x50
+       MCAST_JOIN_SOURCE_GROUP        = 0x52
+       MCAST_LEAVE_GROUP              = 0x51
+       MCAST_LEAVE_SOURCE_GROUP       = 0x53
+       MCAST_UNBLOCK_SOURCE           = 0x55
+       MCAST_UNDEFINED                = 0x0
        MCL_CURRENT                    = 0x1
        MCL_FUTURE                     = 0x2
        MNT_ACLS                       = 0x8000000
index 504dd6cd2d02bdddcfa3c13e214c052ef8c1cfa6..35de419c6dbb5aa48b24e561cf7612401df389f4 100644 (file)
@@ -974,6 +974,11 @@ const (
        HUGETLBFS_MAGIC                             = 0x958458f6
        IBSHIFT                                     = 0x10
        ICMPV6_FILTER                               = 0x1
+       ICMPV6_FILTER_BLOCK                         = 0x1
+       ICMPV6_FILTER_BLOCKOTHERS                   = 0x3
+       ICMPV6_FILTER_PASS                          = 0x2
+       ICMPV6_FILTER_PASSONLY                      = 0x4
+       ICMP_FILTER                                 = 0x1
        ICRNL                                       = 0x100
        IFA_F_DADFAILED                             = 0x8
        IFA_F_DEPRECATED                            = 0x20
index 4117ce08a50643cccc45d5596789c178be297728..c8c79090387034d548e8a1a1b1fc3f646f978f75 100644 (file)
@@ -137,6 +137,7 @@ const (
        IP_TTL                          = 3
        IP_UNBLOCK_SOURCE               = 11
        ICANON                          = 0x0010
+       ICMP6_FILTER                    = 0x26
        ICRNL                           = 0x0002
        IEXTEN                          = 0x0020
        IGNBRK                          = 0x0004
index b57c7050d7a84059bc648a8babebd610627e1048..af5cb064ec4fa33f043526f469018d098a16c0fb 100644 (file)
@@ -15,19 +15,25 @@ import (
 //go:cgo_import_dynamic libc_writev writev "libc.so"
 //go:cgo_import_dynamic libc_pwritev pwritev "libc.so"
 //go:cgo_import_dynamic libc_accept4 accept4 "libsocket.so"
+//go:cgo_import_dynamic libc_putmsg putmsg "libc.so"
+//go:cgo_import_dynamic libc_getmsg getmsg "libc.so"
 
 //go:linkname procreadv libc_readv
 //go:linkname procpreadv libc_preadv
 //go:linkname procwritev libc_writev
 //go:linkname procpwritev libc_pwritev
 //go:linkname procaccept4 libc_accept4
+//go:linkname procputmsg libc_putmsg
+//go:linkname procgetmsg libc_getmsg
 
 var (
        procreadv,
        procpreadv,
        procwritev,
        procpwritev,
-       procaccept4 syscallFunc
+       procaccept4,
+       procputmsg,
+       procgetmsg syscallFunc
 )
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
@@ -100,3 +106,23 @@ func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int,
        }
        return
 }
+
+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+func putmsg(fd int, clptr *strbuf, dataptr *strbuf, flags int) (err error) {
+       _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procputmsg)), 4, uintptr(fd), uintptr(unsafe.Pointer(clptr)), uintptr(unsafe.Pointer(dataptr)), uintptr(flags), 0, 0)
+       if e1 != 0 {
+               err = e1
+       }
+       return
+}
+
+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
+func getmsg(fd int, clptr *strbuf, dataptr *strbuf, flags *int) (err error) {
+       _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procgetmsg)), 4, uintptr(fd), uintptr(unsafe.Pointer(clptr)), uintptr(unsafe.Pointer(dataptr)), uintptr(unsafe.Pointer(flags)), 0, 0)
+       if e1 != 0 {
+               err = e1
+       }
+       return
+}
index 3ee26f4ad169d43f45e7c9b5f3ddd4e9880e9b63..7305cc915b7a77e75b2b88a24de7d057eb312313 100644 (file)
@@ -532,6 +532,16 @@ func Close(fd int) (err error) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
+func CloseRange(first uint, last uint, flags uint) (err error) {
+       _, _, e1 := Syscall(SYS_CLOSE_RANGE, uintptr(first), uintptr(last), uintptr(flags))
+       if e1 != 0 {
+               err = errnoErr(e1)
+       }
+       return
+}
+
+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
+
 func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) {
        r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags))
        n = int(r0)
index 7099f555aa4c6d480484ea2f9b1627c1d71f476c..4e18d5c99fd361fb7ffa828f04b22b390a14626f 100644 (file)
@@ -619,8 +619,9 @@ func __minor(version int, dev uint64) (val uint) {
 
 // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 
-func ioctl(fd int, req uint, arg uintptr) (err error) {
-       _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procioctl)), 3, uintptr(fd), uintptr(req), uintptr(arg), 0, 0, 0)
+func ioctlRet(fd int, req uint, arg uintptr) (ret int, err error) {
+       r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procioctl)), 3, uintptr(fd), uintptr(req), uintptr(arg), 0, 0, 0)
+       ret = int(r0)
        if e1 != 0 {
                err = e1
        }
diff --git a/vendor/golang.org/x/sys/unix/ztypes_illumos_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_illumos_amd64.go
new file mode 100644 (file)
index 0000000..1137a5a
--- /dev/null
@@ -0,0 +1,40 @@
+// cgo -godefs types_illumos.go | go run mkpost.go
+// Code generated by the command above; see README.md. DO NOT EDIT.
+
+//go:build amd64 && illumos
+// +build amd64,illumos
+
+package unix
+
+const (
+       TUNNEWPPA = 0x540001
+       TUNSETPPA = 0x540002
+
+       I_STR     = 0x5308
+       I_POP     = 0x5303
+       I_PUSH    = 0x5302
+       I_PLINK   = 0x5316
+       I_PUNLINK = 0x5317
+
+       IF_UNITSEL = -0x7ffb8cca
+)
+
+type strbuf struct {
+       Maxlen int32
+       Len    int32
+       Buf    *int8
+}
+
+type strioctl struct {
+       Cmd    int32
+       Timout int32
+       Len    int32
+       Dp     *int8
+}
+
+type lifreq struct {
+       Name   [32]int8
+       Lifru1 [4]byte
+       Type   uint32
+       Lifru  [336]byte
+}
index d3a18713bb94ab49c90e9373cd149e851cd9182f..c769e73cd6f2fedec020b6d8b21fe853f61d9242 100644 (file)
@@ -3709,3 +3709,14 @@ type (
                Product int16
        }
 )
+
+const (
+       CLOSE_RANGE_UNSHARE = 0x2
+       CLOSE_RANGE_CLOEXEC = 0x4
+)
+
+const (
+       NLMSGERR_ATTR_MSG    = 0x1
+       NLMSGERR_ATTR_OFFS   = 0x2
+       NLMSGERR_ATTR_COOKIE = 0x3
+)
index 924775b8290f624824e5cc673fb2fbaf6754f112..9eb1fb633a46f101b4454dc2c45475359fe7f875 100644 (file)
@@ -111,7 +111,9 @@ func NewProcThreadAttributeList(maxAttrCount uint32) (*ProcThreadAttributeList,
                }
                return nil, err
        }
-       al := (*ProcThreadAttributeList)(unsafe.Pointer(&make([]byte, size)[0]))
+       const psize = unsafe.Sizeof(uintptr(0))
+       // size is guaranteed to be â‰¥1 by InitializeProcThreadAttributeList.
+       al := (*ProcThreadAttributeList)(unsafe.Pointer(&make([]unsafe.Pointer, (size+psize-1)/psize)[0]))
        err = initializeProcThreadAttributeList(al, maxAttrCount, 0, &size)
        if err != nil {
                return nil, err
@@ -120,8 +122,8 @@ func NewProcThreadAttributeList(maxAttrCount uint32) (*ProcThreadAttributeList,
 }
 
 // Update modifies the ProcThreadAttributeList using UpdateProcThreadAttribute.
-func (al *ProcThreadAttributeList) Update(attribute uintptr, flags uint32, value unsafe.Pointer, size uintptr, prevValue uintptr, returnedSize *uintptr) error {
-       return updateProcThreadAttribute(al, flags, attribute, uintptr(value), size, prevValue, returnedSize)
+func (al *ProcThreadAttributeList) Update(attribute uintptr, flags uint32, value unsafe.Pointer, size uintptr, prevValue unsafe.Pointer, returnedSize *uintptr) error {
+       return updateProcThreadAttribute(al, flags, attribute, value, size, prevValue, returnedSize)
 }
 
 // Delete frees ProcThreadAttributeList's resources.
index 2163843a11dff4691123c56d905907196679ec65..58e0188fb71f802180ea330dd13828884e4d3001 100644 (file)
@@ -9,6 +9,8 @@ shopt -s nullglob
 
 winerror="$(printf '%s\n' "/mnt/c/Program Files (x86)/Windows Kits/"/*/Include/*/shared/winerror.h | sort -Vr | head -n 1)"
 [[ -n $winerror ]] || { echo "Unable to find winerror.h" >&2; exit 1; }
+ntstatus="$(printf '%s\n' "/mnt/c/Program Files (x86)/Windows Kits/"/*/Include/*/shared/ntstatus.h | sort -Vr | head -n 1)"
+[[ -n $ntstatus ]] || { echo "Unable to find ntstatus.h" >&2; exit 1; }
 
 declare -A errors
 
@@ -59,5 +61,10 @@ declare -A errors
                echo "$key $vtype = $value"
        done < "$winerror"
 
+       while read -r line; do
+               [[ $line =~ ^#define\ (STATUS_[^\s]+)\ +\(\(NTSTATUS\)((0x)?[0-9a-fA-F]+)L?\) ]] || continue
+               echo "${BASH_REMATCH[1]} NTStatus = ${BASH_REMATCH[2]}"
+       done < "$ntstatus"
+
        echo ")"
 } | gofmt > "zerrors_windows.go"
index 69eb462c59a88d14e84b3af5710a6d0ea6c81574..0e428ecbbde92e15ddf4e05071bcd0101676b225 100644 (file)
@@ -908,6 +908,19 @@ type SECURITY_DESCRIPTOR struct {
        dacl     *ACL
 }
 
+type SECURITY_QUALITY_OF_SERVICE struct {
+       Length              uint32
+       ImpersonationLevel  uint32
+       ContextTrackingMode byte
+       EffectiveOnly       byte
+}
+
+// Constants for the ContextTrackingMode field of SECURITY_QUALITY_OF_SERVICE.
+const (
+       SECURITY_STATIC_TRACKING  = 0
+       SECURITY_DYNAMIC_TRACKING = 1
+)
+
 type SecurityAttributes struct {
        Length             uint32
        SecurityDescriptor *SECURITY_DESCRIPTOR
index 8cc67784a0929661c2f93cf96e3adb49b8797af9..ef719c1759f22aaa96efad1fc370fc5fb4f45204 100644 (file)
@@ -7,8 +7,8 @@
 package svc
 
 import (
-       "errors"
-       "syscall"
+       "path/filepath"
+       "strings"
        "unsafe"
 
        "golang.org/x/sys/windows"
@@ -64,101 +64,45 @@ func IsAnInteractiveSession() (bool, error) {
        return false, nil
 }
 
-var (
-       ntdll                      = windows.NewLazySystemDLL("ntdll.dll")
-       _NtQueryInformationProcess = ntdll.NewProc("NtQueryInformationProcess")
-
-       kernel32                    = windows.NewLazySystemDLL("kernel32.dll")
-       _QueryFullProcessImageNameA = kernel32.NewProc("QueryFullProcessImageNameA")
-)
-
 // IsWindowsService reports whether the process is currently executing
 // as a Windows service.
 func IsWindowsService() (bool, error) {
-       // This code was copied from runtime.isWindowsService function.
-
        // The below technique looks a bit hairy, but it's actually
        // exactly what the .NET framework does for the similarly named function:
        // https://github.com/dotnet/extensions/blob/f4066026ca06984b07e90e61a6390ac38152ba93/src/Hosting/WindowsServices/src/WindowsServiceHelpers.cs#L26-L31
        // Specifically, it looks up whether the parent process has session ID zero
        // and is called "services".
-       const _CURRENT_PROCESS = ^uintptr(0)
-       // pbi is a PROCESS_BASIC_INFORMATION struct, where we just care about
-       // the 6th pointer inside of it, which contains the pid of the process
-       // parent:
-       // https://github.com/wine-mirror/wine/blob/42cb7d2ad1caba08de235e6319b9967296b5d554/include/winternl.h#L1294
-       var pbi [6]uintptr
-       var pbiLen uint32
-       r0, _, _ := syscall.Syscall6(_NtQueryInformationProcess.Addr(), 5, _CURRENT_PROCESS, 0, uintptr(unsafe.Pointer(&pbi[0])), uintptr(unsafe.Sizeof(pbi)), uintptr(unsafe.Pointer(&pbiLen)), 0)
-       if r0 != 0 {
-               return false, errors.New("NtQueryInformationProcess failed: error=" + itoa(int(r0)))
-       }
-       var psid uint32
-       err := windows.ProcessIdToSessionId(uint32(pbi[5]), &psid)
+
+       var pbi windows.PROCESS_BASIC_INFORMATION
+       pbiLen := uint32(unsafe.Sizeof(pbi))
+       err := windows.NtQueryInformationProcess(windows.CurrentProcess(), windows.ProcessBasicInformation, unsafe.Pointer(&pbi), pbiLen, &pbiLen)
        if err != nil {
-               if err == windows.ERROR_INVALID_PARAMETER {
-                       // This error happens when Windows cannot find process parent.
-                       // Perhaps process parent exited.
-                       // Assume we are not running in a service, because service
-                       // parent process (services.exe) cannot exit.
-                       return false, nil
-               }
                return false, err
        }
-       if psid != 0 {
-               // parent session id should be 0 for service process
+       var psid uint32
+       err = windows.ProcessIdToSessionId(uint32(pbi.InheritedFromUniqueProcessId), &psid)
+       if err != nil || psid != 0 {
                return false, nil
        }
-
-       pproc, err := windows.OpenProcess(windows.PROCESS_QUERY_LIMITED_INFORMATION, false, uint32(pbi[5]))
+       pproc, err := windows.OpenProcess(windows.PROCESS_QUERY_LIMITED_INFORMATION, false, uint32(pbi.InheritedFromUniqueProcessId))
        if err != nil {
                return false, err
        }
        defer windows.CloseHandle(pproc)
-
-       // exeName gets the path to the executable image of the parent process
-       var exeName [261]byte
-       exeNameLen := uint32(len(exeName) - 1)
-       r0, _, e0 := syscall.Syscall6(_QueryFullProcessImageNameA.Addr(), 4, uintptr(pproc), 0, uintptr(unsafe.Pointer(&exeName[0])), uintptr(unsafe.Pointer(&exeNameLen)), 0, 0)
-       if r0 == 0 {
-               if e0 != 0 {
-                       return false, e0
-               } else {
-                       return false, syscall.EINVAL
-               }
+       var exeNameBuf [261]uint16
+       exeNameLen := uint32(len(exeNameBuf) - 1)
+       err = windows.QueryFullProcessImageName(pproc, 0, &exeNameBuf[0], &exeNameLen)
+       if err != nil {
+               return false, err
        }
-       const (
-               servicesLower = "services.exe"
-               servicesUpper = "SERVICES.EXE"
-       )
-       i := int(exeNameLen) - 1
-       j := len(servicesLower) - 1
-       if i < j {
+       exeName := windows.UTF16ToString(exeNameBuf[:exeNameLen])
+       if !strings.EqualFold(filepath.Base(exeName), "services.exe") {
                return false, nil
        }
-       for {
-               if j == -1 {
-                       return i == -1 || exeName[i] == '\\', nil
-               }
-               if exeName[i] != servicesLower[j] && exeName[i] != servicesUpper[j] {
-                       return false, nil
-               }
-               i--
-               j--
-       }
-}
-
-func itoa(val int) string { // do it here rather than with fmt to avoid dependency
-       if val < 0 {
-               return "-" + itoa(-val)
-       }
-       var buf [32]byte // big enough for int64
-       i := len(buf) - 1
-       for val >= 10 {
-               buf[i] = byte(val%10 + '0')
-               i--
-               val /= 10
+       system32, err := windows.GetSystemDirectory()
+       if err != nil {
+               return false, err
        }
-       buf[i] = byte(val + '0')
-       return string(buf[i:])
+       targetExeName := filepath.Join(system32, "services.exe")
+       return strings.EqualFold(exeName, targetExeName), nil
 }
index 23238fad494eac64f9a70fc2d67ccb807f0cc59e..bb6aaf89e47c6a40ffa465f68dc88168afe5431e 100644 (file)
@@ -8,6 +8,8 @@ package windows
 
 import (
        errorspkg "errors"
+       "fmt"
+       "runtime"
        "sync"
        "syscall"
        "time"
@@ -65,9 +67,8 @@ const (
        LOCKFILE_FAIL_IMMEDIATELY = 0x00000001
        LOCKFILE_EXCLUSIVE_LOCK   = 0x00000002
 
-       // Return values of SleepEx and other APC functions
-       STATUS_USER_APC    = 0x000000C0
-       WAIT_IO_COMPLETION = STATUS_USER_APC
+       // Return value of SleepEx and other APC functions
+       WAIT_IO_COMPLETION = 0x000000C0
 )
 
 // StringToUTF16 is deprecated. Use UTF16FromString instead.
@@ -180,6 +181,11 @@ func NewCallbackCDecl(fn interface{}) uintptr {
 //sys  IsWow64Process(handle Handle, isWow64 *bool) (err error) = IsWow64Process
 //sys  IsWow64Process2(handle Handle, processMachine *uint16, nativeMachine *uint16) (err error) = IsWow64Process2?
 //sys  CreateFile(name *uint16, access uint32, mode uint32, sa *SecurityAttributes, createmode uint32, attrs uint32, templatefile Handle) (handle Handle, err error) [failretval==InvalidHandle] = CreateFileW
+//sys  CreateNamedPipe(name *uint16, flags uint32, pipeMode uint32, maxInstances uint32, outSize uint32, inSize uint32, defaultTimeout uint32, sa *SecurityAttributes) (handle Handle, err error)  [failretval==InvalidHandle] = CreateNamedPipeW
+//sys  ConnectNamedPipe(pipe Handle, overlapped *Overlapped) (err error)
+//sys  GetNamedPipeInfo(pipe Handle, flags *uint32, outSize *uint32, inSize *uint32, maxInstances *uint32) (err error)
+//sys  GetNamedPipeHandleState(pipe Handle, state *uint32, curInstances *uint32, maxCollectionCount *uint32, collectDataTimeout *uint32, userName *uint16, maxUserNameSize uint32) (err error) = GetNamedPipeHandleStateW
+//sys  SetNamedPipeHandleState(pipe Handle, state *uint32, maxCollectionCount *uint32, collectDataTimeout *uint32) (err error) = SetNamedPipeHandleState
 //sys  ReadFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped) (err error)
 //sys  WriteFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped) (err error)
 //sys  GetOverlappedResult(handle Handle, overlapped *Overlapped, done *uint32, wait bool) (err error)
@@ -216,7 +222,7 @@ func NewCallbackCDecl(fn interface{}) uintptr {
 //sys  CreateProcess(appName *uint16, commandLine *uint16, procSecurity *SecurityAttributes, threadSecurity *SecurityAttributes, inheritHandles bool, creationFlags uint32, env *uint16, currentDir *uint16, startupInfo *StartupInfo, outProcInfo *ProcessInformation) (err error) = CreateProcessW
 //sys   initializeProcThreadAttributeList(attrlist *ProcThreadAttributeList, attrcount uint32, flags uint32, size *uintptr) (err error) = InitializeProcThreadAttributeList
 //sys   deleteProcThreadAttributeList(attrlist *ProcThreadAttributeList) = DeleteProcThreadAttributeList
-//sys   updateProcThreadAttribute(attrlist *ProcThreadAttributeList, flags uint32, attr uintptr, value uintptr, size uintptr, prevvalue uintptr, returnedsize *uintptr) (err error) = UpdateProcThreadAttribute
+//sys   updateProcThreadAttribute(attrlist *ProcThreadAttributeList, flags uint32, attr uintptr, value unsafe.Pointer, size uintptr, prevvalue unsafe.Pointer, returnedsize *uintptr) (err error) = UpdateProcThreadAttribute
 //sys  OpenProcess(desiredAccess uint32, inheritHandle bool, processId uint32) (handle Handle, err error)
 //sys  ShellExecute(hwnd Handle, verb *uint16, file *uint16, args *uint16, cwd *uint16, showCmd int32) (err error) [failretval<=32] = shell32.ShellExecuteW
 //sys  GetWindowThreadProcessId(hwnd HWND, pid *uint32) (tid uint32, err error) = user32.GetWindowThreadProcessId
@@ -251,13 +257,14 @@ func NewCallbackCDecl(fn interface{}) uintptr {
 //sys  GetCommandLine() (cmd *uint16) = kernel32.GetCommandLineW
 //sys  CommandLineToArgv(cmd *uint16, argc *int32) (argv *[8192]*[8192]uint16, err error) [failretval==nil] = shell32.CommandLineToArgvW
 //sys  LocalFree(hmem Handle) (handle Handle, err error) [failretval!=0]
+//sys  LocalAlloc(flags uint32, length uint32) (ptr uintptr, err error)
 //sys  SetHandleInformation(handle Handle, mask uint32, flags uint32) (err error)
 //sys  FlushFileBuffers(handle Handle) (err error)
 //sys  GetFullPathName(path *uint16, buflen uint32, buf *uint16, fname **uint16) (n uint32, err error) = kernel32.GetFullPathNameW
 //sys  GetLongPathName(path *uint16, buf *uint16, buflen uint32) (n uint32, err error) = kernel32.GetLongPathNameW
 //sys  GetShortPathName(longpath *uint16, shortpath *uint16, buflen uint32) (n uint32, err error) = kernel32.GetShortPathNameW
 //sys  GetFinalPathNameByHandle(file Handle, filePath *uint16, filePathSize uint32, flags uint32) (n uint32, err error) = kernel32.GetFinalPathNameByHandleW
-//sys  CreateFileMapping(fhandle Handle, sa *SecurityAttributes, prot uint32, maxSizeHigh uint32, maxSizeLow uint32, name *uint16) (handle Handle, err error) = kernel32.CreateFileMappingW
+//sys  CreateFileMapping(fhandle Handle, sa *SecurityAttributes, prot uint32, maxSizeHigh uint32, maxSizeLow uint32, name *uint16) (handle Handle, err error) [failretval == 0 || e1 == ERROR_ALREADY_EXISTS] = kernel32.CreateFileMappingW
 //sys  MapViewOfFile(handle Handle, access uint32, offsetHigh uint32, offsetLow uint32, length uintptr) (addr uintptr, err error)
 //sys  UnmapViewOfFile(addr uintptr) (err error)
 //sys  FlushViewOfFile(addr uintptr, length uintptr) (err error)
@@ -318,14 +325,14 @@ func NewCallbackCDecl(fn interface{}) uintptr {
 //sys  CreateSymbolicLink(symlinkfilename *uint16, targetfilename *uint16, flags uint32) (err error) [failretval&0xff==0] = CreateSymbolicLinkW
 //sys  CreateHardLink(filename *uint16, existingfilename *uint16, reserved uintptr) (err error) [failretval&0xff==0] = CreateHardLinkW
 //sys  GetCurrentThreadId() (id uint32)
-//sys  CreateEvent(eventAttrs *SecurityAttributes, manualReset uint32, initialState uint32, name *uint16) (handle Handle, err error) = kernel32.CreateEventW
-//sys  CreateEventEx(eventAttrs *SecurityAttributes, name *uint16, flags uint32, desiredAccess uint32) (handle Handle, err error) = kernel32.CreateEventExW
+//sys  CreateEvent(eventAttrs *SecurityAttributes, manualReset uint32, initialState uint32, name *uint16) (handle Handle, err error) [failretval == 0 || e1 == ERROR_ALREADY_EXISTS] = kernel32.CreateEventW
+//sys  CreateEventEx(eventAttrs *SecurityAttributes, name *uint16, flags uint32, desiredAccess uint32) (handle Handle, err error) [failretval == 0 || e1 == ERROR_ALREADY_EXISTS] = kernel32.CreateEventExW
 //sys  OpenEvent(desiredAccess uint32, inheritHandle bool, name *uint16) (handle Handle, err error) = kernel32.OpenEventW
 //sys  SetEvent(event Handle) (err error) = kernel32.SetEvent
 //sys  ResetEvent(event Handle) (err error) = kernel32.ResetEvent
 //sys  PulseEvent(event Handle) (err error) = kernel32.PulseEvent
-//sys  CreateMutex(mutexAttrs *SecurityAttributes, initialOwner bool, name *uint16) (handle Handle, err error) = kernel32.CreateMutexW
-//sys  CreateMutexEx(mutexAttrs *SecurityAttributes, name *uint16, flags uint32, desiredAccess uint32) (handle Handle, err error) = kernel32.CreateMutexExW
+//sys  CreateMutex(mutexAttrs *SecurityAttributes, initialOwner bool, name *uint16) (handle Handle, err error) [failretval == 0 || e1 == ERROR_ALREADY_EXISTS] = kernel32.CreateMutexW
+//sys  CreateMutexEx(mutexAttrs *SecurityAttributes, name *uint16, flags uint32, desiredAccess uint32) (handle Handle, err error) [failretval == 0 || e1 == ERROR_ALREADY_EXISTS] = kernel32.CreateMutexExW
 //sys  OpenMutex(desiredAccess uint32, inheritHandle bool, name *uint16) (handle Handle, err error) = kernel32.OpenMutexW
 //sys  ReleaseMutex(mutex Handle) (err error) = kernel32.ReleaseMutex
 //sys  SleepEx(milliseconds uint32, alertable bool) (ret uint32) = kernel32.SleepEx
@@ -340,6 +347,7 @@ func NewCallbackCDecl(fn interface{}) uintptr {
 //sys  SetInformationJobObject(job Handle, JobObjectInformationClass uint32, JobObjectInformation uintptr, JobObjectInformationLength uint32) (ret int, err error)
 //sys  GenerateConsoleCtrlEvent(ctrlEvent uint32, processGroupID uint32) (err error)
 //sys  GetProcessId(process Handle) (id uint32, err error)
+//sys  QueryFullProcessImageName(proc Handle, flags uint32, exeName *uint16, size *uint32) (err error) = kernel32.QueryFullProcessImageNameW
 //sys  OpenThread(desiredAccess uint32, inheritHandle bool, threadId uint32) (handle Handle, err error)
 //sys  SetProcessPriorityBoost(process Handle, disable bool) (err error) = kernel32.SetProcessPriorityBoost
 //sys  GetProcessWorkingSetSizeEx(hProcess Handle, lpMinimumWorkingSetSize *uintptr, lpMaximumWorkingSetSize *uintptr, flags *uint32)
@@ -375,16 +383,36 @@ func NewCallbackCDecl(fn interface{}) uintptr {
 //sys  stringFromGUID2(rguid *GUID, lpsz *uint16, cchMax int32) (chars int32) = ole32.StringFromGUID2
 //sys  coCreateGuid(pguid *GUID) (ret error) = ole32.CoCreateGuid
 //sys  CoTaskMemFree(address unsafe.Pointer) = ole32.CoTaskMemFree
-//sys  rtlGetVersion(info *OsVersionInfoEx) (ret error) = ntdll.RtlGetVersion
-//sys  rtlGetNtVersionNumbers(majorVersion *uint32, minorVersion *uint32, buildNumber *uint32) = ntdll.RtlGetNtVersionNumbers
+//sys  CoInitializeEx(reserved uintptr, coInit uint32) (ret error) = ole32.CoInitializeEx
+//sys  CoUninitialize() = ole32.CoUninitialize
+//sys  CoGetObject(name *uint16, bindOpts *BIND_OPTS3, guid *GUID, functionTable **uintptr) (ret error) = ole32.CoGetObject
 //sys  getProcessPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) = kernel32.GetProcessPreferredUILanguages
 //sys  getThreadPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) = kernel32.GetThreadPreferredUILanguages
 //sys  getUserPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) = kernel32.GetUserPreferredUILanguages
 //sys  getSystemPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) = kernel32.GetSystemPreferredUILanguages
+//sys  findResource(module Handle, name uintptr, resType uintptr) (resInfo Handle, err error) = kernel32.FindResourceW
+//sys  SizeofResource(module Handle, resInfo Handle) (size uint32, err error) = kernel32.SizeofResource
+//sys  LoadResource(module Handle, resInfo Handle) (resData Handle, err error) = kernel32.LoadResource
+//sys  LockResource(resData Handle) (addr uintptr, err error) = kernel32.LockResource
 
 // Process Status API (PSAPI)
 //sys  EnumProcesses(processIds []uint32, bytesReturned *uint32) (err error) = psapi.EnumProcesses
 
+// NT Native APIs
+//sys  rtlNtStatusToDosErrorNoTeb(ntstatus NTStatus) (ret syscall.Errno) = ntdll.RtlNtStatusToDosErrorNoTeb
+//sys  rtlGetVersion(info *OsVersionInfoEx) (ntstatus error) = ntdll.RtlGetVersion
+//sys  rtlGetNtVersionNumbers(majorVersion *uint32, minorVersion *uint32, buildNumber *uint32) = ntdll.RtlGetNtVersionNumbers
+//sys  RtlGetCurrentPeb() (peb *PEB) = ntdll.RtlGetCurrentPeb
+//sys  RtlInitUnicodeString(destinationString *NTUnicodeString, sourceString *uint16) = ntdll.RtlInitUnicodeString
+//sys  RtlInitString(destinationString *NTString, sourceString *byte) = ntdll.RtlInitString
+//sys  NtCreateFile(handle *Handle, access uint32, oa *OBJECT_ATTRIBUTES, iosb *IO_STATUS_BLOCK, allocationSize *int64, attributes uint32, share uint32, disposition uint32, options uint32, eabuffer uintptr, ealength uint32) (ntstatus error) = ntdll.NtCreateFile
+//sys  NtCreateNamedPipeFile(pipe *Handle, access uint32, oa *OBJECT_ATTRIBUTES, iosb *IO_STATUS_BLOCK, share uint32, disposition uint32, options uint32, typ uint32, readMode uint32, completionMode uint32, maxInstances uint32, inboundQuota uint32, outputQuota uint32, timeout *int64) (ntstatus error) = ntdll.NtCreateNamedPipeFile
+//sys  RtlDosPathNameToNtPathName(dosName *uint16, ntName *NTUnicodeString, ntFileNamePart *uint16, relativeName *RTL_RELATIVE_NAME) (ntstatus error) = ntdll.RtlDosPathNameToNtPathName_U_WithStatus
+//sys  RtlDosPathNameToRelativeNtPathName(dosName *uint16, ntName *NTUnicodeString, ntFileNamePart *uint16, relativeName *RTL_RELATIVE_NAME) (ntstatus error) = ntdll.RtlDosPathNameToRelativeNtPathName_U_WithStatus
+//sys  RtlDefaultNpAcl(acl **ACL) (ntstatus error) = ntdll.RtlDefaultNpAcl
+//sys  NtQueryInformationProcess(proc Handle, procInfoClass int32, procInfo unsafe.Pointer, procInfoLen uint32, retLen *uint32) (ntstatus error) = ntdll.NtQueryInformationProcess
+//sys  NtSetInformationProcess(proc Handle, procInfoClass int32, procInfo unsafe.Pointer, procInfoLen uint32) (ntstatus error) = ntdll.NtSetInformationProcess
+
 // syscall interface implementation for other packages
 
 // GetCurrentProcess returns the handle for the current process.
@@ -792,6 +820,7 @@ const socket_error = uintptr(^uint32(0))
 //sys  GetAdaptersInfo(ai *IpAdapterInfo, ol *uint32) (errcode error) = iphlpapi.GetAdaptersInfo
 //sys  SetFileCompletionNotificationModes(handle Handle, flags uint8) (err error) = kernel32.SetFileCompletionNotificationModes
 //sys  WSAEnumProtocols(protocols *int32, protocolBuffer *WSAProtocolInfo, bufferLength *uint32) (n int32, err error) [failretval==-1] = ws2_32.WSAEnumProtocolsW
+//sys  WSAGetOverlappedResult(h Handle, o *Overlapped, bytes *uint32, wait bool, flags *uint32) (err error) = ws2_32.WSAGetOverlappedResult
 //sys  GetAdaptersAddresses(family uint32, flags uint32, reserved uintptr, adapterAddresses *IpAdapterAddresses, sizePointer *uint32) (errcode error) = iphlpapi.GetAdaptersAddresses
 //sys  GetACP() (acp uint32) = kernel32.GetACP
 //sys  MultiByteToWideChar(codePage uint32, dwFlags uint32, str *byte, nstr int32, wchar *uint16, nwchar int32) (nwrite int32, err error) = kernel32.MultiByteToWideChar
@@ -1514,3 +1543,129 @@ func getUILanguages(flags uint32, f func(flags uint32, numLanguages *uint32, buf
 func SetConsoleCursorPosition(console Handle, position Coord) error {
        return setConsoleCursorPosition(console, *((*uint32)(unsafe.Pointer(&position))))
 }
+
+func (s NTStatus) Errno() syscall.Errno {
+       return rtlNtStatusToDosErrorNoTeb(s)
+}
+
+func langID(pri, sub uint16) uint32 { return uint32(sub)<<10 | uint32(pri) }
+
+func (s NTStatus) Error() string {
+       b := make([]uint16, 300)
+       n, err := FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM|FORMAT_MESSAGE_FROM_HMODULE|FORMAT_MESSAGE_ARGUMENT_ARRAY, modntdll.Handle(), uint32(s), langID(LANG_ENGLISH, SUBLANG_ENGLISH_US), b, nil)
+       if err != nil {
+               return fmt.Sprintf("NTSTATUS 0x%08x", uint32(s))
+       }
+       // trim terminating \r and \n
+       for ; n > 0 && (b[n-1] == '\n' || b[n-1] == '\r'); n-- {
+       }
+       return string(utf16.Decode(b[:n]))
+}
+
+// NewNTUnicodeString returns a new NTUnicodeString structure for use with native
+// NT APIs that work over the NTUnicodeString type. Note that most Windows APIs
+// do not use NTUnicodeString, and instead UTF16PtrFromString should be used for
+// the more common *uint16 string type.
+func NewNTUnicodeString(s string) (*NTUnicodeString, error) {
+       var u NTUnicodeString
+       s16, err := UTF16PtrFromString(s)
+       if err != nil {
+               return nil, err
+       }
+       RtlInitUnicodeString(&u, s16)
+       return &u, nil
+}
+
+// Slice returns a uint16 slice that aliases the data in the NTUnicodeString.
+func (s *NTUnicodeString) Slice() []uint16 {
+       var slice []uint16
+       hdr := (*unsafeheader.Slice)(unsafe.Pointer(&slice))
+       hdr.Data = unsafe.Pointer(s.Buffer)
+       hdr.Len = int(s.Length)
+       hdr.Cap = int(s.MaximumLength)
+       return slice
+}
+
+func (s *NTUnicodeString) String() string {
+       return UTF16ToString(s.Slice())
+}
+
+// NewNTString returns a new NTString structure for use with native
+// NT APIs that work over the NTString type. Note that most Windows APIs
+// do not use NTString, and instead UTF16PtrFromString should be used for
+// the more common *uint16 string type.
+func NewNTString(s string) (*NTString, error) {
+       var nts NTString
+       s8, err := BytePtrFromString(s)
+       if err != nil {
+               return nil, err
+       }
+       RtlInitString(&nts, s8)
+       return &nts, nil
+}
+
+// Slice returns a byte slice that aliases the data in the NTString.
+func (s *NTString) Slice() []byte {
+       var slice []byte
+       hdr := (*unsafeheader.Slice)(unsafe.Pointer(&slice))
+       hdr.Data = unsafe.Pointer(s.Buffer)
+       hdr.Len = int(s.Length)
+       hdr.Cap = int(s.MaximumLength)
+       return slice
+}
+
+func (s *NTString) String() string {
+       return ByteSliceToString(s.Slice())
+}
+
+// FindResource resolves a resource of the given name and resource type.
+func FindResource(module Handle, name, resType ResourceIDOrString) (Handle, error) {
+       var namePtr, resTypePtr uintptr
+       var name16, resType16 *uint16
+       var err error
+       resolvePtr := func(i interface{}, keep **uint16) (uintptr, error) {
+               switch v := i.(type) {
+               case string:
+                       *keep, err = UTF16PtrFromString(v)
+                       if err != nil {
+                               return 0, err
+                       }
+                       return uintptr(unsafe.Pointer(*keep)), nil
+               case ResourceID:
+                       return uintptr(v), nil
+               }
+               return 0, errorspkg.New("parameter must be a ResourceID or a string")
+       }
+       namePtr, err = resolvePtr(name, &name16)
+       if err != nil {
+               return 0, err
+       }
+       resTypePtr, err = resolvePtr(resType, &resType16)
+       if err != nil {
+               return 0, err
+       }
+       resInfo, err := findResource(module, namePtr, resTypePtr)
+       runtime.KeepAlive(name16)
+       runtime.KeepAlive(resType16)
+       return resInfo, err
+}
+
+func LoadResourceData(module, resInfo Handle) (data []byte, err error) {
+       size, err := SizeofResource(module, resInfo)
+       if err != nil {
+               return
+       }
+       resData, err := LoadResource(module, resInfo)
+       if err != nil {
+               return
+       }
+       ptr, err := LockResource(resData)
+       if err != nil {
+               return
+       }
+       h := (*unsafeheader.Slice)(unsafe.Pointer(&data))
+       h.Data = unsafe.Pointer(ptr)
+       h.Len = int(size)
+       h.Cap = int(size)
+       return
+}
index c26088985bfaf6e12798f13b8c9486a9648d6f03..23fe18ecef2123da402d09a306def62d35d9f999 100644 (file)
@@ -10,6 +10,10 @@ import (
        "unsafe"
 )
 
+// NTStatus corresponds with NTSTATUS, error values returned by ntdll.dll and
+// other native functions.
+type NTStatus uint32
+
 const (
        // Invented values to support what package os expects.
        O_RDONLY   = 0x00000
@@ -908,7 +912,11 @@ type StartupInfoEx struct {
 // To create a *ProcThreadAttributeList, use NewProcThreadAttributeList, and
 // free its memory using ProcThreadAttributeList.Delete.
 type ProcThreadAttributeList struct {
-       _ [1]byte
+       // This is of type unsafe.Pointer, not of type byte or uintptr, because
+       // the contents of it is mostly a list of pointers, and in most cases,
+       // that's a list of pointers to Go-allocated objects. In order to keep
+       // the GC from collecting these objects, we declare this as unsafe.Pointer.
+       _ [1]unsafe.Pointer
 }
 
 type ProcessInformation struct {
@@ -1012,6 +1020,7 @@ const (
 
        // cf. http://support.microsoft.com/default.aspx?scid=kb;en-us;257460
 
+       IP_HDRINCL         = 0x2
        IP_TOS             = 0x3
        IP_TTL             = 0x4
        IP_MULTICAST_IF    = 0x9
@@ -1019,6 +1028,7 @@ const (
        IP_MULTICAST_LOOP  = 0xb
        IP_ADD_MEMBERSHIP  = 0xc
        IP_DROP_MEMBERSHIP = 0xd
+       IP_PKTINFO         = 0x13
 
        IPV6_V6ONLY         = 0x1b
        IPV6_UNICAST_HOPS   = 0x4
@@ -1027,6 +1037,7 @@ const (
        IPV6_MULTICAST_LOOP = 0xb
        IPV6_JOIN_GROUP     = 0xc
        IPV6_LEAVE_GROUP    = 0xd
+       IPV6_PKTINFO        = 0x13
 
        MSG_OOB       = 0x1
        MSG_PEEK      = 0x2
@@ -2268,3 +2279,496 @@ type CommTimeouts struct {
        WriteTotalTimeoutMultiplier uint32
        WriteTotalTimeoutConstant   uint32
 }
+
+// NTUnicodeString is a UTF-16 string for NT native APIs, corresponding to UNICODE_STRING.
+type NTUnicodeString struct {
+       Length        uint16
+       MaximumLength uint16
+       Buffer        *uint16
+}
+
+// NTString is an ANSI string for NT native APIs, corresponding to STRING.
+type NTString struct {
+       Length        uint16
+       MaximumLength uint16
+       Buffer        *byte
+}
+
+type LIST_ENTRY struct {
+       Flink *LIST_ENTRY
+       Blink *LIST_ENTRY
+}
+
+type LDR_DATA_TABLE_ENTRY struct {
+       reserved1          [2]uintptr
+       InMemoryOrderLinks LIST_ENTRY
+       reserved2          [2]uintptr
+       DllBase            uintptr
+       reserved3          [2]uintptr
+       FullDllName        NTUnicodeString
+       reserved4          [8]byte
+       reserved5          [3]uintptr
+       reserved6          uintptr
+       TimeDateStamp      uint32
+}
+
+type PEB_LDR_DATA struct {
+       reserved1               [8]byte
+       reserved2               [3]uintptr
+       InMemoryOrderModuleList LIST_ENTRY
+}
+
+type CURDIR struct {
+       DosPath NTUnicodeString
+       Handle  Handle
+}
+
+type RTL_DRIVE_LETTER_CURDIR struct {
+       Flags     uint16
+       Length    uint16
+       TimeStamp uint32
+       DosPath   NTString
+}
+
+type RTL_USER_PROCESS_PARAMETERS struct {
+       MaximumLength, Length uint32
+
+       Flags, DebugFlags uint32
+
+       ConsoleHandle                                Handle
+       ConsoleFlags                                 uint32
+       StandardInput, StandardOutput, StandardError Handle
+
+       CurrentDirectory CURDIR
+       DllPath          NTUnicodeString
+       ImagePathName    NTUnicodeString
+       CommandLine      NTUnicodeString
+       Environment      unsafe.Pointer
+
+       StartingX, StartingY, CountX, CountY, CountCharsX, CountCharsY, FillAttribute uint32
+
+       WindowFlags, ShowWindowFlags                     uint32
+       WindowTitle, DesktopInfo, ShellInfo, RuntimeData NTUnicodeString
+       CurrentDirectories                               [32]RTL_DRIVE_LETTER_CURDIR
+
+       EnvironmentSize, EnvironmentVersion uintptr
+
+       PackageDependencyData unsafe.Pointer
+       ProcessGroupId        uint32
+       LoaderThreads         uint32
+
+       RedirectionDllName               NTUnicodeString
+       HeapPartitionName                NTUnicodeString
+       DefaultThreadpoolCpuSetMasks     uintptr
+       DefaultThreadpoolCpuSetMaskCount uint32
+}
+
+type PEB struct {
+       reserved1              [2]byte
+       BeingDebugged          byte
+       BitField               byte
+       reserved3              uintptr
+       ImageBaseAddress       uintptr
+       Ldr                    *PEB_LDR_DATA
+       ProcessParameters      *RTL_USER_PROCESS_PARAMETERS
+       reserved4              [3]uintptr
+       AtlThunkSListPtr       uintptr
+       reserved5              uintptr
+       reserved6              uint32
+       reserved7              uintptr
+       reserved8              uint32
+       AtlThunkSListPtr32     uint32
+       reserved9              [45]uintptr
+       reserved10             [96]byte
+       PostProcessInitRoutine uintptr
+       reserved11             [128]byte
+       reserved12             [1]uintptr
+       SessionId              uint32
+}
+
+type OBJECT_ATTRIBUTES struct {
+       Length             uint32
+       RootDirectory      Handle
+       ObjectName         *NTUnicodeString
+       Attributes         uint32
+       SecurityDescriptor *SECURITY_DESCRIPTOR
+       SecurityQoS        *SECURITY_QUALITY_OF_SERVICE
+}
+
+// Values for the Attributes member of OBJECT_ATTRIBUTES.
+const (
+       OBJ_INHERIT                       = 0x00000002
+       OBJ_PERMANENT                     = 0x00000010
+       OBJ_EXCLUSIVE                     = 0x00000020
+       OBJ_CASE_INSENSITIVE              = 0x00000040
+       OBJ_OPENIF                        = 0x00000080
+       OBJ_OPENLINK                      = 0x00000100
+       OBJ_KERNEL_HANDLE                 = 0x00000200
+       OBJ_FORCE_ACCESS_CHECK            = 0x00000400
+       OBJ_IGNORE_IMPERSONATED_DEVICEMAP = 0x00000800
+       OBJ_DONT_REPARSE                  = 0x00001000
+       OBJ_VALID_ATTRIBUTES              = 0x00001FF2
+)
+
+type IO_STATUS_BLOCK struct {
+       Status      NTStatus
+       Information uintptr
+}
+
+type RTLP_CURDIR_REF struct {
+       RefCount int32
+       Handle   Handle
+}
+
+type RTL_RELATIVE_NAME struct {
+       RelativeName        NTUnicodeString
+       ContainingDirectory Handle
+       CurDirRef           *RTLP_CURDIR_REF
+}
+
+const (
+       // CreateDisposition flags for NtCreateFile and NtCreateNamedPipeFile.
+       FILE_SUPERSEDE           = 0x00000000
+       FILE_OPEN                = 0x00000001
+       FILE_CREATE              = 0x00000002
+       FILE_OPEN_IF             = 0x00000003
+       FILE_OVERWRITE           = 0x00000004
+       FILE_OVERWRITE_IF        = 0x00000005
+       FILE_MAXIMUM_DISPOSITION = 0x00000005
+
+       // CreateOptions flags for NtCreateFile and NtCreateNamedPipeFile.
+       FILE_DIRECTORY_FILE            = 0x00000001
+       FILE_WRITE_THROUGH             = 0x00000002
+       FILE_SEQUENTIAL_ONLY           = 0x00000004
+       FILE_NO_INTERMEDIATE_BUFFERING = 0x00000008
+       FILE_SYNCHRONOUS_IO_ALERT      = 0x00000010
+       FILE_SYNCHRONOUS_IO_NONALERT   = 0x00000020
+       FILE_NON_DIRECTORY_FILE        = 0x00000040
+       FILE_CREATE_TREE_CONNECTION    = 0x00000080
+       FILE_COMPLETE_IF_OPLOCKED      = 0x00000100
+       FILE_NO_EA_KNOWLEDGE           = 0x00000200
+       FILE_OPEN_REMOTE_INSTANCE      = 0x00000400
+       FILE_RANDOM_ACCESS             = 0x00000800
+       FILE_DELETE_ON_CLOSE           = 0x00001000
+       FILE_OPEN_BY_FILE_ID           = 0x00002000
+       FILE_OPEN_FOR_BACKUP_INTENT    = 0x00004000
+       FILE_NO_COMPRESSION            = 0x00008000
+       FILE_OPEN_REQUIRING_OPLOCK     = 0x00010000
+       FILE_DISALLOW_EXCLUSIVE        = 0x00020000
+       FILE_RESERVE_OPFILTER          = 0x00100000
+       FILE_OPEN_REPARSE_POINT        = 0x00200000
+       FILE_OPEN_NO_RECALL            = 0x00400000
+       FILE_OPEN_FOR_FREE_SPACE_QUERY = 0x00800000
+
+       // Parameter constants for NtCreateNamedPipeFile.
+
+       FILE_PIPE_BYTE_STREAM_TYPE = 0x00000000
+       FILE_PIPE_MESSAGE_TYPE     = 0x00000001
+
+       FILE_PIPE_ACCEPT_REMOTE_CLIENTS = 0x00000000
+       FILE_PIPE_REJECT_REMOTE_CLIENTS = 0x00000002
+
+       FILE_PIPE_TYPE_VALID_MASK = 0x00000003
+
+       FILE_PIPE_BYTE_STREAM_MODE = 0x00000000
+       FILE_PIPE_MESSAGE_MODE     = 0x00000001
+
+       FILE_PIPE_QUEUE_OPERATION    = 0x00000000
+       FILE_PIPE_COMPLETE_OPERATION = 0x00000001
+
+       FILE_PIPE_INBOUND     = 0x00000000
+       FILE_PIPE_OUTBOUND    = 0x00000001
+       FILE_PIPE_FULL_DUPLEX = 0x00000002
+
+       FILE_PIPE_DISCONNECTED_STATE = 0x00000001
+       FILE_PIPE_LISTENING_STATE    = 0x00000002
+       FILE_PIPE_CONNECTED_STATE    = 0x00000003
+       FILE_PIPE_CLOSING_STATE      = 0x00000004
+
+       FILE_PIPE_CLIENT_END = 0x00000000
+       FILE_PIPE_SERVER_END = 0x00000001
+)
+
+// ProcessInformationClasses for NtQueryInformationProcess and NtSetInformationProcess.
+const (
+       ProcessBasicInformation = iota
+       ProcessQuotaLimits
+       ProcessIoCounters
+       ProcessVmCounters
+       ProcessTimes
+       ProcessBasePriority
+       ProcessRaisePriority
+       ProcessDebugPort
+       ProcessExceptionPort
+       ProcessAccessToken
+       ProcessLdtInformation
+       ProcessLdtSize
+       ProcessDefaultHardErrorMode
+       ProcessIoPortHandlers
+       ProcessPooledUsageAndLimits
+       ProcessWorkingSetWatch
+       ProcessUserModeIOPL
+       ProcessEnableAlignmentFaultFixup
+       ProcessPriorityClass
+       ProcessWx86Information
+       ProcessHandleCount
+       ProcessAffinityMask
+       ProcessPriorityBoost
+       ProcessDeviceMap
+       ProcessSessionInformation
+       ProcessForegroundInformation
+       ProcessWow64Information
+       ProcessImageFileName
+       ProcessLUIDDeviceMapsEnabled
+       ProcessBreakOnTermination
+       ProcessDebugObjectHandle
+       ProcessDebugFlags
+       ProcessHandleTracing
+       ProcessIoPriority
+       ProcessExecuteFlags
+       ProcessTlsInformation
+       ProcessCookie
+       ProcessImageInformation
+       ProcessCycleTime
+       ProcessPagePriority
+       ProcessInstrumentationCallback
+       ProcessThreadStackAllocation
+       ProcessWorkingSetWatchEx
+       ProcessImageFileNameWin32
+       ProcessImageFileMapping
+       ProcessAffinityUpdateMode
+       ProcessMemoryAllocationMode
+       ProcessGroupInformation
+       ProcessTokenVirtualizationEnabled
+       ProcessConsoleHostProcess
+       ProcessWindowInformation
+       ProcessHandleInformation
+       ProcessMitigationPolicy
+       ProcessDynamicFunctionTableInformation
+       ProcessHandleCheckingMode
+       ProcessKeepAliveCount
+       ProcessRevokeFileHandles
+       ProcessWorkingSetControl
+       ProcessHandleTable
+       ProcessCheckStackExtentsMode
+       ProcessCommandLineInformation
+       ProcessProtectionInformation
+       ProcessMemoryExhaustion
+       ProcessFaultInformation
+       ProcessTelemetryIdInformation
+       ProcessCommitReleaseInformation
+       ProcessDefaultCpuSetsInformation
+       ProcessAllowedCpuSetsInformation
+       ProcessSubsystemProcess
+       ProcessJobMemoryInformation
+       ProcessInPrivate
+       ProcessRaiseUMExceptionOnInvalidHandleClose
+       ProcessIumChallengeResponse
+       ProcessChildProcessInformation
+       ProcessHighGraphicsPriorityInformation
+       ProcessSubsystemInformation
+       ProcessEnergyValues
+       ProcessActivityThrottleState
+       ProcessActivityThrottlePolicy
+       ProcessWin32kSyscallFilterInformation
+       ProcessDisableSystemAllowedCpuSets
+       ProcessWakeInformation
+       ProcessEnergyTrackingState
+       ProcessManageWritesToExecutableMemory
+       ProcessCaptureTrustletLiveDump
+       ProcessTelemetryCoverage
+       ProcessEnclaveInformation
+       ProcessEnableReadWriteVmLogging
+       ProcessUptimeInformation
+       ProcessImageSection
+       ProcessDebugAuthInformation
+       ProcessSystemResourceManagement
+       ProcessSequenceNumber
+       ProcessLoaderDetour
+       ProcessSecurityDomainInformation
+       ProcessCombineSecurityDomainsInformation
+       ProcessEnableLogging
+       ProcessLeapSecondInformation
+       ProcessFiberShadowStackAllocation
+       ProcessFreeFiberShadowStackAllocation
+       ProcessAltSystemCallInformation
+       ProcessDynamicEHContinuationTargets
+       ProcessDynamicEnforcedCetCompatibleRanges
+)
+
+type PROCESS_BASIC_INFORMATION struct {
+       ExitStatus                   NTStatus
+       PebBaseAddress               *PEB
+       AffinityMask                 uintptr
+       BasePriority                 int32
+       UniqueProcessId              uintptr
+       InheritedFromUniqueProcessId uintptr
+}
+
+// Constants for LocalAlloc flags.
+const (
+       LMEM_FIXED          = 0x0
+       LMEM_MOVEABLE       = 0x2
+       LMEM_NOCOMPACT      = 0x10
+       LMEM_NODISCARD      = 0x20
+       LMEM_ZEROINIT       = 0x40
+       LMEM_MODIFY         = 0x80
+       LMEM_DISCARDABLE    = 0xf00
+       LMEM_VALID_FLAGS    = 0xf72
+       LMEM_INVALID_HANDLE = 0x8000
+       LHND                = LMEM_MOVEABLE | LMEM_ZEROINIT
+       LPTR                = LMEM_FIXED | LMEM_ZEROINIT
+       NONZEROLHND         = LMEM_MOVEABLE
+       NONZEROLPTR         = LMEM_FIXED
+)
+
+// Constants for the CreateNamedPipe-family of functions.
+const (
+       PIPE_ACCESS_INBOUND  = 0x1
+       PIPE_ACCESS_OUTBOUND = 0x2
+       PIPE_ACCESS_DUPLEX   = 0x3
+
+       PIPE_CLIENT_END = 0x0
+       PIPE_SERVER_END = 0x1
+
+       PIPE_WAIT                  = 0x0
+       PIPE_NOWAIT                = 0x1
+       PIPE_READMODE_BYTE         = 0x0
+       PIPE_READMODE_MESSAGE      = 0x2
+       PIPE_TYPE_BYTE             = 0x0
+       PIPE_TYPE_MESSAGE          = 0x4
+       PIPE_ACCEPT_REMOTE_CLIENTS = 0x0
+       PIPE_REJECT_REMOTE_CLIENTS = 0x8
+
+       PIPE_UNLIMITED_INSTANCES = 255
+)
+
+// Constants for security attributes when opening named pipes.
+const (
+       SECURITY_ANONYMOUS      = SecurityAnonymous << 16
+       SECURITY_IDENTIFICATION = SecurityIdentification << 16
+       SECURITY_IMPERSONATION  = SecurityImpersonation << 16
+       SECURITY_DELEGATION     = SecurityDelegation << 16
+
+       SECURITY_CONTEXT_TRACKING = 0x40000
+       SECURITY_EFFECTIVE_ONLY   = 0x80000
+
+       SECURITY_SQOS_PRESENT     = 0x100000
+       SECURITY_VALID_SQOS_FLAGS = 0x1f0000
+)
+
+// ResourceID represents a 16-bit resource identifier, traditionally created with the MAKEINTRESOURCE macro.
+type ResourceID uint16
+
+// ResourceIDOrString must be either a ResourceID, to specify a resource or resource type by ID,
+// or a string, to specify a resource or resource type by name.
+type ResourceIDOrString interface{}
+
+// Predefined resource names and types.
+var (
+       // Predefined names.
+       CREATEPROCESS_MANIFEST_RESOURCE_ID                 ResourceID = 1
+       ISOLATIONAWARE_MANIFEST_RESOURCE_ID                ResourceID = 2
+       ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID ResourceID = 3
+       ISOLATIONPOLICY_MANIFEST_RESOURCE_ID               ResourceID = 4
+       ISOLATIONPOLICY_BROWSER_MANIFEST_RESOURCE_ID       ResourceID = 5
+       MINIMUM_RESERVED_MANIFEST_RESOURCE_ID              ResourceID = 1  // inclusive
+       MAXIMUM_RESERVED_MANIFEST_RESOURCE_ID              ResourceID = 16 // inclusive
+
+       // Predefined types.
+       RT_CURSOR       ResourceID = 1
+       RT_BITMAP       ResourceID = 2
+       RT_ICON         ResourceID = 3
+       RT_MENU         ResourceID = 4
+       RT_DIALOG       ResourceID = 5
+       RT_STRING       ResourceID = 6
+       RT_FONTDIR      ResourceID = 7
+       RT_FONT         ResourceID = 8
+       RT_ACCELERATOR  ResourceID = 9
+       RT_RCDATA       ResourceID = 10
+       RT_MESSAGETABLE ResourceID = 11
+       RT_GROUP_CURSOR ResourceID = 12
+       RT_GROUP_ICON   ResourceID = 14
+       RT_VERSION      ResourceID = 16
+       RT_DLGINCLUDE   ResourceID = 17
+       RT_PLUGPLAY     ResourceID = 19
+       RT_VXD          ResourceID = 20
+       RT_ANICURSOR    ResourceID = 21
+       RT_ANIICON      ResourceID = 22
+       RT_HTML         ResourceID = 23
+       RT_MANIFEST     ResourceID = 24
+)
+
+type COAUTHIDENTITY struct {
+       User           *uint16
+       UserLength     uint32
+       Domain         *uint16
+       DomainLength   uint32
+       Password       *uint16
+       PasswordLength uint32
+       Flags          uint32
+}
+
+type COAUTHINFO struct {
+       AuthnSvc           uint32
+       AuthzSvc           uint32
+       ServerPrincName    *uint16
+       AuthnLevel         uint32
+       ImpersonationLevel uint32
+       AuthIdentityData   *COAUTHIDENTITY
+       Capabilities       uint32
+}
+
+type COSERVERINFO struct {
+       Reserved1 uint32
+       Aame      *uint16
+       AuthInfo  *COAUTHINFO
+       Reserved2 uint32
+}
+
+type BIND_OPTS3 struct {
+       CbStruct          uint32
+       Flags             uint32
+       Mode              uint32
+       TickCountDeadline uint32
+       TrackFlags        uint32
+       ClassContext      uint32
+       Locale            uint32
+       ServerInfo        *COSERVERINFO
+       Hwnd              HWND
+}
+
+const (
+       CLSCTX_INPROC_SERVER          = 0x1
+       CLSCTX_INPROC_HANDLER         = 0x2
+       CLSCTX_LOCAL_SERVER           = 0x4
+       CLSCTX_INPROC_SERVER16        = 0x8
+       CLSCTX_REMOTE_SERVER          = 0x10
+       CLSCTX_INPROC_HANDLER16       = 0x20
+       CLSCTX_RESERVED1              = 0x40
+       CLSCTX_RESERVED2              = 0x80
+       CLSCTX_RESERVED3              = 0x100
+       CLSCTX_RESERVED4              = 0x200
+       CLSCTX_NO_CODE_DOWNLOAD       = 0x400
+       CLSCTX_RESERVED5              = 0x800
+       CLSCTX_NO_CUSTOM_MARSHAL      = 0x1000
+       CLSCTX_ENABLE_CODE_DOWNLOAD   = 0x2000
+       CLSCTX_NO_FAILURE_LOG         = 0x4000
+       CLSCTX_DISABLE_AAA            = 0x8000
+       CLSCTX_ENABLE_AAA             = 0x10000
+       CLSCTX_FROM_DEFAULT_CONTEXT   = 0x20000
+       CLSCTX_ACTIVATE_32_BIT_SERVER = 0x40000
+       CLSCTX_ACTIVATE_64_BIT_SERVER = 0x80000
+       CLSCTX_ENABLE_CLOAKING        = 0x100000
+       CLSCTX_APPCONTAINER           = 0x400000
+       CLSCTX_ACTIVATE_AAA_AS_IU     = 0x800000
+       CLSCTX_PS_DLL                 = 0x80000000
+
+       COINIT_MULTITHREADED     = 0x0
+       COINIT_APARTMENTTHREADED = 0x2
+       COINIT_DISABLE_OLE1DDE   = 0x4
+       COINIT_SPEED_OVER_MEMORY = 0x8
+)
+
+// Flag for QueryFullProcessImageName.
+const PROCESS_NAME_NATIVE = 1
index f0212003520d0274a721b6dacdaa3a8202d08daf..0cf658fbd5d773f1a2668bdc48bc4b2cac2df0f3 100644 (file)
@@ -146,6 +146,7 @@ const (
        FACILITY_WEP                                                                            = 2049
        FACILITY_SYNCENGINE                                                                     = 2050
        FACILITY_XBOX                                                                           = 2339
+       FACILITY_GAME                                                                           = 2340
        FACILITY_PIX                                                                            = 2748
        ERROR_SUCCESS                                                             syscall.Errno = 0
        NO_ERROR                                                                                = 0
@@ -469,9 +470,18 @@ const (
        ERROR_STORAGE_RESERVE_NOT_EMPTY                                           syscall.Errno = 419
        ERROR_NOT_A_DAX_VOLUME                                                    syscall.Errno = 420
        ERROR_NOT_DAX_MAPPABLE                                                    syscall.Errno = 421
-       ERROR_TIME_CRITICAL_THREAD                                                syscall.Errno = 422
+       ERROR_TIME_SENSITIVE_THREAD                                               syscall.Errno = 422
        ERROR_DPL_NOT_SUPPORTED_FOR_USER                                          syscall.Errno = 423
        ERROR_CASE_DIFFERING_NAMES_IN_DIR                                         syscall.Errno = 424
+       ERROR_FILE_NOT_SUPPORTED                                                  syscall.Errno = 425
+       ERROR_CLOUD_FILE_REQUEST_TIMEOUT                                          syscall.Errno = 426
+       ERROR_NO_TASK_QUEUE                                                       syscall.Errno = 427
+       ERROR_SRC_SRV_DLL_LOAD_FAILED                                             syscall.Errno = 428
+       ERROR_NOT_SUPPORTED_WITH_BTT                                              syscall.Errno = 429
+       ERROR_ENCRYPTION_DISABLED                                                 syscall.Errno = 430
+       ERROR_ENCRYPTING_METADATA_DISALLOWED                                      syscall.Errno = 431
+       ERROR_CANT_CLEAR_ENCRYPTION_FLAG                                          syscall.Errno = 432
+       ERROR_NO_SUCH_DEVICE                                                      syscall.Errno = 433
        ERROR_CAPAUTHZ_NOT_DEVUNLOCKED                                            syscall.Errno = 450
        ERROR_CAPAUTHZ_CHANGE_TYPE                                                syscall.Errno = 451
        ERROR_CAPAUTHZ_NOT_PROVISIONED                                            syscall.Errno = 452
@@ -1593,6 +1603,8 @@ const (
        ERROR_SYSTEM_INTEGRITY_POLICY_VIOLATION                                   syscall.Errno = 4551
        ERROR_SYSTEM_INTEGRITY_INVALID_POLICY                                     syscall.Errno = 4552
        ERROR_SYSTEM_INTEGRITY_POLICY_NOT_SIGNED                                  syscall.Errno = 4553
+       ERROR_SYSTEM_INTEGRITY_TOO_MANY_POLICIES                                  syscall.Errno = 4554
+       ERROR_SYSTEM_INTEGRITY_SUPPLEMENTAL_POLICY_NOT_AUTHORIZED                 syscall.Errno = 4555
        ERROR_VSM_NOT_INITIALIZED                                                 syscall.Errno = 4560
        ERROR_VSM_DMA_PROTECTION_NOT_IN_USE                                       syscall.Errno = 4561
        ERROR_PLATFORM_MANIFEST_NOT_AUTHORIZED                                    syscall.Errno = 4570
@@ -1824,6 +1836,7 @@ const (
        ERROR_CS_ENCRYPTION_NEW_ENCRYPTED_FILE                                    syscall.Errno = 6020
        ERROR_CS_ENCRYPTION_FILE_NOT_CSE                                          syscall.Errno = 6021
        ERROR_ENCRYPTION_POLICY_DENIES_OPERATION                                  syscall.Errno = 6022
+       ERROR_WIP_ENCRYPTION_FAILED                                               syscall.Errno = 6023
        ERROR_NO_BROWSER_SERVERS_FOUND                                            syscall.Errno = 6118
        SCHED_E_SERVICE_NOT_LOCALSYSTEM                                           syscall.Errno = 6200
        ERROR_LOG_SECTOR_INVALID                                                  syscall.Errno = 6600
@@ -3000,6 +3013,7 @@ const (
        ERROR_SMI_PRIMITIVE_INSTALLER_FAILED                                      syscall.Errno = 14108
        ERROR_GENERIC_COMMAND_FAILED                                              syscall.Errno = 14109
        ERROR_SXS_FILE_HASH_MISSING                                               syscall.Errno = 14110
+       ERROR_SXS_DUPLICATE_ACTIVATABLE_CLASS                                     syscall.Errno = 14111
        ERROR_EVT_INVALID_CHANNEL_PATH                                            syscall.Errno = 15000
        ERROR_EVT_INVALID_QUERY                                                   syscall.Errno = 15001
        ERROR_EVT_PUBLISHER_METADATA_NOT_FOUND                                    syscall.Errno = 15002
@@ -3093,6 +3107,7 @@ const (
        ERROR_PRI_MERGE_RESOURCE_PACKAGE_REQUIRED                                 syscall.Errno = 15157
        ERROR_PRI_MERGE_INVALID_FILE_NAME                                         syscall.Errno = 15158
        ERROR_MRM_PACKAGE_NOT_FOUND                                               syscall.Errno = 15159
+       ERROR_MRM_MISSING_DEFAULT_LANGUAGE                                        syscall.Errno = 15160
        ERROR_MCA_INVALID_CAPABILITIES_STRING                                     syscall.Errno = 15200
        ERROR_MCA_INVALID_VCP_VERSION                                             syscall.Errno = 15201
        ERROR_MCA_MONITOR_VIOLATES_MCCS_SPECIFICATION                             syscall.Errno = 15202
@@ -3167,6 +3182,15 @@ const (
        ERROR_DEPLOYMENT_OPTION_NOT_SUPPORTED                                     syscall.Errno = 15645
        ERROR_APPINSTALLER_ACTIVATION_BLOCKED                                     syscall.Errno = 15646
        ERROR_REGISTRATION_FROM_REMOTE_DRIVE_NOT_SUPPORTED                        syscall.Errno = 15647
+       ERROR_APPX_RAW_DATA_WRITE_FAILED                                          syscall.Errno = 15648
+       ERROR_DEPLOYMENT_BLOCKED_BY_VOLUME_POLICY_PACKAGE                         syscall.Errno = 15649
+       ERROR_DEPLOYMENT_BLOCKED_BY_VOLUME_POLICY_MACHINE                         syscall.Errno = 15650
+       ERROR_DEPLOYMENT_BLOCKED_BY_PROFILE_POLICY                                syscall.Errno = 15651
+       ERROR_DEPLOYMENT_FAILED_CONFLICTING_MUTABLE_PACKAGE_DIRECTORY             syscall.Errno = 15652
+       ERROR_SINGLETON_RESOURCE_INSTALLED_IN_ACTIVE_USER                         syscall.Errno = 15653
+       ERROR_DIFFERENT_VERSION_OF_PACKAGED_SERVICE_INSTALLED                     syscall.Errno = 15654
+       ERROR_SERVICE_EXISTS_AS_NON_PACKAGED_SERVICE                              syscall.Errno = 15655
+       ERROR_PACKAGED_SERVICE_REQUIRES_ADMIN_PRIVILEGES                          syscall.Errno = 15656
        APPMODEL_ERROR_NO_PACKAGE                                                 syscall.Errno = 15700
        APPMODEL_ERROR_PACKAGE_RUNTIME_CORRUPT                                    syscall.Errno = 15701
        APPMODEL_ERROR_PACKAGE_IDENTITY_CORRUPT                                   syscall.Errno = 15702
@@ -3174,6 +3198,7 @@ const (
        APPMODEL_ERROR_DYNAMIC_PROPERTY_READ_FAILED                               syscall.Errno = 15704
        APPMODEL_ERROR_DYNAMIC_PROPERTY_INVALID                                   syscall.Errno = 15705
        APPMODEL_ERROR_PACKAGE_NOT_AVAILABLE                                      syscall.Errno = 15706
+       APPMODEL_ERROR_NO_MUTABLE_DIRECTORY                                       syscall.Errno = 15707
        ERROR_STATE_LOAD_STORE_FAILED                                             syscall.Errno = 15800
        ERROR_STATE_GET_VERSION_FAILED                                            syscall.Errno = 15801
        ERROR_STATE_SET_VERSION_FAILED                                            syscall.Errno = 15802
@@ -3204,7 +3229,8 @@ const (
        E_NOT_SET                                                                               = ERROR_NOT_FOUND
        E_NOT_VALID_STATE                                                                       = ERROR_INVALID_STATE
        E_NOT_SUFFICIENT_BUFFER                                                                 = ERROR_INSUFFICIENT_BUFFER
-       E_TIME_CRITICAL_THREAD                                                                  = ERROR_TIME_CRITICAL_THREAD
+       E_TIME_SENSITIVE_THREAD                                                                 = ERROR_TIME_SENSITIVE_THREAD
+       E_NO_TASK_QUEUE                                                                         = ERROR_NO_TASK_QUEUE
        NOERROR                                                                   syscall.Errno = 0
        E_UNEXPECTED                                                              Handle        = 0x8000FFFF
        E_NOTIMPL                                                                 Handle        = 0x80004001
@@ -3966,6 +3992,7 @@ const (
        SEC_I_COMPLETE_NEEDED                                                     Handle        = 0x00090313
        SEC_I_COMPLETE_AND_CONTINUE                                               Handle        = 0x00090314
        SEC_I_LOCAL_LOGON                                                         Handle        = 0x00090315
+       SEC_I_GENERIC_EXTENSION_RECEIVED                                          Handle        = 0x00090316
        SEC_E_BAD_PKGID                                                           Handle        = 0x80090316
        SEC_E_CONTEXT_EXPIRED                                                     Handle        = 0x80090317
        SEC_I_CONTEXT_EXPIRED                                                     Handle        = 0x00090317
@@ -4033,6 +4060,8 @@ const (
        SEC_E_APPLICATION_PROTOCOL_MISMATCH                                       Handle        = 0x80090367
        SEC_I_ASYNC_CALL_PENDING                                                  Handle        = 0x00090368
        SEC_E_INVALID_UPN_NAME                                                    Handle        = 0x80090369
+       SEC_E_EXT_BUFFER_TOO_SMALL                                                Handle        = 0x8009036A
+       SEC_E_INSUFFICIENT_BUFFERS                                                Handle        = 0x8009036B
        SEC_E_NO_SPM                                                                            = SEC_E_INTERNAL_ERROR
        SEC_E_NOT_SUPPORTED                                                                     = SEC_E_UNSUPPORTED_FUNCTION
        CRYPT_E_MSG_ERROR                                                         Handle        = 0x80091001
@@ -4637,6 +4666,8 @@ const (
        ERROR_GRAPHICS_PRESENT_INVALID_WINDOW                                     Handle        = 0xC026200F
        ERROR_GRAPHICS_PRESENT_BUFFER_NOT_BOUND                                   Handle        = 0xC0262010
        ERROR_GRAPHICS_VAIL_STATE_CHANGED                                         Handle        = 0xC0262011
+       ERROR_GRAPHICS_INDIRECT_DISPLAY_ABANDON_SWAPCHAIN                         Handle        = 0xC0262012
+       ERROR_GRAPHICS_INDIRECT_DISPLAY_DEVICE_STOPPED                            Handle        = 0xC0262013
        ERROR_GRAPHICS_NO_VIDEO_MEMORY                                            Handle        = 0xC0262100
        ERROR_GRAPHICS_CANT_LOCK_MEMORY                                           Handle        = 0xC0262101
        ERROR_GRAPHICS_ALLOCATION_BUSY                                            Handle        = 0xC0262102
@@ -5393,6 +5424,13 @@ const (
        FVE_E_NOT_DE_VOLUME                                                       Handle        = 0x803100D7
        FVE_E_PROTECTION_CANNOT_BE_DISABLED                                       Handle        = 0x803100D8
        FVE_E_OSV_KSR_NOT_ALLOWED                                                 Handle        = 0x803100D9
+       FVE_E_AD_BACKUP_REQUIRED_POLICY_NOT_SET_OS_DRIVE                          Handle        = 0x803100DA
+       FVE_E_AD_BACKUP_REQUIRED_POLICY_NOT_SET_FIXED_DRIVE                       Handle        = 0x803100DB
+       FVE_E_AD_BACKUP_REQUIRED_POLICY_NOT_SET_REMOVABLE_DRIVE                   Handle        = 0x803100DC
+       FVE_E_KEY_ROTATION_NOT_SUPPORTED                                          Handle        = 0x803100DD
+       FVE_E_EXECUTE_REQUEST_SENT_TOO_SOON                                       Handle        = 0x803100DE
+       FVE_E_KEY_ROTATION_NOT_ENABLED                                            Handle        = 0x803100DF
+       FVE_E_DEVICE_NOT_JOINED                                                   Handle        = 0x803100E0
        FWP_E_CALLOUT_NOT_FOUND                                                   Handle        = 0x80320001
        FWP_E_CONDITION_NOT_FOUND                                                 Handle        = 0x80320002
        FWP_E_FILTER_NOT_FOUND                                                    Handle        = 0x80320003
@@ -5881,6 +5919,12 @@ const (
        GCN_E_NETCOMPARTMENT_NOT_FOUND                                            Handle        = 0x803B0027
        GCN_E_NETINTERFACE_NOT_FOUND                                              Handle        = 0x803B0028
        GCN_E_DEFAULTNAMESPACE_EXISTS                                             Handle        = 0x803B0029
+       HCN_E_ICS_DISABLED                                                        Handle        = 0x803B002A
+       HCN_E_ENDPOINT_NAMESPACE_ALREADY_EXISTS                                   Handle        = 0x803B002B
+       HCN_E_ENTITY_HAS_REFERENCES                                               Handle        = 0x803B002C
+       HCN_E_INVALID_INTERNAL_PORT                                               Handle        = 0x803B002D
+       HCN_E_NAMESPACE_ATTACH_FAILED                                             Handle        = 0x803B002E
+       HCN_E_ADDR_INVALID_OR_RESERVED                                            Handle        = 0x803B002F
        SDIAG_E_CANCELLED                                                         syscall.Errno = 0x803C0100
        SDIAG_E_SCRIPT                                                            syscall.Errno = 0x803C0101
        SDIAG_E_POWERSHELL                                                        syscall.Errno = 0x803C0102
@@ -6846,8 +6890,2579 @@ const (
        UTC_E_INSUFFICIENT_SPACE_TO_START_TRACE                                   Handle        = 0x87C51059
        UTC_E_ESCALATION_CANCELLED_AT_SHUTDOWN                                    Handle        = 0x87C5105A
        UTC_E_GETFILEINFOACTION_FILE_NOT_APPROVED                                 Handle        = 0x87C5105B
+       UTC_E_SETREGKEYACTION_TYPE_NOT_APPROVED                                   Handle        = 0x87C5105C
        WINML_ERR_INVALID_DEVICE                                                  Handle        = 0x88900001
        WINML_ERR_INVALID_BINDING                                                 Handle        = 0x88900002
        WINML_ERR_VALUE_NOTFOUND                                                  Handle        = 0x88900003
        WINML_ERR_SIZE_MISMATCH                                                   Handle        = 0x88900004
+       STATUS_WAIT_0                                                             NTStatus      = 0x00000000
+       STATUS_SUCCESS                                                            NTStatus      = 0x00000000
+       STATUS_WAIT_1                                                             NTStatus      = 0x00000001
+       STATUS_WAIT_2                                                             NTStatus      = 0x00000002
+       STATUS_WAIT_3                                                             NTStatus      = 0x00000003
+       STATUS_WAIT_63                                                            NTStatus      = 0x0000003F
+       STATUS_ABANDONED                                                          NTStatus      = 0x00000080
+       STATUS_ABANDONED_WAIT_0                                                   NTStatus      = 0x00000080
+       STATUS_ABANDONED_WAIT_63                                                  NTStatus      = 0x000000BF
+       STATUS_USER_APC                                                           NTStatus      = 0x000000C0
+       STATUS_ALREADY_COMPLETE                                                   NTStatus      = 0x000000FF
+       STATUS_KERNEL_APC                                                         NTStatus      = 0x00000100
+       STATUS_ALERTED                                                            NTStatus      = 0x00000101
+       STATUS_TIMEOUT                                                            NTStatus      = 0x00000102
+       STATUS_PENDING                                                            NTStatus      = 0x00000103
+       STATUS_REPARSE                                                            NTStatus      = 0x00000104
+       STATUS_MORE_ENTRIES                                                       NTStatus      = 0x00000105
+       STATUS_NOT_ALL_ASSIGNED                                                   NTStatus      = 0x00000106
+       STATUS_SOME_NOT_MAPPED                                                    NTStatus      = 0x00000107
+       STATUS_OPLOCK_BREAK_IN_PROGRESS                                           NTStatus      = 0x00000108
+       STATUS_VOLUME_MOUNTED                                                     NTStatus      = 0x00000109
+       STATUS_RXACT_COMMITTED                                                    NTStatus      = 0x0000010A
+       STATUS_NOTIFY_CLEANUP                                                     NTStatus      = 0x0000010B
+       STATUS_NOTIFY_ENUM_DIR                                                    NTStatus      = 0x0000010C
+       STATUS_NO_QUOTAS_FOR_ACCOUNT                                              NTStatus      = 0x0000010D
+       STATUS_PRIMARY_TRANSPORT_CONNECT_FAILED                                   NTStatus      = 0x0000010E
+       STATUS_PAGE_FAULT_TRANSITION                                              NTStatus      = 0x00000110
+       STATUS_PAGE_FAULT_DEMAND_ZERO                                             NTStatus      = 0x00000111
+       STATUS_PAGE_FAULT_COPY_ON_WRITE                                           NTStatus      = 0x00000112
+       STATUS_PAGE_FAULT_GUARD_PAGE                                              NTStatus      = 0x00000113
+       STATUS_PAGE_FAULT_PAGING_FILE                                             NTStatus      = 0x00000114
+       STATUS_CACHE_PAGE_LOCKED                                                  NTStatus      = 0x00000115
+       STATUS_CRASH_DUMP                                                         NTStatus      = 0x00000116
+       STATUS_BUFFER_ALL_ZEROS                                                   NTStatus      = 0x00000117
+       STATUS_REPARSE_OBJECT                                                     NTStatus      = 0x00000118
+       STATUS_RESOURCE_REQUIREMENTS_CHANGED                                      NTStatus      = 0x00000119
+       STATUS_TRANSLATION_COMPLETE                                               NTStatus      = 0x00000120
+       STATUS_DS_MEMBERSHIP_EVALUATED_LOCALLY                                    NTStatus      = 0x00000121
+       STATUS_NOTHING_TO_TERMINATE                                               NTStatus      = 0x00000122
+       STATUS_PROCESS_NOT_IN_JOB                                                 NTStatus      = 0x00000123
+       STATUS_PROCESS_IN_JOB                                                     NTStatus      = 0x00000124
+       STATUS_VOLSNAP_HIBERNATE_READY                                            NTStatus      = 0x00000125
+       STATUS_FSFILTER_OP_COMPLETED_SUCCESSFULLY                                 NTStatus      = 0x00000126
+       STATUS_INTERRUPT_VECTOR_ALREADY_CONNECTED                                 NTStatus      = 0x00000127
+       STATUS_INTERRUPT_STILL_CONNECTED                                          NTStatus      = 0x00000128
+       STATUS_PROCESS_CLONED                                                     NTStatus      = 0x00000129
+       STATUS_FILE_LOCKED_WITH_ONLY_READERS                                      NTStatus      = 0x0000012A
+       STATUS_FILE_LOCKED_WITH_WRITERS                                           NTStatus      = 0x0000012B
+       STATUS_VALID_IMAGE_HASH                                                   NTStatus      = 0x0000012C
+       STATUS_VALID_CATALOG_HASH                                                 NTStatus      = 0x0000012D
+       STATUS_VALID_STRONG_CODE_HASH                                             NTStatus      = 0x0000012E
+       STATUS_GHOSTED                                                            NTStatus      = 0x0000012F
+       STATUS_DATA_OVERWRITTEN                                                   NTStatus      = 0x00000130
+       STATUS_RESOURCEMANAGER_READ_ONLY                                          NTStatus      = 0x00000202
+       STATUS_RING_PREVIOUSLY_EMPTY                                              NTStatus      = 0x00000210
+       STATUS_RING_PREVIOUSLY_FULL                                               NTStatus      = 0x00000211
+       STATUS_RING_PREVIOUSLY_ABOVE_QUOTA                                        NTStatus      = 0x00000212
+       STATUS_RING_NEWLY_EMPTY                                                   NTStatus      = 0x00000213
+       STATUS_RING_SIGNAL_OPPOSITE_ENDPOINT                                      NTStatus      = 0x00000214
+       STATUS_OPLOCK_SWITCHED_TO_NEW_HANDLE                                      NTStatus      = 0x00000215
+       STATUS_OPLOCK_HANDLE_CLOSED                                               NTStatus      = 0x00000216
+       STATUS_WAIT_FOR_OPLOCK                                                    NTStatus      = 0x00000367
+       STATUS_REPARSE_GLOBAL                                                     NTStatus      = 0x00000368
+       STATUS_FLT_IO_COMPLETE                                                    NTStatus      = 0x001C0001
+       STATUS_OBJECT_NAME_EXISTS                                                 NTStatus      = 0x40000000
+       STATUS_THREAD_WAS_SUSPENDED                                               NTStatus      = 0x40000001
+       STATUS_WORKING_SET_LIMIT_RANGE                                            NTStatus      = 0x40000002
+       STATUS_IMAGE_NOT_AT_BASE                                                  NTStatus      = 0x40000003
+       STATUS_RXACT_STATE_CREATED                                                NTStatus      = 0x40000004
+       STATUS_SEGMENT_NOTIFICATION                                               NTStatus      = 0x40000005
+       STATUS_LOCAL_USER_SESSION_KEY                                             NTStatus      = 0x40000006
+       STATUS_BAD_CURRENT_DIRECTORY                                              NTStatus      = 0x40000007
+       STATUS_SERIAL_MORE_WRITES                                                 NTStatus      = 0x40000008
+       STATUS_REGISTRY_RECOVERED                                                 NTStatus      = 0x40000009
+       STATUS_FT_READ_RECOVERY_FROM_BACKUP                                       NTStatus      = 0x4000000A
+       STATUS_FT_WRITE_RECOVERY                                                  NTStatus      = 0x4000000B
+       STATUS_SERIAL_COUNTER_TIMEOUT                                             NTStatus      = 0x4000000C
+       STATUS_NULL_LM_PASSWORD                                                   NTStatus      = 0x4000000D
+       STATUS_IMAGE_MACHINE_TYPE_MISMATCH                                        NTStatus      = 0x4000000E
+       STATUS_RECEIVE_PARTIAL                                                    NTStatus      = 0x4000000F
+       STATUS_RECEIVE_EXPEDITED                                                  NTStatus      = 0x40000010
+       STATUS_RECEIVE_PARTIAL_EXPEDITED                                          NTStatus      = 0x40000011
+       STATUS_EVENT_DONE                                                         NTStatus      = 0x40000012
+       STATUS_EVENT_PENDING                                                      NTStatus      = 0x40000013
+       STATUS_CHECKING_FILE_SYSTEM                                               NTStatus      = 0x40000014
+       STATUS_FATAL_APP_EXIT                                                     NTStatus      = 0x40000015
+       STATUS_PREDEFINED_HANDLE                                                  NTStatus      = 0x40000016
+       STATUS_WAS_UNLOCKED                                                       NTStatus      = 0x40000017
+       STATUS_SERVICE_NOTIFICATION                                               NTStatus      = 0x40000018
+       STATUS_WAS_LOCKED                                                         NTStatus      = 0x40000019
+       STATUS_LOG_HARD_ERROR                                                     NTStatus      = 0x4000001A
+       STATUS_ALREADY_WIN32                                                      NTStatus      = 0x4000001B
+       STATUS_WX86_UNSIMULATE                                                    NTStatus      = 0x4000001C
+       STATUS_WX86_CONTINUE                                                      NTStatus      = 0x4000001D
+       STATUS_WX86_SINGLE_STEP                                                   NTStatus      = 0x4000001E
+       STATUS_WX86_BREAKPOINT                                                    NTStatus      = 0x4000001F
+       STATUS_WX86_EXCEPTION_CONTINUE                                            NTStatus      = 0x40000020
+       STATUS_WX86_EXCEPTION_LASTCHANCE                                          NTStatus      = 0x40000021
+       STATUS_WX86_EXCEPTION_CHAIN                                               NTStatus      = 0x40000022
+       STATUS_IMAGE_MACHINE_TYPE_MISMATCH_EXE                                    NTStatus      = 0x40000023
+       STATUS_NO_YIELD_PERFORMED                                                 NTStatus      = 0x40000024
+       STATUS_TIMER_RESUME_IGNORED                                               NTStatus      = 0x40000025
+       STATUS_ARBITRATION_UNHANDLED                                              NTStatus      = 0x40000026
+       STATUS_CARDBUS_NOT_SUPPORTED                                              NTStatus      = 0x40000027
+       STATUS_WX86_CREATEWX86TIB                                                 NTStatus      = 0x40000028
+       STATUS_MP_PROCESSOR_MISMATCH                                              NTStatus      = 0x40000029
+       STATUS_HIBERNATED                                                         NTStatus      = 0x4000002A
+       STATUS_RESUME_HIBERNATION                                                 NTStatus      = 0x4000002B
+       STATUS_FIRMWARE_UPDATED                                                   NTStatus      = 0x4000002C
+       STATUS_DRIVERS_LEAKING_LOCKED_PAGES                                       NTStatus      = 0x4000002D
+       STATUS_MESSAGE_RETRIEVED                                                  NTStatus      = 0x4000002E
+       STATUS_SYSTEM_POWERSTATE_TRANSITION                                       NTStatus      = 0x4000002F
+       STATUS_ALPC_CHECK_COMPLETION_LIST                                         NTStatus      = 0x40000030
+       STATUS_SYSTEM_POWERSTATE_COMPLEX_TRANSITION                               NTStatus      = 0x40000031
+       STATUS_ACCESS_AUDIT_BY_POLICY                                             NTStatus      = 0x40000032
+       STATUS_ABANDON_HIBERFILE                                                  NTStatus      = 0x40000033
+       STATUS_BIZRULES_NOT_ENABLED                                               NTStatus      = 0x40000034
+       STATUS_FT_READ_FROM_COPY                                                  NTStatus      = 0x40000035
+       STATUS_IMAGE_AT_DIFFERENT_BASE                                            NTStatus      = 0x40000036
+       STATUS_PATCH_DEFERRED                                                     NTStatus      = 0x40000037
+       STATUS_HEURISTIC_DAMAGE_POSSIBLE                                          NTStatus      = 0x40190001
+       STATUS_GUARD_PAGE_VIOLATION                                               NTStatus      = 0x80000001
+       STATUS_DATATYPE_MISALIGNMENT                                              NTStatus      = 0x80000002
+       STATUS_BREAKPOINT                                                         NTStatus      = 0x80000003
+       STATUS_SINGLE_STEP                                                        NTStatus      = 0x80000004
+       STATUS_BUFFER_OVERFLOW                                                    NTStatus      = 0x80000005
+       STATUS_NO_MORE_FILES                                                      NTStatus      = 0x80000006
+       STATUS_WAKE_SYSTEM_DEBUGGER                                               NTStatus      = 0x80000007
+       STATUS_HANDLES_CLOSED                                                     NTStatus      = 0x8000000A
+       STATUS_NO_INHERITANCE                                                     NTStatus      = 0x8000000B
+       STATUS_GUID_SUBSTITUTION_MADE                                             NTStatus      = 0x8000000C
+       STATUS_PARTIAL_COPY                                                       NTStatus      = 0x8000000D
+       STATUS_DEVICE_PAPER_EMPTY                                                 NTStatus      = 0x8000000E
+       STATUS_DEVICE_POWERED_OFF                                                 NTStatus      = 0x8000000F
+       STATUS_DEVICE_OFF_LINE                                                    NTStatus      = 0x80000010
+       STATUS_DEVICE_BUSY                                                        NTStatus      = 0x80000011
+       STATUS_NO_MORE_EAS                                                        NTStatus      = 0x80000012
+       STATUS_INVALID_EA_NAME                                                    NTStatus      = 0x80000013
+       STATUS_EA_LIST_INCONSISTENT                                               NTStatus      = 0x80000014
+       STATUS_INVALID_EA_FLAG                                                    NTStatus      = 0x80000015
+       STATUS_VERIFY_REQUIRED                                                    NTStatus      = 0x80000016
+       STATUS_EXTRANEOUS_INFORMATION                                             NTStatus      = 0x80000017
+       STATUS_RXACT_COMMIT_NECESSARY                                             NTStatus      = 0x80000018
+       STATUS_NO_MORE_ENTRIES                                                    NTStatus      = 0x8000001A
+       STATUS_FILEMARK_DETECTED                                                  NTStatus      = 0x8000001B
+       STATUS_MEDIA_CHANGED                                                      NTStatus      = 0x8000001C
+       STATUS_BUS_RESET                                                          NTStatus      = 0x8000001D
+       STATUS_END_OF_MEDIA                                                       NTStatus      = 0x8000001E
+       STATUS_BEGINNING_OF_MEDIA                                                 NTStatus      = 0x8000001F
+       STATUS_MEDIA_CHECK                                                        NTStatus      = 0x80000020
+       STATUS_SETMARK_DETECTED                                                   NTStatus      = 0x80000021
+       STATUS_NO_DATA_DETECTED                                                   NTStatus      = 0x80000022
+       STATUS_REDIRECTOR_HAS_OPEN_HANDLES                                        NTStatus      = 0x80000023
+       STATUS_SERVER_HAS_OPEN_HANDLES                                            NTStatus      = 0x80000024
+       STATUS_ALREADY_DISCONNECTED                                               NTStatus      = 0x80000025
+       STATUS_LONGJUMP                                                           NTStatus      = 0x80000026
+       STATUS_CLEANER_CARTRIDGE_INSTALLED                                        NTStatus      = 0x80000027
+       STATUS_PLUGPLAY_QUERY_VETOED                                              NTStatus      = 0x80000028
+       STATUS_UNWIND_CONSOLIDATE                                                 NTStatus      = 0x80000029
+       STATUS_REGISTRY_HIVE_RECOVERED                                            NTStatus      = 0x8000002A
+       STATUS_DLL_MIGHT_BE_INSECURE                                              NTStatus      = 0x8000002B
+       STATUS_DLL_MIGHT_BE_INCOMPATIBLE                                          NTStatus      = 0x8000002C
+       STATUS_STOPPED_ON_SYMLINK                                                 NTStatus      = 0x8000002D
+       STATUS_CANNOT_GRANT_REQUESTED_OPLOCK                                      NTStatus      = 0x8000002E
+       STATUS_NO_ACE_CONDITION                                                   NTStatus      = 0x8000002F
+       STATUS_DEVICE_SUPPORT_IN_PROGRESS                                         NTStatus      = 0x80000030
+       STATUS_DEVICE_POWER_CYCLE_REQUIRED                                        NTStatus      = 0x80000031
+       STATUS_NO_WORK_DONE                                                       NTStatus      = 0x80000032
+       STATUS_CLUSTER_NODE_ALREADY_UP                                            NTStatus      = 0x80130001
+       STATUS_CLUSTER_NODE_ALREADY_DOWN                                          NTStatus      = 0x80130002
+       STATUS_CLUSTER_NETWORK_ALREADY_ONLINE                                     NTStatus      = 0x80130003
+       STATUS_CLUSTER_NETWORK_ALREADY_OFFLINE                                    NTStatus      = 0x80130004
+       STATUS_CLUSTER_NODE_ALREADY_MEMBER                                        NTStatus      = 0x80130005
+       STATUS_FLT_BUFFER_TOO_SMALL                                               NTStatus      = 0x801C0001
+       STATUS_FVE_PARTIAL_METADATA                                               NTStatus      = 0x80210001
+       STATUS_FVE_TRANSIENT_STATE                                                NTStatus      = 0x80210002
+       STATUS_CLOUD_FILE_PROPERTY_BLOB_CHECKSUM_MISMATCH                         NTStatus      = 0x8000CF00
+       STATUS_UNSUCCESSFUL                                                       NTStatus      = 0xC0000001
+       STATUS_NOT_IMPLEMENTED                                                    NTStatus      = 0xC0000002
+       STATUS_INVALID_INFO_CLASS                                                 NTStatus      = 0xC0000003
+       STATUS_INFO_LENGTH_MISMATCH                                               NTStatus      = 0xC0000004
+       STATUS_ACCESS_VIOLATION                                                   NTStatus      = 0xC0000005
+       STATUS_IN_PAGE_ERROR                                                      NTStatus      = 0xC0000006
+       STATUS_PAGEFILE_QUOTA                                                     NTStatus      = 0xC0000007
+       STATUS_INVALID_HANDLE                                                     NTStatus      = 0xC0000008
+       STATUS_BAD_INITIAL_STACK                                                  NTStatus      = 0xC0000009
+       STATUS_BAD_INITIAL_PC                                                     NTStatus      = 0xC000000A
+       STATUS_INVALID_CID                                                        NTStatus      = 0xC000000B
+       STATUS_TIMER_NOT_CANCELED                                                 NTStatus      = 0xC000000C
+       STATUS_INVALID_PARAMETER                                                  NTStatus      = 0xC000000D
+       STATUS_NO_SUCH_DEVICE                                                     NTStatus      = 0xC000000E
+       STATUS_NO_SUCH_FILE                                                       NTStatus      = 0xC000000F
+       STATUS_INVALID_DEVICE_REQUEST                                             NTStatus      = 0xC0000010
+       STATUS_END_OF_FILE                                                        NTStatus      = 0xC0000011
+       STATUS_WRONG_VOLUME                                                       NTStatus      = 0xC0000012
+       STATUS_NO_MEDIA_IN_DEVICE                                                 NTStatus      = 0xC0000013
+       STATUS_UNRECOGNIZED_MEDIA                                                 NTStatus      = 0xC0000014
+       STATUS_NONEXISTENT_SECTOR                                                 NTStatus      = 0xC0000015
+       STATUS_MORE_PROCESSING_REQUIRED                                           NTStatus      = 0xC0000016
+       STATUS_NO_MEMORY                                                          NTStatus      = 0xC0000017
+       STATUS_CONFLICTING_ADDRESSES                                              NTStatus      = 0xC0000018
+       STATUS_NOT_MAPPED_VIEW                                                    NTStatus      = 0xC0000019
+       STATUS_UNABLE_TO_FREE_VM                                                  NTStatus      = 0xC000001A
+       STATUS_UNABLE_TO_DELETE_SECTION                                           NTStatus      = 0xC000001B
+       STATUS_INVALID_SYSTEM_SERVICE                                             NTStatus      = 0xC000001C
+       STATUS_ILLEGAL_INSTRUCTION                                                NTStatus      = 0xC000001D
+       STATUS_INVALID_LOCK_SEQUENCE                                              NTStatus      = 0xC000001E
+       STATUS_INVALID_VIEW_SIZE                                                  NTStatus      = 0xC000001F
+       STATUS_INVALID_FILE_FOR_SECTION                                           NTStatus      = 0xC0000020
+       STATUS_ALREADY_COMMITTED                                                  NTStatus      = 0xC0000021
+       STATUS_ACCESS_DENIED                                                      NTStatus      = 0xC0000022
+       STATUS_BUFFER_TOO_SMALL                                                   NTStatus      = 0xC0000023
+       STATUS_OBJECT_TYPE_MISMATCH                                               NTStatus      = 0xC0000024
+       STATUS_NONCONTINUABLE_EXCEPTION                                           NTStatus      = 0xC0000025
+       STATUS_INVALID_DISPOSITION                                                NTStatus      = 0xC0000026
+       STATUS_UNWIND                                                             NTStatus      = 0xC0000027
+       STATUS_BAD_STACK                                                          NTStatus      = 0xC0000028
+       STATUS_INVALID_UNWIND_TARGET                                              NTStatus      = 0xC0000029
+       STATUS_NOT_LOCKED                                                         NTStatus      = 0xC000002A
+       STATUS_PARITY_ERROR                                                       NTStatus      = 0xC000002B
+       STATUS_UNABLE_TO_DECOMMIT_VM                                              NTStatus      = 0xC000002C
+       STATUS_NOT_COMMITTED                                                      NTStatus      = 0xC000002D
+       STATUS_INVALID_PORT_ATTRIBUTES                                            NTStatus      = 0xC000002E
+       STATUS_PORT_MESSAGE_TOO_LONG                                              NTStatus      = 0xC000002F
+       STATUS_INVALID_PARAMETER_MIX                                              NTStatus      = 0xC0000030
+       STATUS_INVALID_QUOTA_LOWER                                                NTStatus      = 0xC0000031
+       STATUS_DISK_CORRUPT_ERROR                                                 NTStatus      = 0xC0000032
+       STATUS_OBJECT_NAME_INVALID                                                NTStatus      = 0xC0000033
+       STATUS_OBJECT_NAME_NOT_FOUND                                              NTStatus      = 0xC0000034
+       STATUS_OBJECT_NAME_COLLISION                                              NTStatus      = 0xC0000035
+       STATUS_PORT_DO_NOT_DISTURB                                                NTStatus      = 0xC0000036
+       STATUS_PORT_DISCONNECTED                                                  NTStatus      = 0xC0000037
+       STATUS_DEVICE_ALREADY_ATTACHED                                            NTStatus      = 0xC0000038
+       STATUS_OBJECT_PATH_INVALID                                                NTStatus      = 0xC0000039
+       STATUS_OBJECT_PATH_NOT_FOUND                                              NTStatus      = 0xC000003A
+       STATUS_OBJECT_PATH_SYNTAX_BAD                                             NTStatus      = 0xC000003B
+       STATUS_DATA_OVERRUN                                                       NTStatus      = 0xC000003C
+       STATUS_DATA_LATE_ERROR                                                    NTStatus      = 0xC000003D
+       STATUS_DATA_ERROR                                                         NTStatus      = 0xC000003E
+       STATUS_CRC_ERROR                                                          NTStatus      = 0xC000003F
+       STATUS_SECTION_TOO_BIG                                                    NTStatus      = 0xC0000040
+       STATUS_PORT_CONNECTION_REFUSED                                            NTStatus      = 0xC0000041
+       STATUS_INVALID_PORT_HANDLE                                                NTStatus      = 0xC0000042
+       STATUS_SHARING_VIOLATION                                                  NTStatus      = 0xC0000043
+       STATUS_QUOTA_EXCEEDED                                                     NTStatus      = 0xC0000044
+       STATUS_INVALID_PAGE_PROTECTION                                            NTStatus      = 0xC0000045
+       STATUS_MUTANT_NOT_OWNED                                                   NTStatus      = 0xC0000046
+       STATUS_SEMAPHORE_LIMIT_EXCEEDED                                           NTStatus      = 0xC0000047
+       STATUS_PORT_ALREADY_SET                                                   NTStatus      = 0xC0000048
+       STATUS_SECTION_NOT_IMAGE                                                  NTStatus      = 0xC0000049
+       STATUS_SUSPEND_COUNT_EXCEEDED                                             NTStatus      = 0xC000004A
+       STATUS_THREAD_IS_TERMINATING                                              NTStatus      = 0xC000004B
+       STATUS_BAD_WORKING_SET_LIMIT                                              NTStatus      = 0xC000004C
+       STATUS_INCOMPATIBLE_FILE_MAP                                              NTStatus      = 0xC000004D
+       STATUS_SECTION_PROTECTION                                                 NTStatus      = 0xC000004E
+       STATUS_EAS_NOT_SUPPORTED                                                  NTStatus      = 0xC000004F
+       STATUS_EA_TOO_LARGE                                                       NTStatus      = 0xC0000050
+       STATUS_NONEXISTENT_EA_ENTRY                                               NTStatus      = 0xC0000051
+       STATUS_NO_EAS_ON_FILE                                                     NTStatus      = 0xC0000052
+       STATUS_EA_CORRUPT_ERROR                                                   NTStatus      = 0xC0000053
+       STATUS_FILE_LOCK_CONFLICT                                                 NTStatus      = 0xC0000054
+       STATUS_LOCK_NOT_GRANTED                                                   NTStatus      = 0xC0000055
+       STATUS_DELETE_PENDING                                                     NTStatus      = 0xC0000056
+       STATUS_CTL_FILE_NOT_SUPPORTED                                             NTStatus      = 0xC0000057
+       STATUS_UNKNOWN_REVISION                                                   NTStatus      = 0xC0000058
+       STATUS_REVISION_MISMATCH                                                  NTStatus      = 0xC0000059
+       STATUS_INVALID_OWNER                                                      NTStatus      = 0xC000005A
+       STATUS_INVALID_PRIMARY_GROUP                                              NTStatus      = 0xC000005B
+       STATUS_NO_IMPERSONATION_TOKEN                                             NTStatus      = 0xC000005C
+       STATUS_CANT_DISABLE_MANDATORY                                             NTStatus      = 0xC000005D
+       STATUS_NO_LOGON_SERVERS                                                   NTStatus      = 0xC000005E
+       STATUS_NO_SUCH_LOGON_SESSION                                              NTStatus      = 0xC000005F
+       STATUS_NO_SUCH_PRIVILEGE                                                  NTStatus      = 0xC0000060
+       STATUS_PRIVILEGE_NOT_HELD                                                 NTStatus      = 0xC0000061
+       STATUS_INVALID_ACCOUNT_NAME                                               NTStatus      = 0xC0000062
+       STATUS_USER_EXISTS                                                        NTStatus      = 0xC0000063
+       STATUS_NO_SUCH_USER                                                       NTStatus      = 0xC0000064
+       STATUS_GROUP_EXISTS                                                       NTStatus      = 0xC0000065
+       STATUS_NO_SUCH_GROUP                                                      NTStatus      = 0xC0000066
+       STATUS_MEMBER_IN_GROUP                                                    NTStatus      = 0xC0000067
+       STATUS_MEMBER_NOT_IN_GROUP                                                NTStatus      = 0xC0000068
+       STATUS_LAST_ADMIN                                                         NTStatus      = 0xC0000069
+       STATUS_WRONG_PASSWORD                                                     NTStatus      = 0xC000006A
+       STATUS_ILL_FORMED_PASSWORD                                                NTStatus      = 0xC000006B
+       STATUS_PASSWORD_RESTRICTION                                               NTStatus      = 0xC000006C
+       STATUS_LOGON_FAILURE                                                      NTStatus      = 0xC000006D
+       STATUS_ACCOUNT_RESTRICTION                                                NTStatus      = 0xC000006E
+       STATUS_INVALID_LOGON_HOURS                                                NTStatus      = 0xC000006F
+       STATUS_INVALID_WORKSTATION                                                NTStatus      = 0xC0000070
+       STATUS_PASSWORD_EXPIRED                                                   NTStatus      = 0xC0000071
+       STATUS_ACCOUNT_DISABLED                                                   NTStatus      = 0xC0000072
+       STATUS_NONE_MAPPED                                                        NTStatus      = 0xC0000073
+       STATUS_TOO_MANY_LUIDS_REQUESTED                                           NTStatus      = 0xC0000074
+       STATUS_LUIDS_EXHAUSTED                                                    NTStatus      = 0xC0000075
+       STATUS_INVALID_SUB_AUTHORITY                                              NTStatus      = 0xC0000076
+       STATUS_INVALID_ACL                                                        NTStatus      = 0xC0000077
+       STATUS_INVALID_SID                                                        NTStatus      = 0xC0000078
+       STATUS_INVALID_SECURITY_DESCR                                             NTStatus      = 0xC0000079
+       STATUS_PROCEDURE_NOT_FOUND                                                NTStatus      = 0xC000007A
+       STATUS_INVALID_IMAGE_FORMAT                                               NTStatus      = 0xC000007B
+       STATUS_NO_TOKEN                                                           NTStatus      = 0xC000007C
+       STATUS_BAD_INHERITANCE_ACL                                                NTStatus      = 0xC000007D
+       STATUS_RANGE_NOT_LOCKED                                                   NTStatus      = 0xC000007E
+       STATUS_DISK_FULL                                                          NTStatus      = 0xC000007F
+       STATUS_SERVER_DISABLED                                                    NTStatus      = 0xC0000080
+       STATUS_SERVER_NOT_DISABLED                                                NTStatus      = 0xC0000081
+       STATUS_TOO_MANY_GUIDS_REQUESTED                                           NTStatus      = 0xC0000082
+       STATUS_GUIDS_EXHAUSTED                                                    NTStatus      = 0xC0000083
+       STATUS_INVALID_ID_AUTHORITY                                               NTStatus      = 0xC0000084
+       STATUS_AGENTS_EXHAUSTED                                                   NTStatus      = 0xC0000085
+       STATUS_INVALID_VOLUME_LABEL                                               NTStatus      = 0xC0000086
+       STATUS_SECTION_NOT_EXTENDED                                               NTStatus      = 0xC0000087
+       STATUS_NOT_MAPPED_DATA                                                    NTStatus      = 0xC0000088
+       STATUS_RESOURCE_DATA_NOT_FOUND                                            NTStatus      = 0xC0000089
+       STATUS_RESOURCE_TYPE_NOT_FOUND                                            NTStatus      = 0xC000008A
+       STATUS_RESOURCE_NAME_NOT_FOUND                                            NTStatus      = 0xC000008B
+       STATUS_ARRAY_BOUNDS_EXCEEDED                                              NTStatus      = 0xC000008C
+       STATUS_FLOAT_DENORMAL_OPERAND                                             NTStatus      = 0xC000008D
+       STATUS_FLOAT_DIVIDE_BY_ZERO                                               NTStatus      = 0xC000008E
+       STATUS_FLOAT_INEXACT_RESULT                                               NTStatus      = 0xC000008F
+       STATUS_FLOAT_INVALID_OPERATION                                            NTStatus      = 0xC0000090
+       STATUS_FLOAT_OVERFLOW                                                     NTStatus      = 0xC0000091
+       STATUS_FLOAT_STACK_CHECK                                                  NTStatus      = 0xC0000092
+       STATUS_FLOAT_UNDERFLOW                                                    NTStatus      = 0xC0000093
+       STATUS_INTEGER_DIVIDE_BY_ZERO                                             NTStatus      = 0xC0000094
+       STATUS_INTEGER_OVERFLOW                                                   NTStatus      = 0xC0000095
+       STATUS_PRIVILEGED_INSTRUCTION                                             NTStatus      = 0xC0000096
+       STATUS_TOO_MANY_PAGING_FILES                                              NTStatus      = 0xC0000097
+       STATUS_FILE_INVALID                                                       NTStatus      = 0xC0000098
+       STATUS_ALLOTTED_SPACE_EXCEEDED                                            NTStatus      = 0xC0000099
+       STATUS_INSUFFICIENT_RESOURCES                                             NTStatus      = 0xC000009A
+       STATUS_DFS_EXIT_PATH_FOUND                                                NTStatus      = 0xC000009B
+       STATUS_DEVICE_DATA_ERROR                                                  NTStatus      = 0xC000009C
+       STATUS_DEVICE_NOT_CONNECTED                                               NTStatus      = 0xC000009D
+       STATUS_DEVICE_POWER_FAILURE                                               NTStatus      = 0xC000009E
+       STATUS_FREE_VM_NOT_AT_BASE                                                NTStatus      = 0xC000009F
+       STATUS_MEMORY_NOT_ALLOCATED                                               NTStatus      = 0xC00000A0
+       STATUS_WORKING_SET_QUOTA                                                  NTStatus      = 0xC00000A1
+       STATUS_MEDIA_WRITE_PROTECTED                                              NTStatus      = 0xC00000A2
+       STATUS_DEVICE_NOT_READY                                                   NTStatus      = 0xC00000A3
+       STATUS_INVALID_GROUP_ATTRIBUTES                                           NTStatus      = 0xC00000A4
+       STATUS_BAD_IMPERSONATION_LEVEL                                            NTStatus      = 0xC00000A5
+       STATUS_CANT_OPEN_ANONYMOUS                                                NTStatus      = 0xC00000A6
+       STATUS_BAD_VALIDATION_CLASS                                               NTStatus      = 0xC00000A7
+       STATUS_BAD_TOKEN_TYPE                                                     NTStatus      = 0xC00000A8
+       STATUS_BAD_MASTER_BOOT_RECORD                                             NTStatus      = 0xC00000A9
+       STATUS_INSTRUCTION_MISALIGNMENT                                           NTStatus      = 0xC00000AA
+       STATUS_INSTANCE_NOT_AVAILABLE                                             NTStatus      = 0xC00000AB
+       STATUS_PIPE_NOT_AVAILABLE                                                 NTStatus      = 0xC00000AC
+       STATUS_INVALID_PIPE_STATE                                                 NTStatus      = 0xC00000AD
+       STATUS_PIPE_BUSY                                                          NTStatus      = 0xC00000AE
+       STATUS_ILLEGAL_FUNCTION                                                   NTStatus      = 0xC00000AF
+       STATUS_PIPE_DISCONNECTED                                                  NTStatus      = 0xC00000B0
+       STATUS_PIPE_CLOSING                                                       NTStatus      = 0xC00000B1
+       STATUS_PIPE_CONNECTED                                                     NTStatus      = 0xC00000B2
+       STATUS_PIPE_LISTENING                                                     NTStatus      = 0xC00000B3
+       STATUS_INVALID_READ_MODE                                                  NTStatus      = 0xC00000B4
+       STATUS_IO_TIMEOUT                                                         NTStatus      = 0xC00000B5
+       STATUS_FILE_FORCED_CLOSED                                                 NTStatus      = 0xC00000B6
+       STATUS_PROFILING_NOT_STARTED                                              NTStatus      = 0xC00000B7
+       STATUS_PROFILING_NOT_STOPPED                                              NTStatus      = 0xC00000B8
+       STATUS_COULD_NOT_INTERPRET                                                NTStatus      = 0xC00000B9
+       STATUS_FILE_IS_A_DIRECTORY                                                NTStatus      = 0xC00000BA
+       STATUS_NOT_SUPPORTED                                                      NTStatus      = 0xC00000BB
+       STATUS_REMOTE_NOT_LISTENING                                               NTStatus      = 0xC00000BC
+       STATUS_DUPLICATE_NAME                                                     NTStatus      = 0xC00000BD
+       STATUS_BAD_NETWORK_PATH                                                   NTStatus      = 0xC00000BE
+       STATUS_NETWORK_BUSY                                                       NTStatus      = 0xC00000BF
+       STATUS_DEVICE_DOES_NOT_EXIST                                              NTStatus      = 0xC00000C0
+       STATUS_TOO_MANY_COMMANDS                                                  NTStatus      = 0xC00000C1
+       STATUS_ADAPTER_HARDWARE_ERROR                                             NTStatus      = 0xC00000C2
+       STATUS_INVALID_NETWORK_RESPONSE                                           NTStatus      = 0xC00000C3
+       STATUS_UNEXPECTED_NETWORK_ERROR                                           NTStatus      = 0xC00000C4
+       STATUS_BAD_REMOTE_ADAPTER                                                 NTStatus      = 0xC00000C5
+       STATUS_PRINT_QUEUE_FULL                                                   NTStatus      = 0xC00000C6
+       STATUS_NO_SPOOL_SPACE                                                     NTStatus      = 0xC00000C7
+       STATUS_PRINT_CANCELLED                                                    NTStatus      = 0xC00000C8
+       STATUS_NETWORK_NAME_DELETED                                               NTStatus      = 0xC00000C9
+       STATUS_NETWORK_ACCESS_DENIED                                              NTStatus      = 0xC00000CA
+       STATUS_BAD_DEVICE_TYPE                                                    NTStatus      = 0xC00000CB
+       STATUS_BAD_NETWORK_NAME                                                   NTStatus      = 0xC00000CC
+       STATUS_TOO_MANY_NAMES                                                     NTStatus      = 0xC00000CD
+       STATUS_TOO_MANY_SESSIONS                                                  NTStatus      = 0xC00000CE
+       STATUS_SHARING_PAUSED                                                     NTStatus      = 0xC00000CF
+       STATUS_REQUEST_NOT_ACCEPTED                                               NTStatus      = 0xC00000D0
+       STATUS_REDIRECTOR_PAUSED                                                  NTStatus      = 0xC00000D1
+       STATUS_NET_WRITE_FAULT                                                    NTStatus      = 0xC00000D2
+       STATUS_PROFILING_AT_LIMIT                                                 NTStatus      = 0xC00000D3
+       STATUS_NOT_SAME_DEVICE                                                    NTStatus      = 0xC00000D4
+       STATUS_FILE_RENAMED                                                       NTStatus      = 0xC00000D5
+       STATUS_VIRTUAL_CIRCUIT_CLOSED                                             NTStatus      = 0xC00000D6
+       STATUS_NO_SECURITY_ON_OBJECT                                              NTStatus      = 0xC00000D7
+       STATUS_CANT_WAIT                                                          NTStatus      = 0xC00000D8
+       STATUS_PIPE_EMPTY                                                         NTStatus      = 0xC00000D9
+       STATUS_CANT_ACCESS_DOMAIN_INFO                                            NTStatus      = 0xC00000DA
+       STATUS_CANT_TERMINATE_SELF                                                NTStatus      = 0xC00000DB
+       STATUS_INVALID_SERVER_STATE                                               NTStatus      = 0xC00000DC
+       STATUS_INVALID_DOMAIN_STATE                                               NTStatus      = 0xC00000DD
+       STATUS_INVALID_DOMAIN_ROLE                                                NTStatus      = 0xC00000DE
+       STATUS_NO_SUCH_DOMAIN                                                     NTStatus      = 0xC00000DF
+       STATUS_DOMAIN_EXISTS                                                      NTStatus      = 0xC00000E0
+       STATUS_DOMAIN_LIMIT_EXCEEDED                                              NTStatus      = 0xC00000E1
+       STATUS_OPLOCK_NOT_GRANTED                                                 NTStatus      = 0xC00000E2
+       STATUS_INVALID_OPLOCK_PROTOCOL                                            NTStatus      = 0xC00000E3
+       STATUS_INTERNAL_DB_CORRUPTION                                             NTStatus      = 0xC00000E4
+       STATUS_INTERNAL_ERROR                                                     NTStatus      = 0xC00000E5
+       STATUS_GENERIC_NOT_MAPPED                                                 NTStatus      = 0xC00000E6
+       STATUS_BAD_DESCRIPTOR_FORMAT                                              NTStatus      = 0xC00000E7
+       STATUS_INVALID_USER_BUFFER                                                NTStatus      = 0xC00000E8
+       STATUS_UNEXPECTED_IO_ERROR                                                NTStatus      = 0xC00000E9
+       STATUS_UNEXPECTED_MM_CREATE_ERR                                           NTStatus      = 0xC00000EA
+       STATUS_UNEXPECTED_MM_MAP_ERROR                                            NTStatus      = 0xC00000EB
+       STATUS_UNEXPECTED_MM_EXTEND_ERR                                           NTStatus      = 0xC00000EC
+       STATUS_NOT_LOGON_PROCESS                                                  NTStatus      = 0xC00000ED
+       STATUS_LOGON_SESSION_EXISTS                                               NTStatus      = 0xC00000EE
+       STATUS_INVALID_PARAMETER_1                                                NTStatus      = 0xC00000EF
+       STATUS_INVALID_PARAMETER_2                                                NTStatus      = 0xC00000F0
+       STATUS_INVALID_PARAMETER_3                                                NTStatus      = 0xC00000F1
+       STATUS_INVALID_PARAMETER_4                                                NTStatus      = 0xC00000F2
+       STATUS_INVALID_PARAMETER_5                                                NTStatus      = 0xC00000F3
+       STATUS_INVALID_PARAMETER_6                                                NTStatus      = 0xC00000F4
+       STATUS_INVALID_PARAMETER_7                                                NTStatus      = 0xC00000F5
+       STATUS_INVALID_PARAMETER_8                                                NTStatus      = 0xC00000F6
+       STATUS_INVALID_PARAMETER_9                                                NTStatus      = 0xC00000F7
+       STATUS_INVALID_PARAMETER_10                                               NTStatus      = 0xC00000F8
+       STATUS_INVALID_PARAMETER_11                                               NTStatus      = 0xC00000F9
+       STATUS_INVALID_PARAMETER_12                                               NTStatus      = 0xC00000FA
+       STATUS_REDIRECTOR_NOT_STARTED                                             NTStatus      = 0xC00000FB
+       STATUS_REDIRECTOR_STARTED                                                 NTStatus      = 0xC00000FC
+       STATUS_STACK_OVERFLOW                                                     NTStatus      = 0xC00000FD
+       STATUS_NO_SUCH_PACKAGE                                                    NTStatus      = 0xC00000FE
+       STATUS_BAD_FUNCTION_TABLE                                                 NTStatus      = 0xC00000FF
+       STATUS_VARIABLE_NOT_FOUND                                                 NTStatus      = 0xC0000100
+       STATUS_DIRECTORY_NOT_EMPTY                                                NTStatus      = 0xC0000101
+       STATUS_FILE_CORRUPT_ERROR                                                 NTStatus      = 0xC0000102
+       STATUS_NOT_A_DIRECTORY                                                    NTStatus      = 0xC0000103
+       STATUS_BAD_LOGON_SESSION_STATE                                            NTStatus      = 0xC0000104
+       STATUS_LOGON_SESSION_COLLISION                                            NTStatus      = 0xC0000105
+       STATUS_NAME_TOO_LONG                                                      NTStatus      = 0xC0000106
+       STATUS_FILES_OPEN                                                         NTStatus      = 0xC0000107
+       STATUS_CONNECTION_IN_USE                                                  NTStatus      = 0xC0000108
+       STATUS_MESSAGE_NOT_FOUND                                                  NTStatus      = 0xC0000109
+       STATUS_PROCESS_IS_TERMINATING                                             NTStatus      = 0xC000010A
+       STATUS_INVALID_LOGON_TYPE                                                 NTStatus      = 0xC000010B
+       STATUS_NO_GUID_TRANSLATION                                                NTStatus      = 0xC000010C
+       STATUS_CANNOT_IMPERSONATE                                                 NTStatus      = 0xC000010D
+       STATUS_IMAGE_ALREADY_LOADED                                               NTStatus      = 0xC000010E
+       STATUS_ABIOS_NOT_PRESENT                                                  NTStatus      = 0xC000010F
+       STATUS_ABIOS_LID_NOT_EXIST                                                NTStatus      = 0xC0000110
+       STATUS_ABIOS_LID_ALREADY_OWNED                                            NTStatus      = 0xC0000111
+       STATUS_ABIOS_NOT_LID_OWNER                                                NTStatus      = 0xC0000112
+       STATUS_ABIOS_INVALID_COMMAND                                              NTStatus      = 0xC0000113
+       STATUS_ABIOS_INVALID_LID                                                  NTStatus      = 0xC0000114
+       STATUS_ABIOS_SELECTOR_NOT_AVAILABLE                                       NTStatus      = 0xC0000115
+       STATUS_ABIOS_INVALID_SELECTOR                                             NTStatus      = 0xC0000116
+       STATUS_NO_LDT                                                             NTStatus      = 0xC0000117
+       STATUS_INVALID_LDT_SIZE                                                   NTStatus      = 0xC0000118
+       STATUS_INVALID_LDT_OFFSET                                                 NTStatus      = 0xC0000119
+       STATUS_INVALID_LDT_DESCRIPTOR                                             NTStatus      = 0xC000011A
+       STATUS_INVALID_IMAGE_NE_FORMAT                                            NTStatus      = 0xC000011B
+       STATUS_RXACT_INVALID_STATE                                                NTStatus      = 0xC000011C
+       STATUS_RXACT_COMMIT_FAILURE                                               NTStatus      = 0xC000011D
+       STATUS_MAPPED_FILE_SIZE_ZERO                                              NTStatus      = 0xC000011E
+       STATUS_TOO_MANY_OPENED_FILES                                              NTStatus      = 0xC000011F
+       STATUS_CANCELLED                                                          NTStatus      = 0xC0000120
+       STATUS_CANNOT_DELETE                                                      NTStatus      = 0xC0000121
+       STATUS_INVALID_COMPUTER_NAME                                              NTStatus      = 0xC0000122
+       STATUS_FILE_DELETED                                                       NTStatus      = 0xC0000123
+       STATUS_SPECIAL_ACCOUNT                                                    NTStatus      = 0xC0000124
+       STATUS_SPECIAL_GROUP                                                      NTStatus      = 0xC0000125
+       STATUS_SPECIAL_USER                                                       NTStatus      = 0xC0000126
+       STATUS_MEMBERS_PRIMARY_GROUP                                              NTStatus      = 0xC0000127
+       STATUS_FILE_CLOSED                                                        NTStatus      = 0xC0000128
+       STATUS_TOO_MANY_THREADS                                                   NTStatus      = 0xC0000129
+       STATUS_THREAD_NOT_IN_PROCESS                                              NTStatus      = 0xC000012A
+       STATUS_TOKEN_ALREADY_IN_USE                                               NTStatus      = 0xC000012B
+       STATUS_PAGEFILE_QUOTA_EXCEEDED                                            NTStatus      = 0xC000012C
+       STATUS_COMMITMENT_LIMIT                                                   NTStatus      = 0xC000012D
+       STATUS_INVALID_IMAGE_LE_FORMAT                                            NTStatus      = 0xC000012E
+       STATUS_INVALID_IMAGE_NOT_MZ                                               NTStatus      = 0xC000012F
+       STATUS_INVALID_IMAGE_PROTECT                                              NTStatus      = 0xC0000130
+       STATUS_INVALID_IMAGE_WIN_16                                               NTStatus      = 0xC0000131
+       STATUS_LOGON_SERVER_CONFLICT                                              NTStatus      = 0xC0000132
+       STATUS_TIME_DIFFERENCE_AT_DC                                              NTStatus      = 0xC0000133
+       STATUS_SYNCHRONIZATION_REQUIRED                                           NTStatus      = 0xC0000134
+       STATUS_DLL_NOT_FOUND                                                      NTStatus      = 0xC0000135
+       STATUS_OPEN_FAILED                                                        NTStatus      = 0xC0000136
+       STATUS_IO_PRIVILEGE_FAILED                                                NTStatus      = 0xC0000137
+       STATUS_ORDINAL_NOT_FOUND                                                  NTStatus      = 0xC0000138
+       STATUS_ENTRYPOINT_NOT_FOUND                                               NTStatus      = 0xC0000139
+       STATUS_CONTROL_C_EXIT                                                     NTStatus      = 0xC000013A
+       STATUS_LOCAL_DISCONNECT                                                   NTStatus      = 0xC000013B
+       STATUS_REMOTE_DISCONNECT                                                  NTStatus      = 0xC000013C
+       STATUS_REMOTE_RESOURCES                                                   NTStatus      = 0xC000013D
+       STATUS_LINK_FAILED                                                        NTStatus      = 0xC000013E
+       STATUS_LINK_TIMEOUT                                                       NTStatus      = 0xC000013F
+       STATUS_INVALID_CONNECTION                                                 NTStatus      = 0xC0000140
+       STATUS_INVALID_ADDRESS                                                    NTStatus      = 0xC0000141
+       STATUS_DLL_INIT_FAILED                                                    NTStatus      = 0xC0000142
+       STATUS_MISSING_SYSTEMFILE                                                 NTStatus      = 0xC0000143
+       STATUS_UNHANDLED_EXCEPTION                                                NTStatus      = 0xC0000144
+       STATUS_APP_INIT_FAILURE                                                   NTStatus      = 0xC0000145
+       STATUS_PAGEFILE_CREATE_FAILED                                             NTStatus      = 0xC0000146
+       STATUS_NO_PAGEFILE                                                        NTStatus      = 0xC0000147
+       STATUS_INVALID_LEVEL                                                      NTStatus      = 0xC0000148
+       STATUS_WRONG_PASSWORD_CORE                                                NTStatus      = 0xC0000149
+       STATUS_ILLEGAL_FLOAT_CONTEXT                                              NTStatus      = 0xC000014A
+       STATUS_PIPE_BROKEN                                                        NTStatus      = 0xC000014B
+       STATUS_REGISTRY_CORRUPT                                                   NTStatus      = 0xC000014C
+       STATUS_REGISTRY_IO_FAILED                                                 NTStatus      = 0xC000014D
+       STATUS_NO_EVENT_PAIR                                                      NTStatus      = 0xC000014E
+       STATUS_UNRECOGNIZED_VOLUME                                                NTStatus      = 0xC000014F
+       STATUS_SERIAL_NO_DEVICE_INITED                                            NTStatus      = 0xC0000150
+       STATUS_NO_SUCH_ALIAS                                                      NTStatus      = 0xC0000151
+       STATUS_MEMBER_NOT_IN_ALIAS                                                NTStatus      = 0xC0000152
+       STATUS_MEMBER_IN_ALIAS                                                    NTStatus      = 0xC0000153
+       STATUS_ALIAS_EXISTS                                                       NTStatus      = 0xC0000154
+       STATUS_LOGON_NOT_GRANTED                                                  NTStatus      = 0xC0000155
+       STATUS_TOO_MANY_SECRETS                                                   NTStatus      = 0xC0000156
+       STATUS_SECRET_TOO_LONG                                                    NTStatus      = 0xC0000157
+       STATUS_INTERNAL_DB_ERROR                                                  NTStatus      = 0xC0000158
+       STATUS_FULLSCREEN_MODE                                                    NTStatus      = 0xC0000159
+       STATUS_TOO_MANY_CONTEXT_IDS                                               NTStatus      = 0xC000015A
+       STATUS_LOGON_TYPE_NOT_GRANTED                                             NTStatus      = 0xC000015B
+       STATUS_NOT_REGISTRY_FILE                                                  NTStatus      = 0xC000015C
+       STATUS_NT_CROSS_ENCRYPTION_REQUIRED                                       NTStatus      = 0xC000015D
+       STATUS_DOMAIN_CTRLR_CONFIG_ERROR                                          NTStatus      = 0xC000015E
+       STATUS_FT_MISSING_MEMBER                                                  NTStatus      = 0xC000015F
+       STATUS_ILL_FORMED_SERVICE_ENTRY                                           NTStatus      = 0xC0000160
+       STATUS_ILLEGAL_CHARACTER                                                  NTStatus      = 0xC0000161
+       STATUS_UNMAPPABLE_CHARACTER                                               NTStatus      = 0xC0000162
+       STATUS_UNDEFINED_CHARACTER                                                NTStatus      = 0xC0000163
+       STATUS_FLOPPY_VOLUME                                                      NTStatus      = 0xC0000164
+       STATUS_FLOPPY_ID_MARK_NOT_FOUND                                           NTStatus      = 0xC0000165
+       STATUS_FLOPPY_WRONG_CYLINDER                                              NTStatus      = 0xC0000166
+       STATUS_FLOPPY_UNKNOWN_ERROR                                               NTStatus      = 0xC0000167
+       STATUS_FLOPPY_BAD_REGISTERS                                               NTStatus      = 0xC0000168
+       STATUS_DISK_RECALIBRATE_FAILED                                            NTStatus      = 0xC0000169
+       STATUS_DISK_OPERATION_FAILED                                              NTStatus      = 0xC000016A
+       STATUS_DISK_RESET_FAILED                                                  NTStatus      = 0xC000016B
+       STATUS_SHARED_IRQ_BUSY                                                    NTStatus      = 0xC000016C
+       STATUS_FT_ORPHANING                                                       NTStatus      = 0xC000016D
+       STATUS_BIOS_FAILED_TO_CONNECT_INTERRUPT                                   NTStatus      = 0xC000016E
+       STATUS_PARTITION_FAILURE                                                  NTStatus      = 0xC0000172
+       STATUS_INVALID_BLOCK_LENGTH                                               NTStatus      = 0xC0000173
+       STATUS_DEVICE_NOT_PARTITIONED                                             NTStatus      = 0xC0000174
+       STATUS_UNABLE_TO_LOCK_MEDIA                                               NTStatus      = 0xC0000175
+       STATUS_UNABLE_TO_UNLOAD_MEDIA                                             NTStatus      = 0xC0000176
+       STATUS_EOM_OVERFLOW                                                       NTStatus      = 0xC0000177
+       STATUS_NO_MEDIA                                                           NTStatus      = 0xC0000178
+       STATUS_NO_SUCH_MEMBER                                                     NTStatus      = 0xC000017A
+       STATUS_INVALID_MEMBER                                                     NTStatus      = 0xC000017B
+       STATUS_KEY_DELETED                                                        NTStatus      = 0xC000017C
+       STATUS_NO_LOG_SPACE                                                       NTStatus      = 0xC000017D
+       STATUS_TOO_MANY_SIDS                                                      NTStatus      = 0xC000017E
+       STATUS_LM_CROSS_ENCRYPTION_REQUIRED                                       NTStatus      = 0xC000017F
+       STATUS_KEY_HAS_CHILDREN                                                   NTStatus      = 0xC0000180
+       STATUS_CHILD_MUST_BE_VOLATILE                                             NTStatus      = 0xC0000181
+       STATUS_DEVICE_CONFIGURATION_ERROR                                         NTStatus      = 0xC0000182
+       STATUS_DRIVER_INTERNAL_ERROR                                              NTStatus      = 0xC0000183
+       STATUS_INVALID_DEVICE_STATE                                               NTStatus      = 0xC0000184
+       STATUS_IO_DEVICE_ERROR                                                    NTStatus      = 0xC0000185
+       STATUS_DEVICE_PROTOCOL_ERROR                                              NTStatus      = 0xC0000186
+       STATUS_BACKUP_CONTROLLER                                                  NTStatus      = 0xC0000187
+       STATUS_LOG_FILE_FULL                                                      NTStatus      = 0xC0000188
+       STATUS_TOO_LATE                                                           NTStatus      = 0xC0000189
+       STATUS_NO_TRUST_LSA_SECRET                                                NTStatus      = 0xC000018A
+       STATUS_NO_TRUST_SAM_ACCOUNT                                               NTStatus      = 0xC000018B
+       STATUS_TRUSTED_DOMAIN_FAILURE                                             NTStatus      = 0xC000018C
+       STATUS_TRUSTED_RELATIONSHIP_FAILURE                                       NTStatus      = 0xC000018D
+       STATUS_EVENTLOG_FILE_CORRUPT                                              NTStatus      = 0xC000018E
+       STATUS_EVENTLOG_CANT_START                                                NTStatus      = 0xC000018F
+       STATUS_TRUST_FAILURE                                                      NTStatus      = 0xC0000190
+       STATUS_MUTANT_LIMIT_EXCEEDED                                              NTStatus      = 0xC0000191
+       STATUS_NETLOGON_NOT_STARTED                                               NTStatus      = 0xC0000192
+       STATUS_ACCOUNT_EXPIRED                                                    NTStatus      = 0xC0000193
+       STATUS_POSSIBLE_DEADLOCK                                                  NTStatus      = 0xC0000194
+       STATUS_NETWORK_CREDENTIAL_CONFLICT                                        NTStatus      = 0xC0000195
+       STATUS_REMOTE_SESSION_LIMIT                                               NTStatus      = 0xC0000196
+       STATUS_EVENTLOG_FILE_CHANGED                                              NTStatus      = 0xC0000197
+       STATUS_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT                                  NTStatus      = 0xC0000198
+       STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT                                  NTStatus      = 0xC0000199
+       STATUS_NOLOGON_SERVER_TRUST_ACCOUNT                                       NTStatus      = 0xC000019A
+       STATUS_DOMAIN_TRUST_INCONSISTENT                                          NTStatus      = 0xC000019B
+       STATUS_FS_DRIVER_REQUIRED                                                 NTStatus      = 0xC000019C
+       STATUS_IMAGE_ALREADY_LOADED_AS_DLL                                        NTStatus      = 0xC000019D
+       STATUS_INCOMPATIBLE_WITH_GLOBAL_SHORT_NAME_REGISTRY_SETTING               NTStatus      = 0xC000019E
+       STATUS_SHORT_NAMES_NOT_ENABLED_ON_VOLUME                                  NTStatus      = 0xC000019F
+       STATUS_SECURITY_STREAM_IS_INCONSISTENT                                    NTStatus      = 0xC00001A0
+       STATUS_INVALID_LOCK_RANGE                                                 NTStatus      = 0xC00001A1
+       STATUS_INVALID_ACE_CONDITION                                              NTStatus      = 0xC00001A2
+       STATUS_IMAGE_SUBSYSTEM_NOT_PRESENT                                        NTStatus      = 0xC00001A3
+       STATUS_NOTIFICATION_GUID_ALREADY_DEFINED                                  NTStatus      = 0xC00001A4
+       STATUS_INVALID_EXCEPTION_HANDLER                                          NTStatus      = 0xC00001A5
+       STATUS_DUPLICATE_PRIVILEGES                                               NTStatus      = 0xC00001A6
+       STATUS_NOT_ALLOWED_ON_SYSTEM_FILE                                         NTStatus      = 0xC00001A7
+       STATUS_REPAIR_NEEDED                                                      NTStatus      = 0xC00001A8
+       STATUS_QUOTA_NOT_ENABLED                                                  NTStatus      = 0xC00001A9
+       STATUS_NO_APPLICATION_PACKAGE                                             NTStatus      = 0xC00001AA
+       STATUS_FILE_METADATA_OPTIMIZATION_IN_PROGRESS                             NTStatus      = 0xC00001AB
+       STATUS_NOT_SAME_OBJECT                                                    NTStatus      = 0xC00001AC
+       STATUS_FATAL_MEMORY_EXHAUSTION                                            NTStatus      = 0xC00001AD
+       STATUS_ERROR_PROCESS_NOT_IN_JOB                                           NTStatus      = 0xC00001AE
+       STATUS_CPU_SET_INVALID                                                    NTStatus      = 0xC00001AF
+       STATUS_IO_DEVICE_INVALID_DATA                                             NTStatus      = 0xC00001B0
+       STATUS_IO_UNALIGNED_WRITE                                                 NTStatus      = 0xC00001B1
+       STATUS_NETWORK_OPEN_RESTRICTION                                           NTStatus      = 0xC0000201
+       STATUS_NO_USER_SESSION_KEY                                                NTStatus      = 0xC0000202
+       STATUS_USER_SESSION_DELETED                                               NTStatus      = 0xC0000203
+       STATUS_RESOURCE_LANG_NOT_FOUND                                            NTStatus      = 0xC0000204
+       STATUS_INSUFF_SERVER_RESOURCES                                            NTStatus      = 0xC0000205
+       STATUS_INVALID_BUFFER_SIZE                                                NTStatus      = 0xC0000206
+       STATUS_INVALID_ADDRESS_COMPONENT                                          NTStatus      = 0xC0000207
+       STATUS_INVALID_ADDRESS_WILDCARD                                           NTStatus      = 0xC0000208
+       STATUS_TOO_MANY_ADDRESSES                                                 NTStatus      = 0xC0000209
+       STATUS_ADDRESS_ALREADY_EXISTS                                             NTStatus      = 0xC000020A
+       STATUS_ADDRESS_CLOSED                                                     NTStatus      = 0xC000020B
+       STATUS_CONNECTION_DISCONNECTED                                            NTStatus      = 0xC000020C
+       STATUS_CONNECTION_RESET                                                   NTStatus      = 0xC000020D
+       STATUS_TOO_MANY_NODES                                                     NTStatus      = 0xC000020E
+       STATUS_TRANSACTION_ABORTED                                                NTStatus      = 0xC000020F
+       STATUS_TRANSACTION_TIMED_OUT                                              NTStatus      = 0xC0000210
+       STATUS_TRANSACTION_NO_RELEASE                                             NTStatus      = 0xC0000211
+       STATUS_TRANSACTION_NO_MATCH                                               NTStatus      = 0xC0000212
+       STATUS_TRANSACTION_RESPONDED                                              NTStatus      = 0xC0000213
+       STATUS_TRANSACTION_INVALID_ID                                             NTStatus      = 0xC0000214
+       STATUS_TRANSACTION_INVALID_TYPE                                           NTStatus      = 0xC0000215
+       STATUS_NOT_SERVER_SESSION                                                 NTStatus      = 0xC0000216
+       STATUS_NOT_CLIENT_SESSION                                                 NTStatus      = 0xC0000217
+       STATUS_CANNOT_LOAD_REGISTRY_FILE                                          NTStatus      = 0xC0000218
+       STATUS_DEBUG_ATTACH_FAILED                                                NTStatus      = 0xC0000219
+       STATUS_SYSTEM_PROCESS_TERMINATED                                          NTStatus      = 0xC000021A
+       STATUS_DATA_NOT_ACCEPTED                                                  NTStatus      = 0xC000021B
+       STATUS_NO_BROWSER_SERVERS_FOUND                                           NTStatus      = 0xC000021C
+       STATUS_VDM_HARD_ERROR                                                     NTStatus      = 0xC000021D
+       STATUS_DRIVER_CANCEL_TIMEOUT                                              NTStatus      = 0xC000021E
+       STATUS_REPLY_MESSAGE_MISMATCH                                             NTStatus      = 0xC000021F
+       STATUS_MAPPED_ALIGNMENT                                                   NTStatus      = 0xC0000220
+       STATUS_IMAGE_CHECKSUM_MISMATCH                                            NTStatus      = 0xC0000221
+       STATUS_LOST_WRITEBEHIND_DATA                                              NTStatus      = 0xC0000222
+       STATUS_CLIENT_SERVER_PARAMETERS_INVALID                                   NTStatus      = 0xC0000223
+       STATUS_PASSWORD_MUST_CHANGE                                               NTStatus      = 0xC0000224
+       STATUS_NOT_FOUND                                                          NTStatus      = 0xC0000225
+       STATUS_NOT_TINY_STREAM                                                    NTStatus      = 0xC0000226
+       STATUS_RECOVERY_FAILURE                                                   NTStatus      = 0xC0000227
+       STATUS_STACK_OVERFLOW_READ                                                NTStatus      = 0xC0000228
+       STATUS_FAIL_CHECK                                                         NTStatus      = 0xC0000229
+       STATUS_DUPLICATE_OBJECTID                                                 NTStatus      = 0xC000022A
+       STATUS_OBJECTID_EXISTS                                                    NTStatus      = 0xC000022B
+       STATUS_CONVERT_TO_LARGE                                                   NTStatus      = 0xC000022C
+       STATUS_RETRY                                                              NTStatus      = 0xC000022D
+       STATUS_FOUND_OUT_OF_SCOPE                                                 NTStatus      = 0xC000022E
+       STATUS_ALLOCATE_BUCKET                                                    NTStatus      = 0xC000022F
+       STATUS_PROPSET_NOT_FOUND                                                  NTStatus      = 0xC0000230
+       STATUS_MARSHALL_OVERFLOW                                                  NTStatus      = 0xC0000231
+       STATUS_INVALID_VARIANT                                                    NTStatus      = 0xC0000232
+       STATUS_DOMAIN_CONTROLLER_NOT_FOUND                                        NTStatus      = 0xC0000233
+       STATUS_ACCOUNT_LOCKED_OUT                                                 NTStatus      = 0xC0000234
+       STATUS_HANDLE_NOT_CLOSABLE                                                NTStatus      = 0xC0000235
+       STATUS_CONNECTION_REFUSED                                                 NTStatus      = 0xC0000236
+       STATUS_GRACEFUL_DISCONNECT                                                NTStatus      = 0xC0000237
+       STATUS_ADDRESS_ALREADY_ASSOCIATED                                         NTStatus      = 0xC0000238
+       STATUS_ADDRESS_NOT_ASSOCIATED                                             NTStatus      = 0xC0000239
+       STATUS_CONNECTION_INVALID                                                 NTStatus      = 0xC000023A
+       STATUS_CONNECTION_ACTIVE                                                  NTStatus      = 0xC000023B
+       STATUS_NETWORK_UNREACHABLE                                                NTStatus      = 0xC000023C
+       STATUS_HOST_UNREACHABLE                                                   NTStatus      = 0xC000023D
+       STATUS_PROTOCOL_UNREACHABLE                                               NTStatus      = 0xC000023E
+       STATUS_PORT_UNREACHABLE                                                   NTStatus      = 0xC000023F
+       STATUS_REQUEST_ABORTED                                                    NTStatus      = 0xC0000240
+       STATUS_CONNECTION_ABORTED                                                 NTStatus      = 0xC0000241
+       STATUS_BAD_COMPRESSION_BUFFER                                             NTStatus      = 0xC0000242
+       STATUS_USER_MAPPED_FILE                                                   NTStatus      = 0xC0000243
+       STATUS_AUDIT_FAILED                                                       NTStatus      = 0xC0000244
+       STATUS_TIMER_RESOLUTION_NOT_SET                                           NTStatus      = 0xC0000245
+       STATUS_CONNECTION_COUNT_LIMIT                                             NTStatus      = 0xC0000246
+       STATUS_LOGIN_TIME_RESTRICTION                                             NTStatus      = 0xC0000247
+       STATUS_LOGIN_WKSTA_RESTRICTION                                            NTStatus      = 0xC0000248
+       STATUS_IMAGE_MP_UP_MISMATCH                                               NTStatus      = 0xC0000249
+       STATUS_INSUFFICIENT_LOGON_INFO                                            NTStatus      = 0xC0000250
+       STATUS_BAD_DLL_ENTRYPOINT                                                 NTStatus      = 0xC0000251
+       STATUS_BAD_SERVICE_ENTRYPOINT                                             NTStatus      = 0xC0000252
+       STATUS_LPC_REPLY_LOST                                                     NTStatus      = 0xC0000253
+       STATUS_IP_ADDRESS_CONFLICT1                                               NTStatus      = 0xC0000254
+       STATUS_IP_ADDRESS_CONFLICT2                                               NTStatus      = 0xC0000255
+       STATUS_REGISTRY_QUOTA_LIMIT                                               NTStatus      = 0xC0000256
+       STATUS_PATH_NOT_COVERED                                                   NTStatus      = 0xC0000257
+       STATUS_NO_CALLBACK_ACTIVE                                                 NTStatus      = 0xC0000258
+       STATUS_LICENSE_QUOTA_EXCEEDED                                             NTStatus      = 0xC0000259
+       STATUS_PWD_TOO_SHORT                                                      NTStatus      = 0xC000025A
+       STATUS_PWD_TOO_RECENT                                                     NTStatus      = 0xC000025B
+       STATUS_PWD_HISTORY_CONFLICT                                               NTStatus      = 0xC000025C
+       STATUS_PLUGPLAY_NO_DEVICE                                                 NTStatus      = 0xC000025E
+       STATUS_UNSUPPORTED_COMPRESSION                                            NTStatus      = 0xC000025F
+       STATUS_INVALID_HW_PROFILE                                                 NTStatus      = 0xC0000260
+       STATUS_INVALID_PLUGPLAY_DEVICE_PATH                                       NTStatus      = 0xC0000261
+       STATUS_DRIVER_ORDINAL_NOT_FOUND                                           NTStatus      = 0xC0000262
+       STATUS_DRIVER_ENTRYPOINT_NOT_FOUND                                        NTStatus      = 0xC0000263
+       STATUS_RESOURCE_NOT_OWNED                                                 NTStatus      = 0xC0000264
+       STATUS_TOO_MANY_LINKS                                                     NTStatus      = 0xC0000265
+       STATUS_QUOTA_LIST_INCONSISTENT                                            NTStatus      = 0xC0000266
+       STATUS_FILE_IS_OFFLINE                                                    NTStatus      = 0xC0000267
+       STATUS_EVALUATION_EXPIRATION                                              NTStatus      = 0xC0000268
+       STATUS_ILLEGAL_DLL_RELOCATION                                             NTStatus      = 0xC0000269
+       STATUS_LICENSE_VIOLATION                                                  NTStatus      = 0xC000026A
+       STATUS_DLL_INIT_FAILED_LOGOFF                                             NTStatus      = 0xC000026B
+       STATUS_DRIVER_UNABLE_TO_LOAD                                              NTStatus      = 0xC000026C
+       STATUS_DFS_UNAVAILABLE                                                    NTStatus      = 0xC000026D
+       STATUS_VOLUME_DISMOUNTED                                                  NTStatus      = 0xC000026E
+       STATUS_WX86_INTERNAL_ERROR                                                NTStatus      = 0xC000026F
+       STATUS_WX86_FLOAT_STACK_CHECK                                             NTStatus      = 0xC0000270
+       STATUS_VALIDATE_CONTINUE                                                  NTStatus      = 0xC0000271
+       STATUS_NO_MATCH                                                           NTStatus      = 0xC0000272
+       STATUS_NO_MORE_MATCHES                                                    NTStatus      = 0xC0000273
+       STATUS_NOT_A_REPARSE_POINT                                                NTStatus      = 0xC0000275
+       STATUS_IO_REPARSE_TAG_INVALID                                             NTStatus      = 0xC0000276
+       STATUS_IO_REPARSE_TAG_MISMATCH                                            NTStatus      = 0xC0000277
+       STATUS_IO_REPARSE_DATA_INVALID                                            NTStatus      = 0xC0000278
+       STATUS_IO_REPARSE_TAG_NOT_HANDLED                                         NTStatus      = 0xC0000279
+       STATUS_PWD_TOO_LONG                                                       NTStatus      = 0xC000027A
+       STATUS_STOWED_EXCEPTION                                                   NTStatus      = 0xC000027B
+       STATUS_CONTEXT_STOWED_EXCEPTION                                           NTStatus      = 0xC000027C
+       STATUS_REPARSE_POINT_NOT_RESOLVED                                         NTStatus      = 0xC0000280
+       STATUS_DIRECTORY_IS_A_REPARSE_POINT                                       NTStatus      = 0xC0000281
+       STATUS_RANGE_LIST_CONFLICT                                                NTStatus      = 0xC0000282
+       STATUS_SOURCE_ELEMENT_EMPTY                                               NTStatus      = 0xC0000283
+       STATUS_DESTINATION_ELEMENT_FULL                                           NTStatus      = 0xC0000284
+       STATUS_ILLEGAL_ELEMENT_ADDRESS                                            NTStatus      = 0xC0000285
+       STATUS_MAGAZINE_NOT_PRESENT                                               NTStatus      = 0xC0000286
+       STATUS_REINITIALIZATION_NEEDED                                            NTStatus      = 0xC0000287
+       STATUS_DEVICE_REQUIRES_CLEANING                                           NTStatus      = 0x80000288
+       STATUS_DEVICE_DOOR_OPEN                                                   NTStatus      = 0x80000289
+       STATUS_ENCRYPTION_FAILED                                                  NTStatus      = 0xC000028A
+       STATUS_DECRYPTION_FAILED                                                  NTStatus      = 0xC000028B
+       STATUS_RANGE_NOT_FOUND                                                    NTStatus      = 0xC000028C
+       STATUS_NO_RECOVERY_POLICY                                                 NTStatus      = 0xC000028D
+       STATUS_NO_EFS                                                             NTStatus      = 0xC000028E
+       STATUS_WRONG_EFS                                                          NTStatus      = 0xC000028F
+       STATUS_NO_USER_KEYS                                                       NTStatus      = 0xC0000290
+       STATUS_FILE_NOT_ENCRYPTED                                                 NTStatus      = 0xC0000291
+       STATUS_NOT_EXPORT_FORMAT                                                  NTStatus      = 0xC0000292
+       STATUS_FILE_ENCRYPTED                                                     NTStatus      = 0xC0000293
+       STATUS_WAKE_SYSTEM                                                        NTStatus      = 0x40000294
+       STATUS_WMI_GUID_NOT_FOUND                                                 NTStatus      = 0xC0000295
+       STATUS_WMI_INSTANCE_NOT_FOUND                                             NTStatus      = 0xC0000296
+       STATUS_WMI_ITEMID_NOT_FOUND                                               NTStatus      = 0xC0000297
+       STATUS_WMI_TRY_AGAIN                                                      NTStatus      = 0xC0000298
+       STATUS_SHARED_POLICY                                                      NTStatus      = 0xC0000299
+       STATUS_POLICY_OBJECT_NOT_FOUND                                            NTStatus      = 0xC000029A
+       STATUS_POLICY_ONLY_IN_DS                                                  NTStatus      = 0xC000029B
+       STATUS_VOLUME_NOT_UPGRADED                                                NTStatus      = 0xC000029C
+       STATUS_REMOTE_STORAGE_NOT_ACTIVE                                          NTStatus      = 0xC000029D
+       STATUS_REMOTE_STORAGE_MEDIA_ERROR                                         NTStatus      = 0xC000029E
+       STATUS_NO_TRACKING_SERVICE                                                NTStatus      = 0xC000029F
+       STATUS_SERVER_SID_MISMATCH                                                NTStatus      = 0xC00002A0
+       STATUS_DS_NO_ATTRIBUTE_OR_VALUE                                           NTStatus      = 0xC00002A1
+       STATUS_DS_INVALID_ATTRIBUTE_SYNTAX                                        NTStatus      = 0xC00002A2
+       STATUS_DS_ATTRIBUTE_TYPE_UNDEFINED                                        NTStatus      = 0xC00002A3
+       STATUS_DS_ATTRIBUTE_OR_VALUE_EXISTS                                       NTStatus      = 0xC00002A4
+       STATUS_DS_BUSY                                                            NTStatus      = 0xC00002A5
+       STATUS_DS_UNAVAILABLE                                                     NTStatus      = 0xC00002A6
+       STATUS_DS_NO_RIDS_ALLOCATED                                               NTStatus      = 0xC00002A7
+       STATUS_DS_NO_MORE_RIDS                                                    NTStatus      = 0xC00002A8
+       STATUS_DS_INCORRECT_ROLE_OWNER                                            NTStatus      = 0xC00002A9
+       STATUS_DS_RIDMGR_INIT_ERROR                                               NTStatus      = 0xC00002AA
+       STATUS_DS_OBJ_CLASS_VIOLATION                                             NTStatus      = 0xC00002AB
+       STATUS_DS_CANT_ON_NON_LEAF                                                NTStatus      = 0xC00002AC
+       STATUS_DS_CANT_ON_RDN                                                     NTStatus      = 0xC00002AD
+       STATUS_DS_CANT_MOD_OBJ_CLASS                                              NTStatus      = 0xC00002AE
+       STATUS_DS_CROSS_DOM_MOVE_FAILED                                           NTStatus      = 0xC00002AF
+       STATUS_DS_GC_NOT_AVAILABLE                                                NTStatus      = 0xC00002B0
+       STATUS_DIRECTORY_SERVICE_REQUIRED                                         NTStatus      = 0xC00002B1
+       STATUS_REPARSE_ATTRIBUTE_CONFLICT                                         NTStatus      = 0xC00002B2
+       STATUS_CANT_ENABLE_DENY_ONLY                                              NTStatus      = 0xC00002B3
+       STATUS_FLOAT_MULTIPLE_FAULTS                                              NTStatus      = 0xC00002B4
+       STATUS_FLOAT_MULTIPLE_TRAPS                                               NTStatus      = 0xC00002B5
+       STATUS_DEVICE_REMOVED                                                     NTStatus      = 0xC00002B6
+       STATUS_JOURNAL_DELETE_IN_PROGRESS                                         NTStatus      = 0xC00002B7
+       STATUS_JOURNAL_NOT_ACTIVE                                                 NTStatus      = 0xC00002B8
+       STATUS_NOINTERFACE                                                        NTStatus      = 0xC00002B9
+       STATUS_DS_RIDMGR_DISABLED                                                 NTStatus      = 0xC00002BA
+       STATUS_DS_ADMIN_LIMIT_EXCEEDED                                            NTStatus      = 0xC00002C1
+       STATUS_DRIVER_FAILED_SLEEP                                                NTStatus      = 0xC00002C2
+       STATUS_MUTUAL_AUTHENTICATION_FAILED                                       NTStatus      = 0xC00002C3
+       STATUS_CORRUPT_SYSTEM_FILE                                                NTStatus      = 0xC00002C4
+       STATUS_DATATYPE_MISALIGNMENT_ERROR                                        NTStatus      = 0xC00002C5
+       STATUS_WMI_READ_ONLY                                                      NTStatus      = 0xC00002C6
+       STATUS_WMI_SET_FAILURE                                                    NTStatus      = 0xC00002C7
+       STATUS_COMMITMENT_MINIMUM                                                 NTStatus      = 0xC00002C8
+       STATUS_REG_NAT_CONSUMPTION                                                NTStatus      = 0xC00002C9
+       STATUS_TRANSPORT_FULL                                                     NTStatus      = 0xC00002CA
+       STATUS_DS_SAM_INIT_FAILURE                                                NTStatus      = 0xC00002CB
+       STATUS_ONLY_IF_CONNECTED                                                  NTStatus      = 0xC00002CC
+       STATUS_DS_SENSITIVE_GROUP_VIOLATION                                       NTStatus      = 0xC00002CD
+       STATUS_PNP_RESTART_ENUMERATION                                            NTStatus      = 0xC00002CE
+       STATUS_JOURNAL_ENTRY_DELETED                                              NTStatus      = 0xC00002CF
+       STATUS_DS_CANT_MOD_PRIMARYGROUPID                                         NTStatus      = 0xC00002D0
+       STATUS_SYSTEM_IMAGE_BAD_SIGNATURE                                         NTStatus      = 0xC00002D1
+       STATUS_PNP_REBOOT_REQUIRED                                                NTStatus      = 0xC00002D2
+       STATUS_POWER_STATE_INVALID                                                NTStatus      = 0xC00002D3
+       STATUS_DS_INVALID_GROUP_TYPE                                              NTStatus      = 0xC00002D4
+       STATUS_DS_NO_NEST_GLOBALGROUP_IN_MIXEDDOMAIN                              NTStatus      = 0xC00002D5
+       STATUS_DS_NO_NEST_LOCALGROUP_IN_MIXEDDOMAIN                               NTStatus      = 0xC00002D6
+       STATUS_DS_GLOBAL_CANT_HAVE_LOCAL_MEMBER                                   NTStatus      = 0xC00002D7
+       STATUS_DS_GLOBAL_CANT_HAVE_UNIVERSAL_MEMBER                               NTStatus      = 0xC00002D8
+       STATUS_DS_UNIVERSAL_CANT_HAVE_LOCAL_MEMBER                                NTStatus      = 0xC00002D9
+       STATUS_DS_GLOBAL_CANT_HAVE_CROSSDOMAIN_MEMBER                             NTStatus      = 0xC00002DA
+       STATUS_DS_LOCAL_CANT_HAVE_CROSSDOMAIN_LOCAL_MEMBER                        NTStatus      = 0xC00002DB
+       STATUS_DS_HAVE_PRIMARY_MEMBERS                                            NTStatus      = 0xC00002DC
+       STATUS_WMI_NOT_SUPPORTED                                                  NTStatus      = 0xC00002DD
+       STATUS_INSUFFICIENT_POWER                                                 NTStatus      = 0xC00002DE
+       STATUS_SAM_NEED_BOOTKEY_PASSWORD                                          NTStatus      = 0xC00002DF
+       STATUS_SAM_NEED_BOOTKEY_FLOPPY                                            NTStatus      = 0xC00002E0
+       STATUS_DS_CANT_START                                                      NTStatus      = 0xC00002E1
+       STATUS_DS_INIT_FAILURE                                                    NTStatus      = 0xC00002E2
+       STATUS_SAM_INIT_FAILURE                                                   NTStatus      = 0xC00002E3
+       STATUS_DS_GC_REQUIRED                                                     NTStatus      = 0xC00002E4
+       STATUS_DS_LOCAL_MEMBER_OF_LOCAL_ONLY                                      NTStatus      = 0xC00002E5
+       STATUS_DS_NO_FPO_IN_UNIVERSAL_GROUPS                                      NTStatus      = 0xC00002E6
+       STATUS_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED                                  NTStatus      = 0xC00002E7
+       STATUS_MULTIPLE_FAULT_VIOLATION                                           NTStatus      = 0xC00002E8
+       STATUS_CURRENT_DOMAIN_NOT_ALLOWED                                         NTStatus      = 0xC00002E9
+       STATUS_CANNOT_MAKE                                                        NTStatus      = 0xC00002EA
+       STATUS_SYSTEM_SHUTDOWN                                                    NTStatus      = 0xC00002EB
+       STATUS_DS_INIT_FAILURE_CONSOLE                                            NTStatus      = 0xC00002EC
+       STATUS_DS_SAM_INIT_FAILURE_CONSOLE                                        NTStatus      = 0xC00002ED
+       STATUS_UNFINISHED_CONTEXT_DELETED                                         NTStatus      = 0xC00002EE
+       STATUS_NO_TGT_REPLY                                                       NTStatus      = 0xC00002EF
+       STATUS_OBJECTID_NOT_FOUND                                                 NTStatus      = 0xC00002F0
+       STATUS_NO_IP_ADDRESSES                                                    NTStatus      = 0xC00002F1
+       STATUS_WRONG_CREDENTIAL_HANDLE                                            NTStatus      = 0xC00002F2
+       STATUS_CRYPTO_SYSTEM_INVALID                                              NTStatus      = 0xC00002F3
+       STATUS_MAX_REFERRALS_EXCEEDED                                             NTStatus      = 0xC00002F4
+       STATUS_MUST_BE_KDC                                                        NTStatus      = 0xC00002F5
+       STATUS_STRONG_CRYPTO_NOT_SUPPORTED                                        NTStatus      = 0xC00002F6
+       STATUS_TOO_MANY_PRINCIPALS                                                NTStatus      = 0xC00002F7
+       STATUS_NO_PA_DATA                                                         NTStatus      = 0xC00002F8
+       STATUS_PKINIT_NAME_MISMATCH                                               NTStatus      = 0xC00002F9
+       STATUS_SMARTCARD_LOGON_REQUIRED                                           NTStatus      = 0xC00002FA
+       STATUS_KDC_INVALID_REQUEST                                                NTStatus      = 0xC00002FB
+       STATUS_KDC_UNABLE_TO_REFER                                                NTStatus      = 0xC00002FC
+       STATUS_KDC_UNKNOWN_ETYPE                                                  NTStatus      = 0xC00002FD
+       STATUS_SHUTDOWN_IN_PROGRESS                                               NTStatus      = 0xC00002FE
+       STATUS_SERVER_SHUTDOWN_IN_PROGRESS                                        NTStatus      = 0xC00002FF
+       STATUS_NOT_SUPPORTED_ON_SBS                                               NTStatus      = 0xC0000300
+       STATUS_WMI_GUID_DISCONNECTED                                              NTStatus      = 0xC0000301
+       STATUS_WMI_ALREADY_DISABLED                                               NTStatus      = 0xC0000302
+       STATUS_WMI_ALREADY_ENABLED                                                NTStatus      = 0xC0000303
+       STATUS_MFT_TOO_FRAGMENTED                                                 NTStatus      = 0xC0000304
+       STATUS_COPY_PROTECTION_FAILURE                                            NTStatus      = 0xC0000305
+       STATUS_CSS_AUTHENTICATION_FAILURE                                         NTStatus      = 0xC0000306
+       STATUS_CSS_KEY_NOT_PRESENT                                                NTStatus      = 0xC0000307
+       STATUS_CSS_KEY_NOT_ESTABLISHED                                            NTStatus      = 0xC0000308
+       STATUS_CSS_SCRAMBLED_SECTOR                                               NTStatus      = 0xC0000309
+       STATUS_CSS_REGION_MISMATCH                                                NTStatus      = 0xC000030A
+       STATUS_CSS_RESETS_EXHAUSTED                                               NTStatus      = 0xC000030B
+       STATUS_PASSWORD_CHANGE_REQUIRED                                           NTStatus      = 0xC000030C
+       STATUS_LOST_MODE_LOGON_RESTRICTION                                        NTStatus      = 0xC000030D
+       STATUS_PKINIT_FAILURE                                                     NTStatus      = 0xC0000320
+       STATUS_SMARTCARD_SUBSYSTEM_FAILURE                                        NTStatus      = 0xC0000321
+       STATUS_NO_KERB_KEY                                                        NTStatus      = 0xC0000322
+       STATUS_HOST_DOWN                                                          NTStatus      = 0xC0000350
+       STATUS_UNSUPPORTED_PREAUTH                                                NTStatus      = 0xC0000351
+       STATUS_EFS_ALG_BLOB_TOO_BIG                                               NTStatus      = 0xC0000352
+       STATUS_PORT_NOT_SET                                                       NTStatus      = 0xC0000353
+       STATUS_DEBUGGER_INACTIVE                                                  NTStatus      = 0xC0000354
+       STATUS_DS_VERSION_CHECK_FAILURE                                           NTStatus      = 0xC0000355
+       STATUS_AUDITING_DISABLED                                                  NTStatus      = 0xC0000356
+       STATUS_PRENT4_MACHINE_ACCOUNT                                             NTStatus      = 0xC0000357
+       STATUS_DS_AG_CANT_HAVE_UNIVERSAL_MEMBER                                   NTStatus      = 0xC0000358
+       STATUS_INVALID_IMAGE_WIN_32                                               NTStatus      = 0xC0000359
+       STATUS_INVALID_IMAGE_WIN_64                                               NTStatus      = 0xC000035A
+       STATUS_BAD_BINDINGS                                                       NTStatus      = 0xC000035B
+       STATUS_NETWORK_SESSION_EXPIRED                                            NTStatus      = 0xC000035C
+       STATUS_APPHELP_BLOCK                                                      NTStatus      = 0xC000035D
+       STATUS_ALL_SIDS_FILTERED                                                  NTStatus      = 0xC000035E
+       STATUS_NOT_SAFE_MODE_DRIVER                                               NTStatus      = 0xC000035F
+       STATUS_ACCESS_DISABLED_BY_POLICY_DEFAULT                                  NTStatus      = 0xC0000361
+       STATUS_ACCESS_DISABLED_BY_POLICY_PATH                                     NTStatus      = 0xC0000362
+       STATUS_ACCESS_DISABLED_BY_POLICY_PUBLISHER                                NTStatus      = 0xC0000363
+       STATUS_ACCESS_DISABLED_BY_POLICY_OTHER                                    NTStatus      = 0xC0000364
+       STATUS_FAILED_DRIVER_ENTRY                                                NTStatus      = 0xC0000365
+       STATUS_DEVICE_ENUMERATION_ERROR                                           NTStatus      = 0xC0000366
+       STATUS_MOUNT_POINT_NOT_RESOLVED                                           NTStatus      = 0xC0000368
+       STATUS_INVALID_DEVICE_OBJECT_PARAMETER                                    NTStatus      = 0xC0000369
+       STATUS_MCA_OCCURED                                                        NTStatus      = 0xC000036A
+       STATUS_DRIVER_BLOCKED_CRITICAL                                            NTStatus      = 0xC000036B
+       STATUS_DRIVER_BLOCKED                                                     NTStatus      = 0xC000036C
+       STATUS_DRIVER_DATABASE_ERROR                                              NTStatus      = 0xC000036D
+       STATUS_SYSTEM_HIVE_TOO_LARGE                                              NTStatus      = 0xC000036E
+       STATUS_INVALID_IMPORT_OF_NON_DLL                                          NTStatus      = 0xC000036F
+       STATUS_DS_SHUTTING_DOWN                                                   NTStatus      = 0x40000370
+       STATUS_NO_SECRETS                                                         NTStatus      = 0xC0000371
+       STATUS_ACCESS_DISABLED_NO_SAFER_UI_BY_POLICY                              NTStatus      = 0xC0000372
+       STATUS_FAILED_STACK_SWITCH                                                NTStatus      = 0xC0000373
+       STATUS_HEAP_CORRUPTION                                                    NTStatus      = 0xC0000374
+       STATUS_SMARTCARD_WRONG_PIN                                                NTStatus      = 0xC0000380
+       STATUS_SMARTCARD_CARD_BLOCKED                                             NTStatus      = 0xC0000381
+       STATUS_SMARTCARD_CARD_NOT_AUTHENTICATED                                   NTStatus      = 0xC0000382
+       STATUS_SMARTCARD_NO_CARD                                                  NTStatus      = 0xC0000383
+       STATUS_SMARTCARD_NO_KEY_CONTAINER                                         NTStatus      = 0xC0000384
+       STATUS_SMARTCARD_NO_CERTIFICATE                                           NTStatus      = 0xC0000385
+       STATUS_SMARTCARD_NO_KEYSET                                                NTStatus      = 0xC0000386
+       STATUS_SMARTCARD_IO_ERROR                                                 NTStatus      = 0xC0000387
+       STATUS_DOWNGRADE_DETECTED                                                 NTStatus      = 0xC0000388
+       STATUS_SMARTCARD_CERT_REVOKED                                             NTStatus      = 0xC0000389
+       STATUS_ISSUING_CA_UNTRUSTED                                               NTStatus      = 0xC000038A
+       STATUS_REVOCATION_OFFLINE_C                                               NTStatus      = 0xC000038B
+       STATUS_PKINIT_CLIENT_FAILURE                                              NTStatus      = 0xC000038C
+       STATUS_SMARTCARD_CERT_EXPIRED                                             NTStatus      = 0xC000038D
+       STATUS_DRIVER_FAILED_PRIOR_UNLOAD                                         NTStatus      = 0xC000038E
+       STATUS_SMARTCARD_SILENT_CONTEXT                                           NTStatus      = 0xC000038F
+       STATUS_PER_USER_TRUST_QUOTA_EXCEEDED                                      NTStatus      = 0xC0000401
+       STATUS_ALL_USER_TRUST_QUOTA_EXCEEDED                                      NTStatus      = 0xC0000402
+       STATUS_USER_DELETE_TRUST_QUOTA_EXCEEDED                                   NTStatus      = 0xC0000403
+       STATUS_DS_NAME_NOT_UNIQUE                                                 NTStatus      = 0xC0000404
+       STATUS_DS_DUPLICATE_ID_FOUND                                              NTStatus      = 0xC0000405
+       STATUS_DS_GROUP_CONVERSION_ERROR                                          NTStatus      = 0xC0000406
+       STATUS_VOLSNAP_PREPARE_HIBERNATE                                          NTStatus      = 0xC0000407
+       STATUS_USER2USER_REQUIRED                                                 NTStatus      = 0xC0000408
+       STATUS_STACK_BUFFER_OVERRUN                                               NTStatus      = 0xC0000409
+       STATUS_NO_S4U_PROT_SUPPORT                                                NTStatus      = 0xC000040A
+       STATUS_CROSSREALM_DELEGATION_FAILURE                                      NTStatus      = 0xC000040B
+       STATUS_REVOCATION_OFFLINE_KDC                                             NTStatus      = 0xC000040C
+       STATUS_ISSUING_CA_UNTRUSTED_KDC                                           NTStatus      = 0xC000040D
+       STATUS_KDC_CERT_EXPIRED                                                   NTStatus      = 0xC000040E
+       STATUS_KDC_CERT_REVOKED                                                   NTStatus      = 0xC000040F
+       STATUS_PARAMETER_QUOTA_EXCEEDED                                           NTStatus      = 0xC0000410
+       STATUS_HIBERNATION_FAILURE                                                NTStatus      = 0xC0000411
+       STATUS_DELAY_LOAD_FAILED                                                  NTStatus      = 0xC0000412
+       STATUS_AUTHENTICATION_FIREWALL_FAILED                                     NTStatus      = 0xC0000413
+       STATUS_VDM_DISALLOWED                                                     NTStatus      = 0xC0000414
+       STATUS_HUNG_DISPLAY_DRIVER_THREAD                                         NTStatus      = 0xC0000415
+       STATUS_INSUFFICIENT_RESOURCE_FOR_SPECIFIED_SHARED_SECTION_SIZE            NTStatus      = 0xC0000416
+       STATUS_INVALID_CRUNTIME_PARAMETER                                         NTStatus      = 0xC0000417
+       STATUS_NTLM_BLOCKED                                                       NTStatus      = 0xC0000418
+       STATUS_DS_SRC_SID_EXISTS_IN_FOREST                                        NTStatus      = 0xC0000419
+       STATUS_DS_DOMAIN_NAME_EXISTS_IN_FOREST                                    NTStatus      = 0xC000041A
+       STATUS_DS_FLAT_NAME_EXISTS_IN_FOREST                                      NTStatus      = 0xC000041B
+       STATUS_INVALID_USER_PRINCIPAL_NAME                                        NTStatus      = 0xC000041C
+       STATUS_FATAL_USER_CALLBACK_EXCEPTION                                      NTStatus      = 0xC000041D
+       STATUS_ASSERTION_FAILURE                                                  NTStatus      = 0xC0000420
+       STATUS_VERIFIER_STOP                                                      NTStatus      = 0xC0000421
+       STATUS_CALLBACK_POP_STACK                                                 NTStatus      = 0xC0000423
+       STATUS_INCOMPATIBLE_DRIVER_BLOCKED                                        NTStatus      = 0xC0000424
+       STATUS_HIVE_UNLOADED                                                      NTStatus      = 0xC0000425
+       STATUS_COMPRESSION_DISABLED                                               NTStatus      = 0xC0000426
+       STATUS_FILE_SYSTEM_LIMITATION                                             NTStatus      = 0xC0000427
+       STATUS_INVALID_IMAGE_HASH                                                 NTStatus      = 0xC0000428
+       STATUS_NOT_CAPABLE                                                        NTStatus      = 0xC0000429
+       STATUS_REQUEST_OUT_OF_SEQUENCE                                            NTStatus      = 0xC000042A
+       STATUS_IMPLEMENTATION_LIMIT                                               NTStatus      = 0xC000042B
+       STATUS_ELEVATION_REQUIRED                                                 NTStatus      = 0xC000042C
+       STATUS_NO_SECURITY_CONTEXT                                                NTStatus      = 0xC000042D
+       STATUS_PKU2U_CERT_FAILURE                                                 NTStatus      = 0xC000042F
+       STATUS_BEYOND_VDL                                                         NTStatus      = 0xC0000432
+       STATUS_ENCOUNTERED_WRITE_IN_PROGRESS                                      NTStatus      = 0xC0000433
+       STATUS_PTE_CHANGED                                                        NTStatus      = 0xC0000434
+       STATUS_PURGE_FAILED                                                       NTStatus      = 0xC0000435
+       STATUS_CRED_REQUIRES_CONFIRMATION                                         NTStatus      = 0xC0000440
+       STATUS_CS_ENCRYPTION_INVALID_SERVER_RESPONSE                              NTStatus      = 0xC0000441
+       STATUS_CS_ENCRYPTION_UNSUPPORTED_SERVER                                   NTStatus      = 0xC0000442
+       STATUS_CS_ENCRYPTION_EXISTING_ENCRYPTED_FILE                              NTStatus      = 0xC0000443
+       STATUS_CS_ENCRYPTION_NEW_ENCRYPTED_FILE                                   NTStatus      = 0xC0000444
+       STATUS_CS_ENCRYPTION_FILE_NOT_CSE                                         NTStatus      = 0xC0000445
+       STATUS_INVALID_LABEL                                                      NTStatus      = 0xC0000446
+       STATUS_DRIVER_PROCESS_TERMINATED                                          NTStatus      = 0xC0000450
+       STATUS_AMBIGUOUS_SYSTEM_DEVICE                                            NTStatus      = 0xC0000451
+       STATUS_SYSTEM_DEVICE_NOT_FOUND                                            NTStatus      = 0xC0000452
+       STATUS_RESTART_BOOT_APPLICATION                                           NTStatus      = 0xC0000453
+       STATUS_INSUFFICIENT_NVRAM_RESOURCES                                       NTStatus      = 0xC0000454
+       STATUS_INVALID_SESSION                                                    NTStatus      = 0xC0000455
+       STATUS_THREAD_ALREADY_IN_SESSION                                          NTStatus      = 0xC0000456
+       STATUS_THREAD_NOT_IN_SESSION                                              NTStatus      = 0xC0000457
+       STATUS_INVALID_WEIGHT                                                     NTStatus      = 0xC0000458
+       STATUS_REQUEST_PAUSED                                                     NTStatus      = 0xC0000459
+       STATUS_NO_RANGES_PROCESSED                                                NTStatus      = 0xC0000460
+       STATUS_DISK_RESOURCES_EXHAUSTED                                           NTStatus      = 0xC0000461
+       STATUS_NEEDS_REMEDIATION                                                  NTStatus      = 0xC0000462
+       STATUS_DEVICE_FEATURE_NOT_SUPPORTED                                       NTStatus      = 0xC0000463
+       STATUS_DEVICE_UNREACHABLE                                                 NTStatus      = 0xC0000464
+       STATUS_INVALID_TOKEN                                                      NTStatus      = 0xC0000465
+       STATUS_SERVER_UNAVAILABLE                                                 NTStatus      = 0xC0000466
+       STATUS_FILE_NOT_AVAILABLE                                                 NTStatus      = 0xC0000467
+       STATUS_DEVICE_INSUFFICIENT_RESOURCES                                      NTStatus      = 0xC0000468
+       STATUS_PACKAGE_UPDATING                                                   NTStatus      = 0xC0000469
+       STATUS_NOT_READ_FROM_COPY                                                 NTStatus      = 0xC000046A
+       STATUS_FT_WRITE_FAILURE                                                   NTStatus      = 0xC000046B
+       STATUS_FT_DI_SCAN_REQUIRED                                                NTStatus      = 0xC000046C
+       STATUS_OBJECT_NOT_EXTERNALLY_BACKED                                       NTStatus      = 0xC000046D
+       STATUS_EXTERNAL_BACKING_PROVIDER_UNKNOWN                                  NTStatus      = 0xC000046E
+       STATUS_COMPRESSION_NOT_BENEFICIAL                                         NTStatus      = 0xC000046F
+       STATUS_DATA_CHECKSUM_ERROR                                                NTStatus      = 0xC0000470
+       STATUS_INTERMIXED_KERNEL_EA_OPERATION                                     NTStatus      = 0xC0000471
+       STATUS_TRIM_READ_ZERO_NOT_SUPPORTED                                       NTStatus      = 0xC0000472
+       STATUS_TOO_MANY_SEGMENT_DESCRIPTORS                                       NTStatus      = 0xC0000473
+       STATUS_INVALID_OFFSET_ALIGNMENT                                           NTStatus      = 0xC0000474
+       STATUS_INVALID_FIELD_IN_PARAMETER_LIST                                    NTStatus      = 0xC0000475
+       STATUS_OPERATION_IN_PROGRESS                                              NTStatus      = 0xC0000476
+       STATUS_INVALID_INITIATOR_TARGET_PATH                                      NTStatus      = 0xC0000477
+       STATUS_SCRUB_DATA_DISABLED                                                NTStatus      = 0xC0000478
+       STATUS_NOT_REDUNDANT_STORAGE                                              NTStatus      = 0xC0000479
+       STATUS_RESIDENT_FILE_NOT_SUPPORTED                                        NTStatus      = 0xC000047A
+       STATUS_COMPRESSED_FILE_NOT_SUPPORTED                                      NTStatus      = 0xC000047B
+       STATUS_DIRECTORY_NOT_SUPPORTED                                            NTStatus      = 0xC000047C
+       STATUS_IO_OPERATION_TIMEOUT                                               NTStatus      = 0xC000047D
+       STATUS_SYSTEM_NEEDS_REMEDIATION                                           NTStatus      = 0xC000047E
+       STATUS_APPX_INTEGRITY_FAILURE_CLR_NGEN                                    NTStatus      = 0xC000047F
+       STATUS_SHARE_UNAVAILABLE                                                  NTStatus      = 0xC0000480
+       STATUS_APISET_NOT_HOSTED                                                  NTStatus      = 0xC0000481
+       STATUS_APISET_NOT_PRESENT                                                 NTStatus      = 0xC0000482
+       STATUS_DEVICE_HARDWARE_ERROR                                              NTStatus      = 0xC0000483
+       STATUS_FIRMWARE_SLOT_INVALID                                              NTStatus      = 0xC0000484
+       STATUS_FIRMWARE_IMAGE_INVALID                                             NTStatus      = 0xC0000485
+       STATUS_STORAGE_TOPOLOGY_ID_MISMATCH                                       NTStatus      = 0xC0000486
+       STATUS_WIM_NOT_BOOTABLE                                                   NTStatus      = 0xC0000487
+       STATUS_BLOCKED_BY_PARENTAL_CONTROLS                                       NTStatus      = 0xC0000488
+       STATUS_NEEDS_REGISTRATION                                                 NTStatus      = 0xC0000489
+       STATUS_QUOTA_ACTIVITY                                                     NTStatus      = 0xC000048A
+       STATUS_CALLBACK_INVOKE_INLINE                                             NTStatus      = 0xC000048B
+       STATUS_BLOCK_TOO_MANY_REFERENCES                                          NTStatus      = 0xC000048C
+       STATUS_MARKED_TO_DISALLOW_WRITES                                          NTStatus      = 0xC000048D
+       STATUS_NETWORK_ACCESS_DENIED_EDP                                          NTStatus      = 0xC000048E
+       STATUS_ENCLAVE_FAILURE                                                    NTStatus      = 0xC000048F
+       STATUS_PNP_NO_COMPAT_DRIVERS                                              NTStatus      = 0xC0000490
+       STATUS_PNP_DRIVER_PACKAGE_NOT_FOUND                                       NTStatus      = 0xC0000491
+       STATUS_PNP_DRIVER_CONFIGURATION_NOT_FOUND                                 NTStatus      = 0xC0000492
+       STATUS_PNP_DRIVER_CONFIGURATION_INCOMPLETE                                NTStatus      = 0xC0000493
+       STATUS_PNP_FUNCTION_DRIVER_REQUIRED                                       NTStatus      = 0xC0000494
+       STATUS_PNP_DEVICE_CONFIGURATION_PENDING                                   NTStatus      = 0xC0000495
+       STATUS_DEVICE_HINT_NAME_BUFFER_TOO_SMALL                                  NTStatus      = 0xC0000496
+       STATUS_PACKAGE_NOT_AVAILABLE                                              NTStatus      = 0xC0000497
+       STATUS_DEVICE_IN_MAINTENANCE                                              NTStatus      = 0xC0000499
+       STATUS_NOT_SUPPORTED_ON_DAX                                               NTStatus      = 0xC000049A
+       STATUS_FREE_SPACE_TOO_FRAGMENTED                                          NTStatus      = 0xC000049B
+       STATUS_DAX_MAPPING_EXISTS                                                 NTStatus      = 0xC000049C
+       STATUS_CHILD_PROCESS_BLOCKED                                              NTStatus      = 0xC000049D
+       STATUS_STORAGE_LOST_DATA_PERSISTENCE                                      NTStatus      = 0xC000049E
+       STATUS_VRF_CFG_ENABLED                                                    NTStatus      = 0xC000049F
+       STATUS_PARTITION_TERMINATING                                              NTStatus      = 0xC00004A0
+       STATUS_EXTERNAL_SYSKEY_NOT_SUPPORTED                                      NTStatus      = 0xC00004A1
+       STATUS_ENCLAVE_VIOLATION                                                  NTStatus      = 0xC00004A2
+       STATUS_FILE_PROTECTED_UNDER_DPL                                           NTStatus      = 0xC00004A3
+       STATUS_VOLUME_NOT_CLUSTER_ALIGNED                                         NTStatus      = 0xC00004A4
+       STATUS_NO_PHYSICALLY_ALIGNED_FREE_SPACE_FOUND                             NTStatus      = 0xC00004A5
+       STATUS_APPX_FILE_NOT_ENCRYPTED                                            NTStatus      = 0xC00004A6
+       STATUS_RWRAW_ENCRYPTED_FILE_NOT_ENCRYPTED                                 NTStatus      = 0xC00004A7
+       STATUS_RWRAW_ENCRYPTED_INVALID_EDATAINFO_FILEOFFSET                       NTStatus      = 0xC00004A8
+       STATUS_RWRAW_ENCRYPTED_INVALID_EDATAINFO_FILERANGE                        NTStatus      = 0xC00004A9
+       STATUS_RWRAW_ENCRYPTED_INVALID_EDATAINFO_PARAMETER                        NTStatus      = 0xC00004AA
+       STATUS_FT_READ_FAILURE                                                    NTStatus      = 0xC00004AB
+       STATUS_PATCH_CONFLICT                                                     NTStatus      = 0xC00004AC
+       STATUS_STORAGE_RESERVE_ID_INVALID                                         NTStatus      = 0xC00004AD
+       STATUS_STORAGE_RESERVE_DOES_NOT_EXIST                                     NTStatus      = 0xC00004AE
+       STATUS_STORAGE_RESERVE_ALREADY_EXISTS                                     NTStatus      = 0xC00004AF
+       STATUS_STORAGE_RESERVE_NOT_EMPTY                                          NTStatus      = 0xC00004B0
+       STATUS_NOT_A_DAX_VOLUME                                                   NTStatus      = 0xC00004B1
+       STATUS_NOT_DAX_MAPPABLE                                                   NTStatus      = 0xC00004B2
+       STATUS_CASE_DIFFERING_NAMES_IN_DIR                                        NTStatus      = 0xC00004B3
+       STATUS_FILE_NOT_SUPPORTED                                                 NTStatus      = 0xC00004B4
+       STATUS_NOT_SUPPORTED_WITH_BTT                                             NTStatus      = 0xC00004B5
+       STATUS_ENCRYPTION_DISABLED                                                NTStatus      = 0xC00004B6
+       STATUS_ENCRYPTING_METADATA_DISALLOWED                                     NTStatus      = 0xC00004B7
+       STATUS_CANT_CLEAR_ENCRYPTION_FLAG                                         NTStatus      = 0xC00004B8
+       STATUS_INVALID_TASK_NAME                                                  NTStatus      = 0xC0000500
+       STATUS_INVALID_TASK_INDEX                                                 NTStatus      = 0xC0000501
+       STATUS_THREAD_ALREADY_IN_TASK                                             NTStatus      = 0xC0000502
+       STATUS_CALLBACK_BYPASS                                                    NTStatus      = 0xC0000503
+       STATUS_UNDEFINED_SCOPE                                                    NTStatus      = 0xC0000504
+       STATUS_INVALID_CAP                                                        NTStatus      = 0xC0000505
+       STATUS_NOT_GUI_PROCESS                                                    NTStatus      = 0xC0000506
+       STATUS_DEVICE_HUNG                                                        NTStatus      = 0xC0000507
+       STATUS_CONTAINER_ASSIGNED                                                 NTStatus      = 0xC0000508
+       STATUS_JOB_NO_CONTAINER                                                   NTStatus      = 0xC0000509
+       STATUS_DEVICE_UNRESPONSIVE                                                NTStatus      = 0xC000050A
+       STATUS_REPARSE_POINT_ENCOUNTERED                                          NTStatus      = 0xC000050B
+       STATUS_ATTRIBUTE_NOT_PRESENT                                              NTStatus      = 0xC000050C
+       STATUS_NOT_A_TIERED_VOLUME                                                NTStatus      = 0xC000050D
+       STATUS_ALREADY_HAS_STREAM_ID                                              NTStatus      = 0xC000050E
+       STATUS_JOB_NOT_EMPTY                                                      NTStatus      = 0xC000050F
+       STATUS_ALREADY_INITIALIZED                                                NTStatus      = 0xC0000510
+       STATUS_ENCLAVE_NOT_TERMINATED                                             NTStatus      = 0xC0000511
+       STATUS_ENCLAVE_IS_TERMINATING                                             NTStatus      = 0xC0000512
+       STATUS_SMB1_NOT_AVAILABLE                                                 NTStatus      = 0xC0000513
+       STATUS_SMR_GARBAGE_COLLECTION_REQUIRED                                    NTStatus      = 0xC0000514
+       STATUS_INTERRUPTED                                                        NTStatus      = 0xC0000515
+       STATUS_THREAD_NOT_RUNNING                                                 NTStatus      = 0xC0000516
+       STATUS_FAIL_FAST_EXCEPTION                                                NTStatus      = 0xC0000602
+       STATUS_IMAGE_CERT_REVOKED                                                 NTStatus      = 0xC0000603
+       STATUS_DYNAMIC_CODE_BLOCKED                                               NTStatus      = 0xC0000604
+       STATUS_IMAGE_CERT_EXPIRED                                                 NTStatus      = 0xC0000605
+       STATUS_STRICT_CFG_VIOLATION                                               NTStatus      = 0xC0000606
+       STATUS_SET_CONTEXT_DENIED                                                 NTStatus      = 0xC000060A
+       STATUS_CROSS_PARTITION_VIOLATION                                          NTStatus      = 0xC000060B
+       STATUS_PORT_CLOSED                                                        NTStatus      = 0xC0000700
+       STATUS_MESSAGE_LOST                                                       NTStatus      = 0xC0000701
+       STATUS_INVALID_MESSAGE                                                    NTStatus      = 0xC0000702
+       STATUS_REQUEST_CANCELED                                                   NTStatus      = 0xC0000703
+       STATUS_RECURSIVE_DISPATCH                                                 NTStatus      = 0xC0000704
+       STATUS_LPC_RECEIVE_BUFFER_EXPECTED                                        NTStatus      = 0xC0000705
+       STATUS_LPC_INVALID_CONNECTION_USAGE                                       NTStatus      = 0xC0000706
+       STATUS_LPC_REQUESTS_NOT_ALLOWED                                           NTStatus      = 0xC0000707
+       STATUS_RESOURCE_IN_USE                                                    NTStatus      = 0xC0000708
+       STATUS_HARDWARE_MEMORY_ERROR                                              NTStatus      = 0xC0000709
+       STATUS_THREADPOOL_HANDLE_EXCEPTION                                        NTStatus      = 0xC000070A
+       STATUS_THREADPOOL_SET_EVENT_ON_COMPLETION_FAILED                          NTStatus      = 0xC000070B
+       STATUS_THREADPOOL_RELEASE_SEMAPHORE_ON_COMPLETION_FAILED                  NTStatus      = 0xC000070C
+       STATUS_THREADPOOL_RELEASE_MUTEX_ON_COMPLETION_FAILED                      NTStatus      = 0xC000070D
+       STATUS_THREADPOOL_FREE_LIBRARY_ON_COMPLETION_FAILED                       NTStatus      = 0xC000070E
+       STATUS_THREADPOOL_RELEASED_DURING_OPERATION                               NTStatus      = 0xC000070F
+       STATUS_CALLBACK_RETURNED_WHILE_IMPERSONATING                              NTStatus      = 0xC0000710
+       STATUS_APC_RETURNED_WHILE_IMPERSONATING                                   NTStatus      = 0xC0000711
+       STATUS_PROCESS_IS_PROTECTED                                               NTStatus      = 0xC0000712
+       STATUS_MCA_EXCEPTION                                                      NTStatus      = 0xC0000713
+       STATUS_CERTIFICATE_MAPPING_NOT_UNIQUE                                     NTStatus      = 0xC0000714
+       STATUS_SYMLINK_CLASS_DISABLED                                             NTStatus      = 0xC0000715
+       STATUS_INVALID_IDN_NORMALIZATION                                          NTStatus      = 0xC0000716
+       STATUS_NO_UNICODE_TRANSLATION                                             NTStatus      = 0xC0000717
+       STATUS_ALREADY_REGISTERED                                                 NTStatus      = 0xC0000718
+       STATUS_CONTEXT_MISMATCH                                                   NTStatus      = 0xC0000719
+       STATUS_PORT_ALREADY_HAS_COMPLETION_LIST                                   NTStatus      = 0xC000071A
+       STATUS_CALLBACK_RETURNED_THREAD_PRIORITY                                  NTStatus      = 0xC000071B
+       STATUS_INVALID_THREAD                                                     NTStatus      = 0xC000071C
+       STATUS_CALLBACK_RETURNED_TRANSACTION                                      NTStatus      = 0xC000071D
+       STATUS_CALLBACK_RETURNED_LDR_LOCK                                         NTStatus      = 0xC000071E
+       STATUS_CALLBACK_RETURNED_LANG                                             NTStatus      = 0xC000071F
+       STATUS_CALLBACK_RETURNED_PRI_BACK                                         NTStatus      = 0xC0000720
+       STATUS_CALLBACK_RETURNED_THREAD_AFFINITY                                  NTStatus      = 0xC0000721
+       STATUS_LPC_HANDLE_COUNT_EXCEEDED                                          NTStatus      = 0xC0000722
+       STATUS_EXECUTABLE_MEMORY_WRITE                                            NTStatus      = 0xC0000723
+       STATUS_KERNEL_EXECUTABLE_MEMORY_WRITE                                     NTStatus      = 0xC0000724
+       STATUS_ATTACHED_EXECUTABLE_MEMORY_WRITE                                   NTStatus      = 0xC0000725
+       STATUS_TRIGGERED_EXECUTABLE_MEMORY_WRITE                                  NTStatus      = 0xC0000726
+       STATUS_DISK_REPAIR_DISABLED                                               NTStatus      = 0xC0000800
+       STATUS_DS_DOMAIN_RENAME_IN_PROGRESS                                       NTStatus      = 0xC0000801
+       STATUS_DISK_QUOTA_EXCEEDED                                                NTStatus      = 0xC0000802
+       STATUS_DATA_LOST_REPAIR                                                   NTStatus      = 0x80000803
+       STATUS_CONTENT_BLOCKED                                                    NTStatus      = 0xC0000804
+       STATUS_BAD_CLUSTERS                                                       NTStatus      = 0xC0000805
+       STATUS_VOLUME_DIRTY                                                       NTStatus      = 0xC0000806
+       STATUS_DISK_REPAIR_REDIRECTED                                             NTStatus      = 0x40000807
+       STATUS_DISK_REPAIR_UNSUCCESSFUL                                           NTStatus      = 0xC0000808
+       STATUS_CORRUPT_LOG_OVERFULL                                               NTStatus      = 0xC0000809
+       STATUS_CORRUPT_LOG_CORRUPTED                                              NTStatus      = 0xC000080A
+       STATUS_CORRUPT_LOG_UNAVAILABLE                                            NTStatus      = 0xC000080B
+       STATUS_CORRUPT_LOG_DELETED_FULL                                           NTStatus      = 0xC000080C
+       STATUS_CORRUPT_LOG_CLEARED                                                NTStatus      = 0xC000080D
+       STATUS_ORPHAN_NAME_EXHAUSTED                                              NTStatus      = 0xC000080E
+       STATUS_PROACTIVE_SCAN_IN_PROGRESS                                         NTStatus      = 0xC000080F
+       STATUS_ENCRYPTED_IO_NOT_POSSIBLE                                          NTStatus      = 0xC0000810
+       STATUS_CORRUPT_LOG_UPLEVEL_RECORDS                                        NTStatus      = 0xC0000811
+       STATUS_FILE_CHECKED_OUT                                                   NTStatus      = 0xC0000901
+       STATUS_CHECKOUT_REQUIRED                                                  NTStatus      = 0xC0000902
+       STATUS_BAD_FILE_TYPE                                                      NTStatus      = 0xC0000903
+       STATUS_FILE_TOO_LARGE                                                     NTStatus      = 0xC0000904
+       STATUS_FORMS_AUTH_REQUIRED                                                NTStatus      = 0xC0000905
+       STATUS_VIRUS_INFECTED                                                     NTStatus      = 0xC0000906
+       STATUS_VIRUS_DELETED                                                      NTStatus      = 0xC0000907
+       STATUS_BAD_MCFG_TABLE                                                     NTStatus      = 0xC0000908
+       STATUS_CANNOT_BREAK_OPLOCK                                                NTStatus      = 0xC0000909
+       STATUS_BAD_KEY                                                            NTStatus      = 0xC000090A
+       STATUS_BAD_DATA                                                           NTStatus      = 0xC000090B
+       STATUS_NO_KEY                                                             NTStatus      = 0xC000090C
+       STATUS_FILE_HANDLE_REVOKED                                                NTStatus      = 0xC0000910
+       STATUS_WOW_ASSERTION                                                      NTStatus      = 0xC0009898
+       STATUS_INVALID_SIGNATURE                                                  NTStatus      = 0xC000A000
+       STATUS_HMAC_NOT_SUPPORTED                                                 NTStatus      = 0xC000A001
+       STATUS_AUTH_TAG_MISMATCH                                                  NTStatus      = 0xC000A002
+       STATUS_INVALID_STATE_TRANSITION                                           NTStatus      = 0xC000A003
+       STATUS_INVALID_KERNEL_INFO_VERSION                                        NTStatus      = 0xC000A004
+       STATUS_INVALID_PEP_INFO_VERSION                                           NTStatus      = 0xC000A005
+       STATUS_HANDLE_REVOKED                                                     NTStatus      = 0xC000A006
+       STATUS_EOF_ON_GHOSTED_RANGE                                               NTStatus      = 0xC000A007
+       STATUS_IPSEC_QUEUE_OVERFLOW                                               NTStatus      = 0xC000A010
+       STATUS_ND_QUEUE_OVERFLOW                                                  NTStatus      = 0xC000A011
+       STATUS_HOPLIMIT_EXCEEDED                                                  NTStatus      = 0xC000A012
+       STATUS_PROTOCOL_NOT_SUPPORTED                                             NTStatus      = 0xC000A013
+       STATUS_FASTPATH_REJECTED                                                  NTStatus      = 0xC000A014
+       STATUS_LOST_WRITEBEHIND_DATA_NETWORK_DISCONNECTED                         NTStatus      = 0xC000A080
+       STATUS_LOST_WRITEBEHIND_DATA_NETWORK_SERVER_ERROR                         NTStatus      = 0xC000A081
+       STATUS_LOST_WRITEBEHIND_DATA_LOCAL_DISK_ERROR                             NTStatus      = 0xC000A082
+       STATUS_XML_PARSE_ERROR                                                    NTStatus      = 0xC000A083
+       STATUS_XMLDSIG_ERROR                                                      NTStatus      = 0xC000A084
+       STATUS_WRONG_COMPARTMENT                                                  NTStatus      = 0xC000A085
+       STATUS_AUTHIP_FAILURE                                                     NTStatus      = 0xC000A086
+       STATUS_DS_OID_MAPPED_GROUP_CANT_HAVE_MEMBERS                              NTStatus      = 0xC000A087
+       STATUS_DS_OID_NOT_FOUND                                                   NTStatus      = 0xC000A088
+       STATUS_INCORRECT_ACCOUNT_TYPE                                             NTStatus      = 0xC000A089
+       STATUS_HASH_NOT_SUPPORTED                                                 NTStatus      = 0xC000A100
+       STATUS_HASH_NOT_PRESENT                                                   NTStatus      = 0xC000A101
+       STATUS_SECONDARY_IC_PROVIDER_NOT_REGISTERED                               NTStatus      = 0xC000A121
+       STATUS_GPIO_CLIENT_INFORMATION_INVALID                                    NTStatus      = 0xC000A122
+       STATUS_GPIO_VERSION_NOT_SUPPORTED                                         NTStatus      = 0xC000A123
+       STATUS_GPIO_INVALID_REGISTRATION_PACKET                                   NTStatus      = 0xC000A124
+       STATUS_GPIO_OPERATION_DENIED                                              NTStatus      = 0xC000A125
+       STATUS_GPIO_INCOMPATIBLE_CONNECT_MODE                                     NTStatus      = 0xC000A126
+       STATUS_GPIO_INTERRUPT_ALREADY_UNMASKED                                    NTStatus      = 0x8000A127
+       STATUS_CANNOT_SWITCH_RUNLEVEL                                             NTStatus      = 0xC000A141
+       STATUS_INVALID_RUNLEVEL_SETTING                                           NTStatus      = 0xC000A142
+       STATUS_RUNLEVEL_SWITCH_TIMEOUT                                            NTStatus      = 0xC000A143
+       STATUS_SERVICES_FAILED_AUTOSTART                                          NTStatus      = 0x4000A144
+       STATUS_RUNLEVEL_SWITCH_AGENT_TIMEOUT                                      NTStatus      = 0xC000A145
+       STATUS_RUNLEVEL_SWITCH_IN_PROGRESS                                        NTStatus      = 0xC000A146
+       STATUS_NOT_APPCONTAINER                                                   NTStatus      = 0xC000A200
+       STATUS_NOT_SUPPORTED_IN_APPCONTAINER                                      NTStatus      = 0xC000A201
+       STATUS_INVALID_PACKAGE_SID_LENGTH                                         NTStatus      = 0xC000A202
+       STATUS_LPAC_ACCESS_DENIED                                                 NTStatus      = 0xC000A203
+       STATUS_ADMINLESS_ACCESS_DENIED                                            NTStatus      = 0xC000A204
+       STATUS_APP_DATA_NOT_FOUND                                                 NTStatus      = 0xC000A281
+       STATUS_APP_DATA_EXPIRED                                                   NTStatus      = 0xC000A282
+       STATUS_APP_DATA_CORRUPT                                                   NTStatus      = 0xC000A283
+       STATUS_APP_DATA_LIMIT_EXCEEDED                                            NTStatus      = 0xC000A284
+       STATUS_APP_DATA_REBOOT_REQUIRED                                           NTStatus      = 0xC000A285
+       STATUS_OFFLOAD_READ_FLT_NOT_SUPPORTED                                     NTStatus      = 0xC000A2A1
+       STATUS_OFFLOAD_WRITE_FLT_NOT_SUPPORTED                                    NTStatus      = 0xC000A2A2
+       STATUS_OFFLOAD_READ_FILE_NOT_SUPPORTED                                    NTStatus      = 0xC000A2A3
+       STATUS_OFFLOAD_WRITE_FILE_NOT_SUPPORTED                                   NTStatus      = 0xC000A2A4
+       STATUS_WOF_WIM_HEADER_CORRUPT                                             NTStatus      = 0xC000A2A5
+       STATUS_WOF_WIM_RESOURCE_TABLE_CORRUPT                                     NTStatus      = 0xC000A2A6
+       STATUS_WOF_FILE_RESOURCE_TABLE_CORRUPT                                    NTStatus      = 0xC000A2A7
+       STATUS_FILE_SYSTEM_VIRTUALIZATION_UNAVAILABLE                             NTStatus      = 0xC000CE01
+       STATUS_FILE_SYSTEM_VIRTUALIZATION_METADATA_CORRUPT                        NTStatus      = 0xC000CE02
+       STATUS_FILE_SYSTEM_VIRTUALIZATION_BUSY                                    NTStatus      = 0xC000CE03
+       STATUS_FILE_SYSTEM_VIRTUALIZATION_PROVIDER_UNKNOWN                        NTStatus      = 0xC000CE04
+       STATUS_FILE_SYSTEM_VIRTUALIZATION_INVALID_OPERATION                       NTStatus      = 0xC000CE05
+       STATUS_CLOUD_FILE_SYNC_ROOT_METADATA_CORRUPT                              NTStatus      = 0xC000CF00
+       STATUS_CLOUD_FILE_PROVIDER_NOT_RUNNING                                    NTStatus      = 0xC000CF01
+       STATUS_CLOUD_FILE_METADATA_CORRUPT                                        NTStatus      = 0xC000CF02
+       STATUS_CLOUD_FILE_METADATA_TOO_LARGE                                      NTStatus      = 0xC000CF03
+       STATUS_CLOUD_FILE_PROPERTY_BLOB_TOO_LARGE                                 NTStatus      = 0x8000CF04
+       STATUS_CLOUD_FILE_TOO_MANY_PROPERTY_BLOBS                                 NTStatus      = 0x8000CF05
+       STATUS_CLOUD_FILE_PROPERTY_VERSION_NOT_SUPPORTED                          NTStatus      = 0xC000CF06
+       STATUS_NOT_A_CLOUD_FILE                                                   NTStatus      = 0xC000CF07
+       STATUS_CLOUD_FILE_NOT_IN_SYNC                                             NTStatus      = 0xC000CF08
+       STATUS_CLOUD_FILE_ALREADY_CONNECTED                                       NTStatus      = 0xC000CF09
+       STATUS_CLOUD_FILE_NOT_SUPPORTED                                           NTStatus      = 0xC000CF0A
+       STATUS_CLOUD_FILE_INVALID_REQUEST                                         NTStatus      = 0xC000CF0B
+       STATUS_CLOUD_FILE_READ_ONLY_VOLUME                                        NTStatus      = 0xC000CF0C
+       STATUS_CLOUD_FILE_CONNECTED_PROVIDER_ONLY                                 NTStatus      = 0xC000CF0D
+       STATUS_CLOUD_FILE_VALIDATION_FAILED                                       NTStatus      = 0xC000CF0E
+       STATUS_CLOUD_FILE_AUTHENTICATION_FAILED                                   NTStatus      = 0xC000CF0F
+       STATUS_CLOUD_FILE_INSUFFICIENT_RESOURCES                                  NTStatus      = 0xC000CF10
+       STATUS_CLOUD_FILE_NETWORK_UNAVAILABLE                                     NTStatus      = 0xC000CF11
+       STATUS_CLOUD_FILE_UNSUCCESSFUL                                            NTStatus      = 0xC000CF12
+       STATUS_CLOUD_FILE_NOT_UNDER_SYNC_ROOT                                     NTStatus      = 0xC000CF13
+       STATUS_CLOUD_FILE_IN_USE                                                  NTStatus      = 0xC000CF14
+       STATUS_CLOUD_FILE_PINNED                                                  NTStatus      = 0xC000CF15
+       STATUS_CLOUD_FILE_REQUEST_ABORTED                                         NTStatus      = 0xC000CF16
+       STATUS_CLOUD_FILE_PROPERTY_CORRUPT                                        NTStatus      = 0xC000CF17
+       STATUS_CLOUD_FILE_ACCESS_DENIED                                           NTStatus      = 0xC000CF18
+       STATUS_CLOUD_FILE_INCOMPATIBLE_HARDLINKS                                  NTStatus      = 0xC000CF19
+       STATUS_CLOUD_FILE_PROPERTY_LOCK_CONFLICT                                  NTStatus      = 0xC000CF1A
+       STATUS_CLOUD_FILE_REQUEST_CANCELED                                        NTStatus      = 0xC000CF1B
+       STATUS_CLOUD_FILE_PROVIDER_TERMINATED                                     NTStatus      = 0xC000CF1D
+       STATUS_NOT_A_CLOUD_SYNC_ROOT                                              NTStatus      = 0xC000CF1E
+       STATUS_CLOUD_FILE_REQUEST_TIMEOUT                                         NTStatus      = 0xC000CF1F
+       STATUS_ACPI_INVALID_OPCODE                                                NTStatus      = 0xC0140001
+       STATUS_ACPI_STACK_OVERFLOW                                                NTStatus      = 0xC0140002
+       STATUS_ACPI_ASSERT_FAILED                                                 NTStatus      = 0xC0140003
+       STATUS_ACPI_INVALID_INDEX                                                 NTStatus      = 0xC0140004
+       STATUS_ACPI_INVALID_ARGUMENT                                              NTStatus      = 0xC0140005
+       STATUS_ACPI_FATAL                                                         NTStatus      = 0xC0140006
+       STATUS_ACPI_INVALID_SUPERNAME                                             NTStatus      = 0xC0140007
+       STATUS_ACPI_INVALID_ARGTYPE                                               NTStatus      = 0xC0140008
+       STATUS_ACPI_INVALID_OBJTYPE                                               NTStatus      = 0xC0140009
+       STATUS_ACPI_INVALID_TARGETTYPE                                            NTStatus      = 0xC014000A
+       STATUS_ACPI_INCORRECT_ARGUMENT_COUNT                                      NTStatus      = 0xC014000B
+       STATUS_ACPI_ADDRESS_NOT_MAPPED                                            NTStatus      = 0xC014000C
+       STATUS_ACPI_INVALID_EVENTTYPE                                             NTStatus      = 0xC014000D
+       STATUS_ACPI_HANDLER_COLLISION                                             NTStatus      = 0xC014000E
+       STATUS_ACPI_INVALID_DATA                                                  NTStatus      = 0xC014000F
+       STATUS_ACPI_INVALID_REGION                                                NTStatus      = 0xC0140010
+       STATUS_ACPI_INVALID_ACCESS_SIZE                                           NTStatus      = 0xC0140011
+       STATUS_ACPI_ACQUIRE_GLOBAL_LOCK                                           NTStatus      = 0xC0140012
+       STATUS_ACPI_ALREADY_INITIALIZED                                           NTStatus      = 0xC0140013
+       STATUS_ACPI_NOT_INITIALIZED                                               NTStatus      = 0xC0140014
+       STATUS_ACPI_INVALID_MUTEX_LEVEL                                           NTStatus      = 0xC0140015
+       STATUS_ACPI_MUTEX_NOT_OWNED                                               NTStatus      = 0xC0140016
+       STATUS_ACPI_MUTEX_NOT_OWNER                                               NTStatus      = 0xC0140017
+       STATUS_ACPI_RS_ACCESS                                                     NTStatus      = 0xC0140018
+       STATUS_ACPI_INVALID_TABLE                                                 NTStatus      = 0xC0140019
+       STATUS_ACPI_REG_HANDLER_FAILED                                            NTStatus      = 0xC0140020
+       STATUS_ACPI_POWER_REQUEST_FAILED                                          NTStatus      = 0xC0140021
+       STATUS_CTX_WINSTATION_NAME_INVALID                                        NTStatus      = 0xC00A0001
+       STATUS_CTX_INVALID_PD                                                     NTStatus      = 0xC00A0002
+       STATUS_CTX_PD_NOT_FOUND                                                   NTStatus      = 0xC00A0003
+       STATUS_CTX_CDM_CONNECT                                                    NTStatus      = 0x400A0004
+       STATUS_CTX_CDM_DISCONNECT                                                 NTStatus      = 0x400A0005
+       STATUS_CTX_CLOSE_PENDING                                                  NTStatus      = 0xC00A0006
+       STATUS_CTX_NO_OUTBUF                                                      NTStatus      = 0xC00A0007
+       STATUS_CTX_MODEM_INF_NOT_FOUND                                            NTStatus      = 0xC00A0008
+       STATUS_CTX_INVALID_MODEMNAME                                              NTStatus      = 0xC00A0009
+       STATUS_CTX_RESPONSE_ERROR                                                 NTStatus      = 0xC00A000A
+       STATUS_CTX_MODEM_RESPONSE_TIMEOUT                                         NTStatus      = 0xC00A000B
+       STATUS_CTX_MODEM_RESPONSE_NO_CARRIER                                      NTStatus      = 0xC00A000C
+       STATUS_CTX_MODEM_RESPONSE_NO_DIALTONE                                     NTStatus      = 0xC00A000D
+       STATUS_CTX_MODEM_RESPONSE_BUSY                                            NTStatus      = 0xC00A000E
+       STATUS_CTX_MODEM_RESPONSE_VOICE                                           NTStatus      = 0xC00A000F
+       STATUS_CTX_TD_ERROR                                                       NTStatus      = 0xC00A0010
+       STATUS_CTX_LICENSE_CLIENT_INVALID                                         NTStatus      = 0xC00A0012
+       STATUS_CTX_LICENSE_NOT_AVAILABLE                                          NTStatus      = 0xC00A0013
+       STATUS_CTX_LICENSE_EXPIRED                                                NTStatus      = 0xC00A0014
+       STATUS_CTX_WINSTATION_NOT_FOUND                                           NTStatus      = 0xC00A0015
+       STATUS_CTX_WINSTATION_NAME_COLLISION                                      NTStatus      = 0xC00A0016
+       STATUS_CTX_WINSTATION_BUSY                                                NTStatus      = 0xC00A0017
+       STATUS_CTX_BAD_VIDEO_MODE                                                 NTStatus      = 0xC00A0018
+       STATUS_CTX_GRAPHICS_INVALID                                               NTStatus      = 0xC00A0022
+       STATUS_CTX_NOT_CONSOLE                                                    NTStatus      = 0xC00A0024
+       STATUS_CTX_CLIENT_QUERY_TIMEOUT                                           NTStatus      = 0xC00A0026
+       STATUS_CTX_CONSOLE_DISCONNECT                                             NTStatus      = 0xC00A0027
+       STATUS_CTX_CONSOLE_CONNECT                                                NTStatus      = 0xC00A0028
+       STATUS_CTX_SHADOW_DENIED                                                  NTStatus      = 0xC00A002A
+       STATUS_CTX_WINSTATION_ACCESS_DENIED                                       NTStatus      = 0xC00A002B
+       STATUS_CTX_INVALID_WD                                                     NTStatus      = 0xC00A002E
+       STATUS_CTX_WD_NOT_FOUND                                                   NTStatus      = 0xC00A002F
+       STATUS_CTX_SHADOW_INVALID                                                 NTStatus      = 0xC00A0030
+       STATUS_CTX_SHADOW_DISABLED                                                NTStatus      = 0xC00A0031
+       STATUS_RDP_PROTOCOL_ERROR                                                 NTStatus      = 0xC00A0032
+       STATUS_CTX_CLIENT_LICENSE_NOT_SET                                         NTStatus      = 0xC00A0033
+       STATUS_CTX_CLIENT_LICENSE_IN_USE                                          NTStatus      = 0xC00A0034
+       STATUS_CTX_SHADOW_ENDED_BY_MODE_CHANGE                                    NTStatus      = 0xC00A0035
+       STATUS_CTX_SHADOW_NOT_RUNNING                                             NTStatus      = 0xC00A0036
+       STATUS_CTX_LOGON_DISABLED                                                 NTStatus      = 0xC00A0037
+       STATUS_CTX_SECURITY_LAYER_ERROR                                           NTStatus      = 0xC00A0038
+       STATUS_TS_INCOMPATIBLE_SESSIONS                                           NTStatus      = 0xC00A0039
+       STATUS_TS_VIDEO_SUBSYSTEM_ERROR                                           NTStatus      = 0xC00A003A
+       STATUS_PNP_BAD_MPS_TABLE                                                  NTStatus      = 0xC0040035
+       STATUS_PNP_TRANSLATION_FAILED                                             NTStatus      = 0xC0040036
+       STATUS_PNP_IRQ_TRANSLATION_FAILED                                         NTStatus      = 0xC0040037
+       STATUS_PNP_INVALID_ID                                                     NTStatus      = 0xC0040038
+       STATUS_IO_REISSUE_AS_CACHED                                               NTStatus      = 0xC0040039
+       STATUS_MUI_FILE_NOT_FOUND                                                 NTStatus      = 0xC00B0001
+       STATUS_MUI_INVALID_FILE                                                   NTStatus      = 0xC00B0002
+       STATUS_MUI_INVALID_RC_CONFIG                                              NTStatus      = 0xC00B0003
+       STATUS_MUI_INVALID_LOCALE_NAME                                            NTStatus      = 0xC00B0004
+       STATUS_MUI_INVALID_ULTIMATEFALLBACK_NAME                                  NTStatus      = 0xC00B0005
+       STATUS_MUI_FILE_NOT_LOADED                                                NTStatus      = 0xC00B0006
+       STATUS_RESOURCE_ENUM_USER_STOP                                            NTStatus      = 0xC00B0007
+       STATUS_FLT_NO_HANDLER_DEFINED                                             NTStatus      = 0xC01C0001
+       STATUS_FLT_CONTEXT_ALREADY_DEFINED                                        NTStatus      = 0xC01C0002
+       STATUS_FLT_INVALID_ASYNCHRONOUS_REQUEST                                   NTStatus      = 0xC01C0003
+       STATUS_FLT_DISALLOW_FAST_IO                                               NTStatus      = 0xC01C0004
+       STATUS_FLT_INVALID_NAME_REQUEST                                           NTStatus      = 0xC01C0005
+       STATUS_FLT_NOT_SAFE_TO_POST_OPERATION                                     NTStatus      = 0xC01C0006
+       STATUS_FLT_NOT_INITIALIZED                                                NTStatus      = 0xC01C0007
+       STATUS_FLT_FILTER_NOT_READY                                               NTStatus      = 0xC01C0008
+       STATUS_FLT_POST_OPERATION_CLEANUP                                         NTStatus      = 0xC01C0009
+       STATUS_FLT_INTERNAL_ERROR                                                 NTStatus      = 0xC01C000A
+       STATUS_FLT_DELETING_OBJECT                                                NTStatus      = 0xC01C000B
+       STATUS_FLT_MUST_BE_NONPAGED_POOL                                          NTStatus      = 0xC01C000C
+       STATUS_FLT_DUPLICATE_ENTRY                                                NTStatus      = 0xC01C000D
+       STATUS_FLT_CBDQ_DISABLED                                                  NTStatus      = 0xC01C000E
+       STATUS_FLT_DO_NOT_ATTACH                                                  NTStatus      = 0xC01C000F
+       STATUS_FLT_DO_NOT_DETACH                                                  NTStatus      = 0xC01C0010
+       STATUS_FLT_INSTANCE_ALTITUDE_COLLISION                                    NTStatus      = 0xC01C0011
+       STATUS_FLT_INSTANCE_NAME_COLLISION                                        NTStatus      = 0xC01C0012
+       STATUS_FLT_FILTER_NOT_FOUND                                               NTStatus      = 0xC01C0013
+       STATUS_FLT_VOLUME_NOT_FOUND                                               NTStatus      = 0xC01C0014
+       STATUS_FLT_INSTANCE_NOT_FOUND                                             NTStatus      = 0xC01C0015
+       STATUS_FLT_CONTEXT_ALLOCATION_NOT_FOUND                                   NTStatus      = 0xC01C0016
+       STATUS_FLT_INVALID_CONTEXT_REGISTRATION                                   NTStatus      = 0xC01C0017
+       STATUS_FLT_NAME_CACHE_MISS                                                NTStatus      = 0xC01C0018
+       STATUS_FLT_NO_DEVICE_OBJECT                                               NTStatus      = 0xC01C0019
+       STATUS_FLT_VOLUME_ALREADY_MOUNTED                                         NTStatus      = 0xC01C001A
+       STATUS_FLT_ALREADY_ENLISTED                                               NTStatus      = 0xC01C001B
+       STATUS_FLT_CONTEXT_ALREADY_LINKED                                         NTStatus      = 0xC01C001C
+       STATUS_FLT_NO_WAITER_FOR_REPLY                                            NTStatus      = 0xC01C0020
+       STATUS_FLT_REGISTRATION_BUSY                                              NTStatus      = 0xC01C0023
+       STATUS_SXS_SECTION_NOT_FOUND                                              NTStatus      = 0xC0150001
+       STATUS_SXS_CANT_GEN_ACTCTX                                                NTStatus      = 0xC0150002
+       STATUS_SXS_INVALID_ACTCTXDATA_FORMAT                                      NTStatus      = 0xC0150003
+       STATUS_SXS_ASSEMBLY_NOT_FOUND                                             NTStatus      = 0xC0150004
+       STATUS_SXS_MANIFEST_FORMAT_ERROR                                          NTStatus      = 0xC0150005
+       STATUS_SXS_MANIFEST_PARSE_ERROR                                           NTStatus      = 0xC0150006
+       STATUS_SXS_ACTIVATION_CONTEXT_DISABLED                                    NTStatus      = 0xC0150007
+       STATUS_SXS_KEY_NOT_FOUND                                                  NTStatus      = 0xC0150008
+       STATUS_SXS_VERSION_CONFLICT                                               NTStatus      = 0xC0150009
+       STATUS_SXS_WRONG_SECTION_TYPE                                             NTStatus      = 0xC015000A
+       STATUS_SXS_THREAD_QUERIES_DISABLED                                        NTStatus      = 0xC015000B
+       STATUS_SXS_ASSEMBLY_MISSING                                               NTStatus      = 0xC015000C
+       STATUS_SXS_RELEASE_ACTIVATION_CONTEXT                                     NTStatus      = 0x4015000D
+       STATUS_SXS_PROCESS_DEFAULT_ALREADY_SET                                    NTStatus      = 0xC015000E
+       STATUS_SXS_EARLY_DEACTIVATION                                             NTStatus      = 0xC015000F
+       STATUS_SXS_INVALID_DEACTIVATION                                           NTStatus      = 0xC0150010
+       STATUS_SXS_MULTIPLE_DEACTIVATION                                          NTStatus      = 0xC0150011
+       STATUS_SXS_SYSTEM_DEFAULT_ACTIVATION_CONTEXT_EMPTY                        NTStatus      = 0xC0150012
+       STATUS_SXS_PROCESS_TERMINATION_REQUESTED                                  NTStatus      = 0xC0150013
+       STATUS_SXS_CORRUPT_ACTIVATION_STACK                                       NTStatus      = 0xC0150014
+       STATUS_SXS_CORRUPTION                                                     NTStatus      = 0xC0150015
+       STATUS_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE                               NTStatus      = 0xC0150016
+       STATUS_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME                                NTStatus      = 0xC0150017
+       STATUS_SXS_IDENTITY_DUPLICATE_ATTRIBUTE                                   NTStatus      = 0xC0150018
+       STATUS_SXS_IDENTITY_PARSE_ERROR                                           NTStatus      = 0xC0150019
+       STATUS_SXS_COMPONENT_STORE_CORRUPT                                        NTStatus      = 0xC015001A
+       STATUS_SXS_FILE_HASH_MISMATCH                                             NTStatus      = 0xC015001B
+       STATUS_SXS_MANIFEST_IDENTITY_SAME_BUT_CONTENTS_DIFFERENT                  NTStatus      = 0xC015001C
+       STATUS_SXS_IDENTITIES_DIFFERENT                                           NTStatus      = 0xC015001D
+       STATUS_SXS_ASSEMBLY_IS_NOT_A_DEPLOYMENT                                   NTStatus      = 0xC015001E
+       STATUS_SXS_FILE_NOT_PART_OF_ASSEMBLY                                      NTStatus      = 0xC015001F
+       STATUS_ADVANCED_INSTALLER_FAILED                                          NTStatus      = 0xC0150020
+       STATUS_XML_ENCODING_MISMATCH                                              NTStatus      = 0xC0150021
+       STATUS_SXS_MANIFEST_TOO_BIG                                               NTStatus      = 0xC0150022
+       STATUS_SXS_SETTING_NOT_REGISTERED                                         NTStatus      = 0xC0150023
+       STATUS_SXS_TRANSACTION_CLOSURE_INCOMPLETE                                 NTStatus      = 0xC0150024
+       STATUS_SMI_PRIMITIVE_INSTALLER_FAILED                                     NTStatus      = 0xC0150025
+       STATUS_GENERIC_COMMAND_FAILED                                             NTStatus      = 0xC0150026
+       STATUS_SXS_FILE_HASH_MISSING                                              NTStatus      = 0xC0150027
+       STATUS_CLUSTER_INVALID_NODE                                               NTStatus      = 0xC0130001
+       STATUS_CLUSTER_NODE_EXISTS                                                NTStatus      = 0xC0130002
+       STATUS_CLUSTER_JOIN_IN_PROGRESS                                           NTStatus      = 0xC0130003
+       STATUS_CLUSTER_NODE_NOT_FOUND                                             NTStatus      = 0xC0130004
+       STATUS_CLUSTER_LOCAL_NODE_NOT_FOUND                                       NTStatus      = 0xC0130005
+       STATUS_CLUSTER_NETWORK_EXISTS                                             NTStatus      = 0xC0130006
+       STATUS_CLUSTER_NETWORK_NOT_FOUND                                          NTStatus      = 0xC0130007
+       STATUS_CLUSTER_NETINTERFACE_EXISTS                                        NTStatus      = 0xC0130008
+       STATUS_CLUSTER_NETINTERFACE_NOT_FOUND                                     NTStatus      = 0xC0130009
+       STATUS_CLUSTER_INVALID_REQUEST                                            NTStatus      = 0xC013000A
+       STATUS_CLUSTER_INVALID_NETWORK_PROVIDER                                   NTStatus      = 0xC013000B
+       STATUS_CLUSTER_NODE_DOWN                                                  NTStatus      = 0xC013000C
+       STATUS_CLUSTER_NODE_UNREACHABLE                                           NTStatus      = 0xC013000D
+       STATUS_CLUSTER_NODE_NOT_MEMBER                                            NTStatus      = 0xC013000E
+       STATUS_CLUSTER_JOIN_NOT_IN_PROGRESS                                       NTStatus      = 0xC013000F
+       STATUS_CLUSTER_INVALID_NETWORK                                            NTStatus      = 0xC0130010
+       STATUS_CLUSTER_NO_NET_ADAPTERS                                            NTStatus      = 0xC0130011
+       STATUS_CLUSTER_NODE_UP                                                    NTStatus      = 0xC0130012
+       STATUS_CLUSTER_NODE_PAUSED                                                NTStatus      = 0xC0130013
+       STATUS_CLUSTER_NODE_NOT_PAUSED                                            NTStatus      = 0xC0130014
+       STATUS_CLUSTER_NO_SECURITY_CONTEXT                                        NTStatus      = 0xC0130015
+       STATUS_CLUSTER_NETWORK_NOT_INTERNAL                                       NTStatus      = 0xC0130016
+       STATUS_CLUSTER_POISONED                                                   NTStatus      = 0xC0130017
+       STATUS_CLUSTER_NON_CSV_PATH                                               NTStatus      = 0xC0130018
+       STATUS_CLUSTER_CSV_VOLUME_NOT_LOCAL                                       NTStatus      = 0xC0130019
+       STATUS_CLUSTER_CSV_READ_OPLOCK_BREAK_IN_PROGRESS                          NTStatus      = 0xC0130020
+       STATUS_CLUSTER_CSV_AUTO_PAUSE_ERROR                                       NTStatus      = 0xC0130021
+       STATUS_CLUSTER_CSV_REDIRECTED                                             NTStatus      = 0xC0130022
+       STATUS_CLUSTER_CSV_NOT_REDIRECTED                                         NTStatus      = 0xC0130023
+       STATUS_CLUSTER_CSV_VOLUME_DRAINING                                        NTStatus      = 0xC0130024
+       STATUS_CLUSTER_CSV_SNAPSHOT_CREATION_IN_PROGRESS                          NTStatus      = 0xC0130025
+       STATUS_CLUSTER_CSV_VOLUME_DRAINING_SUCCEEDED_DOWNLEVEL                    NTStatus      = 0xC0130026
+       STATUS_CLUSTER_CSV_NO_SNAPSHOTS                                           NTStatus      = 0xC0130027
+       STATUS_CSV_IO_PAUSE_TIMEOUT                                               NTStatus      = 0xC0130028
+       STATUS_CLUSTER_CSV_INVALID_HANDLE                                         NTStatus      = 0xC0130029
+       STATUS_CLUSTER_CSV_SUPPORTED_ONLY_ON_COORDINATOR                          NTStatus      = 0xC0130030
+       STATUS_CLUSTER_CAM_TICKET_REPLAY_DETECTED                                 NTStatus      = 0xC0130031
+       STATUS_TRANSACTIONAL_CONFLICT                                             NTStatus      = 0xC0190001
+       STATUS_INVALID_TRANSACTION                                                NTStatus      = 0xC0190002
+       STATUS_TRANSACTION_NOT_ACTIVE                                             NTStatus      = 0xC0190003
+       STATUS_TM_INITIALIZATION_FAILED                                           NTStatus      = 0xC0190004
+       STATUS_RM_NOT_ACTIVE                                                      NTStatus      = 0xC0190005
+       STATUS_RM_METADATA_CORRUPT                                                NTStatus      = 0xC0190006
+       STATUS_TRANSACTION_NOT_JOINED                                             NTStatus      = 0xC0190007
+       STATUS_DIRECTORY_NOT_RM                                                   NTStatus      = 0xC0190008
+       STATUS_COULD_NOT_RESIZE_LOG                                               NTStatus      = 0x80190009
+       STATUS_TRANSACTIONS_UNSUPPORTED_REMOTE                                    NTStatus      = 0xC019000A
+       STATUS_LOG_RESIZE_INVALID_SIZE                                            NTStatus      = 0xC019000B
+       STATUS_REMOTE_FILE_VERSION_MISMATCH                                       NTStatus      = 0xC019000C
+       STATUS_CRM_PROTOCOL_ALREADY_EXISTS                                        NTStatus      = 0xC019000F
+       STATUS_TRANSACTION_PROPAGATION_FAILED                                     NTStatus      = 0xC0190010
+       STATUS_CRM_PROTOCOL_NOT_FOUND                                             NTStatus      = 0xC0190011
+       STATUS_TRANSACTION_SUPERIOR_EXISTS                                        NTStatus      = 0xC0190012
+       STATUS_TRANSACTION_REQUEST_NOT_VALID                                      NTStatus      = 0xC0190013
+       STATUS_TRANSACTION_NOT_REQUESTED                                          NTStatus      = 0xC0190014
+       STATUS_TRANSACTION_ALREADY_ABORTED                                        NTStatus      = 0xC0190015
+       STATUS_TRANSACTION_ALREADY_COMMITTED                                      NTStatus      = 0xC0190016
+       STATUS_TRANSACTION_INVALID_MARSHALL_BUFFER                                NTStatus      = 0xC0190017
+       STATUS_CURRENT_TRANSACTION_NOT_VALID                                      NTStatus      = 0xC0190018
+       STATUS_LOG_GROWTH_FAILED                                                  NTStatus      = 0xC0190019
+       STATUS_OBJECT_NO_LONGER_EXISTS                                            NTStatus      = 0xC0190021
+       STATUS_STREAM_MINIVERSION_NOT_FOUND                                       NTStatus      = 0xC0190022
+       STATUS_STREAM_MINIVERSION_NOT_VALID                                       NTStatus      = 0xC0190023
+       STATUS_MINIVERSION_INACCESSIBLE_FROM_SPECIFIED_TRANSACTION                NTStatus      = 0xC0190024
+       STATUS_CANT_OPEN_MINIVERSION_WITH_MODIFY_INTENT                           NTStatus      = 0xC0190025
+       STATUS_CANT_CREATE_MORE_STREAM_MINIVERSIONS                               NTStatus      = 0xC0190026
+       STATUS_HANDLE_NO_LONGER_VALID                                             NTStatus      = 0xC0190028
+       STATUS_NO_TXF_METADATA                                                    NTStatus      = 0x80190029
+       STATUS_LOG_CORRUPTION_DETECTED                                            NTStatus      = 0xC0190030
+       STATUS_CANT_RECOVER_WITH_HANDLE_OPEN                                      NTStatus      = 0x80190031
+       STATUS_RM_DISCONNECTED                                                    NTStatus      = 0xC0190032
+       STATUS_ENLISTMENT_NOT_SUPERIOR                                            NTStatus      = 0xC0190033
+       STATUS_RECOVERY_NOT_NEEDED                                                NTStatus      = 0x40190034
+       STATUS_RM_ALREADY_STARTED                                                 NTStatus      = 0x40190035
+       STATUS_FILE_IDENTITY_NOT_PERSISTENT                                       NTStatus      = 0xC0190036
+       STATUS_CANT_BREAK_TRANSACTIONAL_DEPENDENCY                                NTStatus      = 0xC0190037
+       STATUS_CANT_CROSS_RM_BOUNDARY                                             NTStatus      = 0xC0190038
+       STATUS_TXF_DIR_NOT_EMPTY                                                  NTStatus      = 0xC0190039
+       STATUS_INDOUBT_TRANSACTIONS_EXIST                                         NTStatus      = 0xC019003A
+       STATUS_TM_VOLATILE                                                        NTStatus      = 0xC019003B
+       STATUS_ROLLBACK_TIMER_EXPIRED                                             NTStatus      = 0xC019003C
+       STATUS_TXF_ATTRIBUTE_CORRUPT                                              NTStatus      = 0xC019003D
+       STATUS_EFS_NOT_ALLOWED_IN_TRANSACTION                                     NTStatus      = 0xC019003E
+       STATUS_TRANSACTIONAL_OPEN_NOT_ALLOWED                                     NTStatus      = 0xC019003F
+       STATUS_TRANSACTED_MAPPING_UNSUPPORTED_REMOTE                              NTStatus      = 0xC0190040
+       STATUS_TXF_METADATA_ALREADY_PRESENT                                       NTStatus      = 0x80190041
+       STATUS_TRANSACTION_SCOPE_CALLBACKS_NOT_SET                                NTStatus      = 0x80190042
+       STATUS_TRANSACTION_REQUIRED_PROMOTION                                     NTStatus      = 0xC0190043
+       STATUS_CANNOT_EXECUTE_FILE_IN_TRANSACTION                                 NTStatus      = 0xC0190044
+       STATUS_TRANSACTIONS_NOT_FROZEN                                            NTStatus      = 0xC0190045
+       STATUS_TRANSACTION_FREEZE_IN_PROGRESS                                     NTStatus      = 0xC0190046
+       STATUS_NOT_SNAPSHOT_VOLUME                                                NTStatus      = 0xC0190047
+       STATUS_NO_SAVEPOINT_WITH_OPEN_FILES                                       NTStatus      = 0xC0190048
+       STATUS_SPARSE_NOT_ALLOWED_IN_TRANSACTION                                  NTStatus      = 0xC0190049
+       STATUS_TM_IDENTITY_MISMATCH                                               NTStatus      = 0xC019004A
+       STATUS_FLOATED_SECTION                                                    NTStatus      = 0xC019004B
+       STATUS_CANNOT_ACCEPT_TRANSACTED_WORK                                      NTStatus      = 0xC019004C
+       STATUS_CANNOT_ABORT_TRANSACTIONS                                          NTStatus      = 0xC019004D
+       STATUS_TRANSACTION_NOT_FOUND                                              NTStatus      = 0xC019004E
+       STATUS_RESOURCEMANAGER_NOT_FOUND                                          NTStatus      = 0xC019004F
+       STATUS_ENLISTMENT_NOT_FOUND                                               NTStatus      = 0xC0190050
+       STATUS_TRANSACTIONMANAGER_NOT_FOUND                                       NTStatus      = 0xC0190051
+       STATUS_TRANSACTIONMANAGER_NOT_ONLINE                                      NTStatus      = 0xC0190052
+       STATUS_TRANSACTIONMANAGER_RECOVERY_NAME_COLLISION                         NTStatus      = 0xC0190053
+       STATUS_TRANSACTION_NOT_ROOT                                               NTStatus      = 0xC0190054
+       STATUS_TRANSACTION_OBJECT_EXPIRED                                         NTStatus      = 0xC0190055
+       STATUS_COMPRESSION_NOT_ALLOWED_IN_TRANSACTION                             NTStatus      = 0xC0190056
+       STATUS_TRANSACTION_RESPONSE_NOT_ENLISTED                                  NTStatus      = 0xC0190057
+       STATUS_TRANSACTION_RECORD_TOO_LONG                                        NTStatus      = 0xC0190058
+       STATUS_NO_LINK_TRACKING_IN_TRANSACTION                                    NTStatus      = 0xC0190059
+       STATUS_OPERATION_NOT_SUPPORTED_IN_TRANSACTION                             NTStatus      = 0xC019005A
+       STATUS_TRANSACTION_INTEGRITY_VIOLATED                                     NTStatus      = 0xC019005B
+       STATUS_TRANSACTIONMANAGER_IDENTITY_MISMATCH                               NTStatus      = 0xC019005C
+       STATUS_RM_CANNOT_BE_FROZEN_FOR_SNAPSHOT                                   NTStatus      = 0xC019005D
+       STATUS_TRANSACTION_MUST_WRITETHROUGH                                      NTStatus      = 0xC019005E
+       STATUS_TRANSACTION_NO_SUPERIOR                                            NTStatus      = 0xC019005F
+       STATUS_EXPIRED_HANDLE                                                     NTStatus      = 0xC0190060
+       STATUS_TRANSACTION_NOT_ENLISTED                                           NTStatus      = 0xC0190061
+       STATUS_LOG_SECTOR_INVALID                                                 NTStatus      = 0xC01A0001
+       STATUS_LOG_SECTOR_PARITY_INVALID                                          NTStatus      = 0xC01A0002
+       STATUS_LOG_SECTOR_REMAPPED                                                NTStatus      = 0xC01A0003
+       STATUS_LOG_BLOCK_INCOMPLETE                                               NTStatus      = 0xC01A0004
+       STATUS_LOG_INVALID_RANGE                                                  NTStatus      = 0xC01A0005
+       STATUS_LOG_BLOCKS_EXHAUSTED                                               NTStatus      = 0xC01A0006
+       STATUS_LOG_READ_CONTEXT_INVALID                                           NTStatus      = 0xC01A0007
+       STATUS_LOG_RESTART_INVALID                                                NTStatus      = 0xC01A0008
+       STATUS_LOG_BLOCK_VERSION                                                  NTStatus      = 0xC01A0009
+       STATUS_LOG_BLOCK_INVALID                                                  NTStatus      = 0xC01A000A
+       STATUS_LOG_READ_MODE_INVALID                                              NTStatus      = 0xC01A000B
+       STATUS_LOG_NO_RESTART                                                     NTStatus      = 0x401A000C
+       STATUS_LOG_METADATA_CORRUPT                                               NTStatus      = 0xC01A000D
+       STATUS_LOG_METADATA_INVALID                                               NTStatus      = 0xC01A000E
+       STATUS_LOG_METADATA_INCONSISTENT                                          NTStatus      = 0xC01A000F
+       STATUS_LOG_RESERVATION_INVALID                                            NTStatus      = 0xC01A0010
+       STATUS_LOG_CANT_DELETE                                                    NTStatus      = 0xC01A0011
+       STATUS_LOG_CONTAINER_LIMIT_EXCEEDED                                       NTStatus      = 0xC01A0012
+       STATUS_LOG_START_OF_LOG                                                   NTStatus      = 0xC01A0013
+       STATUS_LOG_POLICY_ALREADY_INSTALLED                                       NTStatus      = 0xC01A0014
+       STATUS_LOG_POLICY_NOT_INSTALLED                                           NTStatus      = 0xC01A0015
+       STATUS_LOG_POLICY_INVALID                                                 NTStatus      = 0xC01A0016
+       STATUS_LOG_POLICY_CONFLICT                                                NTStatus      = 0xC01A0017
+       STATUS_LOG_PINNED_ARCHIVE_TAIL                                            NTStatus      = 0xC01A0018
+       STATUS_LOG_RECORD_NONEXISTENT                                             NTStatus      = 0xC01A0019
+       STATUS_LOG_RECORDS_RESERVED_INVALID                                       NTStatus      = 0xC01A001A
+       STATUS_LOG_SPACE_RESERVED_INVALID                                         NTStatus      = 0xC01A001B
+       STATUS_LOG_TAIL_INVALID                                                   NTStatus      = 0xC01A001C
+       STATUS_LOG_FULL                                                           NTStatus      = 0xC01A001D
+       STATUS_LOG_MULTIPLEXED                                                    NTStatus      = 0xC01A001E
+       STATUS_LOG_DEDICATED                                                      NTStatus      = 0xC01A001F
+       STATUS_LOG_ARCHIVE_NOT_IN_PROGRESS                                        NTStatus      = 0xC01A0020
+       STATUS_LOG_ARCHIVE_IN_PROGRESS                                            NTStatus      = 0xC01A0021
+       STATUS_LOG_EPHEMERAL                                                      NTStatus      = 0xC01A0022
+       STATUS_LOG_NOT_ENOUGH_CONTAINERS                                          NTStatus      = 0xC01A0023
+       STATUS_LOG_CLIENT_ALREADY_REGISTERED                                      NTStatus      = 0xC01A0024
+       STATUS_LOG_CLIENT_NOT_REGISTERED                                          NTStatus      = 0xC01A0025
+       STATUS_LOG_FULL_HANDLER_IN_PROGRESS                                       NTStatus      = 0xC01A0026
+       STATUS_LOG_CONTAINER_READ_FAILED                                          NTStatus      = 0xC01A0027
+       STATUS_LOG_CONTAINER_WRITE_FAILED                                         NTStatus      = 0xC01A0028
+       STATUS_LOG_CONTAINER_OPEN_FAILED                                          NTStatus      = 0xC01A0029
+       STATUS_LOG_CONTAINER_STATE_INVALID                                        NTStatus      = 0xC01A002A
+       STATUS_LOG_STATE_INVALID                                                  NTStatus      = 0xC01A002B
+       STATUS_LOG_PINNED                                                         NTStatus      = 0xC01A002C
+       STATUS_LOG_METADATA_FLUSH_FAILED                                          NTStatus      = 0xC01A002D
+       STATUS_LOG_INCONSISTENT_SECURITY                                          NTStatus      = 0xC01A002E
+       STATUS_LOG_APPENDED_FLUSH_FAILED                                          NTStatus      = 0xC01A002F
+       STATUS_LOG_PINNED_RESERVATION                                             NTStatus      = 0xC01A0030
+       STATUS_VIDEO_HUNG_DISPLAY_DRIVER_THREAD                                   NTStatus      = 0xC01B00EA
+       STATUS_VIDEO_HUNG_DISPLAY_DRIVER_THREAD_RECOVERED                         NTStatus      = 0x801B00EB
+       STATUS_VIDEO_DRIVER_DEBUG_REPORT_REQUEST                                  NTStatus      = 0x401B00EC
+       STATUS_MONITOR_NO_DESCRIPTOR                                              NTStatus      = 0xC01D0001
+       STATUS_MONITOR_UNKNOWN_DESCRIPTOR_FORMAT                                  NTStatus      = 0xC01D0002
+       STATUS_MONITOR_INVALID_DESCRIPTOR_CHECKSUM                                NTStatus      = 0xC01D0003
+       STATUS_MONITOR_INVALID_STANDARD_TIMING_BLOCK                              NTStatus      = 0xC01D0004
+       STATUS_MONITOR_WMI_DATABLOCK_REGISTRATION_FAILED                          NTStatus      = 0xC01D0005
+       STATUS_MONITOR_INVALID_SERIAL_NUMBER_MONDSC_BLOCK                         NTStatus      = 0xC01D0006
+       STATUS_MONITOR_INVALID_USER_FRIENDLY_MONDSC_BLOCK                         NTStatus      = 0xC01D0007
+       STATUS_MONITOR_NO_MORE_DESCRIPTOR_DATA                                    NTStatus      = 0xC01D0008
+       STATUS_MONITOR_INVALID_DETAILED_TIMING_BLOCK                              NTStatus      = 0xC01D0009
+       STATUS_MONITOR_INVALID_MANUFACTURE_DATE                                   NTStatus      = 0xC01D000A
+       STATUS_GRAPHICS_NOT_EXCLUSIVE_MODE_OWNER                                  NTStatus      = 0xC01E0000
+       STATUS_GRAPHICS_INSUFFICIENT_DMA_BUFFER                                   NTStatus      = 0xC01E0001
+       STATUS_GRAPHICS_INVALID_DISPLAY_ADAPTER                                   NTStatus      = 0xC01E0002
+       STATUS_GRAPHICS_ADAPTER_WAS_RESET                                         NTStatus      = 0xC01E0003
+       STATUS_GRAPHICS_INVALID_DRIVER_MODEL                                      NTStatus      = 0xC01E0004
+       STATUS_GRAPHICS_PRESENT_MODE_CHANGED                                      NTStatus      = 0xC01E0005
+       STATUS_GRAPHICS_PRESENT_OCCLUDED                                          NTStatus      = 0xC01E0006
+       STATUS_GRAPHICS_PRESENT_DENIED                                            NTStatus      = 0xC01E0007
+       STATUS_GRAPHICS_CANNOTCOLORCONVERT                                        NTStatus      = 0xC01E0008
+       STATUS_GRAPHICS_DRIVER_MISMATCH                                           NTStatus      = 0xC01E0009
+       STATUS_GRAPHICS_PARTIAL_DATA_POPULATED                                    NTStatus      = 0x401E000A
+       STATUS_GRAPHICS_PRESENT_REDIRECTION_DISABLED                              NTStatus      = 0xC01E000B
+       STATUS_GRAPHICS_PRESENT_UNOCCLUDED                                        NTStatus      = 0xC01E000C
+       STATUS_GRAPHICS_WINDOWDC_NOT_AVAILABLE                                    NTStatus      = 0xC01E000D
+       STATUS_GRAPHICS_WINDOWLESS_PRESENT_DISABLED                               NTStatus      = 0xC01E000E
+       STATUS_GRAPHICS_PRESENT_INVALID_WINDOW                                    NTStatus      = 0xC01E000F
+       STATUS_GRAPHICS_PRESENT_BUFFER_NOT_BOUND                                  NTStatus      = 0xC01E0010
+       STATUS_GRAPHICS_VAIL_STATE_CHANGED                                        NTStatus      = 0xC01E0011
+       STATUS_GRAPHICS_INDIRECT_DISPLAY_ABANDON_SWAPCHAIN                        NTStatus      = 0xC01E0012
+       STATUS_GRAPHICS_INDIRECT_DISPLAY_DEVICE_STOPPED                           NTStatus      = 0xC01E0013
+       STATUS_GRAPHICS_NO_VIDEO_MEMORY                                           NTStatus      = 0xC01E0100
+       STATUS_GRAPHICS_CANT_LOCK_MEMORY                                          NTStatus      = 0xC01E0101
+       STATUS_GRAPHICS_ALLOCATION_BUSY                                           NTStatus      = 0xC01E0102
+       STATUS_GRAPHICS_TOO_MANY_REFERENCES                                       NTStatus      = 0xC01E0103
+       STATUS_GRAPHICS_TRY_AGAIN_LATER                                           NTStatus      = 0xC01E0104
+       STATUS_GRAPHICS_TRY_AGAIN_NOW                                             NTStatus      = 0xC01E0105
+       STATUS_GRAPHICS_ALLOCATION_INVALID                                        NTStatus      = 0xC01E0106
+       STATUS_GRAPHICS_UNSWIZZLING_APERTURE_UNAVAILABLE                          NTStatus      = 0xC01E0107
+       STATUS_GRAPHICS_UNSWIZZLING_APERTURE_UNSUPPORTED                          NTStatus      = 0xC01E0108
+       STATUS_GRAPHICS_CANT_EVICT_PINNED_ALLOCATION                              NTStatus      = 0xC01E0109
+       STATUS_GRAPHICS_INVALID_ALLOCATION_USAGE                                  NTStatus      = 0xC01E0110
+       STATUS_GRAPHICS_CANT_RENDER_LOCKED_ALLOCATION                             NTStatus      = 0xC01E0111
+       STATUS_GRAPHICS_ALLOCATION_CLOSED                                         NTStatus      = 0xC01E0112
+       STATUS_GRAPHICS_INVALID_ALLOCATION_INSTANCE                               NTStatus      = 0xC01E0113
+       STATUS_GRAPHICS_INVALID_ALLOCATION_HANDLE                                 NTStatus      = 0xC01E0114
+       STATUS_GRAPHICS_WRONG_ALLOCATION_DEVICE                                   NTStatus      = 0xC01E0115
+       STATUS_GRAPHICS_ALLOCATION_CONTENT_LOST                                   NTStatus      = 0xC01E0116
+       STATUS_GRAPHICS_GPU_EXCEPTION_ON_DEVICE                                   NTStatus      = 0xC01E0200
+       STATUS_GRAPHICS_SKIP_ALLOCATION_PREPARATION                               NTStatus      = 0x401E0201
+       STATUS_GRAPHICS_INVALID_VIDPN_TOPOLOGY                                    NTStatus      = 0xC01E0300
+       STATUS_GRAPHICS_VIDPN_TOPOLOGY_NOT_SUPPORTED                              NTStatus      = 0xC01E0301
+       STATUS_GRAPHICS_VIDPN_TOPOLOGY_CURRENTLY_NOT_SUPPORTED                    NTStatus      = 0xC01E0302
+       STATUS_GRAPHICS_INVALID_VIDPN                                             NTStatus      = 0xC01E0303
+       STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_SOURCE                              NTStatus      = 0xC01E0304
+       STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_TARGET                              NTStatus      = 0xC01E0305
+       STATUS_GRAPHICS_VIDPN_MODALITY_NOT_SUPPORTED                              NTStatus      = 0xC01E0306
+       STATUS_GRAPHICS_MODE_NOT_PINNED                                           NTStatus      = 0x401E0307
+       STATUS_GRAPHICS_INVALID_VIDPN_SOURCEMODESET                               NTStatus      = 0xC01E0308
+       STATUS_GRAPHICS_INVALID_VIDPN_TARGETMODESET                               NTStatus      = 0xC01E0309
+       STATUS_GRAPHICS_INVALID_FREQUENCY                                         NTStatus      = 0xC01E030A
+       STATUS_GRAPHICS_INVALID_ACTIVE_REGION                                     NTStatus      = 0xC01E030B
+       STATUS_GRAPHICS_INVALID_TOTAL_REGION                                      NTStatus      = 0xC01E030C
+       STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_SOURCE_MODE                         NTStatus      = 0xC01E0310
+       STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_TARGET_MODE                         NTStatus      = 0xC01E0311
+       STATUS_GRAPHICS_PINNED_MODE_MUST_REMAIN_IN_SET                            NTStatus      = 0xC01E0312
+       STATUS_GRAPHICS_PATH_ALREADY_IN_TOPOLOGY                                  NTStatus      = 0xC01E0313
+       STATUS_GRAPHICS_MODE_ALREADY_IN_MODESET                                   NTStatus      = 0xC01E0314
+       STATUS_GRAPHICS_INVALID_VIDEOPRESENTSOURCESET                             NTStatus      = 0xC01E0315
+       STATUS_GRAPHICS_INVALID_VIDEOPRESENTTARGETSET                             NTStatus      = 0xC01E0316
+       STATUS_GRAPHICS_SOURCE_ALREADY_IN_SET                                     NTStatus      = 0xC01E0317
+       STATUS_GRAPHICS_TARGET_ALREADY_IN_SET                                     NTStatus      = 0xC01E0318
+       STATUS_GRAPHICS_INVALID_VIDPN_PRESENT_PATH                                NTStatus      = 0xC01E0319
+       STATUS_GRAPHICS_NO_RECOMMENDED_VIDPN_TOPOLOGY                             NTStatus      = 0xC01E031A
+       STATUS_GRAPHICS_INVALID_MONITOR_FREQUENCYRANGESET                         NTStatus      = 0xC01E031B
+       STATUS_GRAPHICS_INVALID_MONITOR_FREQUENCYRANGE                            NTStatus      = 0xC01E031C
+       STATUS_GRAPHICS_FREQUENCYRANGE_NOT_IN_SET                                 NTStatus      = 0xC01E031D
+       STATUS_GRAPHICS_NO_PREFERRED_MODE                                         NTStatus      = 0x401E031E
+       STATUS_GRAPHICS_FREQUENCYRANGE_ALREADY_IN_SET                             NTStatus      = 0xC01E031F
+       STATUS_GRAPHICS_STALE_MODESET                                             NTStatus      = 0xC01E0320
+       STATUS_GRAPHICS_INVALID_MONITOR_SOURCEMODESET                             NTStatus      = 0xC01E0321
+       STATUS_GRAPHICS_INVALID_MONITOR_SOURCE_MODE                               NTStatus      = 0xC01E0322
+       STATUS_GRAPHICS_NO_RECOMMENDED_FUNCTIONAL_VIDPN                           NTStatus      = 0xC01E0323
+       STATUS_GRAPHICS_MODE_ID_MUST_BE_UNIQUE                                    NTStatus      = 0xC01E0324
+       STATUS_GRAPHICS_EMPTY_ADAPTER_MONITOR_MODE_SUPPORT_INTERSECTION           NTStatus      = 0xC01E0325
+       STATUS_GRAPHICS_VIDEO_PRESENT_TARGETS_LESS_THAN_SOURCES                   NTStatus      = 0xC01E0326
+       STATUS_GRAPHICS_PATH_NOT_IN_TOPOLOGY                                      NTStatus      = 0xC01E0327
+       STATUS_GRAPHICS_ADAPTER_MUST_HAVE_AT_LEAST_ONE_SOURCE                     NTStatus      = 0xC01E0328
+       STATUS_GRAPHICS_ADAPTER_MUST_HAVE_AT_LEAST_ONE_TARGET                     NTStatus      = 0xC01E0329
+       STATUS_GRAPHICS_INVALID_MONITORDESCRIPTORSET                              NTStatus      = 0xC01E032A
+       STATUS_GRAPHICS_INVALID_MONITORDESCRIPTOR                                 NTStatus      = 0xC01E032B
+       STATUS_GRAPHICS_MONITORDESCRIPTOR_NOT_IN_SET                              NTStatus      = 0xC01E032C
+       STATUS_GRAPHICS_MONITORDESCRIPTOR_ALREADY_IN_SET                          NTStatus      = 0xC01E032D
+       STATUS_GRAPHICS_MONITORDESCRIPTOR_ID_MUST_BE_UNIQUE                       NTStatus      = 0xC01E032E
+       STATUS_GRAPHICS_INVALID_VIDPN_TARGET_SUBSET_TYPE                          NTStatus      = 0xC01E032F
+       STATUS_GRAPHICS_RESOURCES_NOT_RELATED                                     NTStatus      = 0xC01E0330
+       STATUS_GRAPHICS_SOURCE_ID_MUST_BE_UNIQUE                                  NTStatus      = 0xC01E0331
+       STATUS_GRAPHICS_TARGET_ID_MUST_BE_UNIQUE                                  NTStatus      = 0xC01E0332
+       STATUS_GRAPHICS_NO_AVAILABLE_VIDPN_TARGET                                 NTStatus      = 0xC01E0333
+       STATUS_GRAPHICS_MONITOR_COULD_NOT_BE_ASSOCIATED_WITH_ADAPTER              NTStatus      = 0xC01E0334
+       STATUS_GRAPHICS_NO_VIDPNMGR                                               NTStatus      = 0xC01E0335
+       STATUS_GRAPHICS_NO_ACTIVE_VIDPN                                           NTStatus      = 0xC01E0336
+       STATUS_GRAPHICS_STALE_VIDPN_TOPOLOGY                                      NTStatus      = 0xC01E0337
+       STATUS_GRAPHICS_MONITOR_NOT_CONNECTED                                     NTStatus      = 0xC01E0338
+       STATUS_GRAPHICS_SOURCE_NOT_IN_TOPOLOGY                                    NTStatus      = 0xC01E0339
+       STATUS_GRAPHICS_INVALID_PRIMARYSURFACE_SIZE                               NTStatus      = 0xC01E033A
+       STATUS_GRAPHICS_INVALID_VISIBLEREGION_SIZE                                NTStatus      = 0xC01E033B
+       STATUS_GRAPHICS_INVALID_STRIDE                                            NTStatus      = 0xC01E033C
+       STATUS_GRAPHICS_INVALID_PIXELFORMAT                                       NTStatus      = 0xC01E033D
+       STATUS_GRAPHICS_INVALID_COLORBASIS                                        NTStatus      = 0xC01E033E
+       STATUS_GRAPHICS_INVALID_PIXELVALUEACCESSMODE                              NTStatus      = 0xC01E033F
+       STATUS_GRAPHICS_TARGET_NOT_IN_TOPOLOGY                                    NTStatus      = 0xC01E0340
+       STATUS_GRAPHICS_NO_DISPLAY_MODE_MANAGEMENT_SUPPORT                        NTStatus      = 0xC01E0341
+       STATUS_GRAPHICS_VIDPN_SOURCE_IN_USE                                       NTStatus      = 0xC01E0342
+       STATUS_GRAPHICS_CANT_ACCESS_ACTIVE_VIDPN                                  NTStatus      = 0xC01E0343
+       STATUS_GRAPHICS_INVALID_PATH_IMPORTANCE_ORDINAL                           NTStatus      = 0xC01E0344
+       STATUS_GRAPHICS_INVALID_PATH_CONTENT_GEOMETRY_TRANSFORMATION              NTStatus      = 0xC01E0345
+       STATUS_GRAPHICS_PATH_CONTENT_GEOMETRY_TRANSFORMATION_NOT_SUPPORTED        NTStatus      = 0xC01E0346
+       STATUS_GRAPHICS_INVALID_GAMMA_RAMP                                        NTStatus      = 0xC01E0347
+       STATUS_GRAPHICS_GAMMA_RAMP_NOT_SUPPORTED                                  NTStatus      = 0xC01E0348
+       STATUS_GRAPHICS_MULTISAMPLING_NOT_SUPPORTED                               NTStatus      = 0xC01E0349
+       STATUS_GRAPHICS_MODE_NOT_IN_MODESET                                       NTStatus      = 0xC01E034A
+       STATUS_GRAPHICS_DATASET_IS_EMPTY                                          NTStatus      = 0x401E034B
+       STATUS_GRAPHICS_NO_MORE_ELEMENTS_IN_DATASET                               NTStatus      = 0x401E034C
+       STATUS_GRAPHICS_INVALID_VIDPN_TOPOLOGY_RECOMMENDATION_REASON              NTStatus      = 0xC01E034D
+       STATUS_GRAPHICS_INVALID_PATH_CONTENT_TYPE                                 NTStatus      = 0xC01E034E
+       STATUS_GRAPHICS_INVALID_COPYPROTECTION_TYPE                               NTStatus      = 0xC01E034F
+       STATUS_GRAPHICS_UNASSIGNED_MODESET_ALREADY_EXISTS                         NTStatus      = 0xC01E0350
+       STATUS_GRAPHICS_PATH_CONTENT_GEOMETRY_TRANSFORMATION_NOT_PINNED           NTStatus      = 0x401E0351
+       STATUS_GRAPHICS_INVALID_SCANLINE_ORDERING                                 NTStatus      = 0xC01E0352
+       STATUS_GRAPHICS_TOPOLOGY_CHANGES_NOT_ALLOWED                              NTStatus      = 0xC01E0353
+       STATUS_GRAPHICS_NO_AVAILABLE_IMPORTANCE_ORDINALS                          NTStatus      = 0xC01E0354
+       STATUS_GRAPHICS_INCOMPATIBLE_PRIVATE_FORMAT                               NTStatus      = 0xC01E0355
+       STATUS_GRAPHICS_INVALID_MODE_PRUNING_ALGORITHM                            NTStatus      = 0xC01E0356
+       STATUS_GRAPHICS_INVALID_MONITOR_CAPABILITY_ORIGIN                         NTStatus      = 0xC01E0357
+       STATUS_GRAPHICS_INVALID_MONITOR_FREQUENCYRANGE_CONSTRAINT                 NTStatus      = 0xC01E0358
+       STATUS_GRAPHICS_MAX_NUM_PATHS_REACHED                                     NTStatus      = 0xC01E0359
+       STATUS_GRAPHICS_CANCEL_VIDPN_TOPOLOGY_AUGMENTATION                        NTStatus      = 0xC01E035A
+       STATUS_GRAPHICS_INVALID_CLIENT_TYPE                                       NTStatus      = 0xC01E035B
+       STATUS_GRAPHICS_CLIENTVIDPN_NOT_SET                                       NTStatus      = 0xC01E035C
+       STATUS_GRAPHICS_SPECIFIED_CHILD_ALREADY_CONNECTED                         NTStatus      = 0xC01E0400
+       STATUS_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED                            NTStatus      = 0xC01E0401
+       STATUS_GRAPHICS_UNKNOWN_CHILD_STATUS                                      NTStatus      = 0x401E042F
+       STATUS_GRAPHICS_NOT_A_LINKED_ADAPTER                                      NTStatus      = 0xC01E0430
+       STATUS_GRAPHICS_LEADLINK_NOT_ENUMERATED                                   NTStatus      = 0xC01E0431
+       STATUS_GRAPHICS_CHAINLINKS_NOT_ENUMERATED                                 NTStatus      = 0xC01E0432
+       STATUS_GRAPHICS_ADAPTER_CHAIN_NOT_READY                                   NTStatus      = 0xC01E0433
+       STATUS_GRAPHICS_CHAINLINKS_NOT_STARTED                                    NTStatus      = 0xC01E0434
+       STATUS_GRAPHICS_CHAINLINKS_NOT_POWERED_ON                                 NTStatus      = 0xC01E0435
+       STATUS_GRAPHICS_INCONSISTENT_DEVICE_LINK_STATE                            NTStatus      = 0xC01E0436
+       STATUS_GRAPHICS_LEADLINK_START_DEFERRED                                   NTStatus      = 0x401E0437
+       STATUS_GRAPHICS_NOT_POST_DEVICE_DRIVER                                    NTStatus      = 0xC01E0438
+       STATUS_GRAPHICS_POLLING_TOO_FREQUENTLY                                    NTStatus      = 0x401E0439
+       STATUS_GRAPHICS_START_DEFERRED                                            NTStatus      = 0x401E043A
+       STATUS_GRAPHICS_ADAPTER_ACCESS_NOT_EXCLUDED                               NTStatus      = 0xC01E043B
+       STATUS_GRAPHICS_DEPENDABLE_CHILD_STATUS                                   NTStatus      = 0x401E043C
+       STATUS_GRAPHICS_OPM_NOT_SUPPORTED                                         NTStatus      = 0xC01E0500
+       STATUS_GRAPHICS_COPP_NOT_SUPPORTED                                        NTStatus      = 0xC01E0501
+       STATUS_GRAPHICS_UAB_NOT_SUPPORTED                                         NTStatus      = 0xC01E0502
+       STATUS_GRAPHICS_OPM_INVALID_ENCRYPTED_PARAMETERS                          NTStatus      = 0xC01E0503
+       STATUS_GRAPHICS_OPM_NO_PROTECTED_OUTPUTS_EXIST                            NTStatus      = 0xC01E0505
+       STATUS_GRAPHICS_OPM_INTERNAL_ERROR                                        NTStatus      = 0xC01E050B
+       STATUS_GRAPHICS_OPM_INVALID_HANDLE                                        NTStatus      = 0xC01E050C
+       STATUS_GRAPHICS_PVP_INVALID_CERTIFICATE_LENGTH                            NTStatus      = 0xC01E050E
+       STATUS_GRAPHICS_OPM_SPANNING_MODE_ENABLED                                 NTStatus      = 0xC01E050F
+       STATUS_GRAPHICS_OPM_THEATER_MODE_ENABLED                                  NTStatus      = 0xC01E0510
+       STATUS_GRAPHICS_PVP_HFS_FAILED                                            NTStatus      = 0xC01E0511
+       STATUS_GRAPHICS_OPM_INVALID_SRM                                           NTStatus      = 0xC01E0512
+       STATUS_GRAPHICS_OPM_OUTPUT_DOES_NOT_SUPPORT_HDCP                          NTStatus      = 0xC01E0513
+       STATUS_GRAPHICS_OPM_OUTPUT_DOES_NOT_SUPPORT_ACP                           NTStatus      = 0xC01E0514
+       STATUS_GRAPHICS_OPM_OUTPUT_DOES_NOT_SUPPORT_CGMSA                         NTStatus      = 0xC01E0515
+       STATUS_GRAPHICS_OPM_HDCP_SRM_NEVER_SET                                    NTStatus      = 0xC01E0516
+       STATUS_GRAPHICS_OPM_RESOLUTION_TOO_HIGH                                   NTStatus      = 0xC01E0517
+       STATUS_GRAPHICS_OPM_ALL_HDCP_HARDWARE_ALREADY_IN_USE                      NTStatus      = 0xC01E0518
+       STATUS_GRAPHICS_OPM_PROTECTED_OUTPUT_NO_LONGER_EXISTS                     NTStatus      = 0xC01E051A
+       STATUS_GRAPHICS_OPM_PROTECTED_OUTPUT_DOES_NOT_HAVE_COPP_SEMANTICS         NTStatus      = 0xC01E051C
+       STATUS_GRAPHICS_OPM_INVALID_INFORMATION_REQUEST                           NTStatus      = 0xC01E051D
+       STATUS_GRAPHICS_OPM_DRIVER_INTERNAL_ERROR                                 NTStatus      = 0xC01E051E
+       STATUS_GRAPHICS_OPM_PROTECTED_OUTPUT_DOES_NOT_HAVE_OPM_SEMANTICS          NTStatus      = 0xC01E051F
+       STATUS_GRAPHICS_OPM_SIGNALING_NOT_SUPPORTED                               NTStatus      = 0xC01E0520
+       STATUS_GRAPHICS_OPM_INVALID_CONFIGURATION_REQUEST                         NTStatus      = 0xC01E0521
+       STATUS_GRAPHICS_I2C_NOT_SUPPORTED                                         NTStatus      = 0xC01E0580
+       STATUS_GRAPHICS_I2C_DEVICE_DOES_NOT_EXIST                                 NTStatus      = 0xC01E0581
+       STATUS_GRAPHICS_I2C_ERROR_TRANSMITTING_DATA                               NTStatus      = 0xC01E0582
+       STATUS_GRAPHICS_I2C_ERROR_RECEIVING_DATA                                  NTStatus      = 0xC01E0583
+       STATUS_GRAPHICS_DDCCI_VCP_NOT_SUPPORTED                                   NTStatus      = 0xC01E0584
+       STATUS_GRAPHICS_DDCCI_INVALID_DATA                                        NTStatus      = 0xC01E0585
+       STATUS_GRAPHICS_DDCCI_MONITOR_RETURNED_INVALID_TIMING_STATUS_BYTE         NTStatus      = 0xC01E0586
+       STATUS_GRAPHICS_DDCCI_INVALID_CAPABILITIES_STRING                         NTStatus      = 0xC01E0587
+       STATUS_GRAPHICS_MCA_INTERNAL_ERROR                                        NTStatus      = 0xC01E0588
+       STATUS_GRAPHICS_DDCCI_INVALID_MESSAGE_COMMAND                             NTStatus      = 0xC01E0589
+       STATUS_GRAPHICS_DDCCI_INVALID_MESSAGE_LENGTH                              NTStatus      = 0xC01E058A
+       STATUS_GRAPHICS_DDCCI_INVALID_MESSAGE_CHECKSUM                            NTStatus      = 0xC01E058B
+       STATUS_GRAPHICS_INVALID_PHYSICAL_MONITOR_HANDLE                           NTStatus      = 0xC01E058C
+       STATUS_GRAPHICS_MONITOR_NO_LONGER_EXISTS                                  NTStatus      = 0xC01E058D
+       STATUS_GRAPHICS_ONLY_CONSOLE_SESSION_SUPPORTED                            NTStatus      = 0xC01E05E0
+       STATUS_GRAPHICS_NO_DISPLAY_DEVICE_CORRESPONDS_TO_NAME                     NTStatus      = 0xC01E05E1
+       STATUS_GRAPHICS_DISPLAY_DEVICE_NOT_ATTACHED_TO_DESKTOP                    NTStatus      = 0xC01E05E2
+       STATUS_GRAPHICS_MIRRORING_DEVICES_NOT_SUPPORTED                           NTStatus      = 0xC01E05E3
+       STATUS_GRAPHICS_INVALID_POINTER                                           NTStatus      = 0xC01E05E4
+       STATUS_GRAPHICS_NO_MONITORS_CORRESPOND_TO_DISPLAY_DEVICE                  NTStatus      = 0xC01E05E5
+       STATUS_GRAPHICS_PARAMETER_ARRAY_TOO_SMALL                                 NTStatus      = 0xC01E05E6
+       STATUS_GRAPHICS_INTERNAL_ERROR                                            NTStatus      = 0xC01E05E7
+       STATUS_GRAPHICS_SESSION_TYPE_CHANGE_IN_PROGRESS                           NTStatus      = 0xC01E05E8
+       STATUS_FVE_LOCKED_VOLUME                                                  NTStatus      = 0xC0210000
+       STATUS_FVE_NOT_ENCRYPTED                                                  NTStatus      = 0xC0210001
+       STATUS_FVE_BAD_INFORMATION                                                NTStatus      = 0xC0210002
+       STATUS_FVE_TOO_SMALL                                                      NTStatus      = 0xC0210003
+       STATUS_FVE_FAILED_WRONG_FS                                                NTStatus      = 0xC0210004
+       STATUS_FVE_BAD_PARTITION_SIZE                                             NTStatus      = 0xC0210005
+       STATUS_FVE_FS_NOT_EXTENDED                                                NTStatus      = 0xC0210006
+       STATUS_FVE_FS_MOUNTED                                                     NTStatus      = 0xC0210007
+       STATUS_FVE_NO_LICENSE                                                     NTStatus      = 0xC0210008
+       STATUS_FVE_ACTION_NOT_ALLOWED                                             NTStatus      = 0xC0210009
+       STATUS_FVE_BAD_DATA                                                       NTStatus      = 0xC021000A
+       STATUS_FVE_VOLUME_NOT_BOUND                                               NTStatus      = 0xC021000B
+       STATUS_FVE_NOT_DATA_VOLUME                                                NTStatus      = 0xC021000C
+       STATUS_FVE_CONV_READ_ERROR                                                NTStatus      = 0xC021000D
+       STATUS_FVE_CONV_WRITE_ERROR                                               NTStatus      = 0xC021000E
+       STATUS_FVE_OVERLAPPED_UPDATE                                              NTStatus      = 0xC021000F
+       STATUS_FVE_FAILED_SECTOR_SIZE                                             NTStatus      = 0xC0210010
+       STATUS_FVE_FAILED_AUTHENTICATION                                          NTStatus      = 0xC0210011
+       STATUS_FVE_NOT_OS_VOLUME                                                  NTStatus      = 0xC0210012
+       STATUS_FVE_KEYFILE_NOT_FOUND                                              NTStatus      = 0xC0210013
+       STATUS_FVE_KEYFILE_INVALID                                                NTStatus      = 0xC0210014
+       STATUS_FVE_KEYFILE_NO_VMK                                                 NTStatus      = 0xC0210015
+       STATUS_FVE_TPM_DISABLED                                                   NTStatus      = 0xC0210016
+       STATUS_FVE_TPM_SRK_AUTH_NOT_ZERO                                          NTStatus      = 0xC0210017
+       STATUS_FVE_TPM_INVALID_PCR                                                NTStatus      = 0xC0210018
+       STATUS_FVE_TPM_NO_VMK                                                     NTStatus      = 0xC0210019
+       STATUS_FVE_PIN_INVALID                                                    NTStatus      = 0xC021001A
+       STATUS_FVE_AUTH_INVALID_APPLICATION                                       NTStatus      = 0xC021001B
+       STATUS_FVE_AUTH_INVALID_CONFIG                                            NTStatus      = 0xC021001C
+       STATUS_FVE_DEBUGGER_ENABLED                                               NTStatus      = 0xC021001D
+       STATUS_FVE_DRY_RUN_FAILED                                                 NTStatus      = 0xC021001E
+       STATUS_FVE_BAD_METADATA_POINTER                                           NTStatus      = 0xC021001F
+       STATUS_FVE_OLD_METADATA_COPY                                              NTStatus      = 0xC0210020
+       STATUS_FVE_REBOOT_REQUIRED                                                NTStatus      = 0xC0210021
+       STATUS_FVE_RAW_ACCESS                                                     NTStatus      = 0xC0210022
+       STATUS_FVE_RAW_BLOCKED                                                    NTStatus      = 0xC0210023
+       STATUS_FVE_NO_AUTOUNLOCK_MASTER_KEY                                       NTStatus      = 0xC0210024
+       STATUS_FVE_MOR_FAILED                                                     NTStatus      = 0xC0210025
+       STATUS_FVE_NO_FEATURE_LICENSE                                             NTStatus      = 0xC0210026
+       STATUS_FVE_POLICY_USER_DISABLE_RDV_NOT_ALLOWED                            NTStatus      = 0xC0210027
+       STATUS_FVE_CONV_RECOVERY_FAILED                                           NTStatus      = 0xC0210028
+       STATUS_FVE_VIRTUALIZED_SPACE_TOO_BIG                                      NTStatus      = 0xC0210029
+       STATUS_FVE_INVALID_DATUM_TYPE                                             NTStatus      = 0xC021002A
+       STATUS_FVE_VOLUME_TOO_SMALL                                               NTStatus      = 0xC0210030
+       STATUS_FVE_ENH_PIN_INVALID                                                NTStatus      = 0xC0210031
+       STATUS_FVE_FULL_ENCRYPTION_NOT_ALLOWED_ON_TP_STORAGE                      NTStatus      = 0xC0210032
+       STATUS_FVE_WIPE_NOT_ALLOWED_ON_TP_STORAGE                                 NTStatus      = 0xC0210033
+       STATUS_FVE_NOT_ALLOWED_ON_CSV_STACK                                       NTStatus      = 0xC0210034
+       STATUS_FVE_NOT_ALLOWED_ON_CLUSTER                                         NTStatus      = 0xC0210035
+       STATUS_FVE_NOT_ALLOWED_TO_UPGRADE_WHILE_CONVERTING                        NTStatus      = 0xC0210036
+       STATUS_FVE_WIPE_CANCEL_NOT_APPLICABLE                                     NTStatus      = 0xC0210037
+       STATUS_FVE_EDRIVE_DRY_RUN_FAILED                                          NTStatus      = 0xC0210038
+       STATUS_FVE_SECUREBOOT_DISABLED                                            NTStatus      = 0xC0210039
+       STATUS_FVE_SECUREBOOT_CONFIG_CHANGE                                       NTStatus      = 0xC021003A
+       STATUS_FVE_DEVICE_LOCKEDOUT                                               NTStatus      = 0xC021003B
+       STATUS_FVE_VOLUME_EXTEND_PREVENTS_EOW_DECRYPT                             NTStatus      = 0xC021003C
+       STATUS_FVE_NOT_DE_VOLUME                                                  NTStatus      = 0xC021003D
+       STATUS_FVE_PROTECTION_DISABLED                                            NTStatus      = 0xC021003E
+       STATUS_FVE_PROTECTION_CANNOT_BE_DISABLED                                  NTStatus      = 0xC021003F
+       STATUS_FVE_OSV_KSR_NOT_ALLOWED                                            NTStatus      = 0xC0210040
+       STATUS_FWP_CALLOUT_NOT_FOUND                                              NTStatus      = 0xC0220001
+       STATUS_FWP_CONDITION_NOT_FOUND                                            NTStatus      = 0xC0220002
+       STATUS_FWP_FILTER_NOT_FOUND                                               NTStatus      = 0xC0220003
+       STATUS_FWP_LAYER_NOT_FOUND                                                NTStatus      = 0xC0220004
+       STATUS_FWP_PROVIDER_NOT_FOUND                                             NTStatus      = 0xC0220005
+       STATUS_FWP_PROVIDER_CONTEXT_NOT_FOUND                                     NTStatus      = 0xC0220006
+       STATUS_FWP_SUBLAYER_NOT_FOUND                                             NTStatus      = 0xC0220007
+       STATUS_FWP_NOT_FOUND                                                      NTStatus      = 0xC0220008
+       STATUS_FWP_ALREADY_EXISTS                                                 NTStatus      = 0xC0220009
+       STATUS_FWP_IN_USE                                                         NTStatus      = 0xC022000A
+       STATUS_FWP_DYNAMIC_SESSION_IN_PROGRESS                                    NTStatus      = 0xC022000B
+       STATUS_FWP_WRONG_SESSION                                                  NTStatus      = 0xC022000C
+       STATUS_FWP_NO_TXN_IN_PROGRESS                                             NTStatus      = 0xC022000D
+       STATUS_FWP_TXN_IN_PROGRESS                                                NTStatus      = 0xC022000E
+       STATUS_FWP_TXN_ABORTED                                                    NTStatus      = 0xC022000F
+       STATUS_FWP_SESSION_ABORTED                                                NTStatus      = 0xC0220010
+       STATUS_FWP_INCOMPATIBLE_TXN                                               NTStatus      = 0xC0220011
+       STATUS_FWP_TIMEOUT                                                        NTStatus      = 0xC0220012
+       STATUS_FWP_NET_EVENTS_DISABLED                                            NTStatus      = 0xC0220013
+       STATUS_FWP_INCOMPATIBLE_LAYER                                             NTStatus      = 0xC0220014
+       STATUS_FWP_KM_CLIENTS_ONLY                                                NTStatus      = 0xC0220015
+       STATUS_FWP_LIFETIME_MISMATCH                                              NTStatus      = 0xC0220016
+       STATUS_FWP_BUILTIN_OBJECT                                                 NTStatus      = 0xC0220017
+       STATUS_FWP_TOO_MANY_CALLOUTS                                              NTStatus      = 0xC0220018
+       STATUS_FWP_NOTIFICATION_DROPPED                                           NTStatus      = 0xC0220019
+       STATUS_FWP_TRAFFIC_MISMATCH                                               NTStatus      = 0xC022001A
+       STATUS_FWP_INCOMPATIBLE_SA_STATE                                          NTStatus      = 0xC022001B
+       STATUS_FWP_NULL_POINTER                                                   NTStatus      = 0xC022001C
+       STATUS_FWP_INVALID_ENUMERATOR                                             NTStatus      = 0xC022001D
+       STATUS_FWP_INVALID_FLAGS                                                  NTStatus      = 0xC022001E
+       STATUS_FWP_INVALID_NET_MASK                                               NTStatus      = 0xC022001F
+       STATUS_FWP_INVALID_RANGE                                                  NTStatus      = 0xC0220020
+       STATUS_FWP_INVALID_INTERVAL                                               NTStatus      = 0xC0220021
+       STATUS_FWP_ZERO_LENGTH_ARRAY                                              NTStatus      = 0xC0220022
+       STATUS_FWP_NULL_DISPLAY_NAME                                              NTStatus      = 0xC0220023
+       STATUS_FWP_INVALID_ACTION_TYPE                                            NTStatus      = 0xC0220024
+       STATUS_FWP_INVALID_WEIGHT                                                 NTStatus      = 0xC0220025
+       STATUS_FWP_MATCH_TYPE_MISMATCH                                            NTStatus      = 0xC0220026
+       STATUS_FWP_TYPE_MISMATCH                                                  NTStatus      = 0xC0220027
+       STATUS_FWP_OUT_OF_BOUNDS                                                  NTStatus      = 0xC0220028
+       STATUS_FWP_RESERVED                                                       NTStatus      = 0xC0220029
+       STATUS_FWP_DUPLICATE_CONDITION                                            NTStatus      = 0xC022002A
+       STATUS_FWP_DUPLICATE_KEYMOD                                               NTStatus      = 0xC022002B
+       STATUS_FWP_ACTION_INCOMPATIBLE_WITH_LAYER                                 NTStatus      = 0xC022002C
+       STATUS_FWP_ACTION_INCOMPATIBLE_WITH_SUBLAYER                              NTStatus      = 0xC022002D
+       STATUS_FWP_CONTEXT_INCOMPATIBLE_WITH_LAYER                                NTStatus      = 0xC022002E
+       STATUS_FWP_CONTEXT_INCOMPATIBLE_WITH_CALLOUT                              NTStatus      = 0xC022002F
+       STATUS_FWP_INCOMPATIBLE_AUTH_METHOD                                       NTStatus      = 0xC0220030
+       STATUS_FWP_INCOMPATIBLE_DH_GROUP                                          NTStatus      = 0xC0220031
+       STATUS_FWP_EM_NOT_SUPPORTED                                               NTStatus      = 0xC0220032
+       STATUS_FWP_NEVER_MATCH                                                    NTStatus      = 0xC0220033
+       STATUS_FWP_PROVIDER_CONTEXT_MISMATCH                                      NTStatus      = 0xC0220034
+       STATUS_FWP_INVALID_PARAMETER                                              NTStatus      = 0xC0220035
+       STATUS_FWP_TOO_MANY_SUBLAYERS                                             NTStatus      = 0xC0220036
+       STATUS_FWP_CALLOUT_NOTIFICATION_FAILED                                    NTStatus      = 0xC0220037
+       STATUS_FWP_INVALID_AUTH_TRANSFORM                                         NTStatus      = 0xC0220038
+       STATUS_FWP_INVALID_CIPHER_TRANSFORM                                       NTStatus      = 0xC0220039
+       STATUS_FWP_INCOMPATIBLE_CIPHER_TRANSFORM                                  NTStatus      = 0xC022003A
+       STATUS_FWP_INVALID_TRANSFORM_COMBINATION                                  NTStatus      = 0xC022003B
+       STATUS_FWP_DUPLICATE_AUTH_METHOD                                          NTStatus      = 0xC022003C
+       STATUS_FWP_INVALID_TUNNEL_ENDPOINT                                        NTStatus      = 0xC022003D
+       STATUS_FWP_L2_DRIVER_NOT_READY                                            NTStatus      = 0xC022003E
+       STATUS_FWP_KEY_DICTATOR_ALREADY_REGISTERED                                NTStatus      = 0xC022003F
+       STATUS_FWP_KEY_DICTATION_INVALID_KEYING_MATERIAL                          NTStatus      = 0xC0220040
+       STATUS_FWP_CONNECTIONS_DISABLED                                           NTStatus      = 0xC0220041
+       STATUS_FWP_INVALID_DNS_NAME                                               NTStatus      = 0xC0220042
+       STATUS_FWP_STILL_ON                                                       NTStatus      = 0xC0220043
+       STATUS_FWP_IKEEXT_NOT_RUNNING                                             NTStatus      = 0xC0220044
+       STATUS_FWP_TCPIP_NOT_READY                                                NTStatus      = 0xC0220100
+       STATUS_FWP_INJECT_HANDLE_CLOSING                                          NTStatus      = 0xC0220101
+       STATUS_FWP_INJECT_HANDLE_STALE                                            NTStatus      = 0xC0220102
+       STATUS_FWP_CANNOT_PEND                                                    NTStatus      = 0xC0220103
+       STATUS_FWP_DROP_NOICMP                                                    NTStatus      = 0xC0220104
+       STATUS_NDIS_CLOSING                                                       NTStatus      = 0xC0230002
+       STATUS_NDIS_BAD_VERSION                                                   NTStatus      = 0xC0230004
+       STATUS_NDIS_BAD_CHARACTERISTICS                                           NTStatus      = 0xC0230005
+       STATUS_NDIS_ADAPTER_NOT_FOUND                                             NTStatus      = 0xC0230006
+       STATUS_NDIS_OPEN_FAILED                                                   NTStatus      = 0xC0230007
+       STATUS_NDIS_DEVICE_FAILED                                                 NTStatus      = 0xC0230008
+       STATUS_NDIS_MULTICAST_FULL                                                NTStatus      = 0xC0230009
+       STATUS_NDIS_MULTICAST_EXISTS                                              NTStatus      = 0xC023000A
+       STATUS_NDIS_MULTICAST_NOT_FOUND                                           NTStatus      = 0xC023000B
+       STATUS_NDIS_REQUEST_ABORTED                                               NTStatus      = 0xC023000C
+       STATUS_NDIS_RESET_IN_PROGRESS                                             NTStatus      = 0xC023000D
+       STATUS_NDIS_NOT_SUPPORTED                                                 NTStatus      = 0xC02300BB
+       STATUS_NDIS_INVALID_PACKET                                                NTStatus      = 0xC023000F
+       STATUS_NDIS_ADAPTER_NOT_READY                                             NTStatus      = 0xC0230011
+       STATUS_NDIS_INVALID_LENGTH                                                NTStatus      = 0xC0230014
+       STATUS_NDIS_INVALID_DATA                                                  NTStatus      = 0xC0230015
+       STATUS_NDIS_BUFFER_TOO_SHORT                                              NTStatus      = 0xC0230016
+       STATUS_NDIS_INVALID_OID                                                   NTStatus      = 0xC0230017
+       STATUS_NDIS_ADAPTER_REMOVED                                               NTStatus      = 0xC0230018
+       STATUS_NDIS_UNSUPPORTED_MEDIA                                             NTStatus      = 0xC0230019
+       STATUS_NDIS_GROUP_ADDRESS_IN_USE                                          NTStatus      = 0xC023001A
+       STATUS_NDIS_FILE_NOT_FOUND                                                NTStatus      = 0xC023001B
+       STATUS_NDIS_ERROR_READING_FILE                                            NTStatus      = 0xC023001C
+       STATUS_NDIS_ALREADY_MAPPED                                                NTStatus      = 0xC023001D
+       STATUS_NDIS_RESOURCE_CONFLICT                                             NTStatus      = 0xC023001E
+       STATUS_NDIS_MEDIA_DISCONNECTED                                            NTStatus      = 0xC023001F
+       STATUS_NDIS_INVALID_ADDRESS                                               NTStatus      = 0xC0230022
+       STATUS_NDIS_INVALID_DEVICE_REQUEST                                        NTStatus      = 0xC0230010
+       STATUS_NDIS_PAUSED                                                        NTStatus      = 0xC023002A
+       STATUS_NDIS_INTERFACE_NOT_FOUND                                           NTStatus      = 0xC023002B
+       STATUS_NDIS_UNSUPPORTED_REVISION                                          NTStatus      = 0xC023002C
+       STATUS_NDIS_INVALID_PORT                                                  NTStatus      = 0xC023002D
+       STATUS_NDIS_INVALID_PORT_STATE                                            NTStatus      = 0xC023002E
+       STATUS_NDIS_LOW_POWER_STATE                                               NTStatus      = 0xC023002F
+       STATUS_NDIS_REINIT_REQUIRED                                               NTStatus      = 0xC0230030
+       STATUS_NDIS_NO_QUEUES                                                     NTStatus      = 0xC0230031
+       STATUS_NDIS_DOT11_AUTO_CONFIG_ENABLED                                     NTStatus      = 0xC0232000
+       STATUS_NDIS_DOT11_MEDIA_IN_USE                                            NTStatus      = 0xC0232001
+       STATUS_NDIS_DOT11_POWER_STATE_INVALID                                     NTStatus      = 0xC0232002
+       STATUS_NDIS_PM_WOL_PATTERN_LIST_FULL                                      NTStatus      = 0xC0232003
+       STATUS_NDIS_PM_PROTOCOL_OFFLOAD_LIST_FULL                                 NTStatus      = 0xC0232004
+       STATUS_NDIS_DOT11_AP_CHANNEL_CURRENTLY_NOT_AVAILABLE                      NTStatus      = 0xC0232005
+       STATUS_NDIS_DOT11_AP_BAND_CURRENTLY_NOT_AVAILABLE                         NTStatus      = 0xC0232006
+       STATUS_NDIS_DOT11_AP_CHANNEL_NOT_ALLOWED                                  NTStatus      = 0xC0232007
+       STATUS_NDIS_DOT11_AP_BAND_NOT_ALLOWED                                     NTStatus      = 0xC0232008
+       STATUS_NDIS_INDICATION_REQUIRED                                           NTStatus      = 0x40230001
+       STATUS_NDIS_OFFLOAD_POLICY                                                NTStatus      = 0xC023100F
+       STATUS_NDIS_OFFLOAD_CONNECTION_REJECTED                                   NTStatus      = 0xC0231012
+       STATUS_NDIS_OFFLOAD_PATH_REJECTED                                         NTStatus      = 0xC0231013
+       STATUS_TPM_ERROR_MASK                                                     NTStatus      = 0xC0290000
+       STATUS_TPM_AUTHFAIL                                                       NTStatus      = 0xC0290001
+       STATUS_TPM_BADINDEX                                                       NTStatus      = 0xC0290002
+       STATUS_TPM_BAD_PARAMETER                                                  NTStatus      = 0xC0290003
+       STATUS_TPM_AUDITFAILURE                                                   NTStatus      = 0xC0290004
+       STATUS_TPM_CLEAR_DISABLED                                                 NTStatus      = 0xC0290005
+       STATUS_TPM_DEACTIVATED                                                    NTStatus      = 0xC0290006
+       STATUS_TPM_DISABLED                                                       NTStatus      = 0xC0290007
+       STATUS_TPM_DISABLED_CMD                                                   NTStatus      = 0xC0290008
+       STATUS_TPM_FAIL                                                           NTStatus      = 0xC0290009
+       STATUS_TPM_BAD_ORDINAL                                                    NTStatus      = 0xC029000A
+       STATUS_TPM_INSTALL_DISABLED                                               NTStatus      = 0xC029000B
+       STATUS_TPM_INVALID_KEYHANDLE                                              NTStatus      = 0xC029000C
+       STATUS_TPM_KEYNOTFOUND                                                    NTStatus      = 0xC029000D
+       STATUS_TPM_INAPPROPRIATE_ENC                                              NTStatus      = 0xC029000E
+       STATUS_TPM_MIGRATEFAIL                                                    NTStatus      = 0xC029000F
+       STATUS_TPM_INVALID_PCR_INFO                                               NTStatus      = 0xC0290010
+       STATUS_TPM_NOSPACE                                                        NTStatus      = 0xC0290011
+       STATUS_TPM_NOSRK                                                          NTStatus      = 0xC0290012
+       STATUS_TPM_NOTSEALED_BLOB                                                 NTStatus      = 0xC0290013
+       STATUS_TPM_OWNER_SET                                                      NTStatus      = 0xC0290014
+       STATUS_TPM_RESOURCES                                                      NTStatus      = 0xC0290015
+       STATUS_TPM_SHORTRANDOM                                                    NTStatus      = 0xC0290016
+       STATUS_TPM_SIZE                                                           NTStatus      = 0xC0290017
+       STATUS_TPM_WRONGPCRVAL                                                    NTStatus      = 0xC0290018
+       STATUS_TPM_BAD_PARAM_SIZE                                                 NTStatus      = 0xC0290019
+       STATUS_TPM_SHA_THREAD                                                     NTStatus      = 0xC029001A
+       STATUS_TPM_SHA_ERROR                                                      NTStatus      = 0xC029001B
+       STATUS_TPM_FAILEDSELFTEST                                                 NTStatus      = 0xC029001C
+       STATUS_TPM_AUTH2FAIL                                                      NTStatus      = 0xC029001D
+       STATUS_TPM_BADTAG                                                         NTStatus      = 0xC029001E
+       STATUS_TPM_IOERROR                                                        NTStatus      = 0xC029001F
+       STATUS_TPM_ENCRYPT_ERROR                                                  NTStatus      = 0xC0290020
+       STATUS_TPM_DECRYPT_ERROR                                                  NTStatus      = 0xC0290021
+       STATUS_TPM_INVALID_AUTHHANDLE                                             NTStatus      = 0xC0290022
+       STATUS_TPM_NO_ENDORSEMENT                                                 NTStatus      = 0xC0290023
+       STATUS_TPM_INVALID_KEYUSAGE                                               NTStatus      = 0xC0290024
+       STATUS_TPM_WRONG_ENTITYTYPE                                               NTStatus      = 0xC0290025
+       STATUS_TPM_INVALID_POSTINIT                                               NTStatus      = 0xC0290026
+       STATUS_TPM_INAPPROPRIATE_SIG                                              NTStatus      = 0xC0290027
+       STATUS_TPM_BAD_KEY_PROPERTY                                               NTStatus      = 0xC0290028
+       STATUS_TPM_BAD_MIGRATION                                                  NTStatus      = 0xC0290029
+       STATUS_TPM_BAD_SCHEME                                                     NTStatus      = 0xC029002A
+       STATUS_TPM_BAD_DATASIZE                                                   NTStatus      = 0xC029002B
+       STATUS_TPM_BAD_MODE                                                       NTStatus      = 0xC029002C
+       STATUS_TPM_BAD_PRESENCE                                                   NTStatus      = 0xC029002D
+       STATUS_TPM_BAD_VERSION                                                    NTStatus      = 0xC029002E
+       STATUS_TPM_NO_WRAP_TRANSPORT                                              NTStatus      = 0xC029002F
+       STATUS_TPM_AUDITFAIL_UNSUCCESSFUL                                         NTStatus      = 0xC0290030
+       STATUS_TPM_AUDITFAIL_SUCCESSFUL                                           NTStatus      = 0xC0290031
+       STATUS_TPM_NOTRESETABLE                                                   NTStatus      = 0xC0290032
+       STATUS_TPM_NOTLOCAL                                                       NTStatus      = 0xC0290033
+       STATUS_TPM_BAD_TYPE                                                       NTStatus      = 0xC0290034
+       STATUS_TPM_INVALID_RESOURCE                                               NTStatus      = 0xC0290035
+       STATUS_TPM_NOTFIPS                                                        NTStatus      = 0xC0290036
+       STATUS_TPM_INVALID_FAMILY                                                 NTStatus      = 0xC0290037
+       STATUS_TPM_NO_NV_PERMISSION                                               NTStatus      = 0xC0290038
+       STATUS_TPM_REQUIRES_SIGN                                                  NTStatus      = 0xC0290039
+       STATUS_TPM_KEY_NOTSUPPORTED                                               NTStatus      = 0xC029003A
+       STATUS_TPM_AUTH_CONFLICT                                                  NTStatus      = 0xC029003B
+       STATUS_TPM_AREA_LOCKED                                                    NTStatus      = 0xC029003C
+       STATUS_TPM_BAD_LOCALITY                                                   NTStatus      = 0xC029003D
+       STATUS_TPM_READ_ONLY                                                      NTStatus      = 0xC029003E
+       STATUS_TPM_PER_NOWRITE                                                    NTStatus      = 0xC029003F
+       STATUS_TPM_FAMILYCOUNT                                                    NTStatus      = 0xC0290040
+       STATUS_TPM_WRITE_LOCKED                                                   NTStatus      = 0xC0290041
+       STATUS_TPM_BAD_ATTRIBUTES                                                 NTStatus      = 0xC0290042
+       STATUS_TPM_INVALID_STRUCTURE                                              NTStatus      = 0xC0290043
+       STATUS_TPM_KEY_OWNER_CONTROL                                              NTStatus      = 0xC0290044
+       STATUS_TPM_BAD_COUNTER                                                    NTStatus      = 0xC0290045
+       STATUS_TPM_NOT_FULLWRITE                                                  NTStatus      = 0xC0290046
+       STATUS_TPM_CONTEXT_GAP                                                    NTStatus      = 0xC0290047
+       STATUS_TPM_MAXNVWRITES                                                    NTStatus      = 0xC0290048
+       STATUS_TPM_NOOPERATOR                                                     NTStatus      = 0xC0290049
+       STATUS_TPM_RESOURCEMISSING                                                NTStatus      = 0xC029004A
+       STATUS_TPM_DELEGATE_LOCK                                                  NTStatus      = 0xC029004B
+       STATUS_TPM_DELEGATE_FAMILY                                                NTStatus      = 0xC029004C
+       STATUS_TPM_DELEGATE_ADMIN                                                 NTStatus      = 0xC029004D
+       STATUS_TPM_TRANSPORT_NOTEXCLUSIVE                                         NTStatus      = 0xC029004E
+       STATUS_TPM_OWNER_CONTROL                                                  NTStatus      = 0xC029004F
+       STATUS_TPM_DAA_RESOURCES                                                  NTStatus      = 0xC0290050
+       STATUS_TPM_DAA_INPUT_DATA0                                                NTStatus      = 0xC0290051
+       STATUS_TPM_DAA_INPUT_DATA1                                                NTStatus      = 0xC0290052
+       STATUS_TPM_DAA_ISSUER_SETTINGS                                            NTStatus      = 0xC0290053
+       STATUS_TPM_DAA_TPM_SETTINGS                                               NTStatus      = 0xC0290054
+       STATUS_TPM_DAA_STAGE                                                      NTStatus      = 0xC0290055
+       STATUS_TPM_DAA_ISSUER_VALIDITY                                            NTStatus      = 0xC0290056
+       STATUS_TPM_DAA_WRONG_W                                                    NTStatus      = 0xC0290057
+       STATUS_TPM_BAD_HANDLE                                                     NTStatus      = 0xC0290058
+       STATUS_TPM_BAD_DELEGATE                                                   NTStatus      = 0xC0290059
+       STATUS_TPM_BADCONTEXT                                                     NTStatus      = 0xC029005A
+       STATUS_TPM_TOOMANYCONTEXTS                                                NTStatus      = 0xC029005B
+       STATUS_TPM_MA_TICKET_SIGNATURE                                            NTStatus      = 0xC029005C
+       STATUS_TPM_MA_DESTINATION                                                 NTStatus      = 0xC029005D
+       STATUS_TPM_MA_SOURCE                                                      NTStatus      = 0xC029005E
+       STATUS_TPM_MA_AUTHORITY                                                   NTStatus      = 0xC029005F
+       STATUS_TPM_PERMANENTEK                                                    NTStatus      = 0xC0290061
+       STATUS_TPM_BAD_SIGNATURE                                                  NTStatus      = 0xC0290062
+       STATUS_TPM_NOCONTEXTSPACE                                                 NTStatus      = 0xC0290063
+       STATUS_TPM_20_E_ASYMMETRIC                                                NTStatus      = 0xC0290081
+       STATUS_TPM_20_E_ATTRIBUTES                                                NTStatus      = 0xC0290082
+       STATUS_TPM_20_E_HASH                                                      NTStatus      = 0xC0290083
+       STATUS_TPM_20_E_VALUE                                                     NTStatus      = 0xC0290084
+       STATUS_TPM_20_E_HIERARCHY                                                 NTStatus      = 0xC0290085
+       STATUS_TPM_20_E_KEY_SIZE                                                  NTStatus      = 0xC0290087
+       STATUS_TPM_20_E_MGF                                                       NTStatus      = 0xC0290088
+       STATUS_TPM_20_E_MODE                                                      NTStatus      = 0xC0290089
+       STATUS_TPM_20_E_TYPE                                                      NTStatus      = 0xC029008A
+       STATUS_TPM_20_E_HANDLE                                                    NTStatus      = 0xC029008B
+       STATUS_TPM_20_E_KDF                                                       NTStatus      = 0xC029008C
+       STATUS_TPM_20_E_RANGE                                                     NTStatus      = 0xC029008D
+       STATUS_TPM_20_E_AUTH_FAIL                                                 NTStatus      = 0xC029008E
+       STATUS_TPM_20_E_NONCE                                                     NTStatus      = 0xC029008F
+       STATUS_TPM_20_E_PP                                                        NTStatus      = 0xC0290090
+       STATUS_TPM_20_E_SCHEME                                                    NTStatus      = 0xC0290092
+       STATUS_TPM_20_E_SIZE                                                      NTStatus      = 0xC0290095
+       STATUS_TPM_20_E_SYMMETRIC                                                 NTStatus      = 0xC0290096
+       STATUS_TPM_20_E_TAG                                                       NTStatus      = 0xC0290097
+       STATUS_TPM_20_E_SELECTOR                                                  NTStatus      = 0xC0290098
+       STATUS_TPM_20_E_INSUFFICIENT                                              NTStatus      = 0xC029009A
+       STATUS_TPM_20_E_SIGNATURE                                                 NTStatus      = 0xC029009B
+       STATUS_TPM_20_E_KEY                                                       NTStatus      = 0xC029009C
+       STATUS_TPM_20_E_POLICY_FAIL                                               NTStatus      = 0xC029009D
+       STATUS_TPM_20_E_INTEGRITY                                                 NTStatus      = 0xC029009F
+       STATUS_TPM_20_E_TICKET                                                    NTStatus      = 0xC02900A0
+       STATUS_TPM_20_E_RESERVED_BITS                                             NTStatus      = 0xC02900A1
+       STATUS_TPM_20_E_BAD_AUTH                                                  NTStatus      = 0xC02900A2
+       STATUS_TPM_20_E_EXPIRED                                                   NTStatus      = 0xC02900A3
+       STATUS_TPM_20_E_POLICY_CC                                                 NTStatus      = 0xC02900A4
+       STATUS_TPM_20_E_BINDING                                                   NTStatus      = 0xC02900A5
+       STATUS_TPM_20_E_CURVE                                                     NTStatus      = 0xC02900A6
+       STATUS_TPM_20_E_ECC_POINT                                                 NTStatus      = 0xC02900A7
+       STATUS_TPM_20_E_INITIALIZE                                                NTStatus      = 0xC0290100
+       STATUS_TPM_20_E_FAILURE                                                   NTStatus      = 0xC0290101
+       STATUS_TPM_20_E_SEQUENCE                                                  NTStatus      = 0xC0290103
+       STATUS_TPM_20_E_PRIVATE                                                   NTStatus      = 0xC029010B
+       STATUS_TPM_20_E_HMAC                                                      NTStatus      = 0xC0290119
+       STATUS_TPM_20_E_DISABLED                                                  NTStatus      = 0xC0290120
+       STATUS_TPM_20_E_EXCLUSIVE                                                 NTStatus      = 0xC0290121
+       STATUS_TPM_20_E_ECC_CURVE                                                 NTStatus      = 0xC0290123
+       STATUS_TPM_20_E_AUTH_TYPE                                                 NTStatus      = 0xC0290124
+       STATUS_TPM_20_E_AUTH_MISSING                                              NTStatus      = 0xC0290125
+       STATUS_TPM_20_E_POLICY                                                    NTStatus      = 0xC0290126
+       STATUS_TPM_20_E_PCR                                                       NTStatus      = 0xC0290127
+       STATUS_TPM_20_E_PCR_CHANGED                                               NTStatus      = 0xC0290128
+       STATUS_TPM_20_E_UPGRADE                                                   NTStatus      = 0xC029012D
+       STATUS_TPM_20_E_TOO_MANY_CONTEXTS                                         NTStatus      = 0xC029012E
+       STATUS_TPM_20_E_AUTH_UNAVAILABLE                                          NTStatus      = 0xC029012F
+       STATUS_TPM_20_E_REBOOT                                                    NTStatus      = 0xC0290130
+       STATUS_TPM_20_E_UNBALANCED                                                NTStatus      = 0xC0290131
+       STATUS_TPM_20_E_COMMAND_SIZE                                              NTStatus      = 0xC0290142
+       STATUS_TPM_20_E_COMMAND_CODE                                              NTStatus      = 0xC0290143
+       STATUS_TPM_20_E_AUTHSIZE                                                  NTStatus      = 0xC0290144
+       STATUS_TPM_20_E_AUTH_CONTEXT                                              NTStatus      = 0xC0290145
+       STATUS_TPM_20_E_NV_RANGE                                                  NTStatus      = 0xC0290146
+       STATUS_TPM_20_E_NV_SIZE                                                   NTStatus      = 0xC0290147
+       STATUS_TPM_20_E_NV_LOCKED                                                 NTStatus      = 0xC0290148
+       STATUS_TPM_20_E_NV_AUTHORIZATION                                          NTStatus      = 0xC0290149
+       STATUS_TPM_20_E_NV_UNINITIALIZED                                          NTStatus      = 0xC029014A
+       STATUS_TPM_20_E_NV_SPACE                                                  NTStatus      = 0xC029014B
+       STATUS_TPM_20_E_NV_DEFINED                                                NTStatus      = 0xC029014C
+       STATUS_TPM_20_E_BAD_CONTEXT                                               NTStatus      = 0xC0290150
+       STATUS_TPM_20_E_CPHASH                                                    NTStatus      = 0xC0290151
+       STATUS_TPM_20_E_PARENT                                                    NTStatus      = 0xC0290152
+       STATUS_TPM_20_E_NEEDS_TEST                                                NTStatus      = 0xC0290153
+       STATUS_TPM_20_E_NO_RESULT                                                 NTStatus      = 0xC0290154
+       STATUS_TPM_20_E_SENSITIVE                                                 NTStatus      = 0xC0290155
+       STATUS_TPM_COMMAND_BLOCKED                                                NTStatus      = 0xC0290400
+       STATUS_TPM_INVALID_HANDLE                                                 NTStatus      = 0xC0290401
+       STATUS_TPM_DUPLICATE_VHANDLE                                              NTStatus      = 0xC0290402
+       STATUS_TPM_EMBEDDED_COMMAND_BLOCKED                                       NTStatus      = 0xC0290403
+       STATUS_TPM_EMBEDDED_COMMAND_UNSUPPORTED                                   NTStatus      = 0xC0290404
+       STATUS_TPM_RETRY                                                          NTStatus      = 0xC0290800
+       STATUS_TPM_NEEDS_SELFTEST                                                 NTStatus      = 0xC0290801
+       STATUS_TPM_DOING_SELFTEST                                                 NTStatus      = 0xC0290802
+       STATUS_TPM_DEFEND_LOCK_RUNNING                                            NTStatus      = 0xC0290803
+       STATUS_TPM_COMMAND_CANCELED                                               NTStatus      = 0xC0291001
+       STATUS_TPM_TOO_MANY_CONTEXTS                                              NTStatus      = 0xC0291002
+       STATUS_TPM_NOT_FOUND                                                      NTStatus      = 0xC0291003
+       STATUS_TPM_ACCESS_DENIED                                                  NTStatus      = 0xC0291004
+       STATUS_TPM_INSUFFICIENT_BUFFER                                            NTStatus      = 0xC0291005
+       STATUS_TPM_PPI_FUNCTION_UNSUPPORTED                                       NTStatus      = 0xC0291006
+       STATUS_PCP_ERROR_MASK                                                     NTStatus      = 0xC0292000
+       STATUS_PCP_DEVICE_NOT_READY                                               NTStatus      = 0xC0292001
+       STATUS_PCP_INVALID_HANDLE                                                 NTStatus      = 0xC0292002
+       STATUS_PCP_INVALID_PARAMETER                                              NTStatus      = 0xC0292003
+       STATUS_PCP_FLAG_NOT_SUPPORTED                                             NTStatus      = 0xC0292004
+       STATUS_PCP_NOT_SUPPORTED                                                  NTStatus      = 0xC0292005
+       STATUS_PCP_BUFFER_TOO_SMALL                                               NTStatus      = 0xC0292006
+       STATUS_PCP_INTERNAL_ERROR                                                 NTStatus      = 0xC0292007
+       STATUS_PCP_AUTHENTICATION_FAILED                                          NTStatus      = 0xC0292008
+       STATUS_PCP_AUTHENTICATION_IGNORED                                         NTStatus      = 0xC0292009
+       STATUS_PCP_POLICY_NOT_FOUND                                               NTStatus      = 0xC029200A
+       STATUS_PCP_PROFILE_NOT_FOUND                                              NTStatus      = 0xC029200B
+       STATUS_PCP_VALIDATION_FAILED                                              NTStatus      = 0xC029200C
+       STATUS_PCP_DEVICE_NOT_FOUND                                               NTStatus      = 0xC029200D
+       STATUS_PCP_WRONG_PARENT                                                   NTStatus      = 0xC029200E
+       STATUS_PCP_KEY_NOT_LOADED                                                 NTStatus      = 0xC029200F
+       STATUS_PCP_NO_KEY_CERTIFICATION                                           NTStatus      = 0xC0292010
+       STATUS_PCP_KEY_NOT_FINALIZED                                              NTStatus      = 0xC0292011
+       STATUS_PCP_ATTESTATION_CHALLENGE_NOT_SET                                  NTStatus      = 0xC0292012
+       STATUS_PCP_NOT_PCR_BOUND                                                  NTStatus      = 0xC0292013
+       STATUS_PCP_KEY_ALREADY_FINALIZED                                          NTStatus      = 0xC0292014
+       STATUS_PCP_KEY_USAGE_POLICY_NOT_SUPPORTED                                 NTStatus      = 0xC0292015
+       STATUS_PCP_KEY_USAGE_POLICY_INVALID                                       NTStatus      = 0xC0292016
+       STATUS_PCP_SOFT_KEY_ERROR                                                 NTStatus      = 0xC0292017
+       STATUS_PCP_KEY_NOT_AUTHENTICATED                                          NTStatus      = 0xC0292018
+       STATUS_PCP_KEY_NOT_AIK                                                    NTStatus      = 0xC0292019
+       STATUS_PCP_KEY_NOT_SIGNING_KEY                                            NTStatus      = 0xC029201A
+       STATUS_PCP_LOCKED_OUT                                                     NTStatus      = 0xC029201B
+       STATUS_PCP_CLAIM_TYPE_NOT_SUPPORTED                                       NTStatus      = 0xC029201C
+       STATUS_PCP_TPM_VERSION_NOT_SUPPORTED                                      NTStatus      = 0xC029201D
+       STATUS_PCP_BUFFER_LENGTH_MISMATCH                                         NTStatus      = 0xC029201E
+       STATUS_PCP_IFX_RSA_KEY_CREATION_BLOCKED                                   NTStatus      = 0xC029201F
+       STATUS_PCP_TICKET_MISSING                                                 NTStatus      = 0xC0292020
+       STATUS_PCP_RAW_POLICY_NOT_SUPPORTED                                       NTStatus      = 0xC0292021
+       STATUS_PCP_KEY_HANDLE_INVALIDATED                                         NTStatus      = 0xC0292022
+       STATUS_PCP_UNSUPPORTED_PSS_SALT                                           NTStatus      = 0x40292023
+       STATUS_RTPM_CONTEXT_CONTINUE                                              NTStatus      = 0x00293000
+       STATUS_RTPM_CONTEXT_COMPLETE                                              NTStatus      = 0x00293001
+       STATUS_RTPM_NO_RESULT                                                     NTStatus      = 0xC0293002
+       STATUS_RTPM_PCR_READ_INCOMPLETE                                           NTStatus      = 0xC0293003
+       STATUS_RTPM_INVALID_CONTEXT                                               NTStatus      = 0xC0293004
+       STATUS_RTPM_UNSUPPORTED_CMD                                               NTStatus      = 0xC0293005
+       STATUS_TPM_ZERO_EXHAUST_ENABLED                                           NTStatus      = 0xC0294000
+       STATUS_HV_INVALID_HYPERCALL_CODE                                          NTStatus      = 0xC0350002
+       STATUS_HV_INVALID_HYPERCALL_INPUT                                         NTStatus      = 0xC0350003
+       STATUS_HV_INVALID_ALIGNMENT                                               NTStatus      = 0xC0350004
+       STATUS_HV_INVALID_PARAMETER                                               NTStatus      = 0xC0350005
+       STATUS_HV_ACCESS_DENIED                                                   NTStatus      = 0xC0350006
+       STATUS_HV_INVALID_PARTITION_STATE                                         NTStatus      = 0xC0350007
+       STATUS_HV_OPERATION_DENIED                                                NTStatus      = 0xC0350008
+       STATUS_HV_UNKNOWN_PROPERTY                                                NTStatus      = 0xC0350009
+       STATUS_HV_PROPERTY_VALUE_OUT_OF_RANGE                                     NTStatus      = 0xC035000A
+       STATUS_HV_INSUFFICIENT_MEMORY                                             NTStatus      = 0xC035000B
+       STATUS_HV_PARTITION_TOO_DEEP                                              NTStatus      = 0xC035000C
+       STATUS_HV_INVALID_PARTITION_ID                                            NTStatus      = 0xC035000D
+       STATUS_HV_INVALID_VP_INDEX                                                NTStatus      = 0xC035000E
+       STATUS_HV_INVALID_PORT_ID                                                 NTStatus      = 0xC0350011
+       STATUS_HV_INVALID_CONNECTION_ID                                           NTStatus      = 0xC0350012
+       STATUS_HV_INSUFFICIENT_BUFFERS                                            NTStatus      = 0xC0350013
+       STATUS_HV_NOT_ACKNOWLEDGED                                                NTStatus      = 0xC0350014
+       STATUS_HV_INVALID_VP_STATE                                                NTStatus      = 0xC0350015
+       STATUS_HV_ACKNOWLEDGED                                                    NTStatus      = 0xC0350016
+       STATUS_HV_INVALID_SAVE_RESTORE_STATE                                      NTStatus      = 0xC0350017
+       STATUS_HV_INVALID_SYNIC_STATE                                             NTStatus      = 0xC0350018
+       STATUS_HV_OBJECT_IN_USE                                                   NTStatus      = 0xC0350019
+       STATUS_HV_INVALID_PROXIMITY_DOMAIN_INFO                                   NTStatus      = 0xC035001A
+       STATUS_HV_NO_DATA                                                         NTStatus      = 0xC035001B
+       STATUS_HV_INACTIVE                                                        NTStatus      = 0xC035001C
+       STATUS_HV_NO_RESOURCES                                                    NTStatus      = 0xC035001D
+       STATUS_HV_FEATURE_UNAVAILABLE                                             NTStatus      = 0xC035001E
+       STATUS_HV_INSUFFICIENT_BUFFER                                             NTStatus      = 0xC0350033
+       STATUS_HV_INSUFFICIENT_DEVICE_DOMAINS                                     NTStatus      = 0xC0350038
+       STATUS_HV_CPUID_FEATURE_VALIDATION_ERROR                                  NTStatus      = 0xC035003C
+       STATUS_HV_CPUID_XSAVE_FEATURE_VALIDATION_ERROR                            NTStatus      = 0xC035003D
+       STATUS_HV_PROCESSOR_STARTUP_TIMEOUT                                       NTStatus      = 0xC035003E
+       STATUS_HV_SMX_ENABLED                                                     NTStatus      = 0xC035003F
+       STATUS_HV_INVALID_LP_INDEX                                                NTStatus      = 0xC0350041
+       STATUS_HV_INVALID_REGISTER_VALUE                                          NTStatus      = 0xC0350050
+       STATUS_HV_INVALID_VTL_STATE                                               NTStatus      = 0xC0350051
+       STATUS_HV_NX_NOT_DETECTED                                                 NTStatus      = 0xC0350055
+       STATUS_HV_INVALID_DEVICE_ID                                               NTStatus      = 0xC0350057
+       STATUS_HV_INVALID_DEVICE_STATE                                            NTStatus      = 0xC0350058
+       STATUS_HV_PENDING_PAGE_REQUESTS                                           NTStatus      = 0x00350059
+       STATUS_HV_PAGE_REQUEST_INVALID                                            NTStatus      = 0xC0350060
+       STATUS_HV_INVALID_CPU_GROUP_ID                                            NTStatus      = 0xC035006F
+       STATUS_HV_INVALID_CPU_GROUP_STATE                                         NTStatus      = 0xC0350070
+       STATUS_HV_OPERATION_FAILED                                                NTStatus      = 0xC0350071
+       STATUS_HV_NOT_ALLOWED_WITH_NESTED_VIRT_ACTIVE                             NTStatus      = 0xC0350072
+       STATUS_HV_INSUFFICIENT_ROOT_MEMORY                                        NTStatus      = 0xC0350073
+       STATUS_HV_NOT_PRESENT                                                     NTStatus      = 0xC0351000
+       STATUS_VID_DUPLICATE_HANDLER                                              NTStatus      = 0xC0370001
+       STATUS_VID_TOO_MANY_HANDLERS                                              NTStatus      = 0xC0370002
+       STATUS_VID_QUEUE_FULL                                                     NTStatus      = 0xC0370003
+       STATUS_VID_HANDLER_NOT_PRESENT                                            NTStatus      = 0xC0370004
+       STATUS_VID_INVALID_OBJECT_NAME                                            NTStatus      = 0xC0370005
+       STATUS_VID_PARTITION_NAME_TOO_LONG                                        NTStatus      = 0xC0370006
+       STATUS_VID_MESSAGE_QUEUE_NAME_TOO_LONG                                    NTStatus      = 0xC0370007
+       STATUS_VID_PARTITION_ALREADY_EXISTS                                       NTStatus      = 0xC0370008
+       STATUS_VID_PARTITION_DOES_NOT_EXIST                                       NTStatus      = 0xC0370009
+       STATUS_VID_PARTITION_NAME_NOT_FOUND                                       NTStatus      = 0xC037000A
+       STATUS_VID_MESSAGE_QUEUE_ALREADY_EXISTS                                   NTStatus      = 0xC037000B
+       STATUS_VID_EXCEEDED_MBP_ENTRY_MAP_LIMIT                                   NTStatus      = 0xC037000C
+       STATUS_VID_MB_STILL_REFERENCED                                            NTStatus      = 0xC037000D
+       STATUS_VID_CHILD_GPA_PAGE_SET_CORRUPTED                                   NTStatus      = 0xC037000E
+       STATUS_VID_INVALID_NUMA_SETTINGS                                          NTStatus      = 0xC037000F
+       STATUS_VID_INVALID_NUMA_NODE_INDEX                                        NTStatus      = 0xC0370010
+       STATUS_VID_NOTIFICATION_QUEUE_ALREADY_ASSOCIATED                          NTStatus      = 0xC0370011
+       STATUS_VID_INVALID_MEMORY_BLOCK_HANDLE                                    NTStatus      = 0xC0370012
+       STATUS_VID_PAGE_RANGE_OVERFLOW                                            NTStatus      = 0xC0370013
+       STATUS_VID_INVALID_MESSAGE_QUEUE_HANDLE                                   NTStatus      = 0xC0370014
+       STATUS_VID_INVALID_GPA_RANGE_HANDLE                                       NTStatus      = 0xC0370015
+       STATUS_VID_NO_MEMORY_BLOCK_NOTIFICATION_QUEUE                             NTStatus      = 0xC0370016
+       STATUS_VID_MEMORY_BLOCK_LOCK_COUNT_EXCEEDED                               NTStatus      = 0xC0370017
+       STATUS_VID_INVALID_PPM_HANDLE                                             NTStatus      = 0xC0370018
+       STATUS_VID_MBPS_ARE_LOCKED                                                NTStatus      = 0xC0370019
+       STATUS_VID_MESSAGE_QUEUE_CLOSED                                           NTStatus      = 0xC037001A
+       STATUS_VID_VIRTUAL_PROCESSOR_LIMIT_EXCEEDED                               NTStatus      = 0xC037001B
+       STATUS_VID_STOP_PENDING                                                   NTStatus      = 0xC037001C
+       STATUS_VID_INVALID_PROCESSOR_STATE                                        NTStatus      = 0xC037001D
+       STATUS_VID_EXCEEDED_KM_CONTEXT_COUNT_LIMIT                                NTStatus      = 0xC037001E
+       STATUS_VID_KM_INTERFACE_ALREADY_INITIALIZED                               NTStatus      = 0xC037001F
+       STATUS_VID_MB_PROPERTY_ALREADY_SET_RESET                                  NTStatus      = 0xC0370020
+       STATUS_VID_MMIO_RANGE_DESTROYED                                           NTStatus      = 0xC0370021
+       STATUS_VID_INVALID_CHILD_GPA_PAGE_SET                                     NTStatus      = 0xC0370022
+       STATUS_VID_RESERVE_PAGE_SET_IS_BEING_USED                                 NTStatus      = 0xC0370023
+       STATUS_VID_RESERVE_PAGE_SET_TOO_SMALL                                     NTStatus      = 0xC0370024
+       STATUS_VID_MBP_ALREADY_LOCKED_USING_RESERVED_PAGE                         NTStatus      = 0xC0370025
+       STATUS_VID_MBP_COUNT_EXCEEDED_LIMIT                                       NTStatus      = 0xC0370026
+       STATUS_VID_SAVED_STATE_CORRUPT                                            NTStatus      = 0xC0370027
+       STATUS_VID_SAVED_STATE_UNRECOGNIZED_ITEM                                  NTStatus      = 0xC0370028
+       STATUS_VID_SAVED_STATE_INCOMPATIBLE                                       NTStatus      = 0xC0370029
+       STATUS_VID_VTL_ACCESS_DENIED                                              NTStatus      = 0xC037002A
+       STATUS_VID_REMOTE_NODE_PARENT_GPA_PAGES_USED                              NTStatus      = 0x80370001
+       STATUS_IPSEC_BAD_SPI                                                      NTStatus      = 0xC0360001
+       STATUS_IPSEC_SA_LIFETIME_EXPIRED                                          NTStatus      = 0xC0360002
+       STATUS_IPSEC_WRONG_SA                                                     NTStatus      = 0xC0360003
+       STATUS_IPSEC_REPLAY_CHECK_FAILED                                          NTStatus      = 0xC0360004
+       STATUS_IPSEC_INVALID_PACKET                                               NTStatus      = 0xC0360005
+       STATUS_IPSEC_INTEGRITY_CHECK_FAILED                                       NTStatus      = 0xC0360006
+       STATUS_IPSEC_CLEAR_TEXT_DROP                                              NTStatus      = 0xC0360007
+       STATUS_IPSEC_AUTH_FIREWALL_DROP                                           NTStatus      = 0xC0360008
+       STATUS_IPSEC_THROTTLE_DROP                                                NTStatus      = 0xC0360009
+       STATUS_IPSEC_DOSP_BLOCK                                                   NTStatus      = 0xC0368000
+       STATUS_IPSEC_DOSP_RECEIVED_MULTICAST                                      NTStatus      = 0xC0368001
+       STATUS_IPSEC_DOSP_INVALID_PACKET                                          NTStatus      = 0xC0368002
+       STATUS_IPSEC_DOSP_STATE_LOOKUP_FAILED                                     NTStatus      = 0xC0368003
+       STATUS_IPSEC_DOSP_MAX_ENTRIES                                             NTStatus      = 0xC0368004
+       STATUS_IPSEC_DOSP_KEYMOD_NOT_ALLOWED                                      NTStatus      = 0xC0368005
+       STATUS_IPSEC_DOSP_MAX_PER_IP_RATELIMIT_QUEUES                             NTStatus      = 0xC0368006
+       STATUS_VOLMGR_INCOMPLETE_REGENERATION                                     NTStatus      = 0x80380001
+       STATUS_VOLMGR_INCOMPLETE_DISK_MIGRATION                                   NTStatus      = 0x80380002
+       STATUS_VOLMGR_DATABASE_FULL                                               NTStatus      = 0xC0380001
+       STATUS_VOLMGR_DISK_CONFIGURATION_CORRUPTED                                NTStatus      = 0xC0380002
+       STATUS_VOLMGR_DISK_CONFIGURATION_NOT_IN_SYNC                              NTStatus      = 0xC0380003
+       STATUS_VOLMGR_PACK_CONFIG_UPDATE_FAILED                                   NTStatus      = 0xC0380004
+       STATUS_VOLMGR_DISK_CONTAINS_NON_SIMPLE_VOLUME                             NTStatus      = 0xC0380005
+       STATUS_VOLMGR_DISK_DUPLICATE                                              NTStatus      = 0xC0380006
+       STATUS_VOLMGR_DISK_DYNAMIC                                                NTStatus      = 0xC0380007
+       STATUS_VOLMGR_DISK_ID_INVALID                                             NTStatus      = 0xC0380008
+       STATUS_VOLMGR_DISK_INVALID                                                NTStatus      = 0xC0380009
+       STATUS_VOLMGR_DISK_LAST_VOTER                                             NTStatus      = 0xC038000A
+       STATUS_VOLMGR_DISK_LAYOUT_INVALID                                         NTStatus      = 0xC038000B
+       STATUS_VOLMGR_DISK_LAYOUT_NON_BASIC_BETWEEN_BASIC_PARTITIONS              NTStatus      = 0xC038000C
+       STATUS_VOLMGR_DISK_LAYOUT_NOT_CYLINDER_ALIGNED                            NTStatus      = 0xC038000D
+       STATUS_VOLMGR_DISK_LAYOUT_PARTITIONS_TOO_SMALL                            NTStatus      = 0xC038000E
+       STATUS_VOLMGR_DISK_LAYOUT_PRIMARY_BETWEEN_LOGICAL_PARTITIONS              NTStatus      = 0xC038000F
+       STATUS_VOLMGR_DISK_LAYOUT_TOO_MANY_PARTITIONS                             NTStatus      = 0xC0380010
+       STATUS_VOLMGR_DISK_MISSING                                                NTStatus      = 0xC0380011
+       STATUS_VOLMGR_DISK_NOT_EMPTY                                              NTStatus      = 0xC0380012
+       STATUS_VOLMGR_DISK_NOT_ENOUGH_SPACE                                       NTStatus      = 0xC0380013
+       STATUS_VOLMGR_DISK_REVECTORING_FAILED                                     NTStatus      = 0xC0380014
+       STATUS_VOLMGR_DISK_SECTOR_SIZE_INVALID                                    NTStatus      = 0xC0380015
+       STATUS_VOLMGR_DISK_SET_NOT_CONTAINED                                      NTStatus      = 0xC0380016
+       STATUS_VOLMGR_DISK_USED_BY_MULTIPLE_MEMBERS                               NTStatus      = 0xC0380017
+       STATUS_VOLMGR_DISK_USED_BY_MULTIPLE_PLEXES                                NTStatus      = 0xC0380018
+       STATUS_VOLMGR_DYNAMIC_DISK_NOT_SUPPORTED                                  NTStatus      = 0xC0380019
+       STATUS_VOLMGR_EXTENT_ALREADY_USED                                         NTStatus      = 0xC038001A
+       STATUS_VOLMGR_EXTENT_NOT_CONTIGUOUS                                       NTStatus      = 0xC038001B
+       STATUS_VOLMGR_EXTENT_NOT_IN_PUBLIC_REGION                                 NTStatus      = 0xC038001C
+       STATUS_VOLMGR_EXTENT_NOT_SECTOR_ALIGNED                                   NTStatus      = 0xC038001D
+       STATUS_VOLMGR_EXTENT_OVERLAPS_EBR_PARTITION                               NTStatus      = 0xC038001E
+       STATUS_VOLMGR_EXTENT_VOLUME_LENGTHS_DO_NOT_MATCH                          NTStatus      = 0xC038001F
+       STATUS_VOLMGR_FAULT_TOLERANT_NOT_SUPPORTED                                NTStatus      = 0xC0380020
+       STATUS_VOLMGR_INTERLEAVE_LENGTH_INVALID                                   NTStatus      = 0xC0380021
+       STATUS_VOLMGR_MAXIMUM_REGISTERED_USERS                                    NTStatus      = 0xC0380022
+       STATUS_VOLMGR_MEMBER_IN_SYNC                                              NTStatus      = 0xC0380023
+       STATUS_VOLMGR_MEMBER_INDEX_DUPLICATE                                      NTStatus      = 0xC0380024
+       STATUS_VOLMGR_MEMBER_INDEX_INVALID                                        NTStatus      = 0xC0380025
+       STATUS_VOLMGR_MEMBER_MISSING                                              NTStatus      = 0xC0380026
+       STATUS_VOLMGR_MEMBER_NOT_DETACHED                                         NTStatus      = 0xC0380027
+       STATUS_VOLMGR_MEMBER_REGENERATING                                         NTStatus      = 0xC0380028
+       STATUS_VOLMGR_ALL_DISKS_FAILED                                            NTStatus      = 0xC0380029
+       STATUS_VOLMGR_NO_REGISTERED_USERS                                         NTStatus      = 0xC038002A
+       STATUS_VOLMGR_NO_SUCH_USER                                                NTStatus      = 0xC038002B
+       STATUS_VOLMGR_NOTIFICATION_RESET                                          NTStatus      = 0xC038002C
+       STATUS_VOLMGR_NUMBER_OF_MEMBERS_INVALID                                   NTStatus      = 0xC038002D
+       STATUS_VOLMGR_NUMBER_OF_PLEXES_INVALID                                    NTStatus      = 0xC038002E
+       STATUS_VOLMGR_PACK_DUPLICATE                                              NTStatus      = 0xC038002F
+       STATUS_VOLMGR_PACK_ID_INVALID                                             NTStatus      = 0xC0380030
+       STATUS_VOLMGR_PACK_INVALID                                                NTStatus      = 0xC0380031
+       STATUS_VOLMGR_PACK_NAME_INVALID                                           NTStatus      = 0xC0380032
+       STATUS_VOLMGR_PACK_OFFLINE                                                NTStatus      = 0xC0380033
+       STATUS_VOLMGR_PACK_HAS_QUORUM                                             NTStatus      = 0xC0380034
+       STATUS_VOLMGR_PACK_WITHOUT_QUORUM                                         NTStatus      = 0xC0380035
+       STATUS_VOLMGR_PARTITION_STYLE_INVALID                                     NTStatus      = 0xC0380036
+       STATUS_VOLMGR_PARTITION_UPDATE_FAILED                                     NTStatus      = 0xC0380037
+       STATUS_VOLMGR_PLEX_IN_SYNC                                                NTStatus      = 0xC0380038
+       STATUS_VOLMGR_PLEX_INDEX_DUPLICATE                                        NTStatus      = 0xC0380039
+       STATUS_VOLMGR_PLEX_INDEX_INVALID                                          NTStatus      = 0xC038003A
+       STATUS_VOLMGR_PLEX_LAST_ACTIVE                                            NTStatus      = 0xC038003B
+       STATUS_VOLMGR_PLEX_MISSING                                                NTStatus      = 0xC038003C
+       STATUS_VOLMGR_PLEX_REGENERATING                                           NTStatus      = 0xC038003D
+       STATUS_VOLMGR_PLEX_TYPE_INVALID                                           NTStatus      = 0xC038003E
+       STATUS_VOLMGR_PLEX_NOT_RAID5                                              NTStatus      = 0xC038003F
+       STATUS_VOLMGR_PLEX_NOT_SIMPLE                                             NTStatus      = 0xC0380040
+       STATUS_VOLMGR_STRUCTURE_SIZE_INVALID                                      NTStatus      = 0xC0380041
+       STATUS_VOLMGR_TOO_MANY_NOTIFICATION_REQUESTS                              NTStatus      = 0xC0380042
+       STATUS_VOLMGR_TRANSACTION_IN_PROGRESS                                     NTStatus      = 0xC0380043
+       STATUS_VOLMGR_UNEXPECTED_DISK_LAYOUT_CHANGE                               NTStatus      = 0xC0380044
+       STATUS_VOLMGR_VOLUME_CONTAINS_MISSING_DISK                                NTStatus      = 0xC0380045
+       STATUS_VOLMGR_VOLUME_ID_INVALID                                           NTStatus      = 0xC0380046
+       STATUS_VOLMGR_VOLUME_LENGTH_INVALID                                       NTStatus      = 0xC0380047
+       STATUS_VOLMGR_VOLUME_LENGTH_NOT_SECTOR_SIZE_MULTIPLE                      NTStatus      = 0xC0380048
+       STATUS_VOLMGR_VOLUME_NOT_MIRRORED                                         NTStatus      = 0xC0380049
+       STATUS_VOLMGR_VOLUME_NOT_RETAINED                                         NTStatus      = 0xC038004A
+       STATUS_VOLMGR_VOLUME_OFFLINE                                              NTStatus      = 0xC038004B
+       STATUS_VOLMGR_VOLUME_RETAINED                                             NTStatus      = 0xC038004C
+       STATUS_VOLMGR_NUMBER_OF_EXTENTS_INVALID                                   NTStatus      = 0xC038004D
+       STATUS_VOLMGR_DIFFERENT_SECTOR_SIZE                                       NTStatus      = 0xC038004E
+       STATUS_VOLMGR_BAD_BOOT_DISK                                               NTStatus      = 0xC038004F
+       STATUS_VOLMGR_PACK_CONFIG_OFFLINE                                         NTStatus      = 0xC0380050
+       STATUS_VOLMGR_PACK_CONFIG_ONLINE                                          NTStatus      = 0xC0380051
+       STATUS_VOLMGR_NOT_PRIMARY_PACK                                            NTStatus      = 0xC0380052
+       STATUS_VOLMGR_PACK_LOG_UPDATE_FAILED                                      NTStatus      = 0xC0380053
+       STATUS_VOLMGR_NUMBER_OF_DISKS_IN_PLEX_INVALID                             NTStatus      = 0xC0380054
+       STATUS_VOLMGR_NUMBER_OF_DISKS_IN_MEMBER_INVALID                           NTStatus      = 0xC0380055
+       STATUS_VOLMGR_VOLUME_MIRRORED                                             NTStatus      = 0xC0380056
+       STATUS_VOLMGR_PLEX_NOT_SIMPLE_SPANNED                                     NTStatus      = 0xC0380057
+       STATUS_VOLMGR_NO_VALID_LOG_COPIES                                         NTStatus      = 0xC0380058
+       STATUS_VOLMGR_PRIMARY_PACK_PRESENT                                        NTStatus      = 0xC0380059
+       STATUS_VOLMGR_NUMBER_OF_DISKS_INVALID                                     NTStatus      = 0xC038005A
+       STATUS_VOLMGR_MIRROR_NOT_SUPPORTED                                        NTStatus      = 0xC038005B
+       STATUS_VOLMGR_RAID5_NOT_SUPPORTED                                         NTStatus      = 0xC038005C
+       STATUS_BCD_NOT_ALL_ENTRIES_IMPORTED                                       NTStatus      = 0x80390001
+       STATUS_BCD_TOO_MANY_ELEMENTS                                              NTStatus      = 0xC0390002
+       STATUS_BCD_NOT_ALL_ENTRIES_SYNCHRONIZED                                   NTStatus      = 0x80390003
+       STATUS_VHD_DRIVE_FOOTER_MISSING                                           NTStatus      = 0xC03A0001
+       STATUS_VHD_DRIVE_FOOTER_CHECKSUM_MISMATCH                                 NTStatus      = 0xC03A0002
+       STATUS_VHD_DRIVE_FOOTER_CORRUPT                                           NTStatus      = 0xC03A0003
+       STATUS_VHD_FORMAT_UNKNOWN                                                 NTStatus      = 0xC03A0004
+       STATUS_VHD_FORMAT_UNSUPPORTED_VERSION                                     NTStatus      = 0xC03A0005
+       STATUS_VHD_SPARSE_HEADER_CHECKSUM_MISMATCH                                NTStatus      = 0xC03A0006
+       STATUS_VHD_SPARSE_HEADER_UNSUPPORTED_VERSION                              NTStatus      = 0xC03A0007
+       STATUS_VHD_SPARSE_HEADER_CORRUPT                                          NTStatus      = 0xC03A0008
+       STATUS_VHD_BLOCK_ALLOCATION_FAILURE                                       NTStatus      = 0xC03A0009
+       STATUS_VHD_BLOCK_ALLOCATION_TABLE_CORRUPT                                 NTStatus      = 0xC03A000A
+       STATUS_VHD_INVALID_BLOCK_SIZE                                             NTStatus      = 0xC03A000B
+       STATUS_VHD_BITMAP_MISMATCH                                                NTStatus      = 0xC03A000C
+       STATUS_VHD_PARENT_VHD_NOT_FOUND                                           NTStatus      = 0xC03A000D
+       STATUS_VHD_CHILD_PARENT_ID_MISMATCH                                       NTStatus      = 0xC03A000E
+       STATUS_VHD_CHILD_PARENT_TIMESTAMP_MISMATCH                                NTStatus      = 0xC03A000F
+       STATUS_VHD_METADATA_READ_FAILURE                                          NTStatus      = 0xC03A0010
+       STATUS_VHD_METADATA_WRITE_FAILURE                                         NTStatus      = 0xC03A0011
+       STATUS_VHD_INVALID_SIZE                                                   NTStatus      = 0xC03A0012
+       STATUS_VHD_INVALID_FILE_SIZE                                              NTStatus      = 0xC03A0013
+       STATUS_VIRTDISK_PROVIDER_NOT_FOUND                                        NTStatus      = 0xC03A0014
+       STATUS_VIRTDISK_NOT_VIRTUAL_DISK                                          NTStatus      = 0xC03A0015
+       STATUS_VHD_PARENT_VHD_ACCESS_DENIED                                       NTStatus      = 0xC03A0016
+       STATUS_VHD_CHILD_PARENT_SIZE_MISMATCH                                     NTStatus      = 0xC03A0017
+       STATUS_VHD_DIFFERENCING_CHAIN_CYCLE_DETECTED                              NTStatus      = 0xC03A0018
+       STATUS_VHD_DIFFERENCING_CHAIN_ERROR_IN_PARENT                             NTStatus      = 0xC03A0019
+       STATUS_VIRTUAL_DISK_LIMITATION                                            NTStatus      = 0xC03A001A
+       STATUS_VHD_INVALID_TYPE                                                   NTStatus      = 0xC03A001B
+       STATUS_VHD_INVALID_STATE                                                  NTStatus      = 0xC03A001C
+       STATUS_VIRTDISK_UNSUPPORTED_DISK_SECTOR_SIZE                              NTStatus      = 0xC03A001D
+       STATUS_VIRTDISK_DISK_ALREADY_OWNED                                        NTStatus      = 0xC03A001E
+       STATUS_VIRTDISK_DISK_ONLINE_AND_WRITABLE                                  NTStatus      = 0xC03A001F
+       STATUS_CTLOG_TRACKING_NOT_INITIALIZED                                     NTStatus      = 0xC03A0020
+       STATUS_CTLOG_LOGFILE_SIZE_EXCEEDED_MAXSIZE                                NTStatus      = 0xC03A0021
+       STATUS_CTLOG_VHD_CHANGED_OFFLINE                                          NTStatus      = 0xC03A0022
+       STATUS_CTLOG_INVALID_TRACKING_STATE                                       NTStatus      = 0xC03A0023
+       STATUS_CTLOG_INCONSISTENT_TRACKING_FILE                                   NTStatus      = 0xC03A0024
+       STATUS_VHD_METADATA_FULL                                                  NTStatus      = 0xC03A0028
+       STATUS_VHD_INVALID_CHANGE_TRACKING_ID                                     NTStatus      = 0xC03A0029
+       STATUS_VHD_CHANGE_TRACKING_DISABLED                                       NTStatus      = 0xC03A002A
+       STATUS_VHD_MISSING_CHANGE_TRACKING_INFORMATION                            NTStatus      = 0xC03A0030
+       STATUS_VHD_RESIZE_WOULD_TRUNCATE_DATA                                     NTStatus      = 0xC03A0031
+       STATUS_VHD_COULD_NOT_COMPUTE_MINIMUM_VIRTUAL_SIZE                         NTStatus      = 0xC03A0032
+       STATUS_VHD_ALREADY_AT_OR_BELOW_MINIMUM_VIRTUAL_SIZE                       NTStatus      = 0xC03A0033
+       STATUS_QUERY_STORAGE_ERROR                                                NTStatus      = 0x803A0001
+       STATUS_GDI_HANDLE_LEAK                                                    NTStatus      = 0x803F0001
+       STATUS_RKF_KEY_NOT_FOUND                                                  NTStatus      = 0xC0400001
+       STATUS_RKF_DUPLICATE_KEY                                                  NTStatus      = 0xC0400002
+       STATUS_RKF_BLOB_FULL                                                      NTStatus      = 0xC0400003
+       STATUS_RKF_STORE_FULL                                                     NTStatus      = 0xC0400004
+       STATUS_RKF_FILE_BLOCKED                                                   NTStatus      = 0xC0400005
+       STATUS_RKF_ACTIVE_KEY                                                     NTStatus      = 0xC0400006
+       STATUS_RDBSS_RESTART_OPERATION                                            NTStatus      = 0xC0410001
+       STATUS_RDBSS_CONTINUE_OPERATION                                           NTStatus      = 0xC0410002
+       STATUS_RDBSS_POST_OPERATION                                               NTStatus      = 0xC0410003
+       STATUS_RDBSS_RETRY_LOOKUP                                                 NTStatus      = 0xC0410004
+       STATUS_BTH_ATT_INVALID_HANDLE                                             NTStatus      = 0xC0420001
+       STATUS_BTH_ATT_READ_NOT_PERMITTED                                         NTStatus      = 0xC0420002
+       STATUS_BTH_ATT_WRITE_NOT_PERMITTED                                        NTStatus      = 0xC0420003
+       STATUS_BTH_ATT_INVALID_PDU                                                NTStatus      = 0xC0420004
+       STATUS_BTH_ATT_INSUFFICIENT_AUTHENTICATION                                NTStatus      = 0xC0420005
+       STATUS_BTH_ATT_REQUEST_NOT_SUPPORTED                                      NTStatus      = 0xC0420006
+       STATUS_BTH_ATT_INVALID_OFFSET                                             NTStatus      = 0xC0420007
+       STATUS_BTH_ATT_INSUFFICIENT_AUTHORIZATION                                 NTStatus      = 0xC0420008
+       STATUS_BTH_ATT_PREPARE_QUEUE_FULL                                         NTStatus      = 0xC0420009
+       STATUS_BTH_ATT_ATTRIBUTE_NOT_FOUND                                        NTStatus      = 0xC042000A
+       STATUS_BTH_ATT_ATTRIBUTE_NOT_LONG                                         NTStatus      = 0xC042000B
+       STATUS_BTH_ATT_INSUFFICIENT_ENCRYPTION_KEY_SIZE                           NTStatus      = 0xC042000C
+       STATUS_BTH_ATT_INVALID_ATTRIBUTE_VALUE_LENGTH                             NTStatus      = 0xC042000D
+       STATUS_BTH_ATT_UNLIKELY                                                   NTStatus      = 0xC042000E
+       STATUS_BTH_ATT_INSUFFICIENT_ENCRYPTION                                    NTStatus      = 0xC042000F
+       STATUS_BTH_ATT_UNSUPPORTED_GROUP_TYPE                                     NTStatus      = 0xC0420010
+       STATUS_BTH_ATT_INSUFFICIENT_RESOURCES                                     NTStatus      = 0xC0420011
+       STATUS_BTH_ATT_UNKNOWN_ERROR                                              NTStatus      = 0xC0421000
+       STATUS_SECUREBOOT_ROLLBACK_DETECTED                                       NTStatus      = 0xC0430001
+       STATUS_SECUREBOOT_POLICY_VIOLATION                                        NTStatus      = 0xC0430002
+       STATUS_SECUREBOOT_INVALID_POLICY                                          NTStatus      = 0xC0430003
+       STATUS_SECUREBOOT_POLICY_PUBLISHER_NOT_FOUND                              NTStatus      = 0xC0430004
+       STATUS_SECUREBOOT_POLICY_NOT_SIGNED                                       NTStatus      = 0xC0430005
+       STATUS_SECUREBOOT_NOT_ENABLED                                             NTStatus      = 0x80430006
+       STATUS_SECUREBOOT_FILE_REPLACED                                           NTStatus      = 0xC0430007
+       STATUS_SECUREBOOT_POLICY_NOT_AUTHORIZED                                   NTStatus      = 0xC0430008
+       STATUS_SECUREBOOT_POLICY_UNKNOWN                                          NTStatus      = 0xC0430009
+       STATUS_SECUREBOOT_POLICY_MISSING_ANTIROLLBACKVERSION                      NTStatus      = 0xC043000A
+       STATUS_SECUREBOOT_PLATFORM_ID_MISMATCH                                    NTStatus      = 0xC043000B
+       STATUS_SECUREBOOT_POLICY_ROLLBACK_DETECTED                                NTStatus      = 0xC043000C
+       STATUS_SECUREBOOT_POLICY_UPGRADE_MISMATCH                                 NTStatus      = 0xC043000D
+       STATUS_SECUREBOOT_REQUIRED_POLICY_FILE_MISSING                            NTStatus      = 0xC043000E
+       STATUS_SECUREBOOT_NOT_BASE_POLICY                                         NTStatus      = 0xC043000F
+       STATUS_SECUREBOOT_NOT_SUPPLEMENTAL_POLICY                                 NTStatus      = 0xC0430010
+       STATUS_PLATFORM_MANIFEST_NOT_AUTHORIZED                                   NTStatus      = 0xC0EB0001
+       STATUS_PLATFORM_MANIFEST_INVALID                                          NTStatus      = 0xC0EB0002
+       STATUS_PLATFORM_MANIFEST_FILE_NOT_AUTHORIZED                              NTStatus      = 0xC0EB0003
+       STATUS_PLATFORM_MANIFEST_CATALOG_NOT_AUTHORIZED                           NTStatus      = 0xC0EB0004
+       STATUS_PLATFORM_MANIFEST_BINARY_ID_NOT_FOUND                              NTStatus      = 0xC0EB0005
+       STATUS_PLATFORM_MANIFEST_NOT_ACTIVE                                       NTStatus      = 0xC0EB0006
+       STATUS_PLATFORM_MANIFEST_NOT_SIGNED                                       NTStatus      = 0xC0EB0007
+       STATUS_SYSTEM_INTEGRITY_ROLLBACK_DETECTED                                 NTStatus      = 0xC0E90001
+       STATUS_SYSTEM_INTEGRITY_POLICY_VIOLATION                                  NTStatus      = 0xC0E90002
+       STATUS_SYSTEM_INTEGRITY_INVALID_POLICY                                    NTStatus      = 0xC0E90003
+       STATUS_SYSTEM_INTEGRITY_POLICY_NOT_SIGNED                                 NTStatus      = 0xC0E90004
+       STATUS_SYSTEM_INTEGRITY_TOO_MANY_POLICIES                                 NTStatus      = 0xC0E90005
+       STATUS_SYSTEM_INTEGRITY_SUPPLEMENTAL_POLICY_NOT_AUTHORIZED                NTStatus      = 0xC0E90006
+       STATUS_NO_APPLICABLE_APP_LICENSES_FOUND                                   NTStatus      = 0xC0EA0001
+       STATUS_CLIP_LICENSE_NOT_FOUND                                             NTStatus      = 0xC0EA0002
+       STATUS_CLIP_DEVICE_LICENSE_MISSING                                        NTStatus      = 0xC0EA0003
+       STATUS_CLIP_LICENSE_INVALID_SIGNATURE                                     NTStatus      = 0xC0EA0004
+       STATUS_CLIP_KEYHOLDER_LICENSE_MISSING_OR_INVALID                          NTStatus      = 0xC0EA0005
+       STATUS_CLIP_LICENSE_EXPIRED                                               NTStatus      = 0xC0EA0006
+       STATUS_CLIP_LICENSE_SIGNED_BY_UNKNOWN_SOURCE                              NTStatus      = 0xC0EA0007
+       STATUS_CLIP_LICENSE_NOT_SIGNED                                            NTStatus      = 0xC0EA0008
+       STATUS_CLIP_LICENSE_HARDWARE_ID_OUT_OF_TOLERANCE                          NTStatus      = 0xC0EA0009
+       STATUS_CLIP_LICENSE_DEVICE_ID_MISMATCH                                    NTStatus      = 0xC0EA000A
+       STATUS_AUDIO_ENGINE_NODE_NOT_FOUND                                        NTStatus      = 0xC0440001
+       STATUS_HDAUDIO_EMPTY_CONNECTION_LIST                                      NTStatus      = 0xC0440002
+       STATUS_HDAUDIO_CONNECTION_LIST_NOT_SUPPORTED                              NTStatus      = 0xC0440003
+       STATUS_HDAUDIO_NO_LOGICAL_DEVICES_CREATED                                 NTStatus      = 0xC0440004
+       STATUS_HDAUDIO_NULL_LINKED_LIST_ENTRY                                     NTStatus      = 0xC0440005
+       STATUS_SPACES_REPAIRED                                                    NTStatus      = 0x00E70000
+       STATUS_SPACES_PAUSE                                                       NTStatus      = 0x00E70001
+       STATUS_SPACES_COMPLETE                                                    NTStatus      = 0x00E70002
+       STATUS_SPACES_REDIRECT                                                    NTStatus      = 0x00E70003
+       STATUS_SPACES_FAULT_DOMAIN_TYPE_INVALID                                   NTStatus      = 0xC0E70001
+       STATUS_SPACES_RESILIENCY_TYPE_INVALID                                     NTStatus      = 0xC0E70003
+       STATUS_SPACES_DRIVE_SECTOR_SIZE_INVALID                                   NTStatus      = 0xC0E70004
+       STATUS_SPACES_DRIVE_REDUNDANCY_INVALID                                    NTStatus      = 0xC0E70006
+       STATUS_SPACES_NUMBER_OF_DATA_COPIES_INVALID                               NTStatus      = 0xC0E70007
+       STATUS_SPACES_INTERLEAVE_LENGTH_INVALID                                   NTStatus      = 0xC0E70009
+       STATUS_SPACES_NUMBER_OF_COLUMNS_INVALID                                   NTStatus      = 0xC0E7000A
+       STATUS_SPACES_NOT_ENOUGH_DRIVES                                           NTStatus      = 0xC0E7000B
+       STATUS_SPACES_EXTENDED_ERROR                                              NTStatus      = 0xC0E7000C
+       STATUS_SPACES_PROVISIONING_TYPE_INVALID                                   NTStatus      = 0xC0E7000D
+       STATUS_SPACES_ALLOCATION_SIZE_INVALID                                     NTStatus      = 0xC0E7000E
+       STATUS_SPACES_ENCLOSURE_AWARE_INVALID                                     NTStatus      = 0xC0E7000F
+       STATUS_SPACES_WRITE_CACHE_SIZE_INVALID                                    NTStatus      = 0xC0E70010
+       STATUS_SPACES_NUMBER_OF_GROUPS_INVALID                                    NTStatus      = 0xC0E70011
+       STATUS_SPACES_DRIVE_OPERATIONAL_STATE_INVALID                             NTStatus      = 0xC0E70012
+       STATUS_SPACES_UPDATE_COLUMN_STATE                                         NTStatus      = 0xC0E70013
+       STATUS_SPACES_MAP_REQUIRED                                                NTStatus      = 0xC0E70014
+       STATUS_SPACES_UNSUPPORTED_VERSION                                         NTStatus      = 0xC0E70015
+       STATUS_SPACES_CORRUPT_METADATA                                            NTStatus      = 0xC0E70016
+       STATUS_SPACES_DRT_FULL                                                    NTStatus      = 0xC0E70017
+       STATUS_SPACES_INCONSISTENCY                                               NTStatus      = 0xC0E70018
+       STATUS_SPACES_LOG_NOT_READY                                               NTStatus      = 0xC0E70019
+       STATUS_SPACES_NO_REDUNDANCY                                               NTStatus      = 0xC0E7001A
+       STATUS_SPACES_DRIVE_NOT_READY                                             NTStatus      = 0xC0E7001B
+       STATUS_SPACES_DRIVE_SPLIT                                                 NTStatus      = 0xC0E7001C
+       STATUS_SPACES_DRIVE_LOST_DATA                                             NTStatus      = 0xC0E7001D
+       STATUS_SPACES_ENTRY_INCOMPLETE                                            NTStatus      = 0xC0E7001E
+       STATUS_SPACES_ENTRY_INVALID                                               NTStatus      = 0xC0E7001F
+       STATUS_SPACES_MARK_DIRTY                                                  NTStatus      = 0xC0E70020
+       STATUS_VOLSNAP_BOOTFILE_NOT_VALID                                         NTStatus      = 0xC0500003
+       STATUS_VOLSNAP_ACTIVATION_TIMEOUT                                         NTStatus      = 0xC0500004
+       STATUS_IO_PREEMPTED                                                       NTStatus      = 0xC0510001
+       STATUS_SVHDX_ERROR_STORED                                                 NTStatus      = 0xC05C0000
+       STATUS_SVHDX_ERROR_NOT_AVAILABLE                                          NTStatus      = 0xC05CFF00
+       STATUS_SVHDX_UNIT_ATTENTION_AVAILABLE                                     NTStatus      = 0xC05CFF01
+       STATUS_SVHDX_UNIT_ATTENTION_CAPACITY_DATA_CHANGED                         NTStatus      = 0xC05CFF02
+       STATUS_SVHDX_UNIT_ATTENTION_RESERVATIONS_PREEMPTED                        NTStatus      = 0xC05CFF03
+       STATUS_SVHDX_UNIT_ATTENTION_RESERVATIONS_RELEASED                         NTStatus      = 0xC05CFF04
+       STATUS_SVHDX_UNIT_ATTENTION_REGISTRATIONS_PREEMPTED                       NTStatus      = 0xC05CFF05
+       STATUS_SVHDX_UNIT_ATTENTION_OPERATING_DEFINITION_CHANGED                  NTStatus      = 0xC05CFF06
+       STATUS_SVHDX_RESERVATION_CONFLICT                                         NTStatus      = 0xC05CFF07
+       STATUS_SVHDX_WRONG_FILE_TYPE                                              NTStatus      = 0xC05CFF08
+       STATUS_SVHDX_VERSION_MISMATCH                                             NTStatus      = 0xC05CFF09
+       STATUS_VHD_SHARED                                                         NTStatus      = 0xC05CFF0A
+       STATUS_SVHDX_NO_INITIATOR                                                 NTStatus      = 0xC05CFF0B
+       STATUS_VHDSET_BACKING_STORAGE_NOT_FOUND                                   NTStatus      = 0xC05CFF0C
+       STATUS_SMB_NO_PREAUTH_INTEGRITY_HASH_OVERLAP                              NTStatus      = 0xC05D0000
+       STATUS_SMB_BAD_CLUSTER_DIALECT                                            NTStatus      = 0xC05D0001
+       STATUS_SMB_GUEST_LOGON_BLOCKED                                            NTStatus      = 0xC05D0002
+       STATUS_SECCORE_INVALID_COMMAND                                            NTStatus      = 0xC0E80000
+       STATUS_VSM_NOT_INITIALIZED                                                NTStatus      = 0xC0450000
+       STATUS_VSM_DMA_PROTECTION_NOT_IN_USE                                      NTStatus      = 0xC0450001
+       STATUS_APPEXEC_CONDITION_NOT_SATISFIED                                    NTStatus      = 0xC0EC0000
+       STATUS_APPEXEC_HANDLE_INVALIDATED                                         NTStatus      = 0xC0EC0001
+       STATUS_APPEXEC_INVALID_HOST_GENERATION                                    NTStatus      = 0xC0EC0002
+       STATUS_APPEXEC_UNEXPECTED_PROCESS_REGISTRATION                            NTStatus      = 0xC0EC0003
+       STATUS_APPEXEC_INVALID_HOST_STATE                                         NTStatus      = 0xC0EC0004
+       STATUS_APPEXEC_NO_DONOR                                                   NTStatus      = 0xC0EC0005
+       STATUS_APPEXEC_HOST_ID_MISMATCH                                           NTStatus      = 0xC0EC0006
+       STATUS_APPEXEC_UNKNOWN_USER                                               NTStatus      = 0xC0EC0007
 )
index aa768631be5448b6139c31be488a6b025d140d33..559bc845c99cdaa078b0d25125a772218fe0e846 100644 (file)
@@ -172,6 +172,7 @@ var (
        procCancelIo                                             = modkernel32.NewProc("CancelIo")
        procCancelIoEx                                           = modkernel32.NewProc("CancelIoEx")
        procCloseHandle                                          = modkernel32.NewProc("CloseHandle")
+       procConnectNamedPipe                                     = modkernel32.NewProc("ConnectNamedPipe")
        procCreateDirectoryW                                     = modkernel32.NewProc("CreateDirectoryW")
        procCreateEventExW                                       = modkernel32.NewProc("CreateEventExW")
        procCreateEventW                                         = modkernel32.NewProc("CreateEventW")
@@ -182,6 +183,7 @@ var (
        procCreateJobObjectW                                     = modkernel32.NewProc("CreateJobObjectW")
        procCreateMutexExW                                       = modkernel32.NewProc("CreateMutexExW")
        procCreateMutexW                                         = modkernel32.NewProc("CreateMutexW")
+       procCreateNamedPipeW                                     = modkernel32.NewProc("CreateNamedPipeW")
        procCreatePipe                                           = modkernel32.NewProc("CreatePipe")
        procCreateProcessW                                       = modkernel32.NewProc("CreateProcessW")
        procCreateSymbolicLinkW                                  = modkernel32.NewProc("CreateSymbolicLinkW")
@@ -203,6 +205,7 @@ var (
        procFindNextFileW                                        = modkernel32.NewProc("FindNextFileW")
        procFindNextVolumeMountPointW                            = modkernel32.NewProc("FindNextVolumeMountPointW")
        procFindNextVolumeW                                      = modkernel32.NewProc("FindNextVolumeW")
+       procFindResourceW                                        = modkernel32.NewProc("FindResourceW")
        procFindVolumeClose                                      = modkernel32.NewProc("FindVolumeClose")
        procFindVolumeMountPointClose                            = modkernel32.NewProc("FindVolumeMountPointClose")
        procFlushFileBuffers                                     = modkernel32.NewProc("FlushFileBuffers")
@@ -239,6 +242,8 @@ var (
        procGetLongPathNameW                                     = modkernel32.NewProc("GetLongPathNameW")
        procGetModuleFileNameW                                   = modkernel32.NewProc("GetModuleFileNameW")
        procGetModuleHandleExW                                   = modkernel32.NewProc("GetModuleHandleExW")
+       procGetNamedPipeHandleStateW                             = modkernel32.NewProc("GetNamedPipeHandleStateW")
+       procGetNamedPipeInfo                                     = modkernel32.NewProc("GetNamedPipeInfo")
        procGetOverlappedResult                                  = modkernel32.NewProc("GetOverlappedResult")
        procGetPriorityClass                                     = modkernel32.NewProc("GetPriorityClass")
        procGetProcAddress                                       = modkernel32.NewProc("GetProcAddress")
@@ -273,8 +278,11 @@ var (
        procIsWow64Process2                                      = modkernel32.NewProc("IsWow64Process2")
        procLoadLibraryExW                                       = modkernel32.NewProc("LoadLibraryExW")
        procLoadLibraryW                                         = modkernel32.NewProc("LoadLibraryW")
+       procLoadResource                                         = modkernel32.NewProc("LoadResource")
+       procLocalAlloc                                           = modkernel32.NewProc("LocalAlloc")
        procLocalFree                                            = modkernel32.NewProc("LocalFree")
        procLockFileEx                                           = modkernel32.NewProc("LockFileEx")
+       procLockResource                                         = modkernel32.NewProc("LockResource")
        procMapViewOfFile                                        = modkernel32.NewProc("MapViewOfFile")
        procMoveFileExW                                          = modkernel32.NewProc("MoveFileExW")
        procMoveFileW                                            = modkernel32.NewProc("MoveFileW")
@@ -289,6 +297,7 @@ var (
        procProcessIdToSessionId                                 = modkernel32.NewProc("ProcessIdToSessionId")
        procPulseEvent                                           = modkernel32.NewProc("PulseEvent")
        procQueryDosDeviceW                                      = modkernel32.NewProc("QueryDosDeviceW")
+       procQueryFullProcessImageNameW                           = modkernel32.NewProc("QueryFullProcessImageNameW")
        procQueryInformationJobObject                            = modkernel32.NewProc("QueryInformationJobObject")
        procReadConsoleW                                         = modkernel32.NewProc("ReadConsoleW")
        procReadDirectoryChangesW                                = modkernel32.NewProc("ReadDirectoryChangesW")
@@ -314,6 +323,7 @@ var (
        procSetFileTime                                          = modkernel32.NewProc("SetFileTime")
        procSetHandleInformation                                 = modkernel32.NewProc("SetHandleInformation")
        procSetInformationJobObject                              = modkernel32.NewProc("SetInformationJobObject")
+       procSetNamedPipeHandleState                              = modkernel32.NewProc("SetNamedPipeHandleState")
        procSetPriorityClass                                     = modkernel32.NewProc("SetPriorityClass")
        procSetProcessPriorityBoost                              = modkernel32.NewProc("SetProcessPriorityBoost")
        procSetProcessShutdownParameters                         = modkernel32.NewProc("SetProcessShutdownParameters")
@@ -321,6 +331,7 @@ var (
        procSetStdHandle                                         = modkernel32.NewProc("SetStdHandle")
        procSetVolumeLabelW                                      = modkernel32.NewProc("SetVolumeLabelW")
        procSetVolumeMountPointW                                 = modkernel32.NewProc("SetVolumeMountPointW")
+       procSizeofResource                                       = modkernel32.NewProc("SizeofResource")
        procSleepEx                                              = modkernel32.NewProc("SleepEx")
        procTerminateJobObject                                   = modkernel32.NewProc("TerminateJobObject")
        procTerminateProcess                                     = modkernel32.NewProc("TerminateProcess")
@@ -344,11 +355,25 @@ var (
        procNetApiBufferFree                                     = modnetapi32.NewProc("NetApiBufferFree")
        procNetGetJoinInformation                                = modnetapi32.NewProc("NetGetJoinInformation")
        procNetUserGetInfo                                       = modnetapi32.NewProc("NetUserGetInfo")
+       procNtCreateFile                                         = modntdll.NewProc("NtCreateFile")
+       procNtCreateNamedPipeFile                                = modntdll.NewProc("NtCreateNamedPipeFile")
+       procNtQueryInformationProcess                            = modntdll.NewProc("NtQueryInformationProcess")
+       procNtSetInformationProcess                              = modntdll.NewProc("NtSetInformationProcess")
+       procRtlDefaultNpAcl                                      = modntdll.NewProc("RtlDefaultNpAcl")
+       procRtlDosPathNameToNtPathName_U_WithStatus              = modntdll.NewProc("RtlDosPathNameToNtPathName_U_WithStatus")
+       procRtlDosPathNameToRelativeNtPathName_U_WithStatus      = modntdll.NewProc("RtlDosPathNameToRelativeNtPathName_U_WithStatus")
+       procRtlGetCurrentPeb                                     = modntdll.NewProc("RtlGetCurrentPeb")
        procRtlGetNtVersionNumbers                               = modntdll.NewProc("RtlGetNtVersionNumbers")
        procRtlGetVersion                                        = modntdll.NewProc("RtlGetVersion")
+       procRtlInitString                                        = modntdll.NewProc("RtlInitString")
+       procRtlInitUnicodeString                                 = modntdll.NewProc("RtlInitUnicodeString")
+       procRtlNtStatusToDosErrorNoTeb                           = modntdll.NewProc("RtlNtStatusToDosErrorNoTeb")
        procCLSIDFromString                                      = modole32.NewProc("CLSIDFromString")
        procCoCreateGuid                                         = modole32.NewProc("CoCreateGuid")
+       procCoGetObject                                          = modole32.NewProc("CoGetObject")
+       procCoInitializeEx                                       = modole32.NewProc("CoInitializeEx")
        procCoTaskMemFree                                        = modole32.NewProc("CoTaskMemFree")
+       procCoUninitialize                                       = modole32.NewProc("CoUninitialize")
        procStringFromGUID2                                      = modole32.NewProc("StringFromGUID2")
        procEnumProcesses                                        = modpsapi.NewProc("EnumProcesses")
        procSubscribeServiceChangeNotifications                  = modsechost.NewProc("SubscribeServiceChangeNotifications")
@@ -370,6 +395,7 @@ var (
        procGetAddrInfoW                                         = modws2_32.NewProc("GetAddrInfoW")
        procWSACleanup                                           = modws2_32.NewProc("WSACleanup")
        procWSAEnumProtocolsW                                    = modws2_32.NewProc("WSAEnumProtocolsW")
+       procWSAGetOverlappedResult                               = modws2_32.NewProc("WSAGetOverlappedResult")
        procWSAIoctl                                             = modws2_32.NewProc("WSAIoctl")
        procWSARecv                                              = modws2_32.NewProc("WSARecv")
        procWSARecvFrom                                          = modws2_32.NewProc("WSARecvFrom")
@@ -1434,6 +1460,14 @@ func CloseHandle(handle Handle) (err error) {
        return
 }
 
+func ConnectNamedPipe(pipe Handle, overlapped *Overlapped) (err error) {
+       r1, _, e1 := syscall.Syscall(procConnectNamedPipe.Addr(), 2, uintptr(pipe), uintptr(unsafe.Pointer(overlapped)), 0)
+       if r1 == 0 {
+               err = errnoErr(e1)
+       }
+       return
+}
+
 func CreateDirectory(path *uint16, sa *SecurityAttributes) (err error) {
        r1, _, e1 := syscall.Syscall(procCreateDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(sa)), 0)
        if r1 == 0 {
@@ -1445,7 +1479,7 @@ func CreateDirectory(path *uint16, sa *SecurityAttributes) (err error) {
 func CreateEventEx(eventAttrs *SecurityAttributes, name *uint16, flags uint32, desiredAccess uint32) (handle Handle, err error) {
        r0, _, e1 := syscall.Syscall6(procCreateEventExW.Addr(), 4, uintptr(unsafe.Pointer(eventAttrs)), uintptr(unsafe.Pointer(name)), uintptr(flags), uintptr(desiredAccess), 0, 0)
        handle = Handle(r0)
-       if handle == 0 {
+       if handle == 0 || e1 == ERROR_ALREADY_EXISTS {
                err = errnoErr(e1)
        }
        return
@@ -1454,7 +1488,7 @@ func CreateEventEx(eventAttrs *SecurityAttributes, name *uint16, flags uint32, d
 func CreateEvent(eventAttrs *SecurityAttributes, manualReset uint32, initialState uint32, name *uint16) (handle Handle, err error) {
        r0, _, e1 := syscall.Syscall6(procCreateEventW.Addr(), 4, uintptr(unsafe.Pointer(eventAttrs)), uintptr(manualReset), uintptr(initialState), uintptr(unsafe.Pointer(name)), 0, 0)
        handle = Handle(r0)
-       if handle == 0 {
+       if handle == 0 || e1 == ERROR_ALREADY_EXISTS {
                err = errnoErr(e1)
        }
        return
@@ -1463,7 +1497,7 @@ func CreateEvent(eventAttrs *SecurityAttributes, manualReset uint32, initialStat
 func CreateFileMapping(fhandle Handle, sa *SecurityAttributes, prot uint32, maxSizeHigh uint32, maxSizeLow uint32, name *uint16) (handle Handle, err error) {
        r0, _, e1 := syscall.Syscall6(procCreateFileMappingW.Addr(), 6, uintptr(fhandle), uintptr(unsafe.Pointer(sa)), uintptr(prot), uintptr(maxSizeHigh), uintptr(maxSizeLow), uintptr(unsafe.Pointer(name)))
        handle = Handle(r0)
-       if handle == 0 {
+       if handle == 0 || e1 == ERROR_ALREADY_EXISTS {
                err = errnoErr(e1)
        }
        return
@@ -1507,7 +1541,7 @@ func CreateJobObject(jobAttr *SecurityAttributes, name *uint16) (handle Handle,
 func CreateMutexEx(mutexAttrs *SecurityAttributes, name *uint16, flags uint32, desiredAccess uint32) (handle Handle, err error) {
        r0, _, e1 := syscall.Syscall6(procCreateMutexExW.Addr(), 4, uintptr(unsafe.Pointer(mutexAttrs)), uintptr(unsafe.Pointer(name)), uintptr(flags), uintptr(desiredAccess), 0, 0)
        handle = Handle(r0)
-       if handle == 0 {
+       if handle == 0 || e1 == ERROR_ALREADY_EXISTS {
                err = errnoErr(e1)
        }
        return
@@ -1520,7 +1554,16 @@ func CreateMutex(mutexAttrs *SecurityAttributes, initialOwner bool, name *uint16
        }
        r0, _, e1 := syscall.Syscall(procCreateMutexW.Addr(), 3, uintptr(unsafe.Pointer(mutexAttrs)), uintptr(_p0), uintptr(unsafe.Pointer(name)))
        handle = Handle(r0)
-       if handle == 0 {
+       if handle == 0 || e1 == ERROR_ALREADY_EXISTS {
+               err = errnoErr(e1)
+       }
+       return
+}
+
+func CreateNamedPipe(name *uint16, flags uint32, pipeMode uint32, maxInstances uint32, outSize uint32, inSize uint32, defaultTimeout uint32, sa *SecurityAttributes) (handle Handle, err error) {
+       r0, _, e1 := syscall.Syscall9(procCreateNamedPipeW.Addr(), 8, uintptr(unsafe.Pointer(name)), uintptr(flags), uintptr(pipeMode), uintptr(maxInstances), uintptr(outSize), uintptr(inSize), uintptr(defaultTimeout), uintptr(unsafe.Pointer(sa)), 0)
+       handle = Handle(r0)
+       if handle == InvalidHandle {
                err = errnoErr(e1)
        }
        return
@@ -1714,6 +1757,15 @@ func FindNextVolume(findVolume Handle, volumeName *uint16, bufferLength uint32)
        return
 }
 
+func findResource(module Handle, name uintptr, resType uintptr) (resInfo Handle, err error) {
+       r0, _, e1 := syscall.Syscall(procFindResourceW.Addr(), 3, uintptr(module), uintptr(name), uintptr(resType))
+       resInfo = Handle(r0)
+       if resInfo == 0 {
+               err = errnoErr(e1)
+       }
+       return
+}
+
 func FindVolumeClose(findVolume Handle) (err error) {
        r1, _, e1 := syscall.Syscall(procFindVolumeClose.Addr(), 1, uintptr(findVolume), 0, 0)
        if r1 == 0 {
@@ -2008,6 +2060,22 @@ func GetModuleHandleEx(flags uint32, moduleName *uint16, module *Handle) (err er
        return
 }
 
+func GetNamedPipeHandleState(pipe Handle, state *uint32, curInstances *uint32, maxCollectionCount *uint32, collectDataTimeout *uint32, userName *uint16, maxUserNameSize uint32) (err error) {
+       r1, _, e1 := syscall.Syscall9(procGetNamedPipeHandleStateW.Addr(), 7, uintptr(pipe), uintptr(unsafe.Pointer(state)), uintptr(unsafe.Pointer(curInstances)), uintptr(unsafe.Pointer(maxCollectionCount)), uintptr(unsafe.Pointer(collectDataTimeout)), uintptr(unsafe.Pointer(userName)), uintptr(maxUserNameSize), 0, 0)
+       if r1 == 0 {
+               err = errnoErr(e1)
+       }
+       return
+}
+
+func GetNamedPipeInfo(pipe Handle, flags *uint32, outSize *uint32, inSize *uint32, maxInstances *uint32) (err error) {
+       r1, _, e1 := syscall.Syscall6(procGetNamedPipeInfo.Addr(), 5, uintptr(pipe), uintptr(unsafe.Pointer(flags)), uintptr(unsafe.Pointer(outSize)), uintptr(unsafe.Pointer(inSize)), uintptr(unsafe.Pointer(maxInstances)), 0)
+       if r1 == 0 {
+               err = errnoErr(e1)
+       }
+       return
+}
+
 func GetOverlappedResult(handle Handle, overlapped *Overlapped, done *uint32, wait bool) (err error) {
        var _p0 uint32
        if wait {
@@ -2322,6 +2390,24 @@ func _LoadLibrary(libname *uint16) (handle Handle, err error) {
        return
 }
 
+func LoadResource(module Handle, resInfo Handle) (resData Handle, err error) {
+       r0, _, e1 := syscall.Syscall(procLoadResource.Addr(), 2, uintptr(module), uintptr(resInfo), 0)
+       resData = Handle(r0)
+       if resData == 0 {
+               err = errnoErr(e1)
+       }
+       return
+}
+
+func LocalAlloc(flags uint32, length uint32) (ptr uintptr, err error) {
+       r0, _, e1 := syscall.Syscall(procLocalAlloc.Addr(), 2, uintptr(flags), uintptr(length), 0)
+       ptr = uintptr(r0)
+       if ptr == 0 {
+               err = errnoErr(e1)
+       }
+       return
+}
+
 func LocalFree(hmem Handle) (handle Handle, err error) {
        r0, _, e1 := syscall.Syscall(procLocalFree.Addr(), 1, uintptr(hmem), 0, 0)
        handle = Handle(r0)
@@ -2339,6 +2425,15 @@ func LockFileEx(file Handle, flags uint32, reserved uint32, bytesLow uint32, byt
        return
 }
 
+func LockResource(resData Handle) (addr uintptr, err error) {
+       r0, _, e1 := syscall.Syscall(procLockResource.Addr(), 1, uintptr(resData), 0, 0)
+       addr = uintptr(r0)
+       if addr == 0 {
+               err = errnoErr(e1)
+       }
+       return
+}
+
 func MapViewOfFile(handle Handle, access uint32, offsetHigh uint32, offsetLow uint32, length uintptr) (addr uintptr, err error) {
        r0, _, e1 := syscall.Syscall6(procMapViewOfFile.Addr(), 5, uintptr(handle), uintptr(access), uintptr(offsetHigh), uintptr(offsetLow), uintptr(length), 0)
        addr = uintptr(r0)
@@ -2474,6 +2569,14 @@ func QueryDosDevice(deviceName *uint16, targetPath *uint16, max uint32) (n uint3
        return
 }
 
+func QueryFullProcessImageName(proc Handle, flags uint32, exeName *uint16, size *uint32) (err error) {
+       r1, _, e1 := syscall.Syscall6(procQueryFullProcessImageNameW.Addr(), 4, uintptr(proc), uintptr(flags), uintptr(unsafe.Pointer(exeName)), uintptr(unsafe.Pointer(size)), 0, 0)
+       if r1 == 0 {
+               err = errnoErr(e1)
+       }
+       return
+}
+
 func QueryInformationJobObject(job Handle, JobObjectInformationClass int32, JobObjectInformation uintptr, JobObjectInformationLength uint32, retlen *uint32) (err error) {
        r1, _, e1 := syscall.Syscall6(procQueryInformationJobObject.Addr(), 5, uintptr(job), uintptr(JobObjectInformationClass), uintptr(JobObjectInformation), uintptr(JobObjectInformationLength), uintptr(unsafe.Pointer(retlen)), 0)
        if r1 == 0 {
@@ -2692,6 +2795,14 @@ func SetInformationJobObject(job Handle, JobObjectInformationClass uint32, JobOb
        return
 }
 
+func SetNamedPipeHandleState(pipe Handle, state *uint32, maxCollectionCount *uint32, collectDataTimeout *uint32) (err error) {
+       r1, _, e1 := syscall.Syscall6(procSetNamedPipeHandleState.Addr(), 4, uintptr(pipe), uintptr(unsafe.Pointer(state)), uintptr(unsafe.Pointer(maxCollectionCount)), uintptr(unsafe.Pointer(collectDataTimeout)), 0, 0)
+       if r1 == 0 {
+               err = errnoErr(e1)
+       }
+       return
+}
+
 func SetPriorityClass(process Handle, priorityClass uint32) (err error) {
        r1, _, e1 := syscall.Syscall(procSetPriorityClass.Addr(), 2, uintptr(process), uintptr(priorityClass), 0)
        if r1 == 0 {
@@ -2752,6 +2863,15 @@ func SetVolumeMountPoint(volumeMountPoint *uint16, volumeName *uint16) (err erro
        return
 }
 
+func SizeofResource(module Handle, resInfo Handle) (size uint32, err error) {
+       r0, _, e1 := syscall.Syscall(procSizeofResource.Addr(), 2, uintptr(module), uintptr(resInfo), 0)
+       size = uint32(r0)
+       if size == 0 {
+               err = errnoErr(e1)
+       }
+       return
+}
+
 func SleepEx(milliseconds uint32, alertable bool) (ret uint32) {
        var _p0 uint32
        if alertable {
@@ -2810,7 +2930,7 @@ func UnmapViewOfFile(addr uintptr) (err error) {
        return
 }
 
-func updateProcThreadAttribute(attrlist *ProcThreadAttributeList, flags uint32, attr uintptr, value uintptr, size uintptr, prevvalue uintptr, returnedsize *uintptr) (err error) {
+func updateProcThreadAttribute(attrlist *ProcThreadAttributeList, flags uint32, attr uintptr, value unsafe.Pointer, size uintptr, prevvalue unsafe.Pointer, returnedsize *uintptr) (err error) {
        r1, _, e1 := syscall.Syscall9(procUpdateProcThreadAttribute.Addr(), 7, uintptr(unsafe.Pointer(attrlist)), uintptr(flags), uintptr(attr), uintptr(value), uintptr(size), uintptr(prevvalue), uintptr(unsafe.Pointer(returnedsize)), 0, 0)
        if r1 == 0 {
                err = errnoErr(e1)
@@ -2946,19 +3066,97 @@ func NetUserGetInfo(serverName *uint16, userName *uint16, level uint32, buf **by
        return
 }
 
+func NtCreateFile(handle *Handle, access uint32, oa *OBJECT_ATTRIBUTES, iosb *IO_STATUS_BLOCK, allocationSize *int64, attributes uint32, share uint32, disposition uint32, options uint32, eabuffer uintptr, ealength uint32) (ntstatus error) {
+       r0, _, _ := syscall.Syscall12(procNtCreateFile.Addr(), 11, uintptr(unsafe.Pointer(handle)), uintptr(access), uintptr(unsafe.Pointer(oa)), uintptr(unsafe.Pointer(iosb)), uintptr(unsafe.Pointer(allocationSize)), uintptr(attributes), uintptr(share), uintptr(disposition), uintptr(options), uintptr(eabuffer), uintptr(ealength), 0)
+       if r0 != 0 {
+               ntstatus = NTStatus(r0)
+       }
+       return
+}
+
+func NtCreateNamedPipeFile(pipe *Handle, access uint32, oa *OBJECT_ATTRIBUTES, iosb *IO_STATUS_BLOCK, share uint32, disposition uint32, options uint32, typ uint32, readMode uint32, completionMode uint32, maxInstances uint32, inboundQuota uint32, outputQuota uint32, timeout *int64) (ntstatus error) {
+       r0, _, _ := syscall.Syscall15(procNtCreateNamedPipeFile.Addr(), 14, uintptr(unsafe.Pointer(pipe)), uintptr(access), uintptr(unsafe.Pointer(oa)), uintptr(unsafe.Pointer(iosb)), uintptr(share), uintptr(disposition), uintptr(options), uintptr(typ), uintptr(readMode), uintptr(completionMode), uintptr(maxInstances), uintptr(inboundQuota), uintptr(outputQuota), uintptr(unsafe.Pointer(timeout)), 0)
+       if r0 != 0 {
+               ntstatus = NTStatus(r0)
+       }
+       return
+}
+
+func NtQueryInformationProcess(proc Handle, procInfoClass int32, procInfo unsafe.Pointer, procInfoLen uint32, retLen *uint32) (ntstatus error) {
+       r0, _, _ := syscall.Syscall6(procNtQueryInformationProcess.Addr(), 5, uintptr(proc), uintptr(procInfoClass), uintptr(procInfo), uintptr(procInfoLen), uintptr(unsafe.Pointer(retLen)), 0)
+       if r0 != 0 {
+               ntstatus = NTStatus(r0)
+       }
+       return
+}
+
+func NtSetInformationProcess(proc Handle, procInfoClass int32, procInfo unsafe.Pointer, procInfoLen uint32) (ntstatus error) {
+       r0, _, _ := syscall.Syscall6(procNtSetInformationProcess.Addr(), 4, uintptr(proc), uintptr(procInfoClass), uintptr(procInfo), uintptr(procInfoLen), 0, 0)
+       if r0 != 0 {
+               ntstatus = NTStatus(r0)
+       }
+       return
+}
+
+func RtlDefaultNpAcl(acl **ACL) (ntstatus error) {
+       r0, _, _ := syscall.Syscall(procRtlDefaultNpAcl.Addr(), 1, uintptr(unsafe.Pointer(acl)), 0, 0)
+       if r0 != 0 {
+               ntstatus = NTStatus(r0)
+       }
+       return
+}
+
+func RtlDosPathNameToNtPathName(dosName *uint16, ntName *NTUnicodeString, ntFileNamePart *uint16, relativeName *RTL_RELATIVE_NAME) (ntstatus error) {
+       r0, _, _ := syscall.Syscall6(procRtlDosPathNameToNtPathName_U_WithStatus.Addr(), 4, uintptr(unsafe.Pointer(dosName)), uintptr(unsafe.Pointer(ntName)), uintptr(unsafe.Pointer(ntFileNamePart)), uintptr(unsafe.Pointer(relativeName)), 0, 0)
+       if r0 != 0 {
+               ntstatus = NTStatus(r0)
+       }
+       return
+}
+
+func RtlDosPathNameToRelativeNtPathName(dosName *uint16, ntName *NTUnicodeString, ntFileNamePart *uint16, relativeName *RTL_RELATIVE_NAME) (ntstatus error) {
+       r0, _, _ := syscall.Syscall6(procRtlDosPathNameToRelativeNtPathName_U_WithStatus.Addr(), 4, uintptr(unsafe.Pointer(dosName)), uintptr(unsafe.Pointer(ntName)), uintptr(unsafe.Pointer(ntFileNamePart)), uintptr(unsafe.Pointer(relativeName)), 0, 0)
+       if r0 != 0 {
+               ntstatus = NTStatus(r0)
+       }
+       return
+}
+
+func RtlGetCurrentPeb() (peb *PEB) {
+       r0, _, _ := syscall.Syscall(procRtlGetCurrentPeb.Addr(), 0, 0, 0, 0)
+       peb = (*PEB)(unsafe.Pointer(r0))
+       return
+}
+
 func rtlGetNtVersionNumbers(majorVersion *uint32, minorVersion *uint32, buildNumber *uint32) {
        syscall.Syscall(procRtlGetNtVersionNumbers.Addr(), 3, uintptr(unsafe.Pointer(majorVersion)), uintptr(unsafe.Pointer(minorVersion)), uintptr(unsafe.Pointer(buildNumber)))
        return
 }
 
-func rtlGetVersion(info *OsVersionInfoEx) (ret error) {
+func rtlGetVersion(info *OsVersionInfoEx) (ntstatus error) {
        r0, _, _ := syscall.Syscall(procRtlGetVersion.Addr(), 1, uintptr(unsafe.Pointer(info)), 0, 0)
        if r0 != 0 {
-               ret = syscall.Errno(r0)
+               ntstatus = NTStatus(r0)
        }
        return
 }
 
+func RtlInitString(destinationString *NTString, sourceString *byte) {
+       syscall.Syscall(procRtlInitString.Addr(), 2, uintptr(unsafe.Pointer(destinationString)), uintptr(unsafe.Pointer(sourceString)), 0)
+       return
+}
+
+func RtlInitUnicodeString(destinationString *NTUnicodeString, sourceString *uint16) {
+       syscall.Syscall(procRtlInitUnicodeString.Addr(), 2, uintptr(unsafe.Pointer(destinationString)), uintptr(unsafe.Pointer(sourceString)), 0)
+       return
+}
+
+func rtlNtStatusToDosErrorNoTeb(ntstatus NTStatus) (ret syscall.Errno) {
+       r0, _, _ := syscall.Syscall(procRtlNtStatusToDosErrorNoTeb.Addr(), 1, uintptr(ntstatus), 0, 0)
+       ret = syscall.Errno(r0)
+       return
+}
+
 func clsidFromString(lpsz *uint16, pclsid *GUID) (ret error) {
        r0, _, _ := syscall.Syscall(procCLSIDFromString.Addr(), 2, uintptr(unsafe.Pointer(lpsz)), uintptr(unsafe.Pointer(pclsid)), 0)
        if r0 != 0 {
@@ -2975,11 +3173,32 @@ func coCreateGuid(pguid *GUID) (ret error) {
        return
 }
 
+func CoGetObject(name *uint16, bindOpts *BIND_OPTS3, guid *GUID, functionTable **uintptr) (ret error) {
+       r0, _, _ := syscall.Syscall6(procCoGetObject.Addr(), 4, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(bindOpts)), uintptr(unsafe.Pointer(guid)), uintptr(unsafe.Pointer(functionTable)), 0, 0)
+       if r0 != 0 {
+               ret = syscall.Errno(r0)
+       }
+       return
+}
+
+func CoInitializeEx(reserved uintptr, coInit uint32) (ret error) {
+       r0, _, _ := syscall.Syscall(procCoInitializeEx.Addr(), 2, uintptr(reserved), uintptr(coInit), 0)
+       if r0 != 0 {
+               ret = syscall.Errno(r0)
+       }
+       return
+}
+
 func CoTaskMemFree(address unsafe.Pointer) {
        syscall.Syscall(procCoTaskMemFree.Addr(), 1, uintptr(address), 0, 0)
        return
 }
 
+func CoUninitialize() {
+       syscall.Syscall(procCoUninitialize.Addr(), 0, 0, 0, 0)
+       return
+}
+
 func stringFromGUID2(rguid *GUID, lpsz *uint16, cchMax int32) (chars int32) {
        r0, _, _ := syscall.Syscall(procStringFromGUID2.Addr(), 3, uintptr(unsafe.Pointer(rguid)), uintptr(unsafe.Pointer(lpsz)), uintptr(cchMax))
        chars = int32(r0)
@@ -3158,6 +3377,18 @@ func WSAEnumProtocols(protocols *int32, protocolBuffer *WSAProtocolInfo, bufferL
        return
 }
 
+func WSAGetOverlappedResult(h Handle, o *Overlapped, bytes *uint32, wait bool, flags *uint32) (err error) {
+       var _p0 uint32
+       if wait {
+               _p0 = 1
+       }
+       r1, _, e1 := syscall.Syscall6(procWSAGetOverlappedResult.Addr(), 5, uintptr(h), uintptr(unsafe.Pointer(o)), uintptr(unsafe.Pointer(bytes)), uintptr(_p0), uintptr(unsafe.Pointer(flags)), 0)
+       if r1 == 0 {
+               err = errnoErr(e1)
+       }
+       return
+}
+
 func WSAIoctl(s Handle, iocc uint32, inbuf *byte, cbif uint32, outbuf *byte, cbob uint32, cbbr *uint32, overlapped *Overlapped, completionRoutine uintptr) (err error) {
        r1, _, e1 := syscall.Syscall9(procWSAIoctl.Addr(), 9, uintptr(s), uintptr(iocc), uintptr(unsafe.Pointer(inbuf)), uintptr(cbif), uintptr(unsafe.Pointer(outbuf)), uintptr(cbob), uintptr(unsafe.Pointer(cbbr)), uintptr(unsafe.Pointer(overlapped)), uintptr(completionRoutine))
        if r1 == socket_error {
index 8c462983134675fb3a2ce10ef34f8bed2016ae8f..a0111a24a0a559d195ec5cf293846b40f5d35685 100644 (file)
@@ -597,7 +597,7 @@ github.com/mholt/acmez/acme
 # github.com/mholt/archiver/v3 v3.5.0
 ## explicit
 github.com/mholt/archiver/v3
-# github.com/microcosm-cc/bluemonday v1.0.4 => github.com/lunny/bluemonday v1.0.5-0.20201227154428-ca34796141e8
+# github.com/microcosm-cc/bluemonday v1.0.5 => github.com/lunny/bluemonday v1.0.5-0.20201227154428-ca34796141e8
 ## explicit
 github.com/microcosm-cc/bluemonday
 # github.com/miekg/dns v1.1.40
@@ -891,7 +891,7 @@ golang.org/x/crypto/ssh/knownhosts
 # golang.org/x/mod v0.4.1
 golang.org/x/mod/module
 golang.org/x/mod/semver
-# golang.org/x/net v0.0.0-20210226172049-e18ecbb05110
+# golang.org/x/net v0.0.0-20210331212208-0fccb6fa2b5c
 ## explicit
 golang.org/x/net/bpf
 golang.org/x/net/context
@@ -916,7 +916,7 @@ golang.org/x/oauth2/google/internal/externalaccount
 golang.org/x/oauth2/internal
 golang.org/x/oauth2/jws
 golang.org/x/oauth2/jwt
-# golang.org/x/sys v0.0.0-20210228012217-479acdf4ea46
+# golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44
 ## explicit
 golang.org/x/sys/cpu
 golang.org/x/sys/execabs