mirror of
https://github.com/cloudflare/cloudflared.git
synced 2025-07-28 12:09:57 +00:00
TUN-3161: Upgrade golang.org/x/ deps
This commit is contained in:
40
vendor/golang.org/x/sys/windows/svc/mgr/config.go
generated
vendored
40
vendor/golang.org/x/sys/windows/svc/mgr/config.go
generated
vendored
@@ -8,7 +8,6 @@ package mgr
|
||||
|
||||
import (
|
||||
"syscall"
|
||||
"unicode/utf16"
|
||||
"unsafe"
|
||||
|
||||
"golang.org/x/sys/windows"
|
||||
@@ -46,28 +45,21 @@ type Config struct {
|
||||
DelayedAutoStart bool // the service is started after other auto-start services are started plus a short delay
|
||||
}
|
||||
|
||||
func toString(p *uint16) string {
|
||||
if p == nil {
|
||||
return ""
|
||||
}
|
||||
return syscall.UTF16ToString((*[4096]uint16)(unsafe.Pointer(p))[:])
|
||||
}
|
||||
|
||||
func toStringSlice(ps *uint16) []string {
|
||||
if ps == nil {
|
||||
return nil
|
||||
}
|
||||
r := make([]string, 0)
|
||||
for from, i, p := 0, 0, (*[1 << 24]uint16)(unsafe.Pointer(ps)); true; i++ {
|
||||
if p[i] == 0 {
|
||||
// empty string marks the end
|
||||
if i <= from {
|
||||
break
|
||||
}
|
||||
r = append(r, string(utf16.Decode(p[from:i])))
|
||||
from = i + 1
|
||||
p := unsafe.Pointer(ps)
|
||||
|
||||
for {
|
||||
s := windows.UTF16PtrToString((*uint16)(p))
|
||||
if len(s) == 0 {
|
||||
break
|
||||
}
|
||||
|
||||
r = append(r, s)
|
||||
offset := unsafe.Sizeof(uint16(0)) * (uintptr)(len(s)+1)
|
||||
p = unsafe.Pointer(uintptr(p) + offset)
|
||||
}
|
||||
|
||||
return r
|
||||
}
|
||||
|
||||
@@ -110,13 +102,13 @@ func (s *Service) Config() (Config, error) {
|
||||
ServiceType: p.ServiceType,
|
||||
StartType: p.StartType,
|
||||
ErrorControl: p.ErrorControl,
|
||||
BinaryPathName: toString(p.BinaryPathName),
|
||||
LoadOrderGroup: toString(p.LoadOrderGroup),
|
||||
BinaryPathName: windows.UTF16PtrToString(p.BinaryPathName),
|
||||
LoadOrderGroup: windows.UTF16PtrToString(p.LoadOrderGroup),
|
||||
TagId: p.TagId,
|
||||
Dependencies: toStringSlice(p.Dependencies),
|
||||
ServiceStartName: toString(p.ServiceStartName),
|
||||
DisplayName: toString(p.DisplayName),
|
||||
Description: toString(p2.Description),
|
||||
ServiceStartName: windows.UTF16PtrToString(p.ServiceStartName),
|
||||
DisplayName: windows.UTF16PtrToString(p.DisplayName),
|
||||
Description: windows.UTF16PtrToString(p2.Description),
|
||||
DelayedAutoStart: delayedStart,
|
||||
}, nil
|
||||
}
|
||||
|
13
vendor/golang.org/x/sys/windows/svc/mgr/mgr.go
generated
vendored
13
vendor/golang.org/x/sys/windows/svc/mgr/mgr.go
generated
vendored
@@ -17,6 +17,7 @@ import (
|
||||
"unicode/utf16"
|
||||
"unsafe"
|
||||
|
||||
"golang.org/x/sys/internal/unsafeheader"
|
||||
"golang.org/x/sys/windows"
|
||||
)
|
||||
|
||||
@@ -73,7 +74,7 @@ func (m *Mgr) LockStatus() (*LockStatus, error) {
|
||||
status := &LockStatus{
|
||||
IsLocked: lockStatus.IsLocked != 0,
|
||||
Age: time.Duration(lockStatus.LockDuration) * time.Second,
|
||||
Owner: windows.UTF16ToString((*[(1 << 30) - 1]uint16)(unsafe.Pointer(lockStatus.LockOwner))[:]),
|
||||
Owner: windows.UTF16PtrToString(lockStatus.LockOwner),
|
||||
}
|
||||
return status, nil
|
||||
}
|
||||
@@ -201,10 +202,16 @@ func (m *Mgr) ListServices() ([]string, error) {
|
||||
if servicesReturned == 0 {
|
||||
return nil, nil
|
||||
}
|
||||
services := (*[1 << 20]windows.ENUM_SERVICE_STATUS_PROCESS)(unsafe.Pointer(&buf[0]))[:servicesReturned]
|
||||
|
||||
var services []windows.ENUM_SERVICE_STATUS_PROCESS
|
||||
hdr := (*unsafeheader.Slice)(unsafe.Pointer(&services))
|
||||
hdr.Data = unsafe.Pointer(&buf[0])
|
||||
hdr.Len = int(servicesReturned)
|
||||
hdr.Cap = int(servicesReturned)
|
||||
|
||||
var names []string
|
||||
for _, s := range services {
|
||||
name := syscall.UTF16ToString((*[1 << 20]uint16)(unsafe.Pointer(s.ServiceName))[:])
|
||||
name := windows.UTF16PtrToString(s.ServiceName)
|
||||
names = append(names, name)
|
||||
}
|
||||
return names, nil
|
||||
|
12
vendor/golang.org/x/sys/windows/svc/mgr/recovery.go
generated
vendored
12
vendor/golang.org/x/sys/windows/svc/mgr/recovery.go
generated
vendored
@@ -12,6 +12,7 @@ import (
|
||||
"time"
|
||||
"unsafe"
|
||||
|
||||
"golang.org/x/sys/internal/unsafeheader"
|
||||
"golang.org/x/sys/windows"
|
||||
)
|
||||
|
||||
@@ -68,8 +69,13 @@ func (s *Service) RecoveryActions() ([]RecoveryAction, error) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
var actions []windows.SC_ACTION
|
||||
hdr := (*unsafeheader.Slice)(unsafe.Pointer(&actions))
|
||||
hdr.Data = unsafe.Pointer(p.Actions)
|
||||
hdr.Len = int(p.ActionsCount)
|
||||
hdr.Cap = int(p.ActionsCount)
|
||||
|
||||
var recoveryActions []RecoveryAction
|
||||
actions := (*[1024]windows.SC_ACTION)(unsafe.Pointer(p.Actions))[:p.ActionsCount]
|
||||
for _, action := range actions {
|
||||
recoveryActions = append(recoveryActions, RecoveryAction{Type: int(action.Type), Delay: time.Duration(action.Delay) * time.Millisecond})
|
||||
}
|
||||
@@ -112,7 +118,7 @@ func (s *Service) RebootMessage() (string, error) {
|
||||
return "", err
|
||||
}
|
||||
p := (*windows.SERVICE_FAILURE_ACTIONS)(unsafe.Pointer(&b[0]))
|
||||
return toString(p.RebootMsg), nil
|
||||
return windows.UTF16PtrToString(p.RebootMsg), nil
|
||||
}
|
||||
|
||||
// SetRecoveryCommand sets the command line of the process to execute in response to the RunCommand service controller action.
|
||||
@@ -131,5 +137,5 @@ func (s *Service) RecoveryCommand() (string, error) {
|
||||
return "", err
|
||||
}
|
||||
p := (*windows.SERVICE_FAILURE_ACTIONS)(unsafe.Pointer(&b[0]))
|
||||
return toString(p.Command), nil
|
||||
return windows.UTF16PtrToString(p.Command), nil
|
||||
}
|
||||
|
7
vendor/golang.org/x/sys/windows/svc/security.go
generated
vendored
7
vendor/golang.org/x/sys/windows/svc/security.go
generated
vendored
@@ -7,8 +7,6 @@
|
||||
package svc
|
||||
|
||||
import (
|
||||
"unsafe"
|
||||
|
||||
"golang.org/x/sys/windows"
|
||||
)
|
||||
|
||||
@@ -48,9 +46,8 @@ func IsAnInteractiveSession() (bool, error) {
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
p := unsafe.Pointer(&gs.Groups[0])
|
||||
groups := (*[2 << 20]windows.SIDAndAttributes)(p)[:gs.GroupCount]
|
||||
for _, g := range groups {
|
||||
|
||||
for _, g := range gs.AllGroups() {
|
||||
if windows.EqualSid(g.Sid, interSid) {
|
||||
return true, nil
|
||||
}
|
||||
|
11
vendor/golang.org/x/sys/windows/svc/service.go
generated
vendored
11
vendor/golang.org/x/sys/windows/svc/service.go
generated
vendored
@@ -14,6 +14,7 @@ import (
|
||||
"syscall"
|
||||
"unsafe"
|
||||
|
||||
"golang.org/x/sys/internal/unsafeheader"
|
||||
"golang.org/x/sys/windows"
|
||||
)
|
||||
|
||||
@@ -224,10 +225,16 @@ const (
|
||||
func (s *service) run() {
|
||||
s.goWaits.Wait()
|
||||
s.h = windows.Handle(ssHandle)
|
||||
argv := (*[100]*int16)(unsafe.Pointer(sArgv))[:sArgc]
|
||||
|
||||
var argv []*uint16
|
||||
hdr := (*unsafeheader.Slice)(unsafe.Pointer(&argv))
|
||||
hdr.Data = unsafe.Pointer(sArgv)
|
||||
hdr.Len = int(sArgc)
|
||||
hdr.Cap = int(sArgc)
|
||||
|
||||
args := make([]string, len(argv))
|
||||
for i, a := range argv {
|
||||
args[i] = syscall.UTF16ToString((*[1 << 20]uint16)(unsafe.Pointer(a))[:])
|
||||
args[i] = windows.UTF16PtrToString(a)
|
||||
}
|
||||
|
||||
cmdsToHandler := make(chan ChangeRequest)
|
||||
|
Reference in New Issue
Block a user