commit
						a6047a8c93
					
				
							
								
								
									
										2
									
								
								go.mod
								
								
								
								
							
							
						
						
									
										2
									
								
								go.mod
								
								
								
								
							|  | @ -7,7 +7,7 @@ require ( | |||
| 	github.com/Azure/go-autorest/autorest v0.11.24 // indirect | ||||
| 	github.com/Azure/go-autorest/autorest/to v0.4.0 // indirect | ||||
| 	github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d | ||||
| 	github.com/aws/aws-sdk-go v1.42.27 | ||||
| 	github.com/aws/aws-sdk-go v1.43.16 | ||||
| 	github.com/bitly/go-simplejson v0.5.0 // indirect | ||||
| 	github.com/bshuster-repo/logrus-logstash-hook v1.0.0 | ||||
| 	github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd | ||||
|  |  | |||
							
								
								
									
										15
									
								
								go.sum
								
								
								
								
							
							
						
						
									
										15
									
								
								go.sum
								
								
								
								
							|  | @ -24,8 +24,8 @@ github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d/go.mod h1:H | |||
| github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= | ||||
| github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= | ||||
| github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8= | ||||
| github.com/aws/aws-sdk-go v1.42.27 h1:kxsBXQg3ee6LLbqjp5/oUeDgG7TENFrWYDmEVnd7spU= | ||||
| github.com/aws/aws-sdk-go v1.42.27/go.mod h1:OGr6lGMAKGlG9CVrYnWYDKIyb829c6EVBRjxqjmPepc= | ||||
| github.com/aws/aws-sdk-go v1.43.16 h1:Y7wBby44f+tINqJjw5fLH3vA+gFq4uMITIKqditwM14= | ||||
| github.com/aws/aws-sdk-go v1.43.16/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= | ||||
| github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= | ||||
| github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= | ||||
| github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= | ||||
|  | @ -209,8 +209,8 @@ golang.org/x/net v0.0.0-20190522155817-f3200d17e092/go.mod h1:HSz+uSET+XFnRR8LxR | |||
| golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= | ||||
| golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= | ||||
| golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= | ||||
| golang.org/x/net v0.0.0-20211216030914-fe4d6282115f h1:hEYJvxw1lSnWIl8X9ofsYMklzaDs90JI2az5YMd4fPM= | ||||
| golang.org/x/net v0.0.0-20211216030914-fe4d6282115f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= | ||||
| golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd h1:O7DYs+zxREGLKzKoMQrtrEacpb0ZVXA5rIwylE2Xchk= | ||||
| golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= | ||||
| golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45 h1:SVwTIAaPC2U/AvvLNZ2a7OVsmBpC8L5BlwK1whH3hm0= | ||||
| golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= | ||||
| golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= | ||||
|  | @ -223,13 +223,16 @@ golang.org/x/sys v0.0.0-20190801041406-cbf593c0f2f3/go.mod h1:h1NjWce9XRLGQEsW7w | |||
| golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||
| golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||
| golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | ||||
| golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1 h1:SrN+KX8Art/Sf4HNj6Zcz06G7VEz+7w9tdXTPOZ7+l4= | ||||
| golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||
| golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e h1:fLOSk5Q00efkSvAm+4xcoXD+RRmLmmulPn5I3Y9F2EM= | ||||
| golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||
| golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= | ||||
| golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= | ||||
| golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= | ||||
| golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= | ||||
| golang.org/x/text v0.3.6 h1:aRYxNxv6iGQlyVaZmk6ZgYEDa+Jg18DxebPSrd6bg1M= | ||||
| golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= | ||||
| golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk= | ||||
| golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= | ||||
| golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= | ||||
| golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= | ||||
| golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= | ||||
|  |  | |||
|  | @ -170,6 +170,9 @@ type Config struct { | |||
| 	//
 | ||||
| 	// For example S3's X-Amz-Meta prefixed header will be unmarshaled to lower case
 | ||||
| 	// Metadata member's map keys. The value of the header in the map is unaffected.
 | ||||
| 	//
 | ||||
| 	// The AWS SDK for Go v2, uses lower case header maps by default. The v1
 | ||||
| 	// SDK provides this opt-in for this option, for backwards compatibility.
 | ||||
| 	LowerCaseHeaderMaps *bool | ||||
| 
 | ||||
| 	// Set this to `true` to disable the EC2Metadata client from overriding the
 | ||||
|  |  | |||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							|  | @ -4,6 +4,7 @@ import ( | |||
| 	"bytes" | ||||
| 	"fmt" | ||||
| 	"io" | ||||
| 	"io/ioutil" | ||||
| 	"net/http" | ||||
| 	"net/url" | ||||
| 	"reflect" | ||||
|  | @ -525,6 +526,14 @@ func (r *Request) GetBody() io.ReadSeeker { | |||
| // Send will not close the request.Request's body.
 | ||||
| func (r *Request) Send() error { | ||||
| 	defer func() { | ||||
| 		// Ensure a non-nil HTTPResponse parameter is set to ensure handlers
 | ||||
| 		// checking for HTTPResponse values, don't fail.
 | ||||
| 		if r.HTTPResponse == nil { | ||||
| 			r.HTTPResponse = &http.Response{ | ||||
| 				Header: http.Header{}, | ||||
| 				Body:   ioutil.NopCloser(&bytes.Buffer{}), | ||||
| 			} | ||||
| 		} | ||||
| 		// Regardless of success or failure of the request trigger the Complete
 | ||||
| 		// request handlers.
 | ||||
| 		r.Handlers.Complete.Run(r) | ||||
|  |  | |||
|  | @ -15,8 +15,8 @@ import ( | |||
| // and determine if a request API error should be retried.
 | ||||
| //
 | ||||
| // client.DefaultRetryer is the SDK's default implementation of the Retryer. It
 | ||||
| // uses the which uses the Request.IsErrorRetryable and Request.IsErrorThrottle
 | ||||
| // methods to determine if the request is retried.
 | ||||
| // uses the Request.IsErrorRetryable and Request.IsErrorThrottle methods to
 | ||||
| // determine if the request is retried.
 | ||||
| type Retryer interface { | ||||
| 	// RetryRules return the retry delay that should be used by the SDK before
 | ||||
| 	// making another request attempt for the failed request.
 | ||||
|  |  | |||
|  | @ -5,4 +5,4 @@ package aws | |||
| const SDKName = "aws-sdk-go" | ||||
| 
 | ||||
| // SDKVersion is the version of this SDK
 | ||||
| const SDKVersion = "1.42.27" | ||||
| const SDKVersion = "1.43.16" | ||||
|  |  | |||
							
								
								
									
										10
									
								
								vendor/github.com/aws/aws-sdk-go/private/protocol/eventstream/eventstreamapi/transport.go
								
								
									generated
								
								
									vendored
								
								
									Normal file
								
							
							
						
						
									
										10
									
								
								vendor/github.com/aws/aws-sdk-go/private/protocol/eventstream/eventstreamapi/transport.go
								
								
									generated
								
								
									vendored
								
								
									Normal file
								
							|  | @ -0,0 +1,10 @@ | |||
| //go:build go1.18
 | ||||
| // +build go1.18
 | ||||
| 
 | ||||
| package eventstreamapi | ||||
| 
 | ||||
| import "github.com/aws/aws-sdk-go/aws/request" | ||||
| 
 | ||||
| // This is a no-op for Go 1.18 and above.
 | ||||
| func ApplyHTTPTransportFixes(r *request.Request) { | ||||
| } | ||||
							
								
								
									
										19
									
								
								vendor/github.com/aws/aws-sdk-go/private/protocol/eventstream/eventstreamapi/transport_go1.17.go
								
								
									generated
								
								
									vendored
								
								
									Normal file
								
							
							
						
						
									
										19
									
								
								vendor/github.com/aws/aws-sdk-go/private/protocol/eventstream/eventstreamapi/transport_go1.17.go
								
								
									generated
								
								
									vendored
								
								
									Normal file
								
							|  | @ -0,0 +1,19 @@ | |||
| //go:build !go1.18
 | ||||
| // +build !go1.18
 | ||||
| 
 | ||||
| package eventstreamapi | ||||
| 
 | ||||
| import "github.com/aws/aws-sdk-go/aws/request" | ||||
| 
 | ||||
| // ApplyHTTPTransportFixes applies fixes to the HTTP request for proper event
 | ||||
| // stream functionality. Go 1.15 through 1.17 HTTP client could hang forever
 | ||||
| // when an HTTP/2 connection failed with an non-200 status code and err. Using
 | ||||
| // Expect 100-Continue, allows the HTTP client to gracefully handle the non-200
 | ||||
| // status code, and close the connection.
 | ||||
| //
 | ||||
| // This is a no-op for Go 1.18 and above.
 | ||||
| func ApplyHTTPTransportFixes(r *request.Request) { | ||||
| 	r.Handlers.Sign.PushBack(func(r *request.Request) { | ||||
| 		r.HTTPRequest.Header.Set("Expect", "100-Continue") | ||||
| 	}) | ||||
| } | ||||
|  | @ -272,6 +272,9 @@ func convertType(v reflect.Value, tag reflect.StructTag) (str string, err error) | |||
| 
 | ||||
| 	switch value := v.Interface().(type) { | ||||
| 	case string: | ||||
| 		if tag.Get("suppressedJSONValue") == "true" && tag.Get("location") == "header" { | ||||
| 			value = base64.StdEncoding.EncodeToString([]byte(value)) | ||||
| 		} | ||||
| 		str = value | ||||
| 	case []byte: | ||||
| 		str = base64.StdEncoding.EncodeToString(value) | ||||
|  | @ -306,5 +309,6 @@ func convertType(v reflect.Value, tag reflect.StructTag) (str string, err error) | |||
| 		err := fmt.Errorf("unsupported value for param %v (%s)", v.Interface(), v.Type()) | ||||
| 		return "", err | ||||
| 	} | ||||
| 
 | ||||
| 	return str, nil | ||||
| } | ||||
|  |  | |||
|  | @ -204,6 +204,13 @@ func unmarshalHeader(v reflect.Value, header string, tag reflect.StructTag) erro | |||
| 
 | ||||
| 	switch v.Interface().(type) { | ||||
| 	case *string: | ||||
| 		if tag.Get("suppressedJSONValue") == "true" && tag.Get("location") == "header" { | ||||
| 			b, err := base64.StdEncoding.DecodeString(header) | ||||
| 			if err != nil { | ||||
| 				return fmt.Errorf("failed to decode JSONValue, %v", err) | ||||
| 			} | ||||
| 			header = string(b) | ||||
| 		} | ||||
| 		v.Set(reflect.ValueOf(&header)) | ||||
| 	case []byte: | ||||
| 		b, err := base64.StdEncoding.DecodeString(header) | ||||
|  |  | |||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							|  | @ -507,8 +507,9 @@ func (c *STS) AssumeRoleWithWebIdentityRequest(input *AssumeRoleWithWebIdentityI | |||
| //
 | ||||
| // Returns a set of temporary security credentials for users who have been authenticated
 | ||||
| // in a mobile or web application with a web identity provider. Example providers
 | ||||
| // include Amazon Cognito, Login with Amazon, Facebook, Google, or any OpenID
 | ||||
| // Connect-compatible identity provider.
 | ||||
| // include the OAuth 2.0 providers Login with Amazon and Facebook, or any OpenID
 | ||||
| // Connect-compatible identity provider such as Google or Amazon Cognito federated
 | ||||
| // identities (https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-identity.html).
 | ||||
| //
 | ||||
| // For mobile applications, we recommend that you use Amazon Cognito. You can
 | ||||
| // use Amazon Cognito with the Amazon Web Services SDK for iOS Developer Guide
 | ||||
|  | @ -1537,7 +1538,7 @@ type AssumeRoleInput struct { | |||
| 	// the new session inherits any transitive session tags from the calling session.
 | ||||
| 	// If you pass a session tag with the same key as an inherited tag, the operation
 | ||||
| 	// fails. To view the inherited tags for a session, see the CloudTrail logs.
 | ||||
| 	// For more information, see Viewing Session Tags in CloudTrail (https://docs.aws.amazon.com/IAM/latest/UserGuide/session-tags.html#id_session-tags_ctlogs)
 | ||||
| 	// For more information, see Viewing Session Tags in CloudTrail (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html#id_session-tags_ctlogs)
 | ||||
| 	// in the IAM User Guide.
 | ||||
| 	Tags []*Tag `type:"list"` | ||||
| 
 | ||||
|  | @ -2220,11 +2221,12 @@ type AssumeRoleWithWebIdentityInput struct { | |||
| 	// in the IAM User Guide.
 | ||||
| 	PolicyArns []*PolicyDescriptorType `type:"list"` | ||||
| 
 | ||||
| 	// The fully qualified host component of the domain name of the identity provider.
 | ||||
| 	// The fully qualified host component of the domain name of the OAuth 2.0 identity
 | ||||
| 	// provider. Do not specify this value for an OpenID Connect identity provider.
 | ||||
| 	//
 | ||||
| 	// Specify this value only for OAuth 2.0 access tokens. Currently www.amazon.com
 | ||||
| 	// and graph.facebook.com are the only supported identity providers for OAuth
 | ||||
| 	// 2.0 access tokens. Do not include URL schemes and port numbers.
 | ||||
| 	// Currently www.amazon.com and graph.facebook.com are the only supported identity
 | ||||
| 	// providers for OAuth 2.0 access tokens. Do not include URL schemes and port
 | ||||
| 	// numbers.
 | ||||
| 	//
 | ||||
| 	// Do not specify this value for OpenID Connect ID tokens.
 | ||||
| 	ProviderId *string `min:"4" type:"string"` | ||||
|  |  | |||
|  | @ -149,7 +149,7 @@ To add a constant, add the header that includes it to the appropriate variable. | |||
| Then, edit the regex (if necessary) to match the desired constant. Avoid making | ||||
| the regex too broad to avoid matching unintended constants. | ||||
| 
 | ||||
| ### mkmerge.go | ||||
| ### internal/mkmerge | ||||
| 
 | ||||
| This program is used to extract duplicate const, func, and type declarations | ||||
| from the generated architecture-specific files listed below, and merge these | ||||
|  |  | |||
|  | @ -0,0 +1,149 @@ | |||
| // 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 linux
 | ||||
| // +build linux
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
| import ( | ||||
| 	"bytes" | ||||
| 	"unsafe" | ||||
| ) | ||||
| 
 | ||||
| // Helpers for dealing with ifreq since it contains a union and thus requires a
 | ||||
| // lot of unsafe.Pointer casts to use properly.
 | ||||
| 
 | ||||
| // An Ifreq is a type-safe wrapper around the raw ifreq struct. An Ifreq
 | ||||
| // contains an interface name and a union of arbitrary data which can be
 | ||||
| // accessed using the Ifreq's methods. To create an Ifreq, use the NewIfreq
 | ||||
| // function.
 | ||||
| //
 | ||||
| // Use the Name method to access the stored interface name. The union data
 | ||||
| // fields can be get and set using the following methods:
 | ||||
| //   - Uint16/SetUint16: flags
 | ||||
| //   - Uint32/SetUint32: ifindex, metric, mtu
 | ||||
| type Ifreq struct{ raw ifreq } | ||||
| 
 | ||||
| // NewIfreq creates an Ifreq with the input network interface name after
 | ||||
| // validating the name does not exceed IFNAMSIZ-1 (trailing NULL required)
 | ||||
| // bytes.
 | ||||
| func NewIfreq(name string) (*Ifreq, error) { | ||||
| 	// Leave room for terminating NULL byte.
 | ||||
| 	if len(name) >= IFNAMSIZ { | ||||
| 		return nil, EINVAL | ||||
| 	} | ||||
| 
 | ||||
| 	var ifr ifreq | ||||
| 	copy(ifr.Ifrn[:], name) | ||||
| 
 | ||||
| 	return &Ifreq{raw: ifr}, nil | ||||
| } | ||||
| 
 | ||||
| // TODO(mdlayher): get/set methods for hardware address sockaddr, char array, etc.
 | ||||
| 
 | ||||
| // Name returns the interface name associated with the Ifreq.
 | ||||
| func (ifr *Ifreq) Name() string { | ||||
| 	// BytePtrToString requires a NULL terminator or the program may crash. If
 | ||||
| 	// one is not present, just return the empty string.
 | ||||
| 	if !bytes.Contains(ifr.raw.Ifrn[:], []byte{0x00}) { | ||||
| 		return "" | ||||
| 	} | ||||
| 
 | ||||
| 	return BytePtrToString(&ifr.raw.Ifrn[0]) | ||||
| } | ||||
| 
 | ||||
| // According to netdevice(7), only AF_INET addresses are returned for numerous
 | ||||
| // sockaddr ioctls. For convenience, we expose these as Inet4Addr since the Port
 | ||||
| // field and other data is always empty.
 | ||||
| 
 | ||||
| // Inet4Addr returns the Ifreq union data from an embedded sockaddr as a C
 | ||||
| // in_addr/Go []byte (4-byte IPv4 address) value. If the sockaddr family is not
 | ||||
| // AF_INET, an error is returned.
 | ||||
| func (ifr *Ifreq) Inet4Addr() ([]byte, error) { | ||||
| 	raw := *(*RawSockaddrInet4)(unsafe.Pointer(&ifr.raw.Ifru[:SizeofSockaddrInet4][0])) | ||||
| 	if raw.Family != AF_INET { | ||||
| 		// Cannot safely interpret raw.Addr bytes as an IPv4 address.
 | ||||
| 		return nil, EINVAL | ||||
| 	} | ||||
| 
 | ||||
| 	return raw.Addr[:], nil | ||||
| } | ||||
| 
 | ||||
| // SetInet4Addr sets a C in_addr/Go []byte (4-byte IPv4 address) value in an
 | ||||
| // embedded sockaddr within the Ifreq's union data. v must be 4 bytes in length
 | ||||
| // or an error will be returned.
 | ||||
| func (ifr *Ifreq) SetInet4Addr(v []byte) error { | ||||
| 	if len(v) != 4 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 
 | ||||
| 	var addr [4]byte | ||||
| 	copy(addr[:], v) | ||||
| 
 | ||||
| 	ifr.clear() | ||||
| 	*(*RawSockaddrInet4)( | ||||
| 		unsafe.Pointer(&ifr.raw.Ifru[:SizeofSockaddrInet4][0]), | ||||
| 	) = RawSockaddrInet4{ | ||||
| 		// Always set IP family as ioctls would require it anyway.
 | ||||
| 		Family: AF_INET, | ||||
| 		Addr:   addr, | ||||
| 	} | ||||
| 
 | ||||
| 	return nil | ||||
| } | ||||
| 
 | ||||
| // Uint16 returns the Ifreq union data as a C short/Go uint16 value.
 | ||||
| func (ifr *Ifreq) Uint16() uint16 { | ||||
| 	return *(*uint16)(unsafe.Pointer(&ifr.raw.Ifru[:2][0])) | ||||
| } | ||||
| 
 | ||||
| // SetUint16 sets a C short/Go uint16 value as the Ifreq's union data.
 | ||||
| func (ifr *Ifreq) SetUint16(v uint16) { | ||||
| 	ifr.clear() | ||||
| 	*(*uint16)(unsafe.Pointer(&ifr.raw.Ifru[:2][0])) = v | ||||
| } | ||||
| 
 | ||||
| // Uint32 returns the Ifreq union data as a C int/Go uint32 value.
 | ||||
| func (ifr *Ifreq) Uint32() uint32 { | ||||
| 	return *(*uint32)(unsafe.Pointer(&ifr.raw.Ifru[:4][0])) | ||||
| } | ||||
| 
 | ||||
| // SetUint32 sets a C int/Go uint32 value as the Ifreq's union data.
 | ||||
| func (ifr *Ifreq) SetUint32(v uint32) { | ||||
| 	ifr.clear() | ||||
| 	*(*uint32)(unsafe.Pointer(&ifr.raw.Ifru[:4][0])) = v | ||||
| } | ||||
| 
 | ||||
| // clear zeroes the ifreq's union field to prevent trailing garbage data from
 | ||||
| // being sent to the kernel if an ifreq is reused.
 | ||||
| func (ifr *Ifreq) clear() { | ||||
| 	for i := range ifr.raw.Ifru { | ||||
| 		ifr.raw.Ifru[i] = 0 | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| // TODO(mdlayher): export as IfreqData? For now we can provide helpers such as
 | ||||
| // IoctlGetEthtoolDrvinfo which use these APIs under the hood.
 | ||||
| 
 | ||||
| // An ifreqData is an Ifreq which carries pointer data. To produce an ifreqData,
 | ||||
| // use the Ifreq.withData method.
 | ||||
| type ifreqData struct { | ||||
| 	name [IFNAMSIZ]byte | ||||
| 	// A type separate from ifreq is required in order to comply with the
 | ||||
| 	// unsafe.Pointer rules since the "pointer-ness" of data would not be
 | ||||
| 	// preserved if it were cast into the byte array of a raw ifreq.
 | ||||
| 	data unsafe.Pointer | ||||
| 	// Pad to the same size as ifreq.
 | ||||
| 	_ [len(ifreq{}.Ifru) - SizeofPtr]byte | ||||
| } | ||||
| 
 | ||||
| // withData produces an ifreqData with the pointer p set for ioctls which require
 | ||||
| // arbitrary pointer data.
 | ||||
| func (ifr Ifreq) withData(p unsafe.Pointer) ifreqData { | ||||
| 	return ifreqData{ | ||||
| 		name: ifr.raw.Ifrn, | ||||
| 		data: p, | ||||
| 	} | ||||
| } | ||||
|  | @ -5,7 +5,6 @@ | |||
| package unix | ||||
| 
 | ||||
| import ( | ||||
| 	"runtime" | ||||
| 	"unsafe" | ||||
| ) | ||||
| 
 | ||||
|  | @ -22,56 +21,42 @@ func IoctlRetInt(fd int, req uint) (int, error) { | |||
| 
 | ||||
| func IoctlGetUint32(fd int, req uint) (uint32, error) { | ||||
| 	var value uint32 | ||||
| 	err := ioctl(fd, req, uintptr(unsafe.Pointer(&value))) | ||||
| 	err := ioctlPtr(fd, req, unsafe.Pointer(&value)) | ||||
| 	return value, err | ||||
| } | ||||
| 
 | ||||
| func IoctlGetRTCTime(fd int) (*RTCTime, error) { | ||||
| 	var value RTCTime | ||||
| 	err := ioctl(fd, RTC_RD_TIME, uintptr(unsafe.Pointer(&value))) | ||||
| 	err := ioctlPtr(fd, RTC_RD_TIME, unsafe.Pointer(&value)) | ||||
| 	return &value, err | ||||
| } | ||||
| 
 | ||||
| func IoctlSetRTCTime(fd int, value *RTCTime) error { | ||||
| 	err := ioctl(fd, RTC_SET_TIME, uintptr(unsafe.Pointer(value))) | ||||
| 	runtime.KeepAlive(value) | ||||
| 	return err | ||||
| 	return ioctlPtr(fd, RTC_SET_TIME, unsafe.Pointer(value)) | ||||
| } | ||||
| 
 | ||||
| func IoctlGetRTCWkAlrm(fd int) (*RTCWkAlrm, error) { | ||||
| 	var value RTCWkAlrm | ||||
| 	err := ioctl(fd, RTC_WKALM_RD, uintptr(unsafe.Pointer(&value))) | ||||
| 	err := ioctlPtr(fd, RTC_WKALM_RD, unsafe.Pointer(&value)) | ||||
| 	return &value, err | ||||
| } | ||||
| 
 | ||||
| func IoctlSetRTCWkAlrm(fd int, value *RTCWkAlrm) error { | ||||
| 	err := ioctl(fd, RTC_WKALM_SET, uintptr(unsafe.Pointer(value))) | ||||
| 	runtime.KeepAlive(value) | ||||
| 	return err | ||||
| } | ||||
| 
 | ||||
| type ifreqEthtool struct { | ||||
| 	name [IFNAMSIZ]byte | ||||
| 	data unsafe.Pointer | ||||
| 	return ioctlPtr(fd, RTC_WKALM_SET, unsafe.Pointer(value)) | ||||
| } | ||||
| 
 | ||||
| // IoctlGetEthtoolDrvinfo fetches ethtool driver information for the network
 | ||||
| // device specified by ifname.
 | ||||
| func IoctlGetEthtoolDrvinfo(fd int, ifname string) (*EthtoolDrvinfo, error) { | ||||
| 	// Leave room for terminating NULL byte.
 | ||||
| 	if len(ifname) >= IFNAMSIZ { | ||||
| 		return nil, EINVAL | ||||
| 	ifr, err := NewIfreq(ifname) | ||||
| 	if err != nil { | ||||
| 		return nil, err | ||||
| 	} | ||||
| 
 | ||||
| 	value := EthtoolDrvinfo{ | ||||
| 		Cmd: ETHTOOL_GDRVINFO, | ||||
| 	} | ||||
| 	ifreq := ifreqEthtool{ | ||||
| 		data: unsafe.Pointer(&value), | ||||
| 	} | ||||
| 	copy(ifreq.name[:], ifname) | ||||
| 	err := ioctl(fd, SIOCETHTOOL, uintptr(unsafe.Pointer(&ifreq))) | ||||
| 	runtime.KeepAlive(ifreq) | ||||
| 	value := EthtoolDrvinfo{Cmd: ETHTOOL_GDRVINFO} | ||||
| 	ifrd := ifr.withData(unsafe.Pointer(&value)) | ||||
| 
 | ||||
| 	err = ioctlIfreqData(fd, SIOCETHTOOL, &ifrd) | ||||
| 	return &value, err | ||||
| } | ||||
| 
 | ||||
|  | @ -80,7 +65,7 @@ func IoctlGetEthtoolDrvinfo(fd int, ifname string) (*EthtoolDrvinfo, error) { | |||
| // https://www.kernel.org/doc/html/latest/watchdog/watchdog-api.html.
 | ||||
| func IoctlGetWatchdogInfo(fd int) (*WatchdogInfo, error) { | ||||
| 	var value WatchdogInfo | ||||
| 	err := ioctl(fd, WDIOC_GETSUPPORT, uintptr(unsafe.Pointer(&value))) | ||||
| 	err := ioctlPtr(fd, WDIOC_GETSUPPORT, unsafe.Pointer(&value)) | ||||
| 	return &value, err | ||||
| } | ||||
| 
 | ||||
|  | @ -88,6 +73,7 @@ func IoctlGetWatchdogInfo(fd int) (*WatchdogInfo, error) { | |||
| // more information, see:
 | ||||
| // https://www.kernel.org/doc/html/latest/watchdog/watchdog-api.html.
 | ||||
| func IoctlWatchdogKeepalive(fd int) error { | ||||
| 	// arg is ignored and not a pointer, so ioctl is fine instead of ioctlPtr.
 | ||||
| 	return ioctl(fd, WDIOC_KEEPALIVE, 0) | ||||
| } | ||||
| 
 | ||||
|  | @ -95,9 +81,7 @@ func IoctlWatchdogKeepalive(fd int) error { | |||
| // range of data conveyed in value to the file associated with the file
 | ||||
| // descriptor destFd. See the ioctl_ficlonerange(2) man page for details.
 | ||||
| func IoctlFileCloneRange(destFd int, value *FileCloneRange) error { | ||||
| 	err := ioctl(destFd, FICLONERANGE, uintptr(unsafe.Pointer(value))) | ||||
| 	runtime.KeepAlive(value) | ||||
| 	return err | ||||
| 	return ioctlPtr(destFd, FICLONERANGE, unsafe.Pointer(value)) | ||||
| } | ||||
| 
 | ||||
| // IoctlFileClone performs an FICLONE ioctl operation to clone the entire file
 | ||||
|  | @ -148,7 +132,7 @@ func IoctlFileDedupeRange(srcFd int, value *FileDedupeRange) error { | |||
| 		rawinfo.Reserved = value.Info[i].Reserved | ||||
| 	} | ||||
| 
 | ||||
| 	err := ioctl(srcFd, FIDEDUPERANGE, uintptr(unsafe.Pointer(&buf[0]))) | ||||
| 	err := ioctlPtr(srcFd, FIDEDUPERANGE, unsafe.Pointer(&buf[0])) | ||||
| 
 | ||||
| 	// Output
 | ||||
| 	for i := range value.Info { | ||||
|  | @ -166,31 +150,47 @@ func IoctlFileDedupeRange(srcFd int, value *FileDedupeRange) error { | |||
| } | ||||
| 
 | ||||
| func IoctlHIDGetDesc(fd int, value *HIDRawReportDescriptor) error { | ||||
| 	err := ioctl(fd, HIDIOCGRDESC, uintptr(unsafe.Pointer(value))) | ||||
| 	runtime.KeepAlive(value) | ||||
| 	return err | ||||
| 	return ioctlPtr(fd, HIDIOCGRDESC, unsafe.Pointer(value)) | ||||
| } | ||||
| 
 | ||||
| func IoctlHIDGetRawInfo(fd int) (*HIDRawDevInfo, error) { | ||||
| 	var value HIDRawDevInfo | ||||
| 	err := ioctl(fd, HIDIOCGRAWINFO, uintptr(unsafe.Pointer(&value))) | ||||
| 	err := ioctlPtr(fd, HIDIOCGRAWINFO, unsafe.Pointer(&value)) | ||||
| 	return &value, err | ||||
| } | ||||
| 
 | ||||
| func IoctlHIDGetRawName(fd int) (string, error) { | ||||
| 	var value [_HIDIOCGRAWNAME_LEN]byte | ||||
| 	err := ioctl(fd, _HIDIOCGRAWNAME, uintptr(unsafe.Pointer(&value[0]))) | ||||
| 	err := ioctlPtr(fd, _HIDIOCGRAWNAME, unsafe.Pointer(&value[0])) | ||||
| 	return ByteSliceToString(value[:]), err | ||||
| } | ||||
| 
 | ||||
| func IoctlHIDGetRawPhys(fd int) (string, error) { | ||||
| 	var value [_HIDIOCGRAWPHYS_LEN]byte | ||||
| 	err := ioctl(fd, _HIDIOCGRAWPHYS, uintptr(unsafe.Pointer(&value[0]))) | ||||
| 	err := ioctlPtr(fd, _HIDIOCGRAWPHYS, unsafe.Pointer(&value[0])) | ||||
| 	return ByteSliceToString(value[:]), err | ||||
| } | ||||
| 
 | ||||
| func IoctlHIDGetRawUniq(fd int) (string, error) { | ||||
| 	var value [_HIDIOCGRAWUNIQ_LEN]byte | ||||
| 	err := ioctl(fd, _HIDIOCGRAWUNIQ, uintptr(unsafe.Pointer(&value[0]))) | ||||
| 	err := ioctlPtr(fd, _HIDIOCGRAWUNIQ, unsafe.Pointer(&value[0])) | ||||
| 	return ByteSliceToString(value[:]), err | ||||
| } | ||||
| 
 | ||||
| // IoctlIfreq performs an ioctl using an Ifreq structure for input and/or
 | ||||
| // output. See the netdevice(7) man page for details.
 | ||||
| func IoctlIfreq(fd int, req uint, value *Ifreq) error { | ||||
| 	// It is possible we will add more fields to *Ifreq itself later to prevent
 | ||||
| 	// misuse, so pass the raw *ifreq directly.
 | ||||
| 	return ioctlPtr(fd, req, unsafe.Pointer(&value.raw)) | ||||
| } | ||||
| 
 | ||||
| // TODO(mdlayher): export if and when IfreqData is exported.
 | ||||
| 
 | ||||
| // ioctlIfreqData performs an ioctl using an ifreqData structure for input
 | ||||
| // and/or output. See the netdevice(7) man page for details.
 | ||||
| func ioctlIfreqData(fd int, req uint, value *ifreqData) error { | ||||
| 	// The memory layout of IfreqData (type-safe) and ifreq (not type-safe) are
 | ||||
| 	// identical so pass *IfreqData directly.
 | ||||
| 	return ioctlPtr(fd, req, unsafe.Pointer(value)) | ||||
| } | ||||
|  |  | |||
|  | @ -50,7 +50,7 @@ if [[ "$GOOS" = "linux" ]]; then | |||
| 	# Use the Docker-based build system | ||||
| 	# Files generated through docker (use $cmd so you can Ctl-C the build or run) | ||||
| 	$cmd docker build --tag generate:$GOOS $GOOS | ||||
| 	$cmd docker run --interactive --tty --volume $(cd -- "$(dirname -- "$0")" && /bin/pwd):/build generate:$GOOS | ||||
| 	$cmd docker run --interactive --tty --volume $(cd -- "$(dirname -- "$0")/.." && /bin/pwd):/build generate:$GOOS | ||||
| 	exit | ||||
| fi | ||||
| 
 | ||||
|  |  | |||
|  | @ -54,7 +54,7 @@ includes_AIX=' | |||
| 
 | ||||
| includes_Darwin=' | ||||
| #define _DARWIN_C_SOURCE | ||||
| #define KERNEL | ||||
| #define KERNEL 1 | ||||
| #define _DARWIN_USE_64_BIT_INODE | ||||
| #define __APPLE_USE_RFC_3542 | ||||
| #include <stdint.h> | ||||
|  | @ -75,6 +75,7 @@ includes_Darwin=' | |||
| #include <sys/utsname.h> | ||||
| #include <sys/wait.h> | ||||
| #include <sys/xattr.h> | ||||
| #include <sys/vsock.h> | ||||
| #include <net/bpf.h> | ||||
| #include <net/if.h> | ||||
| #include <net/if_types.h> | ||||
|  | @ -82,6 +83,9 @@ includes_Darwin=' | |||
| #include <netinet/in.h> | ||||
| #include <netinet/ip.h> | ||||
| #include <termios.h> | ||||
| 
 | ||||
| // for backwards compatibility because moved TIOCREMOTE to Kernel.framework after MacOSX12.0.sdk. | ||||
| #define TIOCREMOTE 0x80047469 | ||||
| ' | ||||
| 
 | ||||
| includes_DragonFly=' | ||||
|  | @ -217,8 +221,6 @@ 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> | ||||
| #include <linux/if_alg.h> | ||||
|  | @ -231,11 +233,13 @@ struct ltchars { | |||
| #include <linux/input.h> | ||||
| #include <linux/kexec.h> | ||||
| #include <linux/keyctl.h> | ||||
| #include <linux/landlock.h> | ||||
| #include <linux/loop.h> | ||||
| #include <linux/lwtunnel.h> | ||||
| #include <linux/magic.h> | ||||
| #include <linux/memfd.h> | ||||
| #include <linux/module.h> | ||||
| #include <linux/mount.h> | ||||
| #include <linux/netfilter/nfnetlink.h> | ||||
| #include <linux/netlink.h> | ||||
| #include <linux/net_namespace.h> | ||||
|  | @ -257,6 +261,7 @@ struct ltchars { | |||
| #include <linux/vm_sockets.h> | ||||
| #include <linux/wait.h> | ||||
| #include <linux/watchdog.h> | ||||
| #include <linux/wireguard.h> | ||||
| 
 | ||||
| #include <mtd/ubi-user.h> | ||||
| #include <mtd/mtd-user.h> | ||||
|  | @ -467,7 +472,6 @@ ccflags="$@" | |||
| 		$2 !~ /^EQUIV_/ && | ||||
| 		$2 !~ /^EXPR_/ && | ||||
| 		$2 !~ /^EVIOC/ && | ||||
| 		$2 !~ /^EV_/ && | ||||
| 		$2 ~ /^E[A-Z0-9_]+$/ || | ||||
| 		$2 ~ /^B[0-9_]+$/ || | ||||
| 		$2 ~ /^(OLD|NEW)DEV$/ || | ||||
|  | @ -499,10 +503,11 @@ ccflags="$@" | |||
| 		$2 ~ /^O?XTABS$/ || | ||||
| 		$2 ~ /^TC[IO](ON|OFF)$/ || | ||||
| 		$2 ~ /^IN_/ || | ||||
| 		$2 ~ /^LANDLOCK_/ || | ||||
| 		$2 ~ /^LOCK_(SH|EX|NB|UN)$/ || | ||||
| 		$2 ~ /^LO_(KEY|NAME)_SIZE$/ || | ||||
| 		$2 ~ /^LOOP_(CLR|CTL|GET|SET)_/ || | ||||
| 		$2 ~ /^(AF|SOCK|SO|SOL|IPPROTO|IP|IPV6|TCP|MCAST|EVFILT|NOTE|SHUT|PROT|MAP|MFD|T?PACKET|MSG|SCM|MCL|DT|MADV|PR|LOCAL)_/ || | ||||
| 		$2 ~ /^(AF|SOCK|SO|SOL|IPPROTO|IP|IPV6|TCP|MCAST|EVFILT|NOTE|SHUT|PROT|MAP|MFD|T?PACKET|MSG|SCM|MCL|DT|MADV|PR|LOCAL|TCPOPT)_/ || | ||||
| 		$2 ~ /^NFC_(GENL|PROTO|COMM|RF|SE|DIRECTION|LLCP|SOCKPROTO)_/ || | ||||
| 		$2 ~ /^NFC_.*_(MAX)?SIZE$/ || | ||||
| 		$2 ~ /^RAW_PAYLOAD_/ || | ||||
|  | @ -517,7 +522,7 @@ ccflags="$@" | |||
| 		$2 ~ /^HW_MACHINE$/ || | ||||
| 		$2 ~ /^SYSCTL_VERS/ || | ||||
| 		$2 !~ "MNT_BITS" && | ||||
| 		$2 ~ /^(MS|MNT|UMOUNT)_/ || | ||||
| 		$2 ~ /^(MS|MNT|MOUNT|UMOUNT)_/ || | ||||
| 		$2 ~ /^NS_GET_/ || | ||||
| 		$2 ~ /^TUN(SET|GET|ATTACH|DETACH)/ || | ||||
| 		$2 ~ /^(O|F|[ES]?FD|NAME|S|PTRACE|PT|TFD)_/ || | ||||
|  | @ -563,6 +568,7 @@ ccflags="$@" | |||
| 		$2 ~ /^KEYCTL_/ || | ||||
| 		$2 ~ /^PERF_/ || | ||||
| 		$2 ~ /^SECCOMP_MODE_/ || | ||||
| 		$2 ~ /^SEEK_/ || | ||||
| 		$2 ~ /^SPLICE_/ || | ||||
| 		$2 ~ /^SYNC_FILE_RANGE_/ || | ||||
| 		$2 !~ /^AUDIT_RECORD_MAGIC/ && | ||||
|  | @ -601,6 +607,7 @@ ccflags="$@" | |||
| 		$2 ~ /^MTD/ || | ||||
| 		$2 ~ /^OTP/ || | ||||
| 		$2 ~ /^MEM/ || | ||||
| 		$2 ~ /^WG/ || | ||||
| 		$2 ~ /^BLK[A-Z]*(GET$|SET$|BUF$|PART$|SIZE)/ {printf("\t%s = C.%s\n", $2, $2)} | ||||
| 		$2 ~ /^__WCOREFLAG$/ {next} | ||||
| 		$2 ~ /^__W[A-Z0-9]+$/ {printf("\t%s = C.%s\n", substr($2,3), $2)} | ||||
|  |  | |||
|  | @ -34,3 +34,52 @@ func ParseUnixCredentials(m *SocketControlMessage) (*Ucred, error) { | |||
| 	ucred := *(*Ucred)(unsafe.Pointer(&m.Data[0])) | ||||
| 	return &ucred, nil | ||||
| } | ||||
| 
 | ||||
| // PktInfo4 encodes Inet4Pktinfo into a socket control message of type IP_PKTINFO.
 | ||||
| func PktInfo4(info *Inet4Pktinfo) []byte { | ||||
| 	b := make([]byte, CmsgSpace(SizeofInet4Pktinfo)) | ||||
| 	h := (*Cmsghdr)(unsafe.Pointer(&b[0])) | ||||
| 	h.Level = SOL_IP | ||||
| 	h.Type = IP_PKTINFO | ||||
| 	h.SetLen(CmsgLen(SizeofInet4Pktinfo)) | ||||
| 	*(*Inet4Pktinfo)(h.data(0)) = *info | ||||
| 	return b | ||||
| } | ||||
| 
 | ||||
| // PktInfo6 encodes Inet6Pktinfo into a socket control message of type IPV6_PKTINFO.
 | ||||
| func PktInfo6(info *Inet6Pktinfo) []byte { | ||||
| 	b := make([]byte, CmsgSpace(SizeofInet6Pktinfo)) | ||||
| 	h := (*Cmsghdr)(unsafe.Pointer(&b[0])) | ||||
| 	h.Level = SOL_IPV6 | ||||
| 	h.Type = IPV6_PKTINFO | ||||
| 	h.SetLen(CmsgLen(SizeofInet6Pktinfo)) | ||||
| 	*(*Inet6Pktinfo)(h.data(0)) = *info | ||||
| 	return b | ||||
| } | ||||
| 
 | ||||
| // ParseOrigDstAddr decodes a socket control message containing the original
 | ||||
| // destination address. To receive such a message the IP_RECVORIGDSTADDR or
 | ||||
| // IPV6_RECVORIGDSTADDR option must be enabled on the socket.
 | ||||
| func ParseOrigDstAddr(m *SocketControlMessage) (Sockaddr, error) { | ||||
| 	switch { | ||||
| 	case m.Header.Level == SOL_IP && m.Header.Type == IP_ORIGDSTADDR: | ||||
| 		pp := (*RawSockaddrInet4)(unsafe.Pointer(&m.Data[0])) | ||||
| 		sa := new(SockaddrInet4) | ||||
| 		p := (*[2]byte)(unsafe.Pointer(&pp.Port)) | ||||
| 		sa.Port = int(p[0])<<8 + int(p[1]) | ||||
| 		sa.Addr = pp.Addr | ||||
| 		return sa, nil | ||||
| 
 | ||||
| 	case m.Header.Level == SOL_IPV6 && m.Header.Type == IPV6_ORIGDSTADDR: | ||||
| 		pp := (*RawSockaddrInet6)(unsafe.Pointer(&m.Data[0])) | ||||
| 		sa := new(SockaddrInet6) | ||||
| 		p := (*[2]byte)(unsafe.Pointer(&pp.Port)) | ||||
| 		sa.Port = int(p[0])<<8 + int(p[1]) | ||||
| 		sa.ZoneId = pp.Scope_id | ||||
| 		sa.Addr = pp.Addr | ||||
| 		return sa, nil | ||||
| 
 | ||||
| 	default: | ||||
| 		return nil, EINVAL | ||||
| 	} | ||||
| } | ||||
|  |  | |||
|  | @ -70,9 +70,7 @@ func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) { | |||
| 	p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port)) | ||||
| 	p[0] = byte(sa.Port >> 8) | ||||
| 	p[1] = byte(sa.Port) | ||||
| 	for i := 0; i < len(sa.Addr); i++ { | ||||
| 		sa.raw.Addr[i] = sa.Addr[i] | ||||
| 	} | ||||
| 	sa.raw.Addr = sa.Addr | ||||
| 	return unsafe.Pointer(&sa.raw), SizeofSockaddrInet4, nil | ||||
| } | ||||
| 
 | ||||
|  | @ -85,9 +83,7 @@ func (sa *SockaddrInet6) sockaddr() (unsafe.Pointer, _Socklen, error) { | |||
| 	p[0] = byte(sa.Port >> 8) | ||||
| 	p[1] = byte(sa.Port) | ||||
| 	sa.raw.Scope_id = sa.ZoneId | ||||
| 	for i := 0; i < len(sa.Addr); i++ { | ||||
| 		sa.raw.Addr[i] = sa.Addr[i] | ||||
| 	} | ||||
| 	sa.raw.Addr = sa.Addr | ||||
| 	return unsafe.Pointer(&sa.raw), SizeofSockaddrInet6, nil | ||||
| } | ||||
| 
 | ||||
|  | @ -261,9 +257,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { | |||
| 		sa := new(SockaddrInet4) | ||||
| 		p := (*[2]byte)(unsafe.Pointer(&pp.Port)) | ||||
| 		sa.Port = int(p[0])<<8 + int(p[1]) | ||||
| 		for i := 0; i < len(sa.Addr); i++ { | ||||
| 			sa.Addr[i] = pp.Addr[i] | ||||
| 		} | ||||
| 		sa.Addr = pp.Addr | ||||
| 		return sa, nil | ||||
| 
 | ||||
| 	case AF_INET6: | ||||
|  | @ -272,9 +266,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { | |||
| 		p := (*[2]byte)(unsafe.Pointer(&pp.Port)) | ||||
| 		sa.Port = int(p[0])<<8 + int(p[1]) | ||||
| 		sa.ZoneId = pp.Scope_id | ||||
| 		for i := 0; i < len(sa.Addr); i++ { | ||||
| 			sa.Addr[i] = pp.Addr[i] | ||||
| 		} | ||||
| 		sa.Addr = pp.Addr | ||||
| 		return sa, nil | ||||
| 	} | ||||
| 	return nil, EAFNOSUPPORT | ||||
|  | @ -385,6 +377,11 @@ func (w WaitStatus) TrapCause() int { return -1 } | |||
| 
 | ||||
| //sys	fcntl(fd int, cmd int, arg int) (val int, err error)
 | ||||
| 
 | ||||
| //sys	fsyncRange(fd int, how int, start int64, length int64) (err error) = fsync_range
 | ||||
| func Fsync(fd int) error { | ||||
| 	return fsyncRange(fd, O_SYNC, 0, 0) | ||||
| } | ||||
| 
 | ||||
| /* | ||||
|  * Direct access | ||||
|  */ | ||||
|  | @ -401,7 +398,6 @@ func (w WaitStatus) TrapCause() int { return -1 } | |||
| //sys	Fchmodat(dirfd int, path string, mode uint32, flags int) (err error)
 | ||||
| //sys	Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
 | ||||
| //sys	Fdatasync(fd int) (err error)
 | ||||
| //sys	Fsync(fd int) (err error)
 | ||||
| // readdir_r
 | ||||
| //sysnb	Getpgid(pid int) (pgid int, err error)
 | ||||
| 
 | ||||
|  | @ -523,8 +519,10 @@ func Pipe(p []int) (err error) { | |||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe(&pp) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	if err == nil { | ||||
| 		p[0] = int(pp[0]) | ||||
| 		p[1] = int(pp[1]) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -163,9 +163,7 @@ func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) { | |||
| 	p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port)) | ||||
| 	p[0] = byte(sa.Port >> 8) | ||||
| 	p[1] = byte(sa.Port) | ||||
| 	for i := 0; i < len(sa.Addr); i++ { | ||||
| 		sa.raw.Addr[i] = sa.Addr[i] | ||||
| 	} | ||||
| 	sa.raw.Addr = sa.Addr | ||||
| 	return unsafe.Pointer(&sa.raw), _Socklen(sa.raw.Len), nil | ||||
| } | ||||
| 
 | ||||
|  | @ -179,9 +177,7 @@ func (sa *SockaddrInet6) sockaddr() (unsafe.Pointer, _Socklen, error) { | |||
| 	p[0] = byte(sa.Port >> 8) | ||||
| 	p[1] = byte(sa.Port) | ||||
| 	sa.raw.Scope_id = sa.ZoneId | ||||
| 	for i := 0; i < len(sa.Addr); i++ { | ||||
| 		sa.raw.Addr[i] = sa.Addr[i] | ||||
| 	} | ||||
| 	sa.raw.Addr = sa.Addr | ||||
| 	return unsafe.Pointer(&sa.raw), _Socklen(sa.raw.Len), nil | ||||
| } | ||||
| 
 | ||||
|  | @ -210,9 +206,7 @@ func (sa *SockaddrDatalink) sockaddr() (unsafe.Pointer, _Socklen, error) { | |||
| 	sa.raw.Nlen = sa.Nlen | ||||
| 	sa.raw.Alen = sa.Alen | ||||
| 	sa.raw.Slen = sa.Slen | ||||
| 	for i := 0; i < len(sa.raw.Data); i++ { | ||||
| 		sa.raw.Data[i] = sa.Data[i] | ||||
| 	} | ||||
| 	sa.raw.Data = sa.Data | ||||
| 	return unsafe.Pointer(&sa.raw), SizeofSockaddrDatalink, nil | ||||
| } | ||||
| 
 | ||||
|  | @ -228,9 +222,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { | |||
| 		sa.Nlen = pp.Nlen | ||||
| 		sa.Alen = pp.Alen | ||||
| 		sa.Slen = pp.Slen | ||||
| 		for i := 0; i < len(sa.Data); i++ { | ||||
| 			sa.Data[i] = pp.Data[i] | ||||
| 		} | ||||
| 		sa.Data = pp.Data | ||||
| 		return sa, nil | ||||
| 
 | ||||
| 	case AF_UNIX: | ||||
|  | @ -262,9 +254,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { | |||
| 		sa := new(SockaddrInet4) | ||||
| 		p := (*[2]byte)(unsafe.Pointer(&pp.Port)) | ||||
| 		sa.Port = int(p[0])<<8 + int(p[1]) | ||||
| 		for i := 0; i < len(sa.Addr); i++ { | ||||
| 			sa.Addr[i] = pp.Addr[i] | ||||
| 		} | ||||
| 		sa.Addr = pp.Addr | ||||
| 		return sa, nil | ||||
| 
 | ||||
| 	case AF_INET6: | ||||
|  | @ -273,9 +263,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { | |||
| 		p := (*[2]byte)(unsafe.Pointer(&pp.Port)) | ||||
| 		sa.Port = int(p[0])<<8 + int(p[1]) | ||||
| 		sa.ZoneId = pp.Scope_id | ||||
| 		for i := 0; i < len(sa.Addr); i++ { | ||||
| 			sa.Addr[i] = pp.Addr[i] | ||||
| 		} | ||||
| 		sa.Addr = pp.Addr | ||||
| 		return sa, nil | ||||
| 	} | ||||
| 	return anyToSockaddrGOOS(fd, rsa) | ||||
|  |  | |||
|  | @ -13,6 +13,7 @@ | |||
| package unix | ||||
| 
 | ||||
| import ( | ||||
| 	"fmt" | ||||
| 	"runtime" | ||||
| 	"syscall" | ||||
| 	"unsafe" | ||||
|  | @ -47,6 +48,30 @@ func (sa *SockaddrCtl) sockaddr() (unsafe.Pointer, _Socklen, error) { | |||
| 	return unsafe.Pointer(&sa.raw), SizeofSockaddrCtl, nil | ||||
| } | ||||
| 
 | ||||
| // SockaddrVM implements the Sockaddr interface for AF_VSOCK type sockets.
 | ||||
| // SockaddrVM provides access to Darwin VM sockets: a mechanism that enables
 | ||||
| // bidirectional communication between a hypervisor and its guest virtual
 | ||||
| // machines.
 | ||||
| type SockaddrVM struct { | ||||
| 	// CID and Port specify a context ID and port address for a VM socket.
 | ||||
| 	// Guests have a unique CID, and hosts may have a well-known CID of:
 | ||||
| 	//  - VMADDR_CID_HYPERVISOR: refers to the hypervisor process.
 | ||||
| 	//  - VMADDR_CID_LOCAL: refers to local communication (loopback).
 | ||||
| 	//  - VMADDR_CID_HOST: refers to other processes on the host.
 | ||||
| 	CID  uint32 | ||||
| 	Port uint32 | ||||
| 	raw  RawSockaddrVM | ||||
| } | ||||
| 
 | ||||
| func (sa *SockaddrVM) sockaddr() (unsafe.Pointer, _Socklen, error) { | ||||
| 	sa.raw.Len = SizeofSockaddrVM | ||||
| 	sa.raw.Family = AF_VSOCK | ||||
| 	sa.raw.Port = sa.Port | ||||
| 	sa.raw.Cid = sa.CID | ||||
| 
 | ||||
| 	return unsafe.Pointer(&sa.raw), SizeofSockaddrVM, nil | ||||
| } | ||||
| 
 | ||||
| func anyToSockaddrGOOS(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { | ||||
| 	switch rsa.Addr.Family { | ||||
| 	case AF_SYSTEM: | ||||
|  | @ -57,6 +82,13 @@ func anyToSockaddrGOOS(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { | |||
| 			sa.Unit = pp.Sc_unit | ||||
| 			return sa, nil | ||||
| 		} | ||||
| 	case AF_VSOCK: | ||||
| 		pp := (*RawSockaddrVM)(unsafe.Pointer(rsa)) | ||||
| 		sa := &SockaddrVM{ | ||||
| 			CID:  pp.Cid, | ||||
| 			Port: pp.Port, | ||||
| 		} | ||||
| 		return sa, nil | ||||
| 	} | ||||
| 	return nil, EAFNOSUPPORT | ||||
| } | ||||
|  | @ -127,8 +159,10 @@ func Pipe(p []int) (err error) { | |||
| 	} | ||||
| 	var x [2]int32 | ||||
| 	err = pipe(&x) | ||||
| 	p[0] = int(x[0]) | ||||
| 	p[1] = int(x[1]) | ||||
| 	if err == nil { | ||||
| 		p[0] = int(x[0]) | ||||
| 		p[1] = int(x[1]) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
|  | @ -398,8 +432,62 @@ func GetsockoptXucred(fd, level, opt int) (*Xucred, error) { | |||
| 	return x, err | ||||
| } | ||||
| 
 | ||||
| func SysctlKinfoProc(name string, args ...int) (*KinfoProc, error) { | ||||
| 	mib, err := sysctlmib(name, args...) | ||||
| 	if err != nil { | ||||
| 		return nil, err | ||||
| 	} | ||||
| 
 | ||||
| 	var kinfo KinfoProc | ||||
| 	n := uintptr(SizeofKinfoProc) | ||||
| 	if err := sysctl(mib, (*byte)(unsafe.Pointer(&kinfo)), &n, nil, 0); err != nil { | ||||
| 		return nil, err | ||||
| 	} | ||||
| 	if n != SizeofKinfoProc { | ||||
| 		return nil, EIO | ||||
| 	} | ||||
| 	return &kinfo, nil | ||||
| } | ||||
| 
 | ||||
| func SysctlKinfoProcSlice(name string, args ...int) ([]KinfoProc, error) { | ||||
| 	mib, err := sysctlmib(name, args...) | ||||
| 	if err != nil { | ||||
| 		return nil, err | ||||
| 	} | ||||
| 
 | ||||
| 	// Find size.
 | ||||
| 	n := uintptr(0) | ||||
| 	if err := sysctl(mib, nil, &n, nil, 0); err != nil { | ||||
| 		return nil, err | ||||
| 	} | ||||
| 	if n == 0 { | ||||
| 		return nil, nil | ||||
| 	} | ||||
| 	if n%SizeofKinfoProc != 0 { | ||||
| 		return nil, fmt.Errorf("sysctl() returned a size of %d, which is not a multiple of %d", n, SizeofKinfoProc) | ||||
| 	} | ||||
| 
 | ||||
| 	// Read into buffer of that size.
 | ||||
| 	buf := make([]KinfoProc, n/SizeofKinfoProc) | ||||
| 	if err := sysctl(mib, (*byte)(unsafe.Pointer(&buf[0])), &n, nil, 0); err != nil { | ||||
| 		return nil, err | ||||
| 	} | ||||
| 	if n%SizeofKinfoProc != 0 { | ||||
| 		return nil, fmt.Errorf("sysctl() returned a size of %d, which is not a multiple of %d", n, SizeofKinfoProc) | ||||
| 	} | ||||
| 
 | ||||
| 	// The actual call may return less than the original reported required
 | ||||
| 	// size so ensure we deal with that.
 | ||||
| 	return buf[:n/SizeofKinfoProc], nil | ||||
| } | ||||
| 
 | ||||
| //sys	sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error)
 | ||||
| 
 | ||||
| //sys	shmat(id int, addr uintptr, flag int) (ret uintptr, err error)
 | ||||
| //sys	shmctl(id int, cmd int, buf *SysvShmDesc) (result int, err error)
 | ||||
| //sys	shmdt(addr uintptr) (err error)
 | ||||
| //sys	shmget(key int, size int, flag int) (id int, err error)
 | ||||
| 
 | ||||
| /* | ||||
|  * Exposed directly | ||||
|  */ | ||||
|  | @ -557,10 +645,6 @@ func GetsockoptXucred(fd, level, opt int) (*Xucred, error) { | |||
| // Msgget
 | ||||
| // Msgsnd
 | ||||
| // Msgrcv
 | ||||
| // Shmat
 | ||||
| // Shmctl
 | ||||
| // Shmdt
 | ||||
| // Shmget
 | ||||
| // Shm_open
 | ||||
| // Shm_unlink
 | ||||
| // Sem_open
 | ||||
|  |  | |||
|  | @ -101,7 +101,10 @@ func Pipe(p []int) (err error) { | |||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	p[0], p[1], err = pipe() | ||||
| 	r, w, err := pipe() | ||||
| 	if err == nil { | ||||
| 		p[0], p[1] = r, w | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
|  | @ -114,7 +117,10 @@ func Pipe2(p []int, flags int) (err error) { | |||
| 	var pp [2]_C_int | ||||
| 	// pipe2 on dragonfly takes an fds array as an argument, but still
 | ||||
| 	// returns the file descriptors.
 | ||||
| 	p[0], p[1], err = pipe2(&pp, flags) | ||||
| 	r, w, err := pipe2(&pp, flags) | ||||
| 	if err == nil { | ||||
| 		p[0], p[1] = r, w | ||||
| 	} | ||||
| 	return err | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -110,8 +110,10 @@ func Pipe2(p []int, flags int) error { | |||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err := pipe2(&pp, flags) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	if err == nil { | ||||
| 		p[0] = int(pp[0]) | ||||
| 		p[1] = int(pp[1]) | ||||
| 	} | ||||
| 	return err | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -162,6 +162,14 @@ func (l *Lifreq) GetLifruInt() int { | |||
| 	return *(*int)(unsafe.Pointer(&l.Lifru[0])) | ||||
| } | ||||
| 
 | ||||
| func (l *Lifreq) SetLifruUint(d uint) { | ||||
| 	*(*uint)(unsafe.Pointer(&l.Lifru[0])) = d | ||||
| } | ||||
| 
 | ||||
| func (l *Lifreq) GetLifruUint() uint { | ||||
| 	return *(*uint)(unsafe.Pointer(&l.Lifru[0])) | ||||
| } | ||||
| 
 | ||||
| func IoctlLifreq(fd int, req uint, l *Lifreq) error { | ||||
| 	return ioctl(fd, req, uintptr(unsafe.Pointer(l))) | ||||
| } | ||||
|  |  | |||
|  | @ -13,7 +13,6 @@ package unix | |||
| 
 | ||||
| import ( | ||||
| 	"encoding/binary" | ||||
| 	"runtime" | ||||
| 	"syscall" | ||||
| 	"unsafe" | ||||
| ) | ||||
|  | @ -38,6 +37,13 @@ func Creat(path string, mode uint32) (fd int, err error) { | |||
| 	return Open(path, O_CREAT|O_WRONLY|O_TRUNC, mode) | ||||
| } | ||||
| 
 | ||||
| func EpollCreate(size int) (fd int, err error) { | ||||
| 	if size <= 0 { | ||||
| 		return -1, EINVAL | ||||
| 	} | ||||
| 	return EpollCreate1(0) | ||||
| } | ||||
| 
 | ||||
| //sys	FanotifyInit(flags uint, event_f_flags uint) (fd int, err error)
 | ||||
| //sys	fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error)
 | ||||
| 
 | ||||
|  | @ -66,11 +72,22 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { | |||
| 	return fchmodat(dirfd, path, mode) | ||||
| } | ||||
| 
 | ||||
| //sys	ioctl(fd int, req uint, arg uintptr) (err error)
 | ||||
| func InotifyInit() (fd int, err error) { | ||||
| 	return InotifyInit1(0) | ||||
| } | ||||
| 
 | ||||
| // ioctl itself should not be exposed directly, but additional get/set
 | ||||
| // functions for specific types are permissible.
 | ||||
| // These are defined in ioctl.go and ioctl_linux.go.
 | ||||
| //sys	ioctl(fd int, req uint, arg uintptr) (err error) = SYS_IOCTL
 | ||||
| //sys	ioctlPtr(fd int, req uint, arg unsafe.Pointer) (err error) = SYS_IOCTL
 | ||||
| 
 | ||||
| // ioctl itself should not be exposed directly, but additional get/set functions
 | ||||
| // for specific types are permissible. These are defined in ioctl.go and
 | ||||
| // ioctl_linux.go.
 | ||||
| //
 | ||||
| // The third argument to ioctl is often a pointer but sometimes an integer.
 | ||||
| // Callers should use ioctlPtr when the third argument is a pointer and ioctl
 | ||||
| // when the third argument is an integer.
 | ||||
| //
 | ||||
| // TODO: some existing code incorrectly uses ioctl when it should use ioctlPtr.
 | ||||
| 
 | ||||
| //sys	Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error)
 | ||||
| 
 | ||||
|  | @ -102,6 +119,25 @@ func Openat2(dirfd int, path string, how *OpenHow) (fd int, err error) { | |||
| 	return openat2(dirfd, path, how, SizeofOpenHow) | ||||
| } | ||||
| 
 | ||||
| func Pipe(p []int) error { | ||||
| 	return Pipe2(p, 0) | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe2(p *[2]_C_int, flags int) (err error)
 | ||||
| 
 | ||||
| func Pipe2(p []int, flags int) error { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err := pipe2(&pp, flags) | ||||
| 	if err == nil { | ||||
| 		p[0] = int(pp[0]) | ||||
| 		p[1] = int(pp[1]) | ||||
| 	} | ||||
| 	return err | ||||
| } | ||||
| 
 | ||||
| //sys	ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error)
 | ||||
| 
 | ||||
| func Ppoll(fds []PollFd, timeout *Timespec, sigmask *Sigset_t) (n int, err error) { | ||||
|  | @ -111,6 +147,15 @@ func Ppoll(fds []PollFd, timeout *Timespec, sigmask *Sigset_t) (n int, err error | |||
| 	return ppoll(&fds[0], len(fds), timeout, sigmask) | ||||
| } | ||||
| 
 | ||||
| func Poll(fds []PollFd, timeout int) (n int, err error) { | ||||
| 	var ts *Timespec | ||||
| 	if timeout >= 0 { | ||||
| 		ts = new(Timespec) | ||||
| 		*ts = NsecToTimespec(int64(timeout) * 1e6) | ||||
| 	} | ||||
| 	return Ppoll(fds, ts, nil) | ||||
| } | ||||
| 
 | ||||
| //sys	Readlinkat(dirfd int, path string, buf []byte) (n int, err error)
 | ||||
| 
 | ||||
| func Readlink(path string, buf []byte) (n int, err error) { | ||||
|  | @ -161,27 +206,7 @@ func Utimes(path string, tv []Timeval) error { | |||
| //sys	utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error)
 | ||||
| 
 | ||||
| func UtimesNano(path string, ts []Timespec) error { | ||||
| 	if ts == nil { | ||||
| 		err := utimensat(AT_FDCWD, path, nil, 0) | ||||
| 		if err != ENOSYS { | ||||
| 			return err | ||||
| 		} | ||||
| 		return utimes(path, nil) | ||||
| 	} | ||||
| 	if len(ts) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	err := utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0) | ||||
| 	if err != ENOSYS { | ||||
| 		return err | ||||
| 	} | ||||
| 	// If the utimensat syscall isn't available (utimensat was added to Linux
 | ||||
| 	// in 2.6.22, Released, 8 July 2007) then fall back to utimes
 | ||||
| 	var tv [2]Timeval | ||||
| 	for i := 0; i < 2; i++ { | ||||
| 		tv[i] = NsecToTimeval(TimespecToNsec(ts[i])) | ||||
| 	} | ||||
| 	return utimes(path, (*[2]Timeval)(unsafe.Pointer(&tv[0]))) | ||||
| 	return UtimesNanoAt(AT_FDCWD, path, ts, 0) | ||||
| } | ||||
| 
 | ||||
| func UtimesNanoAt(dirfd int, path string, ts []Timespec, flags int) error { | ||||
|  | @ -349,9 +374,7 @@ func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) { | |||
| 	p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port)) | ||||
| 	p[0] = byte(sa.Port >> 8) | ||||
| 	p[1] = byte(sa.Port) | ||||
| 	for i := 0; i < len(sa.Addr); i++ { | ||||
| 		sa.raw.Addr[i] = sa.Addr[i] | ||||
| 	} | ||||
| 	sa.raw.Addr = sa.Addr | ||||
| 	return unsafe.Pointer(&sa.raw), SizeofSockaddrInet4, nil | ||||
| } | ||||
| 
 | ||||
|  | @ -364,9 +387,7 @@ func (sa *SockaddrInet6) sockaddr() (unsafe.Pointer, _Socklen, error) { | |||
| 	p[0] = byte(sa.Port >> 8) | ||||
| 	p[1] = byte(sa.Port) | ||||
| 	sa.raw.Scope_id = sa.ZoneId | ||||
| 	for i := 0; i < len(sa.Addr); i++ { | ||||
| 		sa.raw.Addr[i] = sa.Addr[i] | ||||
| 	} | ||||
| 	sa.raw.Addr = sa.Addr | ||||
| 	return unsafe.Pointer(&sa.raw), SizeofSockaddrInet6, nil | ||||
| } | ||||
| 
 | ||||
|  | @ -415,9 +436,7 @@ func (sa *SockaddrLinklayer) sockaddr() (unsafe.Pointer, _Socklen, error) { | |||
| 	sa.raw.Hatype = sa.Hatype | ||||
| 	sa.raw.Pkttype = sa.Pkttype | ||||
| 	sa.raw.Halen = sa.Halen | ||||
| 	for i := 0; i < len(sa.Addr); i++ { | ||||
| 		sa.raw.Addr[i] = sa.Addr[i] | ||||
| 	} | ||||
| 	sa.raw.Addr = sa.Addr | ||||
| 	return unsafe.Pointer(&sa.raw), SizeofSockaddrLinklayer, nil | ||||
| } | ||||
| 
 | ||||
|  | @ -832,12 +851,10 @@ func (sa *SockaddrTIPC) sockaddr() (unsafe.Pointer, _Socklen, error) { | |||
| 	if sa.Addr == nil { | ||||
| 		return nil, 0, EINVAL | ||||
| 	} | ||||
| 
 | ||||
| 	sa.raw.Family = AF_TIPC | ||||
| 	sa.raw.Scope = int8(sa.Scope) | ||||
| 	sa.raw.Addrtype = sa.Addr.tipcAddrtype() | ||||
| 	sa.raw.Addr = sa.Addr.tipcAddr() | ||||
| 
 | ||||
| 	return unsafe.Pointer(&sa.raw), SizeofSockaddrTIPC, nil | ||||
| } | ||||
| 
 | ||||
|  | @ -851,9 +868,7 @@ type SockaddrL2TPIP struct { | |||
| func (sa *SockaddrL2TPIP) sockaddr() (unsafe.Pointer, _Socklen, error) { | ||||
| 	sa.raw.Family = AF_INET | ||||
| 	sa.raw.Conn_id = sa.ConnId | ||||
| 	for i := 0; i < len(sa.Addr); i++ { | ||||
| 		sa.raw.Addr[i] = sa.Addr[i] | ||||
| 	} | ||||
| 	sa.raw.Addr = sa.Addr | ||||
| 	return unsafe.Pointer(&sa.raw), SizeofSockaddrL2TPIP, nil | ||||
| } | ||||
| 
 | ||||
|  | @ -869,9 +884,7 @@ func (sa *SockaddrL2TPIP6) sockaddr() (unsafe.Pointer, _Socklen, error) { | |||
| 	sa.raw.Family = AF_INET6 | ||||
| 	sa.raw.Conn_id = sa.ConnId | ||||
| 	sa.raw.Scope_id = sa.ZoneId | ||||
| 	for i := 0; i < len(sa.Addr); i++ { | ||||
| 		sa.raw.Addr[i] = sa.Addr[i] | ||||
| 	} | ||||
| 	sa.raw.Addr = sa.Addr | ||||
| 	return unsafe.Pointer(&sa.raw), SizeofSockaddrL2TPIP6, nil | ||||
| } | ||||
| 
 | ||||
|  | @ -967,9 +980,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { | |||
| 		sa.Hatype = pp.Hatype | ||||
| 		sa.Pkttype = pp.Pkttype | ||||
| 		sa.Halen = pp.Halen | ||||
| 		for i := 0; i < len(sa.Addr); i++ { | ||||
| 			sa.Addr[i] = pp.Addr[i] | ||||
| 		} | ||||
| 		sa.Addr = pp.Addr | ||||
| 		return sa, nil | ||||
| 
 | ||||
| 	case AF_UNIX: | ||||
|  | @ -1008,18 +1019,14 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { | |||
| 			pp := (*RawSockaddrL2TPIP)(unsafe.Pointer(rsa)) | ||||
| 			sa := new(SockaddrL2TPIP) | ||||
| 			sa.ConnId = pp.Conn_id | ||||
| 			for i := 0; i < len(sa.Addr); i++ { | ||||
| 				sa.Addr[i] = pp.Addr[i] | ||||
| 			} | ||||
| 			sa.Addr = pp.Addr | ||||
| 			return sa, nil | ||||
| 		default: | ||||
| 			pp := (*RawSockaddrInet4)(unsafe.Pointer(rsa)) | ||||
| 			sa := new(SockaddrInet4) | ||||
| 			p := (*[2]byte)(unsafe.Pointer(&pp.Port)) | ||||
| 			sa.Port = int(p[0])<<8 + int(p[1]) | ||||
| 			for i := 0; i < len(sa.Addr); i++ { | ||||
| 				sa.Addr[i] = pp.Addr[i] | ||||
| 			} | ||||
| 			sa.Addr = pp.Addr | ||||
| 			return sa, nil | ||||
| 		} | ||||
| 
 | ||||
|  | @ -1035,9 +1042,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { | |||
| 			sa := new(SockaddrL2TPIP6) | ||||
| 			sa.ConnId = pp.Conn_id | ||||
| 			sa.ZoneId = pp.Scope_id | ||||
| 			for i := 0; i < len(sa.Addr); i++ { | ||||
| 				sa.Addr[i] = pp.Addr[i] | ||||
| 			} | ||||
| 			sa.Addr = pp.Addr | ||||
| 			return sa, nil | ||||
| 		default: | ||||
| 			pp := (*RawSockaddrInet6)(unsafe.Pointer(rsa)) | ||||
|  | @ -1045,9 +1050,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { | |||
| 			p := (*[2]byte)(unsafe.Pointer(&pp.Port)) | ||||
| 			sa.Port = int(p[0])<<8 + int(p[1]) | ||||
| 			sa.ZoneId = pp.Scope_id | ||||
| 			for i := 0; i < len(sa.Addr); i++ { | ||||
| 				sa.Addr[i] = pp.Addr[i] | ||||
| 			} | ||||
| 			sa.Addr = pp.Addr | ||||
| 			return sa, nil | ||||
| 		} | ||||
| 
 | ||||
|  | @ -1222,11 +1225,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { | |||
| func Accept(fd int) (nfd int, sa Sockaddr, err error) { | ||||
| 	var rsa RawSockaddrAny | ||||
| 	var len _Socklen = SizeofSockaddrAny | ||||
| 	// Try accept4 first for Android, then try accept for kernel older than 2.6.28
 | ||||
| 	nfd, err = accept4(fd, &rsa, &len, 0) | ||||
| 	if err == ENOSYS { | ||||
| 		nfd, err = accept(fd, &rsa, &len) | ||||
| 	} | ||||
| 	if err != nil { | ||||
| 		return | ||||
| 	} | ||||
|  | @ -1348,6 +1347,13 @@ func SetsockoptTpacketReq3(fd, level, opt int, tp *TpacketReq3) error { | |||
| 	return setsockopt(fd, level, opt, unsafe.Pointer(tp), unsafe.Sizeof(*tp)) | ||||
| } | ||||
| 
 | ||||
| func SetsockoptTCPRepairOpt(fd, level, opt int, o []TCPRepairOpt) (err error) { | ||||
| 	if len(o) == 0 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	return setsockopt(fd, level, opt, unsafe.Pointer(&o[0]), uintptr(SizeofTCPRepairOpt*len(o))) | ||||
| } | ||||
| 
 | ||||
| // Keyctl Commands (http://man7.org/linux/man-pages/man2/keyctl.2.html)
 | ||||
| 
 | ||||
| // KeyctlInt calls keyctl commands in which each argument is an int.
 | ||||
|  | @ -1771,6 +1777,16 @@ func Mount(source string, target string, fstype string, flags uintptr, data stri | |||
| 	return mount(source, target, fstype, flags, datap) | ||||
| } | ||||
| 
 | ||||
| //sys	mountSetattr(dirfd int, pathname string, flags uint, attr *MountAttr, size uintptr) (err error) = SYS_MOUNT_SETATTR
 | ||||
| 
 | ||||
| // MountSetattr is a wrapper for mount_setattr(2).
 | ||||
| // https://man7.org/linux/man-pages/man2/mount_setattr.2.html
 | ||||
| //
 | ||||
| // Requires kernel >= 5.12.
 | ||||
| func MountSetattr(dirfd int, pathname string, flags uint, attr *MountAttr) error { | ||||
| 	return mountSetattr(dirfd, pathname, flags, attr, unsafe.Sizeof(*attr)) | ||||
| } | ||||
| 
 | ||||
| func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) { | ||||
| 	if raceenabled { | ||||
| 		raceReleaseMerge(unsafe.Pointer(&ioSync)) | ||||
|  | @ -1802,11 +1818,7 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e | |||
| //sys	Dup(oldfd int) (fd int, err error)
 | ||||
| 
 | ||||
| func Dup2(oldfd, newfd int) error { | ||||
| 	// Android O and newer blocks dup2; riscv and arm64 don't implement dup2.
 | ||||
| 	if runtime.GOOS == "android" || runtime.GOARCH == "riscv64" || runtime.GOARCH == "arm64" { | ||||
| 		return Dup3(oldfd, newfd, 0) | ||||
| 	} | ||||
| 	return dup2(oldfd, newfd) | ||||
| 	return Dup3(oldfd, newfd, 0) | ||||
| } | ||||
| 
 | ||||
| //sys	Dup3(oldfd int, newfd int, flags int) (err error)
 | ||||
|  | @ -1859,7 +1871,7 @@ func Getpgrp() (pid int) { | |||
| //sys	Nanosleep(time *Timespec, leftover *Timespec) (err error)
 | ||||
| //sys	PerfEventOpen(attr *PerfEventAttr, pid int, cpu int, groupFd int, flags int) (fd int, err error)
 | ||||
| //sys	PivotRoot(newroot string, putold string) (err error) = SYS_PIVOT_ROOT
 | ||||
| //sysnb	prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) = SYS_PRLIMIT64
 | ||||
| //sysnb	Prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) = SYS_PRLIMIT64
 | ||||
| //sys	Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error)
 | ||||
| //sys	Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) = SYS_PSELECT6
 | ||||
| //sys	read(fd int, p []byte) (n int, err error)
 | ||||
|  | @ -2294,6 +2306,14 @@ type RemoteIovec struct { | |||
| //sys	ProcessVMReadv(pid int, localIov []Iovec, remoteIov []RemoteIovec, flags uint) (n int, err error) = SYS_PROCESS_VM_READV
 | ||||
| //sys	ProcessVMWritev(pid int, localIov []Iovec, remoteIov []RemoteIovec, flags uint) (n int, err error) = SYS_PROCESS_VM_WRITEV
 | ||||
| 
 | ||||
| //sys	PidfdOpen(pid int, flags int) (fd int, err error) = SYS_PIDFD_OPEN
 | ||||
| //sys	PidfdGetfd(pidfd int, targetfd int, flags int) (fd int, err error) = SYS_PIDFD_GETFD
 | ||||
| 
 | ||||
| //sys	shmat(id int, addr uintptr, flag int) (ret uintptr, err error)
 | ||||
| //sys	shmctl(id int, cmd int, buf *SysvShmDesc) (result int, err error)
 | ||||
| //sys	shmdt(addr uintptr) (err error)
 | ||||
| //sys	shmget(key int, size int, flag int) (id int, err error)
 | ||||
| 
 | ||||
| /* | ||||
|  * Unimplemented | ||||
|  */ | ||||
|  | @ -2375,10 +2395,6 @@ type RemoteIovec struct { | |||
| // SetRobustList
 | ||||
| // SetThreadArea
 | ||||
| // SetTidAddress
 | ||||
| // Shmat
 | ||||
| // Shmctl
 | ||||
| // Shmdt
 | ||||
| // Shmget
 | ||||
| // Sigaltstack
 | ||||
| // Swapoff
 | ||||
| // Swapon
 | ||||
|  |  | |||
|  | @ -19,36 +19,8 @@ func setTimeval(sec, usec int64) Timeval { | |||
| 	return Timeval{Sec: int32(sec), Usec: int32(usec)} | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe(p *[2]_C_int) (err error)
 | ||||
| 
 | ||||
| func Pipe(p []int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe(&pp) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe2(p *[2]_C_int, flags int) (err error)
 | ||||
| 
 | ||||
| func Pipe2(p []int, flags int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe2(&pp, flags) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // 64-bit file system and 32-bit uid calls
 | ||||
| // (386 default is 32-bit file system and 16-bit uid).
 | ||||
| //sys	dup2(oldfd int, newfd int) (err error)
 | ||||
| //sysnb	EpollCreate(size int) (fd int, err error)
 | ||||
| //sys	EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
 | ||||
| //sys	Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64_64
 | ||||
| //sys	Fchown(fd int, uid int, gid int) (err error) = SYS_FCHOWN32
 | ||||
|  | @ -59,7 +31,6 @@ func Pipe2(p []int, flags int) (err error) { | |||
| //sysnb	Geteuid() (euid int) = SYS_GETEUID32
 | ||||
| //sysnb	Getgid() (gid int) = SYS_GETGID32
 | ||||
| //sysnb	Getuid() (uid int) = SYS_GETUID32
 | ||||
| //sysnb	InotifyInit() (fd int, err error)
 | ||||
| //sys	Ioperm(from int, num int, on int) (err error)
 | ||||
| //sys	Iopl(level int) (err error)
 | ||||
| //sys	Lchown(path string, uid int, gid int) (err error) = SYS_LCHOWN32
 | ||||
|  | @ -105,7 +76,7 @@ const rlimInf32 = ^uint32(0) | |||
| const rlimInf64 = ^uint64(0) | ||||
| 
 | ||||
| func Getrlimit(resource int, rlim *Rlimit) (err error) { | ||||
| 	err = prlimit(0, resource, nil, rlim) | ||||
| 	err = Prlimit(0, resource, nil, rlim) | ||||
| 	if err != ENOSYS { | ||||
| 		return err | ||||
| 	} | ||||
|  | @ -133,7 +104,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) { | |||
| //sysnb	setrlimit(resource int, rlim *rlimit32) (err error) = SYS_SETRLIMIT
 | ||||
| 
 | ||||
| func Setrlimit(resource int, rlim *Rlimit) (err error) { | ||||
| 	err = prlimit(0, resource, rlim, nil) | ||||
| 	err = Prlimit(0, resource, rlim, nil) | ||||
| 	if err != ENOSYS { | ||||
| 		return err | ||||
| 	} | ||||
|  | @ -381,12 +352,3 @@ func (cmsg *Cmsghdr) SetLen(length int) { | |||
| func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { | ||||
| 	rsa.Service_name_len = uint32(length) | ||||
| } | ||||
| 
 | ||||
| //sys	poll(fds *PollFd, nfds int, timeout int) (n int, err error)
 | ||||
| 
 | ||||
| func Poll(fds []PollFd, timeout int) (n int, err error) { | ||||
| 	if len(fds) == 0 { | ||||
| 		return poll(nil, 0, timeout) | ||||
| 	} | ||||
| 	return poll(&fds[0], len(fds), timeout) | ||||
| } | ||||
|  |  | |||
|  | @ -7,8 +7,6 @@ | |||
| 
 | ||||
| package unix | ||||
| 
 | ||||
| //sys	dup2(oldfd int, newfd int) (err error)
 | ||||
| //sysnb	EpollCreate(size int) (fd int, err error)
 | ||||
| //sys	EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
 | ||||
| //sys	Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
 | ||||
| //sys	Fchown(fd int, uid int, gid int) (err error)
 | ||||
|  | @ -21,17 +19,6 @@ package unix | |||
| //sysnb	Getgid() (gid int)
 | ||||
| //sysnb	Getrlimit(resource int, rlim *Rlimit) (err error)
 | ||||
| //sysnb	Getuid() (uid int)
 | ||||
| //sysnb	inotifyInit() (fd int, err error)
 | ||||
| 
 | ||||
| func InotifyInit() (fd int, err error) { | ||||
| 	// First try inotify_init1, because Android's seccomp policy blocks the latter.
 | ||||
| 	fd, err = InotifyInit1(0) | ||||
| 	if err == ENOSYS { | ||||
| 		fd, err = inotifyInit() | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| //sys	Ioperm(from int, num int, on int) (err error)
 | ||||
| //sys	Iopl(level int) (err error)
 | ||||
| //sys	Lchown(path string, uid int, gid int) (err error)
 | ||||
|  | @ -126,32 +113,6 @@ func setTimeval(sec, usec int64) Timeval { | |||
| 	return Timeval{Sec: sec, Usec: usec} | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe(p *[2]_C_int) (err error)
 | ||||
| 
 | ||||
| func Pipe(p []int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe(&pp) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe2(p *[2]_C_int, flags int) (err error)
 | ||||
| 
 | ||||
| func Pipe2(p []int, flags int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe2(&pp, flags) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| func (r *PtraceRegs) PC() uint64 { return r.Rip } | ||||
| 
 | ||||
| func (r *PtraceRegs) SetPC(pc uint64) { r.Rip = pc } | ||||
|  | @ -176,15 +137,6 @@ func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { | |||
| 	rsa.Service_name_len = uint64(length) | ||||
| } | ||||
| 
 | ||||
| //sys	poll(fds *PollFd, nfds int, timeout int) (n int, err error)
 | ||||
| 
 | ||||
| func Poll(fds []PollFd, timeout int) (n int, err error) { | ||||
| 	if len(fds) == 0 { | ||||
| 		return poll(nil, 0, timeout) | ||||
| 	} | ||||
| 	return poll(&fds[0], len(fds), timeout) | ||||
| } | ||||
| 
 | ||||
| //sys	kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error)
 | ||||
| 
 | ||||
| func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error { | ||||
|  |  | |||
|  | @ -19,36 +19,6 @@ func setTimeval(sec, usec int64) Timeval { | |||
| 	return Timeval{Sec: int32(sec), Usec: int32(usec)} | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe(p *[2]_C_int) (err error)
 | ||||
| 
 | ||||
| func Pipe(p []int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	// Try pipe2 first for Android O, then try pipe for kernel 2.6.23.
 | ||||
| 	err = pipe2(&pp, 0) | ||||
| 	if err == ENOSYS { | ||||
| 		err = pipe(&pp) | ||||
| 	} | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe2(p *[2]_C_int, flags int) (err error)
 | ||||
| 
 | ||||
| func Pipe2(p []int, flags int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe2(&pp, flags) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { | ||||
| 	newoffset, errno := seek(fd, offset, whence) | ||||
| 	if errno != 0 { | ||||
|  | @ -76,8 +46,6 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { | |||
| 
 | ||||
| // 64-bit file system and 32-bit uid calls
 | ||||
| // (16-bit uid calls are not always supported in newer kernels)
 | ||||
| //sys	dup2(oldfd int, newfd int) (err error)
 | ||||
| //sysnb	EpollCreate(size int) (fd int, err error)
 | ||||
| //sys	EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
 | ||||
| //sys	Fchown(fd int, uid int, gid int) (err error) = SYS_FCHOWN32
 | ||||
| //sys	Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64
 | ||||
|  | @ -86,7 +54,6 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { | |||
| //sysnb	Geteuid() (euid int) = SYS_GETEUID32
 | ||||
| //sysnb	Getgid() (gid int) = SYS_GETGID32
 | ||||
| //sysnb	Getuid() (uid int) = SYS_GETUID32
 | ||||
| //sysnb	InotifyInit() (fd int, err error)
 | ||||
| //sys	Lchown(path string, uid int, gid int) (err error) = SYS_LCHOWN32
 | ||||
| //sys	Listen(s int, n int) (err error)
 | ||||
| //sys	Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
 | ||||
|  | @ -184,7 +151,7 @@ const rlimInf32 = ^uint32(0) | |||
| const rlimInf64 = ^uint64(0) | ||||
| 
 | ||||
| func Getrlimit(resource int, rlim *Rlimit) (err error) { | ||||
| 	err = prlimit(0, resource, nil, rlim) | ||||
| 	err = Prlimit(0, resource, nil, rlim) | ||||
| 	if err != ENOSYS { | ||||
| 		return err | ||||
| 	} | ||||
|  | @ -212,7 +179,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) { | |||
| //sysnb	setrlimit(resource int, rlim *rlimit32) (err error) = SYS_SETRLIMIT
 | ||||
| 
 | ||||
| func Setrlimit(resource int, rlim *Rlimit) (err error) { | ||||
| 	err = prlimit(0, resource, rlim, nil) | ||||
| 	err = Prlimit(0, resource, rlim, nil) | ||||
| 	if err != ENOSYS { | ||||
| 		return err | ||||
| 	} | ||||
|  | @ -260,15 +227,6 @@ func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { | |||
| 	rsa.Service_name_len = uint32(length) | ||||
| } | ||||
| 
 | ||||
| //sys	poll(fds *PollFd, nfds int, timeout int) (n int, err error)
 | ||||
| 
 | ||||
| func Poll(fds []PollFd, timeout int) (n int, err error) { | ||||
| 	if len(fds) == 0 { | ||||
| 		return poll(nil, 0, timeout) | ||||
| 	} | ||||
| 	return poll(&fds[0], len(fds), timeout) | ||||
| } | ||||
| 
 | ||||
| //sys	armSyncFileRange(fd int, flags int, off int64, n int64) (err error) = SYS_ARM_SYNC_FILE_RANGE
 | ||||
| 
 | ||||
| func SyncFileRange(fd int, off int64, n int64, flags int) error { | ||||
|  |  | |||
|  | @ -9,13 +9,6 @@ package unix | |||
| 
 | ||||
| import "unsafe" | ||||
| 
 | ||||
| func EpollCreate(size int) (fd int, err error) { | ||||
| 	if size <= 0 { | ||||
| 		return -1, EINVAL | ||||
| 	} | ||||
| 	return EpollCreate1(0) | ||||
| } | ||||
| 
 | ||||
| //sys	EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) = SYS_EPOLL_PWAIT
 | ||||
| //sys	Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
 | ||||
| //sys	Fchown(fd int, uid int, gid int) (err error)
 | ||||
|  | @ -145,33 +138,9 @@ func utimes(path string, tv *[2]Timeval) (err error) { | |||
| 	return utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0) | ||||
| } | ||||
| 
 | ||||
| func Pipe(p []int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe2(&pp, 0) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe2(p *[2]_C_int, flags int) (err error)
 | ||||
| 
 | ||||
| func Pipe2(p []int, flags int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe2(&pp, flags) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // Getrlimit prefers the prlimit64 system call. See issue 38604.
 | ||||
| func Getrlimit(resource int, rlim *Rlimit) error { | ||||
| 	err := prlimit(0, resource, nil, rlim) | ||||
| 	err := Prlimit(0, resource, nil, rlim) | ||||
| 	if err != ENOSYS { | ||||
| 		return err | ||||
| 	} | ||||
|  | @ -180,7 +149,7 @@ func Getrlimit(resource int, rlim *Rlimit) error { | |||
| 
 | ||||
| // Setrlimit prefers the prlimit64 system call. See issue 38604.
 | ||||
| func Setrlimit(resource int, rlim *Rlimit) error { | ||||
| 	err := prlimit(0, resource, rlim, nil) | ||||
| 	err := Prlimit(0, resource, rlim, nil) | ||||
| 	if err != ENOSYS { | ||||
| 		return err | ||||
| 	} | ||||
|  | @ -211,31 +180,11 @@ func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { | |||
| 	rsa.Service_name_len = uint64(length) | ||||
| } | ||||
| 
 | ||||
| func InotifyInit() (fd int, err error) { | ||||
| 	return InotifyInit1(0) | ||||
| } | ||||
| 
 | ||||
| // dup2 exists because func Dup3 in syscall_linux.go references
 | ||||
| // it in an unreachable path. dup2 isn't available on arm64.
 | ||||
| func dup2(oldfd int, newfd int) error | ||||
| 
 | ||||
| func Pause() error { | ||||
| 	_, err := ppoll(nil, 0, nil, nil) | ||||
| 	return err | ||||
| } | ||||
| 
 | ||||
| func Poll(fds []PollFd, timeout int) (n int, err error) { | ||||
| 	var ts *Timespec | ||||
| 	if timeout >= 0 { | ||||
| 		ts = new(Timespec) | ||||
| 		*ts = NsecToTimespec(int64(timeout) * 1e6) | ||||
| 	} | ||||
| 	if len(fds) == 0 { | ||||
| 		return ppoll(nil, 0, ts, nil) | ||||
| 	} | ||||
| 	return ppoll(&fds[0], len(fds), ts, nil) | ||||
| } | ||||
| 
 | ||||
| //sys	kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error)
 | ||||
| 
 | ||||
| func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error { | ||||
|  |  | |||
|  | @ -8,8 +8,6 @@ | |||
| 
 | ||||
| package unix | ||||
| 
 | ||||
| //sys	dup2(oldfd int, newfd int) (err error)
 | ||||
| //sysnb	EpollCreate(size int) (fd int, err error)
 | ||||
| //sys	EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
 | ||||
| //sys	Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
 | ||||
| //sys	Fchown(fd int, uid int, gid int) (err error)
 | ||||
|  | @ -94,30 +92,6 @@ func setTimeval(sec, usec int64) Timeval { | |||
| 	return Timeval{Sec: sec, Usec: usec} | ||||
| } | ||||
| 
 | ||||
| func Pipe(p []int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe2(&pp, 0) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe2(p *[2]_C_int, flags int) (err error)
 | ||||
| 
 | ||||
| func Pipe2(p []int, flags int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe2(&pp, flags) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| func Ioperm(from int, num int, on int) (err error) { | ||||
| 	return ENOSYS | ||||
| } | ||||
|  | @ -220,16 +194,3 @@ func (cmsg *Cmsghdr) SetLen(length int) { | |||
| func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { | ||||
| 	rsa.Service_name_len = uint64(length) | ||||
| } | ||||
| 
 | ||||
| func InotifyInit() (fd int, err error) { | ||||
| 	return InotifyInit1(0) | ||||
| } | ||||
| 
 | ||||
| //sys	poll(fds *PollFd, nfds int, timeout int) (n int, err error)
 | ||||
| 
 | ||||
| func Poll(fds []PollFd, timeout int) (n int, err error) { | ||||
| 	if len(fds) == 0 { | ||||
| 		return poll(nil, 0, timeout) | ||||
| 	} | ||||
| 	return poll(&fds[0], len(fds), timeout) | ||||
| } | ||||
|  |  | |||
|  | @ -15,8 +15,6 @@ import ( | |||
| 
 | ||||
| func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) | ||||
| 
 | ||||
| //sys	dup2(oldfd int, newfd int) (err error)
 | ||||
| //sysnb	EpollCreate(size int) (fd int, err error)
 | ||||
| //sys	EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
 | ||||
| //sys	Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
 | ||||
| //sys	Fchown(fd int, uid int, gid int) (err error)
 | ||||
|  | @ -60,7 +58,6 @@ func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, | |||
| //sys	recvmsg(s int, msg *Msghdr, flags int) (n int, err error)
 | ||||
| //sys	sendmsg(s int, msg *Msghdr, flags int) (n int, err error)
 | ||||
| 
 | ||||
| //sysnb	InotifyInit() (fd int, err error)
 | ||||
| //sys	Ioperm(from int, num int, on int) (err error)
 | ||||
| //sys	Iopl(level int) (err error)
 | ||||
| 
 | ||||
|  | @ -113,29 +110,6 @@ func setTimeval(sec, usec int64) Timeval { | |||
| 	return Timeval{Sec: int32(sec), Usec: int32(usec)} | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe2(p *[2]_C_int, flags int) (err error)
 | ||||
| 
 | ||||
| func Pipe2(p []int, flags int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe2(&pp, flags) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe() (p1 int, p2 int, err error)
 | ||||
| 
 | ||||
| func Pipe(p []int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	p[0], p[1], err = pipe() | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| //sys	mmap2(addr uintptr, length uintptr, prot int, flags int, fd int, pageOffset uintptr) (xaddr uintptr, err error)
 | ||||
| 
 | ||||
| func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) { | ||||
|  | @ -157,7 +131,7 @@ type rlimit32 struct { | |||
| //sysnb	getrlimit(resource int, rlim *rlimit32) (err error) = SYS_GETRLIMIT
 | ||||
| 
 | ||||
| func Getrlimit(resource int, rlim *Rlimit) (err error) { | ||||
| 	err = prlimit(0, resource, nil, rlim) | ||||
| 	err = Prlimit(0, resource, nil, rlim) | ||||
| 	if err != ENOSYS { | ||||
| 		return err | ||||
| 	} | ||||
|  | @ -185,7 +159,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) { | |||
| //sysnb	setrlimit(resource int, rlim *rlimit32) (err error) = SYS_SETRLIMIT
 | ||||
| 
 | ||||
| func Setrlimit(resource int, rlim *Rlimit) (err error) { | ||||
| 	err = prlimit(0, resource, rlim, nil) | ||||
| 	err = Prlimit(0, resource, rlim, nil) | ||||
| 	if err != ENOSYS { | ||||
| 		return err | ||||
| 	} | ||||
|  | @ -232,12 +206,3 @@ func (cmsg *Cmsghdr) SetLen(length int) { | |||
| func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { | ||||
| 	rsa.Service_name_len = uint32(length) | ||||
| } | ||||
| 
 | ||||
| //sys	poll(fds *PollFd, nfds int, timeout int) (n int, err error)
 | ||||
| 
 | ||||
| func Poll(fds []PollFd, timeout int) (n int, err error) { | ||||
| 	if len(fds) == 0 { | ||||
| 		return poll(nil, 0, timeout) | ||||
| 	} | ||||
| 	return poll(&fds[0], len(fds), timeout) | ||||
| } | ||||
|  |  | |||
|  | @ -3,8 +3,7 @@ | |||
| // license that can be found in the LICENSE file.
 | ||||
| 
 | ||||
| //go:build linux && ppc
 | ||||
| // +build linux
 | ||||
| // +build ppc
 | ||||
| // +build linux,ppc
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
|  | @ -13,8 +12,6 @@ import ( | |||
| 	"unsafe" | ||||
| ) | ||||
| 
 | ||||
| //sys	dup2(oldfd int, newfd int) (err error)
 | ||||
| //sysnb	EpollCreate(size int) (fd int, err error)
 | ||||
| //sys	EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
 | ||||
| //sys	Fchown(fd int, uid int, gid int) (err error)
 | ||||
| //sys	Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64
 | ||||
|  | @ -24,7 +21,6 @@ import ( | |||
| //sysnb	Geteuid() (euid int)
 | ||||
| //sysnb	Getgid() (gid int)
 | ||||
| //sysnb	Getuid() (uid int)
 | ||||
| //sysnb	InotifyInit() (fd int, err error)
 | ||||
| //sys	Ioperm(from int, num int, on int) (err error)
 | ||||
| //sys	Iopl(level int) (err error)
 | ||||
| //sys	Lchown(path string, uid int, gid int) (err error)
 | ||||
|  | @ -143,7 +139,7 @@ const rlimInf32 = ^uint32(0) | |||
| const rlimInf64 = ^uint64(0) | ||||
| 
 | ||||
| func Getrlimit(resource int, rlim *Rlimit) (err error) { | ||||
| 	err = prlimit(0, resource, nil, rlim) | ||||
| 	err = Prlimit(0, resource, nil, rlim) | ||||
| 	if err != ENOSYS { | ||||
| 		return err | ||||
| 	} | ||||
|  | @ -171,7 +167,7 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) { | |||
| //sysnb	setrlimit(resource int, rlim *rlimit32) (err error) = SYS_SETRLIMIT
 | ||||
| 
 | ||||
| func Setrlimit(resource int, rlim *Rlimit) (err error) { | ||||
| 	err = prlimit(0, resource, rlim, nil) | ||||
| 	err = Prlimit(0, resource, rlim, nil) | ||||
| 	if err != ENOSYS { | ||||
| 		return err | ||||
| 	} | ||||
|  | @ -219,41 +215,6 @@ func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { | |||
| 	rsa.Service_name_len = uint32(length) | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe(p *[2]_C_int) (err error)
 | ||||
| 
 | ||||
| func Pipe(p []int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe(&pp) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe2(p *[2]_C_int, flags int) (err error)
 | ||||
| 
 | ||||
| func Pipe2(p []int, flags int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe2(&pp, flags) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| //sys	poll(fds *PollFd, nfds int, timeout int) (n int, err error)
 | ||||
| 
 | ||||
| func Poll(fds []PollFd, timeout int) (n int, err error) { | ||||
| 	if len(fds) == 0 { | ||||
| 		return poll(nil, 0, timeout) | ||||
| 	} | ||||
| 	return poll(&fds[0], len(fds), timeout) | ||||
| } | ||||
| 
 | ||||
| //sys	syncFileRange2(fd int, flags int, off int64, n int64) (err error) = SYS_SYNC_FILE_RANGE2
 | ||||
| 
 | ||||
| func SyncFileRange(fd int, off int64, n int64, flags int) error { | ||||
|  |  | |||
|  | @ -8,8 +8,6 @@ | |||
| 
 | ||||
| package unix | ||||
| 
 | ||||
| //sys	dup2(oldfd int, newfd int) (err error)
 | ||||
| //sysnb	EpollCreate(size int) (fd int, err error)
 | ||||
| //sys	EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
 | ||||
| //sys	Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
 | ||||
| //sys	Fchown(fd int, uid int, gid int) (err error)
 | ||||
|  | @ -22,7 +20,6 @@ package unix | |||
| //sysnb	Getgid() (gid int)
 | ||||
| //sysnb	Getrlimit(resource int, rlim *Rlimit) (err error) = SYS_UGETRLIMIT
 | ||||
| //sysnb	Getuid() (uid int)
 | ||||
| //sysnb	InotifyInit() (fd int, err error)
 | ||||
| //sys	Ioperm(from int, num int, on int) (err error)
 | ||||
| //sys	Iopl(level int) (err error)
 | ||||
| //sys	Lchown(path string, uid int, gid int) (err error)
 | ||||
|  | @ -104,41 +101,6 @@ func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { | |||
| 	rsa.Service_name_len = uint64(length) | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe(p *[2]_C_int) (err error)
 | ||||
| 
 | ||||
| func Pipe(p []int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe(&pp) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe2(p *[2]_C_int, flags int) (err error)
 | ||||
| 
 | ||||
| func Pipe2(p []int, flags int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe2(&pp, flags) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| //sys	poll(fds *PollFd, nfds int, timeout int) (n int, err error)
 | ||||
| 
 | ||||
| func Poll(fds []PollFd, timeout int) (n int, err error) { | ||||
| 	if len(fds) == 0 { | ||||
| 		return poll(nil, 0, timeout) | ||||
| 	} | ||||
| 	return poll(&fds[0], len(fds), timeout) | ||||
| } | ||||
| 
 | ||||
| //sys	syncFileRange2(fd int, flags int, off int64, n int64) (err error) = SYS_SYNC_FILE_RANGE2
 | ||||
| 
 | ||||
| func SyncFileRange(fd int, off int64, n int64, flags int) error { | ||||
|  |  | |||
|  | @ -9,13 +9,6 @@ package unix | |||
| 
 | ||||
| import "unsafe" | ||||
| 
 | ||||
| func EpollCreate(size int) (fd int, err error) { | ||||
| 	if size <= 0 { | ||||
| 		return -1, EINVAL | ||||
| 	} | ||||
| 	return EpollCreate1(0) | ||||
| } | ||||
| 
 | ||||
| //sys	EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) = SYS_EPOLL_PWAIT
 | ||||
| //sys	Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
 | ||||
| //sys	Fchown(fd int, uid int, gid int) (err error)
 | ||||
|  | @ -144,30 +137,6 @@ func utimes(path string, tv *[2]Timeval) (err error) { | |||
| 	return utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0) | ||||
| } | ||||
| 
 | ||||
| func Pipe(p []int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe2(&pp, 0) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe2(p *[2]_C_int, flags int) (err error)
 | ||||
| 
 | ||||
| func Pipe2(p []int, flags int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe2(&pp, flags) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| func (r *PtraceRegs) PC() uint64 { return r.Pc } | ||||
| 
 | ||||
| func (r *PtraceRegs) SetPC(pc uint64) { r.Pc = pc } | ||||
|  | @ -192,27 +161,11 @@ func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { | |||
| 	rsa.Service_name_len = uint64(length) | ||||
| } | ||||
| 
 | ||||
| func InotifyInit() (fd int, err error) { | ||||
| 	return InotifyInit1(0) | ||||
| } | ||||
| 
 | ||||
| func Pause() error { | ||||
| 	_, err := ppoll(nil, 0, nil, nil) | ||||
| 	return err | ||||
| } | ||||
| 
 | ||||
| func Poll(fds []PollFd, timeout int) (n int, err error) { | ||||
| 	var ts *Timespec | ||||
| 	if timeout >= 0 { | ||||
| 		ts = new(Timespec) | ||||
| 		*ts = NsecToTimespec(int64(timeout) * 1e6) | ||||
| 	} | ||||
| 	if len(fds) == 0 { | ||||
| 		return ppoll(nil, 0, ts, nil) | ||||
| 	} | ||||
| 	return ppoll(&fds[0], len(fds), ts, nil) | ||||
| } | ||||
| 
 | ||||
| func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) { | ||||
| 	return Renameat2(olddirfd, oldpath, newdirfd, newpath, 0) | ||||
| } | ||||
|  | @ -229,7 +182,3 @@ func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error | |||
| 	} | ||||
| 	return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags) | ||||
| } | ||||
| 
 | ||||
| // dup2 exists because func Dup3 in syscall_linux.go references
 | ||||
| // it in an unreachable path. dup2 isn't available on arm64.
 | ||||
| func dup2(oldfd int, newfd int) error | ||||
|  |  | |||
|  | @ -11,8 +11,6 @@ import ( | |||
| 	"unsafe" | ||||
| ) | ||||
| 
 | ||||
| //sys	dup2(oldfd int, newfd int) (err error)
 | ||||
| //sysnb	EpollCreate(size int) (fd int, err error)
 | ||||
| //sys	EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
 | ||||
| //sys	Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
 | ||||
| //sys	Fchown(fd int, uid int, gid int) (err error)
 | ||||
|  | @ -25,7 +23,6 @@ import ( | |||
| //sysnb	Getgid() (gid int)
 | ||||
| //sysnb	Getrlimit(resource int, rlim *Rlimit) (err error)
 | ||||
| //sysnb	Getuid() (uid int)
 | ||||
| //sysnb	InotifyInit() (fd int, err error)
 | ||||
| //sys	Lchown(path string, uid int, gid int) (err error)
 | ||||
| //sys	Lstat(path string, stat *Stat_t) (err error)
 | ||||
| //sys	Pause() (err error)
 | ||||
|  | @ -77,30 +74,6 @@ func setTimeval(sec, usec int64) Timeval { | |||
| 	return Timeval{Sec: sec, Usec: usec} | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe2(p *[2]_C_int, flags int) (err error)
 | ||||
| 
 | ||||
| func Pipe(p []int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe2(&pp, 0) // pipe2 is the same as pipe when flags are set to 0.
 | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| func Pipe2(p []int, flags int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe2(&pp, flags) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| func Ioperm(from int, num int, on int) (err error) { | ||||
| 	return ENOSYS | ||||
| } | ||||
|  | @ -324,15 +297,6 @@ func Shutdown(s, how int) error { | |||
| 	return nil | ||||
| } | ||||
| 
 | ||||
| //sys	poll(fds *PollFd, nfds int, timeout int) (n int, err error)
 | ||||
| 
 | ||||
| func Poll(fds []PollFd, timeout int) (n int, err error) { | ||||
| 	if len(fds) == 0 { | ||||
| 		return poll(nil, 0, timeout) | ||||
| 	} | ||||
| 	return poll(&fds[0], len(fds), timeout) | ||||
| } | ||||
| 
 | ||||
| //sys	kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error)
 | ||||
| 
 | ||||
| func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error { | ||||
|  |  | |||
|  | @ -9,7 +9,6 @@ package unix | |||
| 
 | ||||
| //sys	EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error)
 | ||||
| //sys	Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64
 | ||||
| //sys	dup2(oldfd int, newfd int) (err error)
 | ||||
| //sys	Fchown(fd int, uid int, gid int) (err error)
 | ||||
| //sys	Fstat(fd int, stat *Stat_t) (err error)
 | ||||
| //sys	Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64
 | ||||
|  | @ -20,7 +19,6 @@ package unix | |||
| //sysnb	Getgid() (gid int)
 | ||||
| //sysnb	Getrlimit(resource int, rlim *Rlimit) (err error)
 | ||||
| //sysnb	Getuid() (uid int)
 | ||||
| //sysnb	InotifyInit() (fd int, err error)
 | ||||
| //sys	Lchown(path string, uid int, gid int) (err error)
 | ||||
| //sys	Listen(s int, n int) (err error)
 | ||||
| //sys	Lstat(path string, stat *Stat_t) (err error)
 | ||||
|  | @ -119,38 +117,3 @@ func (cmsg *Cmsghdr) SetLen(length int) { | |||
| func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { | ||||
| 	rsa.Service_name_len = uint64(length) | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe(p *[2]_C_int) (err error)
 | ||||
| 
 | ||||
| func Pipe(p []int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe(&pp) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe2(p *[2]_C_int, flags int) (err error)
 | ||||
| 
 | ||||
| func Pipe2(p []int, flags int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe2(&pp, flags) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| //sys	poll(fds *PollFd, nfds int, timeout int) (n int, err error)
 | ||||
| 
 | ||||
| func Poll(fds []PollFd, timeout int) (n int, err error) { | ||||
| 	if len(fds) == 0 { | ||||
| 		return poll(nil, 0, timeout) | ||||
| 	} | ||||
| 	return poll(&fds[0], len(fds), timeout) | ||||
| } | ||||
|  |  | |||
|  | @ -110,14 +110,8 @@ func direntNamlen(buf []byte) (uint64, bool) { | |||
| 	return readInt(buf, unsafe.Offsetof(Dirent{}.Namlen), unsafe.Sizeof(Dirent{}.Namlen)) | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe() (fd1 int, fd2 int, err error)
 | ||||
| 
 | ||||
| func Pipe(p []int) (err error) { | ||||
| 	if len(p) != 2 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 	p[0], p[1], err = pipe() | ||||
| 	return | ||||
| 	return Pipe2(p, 0) | ||||
| } | ||||
| 
 | ||||
| //sysnb	pipe2(p *[2]_C_int, flags int) (err error)
 | ||||
|  | @ -128,8 +122,10 @@ func Pipe2(p []int, flags int) error { | |||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err := pipe2(&pp, flags) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	if err == nil { | ||||
| 		p[0] = int(pp[0]) | ||||
| 		p[1] = int(pp[1]) | ||||
| 	} | ||||
| 	return err | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -87,8 +87,10 @@ func Pipe2(p []int, flags int) error { | |||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err := pipe2(&pp, flags) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	if err == nil { | ||||
| 		p[0] = int(pp[0]) | ||||
| 		p[1] = int(pp[1]) | ||||
| 	} | ||||
| 	return err | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -13,7 +13,10 @@ | |||
| package unix | ||||
| 
 | ||||
| import ( | ||||
| 	"fmt" | ||||
| 	"os" | ||||
| 	"runtime" | ||||
| 	"sync" | ||||
| 	"syscall" | ||||
| 	"unsafe" | ||||
| ) | ||||
|  | @ -63,8 +66,10 @@ func Pipe(p []int) (err error) { | |||
| 	if n != 0 { | ||||
| 		return err | ||||
| 	} | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	if err == nil { | ||||
| 		p[0] = int(pp[0]) | ||||
| 		p[1] = int(pp[1]) | ||||
| 	} | ||||
| 	return nil | ||||
| } | ||||
| 
 | ||||
|  | @ -76,8 +81,10 @@ func Pipe2(p []int, flags int) error { | |||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err := pipe2(&pp, flags) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	if err == nil { | ||||
| 		p[0] = int(pp[0]) | ||||
| 		p[1] = int(pp[1]) | ||||
| 	} | ||||
| 	return err | ||||
| } | ||||
| 
 | ||||
|  | @ -89,9 +96,7 @@ func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) { | |||
| 	p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port)) | ||||
| 	p[0] = byte(sa.Port >> 8) | ||||
| 	p[1] = byte(sa.Port) | ||||
| 	for i := 0; i < len(sa.Addr); i++ { | ||||
| 		sa.raw.Addr[i] = sa.Addr[i] | ||||
| 	} | ||||
| 	sa.raw.Addr = sa.Addr | ||||
| 	return unsafe.Pointer(&sa.raw), SizeofSockaddrInet4, nil | ||||
| } | ||||
| 
 | ||||
|  | @ -104,9 +109,7 @@ func (sa *SockaddrInet6) sockaddr() (unsafe.Pointer, _Socklen, error) { | |||
| 	p[0] = byte(sa.Port >> 8) | ||||
| 	p[1] = byte(sa.Port) | ||||
| 	sa.raw.Scope_id = sa.ZoneId | ||||
| 	for i := 0; i < len(sa.Addr); i++ { | ||||
| 		sa.raw.Addr[i] = sa.Addr[i] | ||||
| 	} | ||||
| 	sa.raw.Addr = sa.Addr | ||||
| 	return unsafe.Pointer(&sa.raw), SizeofSockaddrInet6, nil | ||||
| } | ||||
| 
 | ||||
|  | @ -414,9 +417,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { | |||
| 		sa := new(SockaddrInet4) | ||||
| 		p := (*[2]byte)(unsafe.Pointer(&pp.Port)) | ||||
| 		sa.Port = int(p[0])<<8 + int(p[1]) | ||||
| 		for i := 0; i < len(sa.Addr); i++ { | ||||
| 			sa.Addr[i] = pp.Addr[i] | ||||
| 		} | ||||
| 		sa.Addr = pp.Addr | ||||
| 		return sa, nil | ||||
| 
 | ||||
| 	case AF_INET6: | ||||
|  | @ -425,9 +426,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { | |||
| 		p := (*[2]byte)(unsafe.Pointer(&pp.Port)) | ||||
| 		sa.Port = int(p[0])<<8 + int(p[1]) | ||||
| 		sa.ZoneId = pp.Scope_id | ||||
| 		for i := 0; i < len(sa.Addr); i++ { | ||||
| 			sa.Addr[i] = pp.Addr[i] | ||||
| 		} | ||||
| 		sa.Addr = pp.Addr | ||||
| 		return sa, nil | ||||
| 	} | ||||
| 	return nil, EAFNOSUPPORT | ||||
|  | @ -744,3 +743,240 @@ func Mmap(fd int, offset int64, length int, prot int, flags int) (data []byte, e | |||
| func Munmap(b []byte) (err error) { | ||||
| 	return mapper.Munmap(b) | ||||
| } | ||||
| 
 | ||||
| // Event Ports
 | ||||
| 
 | ||||
| type fileObjCookie struct { | ||||
| 	fobj   *fileObj | ||||
| 	cookie interface{} | ||||
| } | ||||
| 
 | ||||
| // EventPort provides a safe abstraction on top of Solaris/illumos Event Ports.
 | ||||
| type EventPort struct { | ||||
| 	port  int | ||||
| 	mu    sync.Mutex | ||||
| 	fds   map[uintptr]interface{} | ||||
| 	paths map[string]*fileObjCookie | ||||
| } | ||||
| 
 | ||||
| // PortEvent is an abstraction of the port_event C struct.
 | ||||
| // Compare Source against PORT_SOURCE_FILE or PORT_SOURCE_FD
 | ||||
| // to see if Path or Fd was the event source. The other will be
 | ||||
| // uninitialized.
 | ||||
| type PortEvent struct { | ||||
| 	Cookie interface{} | ||||
| 	Events int32 | ||||
| 	Fd     uintptr | ||||
| 	Path   string | ||||
| 	Source uint16 | ||||
| 	fobj   *fileObj | ||||
| } | ||||
| 
 | ||||
| // NewEventPort creates a new EventPort including the
 | ||||
| // underlying call to port_create(3c).
 | ||||
| func NewEventPort() (*EventPort, error) { | ||||
| 	port, err := port_create() | ||||
| 	if err != nil { | ||||
| 		return nil, err | ||||
| 	} | ||||
| 	e := &EventPort{ | ||||
| 		port:  port, | ||||
| 		fds:   make(map[uintptr]interface{}), | ||||
| 		paths: make(map[string]*fileObjCookie), | ||||
| 	} | ||||
| 	return e, nil | ||||
| } | ||||
| 
 | ||||
| //sys	port_create() (n int, err error)
 | ||||
| //sys	port_associate(port int, source int, object uintptr, events int, user *byte) (n int, err error)
 | ||||
| //sys	port_dissociate(port int, source int, object uintptr) (n int, err error)
 | ||||
| //sys	port_get(port int, pe *portEvent, timeout *Timespec) (n int, err error)
 | ||||
| //sys	port_getn(port int, pe *portEvent, max uint32, nget *uint32, timeout *Timespec) (n int, err error)
 | ||||
| 
 | ||||
| // Close closes the event port.
 | ||||
| func (e *EventPort) Close() error { | ||||
| 	e.mu.Lock() | ||||
| 	defer e.mu.Unlock() | ||||
| 	e.fds = nil | ||||
| 	e.paths = nil | ||||
| 	return Close(e.port) | ||||
| } | ||||
| 
 | ||||
| // PathIsWatched checks to see if path is associated with this EventPort.
 | ||||
| func (e *EventPort) PathIsWatched(path string) bool { | ||||
| 	e.mu.Lock() | ||||
| 	defer e.mu.Unlock() | ||||
| 	_, found := e.paths[path] | ||||
| 	return found | ||||
| } | ||||
| 
 | ||||
| // FdIsWatched checks to see if fd is associated with this EventPort.
 | ||||
| func (e *EventPort) FdIsWatched(fd uintptr) bool { | ||||
| 	e.mu.Lock() | ||||
| 	defer e.mu.Unlock() | ||||
| 	_, found := e.fds[fd] | ||||
| 	return found | ||||
| } | ||||
| 
 | ||||
| // AssociatePath wraps port_associate(3c) for a filesystem path including
 | ||||
| // creating the necessary file_obj from the provided stat information.
 | ||||
| func (e *EventPort) AssociatePath(path string, stat os.FileInfo, events int, cookie interface{}) error { | ||||
| 	e.mu.Lock() | ||||
| 	defer e.mu.Unlock() | ||||
| 	if _, found := e.paths[path]; found { | ||||
| 		return fmt.Errorf("%v is already associated with this Event Port", path) | ||||
| 	} | ||||
| 	fobj, err := createFileObj(path, stat) | ||||
| 	if err != nil { | ||||
| 		return err | ||||
| 	} | ||||
| 	fCookie := &fileObjCookie{fobj, cookie} | ||||
| 	_, err = port_associate(e.port, PORT_SOURCE_FILE, uintptr(unsafe.Pointer(fobj)), events, (*byte)(unsafe.Pointer(&fCookie.cookie))) | ||||
| 	if err != nil { | ||||
| 		return err | ||||
| 	} | ||||
| 	e.paths[path] = fCookie | ||||
| 	return nil | ||||
| } | ||||
| 
 | ||||
| // DissociatePath wraps port_dissociate(3c) for a filesystem path.
 | ||||
| func (e *EventPort) DissociatePath(path string) error { | ||||
| 	e.mu.Lock() | ||||
| 	defer e.mu.Unlock() | ||||
| 	f, ok := e.paths[path] | ||||
| 	if !ok { | ||||
| 		return fmt.Errorf("%v is not associated with this Event Port", path) | ||||
| 	} | ||||
| 	_, err := port_dissociate(e.port, PORT_SOURCE_FILE, uintptr(unsafe.Pointer(f.fobj))) | ||||
| 	if err != nil { | ||||
| 		return err | ||||
| 	} | ||||
| 	delete(e.paths, path) | ||||
| 	return nil | ||||
| } | ||||
| 
 | ||||
| // AssociateFd wraps calls to port_associate(3c) on file descriptors.
 | ||||
| func (e *EventPort) AssociateFd(fd uintptr, events int, cookie interface{}) error { | ||||
| 	e.mu.Lock() | ||||
| 	defer e.mu.Unlock() | ||||
| 	if _, found := e.fds[fd]; found { | ||||
| 		return fmt.Errorf("%v is already associated with this Event Port", fd) | ||||
| 	} | ||||
| 	pcookie := &cookie | ||||
| 	_, err := port_associate(e.port, PORT_SOURCE_FD, fd, events, (*byte)(unsafe.Pointer(pcookie))) | ||||
| 	if err != nil { | ||||
| 		return err | ||||
| 	} | ||||
| 	e.fds[fd] = pcookie | ||||
| 	return nil | ||||
| } | ||||
| 
 | ||||
| // DissociateFd wraps calls to port_dissociate(3c) on file descriptors.
 | ||||
| func (e *EventPort) DissociateFd(fd uintptr) error { | ||||
| 	e.mu.Lock() | ||||
| 	defer e.mu.Unlock() | ||||
| 	_, ok := e.fds[fd] | ||||
| 	if !ok { | ||||
| 		return fmt.Errorf("%v is not associated with this Event Port", fd) | ||||
| 	} | ||||
| 	_, err := port_dissociate(e.port, PORT_SOURCE_FD, fd) | ||||
| 	if err != nil { | ||||
| 		return err | ||||
| 	} | ||||
| 	delete(e.fds, fd) | ||||
| 	return nil | ||||
| } | ||||
| 
 | ||||
| func createFileObj(name string, stat os.FileInfo) (*fileObj, error) { | ||||
| 	fobj := new(fileObj) | ||||
| 	bs, err := ByteSliceFromString(name) | ||||
| 	if err != nil { | ||||
| 		return nil, err | ||||
| 	} | ||||
| 	fobj.Name = (*int8)(unsafe.Pointer(&bs[0])) | ||||
| 	s := stat.Sys().(*syscall.Stat_t) | ||||
| 	fobj.Atim.Sec = s.Atim.Sec | ||||
| 	fobj.Atim.Nsec = s.Atim.Nsec | ||||
| 	fobj.Mtim.Sec = s.Mtim.Sec | ||||
| 	fobj.Mtim.Nsec = s.Mtim.Nsec | ||||
| 	fobj.Ctim.Sec = s.Ctim.Sec | ||||
| 	fobj.Ctim.Nsec = s.Ctim.Nsec | ||||
| 	return fobj, nil | ||||
| } | ||||
| 
 | ||||
| // GetOne wraps port_get(3c) and returns a single PortEvent.
 | ||||
| func (e *EventPort) GetOne(t *Timespec) (*PortEvent, error) { | ||||
| 	pe := new(portEvent) | ||||
| 	_, err := port_get(e.port, pe, t) | ||||
| 	if err != nil { | ||||
| 		return nil, err | ||||
| 	} | ||||
| 	p := new(PortEvent) | ||||
| 	p.Events = pe.Events | ||||
| 	p.Source = pe.Source | ||||
| 	e.mu.Lock() | ||||
| 	defer e.mu.Unlock() | ||||
| 	switch pe.Source { | ||||
| 	case PORT_SOURCE_FD: | ||||
| 		p.Fd = uintptr(pe.Object) | ||||
| 		cookie := (*interface{})(unsafe.Pointer(pe.User)) | ||||
| 		p.Cookie = *cookie | ||||
| 		delete(e.fds, p.Fd) | ||||
| 	case PORT_SOURCE_FILE: | ||||
| 		p.fobj = (*fileObj)(unsafe.Pointer(uintptr(pe.Object))) | ||||
| 		p.Path = BytePtrToString((*byte)(unsafe.Pointer(p.fobj.Name))) | ||||
| 		cookie := (*interface{})(unsafe.Pointer(pe.User)) | ||||
| 		p.Cookie = *cookie | ||||
| 		delete(e.paths, p.Path) | ||||
| 	} | ||||
| 	return p, nil | ||||
| } | ||||
| 
 | ||||
| // Pending wraps port_getn(3c) and returns how many events are pending.
 | ||||
| func (e *EventPort) Pending() (int, error) { | ||||
| 	var n uint32 = 0 | ||||
| 	_, err := port_getn(e.port, nil, 0, &n, nil) | ||||
| 	return int(n), err | ||||
| } | ||||
| 
 | ||||
| // Get wraps port_getn(3c) and fills a slice of PortEvent.
 | ||||
| // It will block until either min events have been received
 | ||||
| // or the timeout has been exceeded. It will return how many
 | ||||
| // events were actually received along with any error information.
 | ||||
| func (e *EventPort) Get(s []PortEvent, min int, timeout *Timespec) (int, error) { | ||||
| 	if min == 0 { | ||||
| 		return 0, fmt.Errorf("need to request at least one event or use Pending() instead") | ||||
| 	} | ||||
| 	if len(s) < min { | ||||
| 		return 0, fmt.Errorf("len(s) (%d) is less than min events requested (%d)", len(s), min) | ||||
| 	} | ||||
| 	got := uint32(min) | ||||
| 	max := uint32(len(s)) | ||||
| 	var err error | ||||
| 	ps := make([]portEvent, max, max) | ||||
| 	_, err = port_getn(e.port, &ps[0], max, &got, timeout) | ||||
| 	// got will be trustworthy with ETIME, but not any other error.
 | ||||
| 	if err != nil && err != ETIME { | ||||
| 		return 0, err | ||||
| 	} | ||||
| 	e.mu.Lock() | ||||
| 	defer e.mu.Unlock() | ||||
| 	for i := 0; i < int(got); i++ { | ||||
| 		s[i].Events = ps[i].Events | ||||
| 		s[i].Source = ps[i].Source | ||||
| 		switch ps[i].Source { | ||||
| 		case PORT_SOURCE_FD: | ||||
| 			s[i].Fd = uintptr(ps[i].Object) | ||||
| 			cookie := (*interface{})(unsafe.Pointer(ps[i].User)) | ||||
| 			s[i].Cookie = *cookie | ||||
| 			delete(e.fds, s[i].Fd) | ||||
| 		case PORT_SOURCE_FILE: | ||||
| 			s[i].fobj = (*fileObj)(unsafe.Pointer(uintptr(ps[i].Object))) | ||||
| 			s[i].Path = BytePtrToString((*byte)(unsafe.Pointer(s[i].fobj.Name))) | ||||
| 			cookie := (*interface{})(unsafe.Pointer(ps[i].User)) | ||||
| 			s[i].Cookie = *cookie | ||||
| 			delete(e.paths, s[i].Path) | ||||
| 		} | ||||
| 	} | ||||
| 	return int(got), err | ||||
| } | ||||
|  |  | |||
|  | @ -313,6 +313,10 @@ func Recvfrom(fd int, p []byte, flags int) (n int, from Sockaddr, err error) { | |||
| 	return | ||||
| } | ||||
| 
 | ||||
| func Send(s int, buf []byte, flags int) (err error) { | ||||
| 	return sendto(s, buf, flags, nil, 0) | ||||
| } | ||||
| 
 | ||||
| func Sendto(fd int, p []byte, flags int, to Sockaddr) (err error) { | ||||
| 	ptr, n, err := to.sockaddr() | ||||
| 	if err != nil { | ||||
|  |  | |||
|  | @ -67,9 +67,7 @@ func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) { | |||
| 	p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port)) | ||||
| 	p[0] = byte(sa.Port >> 8) | ||||
| 	p[1] = byte(sa.Port) | ||||
| 	for i := 0; i < len(sa.Addr); i++ { | ||||
| 		sa.raw.Addr[i] = sa.Addr[i] | ||||
| 	} | ||||
| 	sa.raw.Addr = sa.Addr | ||||
| 	return unsafe.Pointer(&sa.raw), _Socklen(sa.raw.Len), nil | ||||
| } | ||||
| 
 | ||||
|  | @ -83,9 +81,7 @@ func (sa *SockaddrInet6) sockaddr() (unsafe.Pointer, _Socklen, error) { | |||
| 	p[0] = byte(sa.Port >> 8) | ||||
| 	p[1] = byte(sa.Port) | ||||
| 	sa.raw.Scope_id = sa.ZoneId | ||||
| 	for i := 0; i < len(sa.Addr); i++ { | ||||
| 		sa.raw.Addr[i] = sa.Addr[i] | ||||
| 	} | ||||
| 	sa.raw.Addr = sa.Addr | ||||
| 	return unsafe.Pointer(&sa.raw), _Socklen(sa.raw.Len), nil | ||||
| } | ||||
| 
 | ||||
|  | @ -144,9 +140,7 @@ func anyToSockaddr(_ int, rsa *RawSockaddrAny) (Sockaddr, error) { | |||
| 		sa := new(SockaddrInet4) | ||||
| 		p := (*[2]byte)(unsafe.Pointer(&pp.Port)) | ||||
| 		sa.Port = int(p[0])<<8 + int(p[1]) | ||||
| 		for i := 0; i < len(sa.Addr); i++ { | ||||
| 			sa.Addr[i] = pp.Addr[i] | ||||
| 		} | ||||
| 		sa.Addr = pp.Addr | ||||
| 		return sa, nil | ||||
| 
 | ||||
| 	case AF_INET6: | ||||
|  | @ -155,9 +149,7 @@ func anyToSockaddr(_ int, rsa *RawSockaddrAny) (Sockaddr, error) { | |||
| 		p := (*[2]byte)(unsafe.Pointer(&pp.Port)) | ||||
| 		sa.Port = int(p[0])<<8 + int(p[1]) | ||||
| 		sa.ZoneId = pp.Scope_id | ||||
| 		for i := 0; i < len(sa.Addr); i++ { | ||||
| 			sa.Addr[i] = pp.Addr[i] | ||||
| 		} | ||||
| 		sa.Addr = pp.Addr | ||||
| 		return sa, nil | ||||
| 	} | ||||
| 	return nil, EAFNOSUPPORT | ||||
|  | @ -587,8 +579,10 @@ func Pipe(p []int) (err error) { | |||
| 	} | ||||
| 	var pp [2]_C_int | ||||
| 	err = pipe(&pp) | ||||
| 	p[0] = int(pp[0]) | ||||
| 	p[1] = int(pp[1]) | ||||
| 	if err == nil { | ||||
| 		p[0] = int(pp[0]) | ||||
| 		p[1] = int(pp[1]) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -0,0 +1,21 @@ | |||
| // 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 linux
 | ||||
| // +build linux
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
| import "runtime" | ||||
| 
 | ||||
| // SysvShmCtl performs control operations on the shared memory segment
 | ||||
| // specified by id.
 | ||||
| func SysvShmCtl(id, cmd int, desc *SysvShmDesc) (result int, err error) { | ||||
| 	if runtime.GOARCH == "arm" || | ||||
| 		runtime.GOARCH == "mips64" || runtime.GOARCH == "mips64le" { | ||||
| 		cmd |= ipc_64 | ||||
| 	} | ||||
| 
 | ||||
| 	return shmctl(id, cmd, desc) | ||||
| } | ||||
|  | @ -0,0 +1,61 @@ | |||
| // 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 && !ios) || linux
 | ||||
| // +build darwin,!ios linux
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
| import ( | ||||
| 	"unsafe" | ||||
| 
 | ||||
| 	"golang.org/x/sys/internal/unsafeheader" | ||||
| ) | ||||
| 
 | ||||
| // SysvShmAttach attaches the Sysv shared memory segment associated with the
 | ||||
| // shared memory identifier id.
 | ||||
| func SysvShmAttach(id int, addr uintptr, flag int) ([]byte, error) { | ||||
| 	addr, errno := shmat(id, addr, flag) | ||||
| 	if errno != nil { | ||||
| 		return nil, errno | ||||
| 	} | ||||
| 
 | ||||
| 	// Retrieve the size of the shared memory to enable slice creation
 | ||||
| 	var info SysvShmDesc | ||||
| 
 | ||||
| 	_, err := SysvShmCtl(id, IPC_STAT, &info) | ||||
| 	if err != nil { | ||||
| 		// release the shared memory if we can't find the size
 | ||||
| 
 | ||||
| 		// ignoring error from shmdt as there's nothing sensible to return here
 | ||||
| 		shmdt(addr) | ||||
| 		return nil, err | ||||
| 	} | ||||
| 
 | ||||
| 	// Use unsafe to convert addr into a []byte.
 | ||||
| 	// TODO: convert to unsafe.Slice once we can assume Go 1.17
 | ||||
| 	var b []byte | ||||
| 	hdr := (*unsafeheader.Slice)(unsafe.Pointer(&b)) | ||||
| 	hdr.Data = unsafe.Pointer(addr) | ||||
| 	hdr.Cap = int(info.Segsz) | ||||
| 	hdr.Len = int(info.Segsz) | ||||
| 	return b, nil | ||||
| } | ||||
| 
 | ||||
| // SysvShmDetach unmaps the shared memory slice returned from SysvShmAttach.
 | ||||
| //
 | ||||
| // It is not safe to use the slice after calling this function.
 | ||||
| func SysvShmDetach(data []byte) error { | ||||
| 	if len(data) == 0 { | ||||
| 		return EINVAL | ||||
| 	} | ||||
| 
 | ||||
| 	return shmdt(uintptr(unsafe.Pointer(&data[0]))) | ||||
| } | ||||
| 
 | ||||
| // SysvShmGet returns the Sysv shared memory identifier associated with key.
 | ||||
| // If the IPC_CREAT flag is specified a new segment is created.
 | ||||
| func SysvShmGet(key, size, flag int) (id int, err error) { | ||||
| 	return shmget(key, size, flag) | ||||
| } | ||||
|  | @ -0,0 +1,14 @@ | |||
| // 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 && !ios
 | ||||
| // +build darwin,!ios
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
| // SysvShmCtl performs control operations on the shared memory segment
 | ||||
| // specified by id.
 | ||||
| func SysvShmCtl(id, cmd int, desc *SysvShmDesc) (result int, err error) { | ||||
| 	return shmctl(id, cmd, desc) | ||||
| } | ||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							|  | @ -1297,6 +1297,11 @@ const ( | |||
| 	SCM_RIGHTS                     = 0x1 | ||||
| 	SCM_TIMESTAMP                  = 0x2 | ||||
| 	SCM_TIME_INFO                  = 0x7 | ||||
| 	SEEK_CUR                       = 0x1 | ||||
| 	SEEK_DATA                      = 0x3 | ||||
| 	SEEK_END                       = 0x2 | ||||
| 	SEEK_HOLE                      = 0x4 | ||||
| 	SEEK_SET                       = 0x0 | ||||
| 	SHUT_RD                        = 0x0 | ||||
| 	SHUT_RDWR                      = 0x2 | ||||
| 	SHUT_WR                        = 0x1 | ||||
|  |  | |||
|  | @ -1298,6 +1298,11 @@ const ( | |||
| 	SCM_RIGHTS                     = 0x1 | ||||
| 	SCM_TIMESTAMP                  = 0x2 | ||||
| 	SCM_TIME_INFO                  = 0x7 | ||||
| 	SEEK_CUR                       = 0x1 | ||||
| 	SEEK_DATA                      = 0x3 | ||||
| 	SEEK_END                       = 0x2 | ||||
| 	SEEK_HOLE                      = 0x4 | ||||
| 	SEEK_SET                       = 0x0 | ||||
| 	SHUT_RD                        = 0x0 | ||||
| 	SHUT_RDWR                      = 0x2 | ||||
| 	SHUT_WR                        = 0x1 | ||||
|  |  | |||
|  | @ -1276,6 +1276,11 @@ const ( | |||
| 	SCM_CREDS                      = 0x3 | ||||
| 	SCM_RIGHTS                     = 0x1 | ||||
| 	SCM_TIMESTAMP                  = 0x2 | ||||
| 	SEEK_CUR                       = 0x1 | ||||
| 	SEEK_DATA                      = 0x3 | ||||
| 	SEEK_END                       = 0x2 | ||||
| 	SEEK_HOLE                      = 0x4 | ||||
| 	SEEK_SET                       = 0x0 | ||||
| 	SHUT_RD                        = 0x0 | ||||
| 	SHUT_RDWR                      = 0x2 | ||||
| 	SHUT_WR                        = 0x1 | ||||
|  |  | |||
|  | @ -1298,6 +1298,11 @@ const ( | |||
| 	SCM_RIGHTS                     = 0x1 | ||||
| 	SCM_TIMESTAMP                  = 0x2 | ||||
| 	SCM_TIME_INFO                  = 0x7 | ||||
| 	SEEK_CUR                       = 0x1 | ||||
| 	SEEK_DATA                      = 0x3 | ||||
| 	SEEK_END                       = 0x2 | ||||
| 	SEEK_HOLE                      = 0x4 | ||||
| 	SEEK_SET                       = 0x0 | ||||
| 	SHUT_RD                        = 0x0 | ||||
| 	SHUT_RDWR                      = 0x2 | ||||
| 	SHUT_WR                        = 0x1 | ||||
|  |  | |||
|  | @ -1,4 +1,4 @@ | |||
| // Code generated by mkmerge.go; DO NOT EDIT.
 | ||||
| // Code generated by mkmerge; DO NOT EDIT.
 | ||||
| 
 | ||||
| //go:build linux
 | ||||
| // +build linux
 | ||||
|  | @ -116,6 +116,7 @@ const ( | |||
| 	ARPHRD_LAPB                                 = 0x204 | ||||
| 	ARPHRD_LOCALTLK                             = 0x305 | ||||
| 	ARPHRD_LOOPBACK                             = 0x304 | ||||
| 	ARPHRD_MCTP                                 = 0x122 | ||||
| 	ARPHRD_METRICOM                             = 0x17 | ||||
| 	ARPHRD_NETLINK                              = 0x338 | ||||
| 	ARPHRD_NETROM                               = 0x0 | ||||
|  | @ -228,7 +229,11 @@ const ( | |||
| 	BPF_OR                                      = 0x40 | ||||
| 	BPF_PSEUDO_BTF_ID                           = 0x3 | ||||
| 	BPF_PSEUDO_CALL                             = 0x1 | ||||
| 	BPF_PSEUDO_FUNC                             = 0x4 | ||||
| 	BPF_PSEUDO_KFUNC_CALL                       = 0x2 | ||||
| 	BPF_PSEUDO_MAP_FD                           = 0x1 | ||||
| 	BPF_PSEUDO_MAP_IDX                          = 0x5 | ||||
| 	BPF_PSEUDO_MAP_IDX_VALUE                    = 0x6 | ||||
| 	BPF_PSEUDO_MAP_VALUE                        = 0x2 | ||||
| 	BPF_RET                                     = 0x6 | ||||
| 	BPF_RSH                                     = 0x70 | ||||
|  | @ -468,6 +473,7 @@ const ( | |||
| 	DM_DEV_WAIT                                 = 0xc138fd08 | ||||
| 	DM_DIR                                      = "mapper" | ||||
| 	DM_GET_TARGET_VERSION                       = 0xc138fd11 | ||||
| 	DM_IMA_MEASUREMENT_FLAG                     = 0x80000 | ||||
| 	DM_INACTIVE_PRESENT_FLAG                    = 0x40 | ||||
| 	DM_INTERNAL_SUSPEND_FLAG                    = 0x40000 | ||||
| 	DM_IOCTL                                    = 0xfd | ||||
|  | @ -475,6 +481,8 @@ const ( | |||
| 	DM_LIST_VERSIONS                            = 0xc138fd0d | ||||
| 	DM_MAX_TYPE_NAME                            = 0x10 | ||||
| 	DM_NAME_LEN                                 = 0x80 | ||||
| 	DM_NAME_LIST_FLAG_DOESNT_HAVE_UUID          = 0x2 | ||||
| 	DM_NAME_LIST_FLAG_HAS_UUID                  = 0x1 | ||||
| 	DM_NOFLUSH_FLAG                             = 0x800 | ||||
| 	DM_PERSISTENT_DEV_FLAG                      = 0x8 | ||||
| 	DM_QUERY_INACTIVE_TABLE_FLAG                = 0x1000 | ||||
|  | @ -494,9 +502,9 @@ const ( | |||
| 	DM_UUID_FLAG                                = 0x4000 | ||||
| 	DM_UUID_LEN                                 = 0x81 | ||||
| 	DM_VERSION                                  = 0xc138fd00 | ||||
| 	DM_VERSION_EXTRA                            = "-ioctl (2021-02-01)" | ||||
| 	DM_VERSION_EXTRA                            = "-ioctl (2021-03-22)" | ||||
| 	DM_VERSION_MAJOR                            = 0x4 | ||||
| 	DM_VERSION_MINOR                            = 0x2c | ||||
| 	DM_VERSION_MINOR                            = 0x2d | ||||
| 	DM_VERSION_PATCHLEVEL                       = 0x0 | ||||
| 	DT_BLK                                      = 0x6 | ||||
| 	DT_CHR                                      = 0x2 | ||||
|  | @ -710,6 +718,7 @@ const ( | |||
| 	ETH_P_LOOPBACK                              = 0x9000 | ||||
| 	ETH_P_MACSEC                                = 0x88e5 | ||||
| 	ETH_P_MAP                                   = 0xf9 | ||||
| 	ETH_P_MCTP                                  = 0xfa | ||||
| 	ETH_P_MOBITEX                               = 0x15 | ||||
| 	ETH_P_MPLS_MC                               = 0x8848 | ||||
| 	ETH_P_MPLS_UC                               = 0x8847 | ||||
|  | @ -745,6 +754,21 @@ const ( | |||
| 	ETH_P_WCCP                                  = 0x883e | ||||
| 	ETH_P_X25                                   = 0x805 | ||||
| 	ETH_P_XDSA                                  = 0xf8 | ||||
| 	EV_ABS                                      = 0x3 | ||||
| 	EV_CNT                                      = 0x20 | ||||
| 	EV_FF                                       = 0x15 | ||||
| 	EV_FF_STATUS                                = 0x17 | ||||
| 	EV_KEY                                      = 0x1 | ||||
| 	EV_LED                                      = 0x11 | ||||
| 	EV_MAX                                      = 0x1f | ||||
| 	EV_MSC                                      = 0x4 | ||||
| 	EV_PWR                                      = 0x16 | ||||
| 	EV_REL                                      = 0x2 | ||||
| 	EV_REP                                      = 0x14 | ||||
| 	EV_SND                                      = 0x12 | ||||
| 	EV_SW                                       = 0x5 | ||||
| 	EV_SYN                                      = 0x0 | ||||
| 	EV_VERSION                                  = 0x10001 | ||||
| 	EXABYTE_ENABLE_NEST                         = 0xf0 | ||||
| 	EXT2_SUPER_MAGIC                            = 0xef53 | ||||
| 	EXT3_SUPER_MAGIC                            = 0xef53 | ||||
|  | @ -783,9 +807,11 @@ const ( | |||
| 	FAN_DELETE_SELF                             = 0x400 | ||||
| 	FAN_DENY                                    = 0x2 | ||||
| 	FAN_ENABLE_AUDIT                            = 0x40 | ||||
| 	FAN_EPIDFD                                  = -0x2 | ||||
| 	FAN_EVENT_INFO_TYPE_DFID                    = 0x3 | ||||
| 	FAN_EVENT_INFO_TYPE_DFID_NAME               = 0x2 | ||||
| 	FAN_EVENT_INFO_TYPE_FID                     = 0x1 | ||||
| 	FAN_EVENT_INFO_TYPE_PIDFD                   = 0x4 | ||||
| 	FAN_EVENT_METADATA_LEN                      = 0x18 | ||||
| 	FAN_EVENT_ON_CHILD                          = 0x8000000 | ||||
| 	FAN_MARK_ADD                                = 0x1 | ||||
|  | @ -805,6 +831,7 @@ const ( | |||
| 	FAN_MOVE_SELF                               = 0x800 | ||||
| 	FAN_NOFD                                    = -0x1 | ||||
| 	FAN_NONBLOCK                                = 0x2 | ||||
| 	FAN_NOPIDFD                                 = -0x1 | ||||
| 	FAN_ONDIR                                   = 0x40000000 | ||||
| 	FAN_OPEN                                    = 0x20 | ||||
| 	FAN_OPEN_EXEC                               = 0x1000 | ||||
|  | @ -815,6 +842,7 @@ const ( | |||
| 	FAN_REPORT_DIR_FID                          = 0x400 | ||||
| 	FAN_REPORT_FID                              = 0x200 | ||||
| 	FAN_REPORT_NAME                             = 0x800 | ||||
| 	FAN_REPORT_PIDFD                            = 0x80 | ||||
| 	FAN_REPORT_TID                              = 0x100 | ||||
| 	FAN_UNLIMITED_MARKS                         = 0x20 | ||||
| 	FAN_UNLIMITED_QUEUE                         = 0x10 | ||||
|  | @ -981,12 +1009,6 @@ const ( | |||
| 	HPFS_SUPER_MAGIC                            = 0xf995e849 | ||||
| 	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 | ||||
|  | @ -1257,6 +1279,7 @@ const ( | |||
| 	KEXEC_ARCH_PARISC                           = 0xf0000 | ||||
| 	KEXEC_ARCH_PPC                              = 0x140000 | ||||
| 	KEXEC_ARCH_PPC64                            = 0x150000 | ||||
| 	KEXEC_ARCH_RISCV                            = 0xf30000 | ||||
| 	KEXEC_ARCH_S390                             = 0x160000 | ||||
| 	KEXEC_ARCH_SH                               = 0x2a0000 | ||||
| 	KEXEC_ARCH_X86_64                           = 0x3e0000 | ||||
|  | @ -1332,6 +1355,20 @@ const ( | |||
| 	KEY_SPEC_THREAD_KEYRING                     = -0x1 | ||||
| 	KEY_SPEC_USER_KEYRING                       = -0x4 | ||||
| 	KEY_SPEC_USER_SESSION_KEYRING               = -0x5 | ||||
| 	LANDLOCK_ACCESS_FS_EXECUTE                  = 0x1 | ||||
| 	LANDLOCK_ACCESS_FS_MAKE_BLOCK               = 0x800 | ||||
| 	LANDLOCK_ACCESS_FS_MAKE_CHAR                = 0x40 | ||||
| 	LANDLOCK_ACCESS_FS_MAKE_DIR                 = 0x80 | ||||
| 	LANDLOCK_ACCESS_FS_MAKE_FIFO                = 0x400 | ||||
| 	LANDLOCK_ACCESS_FS_MAKE_REG                 = 0x100 | ||||
| 	LANDLOCK_ACCESS_FS_MAKE_SOCK                = 0x200 | ||||
| 	LANDLOCK_ACCESS_FS_MAKE_SYM                 = 0x1000 | ||||
| 	LANDLOCK_ACCESS_FS_READ_DIR                 = 0x8 | ||||
| 	LANDLOCK_ACCESS_FS_READ_FILE                = 0x4 | ||||
| 	LANDLOCK_ACCESS_FS_REMOVE_DIR               = 0x10 | ||||
| 	LANDLOCK_ACCESS_FS_REMOVE_FILE              = 0x20 | ||||
| 	LANDLOCK_ACCESS_FS_WRITE_FILE               = 0x2 | ||||
| 	LANDLOCK_CREATE_RULESET_VERSION             = 0x1 | ||||
| 	LINUX_REBOOT_CMD_CAD_OFF                    = 0x0 | ||||
| 	LINUX_REBOOT_CMD_CAD_ON                     = 0x89abcdef | ||||
| 	LINUX_REBOOT_CMD_HALT                       = 0xcdef0123 | ||||
|  | @ -1382,6 +1419,8 @@ const ( | |||
| 	MADV_NOHUGEPAGE                             = 0xf | ||||
| 	MADV_NORMAL                                 = 0x0 | ||||
| 	MADV_PAGEOUT                                = 0x15 | ||||
| 	MADV_POPULATE_READ                          = 0x16 | ||||
| 	MADV_POPULATE_WRITE                         = 0x17 | ||||
| 	MADV_RANDOM                                 = 0x1 | ||||
| 	MADV_REMOVE                                 = 0x9 | ||||
| 	MADV_SEQUENTIAL                             = 0x2 | ||||
|  | @ -1437,6 +1476,18 @@ const ( | |||
| 	MNT_FORCE                                   = 0x1 | ||||
| 	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1 | ||||
| 	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2 | ||||
| 	MOUNT_ATTR_IDMAP                            = 0x100000 | ||||
| 	MOUNT_ATTR_NOATIME                          = 0x10 | ||||
| 	MOUNT_ATTR_NODEV                            = 0x4 | ||||
| 	MOUNT_ATTR_NODIRATIME                       = 0x80 | ||||
| 	MOUNT_ATTR_NOEXEC                           = 0x8 | ||||
| 	MOUNT_ATTR_NOSUID                           = 0x2 | ||||
| 	MOUNT_ATTR_NOSYMFOLLOW                      = 0x200000 | ||||
| 	MOUNT_ATTR_RDONLY                           = 0x1 | ||||
| 	MOUNT_ATTR_RELATIME                         = 0x0 | ||||
| 	MOUNT_ATTR_SIZE_VER0                        = 0x20 | ||||
| 	MOUNT_ATTR_STRICTATIME                      = 0x20 | ||||
| 	MOUNT_ATTR__ATIME                           = 0x70 | ||||
| 	MSDOS_SUPER_MAGIC                           = 0x4d44 | ||||
| 	MSG_BATCH                                   = 0x40000 | ||||
| 	MSG_CMSG_CLOEXEC                            = 0x40000000 | ||||
|  | @ -1636,11 +1687,12 @@ const ( | |||
| 	NFNL_MSG_BATCH_END                          = 0x11 | ||||
| 	NFNL_NFA_NEST                               = 0x8000 | ||||
| 	NFNL_SUBSYS_ACCT                            = 0x7 | ||||
| 	NFNL_SUBSYS_COUNT                           = 0xc | ||||
| 	NFNL_SUBSYS_COUNT                           = 0xd | ||||
| 	NFNL_SUBSYS_CTHELPER                        = 0x9 | ||||
| 	NFNL_SUBSYS_CTNETLINK                       = 0x1 | ||||
| 	NFNL_SUBSYS_CTNETLINK_EXP                   = 0x2 | ||||
| 	NFNL_SUBSYS_CTNETLINK_TIMEOUT               = 0x8 | ||||
| 	NFNL_SUBSYS_HOOK                            = 0xc | ||||
| 	NFNL_SUBSYS_IPSET                           = 0x6 | ||||
| 	NFNL_SUBSYS_NFTABLES                        = 0xa | ||||
| 	NFNL_SUBSYS_NFT_COMPAT                      = 0xb | ||||
|  | @ -1756,14 +1808,19 @@ const ( | |||
| 	PERF_ATTR_SIZE_VER4                         = 0x68 | ||||
| 	PERF_ATTR_SIZE_VER5                         = 0x70 | ||||
| 	PERF_ATTR_SIZE_VER6                         = 0x78 | ||||
| 	PERF_ATTR_SIZE_VER7                         = 0x80 | ||||
| 	PERF_AUX_FLAG_COLLISION                     = 0x8 | ||||
| 	PERF_AUX_FLAG_CORESIGHT_FORMAT_CORESIGHT    = 0x0 | ||||
| 	PERF_AUX_FLAG_CORESIGHT_FORMAT_RAW          = 0x100 | ||||
| 	PERF_AUX_FLAG_OVERWRITE                     = 0x2 | ||||
| 	PERF_AUX_FLAG_PARTIAL                       = 0x4 | ||||
| 	PERF_AUX_FLAG_PMU_FORMAT_TYPE_MASK          = 0xff00 | ||||
| 	PERF_AUX_FLAG_TRUNCATED                     = 0x1 | ||||
| 	PERF_FLAG_FD_CLOEXEC                        = 0x8 | ||||
| 	PERF_FLAG_FD_NO_GROUP                       = 0x1 | ||||
| 	PERF_FLAG_FD_OUTPUT                         = 0x2 | ||||
| 	PERF_FLAG_PID_CGROUP                        = 0x4 | ||||
| 	PERF_HW_EVENT_MASK                          = 0xffffffff | ||||
| 	PERF_MAX_CONTEXTS_PER_STACK                 = 0x8 | ||||
| 	PERF_MAX_STACK_DEPTH                        = 0x7f | ||||
| 	PERF_MEM_BLK_ADDR                           = 0x4 | ||||
|  | @ -1822,6 +1879,7 @@ const ( | |||
| 	PERF_MEM_TLB_OS                             = 0x40 | ||||
| 	PERF_MEM_TLB_SHIFT                          = 0x1a | ||||
| 	PERF_MEM_TLB_WK                             = 0x20 | ||||
| 	PERF_PMU_TYPE_SHIFT                         = 0x20 | ||||
| 	PERF_RECORD_KSYMBOL_FLAGS_UNREGISTER        = 0x1 | ||||
| 	PERF_RECORD_MISC_COMM_EXEC                  = 0x2000 | ||||
| 	PERF_RECORD_MISC_CPUMODE_MASK               = 0x7 | ||||
|  | @ -1921,7 +1979,15 @@ const ( | |||
| 	PR_PAC_APGAKEY                              = 0x10 | ||||
| 	PR_PAC_APIAKEY                              = 0x1 | ||||
| 	PR_PAC_APIBKEY                              = 0x2 | ||||
| 	PR_PAC_GET_ENABLED_KEYS                     = 0x3d | ||||
| 	PR_PAC_RESET_KEYS                           = 0x36 | ||||
| 	PR_PAC_SET_ENABLED_KEYS                     = 0x3c | ||||
| 	PR_SCHED_CORE                               = 0x3e | ||||
| 	PR_SCHED_CORE_CREATE                        = 0x1 | ||||
| 	PR_SCHED_CORE_GET                           = 0x0 | ||||
| 	PR_SCHED_CORE_MAX                           = 0x4 | ||||
| 	PR_SCHED_CORE_SHARE_FROM                    = 0x3 | ||||
| 	PR_SCHED_CORE_SHARE_TO                      = 0x2 | ||||
| 	PR_SET_CHILD_SUBREAPER                      = 0x24 | ||||
| 	PR_SET_DUMPABLE                             = 0x4 | ||||
| 	PR_SET_ENDIAN                               = 0x14 | ||||
|  | @ -1965,6 +2031,7 @@ const ( | |||
| 	PR_SPEC_ENABLE                              = 0x2 | ||||
| 	PR_SPEC_FORCE_DISABLE                       = 0x8 | ||||
| 	PR_SPEC_INDIRECT_BRANCH                     = 0x1 | ||||
| 	PR_SPEC_L1D_FLUSH                           = 0x2 | ||||
| 	PR_SPEC_NOT_AFFECTED                        = 0x0 | ||||
| 	PR_SPEC_PRCTL                               = 0x1 | ||||
| 	PR_SPEC_STORE_BYPASS                        = 0x0 | ||||
|  | @ -2003,6 +2070,7 @@ const ( | |||
| 	PTRACE_GETREGSET                            = 0x4204 | ||||
| 	PTRACE_GETSIGINFO                           = 0x4202 | ||||
| 	PTRACE_GETSIGMASK                           = 0x420a | ||||
| 	PTRACE_GET_RSEQ_CONFIGURATION               = 0x420f | ||||
| 	PTRACE_GET_SYSCALL_INFO                     = 0x420e | ||||
| 	PTRACE_INTERRUPT                            = 0x4207 | ||||
| 	PTRACE_KILL                                 = 0x8 | ||||
|  | @ -2163,6 +2231,7 @@ const ( | |||
| 	RTM_DELNEIGH                                = 0x1d | ||||
| 	RTM_DELNETCONF                              = 0x51 | ||||
| 	RTM_DELNEXTHOP                              = 0x69 | ||||
| 	RTM_DELNEXTHOPBUCKET                        = 0x75 | ||||
| 	RTM_DELNSID                                 = 0x59 | ||||
| 	RTM_DELQDISC                                = 0x25 | ||||
| 	RTM_DELROUTE                                = 0x19 | ||||
|  | @ -2193,6 +2262,7 @@ const ( | |||
| 	RTM_GETNEIGHTBL                             = 0x42 | ||||
| 	RTM_GETNETCONF                              = 0x52 | ||||
| 	RTM_GETNEXTHOP                              = 0x6a | ||||
| 	RTM_GETNEXTHOPBUCKET                        = 0x76 | ||||
| 	RTM_GETNSID                                 = 0x5a | ||||
| 	RTM_GETQDISC                                = 0x26 | ||||
| 	RTM_GETROUTE                                = 0x1a | ||||
|  | @ -2201,7 +2271,7 @@ const ( | |||
| 	RTM_GETTCLASS                               = 0x2a | ||||
| 	RTM_GETTFILTER                              = 0x2e | ||||
| 	RTM_GETVLAN                                 = 0x72 | ||||
| 	RTM_MAX                                     = 0x73 | ||||
| 	RTM_MAX                                     = 0x77 | ||||
| 	RTM_NEWACTION                               = 0x30 | ||||
| 	RTM_NEWADDR                                 = 0x14 | ||||
| 	RTM_NEWADDRLABEL                            = 0x48 | ||||
|  | @ -2215,6 +2285,7 @@ const ( | |||
| 	RTM_NEWNEIGHTBL                             = 0x40 | ||||
| 	RTM_NEWNETCONF                              = 0x50 | ||||
| 	RTM_NEWNEXTHOP                              = 0x68 | ||||
| 	RTM_NEWNEXTHOPBUCKET                        = 0x74 | ||||
| 	RTM_NEWNSID                                 = 0x58 | ||||
| 	RTM_NEWNVLAN                                = 0x70 | ||||
| 	RTM_NEWPREFIX                               = 0x34 | ||||
|  | @ -2224,8 +2295,8 @@ const ( | |||
| 	RTM_NEWSTATS                                = 0x5c | ||||
| 	RTM_NEWTCLASS                               = 0x28 | ||||
| 	RTM_NEWTFILTER                              = 0x2c | ||||
| 	RTM_NR_FAMILIES                             = 0x19 | ||||
| 	RTM_NR_MSGTYPES                             = 0x64 | ||||
| 	RTM_NR_FAMILIES                             = 0x1a | ||||
| 	RTM_NR_MSGTYPES                             = 0x68 | ||||
| 	RTM_SETDCB                                  = 0x4f | ||||
| 	RTM_SETLINK                                 = 0x13 | ||||
| 	RTM_SETNEIGHTBL                             = 0x43 | ||||
|  | @ -2253,6 +2324,7 @@ const ( | |||
| 	RTPROT_MROUTED                              = 0x11 | ||||
| 	RTPROT_MRT                                  = 0xa | ||||
| 	RTPROT_NTK                                  = 0xf | ||||
| 	RTPROT_OPENR                                = 0x63 | ||||
| 	RTPROT_OSPF                                 = 0xbc | ||||
| 	RTPROT_RA                                   = 0x9 | ||||
| 	RTPROT_REDIRECT                             = 0x1 | ||||
|  | @ -2283,7 +2355,14 @@ const ( | |||
| 	SECCOMP_MODE_DISABLED                       = 0x0 | ||||
| 	SECCOMP_MODE_FILTER                         = 0x2 | ||||
| 	SECCOMP_MODE_STRICT                         = 0x1 | ||||
| 	SECRETMEM_MAGIC                             = 0x5345434d | ||||
| 	SECURITYFS_MAGIC                            = 0x73636673 | ||||
| 	SEEK_CUR                                    = 0x1 | ||||
| 	SEEK_DATA                                   = 0x3 | ||||
| 	SEEK_END                                    = 0x2 | ||||
| 	SEEK_HOLE                                   = 0x4 | ||||
| 	SEEK_MAX                                    = 0x4 | ||||
| 	SEEK_SET                                    = 0x0 | ||||
| 	SELINUX_MAGIC                               = 0xf97cff8c | ||||
| 	SHUT_RD                                     = 0x0 | ||||
| 	SHUT_RDWR                                   = 0x2 | ||||
|  | @ -2388,12 +2467,15 @@ const ( | |||
| 	SMART_WRITE_THRESHOLDS                      = 0xd7 | ||||
| 	SMB_SUPER_MAGIC                             = 0x517b | ||||
| 	SOCKFS_MAGIC                                = 0x534f434b | ||||
| 	SOCK_BUF_LOCK_MASK                          = 0x3 | ||||
| 	SOCK_DCCP                                   = 0x6 | ||||
| 	SOCK_IOC_TYPE                               = 0x89 | ||||
| 	SOCK_PACKET                                 = 0xa | ||||
| 	SOCK_RAW                                    = 0x3 | ||||
| 	SOCK_RCVBUF_LOCK                            = 0x2 | ||||
| 	SOCK_RDM                                    = 0x4 | ||||
| 	SOCK_SEQPACKET                              = 0x5 | ||||
| 	SOCK_SNDBUF_LOCK                            = 0x1 | ||||
| 	SOL_AAL                                     = 0x109 | ||||
| 	SOL_ALG                                     = 0x117 | ||||
| 	SOL_ATM                                     = 0x108 | ||||
|  | @ -2530,6 +2612,14 @@ const ( | |||
| 	TCOFLUSH                                    = 0x1 | ||||
| 	TCOOFF                                      = 0x0 | ||||
| 	TCOON                                       = 0x1 | ||||
| 	TCPOPT_EOL                                  = 0x0 | ||||
| 	TCPOPT_MAXSEG                               = 0x2 | ||||
| 	TCPOPT_NOP                                  = 0x1 | ||||
| 	TCPOPT_SACK                                 = 0x5 | ||||
| 	TCPOPT_SACK_PERMITTED                       = 0x4 | ||||
| 	TCPOPT_TIMESTAMP                            = 0x8 | ||||
| 	TCPOPT_TSTAMP_HDR                           = 0x101080a | ||||
| 	TCPOPT_WINDOW                               = 0x3 | ||||
| 	TCP_CC_INFO                                 = 0x1a | ||||
| 	TCP_CM_INQ                                  = 0x24 | ||||
| 	TCP_CONGESTION                              = 0xd | ||||
|  | @ -2736,6 +2826,13 @@ const ( | |||
| 	WDIOS_TEMPPANIC                             = 0x4 | ||||
| 	WDIOS_UNKNOWN                               = -0x1 | ||||
| 	WEXITED                                     = 0x4 | ||||
| 	WGALLOWEDIP_A_MAX                           = 0x3 | ||||
| 	WGDEVICE_A_MAX                              = 0x8 | ||||
| 	WGPEER_A_MAX                                = 0xa | ||||
| 	WG_CMD_MAX                                  = 0x1 | ||||
| 	WG_GENL_NAME                                = "wireguard" | ||||
| 	WG_GENL_VERSION                             = 0x1 | ||||
| 	WG_KEY_LEN                                  = 0x20 | ||||
| 	WIN_ACKMEDIACHANGE                          = 0xdb | ||||
| 	WIN_CHECKPOWERMODE1                         = 0xe5 | ||||
| 	WIN_CHECKPOWERMODE2                         = 0x98 | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ | |||
| // +build 386,linux
 | ||||
| 
 | ||||
| // Code generated by cmd/cgo -godefs; DO NOT EDIT.
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include -m32 /build/_const.go
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include -m32 /build/unix/_const.go
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
|  | @ -147,6 +147,7 @@ const ( | |||
| 	NS_GET_USERNS                    = 0xb701 | ||||
| 	OLCUC                            = 0x2 | ||||
| 	ONLCR                            = 0x4 | ||||
| 	OTPERASE                         = 0x400c4d19 | ||||
| 	OTPGETREGIONCOUNT                = 0x40044d0e | ||||
| 	OTPGETREGIONINFO                 = 0x400c4d0f | ||||
| 	OTPLOCK                          = 0x800c4d10 | ||||
|  | @ -292,6 +293,7 @@ const ( | |||
| 	SO_BPF_EXTENSIONS                = 0x30 | ||||
| 	SO_BROADCAST                     = 0x6 | ||||
| 	SO_BSDCOMPAT                     = 0xe | ||||
| 	SO_BUF_LOCK                      = 0x48 | ||||
| 	SO_BUSY_POLL                     = 0x2e | ||||
| 	SO_BUSY_POLL_BUDGET              = 0x46 | ||||
| 	SO_CNX_ADVICE                    = 0x35 | ||||
|  | @ -308,6 +310,7 @@ const ( | |||
| 	SO_MARK                          = 0x24 | ||||
| 	SO_MAX_PACING_RATE               = 0x2f | ||||
| 	SO_MEMINFO                       = 0x37 | ||||
| 	SO_NETNS_COOKIE                  = 0x47 | ||||
| 	SO_NOFCS                         = 0x2b | ||||
| 	SO_OOBINLINE                     = 0xa | ||||
| 	SO_PASSCRED                      = 0x10 | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ | |||
| // +build amd64,linux
 | ||||
| 
 | ||||
| // Code generated by cmd/cgo -godefs; DO NOT EDIT.
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include -m64 /build/_const.go
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include -m64 /build/unix/_const.go
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
|  | @ -147,6 +147,7 @@ const ( | |||
| 	NS_GET_USERNS                    = 0xb701 | ||||
| 	OLCUC                            = 0x2 | ||||
| 	ONLCR                            = 0x4 | ||||
| 	OTPERASE                         = 0x400c4d19 | ||||
| 	OTPGETREGIONCOUNT                = 0x40044d0e | ||||
| 	OTPGETREGIONINFO                 = 0x400c4d0f | ||||
| 	OTPLOCK                          = 0x800c4d10 | ||||
|  | @ -293,6 +294,7 @@ const ( | |||
| 	SO_BPF_EXTENSIONS                = 0x30 | ||||
| 	SO_BROADCAST                     = 0x6 | ||||
| 	SO_BSDCOMPAT                     = 0xe | ||||
| 	SO_BUF_LOCK                      = 0x48 | ||||
| 	SO_BUSY_POLL                     = 0x2e | ||||
| 	SO_BUSY_POLL_BUDGET              = 0x46 | ||||
| 	SO_CNX_ADVICE                    = 0x35 | ||||
|  | @ -309,6 +311,7 @@ const ( | |||
| 	SO_MARK                          = 0x24 | ||||
| 	SO_MAX_PACING_RATE               = 0x2f | ||||
| 	SO_MEMINFO                       = 0x37 | ||||
| 	SO_NETNS_COOKIE                  = 0x47 | ||||
| 	SO_NOFCS                         = 0x2b | ||||
| 	SO_OOBINLINE                     = 0xa | ||||
| 	SO_PASSCRED                      = 0x10 | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ | |||
| // +build arm,linux
 | ||||
| 
 | ||||
| // Code generated by cmd/cgo -godefs; DO NOT EDIT.
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/_const.go
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/unix/_const.go
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
|  | @ -145,6 +145,7 @@ const ( | |||
| 	NS_GET_USERNS                    = 0xb701 | ||||
| 	OLCUC                            = 0x2 | ||||
| 	ONLCR                            = 0x4 | ||||
| 	OTPERASE                         = 0x400c4d19 | ||||
| 	OTPGETREGIONCOUNT                = 0x40044d0e | ||||
| 	OTPGETREGIONINFO                 = 0x400c4d0f | ||||
| 	OTPLOCK                          = 0x800c4d10 | ||||
|  | @ -299,6 +300,7 @@ const ( | |||
| 	SO_BPF_EXTENSIONS                = 0x30 | ||||
| 	SO_BROADCAST                     = 0x6 | ||||
| 	SO_BSDCOMPAT                     = 0xe | ||||
| 	SO_BUF_LOCK                      = 0x48 | ||||
| 	SO_BUSY_POLL                     = 0x2e | ||||
| 	SO_BUSY_POLL_BUDGET              = 0x46 | ||||
| 	SO_CNX_ADVICE                    = 0x35 | ||||
|  | @ -315,6 +317,7 @@ const ( | |||
| 	SO_MARK                          = 0x24 | ||||
| 	SO_MAX_PACING_RATE               = 0x2f | ||||
| 	SO_MEMINFO                       = 0x37 | ||||
| 	SO_NETNS_COOKIE                  = 0x47 | ||||
| 	SO_NOFCS                         = 0x2b | ||||
| 	SO_OOBINLINE                     = 0xa | ||||
| 	SO_PASSCRED                      = 0x10 | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ | |||
| // +build arm64,linux
 | ||||
| 
 | ||||
| // Code generated by cmd/cgo -godefs; DO NOT EDIT.
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include -fsigned-char /build/_const.go
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include -fsigned-char /build/unix/_const.go
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
|  | @ -148,6 +148,7 @@ const ( | |||
| 	NS_GET_USERNS                    = 0xb701 | ||||
| 	OLCUC                            = 0x2 | ||||
| 	ONLCR                            = 0x4 | ||||
| 	OTPERASE                         = 0x400c4d19 | ||||
| 	OTPGETREGIONCOUNT                = 0x40044d0e | ||||
| 	OTPGETREGIONINFO                 = 0x400c4d0f | ||||
| 	OTPLOCK                          = 0x800c4d10 | ||||
|  | @ -289,6 +290,7 @@ const ( | |||
| 	SO_BPF_EXTENSIONS                = 0x30 | ||||
| 	SO_BROADCAST                     = 0x6 | ||||
| 	SO_BSDCOMPAT                     = 0xe | ||||
| 	SO_BUF_LOCK                      = 0x48 | ||||
| 	SO_BUSY_POLL                     = 0x2e | ||||
| 	SO_BUSY_POLL_BUDGET              = 0x46 | ||||
| 	SO_CNX_ADVICE                    = 0x35 | ||||
|  | @ -305,6 +307,7 @@ const ( | |||
| 	SO_MARK                          = 0x24 | ||||
| 	SO_MAX_PACING_RATE               = 0x2f | ||||
| 	SO_MEMINFO                       = 0x37 | ||||
| 	SO_NETNS_COOKIE                  = 0x47 | ||||
| 	SO_NOFCS                         = 0x2b | ||||
| 	SO_OOBINLINE                     = 0xa | ||||
| 	SO_PASSCRED                      = 0x10 | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ | |||
| // +build mips,linux
 | ||||
| 
 | ||||
| // Code generated by cmd/cgo -godefs; DO NOT EDIT.
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/_const.go
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/unix/_const.go
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
|  | @ -145,6 +145,7 @@ const ( | |||
| 	NS_GET_USERNS                    = 0x2000b701 | ||||
| 	OLCUC                            = 0x2 | ||||
| 	ONLCR                            = 0x4 | ||||
| 	OTPERASE                         = 0x800c4d19 | ||||
| 	OTPGETREGIONCOUNT                = 0x80044d0e | ||||
| 	OTPGETREGIONINFO                 = 0x800c4d0f | ||||
| 	OTPLOCK                          = 0x400c4d10 | ||||
|  | @ -292,6 +293,7 @@ const ( | |||
| 	SO_BPF_EXTENSIONS                = 0x30 | ||||
| 	SO_BROADCAST                     = 0x20 | ||||
| 	SO_BSDCOMPAT                     = 0xe | ||||
| 	SO_BUF_LOCK                      = 0x48 | ||||
| 	SO_BUSY_POLL                     = 0x2e | ||||
| 	SO_BUSY_POLL_BUDGET              = 0x46 | ||||
| 	SO_CNX_ADVICE                    = 0x35 | ||||
|  | @ -308,6 +310,7 @@ const ( | |||
| 	SO_MARK                          = 0x24 | ||||
| 	SO_MAX_PACING_RATE               = 0x2f | ||||
| 	SO_MEMINFO                       = 0x37 | ||||
| 	SO_NETNS_COOKIE                  = 0x47 | ||||
| 	SO_NOFCS                         = 0x2b | ||||
| 	SO_OOBINLINE                     = 0x100 | ||||
| 	SO_PASSCRED                      = 0x11 | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ | |||
| // +build mips64,linux
 | ||||
| 
 | ||||
| // Code generated by cmd/cgo -godefs; DO NOT EDIT.
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/_const.go
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/unix/_const.go
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
|  | @ -145,6 +145,7 @@ const ( | |||
| 	NS_GET_USERNS                    = 0x2000b701 | ||||
| 	OLCUC                            = 0x2 | ||||
| 	ONLCR                            = 0x4 | ||||
| 	OTPERASE                         = 0x800c4d19 | ||||
| 	OTPGETREGIONCOUNT                = 0x80044d0e | ||||
| 	OTPGETREGIONINFO                 = 0x800c4d0f | ||||
| 	OTPLOCK                          = 0x400c4d10 | ||||
|  | @ -292,6 +293,7 @@ const ( | |||
| 	SO_BPF_EXTENSIONS                = 0x30 | ||||
| 	SO_BROADCAST                     = 0x20 | ||||
| 	SO_BSDCOMPAT                     = 0xe | ||||
| 	SO_BUF_LOCK                      = 0x48 | ||||
| 	SO_BUSY_POLL                     = 0x2e | ||||
| 	SO_BUSY_POLL_BUDGET              = 0x46 | ||||
| 	SO_CNX_ADVICE                    = 0x35 | ||||
|  | @ -308,6 +310,7 @@ const ( | |||
| 	SO_MARK                          = 0x24 | ||||
| 	SO_MAX_PACING_RATE               = 0x2f | ||||
| 	SO_MEMINFO                       = 0x37 | ||||
| 	SO_NETNS_COOKIE                  = 0x47 | ||||
| 	SO_NOFCS                         = 0x2b | ||||
| 	SO_OOBINLINE                     = 0x100 | ||||
| 	SO_PASSCRED                      = 0x11 | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ | |||
| // +build mips64le,linux
 | ||||
| 
 | ||||
| // Code generated by cmd/cgo -godefs; DO NOT EDIT.
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/_const.go
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/unix/_const.go
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
|  | @ -145,6 +145,7 @@ const ( | |||
| 	NS_GET_USERNS                    = 0x2000b701 | ||||
| 	OLCUC                            = 0x2 | ||||
| 	ONLCR                            = 0x4 | ||||
| 	OTPERASE                         = 0x800c4d19 | ||||
| 	OTPGETREGIONCOUNT                = 0x80044d0e | ||||
| 	OTPGETREGIONINFO                 = 0x800c4d0f | ||||
| 	OTPLOCK                          = 0x400c4d10 | ||||
|  | @ -292,6 +293,7 @@ const ( | |||
| 	SO_BPF_EXTENSIONS                = 0x30 | ||||
| 	SO_BROADCAST                     = 0x20 | ||||
| 	SO_BSDCOMPAT                     = 0xe | ||||
| 	SO_BUF_LOCK                      = 0x48 | ||||
| 	SO_BUSY_POLL                     = 0x2e | ||||
| 	SO_BUSY_POLL_BUDGET              = 0x46 | ||||
| 	SO_CNX_ADVICE                    = 0x35 | ||||
|  | @ -308,6 +310,7 @@ const ( | |||
| 	SO_MARK                          = 0x24 | ||||
| 	SO_MAX_PACING_RATE               = 0x2f | ||||
| 	SO_MEMINFO                       = 0x37 | ||||
| 	SO_NETNS_COOKIE                  = 0x47 | ||||
| 	SO_NOFCS                         = 0x2b | ||||
| 	SO_OOBINLINE                     = 0x100 | ||||
| 	SO_PASSCRED                      = 0x11 | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ | |||
| // +build mipsle,linux
 | ||||
| 
 | ||||
| // Code generated by cmd/cgo -godefs; DO NOT EDIT.
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/_const.go
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/unix/_const.go
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
|  | @ -145,6 +145,7 @@ const ( | |||
| 	NS_GET_USERNS                    = 0x2000b701 | ||||
| 	OLCUC                            = 0x2 | ||||
| 	ONLCR                            = 0x4 | ||||
| 	OTPERASE                         = 0x800c4d19 | ||||
| 	OTPGETREGIONCOUNT                = 0x80044d0e | ||||
| 	OTPGETREGIONINFO                 = 0x800c4d0f | ||||
| 	OTPLOCK                          = 0x400c4d10 | ||||
|  | @ -292,6 +293,7 @@ const ( | |||
| 	SO_BPF_EXTENSIONS                = 0x30 | ||||
| 	SO_BROADCAST                     = 0x20 | ||||
| 	SO_BSDCOMPAT                     = 0xe | ||||
| 	SO_BUF_LOCK                      = 0x48 | ||||
| 	SO_BUSY_POLL                     = 0x2e | ||||
| 	SO_BUSY_POLL_BUDGET              = 0x46 | ||||
| 	SO_CNX_ADVICE                    = 0x35 | ||||
|  | @ -308,6 +310,7 @@ const ( | |||
| 	SO_MARK                          = 0x24 | ||||
| 	SO_MAX_PACING_RATE               = 0x2f | ||||
| 	SO_MEMINFO                       = 0x37 | ||||
| 	SO_NETNS_COOKIE                  = 0x47 | ||||
| 	SO_NOFCS                         = 0x2b | ||||
| 	SO_OOBINLINE                     = 0x100 | ||||
| 	SO_PASSCRED                      = 0x11 | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ | |||
| // +build ppc,linux
 | ||||
| 
 | ||||
| // Code generated by cmd/cgo -godefs; DO NOT EDIT.
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/_const.go
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/unix/_const.go
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
|  | @ -147,6 +147,7 @@ const ( | |||
| 	NS_GET_USERNS                    = 0x2000b701 | ||||
| 	OLCUC                            = 0x4 | ||||
| 	ONLCR                            = 0x2 | ||||
| 	OTPERASE                         = 0x800c4d19 | ||||
| 	OTPGETREGIONCOUNT                = 0x80044d0e | ||||
| 	OTPGETREGIONINFO                 = 0x800c4d0f | ||||
| 	OTPLOCK                          = 0x400c4d10 | ||||
|  | @ -347,6 +348,7 @@ const ( | |||
| 	SO_BPF_EXTENSIONS                = 0x30 | ||||
| 	SO_BROADCAST                     = 0x6 | ||||
| 	SO_BSDCOMPAT                     = 0xe | ||||
| 	SO_BUF_LOCK                      = 0x48 | ||||
| 	SO_BUSY_POLL                     = 0x2e | ||||
| 	SO_BUSY_POLL_BUDGET              = 0x46 | ||||
| 	SO_CNX_ADVICE                    = 0x35 | ||||
|  | @ -363,6 +365,7 @@ const ( | |||
| 	SO_MARK                          = 0x24 | ||||
| 	SO_MAX_PACING_RATE               = 0x2f | ||||
| 	SO_MEMINFO                       = 0x37 | ||||
| 	SO_NETNS_COOKIE                  = 0x47 | ||||
| 	SO_NOFCS                         = 0x2b | ||||
| 	SO_OOBINLINE                     = 0xa | ||||
| 	SO_PASSCRED                      = 0x14 | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ | |||
| // +build ppc64,linux
 | ||||
| 
 | ||||
| // Code generated by cmd/cgo -godefs; DO NOT EDIT.
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/_const.go
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/unix/_const.go
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
|  | @ -147,6 +147,7 @@ const ( | |||
| 	NS_GET_USERNS                    = 0x2000b701 | ||||
| 	OLCUC                            = 0x4 | ||||
| 	ONLCR                            = 0x2 | ||||
| 	OTPERASE                         = 0x800c4d19 | ||||
| 	OTPGETREGIONCOUNT                = 0x80044d0e | ||||
| 	OTPGETREGIONINFO                 = 0x800c4d0f | ||||
| 	OTPLOCK                          = 0x400c4d10 | ||||
|  | @ -351,6 +352,7 @@ const ( | |||
| 	SO_BPF_EXTENSIONS                = 0x30 | ||||
| 	SO_BROADCAST                     = 0x6 | ||||
| 	SO_BSDCOMPAT                     = 0xe | ||||
| 	SO_BUF_LOCK                      = 0x48 | ||||
| 	SO_BUSY_POLL                     = 0x2e | ||||
| 	SO_BUSY_POLL_BUDGET              = 0x46 | ||||
| 	SO_CNX_ADVICE                    = 0x35 | ||||
|  | @ -367,6 +369,7 @@ const ( | |||
| 	SO_MARK                          = 0x24 | ||||
| 	SO_MAX_PACING_RATE               = 0x2f | ||||
| 	SO_MEMINFO                       = 0x37 | ||||
| 	SO_NETNS_COOKIE                  = 0x47 | ||||
| 	SO_NOFCS                         = 0x2b | ||||
| 	SO_OOBINLINE                     = 0xa | ||||
| 	SO_PASSCRED                      = 0x14 | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ | |||
| // +build ppc64le,linux
 | ||||
| 
 | ||||
| // Code generated by cmd/cgo -godefs; DO NOT EDIT.
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/_const.go
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/unix/_const.go
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
|  | @ -147,6 +147,7 @@ const ( | |||
| 	NS_GET_USERNS                    = 0x2000b701 | ||||
| 	OLCUC                            = 0x4 | ||||
| 	ONLCR                            = 0x2 | ||||
| 	OTPERASE                         = 0x800c4d19 | ||||
| 	OTPGETREGIONCOUNT                = 0x80044d0e | ||||
| 	OTPGETREGIONINFO                 = 0x800c4d0f | ||||
| 	OTPLOCK                          = 0x400c4d10 | ||||
|  | @ -351,6 +352,7 @@ const ( | |||
| 	SO_BPF_EXTENSIONS                = 0x30 | ||||
| 	SO_BROADCAST                     = 0x6 | ||||
| 	SO_BSDCOMPAT                     = 0xe | ||||
| 	SO_BUF_LOCK                      = 0x48 | ||||
| 	SO_BUSY_POLL                     = 0x2e | ||||
| 	SO_BUSY_POLL_BUDGET              = 0x46 | ||||
| 	SO_CNX_ADVICE                    = 0x35 | ||||
|  | @ -367,6 +369,7 @@ const ( | |||
| 	SO_MARK                          = 0x24 | ||||
| 	SO_MAX_PACING_RATE               = 0x2f | ||||
| 	SO_MEMINFO                       = 0x37 | ||||
| 	SO_NETNS_COOKIE                  = 0x47 | ||||
| 	SO_NOFCS                         = 0x2b | ||||
| 	SO_OOBINLINE                     = 0xa | ||||
| 	SO_PASSCRED                      = 0x14 | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ | |||
| // +build riscv64,linux
 | ||||
| 
 | ||||
| // Code generated by cmd/cgo -godefs; DO NOT EDIT.
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/_const.go
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/unix/_const.go
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
|  | @ -145,6 +145,7 @@ const ( | |||
| 	NS_GET_USERNS                    = 0xb701 | ||||
| 	OLCUC                            = 0x2 | ||||
| 	ONLCR                            = 0x4 | ||||
| 	OTPERASE                         = 0x400c4d19 | ||||
| 	OTPGETREGIONCOUNT                = 0x40044d0e | ||||
| 	OTPGETREGIONINFO                 = 0x400c4d0f | ||||
| 	OTPLOCK                          = 0x800c4d10 | ||||
|  | @ -280,6 +281,7 @@ const ( | |||
| 	SO_BPF_EXTENSIONS                = 0x30 | ||||
| 	SO_BROADCAST                     = 0x6 | ||||
| 	SO_BSDCOMPAT                     = 0xe | ||||
| 	SO_BUF_LOCK                      = 0x48 | ||||
| 	SO_BUSY_POLL                     = 0x2e | ||||
| 	SO_BUSY_POLL_BUDGET              = 0x46 | ||||
| 	SO_CNX_ADVICE                    = 0x35 | ||||
|  | @ -296,6 +298,7 @@ const ( | |||
| 	SO_MARK                          = 0x24 | ||||
| 	SO_MAX_PACING_RATE               = 0x2f | ||||
| 	SO_MEMINFO                       = 0x37 | ||||
| 	SO_NETNS_COOKIE                  = 0x47 | ||||
| 	SO_NOFCS                         = 0x2b | ||||
| 	SO_OOBINLINE                     = 0xa | ||||
| 	SO_PASSCRED                      = 0x10 | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ | |||
| // +build s390x,linux
 | ||||
| 
 | ||||
| // Code generated by cmd/cgo -godefs; DO NOT EDIT.
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include -fsigned-char /build/_const.go
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include -fsigned-char /build/unix/_const.go
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
|  | @ -145,6 +145,7 @@ const ( | |||
| 	NS_GET_USERNS                    = 0xb701 | ||||
| 	OLCUC                            = 0x2 | ||||
| 	ONLCR                            = 0x4 | ||||
| 	OTPERASE                         = 0x400c4d19 | ||||
| 	OTPGETREGIONCOUNT                = 0x40044d0e | ||||
| 	OTPGETREGIONINFO                 = 0x400c4d0f | ||||
| 	OTPLOCK                          = 0x800c4d10 | ||||
|  | @ -355,6 +356,7 @@ const ( | |||
| 	SO_BPF_EXTENSIONS                = 0x30 | ||||
| 	SO_BROADCAST                     = 0x6 | ||||
| 	SO_BSDCOMPAT                     = 0xe | ||||
| 	SO_BUF_LOCK                      = 0x48 | ||||
| 	SO_BUSY_POLL                     = 0x2e | ||||
| 	SO_BUSY_POLL_BUDGET              = 0x46 | ||||
| 	SO_CNX_ADVICE                    = 0x35 | ||||
|  | @ -371,6 +373,7 @@ const ( | |||
| 	SO_MARK                          = 0x24 | ||||
| 	SO_MAX_PACING_RATE               = 0x2f | ||||
| 	SO_MEMINFO                       = 0x37 | ||||
| 	SO_NETNS_COOKIE                  = 0x47 | ||||
| 	SO_NOFCS                         = 0x2b | ||||
| 	SO_OOBINLINE                     = 0xa | ||||
| 	SO_PASSCRED                      = 0x10 | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ | |||
| // +build sparc64,linux
 | ||||
| 
 | ||||
| // Code generated by cmd/cgo -godefs; DO NOT EDIT.
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/_const.go
 | ||||
| // cgo -godefs -- -Wall -Werror -static -I/tmp/include /build/unix/_const.go
 | ||||
| 
 | ||||
| package unix | ||||
| 
 | ||||
|  | @ -150,6 +150,7 @@ const ( | |||
| 	NS_GET_USERNS                    = 0x2000b701 | ||||
| 	OLCUC                            = 0x2 | ||||
| 	ONLCR                            = 0x4 | ||||
| 	OTPERASE                         = 0x800c4d19 | ||||
| 	OTPGETREGIONCOUNT                = 0x80044d0e | ||||
| 	OTPGETREGIONINFO                 = 0x800c4d0f | ||||
| 	OTPLOCK                          = 0x400c4d10 | ||||
|  | @ -346,6 +347,7 @@ const ( | |||
| 	SO_BPF_EXTENSIONS                = 0x32 | ||||
| 	SO_BROADCAST                     = 0x20 | ||||
| 	SO_BSDCOMPAT                     = 0x400 | ||||
| 	SO_BUF_LOCK                      = 0x51 | ||||
| 	SO_BUSY_POLL                     = 0x30 | ||||
| 	SO_BUSY_POLL_BUDGET              = 0x49 | ||||
| 	SO_CNX_ADVICE                    = 0x37 | ||||
|  | @ -362,6 +364,7 @@ const ( | |||
| 	SO_MARK                          = 0x22 | ||||
| 	SO_MAX_PACING_RATE               = 0x31 | ||||
| 	SO_MEMINFO                       = 0x39 | ||||
| 	SO_NETNS_COOKIE                  = 0x50 | ||||
| 	SO_NOFCS                         = 0x27 | ||||
| 	SO_OOBINLINE                     = 0x100 | ||||
| 	SO_PASSCRED                      = 0x2 | ||||
|  |  | |||
|  | @ -1020,7 +1020,10 @@ const ( | |||
| 	RLIMIT_CPU                        = 0x0 | ||||
| 	RLIMIT_DATA                       = 0x2 | ||||
| 	RLIMIT_FSIZE                      = 0x1 | ||||
| 	RLIMIT_MEMLOCK                    = 0x6 | ||||
| 	RLIMIT_NOFILE                     = 0x8 | ||||
| 	RLIMIT_NPROC                      = 0x7 | ||||
| 	RLIMIT_RSS                        = 0x5 | ||||
| 	RLIMIT_STACK                      = 0x3 | ||||
| 	RLIM_INFINITY                     = 0x7fffffffffffffff | ||||
| 	RTAX_AUTHOR                       = 0x6 | ||||
|  |  | |||
|  | @ -1020,7 +1020,10 @@ const ( | |||
| 	RLIMIT_CPU                        = 0x0 | ||||
| 	RLIMIT_DATA                       = 0x2 | ||||
| 	RLIMIT_FSIZE                      = 0x1 | ||||
| 	RLIMIT_MEMLOCK                    = 0x6 | ||||
| 	RLIMIT_NOFILE                     = 0x8 | ||||
| 	RLIMIT_NPROC                      = 0x7 | ||||
| 	RLIMIT_RSS                        = 0x5 | ||||
| 	RLIMIT_STACK                      = 0x3 | ||||
| 	RLIM_INFINITY                     = 0x7fffffffffffffff | ||||
| 	RTAX_AUTHOR                       = 0x6 | ||||
|  |  | |||
|  | @ -17,6 +17,7 @@ int getdirent(int, uintptr_t, size_t); | |||
| int wait4(int, uintptr_t, int, uintptr_t); | ||||
| int ioctl(int, int, uintptr_t); | ||||
| int fcntl(uintptr_t, int, uintptr_t); | ||||
| int fsync_range(int, int, long long, long long); | ||||
| int acct(uintptr_t); | ||||
| int chdir(uintptr_t); | ||||
| int chroot(uintptr_t); | ||||
|  | @ -29,7 +30,6 @@ int fchmod(int, unsigned int); | |||
| int fchmodat(int, uintptr_t, unsigned int, int); | ||||
| int fchownat(int, uintptr_t, int, int, int); | ||||
| int fdatasync(int); | ||||
| int fsync(int); | ||||
| int getpgid(int); | ||||
| int getpgrp(); | ||||
| int getpid(); | ||||
|  | @ -255,6 +255,16 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func fsyncRange(fd int, how int, start int64, length int64) (err error) { | ||||
| 	r0, er := C.fsync_range(C.int(fd), C.int(how), C.longlong(start), C.longlong(length)) | ||||
| 	if r0 == -1 && er != nil { | ||||
| 		err = er | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Acct(path string) (err error) { | ||||
| 	_p0 := uintptr(unsafe.Pointer(C.CString(path))) | ||||
| 	r0, er := C.acct(C.uintptr_t(_p0)) | ||||
|  | @ -379,16 +389,6 @@ func Fdatasync(fd int) (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Fsync(fd int) (err error) { | ||||
| 	r0, er := C.fsync(C.int(fd)) | ||||
| 	if r0 == -1 && er != nil { | ||||
| 		err = er | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Getpgid(pid int) (pgid int, err error) { | ||||
| 	r0, er := C.getpgid(C.int(pid)) | ||||
| 	pgid = int(r0) | ||||
|  |  | |||
|  | @ -135,6 +135,16 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func fsyncRange(fd int, how int, start int64, length int64) (err error) { | ||||
| 	_, e1 := callfsync_range(fd, how, start, length) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Acct(path string) (err error) { | ||||
| 	var _p0 *byte | ||||
| 	_p0, err = BytePtrFromString(path) | ||||
|  | @ -283,16 +293,6 @@ func Fdatasync(fd int) (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Fsync(fd int) (err error) { | ||||
| 	_, e1 := callfsync(fd) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Getpgid(pid int) (pgid int, err error) { | ||||
| 	r0, e1 := callgetpgid(pid) | ||||
| 	pgid = int(r0) | ||||
|  |  | |||
|  | @ -18,6 +18,7 @@ import ( | |||
| //go:cgo_import_dynamic libc_wait4 wait4 "libc.a/shr_64.o"
 | ||||
| //go:cgo_import_dynamic libc_ioctl ioctl "libc.a/shr_64.o"
 | ||||
| //go:cgo_import_dynamic libc_fcntl fcntl "libc.a/shr_64.o"
 | ||||
| //go:cgo_import_dynamic libc_fsync_range fsync_range "libc.a/shr_64.o"
 | ||||
| //go:cgo_import_dynamic libc_acct acct "libc.a/shr_64.o"
 | ||||
| //go:cgo_import_dynamic libc_chdir chdir "libc.a/shr_64.o"
 | ||||
| //go:cgo_import_dynamic libc_chroot chroot "libc.a/shr_64.o"
 | ||||
|  | @ -30,7 +31,6 @@ import ( | |||
| //go:cgo_import_dynamic libc_fchmodat fchmodat "libc.a/shr_64.o"
 | ||||
| //go:cgo_import_dynamic libc_fchownat fchownat "libc.a/shr_64.o"
 | ||||
| //go:cgo_import_dynamic libc_fdatasync fdatasync "libc.a/shr_64.o"
 | ||||
| //go:cgo_import_dynamic libc_fsync fsync "libc.a/shr_64.o"
 | ||||
| //go:cgo_import_dynamic libc_getpgid getpgid "libc.a/shr_64.o"
 | ||||
| //go:cgo_import_dynamic libc_getpgrp getpgrp "libc.a/shr_64.o"
 | ||||
| //go:cgo_import_dynamic libc_getpid getpid "libc.a/shr_64.o"
 | ||||
|  | @ -136,6 +136,7 @@ import ( | |||
| //go:linkname libc_wait4 libc_wait4
 | ||||
| //go:linkname libc_ioctl libc_ioctl
 | ||||
| //go:linkname libc_fcntl libc_fcntl
 | ||||
| //go:linkname libc_fsync_range libc_fsync_range
 | ||||
| //go:linkname libc_acct libc_acct
 | ||||
| //go:linkname libc_chdir libc_chdir
 | ||||
| //go:linkname libc_chroot libc_chroot
 | ||||
|  | @ -148,7 +149,6 @@ import ( | |||
| //go:linkname libc_fchmodat libc_fchmodat
 | ||||
| //go:linkname libc_fchownat libc_fchownat
 | ||||
| //go:linkname libc_fdatasync libc_fdatasync
 | ||||
| //go:linkname libc_fsync libc_fsync
 | ||||
| //go:linkname libc_getpgid libc_getpgid
 | ||||
| //go:linkname libc_getpgrp libc_getpgrp
 | ||||
| //go:linkname libc_getpid libc_getpid
 | ||||
|  | @ -257,6 +257,7 @@ var ( | |||
| 	libc_wait4, | ||||
| 	libc_ioctl, | ||||
| 	libc_fcntl, | ||||
| 	libc_fsync_range, | ||||
| 	libc_acct, | ||||
| 	libc_chdir, | ||||
| 	libc_chroot, | ||||
|  | @ -269,7 +270,6 @@ var ( | |||
| 	libc_fchmodat, | ||||
| 	libc_fchownat, | ||||
| 	libc_fdatasync, | ||||
| 	libc_fsync, | ||||
| 	libc_getpgid, | ||||
| 	libc_getpgrp, | ||||
| 	libc_getpid, | ||||
|  | @ -430,6 +430,13 @@ func callfcntl(fd uintptr, cmd int, arg uintptr) (r1 uintptr, e1 Errno) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func callfsync_range(fd int, how int, start int64, length int64) (r1 uintptr, e1 Errno) { | ||||
| 	r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fsync_range)), 4, uintptr(fd), uintptr(how), uintptr(start), uintptr(length), 0, 0) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func callacct(_p0 uintptr) (r1 uintptr, e1 Errno) { | ||||
| 	r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_acct)), 1, _p0, 0, 0, 0, 0, 0) | ||||
| 	return | ||||
|  | @ -514,13 +521,6 @@ func callfdatasync(fd int) (r1 uintptr, e1 Errno) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func callfsync(fd int) (r1 uintptr, e1 Errno) { | ||||
| 	r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fsync)), 1, uintptr(fd), 0, 0, 0, 0, 0) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func callgetpgid(pid int) (r1 uintptr, e1 Errno) { | ||||
| 	r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getpgid)), 1, uintptr(pid), 0, 0, 0, 0, 0) | ||||
| 	return | ||||
|  |  | |||
|  | @ -16,6 +16,7 @@ int getdirent(int, uintptr_t, size_t); | |||
| int wait4(int, uintptr_t, int, uintptr_t); | ||||
| int ioctl(int, int, uintptr_t); | ||||
| int fcntl(uintptr_t, int, uintptr_t); | ||||
| int fsync_range(int, int, long long, long long); | ||||
| int acct(uintptr_t); | ||||
| int chdir(uintptr_t); | ||||
| int chroot(uintptr_t); | ||||
|  | @ -28,7 +29,6 @@ int fchmod(int, unsigned int); | |||
| int fchmodat(int, uintptr_t, unsigned int, int); | ||||
| int fchownat(int, uintptr_t, int, int, int); | ||||
| int fdatasync(int); | ||||
| int fsync(int); | ||||
| int getpgid(int); | ||||
| int getpgrp(); | ||||
| int getpid(); | ||||
|  | @ -199,6 +199,14 @@ func callfcntl(fd uintptr, cmd int, arg uintptr) (r1 uintptr, e1 Errno) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func callfsync_range(fd int, how int, start int64, length int64) (r1 uintptr, e1 Errno) { | ||||
| 	r1 = uintptr(C.fsync_range(C.int(fd), C.int(how), C.longlong(start), C.longlong(length))) | ||||
| 	e1 = syscall.GetErrno() | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func callacct(_p0 uintptr) (r1 uintptr, e1 Errno) { | ||||
| 	r1 = uintptr(C.acct(C.uintptr_t(_p0))) | ||||
| 	e1 = syscall.GetErrno() | ||||
|  | @ -295,14 +303,6 @@ func callfdatasync(fd int) (r1 uintptr, e1 Errno) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func callfsync(fd int) (r1 uintptr, e1 Errno) { | ||||
| 	r1 = uintptr(C.fsync(C.int(fd))) | ||||
| 	e1 = syscall.GetErrno() | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func callgetpgid(pid int) (r1 uintptr, e1 Errno) { | ||||
| 	r1 = uintptr(C.getpgid(C.int(pid))) | ||||
| 	e1 = syscall.GetErrno() | ||||
|  |  | |||
|  | @ -734,6 +734,65 @@ var libc_sendfile_trampoline_addr uintptr | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func shmat(id int, addr uintptr, flag int) (ret uintptr, err error) { | ||||
| 	r0, _, e1 := syscall_syscall(libc_shmat_trampoline_addr, uintptr(id), uintptr(addr), uintptr(flag)) | ||||
| 	ret = uintptr(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| var libc_shmat_trampoline_addr uintptr | ||||
| 
 | ||||
| //go:cgo_import_dynamic libc_shmat shmat "/usr/lib/libSystem.B.dylib"
 | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func shmctl(id int, cmd int, buf *SysvShmDesc) (result int, err error) { | ||||
| 	r0, _, e1 := syscall_syscall(libc_shmctl_trampoline_addr, uintptr(id), uintptr(cmd), uintptr(unsafe.Pointer(buf))) | ||||
| 	result = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| var libc_shmctl_trampoline_addr uintptr | ||||
| 
 | ||||
| //go:cgo_import_dynamic libc_shmctl shmctl "/usr/lib/libSystem.B.dylib"
 | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func shmdt(addr uintptr) (err error) { | ||||
| 	_, _, e1 := syscall_syscall(libc_shmdt_trampoline_addr, uintptr(addr), 0, 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| var libc_shmdt_trampoline_addr uintptr | ||||
| 
 | ||||
| //go:cgo_import_dynamic libc_shmdt shmdt "/usr/lib/libSystem.B.dylib"
 | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func shmget(key int, size int, flag int) (id int, err error) { | ||||
| 	r0, _, e1 := syscall_syscall(libc_shmget_trampoline_addr, uintptr(key), uintptr(size), uintptr(flag)) | ||||
| 	id = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| var libc_shmget_trampoline_addr uintptr | ||||
| 
 | ||||
| //go:cgo_import_dynamic libc_shmget shmget "/usr/lib/libSystem.B.dylib"
 | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Access(path string, mode uint32) (err error) { | ||||
| 	var _p0 *byte | ||||
| 	_p0, err = BytePtrFromString(path) | ||||
|  |  | |||
|  | @ -264,6 +264,30 @@ TEXT libc_sendfile_trampoline<>(SB),NOSPLIT,$0-0 | |||
| GLOBL	·libc_sendfile_trampoline_addr(SB), RODATA, $8 | ||||
| DATA	·libc_sendfile_trampoline_addr(SB)/8, $libc_sendfile_trampoline<>(SB) | ||||
| 
 | ||||
| TEXT libc_shmat_trampoline<>(SB),NOSPLIT,$0-0 | ||||
| 	JMP	libc_shmat(SB) | ||||
| 
 | ||||
| GLOBL	·libc_shmat_trampoline_addr(SB), RODATA, $8 | ||||
| DATA	·libc_shmat_trampoline_addr(SB)/8, $libc_shmat_trampoline<>(SB) | ||||
| 
 | ||||
| TEXT libc_shmctl_trampoline<>(SB),NOSPLIT,$0-0 | ||||
| 	JMP	libc_shmctl(SB) | ||||
| 
 | ||||
| GLOBL	·libc_shmctl_trampoline_addr(SB), RODATA, $8 | ||||
| DATA	·libc_shmctl_trampoline_addr(SB)/8, $libc_shmctl_trampoline<>(SB) | ||||
| 
 | ||||
| TEXT libc_shmdt_trampoline<>(SB),NOSPLIT,$0-0 | ||||
| 	JMP	libc_shmdt(SB) | ||||
| 
 | ||||
| GLOBL	·libc_shmdt_trampoline_addr(SB), RODATA, $8 | ||||
| DATA	·libc_shmdt_trampoline_addr(SB)/8, $libc_shmdt_trampoline<>(SB) | ||||
| 
 | ||||
| TEXT libc_shmget_trampoline<>(SB),NOSPLIT,$0-0 | ||||
| 	JMP	libc_shmget(SB) | ||||
| 
 | ||||
| GLOBL	·libc_shmget_trampoline_addr(SB), RODATA, $8 | ||||
| DATA	·libc_shmget_trampoline_addr(SB)/8, $libc_shmget_trampoline<>(SB) | ||||
| 
 | ||||
| TEXT libc_access_trampoline<>(SB),NOSPLIT,$0-0 | ||||
| 	JMP	libc_access(SB) | ||||
| 
 | ||||
|  |  | |||
|  | @ -734,6 +734,65 @@ var libc_sendfile_trampoline_addr uintptr | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func shmat(id int, addr uintptr, flag int) (ret uintptr, err error) { | ||||
| 	r0, _, e1 := syscall_syscall(libc_shmat_trampoline_addr, uintptr(id), uintptr(addr), uintptr(flag)) | ||||
| 	ret = uintptr(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| var libc_shmat_trampoline_addr uintptr | ||||
| 
 | ||||
| //go:cgo_import_dynamic libc_shmat shmat "/usr/lib/libSystem.B.dylib"
 | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func shmctl(id int, cmd int, buf *SysvShmDesc) (result int, err error) { | ||||
| 	r0, _, e1 := syscall_syscall(libc_shmctl_trampoline_addr, uintptr(id), uintptr(cmd), uintptr(unsafe.Pointer(buf))) | ||||
| 	result = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| var libc_shmctl_trampoline_addr uintptr | ||||
| 
 | ||||
| //go:cgo_import_dynamic libc_shmctl shmctl "/usr/lib/libSystem.B.dylib"
 | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func shmdt(addr uintptr) (err error) { | ||||
| 	_, _, e1 := syscall_syscall(libc_shmdt_trampoline_addr, uintptr(addr), 0, 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| var libc_shmdt_trampoline_addr uintptr | ||||
| 
 | ||||
| //go:cgo_import_dynamic libc_shmdt shmdt "/usr/lib/libSystem.B.dylib"
 | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func shmget(key int, size int, flag int) (id int, err error) { | ||||
| 	r0, _, e1 := syscall_syscall(libc_shmget_trampoline_addr, uintptr(key), uintptr(size), uintptr(flag)) | ||||
| 	id = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| var libc_shmget_trampoline_addr uintptr | ||||
| 
 | ||||
| //go:cgo_import_dynamic libc_shmget shmget "/usr/lib/libSystem.B.dylib"
 | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Access(path string, mode uint32) (err error) { | ||||
| 	var _p0 *byte | ||||
| 	_p0, err = BytePtrFromString(path) | ||||
|  |  | |||
|  | @ -264,6 +264,30 @@ TEXT libc_sendfile_trampoline<>(SB),NOSPLIT,$0-0 | |||
| GLOBL	·libc_sendfile_trampoline_addr(SB), RODATA, $8 | ||||
| DATA	·libc_sendfile_trampoline_addr(SB)/8, $libc_sendfile_trampoline<>(SB) | ||||
| 
 | ||||
| TEXT libc_shmat_trampoline<>(SB),NOSPLIT,$0-0 | ||||
| 	JMP	libc_shmat(SB) | ||||
| 
 | ||||
| GLOBL	·libc_shmat_trampoline_addr(SB), RODATA, $8 | ||||
| DATA	·libc_shmat_trampoline_addr(SB)/8, $libc_shmat_trampoline<>(SB) | ||||
| 
 | ||||
| TEXT libc_shmctl_trampoline<>(SB),NOSPLIT,$0-0 | ||||
| 	JMP	libc_shmctl(SB) | ||||
| 
 | ||||
| GLOBL	·libc_shmctl_trampoline_addr(SB), RODATA, $8 | ||||
| DATA	·libc_shmctl_trampoline_addr(SB)/8, $libc_shmctl_trampoline<>(SB) | ||||
| 
 | ||||
| TEXT libc_shmdt_trampoline<>(SB),NOSPLIT,$0-0 | ||||
| 	JMP	libc_shmdt(SB) | ||||
| 
 | ||||
| GLOBL	·libc_shmdt_trampoline_addr(SB), RODATA, $8 | ||||
| DATA	·libc_shmdt_trampoline_addr(SB)/8, $libc_shmdt_trampoline<>(SB) | ||||
| 
 | ||||
| TEXT libc_shmget_trampoline<>(SB),NOSPLIT,$0-0 | ||||
| 	JMP	libc_shmget(SB) | ||||
| 
 | ||||
| GLOBL	·libc_shmget_trampoline_addr(SB), RODATA, $8 | ||||
| DATA	·libc_shmget_trampoline_addr(SB)/8, $libc_shmget_trampoline<>(SB) | ||||
| 
 | ||||
| TEXT libc_access_trampoline<>(SB),NOSPLIT,$0-0 | ||||
| 	JMP	libc_access(SB) | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,4 +1,4 @@ | |||
| // Code generated by mkmerge.go; DO NOT EDIT.
 | ||||
| // Code generated by mkmerge; DO NOT EDIT.
 | ||||
| 
 | ||||
| //go:build linux
 | ||||
| // +build linux
 | ||||
|  | @ -48,6 +48,16 @@ func ioctl(fd int, req uint, arg uintptr) (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func ioctlPtr(fd int, req uint, arg unsafe.Pointer) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg)) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) { | ||||
| 	var _p0 *byte | ||||
| 	_p0, err = BytePtrFromString(oldpath) | ||||
|  | @ -100,6 +110,16 @@ func openat2(dirfd int, path string, open_how *OpenHow, size int) (fd int, err e | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe2(p *[2]_C_int, flags int) (err error) { | ||||
| 	_, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) { | ||||
| 	r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0) | ||||
| 	n = int(r0) | ||||
|  | @ -389,6 +409,21 @@ func mount(source string, target string, fstype string, flags uintptr, data *byt | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func mountSetattr(dirfd int, pathname string, flags uint, attr *MountAttr, size uintptr) (err error) { | ||||
| 	var _p0 *byte | ||||
| 	_p0, err = BytePtrFromString(pathname) | ||||
| 	if err != nil { | ||||
| 		return | ||||
| 	} | ||||
| 	_, _, e1 := Syscall6(SYS_MOUNT_SETATTR, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(unsafe.Pointer(attr)), uintptr(size), 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Acct(path string) (err error) { | ||||
| 	var _p0 *byte | ||||
| 	_p0, err = BytePtrFromString(path) | ||||
|  | @ -1201,7 +1236,7 @@ func PivotRoot(newroot string, putold string) (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) { | ||||
| func Prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) { | ||||
| 	_, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
|  | @ -1935,8 +1970,63 @@ func ProcessVMWritev(pid int, localIov []Iovec, remoteIov []RemoteIovec, flags u | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe2(p *[2]_C_int, flags int) (err error) { | ||||
| 	_, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) | ||||
| func PidfdOpen(pid int, flags int) (fd int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_PIDFD_OPEN, uintptr(pid), uintptr(flags), 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func PidfdGetfd(pidfd int, targetfd int, flags int) (fd int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_PIDFD_GETFD, uintptr(pidfd), uintptr(targetfd), uintptr(flags)) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func shmat(id int, addr uintptr, flag int) (ret uintptr, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_SHMAT, uintptr(id), uintptr(addr), uintptr(flag)) | ||||
| 	ret = uintptr(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func shmctl(id int, cmd int, buf *SysvShmDesc) (result int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_SHMCTL, uintptr(id), uintptr(cmd), uintptr(unsafe.Pointer(buf))) | ||||
| 	result = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func shmdt(addr uintptr) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_SHMDT, uintptr(addr), 0, 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func shmget(key int, size int, flag int) (id int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_SHMGET, uintptr(key), uintptr(size), uintptr(flag)) | ||||
| 	id = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
|  |  | |||
|  | @ -46,37 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe(p *[2]_C_int) (err error) { | ||||
| 	_, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func dup2(oldfd int, newfd int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollCreate(size int) (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { | ||||
| 	var _p0 unsafe.Pointer | ||||
| 	if len(events) > 0 { | ||||
|  | @ -181,17 +150,6 @@ func Getuid() (uid int) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func InotifyInit() (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Ioperm(from int, num int, on int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on)) | ||||
| 	if e1 != 0 { | ||||
|  | @ -566,14 +524,3 @@ func utimes(path string, times *[2]Timeval) (err error) { | |||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
|  |  | |||
|  | @ -46,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func dup2(oldfd int, newfd int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollCreate(size int) (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { | ||||
| 	var _p0 unsafe.Pointer | ||||
| 	if len(events) > 0 { | ||||
|  | @ -191,17 +170,6 @@ func Getuid() (uid int) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func inotifyInit() (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Ioperm(from int, num int, on int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on)) | ||||
| 	if e1 != 0 { | ||||
|  | @ -711,27 +679,6 @@ func utimes(path string, times *[2]Timeval) (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe(p *[2]_C_int) (err error) { | ||||
| 	_, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) { | ||||
| 	var _p0 *byte | ||||
| 	_p0, err = BytePtrFromString(cmdline) | ||||
|  |  | |||
|  | @ -46,16 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe(p *[2]_C_int) (err error) { | ||||
| 	_, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) | ||||
| 	fd = int(r0) | ||||
|  | @ -235,27 +225,6 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func dup2(oldfd int, newfd int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollCreate(size int) (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { | ||||
| 	var _p0 unsafe.Pointer | ||||
| 	if len(events) > 0 { | ||||
|  | @ -340,17 +309,6 @@ func Getuid() (uid int) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func InotifyInit() (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Lchown(path string, uid int, gid int) (err error) { | ||||
| 	var _p0 *byte | ||||
| 	_p0, err = BytePtrFromString(path) | ||||
|  | @ -681,17 +639,6 @@ func setrlimit(resource int, rlim *rlimit32) (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func armSyncFileRange(fd int, flags int, off int64, n int64) (err error) { | ||||
| 	_, _, e1 := Syscall6(SYS_ARM_SYNC_FILE_RANGE, uintptr(fd), uintptr(flags), uintptr(off), uintptr(off>>32), uintptr(n), uintptr(n>>32)) | ||||
| 	if e1 != 0 { | ||||
|  |  | |||
|  | @ -46,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func dup2(oldfd int, newfd int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollCreate(size int) (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { | ||||
| 	var _p0 unsafe.Pointer | ||||
| 	if len(events) > 0 { | ||||
|  | @ -544,17 +523,6 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func InotifyInit() (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Ioperm(from int, num int, on int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on)) | ||||
| 	if e1 != 0 { | ||||
|  | @ -706,18 +674,6 @@ func Pause() (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe() (p1 int, p2 int, err error) { | ||||
| 	r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0) | ||||
| 	p1 = int(r0) | ||||
| 	p2 = int(r1) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func mmap2(addr uintptr, length uintptr, prot int, flags int, fd int, pageOffset uintptr) (xaddr uintptr, err error) { | ||||
| 	r0, _, e1 := Syscall6(SYS_MMAP2, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flags), uintptr(fd), uintptr(pageOffset)) | ||||
| 	xaddr = uintptr(r0) | ||||
|  | @ -746,14 +702,3 @@ func setrlimit(resource int, rlim *rlimit32) (err error) { | |||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
|  |  | |||
|  | @ -46,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func dup2(oldfd int, newfd int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollCreate(size int) (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { | ||||
| 	var _p0 unsafe.Pointer | ||||
| 	if len(events) > 0 { | ||||
|  | @ -717,14 +696,3 @@ func stat(path string, st *stat_t) (err error) { | |||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
|  |  | |||
|  | @ -46,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func dup2(oldfd int, newfd int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollCreate(size int) (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { | ||||
| 	var _p0 unsafe.Pointer | ||||
| 	if len(events) > 0 { | ||||
|  | @ -717,14 +696,3 @@ func stat(path string, st *stat_t) (err error) { | |||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
|  |  | |||
|  | @ -46,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func dup2(oldfd int, newfd int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollCreate(size int) (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { | ||||
| 	var _p0 unsafe.Pointer | ||||
| 	if len(events) > 0 { | ||||
|  | @ -544,17 +523,6 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func InotifyInit() (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Ioperm(from int, num int, on int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on)) | ||||
| 	if e1 != 0 { | ||||
|  | @ -706,18 +674,6 @@ func Pause() (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe() (p1 int, p2 int, err error) { | ||||
| 	r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0) | ||||
| 	p1 = int(r0) | ||||
| 	p2 = int(r1) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func mmap2(addr uintptr, length uintptr, prot int, flags int, fd int, pageOffset uintptr) (xaddr uintptr, err error) { | ||||
| 	r0, _, e1 := Syscall6(SYS_MMAP2, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flags), uintptr(fd), uintptr(pageOffset)) | ||||
| 	xaddr = uintptr(r0) | ||||
|  | @ -746,14 +702,3 @@ func setrlimit(resource int, rlim *rlimit32) (err error) { | |||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
|  |  | |||
|  | @ -46,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func dup2(oldfd int, newfd int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollCreate(size int) (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { | ||||
| 	var _p0 unsafe.Pointer | ||||
| 	if len(events) > 0 { | ||||
|  | @ -161,17 +140,6 @@ func Getuid() (uid int) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func InotifyInit() (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Ioperm(from int, num int, on int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on)) | ||||
| 	if e1 != 0 { | ||||
|  | @ -717,27 +685,6 @@ func setrlimit(resource int, rlim *rlimit32) (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe(p *[2]_C_int) (err error) { | ||||
| 	_, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func syncFileRange2(fd int, flags int, off int64, n int64) (err error) { | ||||
| 	_, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE2, uintptr(fd), uintptr(flags), uintptr(off>>32), uintptr(off), uintptr(n>>32), uintptr(n)) | ||||
| 	if e1 != 0 { | ||||
|  |  | |||
|  | @ -46,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func dup2(oldfd int, newfd int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollCreate(size int) (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { | ||||
| 	var _p0 unsafe.Pointer | ||||
| 	if len(events) > 0 { | ||||
|  | @ -191,17 +170,6 @@ func Getuid() (uid int) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func InotifyInit() (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Ioperm(from int, num int, on int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on)) | ||||
| 	if e1 != 0 { | ||||
|  | @ -763,27 +731,6 @@ func utimes(path string, times *[2]Timeval) (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe(p *[2]_C_int) (err error) { | ||||
| 	_, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func syncFileRange2(fd int, flags int, off int64, n int64) (err error) { | ||||
| 	_, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE2, uintptr(fd), uintptr(flags), uintptr(off), uintptr(n), 0, 0) | ||||
| 	if e1 != 0 { | ||||
|  |  | |||
|  | @ -46,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func dup2(oldfd int, newfd int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollCreate(size int) (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { | ||||
| 	var _p0 unsafe.Pointer | ||||
| 	if len(events) > 0 { | ||||
|  | @ -191,17 +170,6 @@ func Getuid() (uid int) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func InotifyInit() (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Ioperm(from int, num int, on int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on)) | ||||
| 	if e1 != 0 { | ||||
|  | @ -763,27 +731,6 @@ func utimes(path string, times *[2]Timeval) (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe(p *[2]_C_int) (err error) { | ||||
| 	_, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func syncFileRange2(fd int, flags int, off int64, n int64) (err error) { | ||||
| 	_, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE2, uintptr(fd), uintptr(flags), uintptr(off), uintptr(n), 0, 0) | ||||
| 	if e1 != 0 { | ||||
|  |  | |||
|  | @ -46,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func dup2(oldfd int, newfd int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollCreate(size int) (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { | ||||
| 	var _p0 unsafe.Pointer | ||||
| 	if len(events) > 0 { | ||||
|  | @ -191,17 +170,6 @@ func Getuid() (uid int) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func InotifyInit() (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Lchown(path string, uid int, gid int) (err error) { | ||||
| 	var _p0 *byte | ||||
| 	_p0, err = BytePtrFromString(path) | ||||
|  | @ -553,17 +521,6 @@ func utimes(path string, times *[2]Timeval) (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) { | ||||
| 	var _p0 *byte | ||||
| 	_p0, err = BytePtrFromString(cmdline) | ||||
|  |  | |||
|  | @ -73,16 +73,6 @@ func Fadvise(fd int, offset int64, length int64, advice int) (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func dup2(oldfd int, newfd int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Fchown(fd int, uid int, gid int) (err error) { | ||||
| 	_, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid)) | ||||
| 	if e1 != 0 { | ||||
|  | @ -180,17 +170,6 @@ func Getuid() (uid int) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func InotifyInit() (fd int, err error) { | ||||
| 	r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) | ||||
| 	fd = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func Lchown(path string, uid int, gid int) (err error) { | ||||
| 	var _p0 *byte | ||||
| 	_p0, err = BytePtrFromString(path) | ||||
|  | @ -718,24 +697,3 @@ func utimes(path string, times *[2]Timeval) (err error) { | |||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe(p *[2]_C_int) (err error) { | ||||
| 	_, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { | ||||
| 	r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
|  |  | |||
|  | @ -351,18 +351,6 @@ func Munlockall() (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe() (fd1 int, fd2 int, err error) { | ||||
| 	r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0) | ||||
| 	fd1 = int(r0) | ||||
| 	fd2 = int(r1) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe2(p *[2]_C_int, flags int) (err error) { | ||||
| 	_, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) | ||||
| 	if e1 != 0 { | ||||
|  |  | |||
|  | @ -351,18 +351,6 @@ func Munlockall() (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe() (fd1 int, fd2 int, err error) { | ||||
| 	r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0) | ||||
| 	fd1 = int(r0) | ||||
| 	fd2 = int(r1) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe2(p *[2]_C_int, flags int) (err error) { | ||||
| 	_, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) | ||||
| 	if e1 != 0 { | ||||
|  |  | |||
|  | @ -351,18 +351,6 @@ func Munlockall() (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe() (fd1 int, fd2 int, err error) { | ||||
| 	r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0) | ||||
| 	fd1 = int(r0) | ||||
| 	fd2 = int(r1) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe2(p *[2]_C_int, flags int) (err error) { | ||||
| 	_, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) | ||||
| 	if e1 != 0 { | ||||
|  |  | |||
|  | @ -351,18 +351,6 @@ func Munlockall() (err error) { | |||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe() (fd1 int, fd2 int, err error) { | ||||
| 	r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0) | ||||
| 	fd1 = int(r0) | ||||
| 	fd2 = int(r1) | ||||
| 	if e1 != 0 { | ||||
| 		err = errnoErr(e1) | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func pipe2(p *[2]_C_int, flags int) (err error) { | ||||
| 	_, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) | ||||
| 	if e1 != 0 { | ||||
|  |  | |||
|  | @ -141,6 +141,11 @@ import ( | |||
| //go:cgo_import_dynamic libc_getpeername getpeername "libsocket.so"
 | ||||
| //go:cgo_import_dynamic libc_setsockopt setsockopt "libsocket.so"
 | ||||
| //go:cgo_import_dynamic libc_recvfrom recvfrom "libsocket.so"
 | ||||
| //go:cgo_import_dynamic libc_port_create port_create "libc.so"
 | ||||
| //go:cgo_import_dynamic libc_port_associate port_associate "libc.so"
 | ||||
| //go:cgo_import_dynamic libc_port_dissociate port_dissociate "libc.so"
 | ||||
| //go:cgo_import_dynamic libc_port_get port_get "libc.so"
 | ||||
| //go:cgo_import_dynamic libc_port_getn port_getn "libc.so"
 | ||||
| 
 | ||||
| //go:linkname procpipe libc_pipe
 | ||||
| //go:linkname procpipe2 libc_pipe2
 | ||||
|  | @ -272,6 +277,11 @@ import ( | |||
| //go:linkname procgetpeername libc_getpeername
 | ||||
| //go:linkname procsetsockopt libc_setsockopt
 | ||||
| //go:linkname procrecvfrom libc_recvfrom
 | ||||
| //go:linkname procport_create libc_port_create
 | ||||
| //go:linkname procport_associate libc_port_associate
 | ||||
| //go:linkname procport_dissociate libc_port_dissociate
 | ||||
| //go:linkname procport_get libc_port_get
 | ||||
| //go:linkname procport_getn libc_port_getn
 | ||||
| 
 | ||||
| var ( | ||||
| 	procpipe, | ||||
|  | @ -403,7 +413,12 @@ var ( | |||
| 	proc__xnet_getsockopt, | ||||
| 	procgetpeername, | ||||
| 	procsetsockopt, | ||||
| 	procrecvfrom syscallFunc | ||||
| 	procrecvfrom, | ||||
| 	procport_create, | ||||
| 	procport_associate, | ||||
| 	procport_dissociate, | ||||
| 	procport_get, | ||||
| 	procport_getn syscallFunc | ||||
| ) | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
|  | @ -1981,3 +1996,58 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl | |||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func port_create() (n int, err error) { | ||||
| 	r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procport_create)), 0, 0, 0, 0, 0, 0, 0) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = e1 | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func port_associate(port int, source int, object uintptr, events int, user *byte) (n int, err error) { | ||||
| 	r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procport_associate)), 5, uintptr(port), uintptr(source), uintptr(object), uintptr(events), uintptr(unsafe.Pointer(user)), 0) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = e1 | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func port_dissociate(port int, source int, object uintptr) (n int, err error) { | ||||
| 	r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procport_dissociate)), 3, uintptr(port), uintptr(source), uintptr(object), 0, 0, 0) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = e1 | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func port_get(port int, pe *portEvent, timeout *Timespec) (n int, err error) { | ||||
| 	r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procport_get)), 3, uintptr(port), uintptr(unsafe.Pointer(pe)), uintptr(unsafe.Pointer(timeout)), 0, 0, 0) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = e1 | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||
| 
 | ||||
| func port_getn(port int, pe *portEvent, max uint32, nget *uint32, timeout *Timespec) (n int, err error) { | ||||
| 	r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procport_getn)), 5, uintptr(port), uintptr(unsafe.Pointer(pe)), uintptr(max), uintptr(unsafe.Pointer(nget)), uintptr(unsafe.Pointer(timeout)), 0) | ||||
| 	n = int(r0) | ||||
| 	if e1 != 0 { | ||||
| 		err = e1 | ||||
| 	} | ||||
| 	return | ||||
| } | ||||
|  |  | |||
|  | @ -439,4 +439,10 @@ const ( | |||
| 	SYS_PROCESS_MADVISE              = 440 | ||||
| 	SYS_EPOLL_PWAIT2                 = 441 | ||||
| 	SYS_MOUNT_SETATTR                = 442 | ||||
| 	SYS_QUOTACTL_FD                  = 443 | ||||
| 	SYS_LANDLOCK_CREATE_RULESET      = 444 | ||||
| 	SYS_LANDLOCK_ADD_RULE            = 445 | ||||
| 	SYS_LANDLOCK_RESTRICT_SELF       = 446 | ||||
| 	SYS_MEMFD_SECRET                 = 447 | ||||
| 	SYS_PROCESS_MRELEASE             = 448 | ||||
| ) | ||||
|  |  | |||
|  | @ -7,358 +7,364 @@ | |||
| package unix | ||||
| 
 | ||||
| const ( | ||||
| 	SYS_READ                   = 0 | ||||
| 	SYS_WRITE                  = 1 | ||||
| 	SYS_OPEN                   = 2 | ||||
| 	SYS_CLOSE                  = 3 | ||||
| 	SYS_STAT                   = 4 | ||||
| 	SYS_FSTAT                  = 5 | ||||
| 	SYS_LSTAT                  = 6 | ||||
| 	SYS_POLL                   = 7 | ||||
| 	SYS_LSEEK                  = 8 | ||||
| 	SYS_MMAP                   = 9 | ||||
| 	SYS_MPROTECT               = 10 | ||||
| 	SYS_MUNMAP                 = 11 | ||||
| 	SYS_BRK                    = 12 | ||||
| 	SYS_RT_SIGACTION           = 13 | ||||
| 	SYS_RT_SIGPROCMASK         = 14 | ||||
| 	SYS_RT_SIGRETURN           = 15 | ||||
| 	SYS_IOCTL                  = 16 | ||||
| 	SYS_PREAD64                = 17 | ||||
| 	SYS_PWRITE64               = 18 | ||||
| 	SYS_READV                  = 19 | ||||
| 	SYS_WRITEV                 = 20 | ||||
| 	SYS_ACCESS                 = 21 | ||||
| 	SYS_PIPE                   = 22 | ||||
| 	SYS_SELECT                 = 23 | ||||
| 	SYS_SCHED_YIELD            = 24 | ||||
| 	SYS_MREMAP                 = 25 | ||||
| 	SYS_MSYNC                  = 26 | ||||
| 	SYS_MINCORE                = 27 | ||||
| 	SYS_MADVISE                = 28 | ||||
| 	SYS_SHMGET                 = 29 | ||||
| 	SYS_SHMAT                  = 30 | ||||
| 	SYS_SHMCTL                 = 31 | ||||
| 	SYS_DUP                    = 32 | ||||
| 	SYS_DUP2                   = 33 | ||||
| 	SYS_PAUSE                  = 34 | ||||
| 	SYS_NANOSLEEP              = 35 | ||||
| 	SYS_GETITIMER              = 36 | ||||
| 	SYS_ALARM                  = 37 | ||||
| 	SYS_SETITIMER              = 38 | ||||
| 	SYS_GETPID                 = 39 | ||||
| 	SYS_SENDFILE               = 40 | ||||
| 	SYS_SOCKET                 = 41 | ||||
| 	SYS_CONNECT                = 42 | ||||
| 	SYS_ACCEPT                 = 43 | ||||
| 	SYS_SENDTO                 = 44 | ||||
| 	SYS_RECVFROM               = 45 | ||||
| 	SYS_SENDMSG                = 46 | ||||
| 	SYS_RECVMSG                = 47 | ||||
| 	SYS_SHUTDOWN               = 48 | ||||
| 	SYS_BIND                   = 49 | ||||
| 	SYS_LISTEN                 = 50 | ||||
| 	SYS_GETSOCKNAME            = 51 | ||||
| 	SYS_GETPEERNAME            = 52 | ||||
| 	SYS_SOCKETPAIR             = 53 | ||||
| 	SYS_SETSOCKOPT             = 54 | ||||
| 	SYS_GETSOCKOPT             = 55 | ||||
| 	SYS_CLONE                  = 56 | ||||
| 	SYS_FORK                   = 57 | ||||
| 	SYS_VFORK                  = 58 | ||||
| 	SYS_EXECVE                 = 59 | ||||
| 	SYS_EXIT                   = 60 | ||||
| 	SYS_WAIT4                  = 61 | ||||
| 	SYS_KILL                   = 62 | ||||
| 	SYS_UNAME                  = 63 | ||||
| 	SYS_SEMGET                 = 64 | ||||
| 	SYS_SEMOP                  = 65 | ||||
| 	SYS_SEMCTL                 = 66 | ||||
| 	SYS_SHMDT                  = 67 | ||||
| 	SYS_MSGGET                 = 68 | ||||
| 	SYS_MSGSND                 = 69 | ||||
| 	SYS_MSGRCV                 = 70 | ||||
| 	SYS_MSGCTL                 = 71 | ||||
| 	SYS_FCNTL                  = 72 | ||||
| 	SYS_FLOCK                  = 73 | ||||
| 	SYS_FSYNC                  = 74 | ||||
| 	SYS_FDATASYNC              = 75 | ||||
| 	SYS_TRUNCATE               = 76 | ||||
| 	SYS_FTRUNCATE              = 77 | ||||
| 	SYS_GETDENTS               = 78 | ||||
| 	SYS_GETCWD                 = 79 | ||||
| 	SYS_CHDIR                  = 80 | ||||
| 	SYS_FCHDIR                 = 81 | ||||
| 	SYS_RENAME                 = 82 | ||||
| 	SYS_MKDIR                  = 83 | ||||
| 	SYS_RMDIR                  = 84 | ||||
| 	SYS_CREAT                  = 85 | ||||
| 	SYS_LINK                   = 86 | ||||
| 	SYS_UNLINK                 = 87 | ||||
| 	SYS_SYMLINK                = 88 | ||||
| 	SYS_READLINK               = 89 | ||||
| 	SYS_CHMOD                  = 90 | ||||
| 	SYS_FCHMOD                 = 91 | ||||
| 	SYS_CHOWN                  = 92 | ||||
| 	SYS_FCHOWN                 = 93 | ||||
| 	SYS_LCHOWN                 = 94 | ||||
| 	SYS_UMASK                  = 95 | ||||
| 	SYS_GETTIMEOFDAY           = 96 | ||||
| 	SYS_GETRLIMIT              = 97 | ||||
| 	SYS_GETRUSAGE              = 98 | ||||
| 	SYS_SYSINFO                = 99 | ||||
| 	SYS_TIMES                  = 100 | ||||
| 	SYS_PTRACE                 = 101 | ||||
| 	SYS_GETUID                 = 102 | ||||
| 	SYS_SYSLOG                 = 103 | ||||
| 	SYS_GETGID                 = 104 | ||||
| 	SYS_SETUID                 = 105 | ||||
| 	SYS_SETGID                 = 106 | ||||
| 	SYS_GETEUID                = 107 | ||||
| 	SYS_GETEGID                = 108 | ||||
| 	SYS_SETPGID                = 109 | ||||
| 	SYS_GETPPID                = 110 | ||||
| 	SYS_GETPGRP                = 111 | ||||
| 	SYS_SETSID                 = 112 | ||||
| 	SYS_SETREUID               = 113 | ||||
| 	SYS_SETREGID               = 114 | ||||
| 	SYS_GETGROUPS              = 115 | ||||
| 	SYS_SETGROUPS              = 116 | ||||
| 	SYS_SETRESUID              = 117 | ||||
| 	SYS_GETRESUID              = 118 | ||||
| 	SYS_SETRESGID              = 119 | ||||
| 	SYS_GETRESGID              = 120 | ||||
| 	SYS_GETPGID                = 121 | ||||
| 	SYS_SETFSUID               = 122 | ||||
| 	SYS_SETFSGID               = 123 | ||||
| 	SYS_GETSID                 = 124 | ||||
| 	SYS_CAPGET                 = 125 | ||||
| 	SYS_CAPSET                 = 126 | ||||
| 	SYS_RT_SIGPENDING          = 127 | ||||
| 	SYS_RT_SIGTIMEDWAIT        = 128 | ||||
| 	SYS_RT_SIGQUEUEINFO        = 129 | ||||
| 	SYS_RT_SIGSUSPEND          = 130 | ||||
| 	SYS_SIGALTSTACK            = 131 | ||||
| 	SYS_UTIME                  = 132 | ||||
| 	SYS_MKNOD                  = 133 | ||||
| 	SYS_USELIB                 = 134 | ||||
| 	SYS_PERSONALITY            = 135 | ||||
| 	SYS_USTAT                  = 136 | ||||
| 	SYS_STATFS                 = 137 | ||||
| 	SYS_FSTATFS                = 138 | ||||
| 	SYS_SYSFS                  = 139 | ||||
| 	SYS_GETPRIORITY            = 140 | ||||
| 	SYS_SETPRIORITY            = 141 | ||||
| 	SYS_SCHED_SETPARAM         = 142 | ||||
| 	SYS_SCHED_GETPARAM         = 143 | ||||
| 	SYS_SCHED_SETSCHEDULER     = 144 | ||||
| 	SYS_SCHED_GETSCHEDULER     = 145 | ||||
| 	SYS_SCHED_GET_PRIORITY_MAX = 146 | ||||
| 	SYS_SCHED_GET_PRIORITY_MIN = 147 | ||||
| 	SYS_SCHED_RR_GET_INTERVAL  = 148 | ||||
| 	SYS_MLOCK                  = 149 | ||||
| 	SYS_MUNLOCK                = 150 | ||||
| 	SYS_MLOCKALL               = 151 | ||||
| 	SYS_MUNLOCKALL             = 152 | ||||
| 	SYS_VHANGUP                = 153 | ||||
| 	SYS_MODIFY_LDT             = 154 | ||||
| 	SYS_PIVOT_ROOT             = 155 | ||||
| 	SYS__SYSCTL                = 156 | ||||
| 	SYS_PRCTL                  = 157 | ||||
| 	SYS_ARCH_PRCTL             = 158 | ||||
| 	SYS_ADJTIMEX               = 159 | ||||
| 	SYS_SETRLIMIT              = 160 | ||||
| 	SYS_CHROOT                 = 161 | ||||
| 	SYS_SYNC                   = 162 | ||||
| 	SYS_ACCT                   = 163 | ||||
| 	SYS_SETTIMEOFDAY           = 164 | ||||
| 	SYS_MOUNT                  = 165 | ||||
| 	SYS_UMOUNT2                = 166 | ||||
| 	SYS_SWAPON                 = 167 | ||||
| 	SYS_SWAPOFF                = 168 | ||||
| 	SYS_REBOOT                 = 169 | ||||
| 	SYS_SETHOSTNAME            = 170 | ||||
| 	SYS_SETDOMAINNAME          = 171 | ||||
| 	SYS_IOPL                   = 172 | ||||
| 	SYS_IOPERM                 = 173 | ||||
| 	SYS_CREATE_MODULE          = 174 | ||||
| 	SYS_INIT_MODULE            = 175 | ||||
| 	SYS_DELETE_MODULE          = 176 | ||||
| 	SYS_GET_KERNEL_SYMS        = 177 | ||||
| 	SYS_QUERY_MODULE           = 178 | ||||
| 	SYS_QUOTACTL               = 179 | ||||
| 	SYS_NFSSERVCTL             = 180 | ||||
| 	SYS_GETPMSG                = 181 | ||||
| 	SYS_PUTPMSG                = 182 | ||||
| 	SYS_AFS_SYSCALL            = 183 | ||||
| 	SYS_TUXCALL                = 184 | ||||
| 	SYS_SECURITY               = 185 | ||||
| 	SYS_GETTID                 = 186 | ||||
| 	SYS_READAHEAD              = 187 | ||||
| 	SYS_SETXATTR               = 188 | ||||
| 	SYS_LSETXATTR              = 189 | ||||
| 	SYS_FSETXATTR              = 190 | ||||
| 	SYS_GETXATTR               = 191 | ||||
| 	SYS_LGETXATTR              = 192 | ||||
| 	SYS_FGETXATTR              = 193 | ||||
| 	SYS_LISTXATTR              = 194 | ||||
| 	SYS_LLISTXATTR             = 195 | ||||
| 	SYS_FLISTXATTR             = 196 | ||||
| 	SYS_REMOVEXATTR            = 197 | ||||
| 	SYS_LREMOVEXATTR           = 198 | ||||
| 	SYS_FREMOVEXATTR           = 199 | ||||
| 	SYS_TKILL                  = 200 | ||||
| 	SYS_TIME                   = 201 | ||||
| 	SYS_FUTEX                  = 202 | ||||
| 	SYS_SCHED_SETAFFINITY      = 203 | ||||
| 	SYS_SCHED_GETAFFINITY      = 204 | ||||
| 	SYS_SET_THREAD_AREA        = 205 | ||||
| 	SYS_IO_SETUP               = 206 | ||||
| 	SYS_IO_DESTROY             = 207 | ||||
| 	SYS_IO_GETEVENTS           = 208 | ||||
| 	SYS_IO_SUBMIT              = 209 | ||||
| 	SYS_IO_CANCEL              = 210 | ||||
| 	SYS_GET_THREAD_AREA        = 211 | ||||
| 	SYS_LOOKUP_DCOOKIE         = 212 | ||||
| 	SYS_EPOLL_CREATE           = 213 | ||||
| 	SYS_EPOLL_CTL_OLD          = 214 | ||||
| 	SYS_EPOLL_WAIT_OLD         = 215 | ||||
| 	SYS_REMAP_FILE_PAGES       = 216 | ||||
| 	SYS_GETDENTS64             = 217 | ||||
| 	SYS_SET_TID_ADDRESS        = 218 | ||||
| 	SYS_RESTART_SYSCALL        = 219 | ||||
| 	SYS_SEMTIMEDOP             = 220 | ||||
| 	SYS_FADVISE64              = 221 | ||||
| 	SYS_TIMER_CREATE           = 222 | ||||
| 	SYS_TIMER_SETTIME          = 223 | ||||
| 	SYS_TIMER_GETTIME          = 224 | ||||
| 	SYS_TIMER_GETOVERRUN       = 225 | ||||
| 	SYS_TIMER_DELETE           = 226 | ||||
| 	SYS_CLOCK_SETTIME          = 227 | ||||
| 	SYS_CLOCK_GETTIME          = 228 | ||||
| 	SYS_CLOCK_GETRES           = 229 | ||||
| 	SYS_CLOCK_NANOSLEEP        = 230 | ||||
| 	SYS_EXIT_GROUP             = 231 | ||||
| 	SYS_EPOLL_WAIT             = 232 | ||||
| 	SYS_EPOLL_CTL              = 233 | ||||
| 	SYS_TGKILL                 = 234 | ||||
| 	SYS_UTIMES                 = 235 | ||||
| 	SYS_VSERVER                = 236 | ||||
| 	SYS_MBIND                  = 237 | ||||
| 	SYS_SET_MEMPOLICY          = 238 | ||||
| 	SYS_GET_MEMPOLICY          = 239 | ||||
| 	SYS_MQ_OPEN                = 240 | ||||
| 	SYS_MQ_UNLINK              = 241 | ||||
| 	SYS_MQ_TIMEDSEND           = 242 | ||||
| 	SYS_MQ_TIMEDRECEIVE        = 243 | ||||
| 	SYS_MQ_NOTIFY              = 244 | ||||
| 	SYS_MQ_GETSETATTR          = 245 | ||||
| 	SYS_KEXEC_LOAD             = 246 | ||||
| 	SYS_WAITID                 = 247 | ||||
| 	SYS_ADD_KEY                = 248 | ||||
| 	SYS_REQUEST_KEY            = 249 | ||||
| 	SYS_KEYCTL                 = 250 | ||||
| 	SYS_IOPRIO_SET             = 251 | ||||
| 	SYS_IOPRIO_GET             = 252 | ||||
| 	SYS_INOTIFY_INIT           = 253 | ||||
| 	SYS_INOTIFY_ADD_WATCH      = 254 | ||||
| 	SYS_INOTIFY_RM_WATCH       = 255 | ||||
| 	SYS_MIGRATE_PAGES          = 256 | ||||
| 	SYS_OPENAT                 = 257 | ||||
| 	SYS_MKDIRAT                = 258 | ||||
| 	SYS_MKNODAT                = 259 | ||||
| 	SYS_FCHOWNAT               = 260 | ||||
| 	SYS_FUTIMESAT              = 261 | ||||
| 	SYS_NEWFSTATAT             = 262 | ||||
| 	SYS_UNLINKAT               = 263 | ||||
| 	SYS_RENAMEAT               = 264 | ||||
| 	SYS_LINKAT                 = 265 | ||||
| 	SYS_SYMLINKAT              = 266 | ||||
| 	SYS_READLINKAT             = 267 | ||||
| 	SYS_FCHMODAT               = 268 | ||||
| 	SYS_FACCESSAT              = 269 | ||||
| 	SYS_PSELECT6               = 270 | ||||
| 	SYS_PPOLL                  = 271 | ||||
| 	SYS_UNSHARE                = 272 | ||||
| 	SYS_SET_ROBUST_LIST        = 273 | ||||
| 	SYS_GET_ROBUST_LIST        = 274 | ||||
| 	SYS_SPLICE                 = 275 | ||||
| 	SYS_TEE                    = 276 | ||||
| 	SYS_SYNC_FILE_RANGE        = 277 | ||||
| 	SYS_VMSPLICE               = 278 | ||||
| 	SYS_MOVE_PAGES             = 279 | ||||
| 	SYS_UTIMENSAT              = 280 | ||||
| 	SYS_EPOLL_PWAIT            = 281 | ||||
| 	SYS_SIGNALFD               = 282 | ||||
| 	SYS_TIMERFD_CREATE         = 283 | ||||
| 	SYS_EVENTFD                = 284 | ||||
| 	SYS_FALLOCATE              = 285 | ||||
| 	SYS_TIMERFD_SETTIME        = 286 | ||||
| 	SYS_TIMERFD_GETTIME        = 287 | ||||
| 	SYS_ACCEPT4                = 288 | ||||
| 	SYS_SIGNALFD4              = 289 | ||||
| 	SYS_EVENTFD2               = 290 | ||||
| 	SYS_EPOLL_CREATE1          = 291 | ||||
| 	SYS_DUP3                   = 292 | ||||
| 	SYS_PIPE2                  = 293 | ||||
| 	SYS_INOTIFY_INIT1          = 294 | ||||
| 	SYS_PREADV                 = 295 | ||||
| 	SYS_PWRITEV                = 296 | ||||
| 	SYS_RT_TGSIGQUEUEINFO      = 297 | ||||
| 	SYS_PERF_EVENT_OPEN        = 298 | ||||
| 	SYS_RECVMMSG               = 299 | ||||
| 	SYS_FANOTIFY_INIT          = 300 | ||||
| 	SYS_FANOTIFY_MARK          = 301 | ||||
| 	SYS_PRLIMIT64              = 302 | ||||
| 	SYS_NAME_TO_HANDLE_AT      = 303 | ||||
| 	SYS_OPEN_BY_HANDLE_AT      = 304 | ||||
| 	SYS_CLOCK_ADJTIME          = 305 | ||||
| 	SYS_SYNCFS                 = 306 | ||||
| 	SYS_SENDMMSG               = 307 | ||||
| 	SYS_SETNS                  = 308 | ||||
| 	SYS_GETCPU                 = 309 | ||||
| 	SYS_PROCESS_VM_READV       = 310 | ||||
| 	SYS_PROCESS_VM_WRITEV      = 311 | ||||
| 	SYS_KCMP                   = 312 | ||||
| 	SYS_FINIT_MODULE           = 313 | ||||
| 	SYS_SCHED_SETATTR          = 314 | ||||
| 	SYS_SCHED_GETATTR          = 315 | ||||
| 	SYS_RENAMEAT2              = 316 | ||||
| 	SYS_SECCOMP                = 317 | ||||
| 	SYS_GETRANDOM              = 318 | ||||
| 	SYS_MEMFD_CREATE           = 319 | ||||
| 	SYS_KEXEC_FILE_LOAD        = 320 | ||||
| 	SYS_BPF                    = 321 | ||||
| 	SYS_EXECVEAT               = 322 | ||||
| 	SYS_USERFAULTFD            = 323 | ||||
| 	SYS_MEMBARRIER             = 324 | ||||
| 	SYS_MLOCK2                 = 325 | ||||
| 	SYS_COPY_FILE_RANGE        = 326 | ||||
| 	SYS_PREADV2                = 327 | ||||
| 	SYS_PWRITEV2               = 328 | ||||
| 	SYS_PKEY_MPROTECT          = 329 | ||||
| 	SYS_PKEY_ALLOC             = 330 | ||||
| 	SYS_PKEY_FREE              = 331 | ||||
| 	SYS_STATX                  = 332 | ||||
| 	SYS_IO_PGETEVENTS          = 333 | ||||
| 	SYS_RSEQ                   = 334 | ||||
| 	SYS_PIDFD_SEND_SIGNAL      = 424 | ||||
| 	SYS_IO_URING_SETUP         = 425 | ||||
| 	SYS_IO_URING_ENTER         = 426 | ||||
| 	SYS_IO_URING_REGISTER      = 427 | ||||
| 	SYS_OPEN_TREE              = 428 | ||||
| 	SYS_MOVE_MOUNT             = 429 | ||||
| 	SYS_FSOPEN                 = 430 | ||||
| 	SYS_FSCONFIG               = 431 | ||||
| 	SYS_FSMOUNT                = 432 | ||||
| 	SYS_FSPICK                 = 433 | ||||
| 	SYS_PIDFD_OPEN             = 434 | ||||
| 	SYS_CLONE3                 = 435 | ||||
| 	SYS_CLOSE_RANGE            = 436 | ||||
| 	SYS_OPENAT2                = 437 | ||||
| 	SYS_PIDFD_GETFD            = 438 | ||||
| 	SYS_FACCESSAT2             = 439 | ||||
| 	SYS_PROCESS_MADVISE        = 440 | ||||
| 	SYS_EPOLL_PWAIT2           = 441 | ||||
| 	SYS_MOUNT_SETATTR          = 442 | ||||
| 	SYS_READ                    = 0 | ||||
| 	SYS_WRITE                   = 1 | ||||
| 	SYS_OPEN                    = 2 | ||||
| 	SYS_CLOSE                   = 3 | ||||
| 	SYS_STAT                    = 4 | ||||
| 	SYS_FSTAT                   = 5 | ||||
| 	SYS_LSTAT                   = 6 | ||||
| 	SYS_POLL                    = 7 | ||||
| 	SYS_LSEEK                   = 8 | ||||
| 	SYS_MMAP                    = 9 | ||||
| 	SYS_MPROTECT                = 10 | ||||
| 	SYS_MUNMAP                  = 11 | ||||
| 	SYS_BRK                     = 12 | ||||
| 	SYS_RT_SIGACTION            = 13 | ||||
| 	SYS_RT_SIGPROCMASK          = 14 | ||||
| 	SYS_RT_SIGRETURN            = 15 | ||||
| 	SYS_IOCTL                   = 16 | ||||
| 	SYS_PREAD64                 = 17 | ||||
| 	SYS_PWRITE64                = 18 | ||||
| 	SYS_READV                   = 19 | ||||
| 	SYS_WRITEV                  = 20 | ||||
| 	SYS_ACCESS                  = 21 | ||||
| 	SYS_PIPE                    = 22 | ||||
| 	SYS_SELECT                  = 23 | ||||
| 	SYS_SCHED_YIELD             = 24 | ||||
| 	SYS_MREMAP                  = 25 | ||||
| 	SYS_MSYNC                   = 26 | ||||
| 	SYS_MINCORE                 = 27 | ||||
| 	SYS_MADVISE                 = 28 | ||||
| 	SYS_SHMGET                  = 29 | ||||
| 	SYS_SHMAT                   = 30 | ||||
| 	SYS_SHMCTL                  = 31 | ||||
| 	SYS_DUP                     = 32 | ||||
| 	SYS_DUP2                    = 33 | ||||
| 	SYS_PAUSE                   = 34 | ||||
| 	SYS_NANOSLEEP               = 35 | ||||
| 	SYS_GETITIMER               = 36 | ||||
| 	SYS_ALARM                   = 37 | ||||
| 	SYS_SETITIMER               = 38 | ||||
| 	SYS_GETPID                  = 39 | ||||
| 	SYS_SENDFILE                = 40 | ||||
| 	SYS_SOCKET                  = 41 | ||||
| 	SYS_CONNECT                 = 42 | ||||
| 	SYS_ACCEPT                  = 43 | ||||
| 	SYS_SENDTO                  = 44 | ||||
| 	SYS_RECVFROM                = 45 | ||||
| 	SYS_SENDMSG                 = 46 | ||||
| 	SYS_RECVMSG                 = 47 | ||||
| 	SYS_SHUTDOWN                = 48 | ||||
| 	SYS_BIND                    = 49 | ||||
| 	SYS_LISTEN                  = 50 | ||||
| 	SYS_GETSOCKNAME             = 51 | ||||
| 	SYS_GETPEERNAME             = 52 | ||||
| 	SYS_SOCKETPAIR              = 53 | ||||
| 	SYS_SETSOCKOPT              = 54 | ||||
| 	SYS_GETSOCKOPT              = 55 | ||||
| 	SYS_CLONE                   = 56 | ||||
| 	SYS_FORK                    = 57 | ||||
| 	SYS_VFORK                   = 58 | ||||
| 	SYS_EXECVE                  = 59 | ||||
| 	SYS_EXIT                    = 60 | ||||
| 	SYS_WAIT4                   = 61 | ||||
| 	SYS_KILL                    = 62 | ||||
| 	SYS_UNAME                   = 63 | ||||
| 	SYS_SEMGET                  = 64 | ||||
| 	SYS_SEMOP                   = 65 | ||||
| 	SYS_SEMCTL                  = 66 | ||||
| 	SYS_SHMDT                   = 67 | ||||
| 	SYS_MSGGET                  = 68 | ||||
| 	SYS_MSGSND                  = 69 | ||||
| 	SYS_MSGRCV                  = 70 | ||||
| 	SYS_MSGCTL                  = 71 | ||||
| 	SYS_FCNTL                   = 72 | ||||
| 	SYS_FLOCK                   = 73 | ||||
| 	SYS_FSYNC                   = 74 | ||||
| 	SYS_FDATASYNC               = 75 | ||||
| 	SYS_TRUNCATE                = 76 | ||||
| 	SYS_FTRUNCATE               = 77 | ||||
| 	SYS_GETDENTS                = 78 | ||||
| 	SYS_GETCWD                  = 79 | ||||
| 	SYS_CHDIR                   = 80 | ||||
| 	SYS_FCHDIR                  = 81 | ||||
| 	SYS_RENAME                  = 82 | ||||
| 	SYS_MKDIR                   = 83 | ||||
| 	SYS_RMDIR                   = 84 | ||||
| 	SYS_CREAT                   = 85 | ||||
| 	SYS_LINK                    = 86 | ||||
| 	SYS_UNLINK                  = 87 | ||||
| 	SYS_SYMLINK                 = 88 | ||||
| 	SYS_READLINK                = 89 | ||||
| 	SYS_CHMOD                   = 90 | ||||
| 	SYS_FCHMOD                  = 91 | ||||
| 	SYS_CHOWN                   = 92 | ||||
| 	SYS_FCHOWN                  = 93 | ||||
| 	SYS_LCHOWN                  = 94 | ||||
| 	SYS_UMASK                   = 95 | ||||
| 	SYS_GETTIMEOFDAY            = 96 | ||||
| 	SYS_GETRLIMIT               = 97 | ||||
| 	SYS_GETRUSAGE               = 98 | ||||
| 	SYS_SYSINFO                 = 99 | ||||
| 	SYS_TIMES                   = 100 | ||||
| 	SYS_PTRACE                  = 101 | ||||
| 	SYS_GETUID                  = 102 | ||||
| 	SYS_SYSLOG                  = 103 | ||||
| 	SYS_GETGID                  = 104 | ||||
| 	SYS_SETUID                  = 105 | ||||
| 	SYS_SETGID                  = 106 | ||||
| 	SYS_GETEUID                 = 107 | ||||
| 	SYS_GETEGID                 = 108 | ||||
| 	SYS_SETPGID                 = 109 | ||||
| 	SYS_GETPPID                 = 110 | ||||
| 	SYS_GETPGRP                 = 111 | ||||
| 	SYS_SETSID                  = 112 | ||||
| 	SYS_SETREUID                = 113 | ||||
| 	SYS_SETREGID                = 114 | ||||
| 	SYS_GETGROUPS               = 115 | ||||
| 	SYS_SETGROUPS               = 116 | ||||
| 	SYS_SETRESUID               = 117 | ||||
| 	SYS_GETRESUID               = 118 | ||||
| 	SYS_SETRESGID               = 119 | ||||
| 	SYS_GETRESGID               = 120 | ||||
| 	SYS_GETPGID                 = 121 | ||||
| 	SYS_SETFSUID                = 122 | ||||
| 	SYS_SETFSGID                = 123 | ||||
| 	SYS_GETSID                  = 124 | ||||
| 	SYS_CAPGET                  = 125 | ||||
| 	SYS_CAPSET                  = 126 | ||||
| 	SYS_RT_SIGPENDING           = 127 | ||||
| 	SYS_RT_SIGTIMEDWAIT         = 128 | ||||
| 	SYS_RT_SIGQUEUEINFO         = 129 | ||||
| 	SYS_RT_SIGSUSPEND           = 130 | ||||
| 	SYS_SIGALTSTACK             = 131 | ||||
| 	SYS_UTIME                   = 132 | ||||
| 	SYS_MKNOD                   = 133 | ||||
| 	SYS_USELIB                  = 134 | ||||
| 	SYS_PERSONALITY             = 135 | ||||
| 	SYS_USTAT                   = 136 | ||||
| 	SYS_STATFS                  = 137 | ||||
| 	SYS_FSTATFS                 = 138 | ||||
| 	SYS_SYSFS                   = 139 | ||||
| 	SYS_GETPRIORITY             = 140 | ||||
| 	SYS_SETPRIORITY             = 141 | ||||
| 	SYS_SCHED_SETPARAM          = 142 | ||||
| 	SYS_SCHED_GETPARAM          = 143 | ||||
| 	SYS_SCHED_SETSCHEDULER      = 144 | ||||
| 	SYS_SCHED_GETSCHEDULER      = 145 | ||||
| 	SYS_SCHED_GET_PRIORITY_MAX  = 146 | ||||
| 	SYS_SCHED_GET_PRIORITY_MIN  = 147 | ||||
| 	SYS_SCHED_RR_GET_INTERVAL   = 148 | ||||
| 	SYS_MLOCK                   = 149 | ||||
| 	SYS_MUNLOCK                 = 150 | ||||
| 	SYS_MLOCKALL                = 151 | ||||
| 	SYS_MUNLOCKALL              = 152 | ||||
| 	SYS_VHANGUP                 = 153 | ||||
| 	SYS_MODIFY_LDT              = 154 | ||||
| 	SYS_PIVOT_ROOT              = 155 | ||||
| 	SYS__SYSCTL                 = 156 | ||||
| 	SYS_PRCTL                   = 157 | ||||
| 	SYS_ARCH_PRCTL              = 158 | ||||
| 	SYS_ADJTIMEX                = 159 | ||||
| 	SYS_SETRLIMIT               = 160 | ||||
| 	SYS_CHROOT                  = 161 | ||||
| 	SYS_SYNC                    = 162 | ||||
| 	SYS_ACCT                    = 163 | ||||
| 	SYS_SETTIMEOFDAY            = 164 | ||||
| 	SYS_MOUNT                   = 165 | ||||
| 	SYS_UMOUNT2                 = 166 | ||||
| 	SYS_SWAPON                  = 167 | ||||
| 	SYS_SWAPOFF                 = 168 | ||||
| 	SYS_REBOOT                  = 169 | ||||
| 	SYS_SETHOSTNAME             = 170 | ||||
| 	SYS_SETDOMAINNAME           = 171 | ||||
| 	SYS_IOPL                    = 172 | ||||
| 	SYS_IOPERM                  = 173 | ||||
| 	SYS_CREATE_MODULE           = 174 | ||||
| 	SYS_INIT_MODULE             = 175 | ||||
| 	SYS_DELETE_MODULE           = 176 | ||||
| 	SYS_GET_KERNEL_SYMS         = 177 | ||||
| 	SYS_QUERY_MODULE            = 178 | ||||
| 	SYS_QUOTACTL                = 179 | ||||
| 	SYS_NFSSERVCTL              = 180 | ||||
| 	SYS_GETPMSG                 = 181 | ||||
| 	SYS_PUTPMSG                 = 182 | ||||
| 	SYS_AFS_SYSCALL             = 183 | ||||
| 	SYS_TUXCALL                 = 184 | ||||
| 	SYS_SECURITY                = 185 | ||||
| 	SYS_GETTID                  = 186 | ||||
| 	SYS_READAHEAD               = 187 | ||||
| 	SYS_SETXATTR                = 188 | ||||
| 	SYS_LSETXATTR               = 189 | ||||
| 	SYS_FSETXATTR               = 190 | ||||
| 	SYS_GETXATTR                = 191 | ||||
| 	SYS_LGETXATTR               = 192 | ||||
| 	SYS_FGETXATTR               = 193 | ||||
| 	SYS_LISTXATTR               = 194 | ||||
| 	SYS_LLISTXATTR              = 195 | ||||
| 	SYS_FLISTXATTR              = 196 | ||||
| 	SYS_REMOVEXATTR             = 197 | ||||
| 	SYS_LREMOVEXATTR            = 198 | ||||
| 	SYS_FREMOVEXATTR            = 199 | ||||
| 	SYS_TKILL                   = 200 | ||||
| 	SYS_TIME                    = 201 | ||||
| 	SYS_FUTEX                   = 202 | ||||
| 	SYS_SCHED_SETAFFINITY       = 203 | ||||
| 	SYS_SCHED_GETAFFINITY       = 204 | ||||
| 	SYS_SET_THREAD_AREA         = 205 | ||||
| 	SYS_IO_SETUP                = 206 | ||||
| 	SYS_IO_DESTROY              = 207 | ||||
| 	SYS_IO_GETEVENTS            = 208 | ||||
| 	SYS_IO_SUBMIT               = 209 | ||||
| 	SYS_IO_CANCEL               = 210 | ||||
| 	SYS_GET_THREAD_AREA         = 211 | ||||
| 	SYS_LOOKUP_DCOOKIE          = 212 | ||||
| 	SYS_EPOLL_CREATE            = 213 | ||||
| 	SYS_EPOLL_CTL_OLD           = 214 | ||||
| 	SYS_EPOLL_WAIT_OLD          = 215 | ||||
| 	SYS_REMAP_FILE_PAGES        = 216 | ||||
| 	SYS_GETDENTS64              = 217 | ||||
| 	SYS_SET_TID_ADDRESS         = 218 | ||||
| 	SYS_RESTART_SYSCALL         = 219 | ||||
| 	SYS_SEMTIMEDOP              = 220 | ||||
| 	SYS_FADVISE64               = 221 | ||||
| 	SYS_TIMER_CREATE            = 222 | ||||
| 	SYS_TIMER_SETTIME           = 223 | ||||
| 	SYS_TIMER_GETTIME           = 224 | ||||
| 	SYS_TIMER_GETOVERRUN        = 225 | ||||
| 	SYS_TIMER_DELETE            = 226 | ||||
| 	SYS_CLOCK_SETTIME           = 227 | ||||
| 	SYS_CLOCK_GETTIME           = 228 | ||||
| 	SYS_CLOCK_GETRES            = 229 | ||||
| 	SYS_CLOCK_NANOSLEEP         = 230 | ||||
| 	SYS_EXIT_GROUP              = 231 | ||||
| 	SYS_EPOLL_WAIT              = 232 | ||||
| 	SYS_EPOLL_CTL               = 233 | ||||
| 	SYS_TGKILL                  = 234 | ||||
| 	SYS_UTIMES                  = 235 | ||||
| 	SYS_VSERVER                 = 236 | ||||
| 	SYS_MBIND                   = 237 | ||||
| 	SYS_SET_MEMPOLICY           = 238 | ||||
| 	SYS_GET_MEMPOLICY           = 239 | ||||
| 	SYS_MQ_OPEN                 = 240 | ||||
| 	SYS_MQ_UNLINK               = 241 | ||||
| 	SYS_MQ_TIMEDSEND            = 242 | ||||
| 	SYS_MQ_TIMEDRECEIVE         = 243 | ||||
| 	SYS_MQ_NOTIFY               = 244 | ||||
| 	SYS_MQ_GETSETATTR           = 245 | ||||
| 	SYS_KEXEC_LOAD              = 246 | ||||
| 	SYS_WAITID                  = 247 | ||||
| 	SYS_ADD_KEY                 = 248 | ||||
| 	SYS_REQUEST_KEY             = 249 | ||||
| 	SYS_KEYCTL                  = 250 | ||||
| 	SYS_IOPRIO_SET              = 251 | ||||
| 	SYS_IOPRIO_GET              = 252 | ||||
| 	SYS_INOTIFY_INIT            = 253 | ||||
| 	SYS_INOTIFY_ADD_WATCH       = 254 | ||||
| 	SYS_INOTIFY_RM_WATCH        = 255 | ||||
| 	SYS_MIGRATE_PAGES           = 256 | ||||
| 	SYS_OPENAT                  = 257 | ||||
| 	SYS_MKDIRAT                 = 258 | ||||
| 	SYS_MKNODAT                 = 259 | ||||
| 	SYS_FCHOWNAT                = 260 | ||||
| 	SYS_FUTIMESAT               = 261 | ||||
| 	SYS_NEWFSTATAT              = 262 | ||||
| 	SYS_UNLINKAT                = 263 | ||||
| 	SYS_RENAMEAT                = 264 | ||||
| 	SYS_LINKAT                  = 265 | ||||
| 	SYS_SYMLINKAT               = 266 | ||||
| 	SYS_READLINKAT              = 267 | ||||
| 	SYS_FCHMODAT                = 268 | ||||
| 	SYS_FACCESSAT               = 269 | ||||
| 	SYS_PSELECT6                = 270 | ||||
| 	SYS_PPOLL                   = 271 | ||||
| 	SYS_UNSHARE                 = 272 | ||||
| 	SYS_SET_ROBUST_LIST         = 273 | ||||
| 	SYS_GET_ROBUST_LIST         = 274 | ||||
| 	SYS_SPLICE                  = 275 | ||||
| 	SYS_TEE                     = 276 | ||||
| 	SYS_SYNC_FILE_RANGE         = 277 | ||||
| 	SYS_VMSPLICE                = 278 | ||||
| 	SYS_MOVE_PAGES              = 279 | ||||
| 	SYS_UTIMENSAT               = 280 | ||||
| 	SYS_EPOLL_PWAIT             = 281 | ||||
| 	SYS_SIGNALFD                = 282 | ||||
| 	SYS_TIMERFD_CREATE          = 283 | ||||
| 	SYS_EVENTFD                 = 284 | ||||
| 	SYS_FALLOCATE               = 285 | ||||
| 	SYS_TIMERFD_SETTIME         = 286 | ||||
| 	SYS_TIMERFD_GETTIME         = 287 | ||||
| 	SYS_ACCEPT4                 = 288 | ||||
| 	SYS_SIGNALFD4               = 289 | ||||
| 	SYS_EVENTFD2                = 290 | ||||
| 	SYS_EPOLL_CREATE1           = 291 | ||||
| 	SYS_DUP3                    = 292 | ||||
| 	SYS_PIPE2                   = 293 | ||||
| 	SYS_INOTIFY_INIT1           = 294 | ||||
| 	SYS_PREADV                  = 295 | ||||
| 	SYS_PWRITEV                 = 296 | ||||
| 	SYS_RT_TGSIGQUEUEINFO       = 297 | ||||
| 	SYS_PERF_EVENT_OPEN         = 298 | ||||
| 	SYS_RECVMMSG                = 299 | ||||
| 	SYS_FANOTIFY_INIT           = 300 | ||||
| 	SYS_FANOTIFY_MARK           = 301 | ||||
| 	SYS_PRLIMIT64               = 302 | ||||
| 	SYS_NAME_TO_HANDLE_AT       = 303 | ||||
| 	SYS_OPEN_BY_HANDLE_AT       = 304 | ||||
| 	SYS_CLOCK_ADJTIME           = 305 | ||||
| 	SYS_SYNCFS                  = 306 | ||||
| 	SYS_SENDMMSG                = 307 | ||||
| 	SYS_SETNS                   = 308 | ||||
| 	SYS_GETCPU                  = 309 | ||||
| 	SYS_PROCESS_VM_READV        = 310 | ||||
| 	SYS_PROCESS_VM_WRITEV       = 311 | ||||
| 	SYS_KCMP                    = 312 | ||||
| 	SYS_FINIT_MODULE            = 313 | ||||
| 	SYS_SCHED_SETATTR           = 314 | ||||
| 	SYS_SCHED_GETATTR           = 315 | ||||
| 	SYS_RENAMEAT2               = 316 | ||||
| 	SYS_SECCOMP                 = 317 | ||||
| 	SYS_GETRANDOM               = 318 | ||||
| 	SYS_MEMFD_CREATE            = 319 | ||||
| 	SYS_KEXEC_FILE_LOAD         = 320 | ||||
| 	SYS_BPF                     = 321 | ||||
| 	SYS_EXECVEAT                = 322 | ||||
| 	SYS_USERFAULTFD             = 323 | ||||
| 	SYS_MEMBARRIER              = 324 | ||||
| 	SYS_MLOCK2                  = 325 | ||||
| 	SYS_COPY_FILE_RANGE         = 326 | ||||
| 	SYS_PREADV2                 = 327 | ||||
| 	SYS_PWRITEV2                = 328 | ||||
| 	SYS_PKEY_MPROTECT           = 329 | ||||
| 	SYS_PKEY_ALLOC              = 330 | ||||
| 	SYS_PKEY_FREE               = 331 | ||||
| 	SYS_STATX                   = 332 | ||||
| 	SYS_IO_PGETEVENTS           = 333 | ||||
| 	SYS_RSEQ                    = 334 | ||||
| 	SYS_PIDFD_SEND_SIGNAL       = 424 | ||||
| 	SYS_IO_URING_SETUP          = 425 | ||||
| 	SYS_IO_URING_ENTER          = 426 | ||||
| 	SYS_IO_URING_REGISTER       = 427 | ||||
| 	SYS_OPEN_TREE               = 428 | ||||
| 	SYS_MOVE_MOUNT              = 429 | ||||
| 	SYS_FSOPEN                  = 430 | ||||
| 	SYS_FSCONFIG                = 431 | ||||
| 	SYS_FSMOUNT                 = 432 | ||||
| 	SYS_FSPICK                  = 433 | ||||
| 	SYS_PIDFD_OPEN              = 434 | ||||
| 	SYS_CLONE3                  = 435 | ||||
| 	SYS_CLOSE_RANGE             = 436 | ||||
| 	SYS_OPENAT2                 = 437 | ||||
| 	SYS_PIDFD_GETFD             = 438 | ||||
| 	SYS_FACCESSAT2              = 439 | ||||
| 	SYS_PROCESS_MADVISE         = 440 | ||||
| 	SYS_EPOLL_PWAIT2            = 441 | ||||
| 	SYS_MOUNT_SETATTR           = 442 | ||||
| 	SYS_QUOTACTL_FD             = 443 | ||||
| 	SYS_LANDLOCK_CREATE_RULESET = 444 | ||||
| 	SYS_LANDLOCK_ADD_RULE       = 445 | ||||
| 	SYS_LANDLOCK_RESTRICT_SELF  = 446 | ||||
| 	SYS_MEMFD_SECRET            = 447 | ||||
| 	SYS_PROCESS_MRELEASE        = 448 | ||||
| ) | ||||
|  |  | |||
|  | @ -7,6 +7,7 @@ | |||
| package unix | ||||
| 
 | ||||
| const ( | ||||
| 	SYS_SYSCALL_MASK                 = 0 | ||||
| 	SYS_RESTART_SYSCALL              = 0 | ||||
| 	SYS_EXIT                         = 1 | ||||
| 	SYS_FORK                         = 2 | ||||
|  | @ -403,4 +404,9 @@ const ( | |||
| 	SYS_PROCESS_MADVISE              = 440 | ||||
| 	SYS_EPOLL_PWAIT2                 = 441 | ||||
| 	SYS_MOUNT_SETATTR                = 442 | ||||
| 	SYS_QUOTACTL_FD                  = 443 | ||||
| 	SYS_LANDLOCK_CREATE_RULESET      = 444 | ||||
| 	SYS_LANDLOCK_ADD_RULE            = 445 | ||||
| 	SYS_LANDLOCK_RESTRICT_SELF       = 446 | ||||
| 	SYS_PROCESS_MRELEASE             = 448 | ||||
| ) | ||||
|  |  | |||
|  | @ -7,303 +7,309 @@ | |||
| package unix | ||||
| 
 | ||||
| const ( | ||||
| 	SYS_IO_SETUP               = 0 | ||||
| 	SYS_IO_DESTROY             = 1 | ||||
| 	SYS_IO_SUBMIT              = 2 | ||||
| 	SYS_IO_CANCEL              = 3 | ||||
| 	SYS_IO_GETEVENTS           = 4 | ||||
| 	SYS_SETXATTR               = 5 | ||||
| 	SYS_LSETXATTR              = 6 | ||||
| 	SYS_FSETXATTR              = 7 | ||||
| 	SYS_GETXATTR               = 8 | ||||
| 	SYS_LGETXATTR              = 9 | ||||
| 	SYS_FGETXATTR              = 10 | ||||
| 	SYS_LISTXATTR              = 11 | ||||
| 	SYS_LLISTXATTR             = 12 | ||||
| 	SYS_FLISTXATTR             = 13 | ||||
| 	SYS_REMOVEXATTR            = 14 | ||||
| 	SYS_LREMOVEXATTR           = 15 | ||||
| 	SYS_FREMOVEXATTR           = 16 | ||||
| 	SYS_GETCWD                 = 17 | ||||
| 	SYS_LOOKUP_DCOOKIE         = 18 | ||||
| 	SYS_EVENTFD2               = 19 | ||||
| 	SYS_EPOLL_CREATE1          = 20 | ||||
| 	SYS_EPOLL_CTL              = 21 | ||||
| 	SYS_EPOLL_PWAIT            = 22 | ||||
| 	SYS_DUP                    = 23 | ||||
| 	SYS_DUP3                   = 24 | ||||
| 	SYS_FCNTL                  = 25 | ||||
| 	SYS_INOTIFY_INIT1          = 26 | ||||
| 	SYS_INOTIFY_ADD_WATCH      = 27 | ||||
| 	SYS_INOTIFY_RM_WATCH       = 28 | ||||
| 	SYS_IOCTL                  = 29 | ||||
| 	SYS_IOPRIO_SET             = 30 | ||||
| 	SYS_IOPRIO_GET             = 31 | ||||
| 	SYS_FLOCK                  = 32 | ||||
| 	SYS_MKNODAT                = 33 | ||||
| 	SYS_MKDIRAT                = 34 | ||||
| 	SYS_UNLINKAT               = 35 | ||||
| 	SYS_SYMLINKAT              = 36 | ||||
| 	SYS_LINKAT                 = 37 | ||||
| 	SYS_RENAMEAT               = 38 | ||||
| 	SYS_UMOUNT2                = 39 | ||||
| 	SYS_MOUNT                  = 40 | ||||
| 	SYS_PIVOT_ROOT             = 41 | ||||
| 	SYS_NFSSERVCTL             = 42 | ||||
| 	SYS_STATFS                 = 43 | ||||
| 	SYS_FSTATFS                = 44 | ||||
| 	SYS_TRUNCATE               = 45 | ||||
| 	SYS_FTRUNCATE              = 46 | ||||
| 	SYS_FALLOCATE              = 47 | ||||
| 	SYS_FACCESSAT              = 48 | ||||
| 	SYS_CHDIR                  = 49 | ||||
| 	SYS_FCHDIR                 = 50 | ||||
| 	SYS_CHROOT                 = 51 | ||||
| 	SYS_FCHMOD                 = 52 | ||||
| 	SYS_FCHMODAT               = 53 | ||||
| 	SYS_FCHOWNAT               = 54 | ||||
| 	SYS_FCHOWN                 = 55 | ||||
| 	SYS_OPENAT                 = 56 | ||||
| 	SYS_CLOSE                  = 57 | ||||
| 	SYS_VHANGUP                = 58 | ||||
| 	SYS_PIPE2                  = 59 | ||||
| 	SYS_QUOTACTL               = 60 | ||||
| 	SYS_GETDENTS64             = 61 | ||||
| 	SYS_LSEEK                  = 62 | ||||
| 	SYS_READ                   = 63 | ||||
| 	SYS_WRITE                  = 64 | ||||
| 	SYS_READV                  = 65 | ||||
| 	SYS_WRITEV                 = 66 | ||||
| 	SYS_PREAD64                = 67 | ||||
| 	SYS_PWRITE64               = 68 | ||||
| 	SYS_PREADV                 = 69 | ||||
| 	SYS_PWRITEV                = 70 | ||||
| 	SYS_SENDFILE               = 71 | ||||
| 	SYS_PSELECT6               = 72 | ||||
| 	SYS_PPOLL                  = 73 | ||||
| 	SYS_SIGNALFD4              = 74 | ||||
| 	SYS_VMSPLICE               = 75 | ||||
| 	SYS_SPLICE                 = 76 | ||||
| 	SYS_TEE                    = 77 | ||||
| 	SYS_READLINKAT             = 78 | ||||
| 	SYS_FSTATAT                = 79 | ||||
| 	SYS_FSTAT                  = 80 | ||||
| 	SYS_SYNC                   = 81 | ||||
| 	SYS_FSYNC                  = 82 | ||||
| 	SYS_FDATASYNC              = 83 | ||||
| 	SYS_SYNC_FILE_RANGE        = 84 | ||||
| 	SYS_TIMERFD_CREATE         = 85 | ||||
| 	SYS_TIMERFD_SETTIME        = 86 | ||||
| 	SYS_TIMERFD_GETTIME        = 87 | ||||
| 	SYS_UTIMENSAT              = 88 | ||||
| 	SYS_ACCT                   = 89 | ||||
| 	SYS_CAPGET                 = 90 | ||||
| 	SYS_CAPSET                 = 91 | ||||
| 	SYS_PERSONALITY            = 92 | ||||
| 	SYS_EXIT                   = 93 | ||||
| 	SYS_EXIT_GROUP             = 94 | ||||
| 	SYS_WAITID                 = 95 | ||||
| 	SYS_SET_TID_ADDRESS        = 96 | ||||
| 	SYS_UNSHARE                = 97 | ||||
| 	SYS_FUTEX                  = 98 | ||||
| 	SYS_SET_ROBUST_LIST        = 99 | ||||
| 	SYS_GET_ROBUST_LIST        = 100 | ||||
| 	SYS_NANOSLEEP              = 101 | ||||
| 	SYS_GETITIMER              = 102 | ||||
| 	SYS_SETITIMER              = 103 | ||||
| 	SYS_KEXEC_LOAD             = 104 | ||||
| 	SYS_INIT_MODULE            = 105 | ||||
| 	SYS_DELETE_MODULE          = 106 | ||||
| 	SYS_TIMER_CREATE           = 107 | ||||
| 	SYS_TIMER_GETTIME          = 108 | ||||
| 	SYS_TIMER_GETOVERRUN       = 109 | ||||
| 	SYS_TIMER_SETTIME          = 110 | ||||
| 	SYS_TIMER_DELETE           = 111 | ||||
| 	SYS_CLOCK_SETTIME          = 112 | ||||
| 	SYS_CLOCK_GETTIME          = 113 | ||||
| 	SYS_CLOCK_GETRES           = 114 | ||||
| 	SYS_CLOCK_NANOSLEEP        = 115 | ||||
| 	SYS_SYSLOG                 = 116 | ||||
| 	SYS_PTRACE                 = 117 | ||||
| 	SYS_SCHED_SETPARAM         = 118 | ||||
| 	SYS_SCHED_SETSCHEDULER     = 119 | ||||
| 	SYS_SCHED_GETSCHEDULER     = 120 | ||||
| 	SYS_SCHED_GETPARAM         = 121 | ||||
| 	SYS_SCHED_SETAFFINITY      = 122 | ||||
| 	SYS_SCHED_GETAFFINITY      = 123 | ||||
| 	SYS_SCHED_YIELD            = 124 | ||||
| 	SYS_SCHED_GET_PRIORITY_MAX = 125 | ||||
| 	SYS_SCHED_GET_PRIORITY_MIN = 126 | ||||
| 	SYS_SCHED_RR_GET_INTERVAL  = 127 | ||||
| 	SYS_RESTART_SYSCALL        = 128 | ||||
| 	SYS_KILL                   = 129 | ||||
| 	SYS_TKILL                  = 130 | ||||
| 	SYS_TGKILL                 = 131 | ||||
| 	SYS_SIGALTSTACK            = 132 | ||||
| 	SYS_RT_SIGSUSPEND          = 133 | ||||
| 	SYS_RT_SIGACTION           = 134 | ||||
| 	SYS_RT_SIGPROCMASK         = 135 | ||||
| 	SYS_RT_SIGPENDING          = 136 | ||||
| 	SYS_RT_SIGTIMEDWAIT        = 137 | ||||
| 	SYS_RT_SIGQUEUEINFO        = 138 | ||||
| 	SYS_RT_SIGRETURN           = 139 | ||||
| 	SYS_SETPRIORITY            = 140 | ||||
| 	SYS_GETPRIORITY            = 141 | ||||
| 	SYS_REBOOT                 = 142 | ||||
| 	SYS_SETREGID               = 143 | ||||
| 	SYS_SETGID                 = 144 | ||||
| 	SYS_SETREUID               = 145 | ||||
| 	SYS_SETUID                 = 146 | ||||
| 	SYS_SETRESUID              = 147 | ||||
| 	SYS_GETRESUID              = 148 | ||||
| 	SYS_SETRESGID              = 149 | ||||
| 	SYS_GETRESGID              = 150 | ||||
| 	SYS_SETFSUID               = 151 | ||||
| 	SYS_SETFSGID               = 152 | ||||
| 	SYS_TIMES                  = 153 | ||||
| 	SYS_SETPGID                = 154 | ||||
| 	SYS_GETPGID                = 155 | ||||
| 	SYS_GETSID                 = 156 | ||||
| 	SYS_SETSID                 = 157 | ||||
| 	SYS_GETGROUPS              = 158 | ||||
| 	SYS_SETGROUPS              = 159 | ||||
| 	SYS_UNAME                  = 160 | ||||
| 	SYS_SETHOSTNAME            = 161 | ||||
| 	SYS_SETDOMAINNAME          = 162 | ||||
| 	SYS_GETRLIMIT              = 163 | ||||
| 	SYS_SETRLIMIT              = 164 | ||||
| 	SYS_GETRUSAGE              = 165 | ||||
| 	SYS_UMASK                  = 166 | ||||
| 	SYS_PRCTL                  = 167 | ||||
| 	SYS_GETCPU                 = 168 | ||||
| 	SYS_GETTIMEOFDAY           = 169 | ||||
| 	SYS_SETTIMEOFDAY           = 170 | ||||
| 	SYS_ADJTIMEX               = 171 | ||||
| 	SYS_GETPID                 = 172 | ||||
| 	SYS_GETPPID                = 173 | ||||
| 	SYS_GETUID                 = 174 | ||||
| 	SYS_GETEUID                = 175 | ||||
| 	SYS_GETGID                 = 176 | ||||
| 	SYS_GETEGID                = 177 | ||||
| 	SYS_GETTID                 = 178 | ||||
| 	SYS_SYSINFO                = 179 | ||||
| 	SYS_MQ_OPEN                = 180 | ||||
| 	SYS_MQ_UNLINK              = 181 | ||||
| 	SYS_MQ_TIMEDSEND           = 182 | ||||
| 	SYS_MQ_TIMEDRECEIVE        = 183 | ||||
| 	SYS_MQ_NOTIFY              = 184 | ||||
| 	SYS_MQ_GETSETATTR          = 185 | ||||
| 	SYS_MSGGET                 = 186 | ||||
| 	SYS_MSGCTL                 = 187 | ||||
| 	SYS_MSGRCV                 = 188 | ||||
| 	SYS_MSGSND                 = 189 | ||||
| 	SYS_SEMGET                 = 190 | ||||
| 	SYS_SEMCTL                 = 191 | ||||
| 	SYS_SEMTIMEDOP             = 192 | ||||
| 	SYS_SEMOP                  = 193 | ||||
| 	SYS_SHMGET                 = 194 | ||||
| 	SYS_SHMCTL                 = 195 | ||||
| 	SYS_SHMAT                  = 196 | ||||
| 	SYS_SHMDT                  = 197 | ||||
| 	SYS_SOCKET                 = 198 | ||||
| 	SYS_SOCKETPAIR             = 199 | ||||
| 	SYS_BIND                   = 200 | ||||
| 	SYS_LISTEN                 = 201 | ||||
| 	SYS_ACCEPT                 = 202 | ||||
| 	SYS_CONNECT                = 203 | ||||
| 	SYS_GETSOCKNAME            = 204 | ||||
| 	SYS_GETPEERNAME            = 205 | ||||
| 	SYS_SENDTO                 = 206 | ||||
| 	SYS_RECVFROM               = 207 | ||||
| 	SYS_SETSOCKOPT             = 208 | ||||
| 	SYS_GETSOCKOPT             = 209 | ||||
| 	SYS_SHUTDOWN               = 210 | ||||
| 	SYS_SENDMSG                = 211 | ||||
| 	SYS_RECVMSG                = 212 | ||||
| 	SYS_READAHEAD              = 213 | ||||
| 	SYS_BRK                    = 214 | ||||
| 	SYS_MUNMAP                 = 215 | ||||
| 	SYS_MREMAP                 = 216 | ||||
| 	SYS_ADD_KEY                = 217 | ||||
| 	SYS_REQUEST_KEY            = 218 | ||||
| 	SYS_KEYCTL                 = 219 | ||||
| 	SYS_CLONE                  = 220 | ||||
| 	SYS_EXECVE                 = 221 | ||||
| 	SYS_MMAP                   = 222 | ||||
| 	SYS_FADVISE64              = 223 | ||||
| 	SYS_SWAPON                 = 224 | ||||
| 	SYS_SWAPOFF                = 225 | ||||
| 	SYS_MPROTECT               = 226 | ||||
| 	SYS_MSYNC                  = 227 | ||||
| 	SYS_MLOCK                  = 228 | ||||
| 	SYS_MUNLOCK                = 229 | ||||
| 	SYS_MLOCKALL               = 230 | ||||
| 	SYS_MUNLOCKALL             = 231 | ||||
| 	SYS_MINCORE                = 232 | ||||
| 	SYS_MADVISE                = 233 | ||||
| 	SYS_REMAP_FILE_PAGES       = 234 | ||||
| 	SYS_MBIND                  = 235 | ||||
| 	SYS_GET_MEMPOLICY          = 236 | ||||
| 	SYS_SET_MEMPOLICY          = 237 | ||||
| 	SYS_MIGRATE_PAGES          = 238 | ||||
| 	SYS_MOVE_PAGES             = 239 | ||||
| 	SYS_RT_TGSIGQUEUEINFO      = 240 | ||||
| 	SYS_PERF_EVENT_OPEN        = 241 | ||||
| 	SYS_ACCEPT4                = 242 | ||||
| 	SYS_RECVMMSG               = 243 | ||||
| 	SYS_ARCH_SPECIFIC_SYSCALL  = 244 | ||||
| 	SYS_WAIT4                  = 260 | ||||
| 	SYS_PRLIMIT64              = 261 | ||||
| 	SYS_FANOTIFY_INIT          = 262 | ||||
| 	SYS_FANOTIFY_MARK          = 263 | ||||
| 	SYS_NAME_TO_HANDLE_AT      = 264 | ||||
| 	SYS_OPEN_BY_HANDLE_AT      = 265 | ||||
| 	SYS_CLOCK_ADJTIME          = 266 | ||||
| 	SYS_SYNCFS                 = 267 | ||||
| 	SYS_SETNS                  = 268 | ||||
| 	SYS_SENDMMSG               = 269 | ||||
| 	SYS_PROCESS_VM_READV       = 270 | ||||
| 	SYS_PROCESS_VM_WRITEV      = 271 | ||||
| 	SYS_KCMP                   = 272 | ||||
| 	SYS_FINIT_MODULE           = 273 | ||||
| 	SYS_SCHED_SETATTR          = 274 | ||||
| 	SYS_SCHED_GETATTR          = 275 | ||||
| 	SYS_RENAMEAT2              = 276 | ||||
| 	SYS_SECCOMP                = 277 | ||||
| 	SYS_GETRANDOM              = 278 | ||||
| 	SYS_MEMFD_CREATE           = 279 | ||||
| 	SYS_BPF                    = 280 | ||||
| 	SYS_EXECVEAT               = 281 | ||||
| 	SYS_USERFAULTFD            = 282 | ||||
| 	SYS_MEMBARRIER             = 283 | ||||
| 	SYS_MLOCK2                 = 284 | ||||
| 	SYS_COPY_FILE_RANGE        = 285 | ||||
| 	SYS_PREADV2                = 286 | ||||
| 	SYS_PWRITEV2               = 287 | ||||
| 	SYS_PKEY_MPROTECT          = 288 | ||||
| 	SYS_PKEY_ALLOC             = 289 | ||||
| 	SYS_PKEY_FREE              = 290 | ||||
| 	SYS_STATX                  = 291 | ||||
| 	SYS_IO_PGETEVENTS          = 292 | ||||
| 	SYS_RSEQ                   = 293 | ||||
| 	SYS_KEXEC_FILE_LOAD        = 294 | ||||
| 	SYS_PIDFD_SEND_SIGNAL      = 424 | ||||
| 	SYS_IO_URING_SETUP         = 425 | ||||
| 	SYS_IO_URING_ENTER         = 426 | ||||
| 	SYS_IO_URING_REGISTER      = 427 | ||||
| 	SYS_OPEN_TREE              = 428 | ||||
| 	SYS_MOVE_MOUNT             = 429 | ||||
| 	SYS_FSOPEN                 = 430 | ||||
| 	SYS_FSCONFIG               = 431 | ||||
| 	SYS_FSMOUNT                = 432 | ||||
| 	SYS_FSPICK                 = 433 | ||||
| 	SYS_PIDFD_OPEN             = 434 | ||||
| 	SYS_CLONE3                 = 435 | ||||
| 	SYS_CLOSE_RANGE            = 436 | ||||
| 	SYS_OPENAT2                = 437 | ||||
| 	SYS_PIDFD_GETFD            = 438 | ||||
| 	SYS_FACCESSAT2             = 439 | ||||
| 	SYS_PROCESS_MADVISE        = 440 | ||||
| 	SYS_EPOLL_PWAIT2           = 441 | ||||
| 	SYS_MOUNT_SETATTR          = 442 | ||||
| 	SYS_IO_SETUP                = 0 | ||||
| 	SYS_IO_DESTROY              = 1 | ||||
| 	SYS_IO_SUBMIT               = 2 | ||||
| 	SYS_IO_CANCEL               = 3 | ||||
| 	SYS_IO_GETEVENTS            = 4 | ||||
| 	SYS_SETXATTR                = 5 | ||||
| 	SYS_LSETXATTR               = 6 | ||||
| 	SYS_FSETXATTR               = 7 | ||||
| 	SYS_GETXATTR                = 8 | ||||
| 	SYS_LGETXATTR               = 9 | ||||
| 	SYS_FGETXATTR               = 10 | ||||
| 	SYS_LISTXATTR               = 11 | ||||
| 	SYS_LLISTXATTR              = 12 | ||||
| 	SYS_FLISTXATTR              = 13 | ||||
| 	SYS_REMOVEXATTR             = 14 | ||||
| 	SYS_LREMOVEXATTR            = 15 | ||||
| 	SYS_FREMOVEXATTR            = 16 | ||||
| 	SYS_GETCWD                  = 17 | ||||
| 	SYS_LOOKUP_DCOOKIE          = 18 | ||||
| 	SYS_EVENTFD2                = 19 | ||||
| 	SYS_EPOLL_CREATE1           = 20 | ||||
| 	SYS_EPOLL_CTL               = 21 | ||||
| 	SYS_EPOLL_PWAIT             = 22 | ||||
| 	SYS_DUP                     = 23 | ||||
| 	SYS_DUP3                    = 24 | ||||
| 	SYS_FCNTL                   = 25 | ||||
| 	SYS_INOTIFY_INIT1           = 26 | ||||
| 	SYS_INOTIFY_ADD_WATCH       = 27 | ||||
| 	SYS_INOTIFY_RM_WATCH        = 28 | ||||
| 	SYS_IOCTL                   = 29 | ||||
| 	SYS_IOPRIO_SET              = 30 | ||||
| 	SYS_IOPRIO_GET              = 31 | ||||
| 	SYS_FLOCK                   = 32 | ||||
| 	SYS_MKNODAT                 = 33 | ||||
| 	SYS_MKDIRAT                 = 34 | ||||
| 	SYS_UNLINKAT                = 35 | ||||
| 	SYS_SYMLINKAT               = 36 | ||||
| 	SYS_LINKAT                  = 37 | ||||
| 	SYS_RENAMEAT                = 38 | ||||
| 	SYS_UMOUNT2                 = 39 | ||||
| 	SYS_MOUNT                   = 40 | ||||
| 	SYS_PIVOT_ROOT              = 41 | ||||
| 	SYS_NFSSERVCTL              = 42 | ||||
| 	SYS_STATFS                  = 43 | ||||
| 	SYS_FSTATFS                 = 44 | ||||
| 	SYS_TRUNCATE                = 45 | ||||
| 	SYS_FTRUNCATE               = 46 | ||||
| 	SYS_FALLOCATE               = 47 | ||||
| 	SYS_FACCESSAT               = 48 | ||||
| 	SYS_CHDIR                   = 49 | ||||
| 	SYS_FCHDIR                  = 50 | ||||
| 	SYS_CHROOT                  = 51 | ||||
| 	SYS_FCHMOD                  = 52 | ||||
| 	SYS_FCHMODAT                = 53 | ||||
| 	SYS_FCHOWNAT                = 54 | ||||
| 	SYS_FCHOWN                  = 55 | ||||
| 	SYS_OPENAT                  = 56 | ||||
| 	SYS_CLOSE                   = 57 | ||||
| 	SYS_VHANGUP                 = 58 | ||||
| 	SYS_PIPE2                   = 59 | ||||
| 	SYS_QUOTACTL                = 60 | ||||
| 	SYS_GETDENTS64              = 61 | ||||
| 	SYS_LSEEK                   = 62 | ||||
| 	SYS_READ                    = 63 | ||||
| 	SYS_WRITE                   = 64 | ||||
| 	SYS_READV                   = 65 | ||||
| 	SYS_WRITEV                  = 66 | ||||
| 	SYS_PREAD64                 = 67 | ||||
| 	SYS_PWRITE64                = 68 | ||||
| 	SYS_PREADV                  = 69 | ||||
| 	SYS_PWRITEV                 = 70 | ||||
| 	SYS_SENDFILE                = 71 | ||||
| 	SYS_PSELECT6                = 72 | ||||
| 	SYS_PPOLL                   = 73 | ||||
| 	SYS_SIGNALFD4               = 74 | ||||
| 	SYS_VMSPLICE                = 75 | ||||
| 	SYS_SPLICE                  = 76 | ||||
| 	SYS_TEE                     = 77 | ||||
| 	SYS_READLINKAT              = 78 | ||||
| 	SYS_FSTATAT                 = 79 | ||||
| 	SYS_FSTAT                   = 80 | ||||
| 	SYS_SYNC                    = 81 | ||||
| 	SYS_FSYNC                   = 82 | ||||
| 	SYS_FDATASYNC               = 83 | ||||
| 	SYS_SYNC_FILE_RANGE         = 84 | ||||
| 	SYS_TIMERFD_CREATE          = 85 | ||||
| 	SYS_TIMERFD_SETTIME         = 86 | ||||
| 	SYS_TIMERFD_GETTIME         = 87 | ||||
| 	SYS_UTIMENSAT               = 88 | ||||
| 	SYS_ACCT                    = 89 | ||||
| 	SYS_CAPGET                  = 90 | ||||
| 	SYS_CAPSET                  = 91 | ||||
| 	SYS_PERSONALITY             = 92 | ||||
| 	SYS_EXIT                    = 93 | ||||
| 	SYS_EXIT_GROUP              = 94 | ||||
| 	SYS_WAITID                  = 95 | ||||
| 	SYS_SET_TID_ADDRESS         = 96 | ||||
| 	SYS_UNSHARE                 = 97 | ||||
| 	SYS_FUTEX                   = 98 | ||||
| 	SYS_SET_ROBUST_LIST         = 99 | ||||
| 	SYS_GET_ROBUST_LIST         = 100 | ||||
| 	SYS_NANOSLEEP               = 101 | ||||
| 	SYS_GETITIMER               = 102 | ||||
| 	SYS_SETITIMER               = 103 | ||||
| 	SYS_KEXEC_LOAD              = 104 | ||||
| 	SYS_INIT_MODULE             = 105 | ||||
| 	SYS_DELETE_MODULE           = 106 | ||||
| 	SYS_TIMER_CREATE            = 107 | ||||
| 	SYS_TIMER_GETTIME           = 108 | ||||
| 	SYS_TIMER_GETOVERRUN        = 109 | ||||
| 	SYS_TIMER_SETTIME           = 110 | ||||
| 	SYS_TIMER_DELETE            = 111 | ||||
| 	SYS_CLOCK_SETTIME           = 112 | ||||
| 	SYS_CLOCK_GETTIME           = 113 | ||||
| 	SYS_CLOCK_GETRES            = 114 | ||||
| 	SYS_CLOCK_NANOSLEEP         = 115 | ||||
| 	SYS_SYSLOG                  = 116 | ||||
| 	SYS_PTRACE                  = 117 | ||||
| 	SYS_SCHED_SETPARAM          = 118 | ||||
| 	SYS_SCHED_SETSCHEDULER      = 119 | ||||
| 	SYS_SCHED_GETSCHEDULER      = 120 | ||||
| 	SYS_SCHED_GETPARAM          = 121 | ||||
| 	SYS_SCHED_SETAFFINITY       = 122 | ||||
| 	SYS_SCHED_GETAFFINITY       = 123 | ||||
| 	SYS_SCHED_YIELD             = 124 | ||||
| 	SYS_SCHED_GET_PRIORITY_MAX  = 125 | ||||
| 	SYS_SCHED_GET_PRIORITY_MIN  = 126 | ||||
| 	SYS_SCHED_RR_GET_INTERVAL   = 127 | ||||
| 	SYS_RESTART_SYSCALL         = 128 | ||||
| 	SYS_KILL                    = 129 | ||||
| 	SYS_TKILL                   = 130 | ||||
| 	SYS_TGKILL                  = 131 | ||||
| 	SYS_SIGALTSTACK             = 132 | ||||
| 	SYS_RT_SIGSUSPEND           = 133 | ||||
| 	SYS_RT_SIGACTION            = 134 | ||||
| 	SYS_RT_SIGPROCMASK          = 135 | ||||
| 	SYS_RT_SIGPENDING           = 136 | ||||
| 	SYS_RT_SIGTIMEDWAIT         = 137 | ||||
| 	SYS_RT_SIGQUEUEINFO         = 138 | ||||
| 	SYS_RT_SIGRETURN            = 139 | ||||
| 	SYS_SETPRIORITY             = 140 | ||||
| 	SYS_GETPRIORITY             = 141 | ||||
| 	SYS_REBOOT                  = 142 | ||||
| 	SYS_SETREGID                = 143 | ||||
| 	SYS_SETGID                  = 144 | ||||
| 	SYS_SETREUID                = 145 | ||||
| 	SYS_SETUID                  = 146 | ||||
| 	SYS_SETRESUID               = 147 | ||||
| 	SYS_GETRESUID               = 148 | ||||
| 	SYS_SETRESGID               = 149 | ||||
| 	SYS_GETRESGID               = 150 | ||||
| 	SYS_SETFSUID                = 151 | ||||
| 	SYS_SETFSGID                = 152 | ||||
| 	SYS_TIMES                   = 153 | ||||
| 	SYS_SETPGID                 = 154 | ||||
| 	SYS_GETPGID                 = 155 | ||||
| 	SYS_GETSID                  = 156 | ||||
| 	SYS_SETSID                  = 157 | ||||
| 	SYS_GETGROUPS               = 158 | ||||
| 	SYS_SETGROUPS               = 159 | ||||
| 	SYS_UNAME                   = 160 | ||||
| 	SYS_SETHOSTNAME             = 161 | ||||
| 	SYS_SETDOMAINNAME           = 162 | ||||
| 	SYS_GETRLIMIT               = 163 | ||||
| 	SYS_SETRLIMIT               = 164 | ||||
| 	SYS_GETRUSAGE               = 165 | ||||
| 	SYS_UMASK                   = 166 | ||||
| 	SYS_PRCTL                   = 167 | ||||
| 	SYS_GETCPU                  = 168 | ||||
| 	SYS_GETTIMEOFDAY            = 169 | ||||
| 	SYS_SETTIMEOFDAY            = 170 | ||||
| 	SYS_ADJTIMEX                = 171 | ||||
| 	SYS_GETPID                  = 172 | ||||
| 	SYS_GETPPID                 = 173 | ||||
| 	SYS_GETUID                  = 174 | ||||
| 	SYS_GETEUID                 = 175 | ||||
| 	SYS_GETGID                  = 176 | ||||
| 	SYS_GETEGID                 = 177 | ||||
| 	SYS_GETTID                  = 178 | ||||
| 	SYS_SYSINFO                 = 179 | ||||
| 	SYS_MQ_OPEN                 = 180 | ||||
| 	SYS_MQ_UNLINK               = 181 | ||||
| 	SYS_MQ_TIMEDSEND            = 182 | ||||
| 	SYS_MQ_TIMEDRECEIVE         = 183 | ||||
| 	SYS_MQ_NOTIFY               = 184 | ||||
| 	SYS_MQ_GETSETATTR           = 185 | ||||
| 	SYS_MSGGET                  = 186 | ||||
| 	SYS_MSGCTL                  = 187 | ||||
| 	SYS_MSGRCV                  = 188 | ||||
| 	SYS_MSGSND                  = 189 | ||||
| 	SYS_SEMGET                  = 190 | ||||
| 	SYS_SEMCTL                  = 191 | ||||
| 	SYS_SEMTIMEDOP              = 192 | ||||
| 	SYS_SEMOP                   = 193 | ||||
| 	SYS_SHMGET                  = 194 | ||||
| 	SYS_SHMCTL                  = 195 | ||||
| 	SYS_SHMAT                   = 196 | ||||
| 	SYS_SHMDT                   = 197 | ||||
| 	SYS_SOCKET                  = 198 | ||||
| 	SYS_SOCKETPAIR              = 199 | ||||
| 	SYS_BIND                    = 200 | ||||
| 	SYS_LISTEN                  = 201 | ||||
| 	SYS_ACCEPT                  = 202 | ||||
| 	SYS_CONNECT                 = 203 | ||||
| 	SYS_GETSOCKNAME             = 204 | ||||
| 	SYS_GETPEERNAME             = 205 | ||||
| 	SYS_SENDTO                  = 206 | ||||
| 	SYS_RECVFROM                = 207 | ||||
| 	SYS_SETSOCKOPT              = 208 | ||||
| 	SYS_GETSOCKOPT              = 209 | ||||
| 	SYS_SHUTDOWN                = 210 | ||||
| 	SYS_SENDMSG                 = 211 | ||||
| 	SYS_RECVMSG                 = 212 | ||||
| 	SYS_READAHEAD               = 213 | ||||
| 	SYS_BRK                     = 214 | ||||
| 	SYS_MUNMAP                  = 215 | ||||
| 	SYS_MREMAP                  = 216 | ||||
| 	SYS_ADD_KEY                 = 217 | ||||
| 	SYS_REQUEST_KEY             = 218 | ||||
| 	SYS_KEYCTL                  = 219 | ||||
| 	SYS_CLONE                   = 220 | ||||
| 	SYS_EXECVE                  = 221 | ||||
| 	SYS_MMAP                    = 222 | ||||
| 	SYS_FADVISE64               = 223 | ||||
| 	SYS_SWAPON                  = 224 | ||||
| 	SYS_SWAPOFF                 = 225 | ||||
| 	SYS_MPROTECT                = 226 | ||||
| 	SYS_MSYNC                   = 227 | ||||
| 	SYS_MLOCK                   = 228 | ||||
| 	SYS_MUNLOCK                 = 229 | ||||
| 	SYS_MLOCKALL                = 230 | ||||
| 	SYS_MUNLOCKALL              = 231 | ||||
| 	SYS_MINCORE                 = 232 | ||||
| 	SYS_MADVISE                 = 233 | ||||
| 	SYS_REMAP_FILE_PAGES        = 234 | ||||
| 	SYS_MBIND                   = 235 | ||||
| 	SYS_GET_MEMPOLICY           = 236 | ||||
| 	SYS_SET_MEMPOLICY           = 237 | ||||
| 	SYS_MIGRATE_PAGES           = 238 | ||||
| 	SYS_MOVE_PAGES              = 239 | ||||
| 	SYS_RT_TGSIGQUEUEINFO       = 240 | ||||
| 	SYS_PERF_EVENT_OPEN         = 241 | ||||
| 	SYS_ACCEPT4                 = 242 | ||||
| 	SYS_RECVMMSG                = 243 | ||||
| 	SYS_ARCH_SPECIFIC_SYSCALL   = 244 | ||||
| 	SYS_WAIT4                   = 260 | ||||
| 	SYS_PRLIMIT64               = 261 | ||||
| 	SYS_FANOTIFY_INIT           = 262 | ||||
| 	SYS_FANOTIFY_MARK           = 263 | ||||
| 	SYS_NAME_TO_HANDLE_AT       = 264 | ||||
| 	SYS_OPEN_BY_HANDLE_AT       = 265 | ||||
| 	SYS_CLOCK_ADJTIME           = 266 | ||||
| 	SYS_SYNCFS                  = 267 | ||||
| 	SYS_SETNS                   = 268 | ||||
| 	SYS_SENDMMSG                = 269 | ||||
| 	SYS_PROCESS_VM_READV        = 270 | ||||
| 	SYS_PROCESS_VM_WRITEV       = 271 | ||||
| 	SYS_KCMP                    = 272 | ||||
| 	SYS_FINIT_MODULE            = 273 | ||||
| 	SYS_SCHED_SETATTR           = 274 | ||||
| 	SYS_SCHED_GETATTR           = 275 | ||||
| 	SYS_RENAMEAT2               = 276 | ||||
| 	SYS_SECCOMP                 = 277 | ||||
| 	SYS_GETRANDOM               = 278 | ||||
| 	SYS_MEMFD_CREATE            = 279 | ||||
| 	SYS_BPF                     = 280 | ||||
| 	SYS_EXECVEAT                = 281 | ||||
| 	SYS_USERFAULTFD             = 282 | ||||
| 	SYS_MEMBARRIER              = 283 | ||||
| 	SYS_MLOCK2                  = 284 | ||||
| 	SYS_COPY_FILE_RANGE         = 285 | ||||
| 	SYS_PREADV2                 = 286 | ||||
| 	SYS_PWRITEV2                = 287 | ||||
| 	SYS_PKEY_MPROTECT           = 288 | ||||
| 	SYS_PKEY_ALLOC              = 289 | ||||
| 	SYS_PKEY_FREE               = 290 | ||||
| 	SYS_STATX                   = 291 | ||||
| 	SYS_IO_PGETEVENTS           = 292 | ||||
| 	SYS_RSEQ                    = 293 | ||||
| 	SYS_KEXEC_FILE_LOAD         = 294 | ||||
| 	SYS_PIDFD_SEND_SIGNAL       = 424 | ||||
| 	SYS_IO_URING_SETUP          = 425 | ||||
| 	SYS_IO_URING_ENTER          = 426 | ||||
| 	SYS_IO_URING_REGISTER       = 427 | ||||
| 	SYS_OPEN_TREE               = 428 | ||||
| 	SYS_MOVE_MOUNT              = 429 | ||||
| 	SYS_FSOPEN                  = 430 | ||||
| 	SYS_FSCONFIG                = 431 | ||||
| 	SYS_FSMOUNT                 = 432 | ||||
| 	SYS_FSPICK                  = 433 | ||||
| 	SYS_PIDFD_OPEN              = 434 | ||||
| 	SYS_CLONE3                  = 435 | ||||
| 	SYS_CLOSE_RANGE             = 436 | ||||
| 	SYS_OPENAT2                 = 437 | ||||
| 	SYS_PIDFD_GETFD             = 438 | ||||
| 	SYS_FACCESSAT2              = 439 | ||||
| 	SYS_PROCESS_MADVISE         = 440 | ||||
| 	SYS_EPOLL_PWAIT2            = 441 | ||||
| 	SYS_MOUNT_SETATTR           = 442 | ||||
| 	SYS_QUOTACTL_FD             = 443 | ||||
| 	SYS_LANDLOCK_CREATE_RULESET = 444 | ||||
| 	SYS_LANDLOCK_ADD_RULE       = 445 | ||||
| 	SYS_LANDLOCK_RESTRICT_SELF  = 446 | ||||
| 	SYS_MEMFD_SECRET            = 447 | ||||
| 	SYS_PROCESS_MRELEASE        = 448 | ||||
| ) | ||||
|  |  | |||
|  | @ -424,4 +424,9 @@ const ( | |||
| 	SYS_PROCESS_MADVISE              = 4440 | ||||
| 	SYS_EPOLL_PWAIT2                 = 4441 | ||||
| 	SYS_MOUNT_SETATTR                = 4442 | ||||
| 	SYS_QUOTACTL_FD                  = 4443 | ||||
| 	SYS_LANDLOCK_CREATE_RULESET      = 4444 | ||||
| 	SYS_LANDLOCK_ADD_RULE            = 4445 | ||||
| 	SYS_LANDLOCK_RESTRICT_SELF       = 4446 | ||||
| 	SYS_PROCESS_MRELEASE             = 4448 | ||||
| ) | ||||
|  |  | |||
|  | @ -7,351 +7,356 @@ | |||
| package unix | ||||
| 
 | ||||
| const ( | ||||
| 	SYS_READ                   = 5000 | ||||
| 	SYS_WRITE                  = 5001 | ||||
| 	SYS_OPEN                   = 5002 | ||||
| 	SYS_CLOSE                  = 5003 | ||||
| 	SYS_STAT                   = 5004 | ||||
| 	SYS_FSTAT                  = 5005 | ||||
| 	SYS_LSTAT                  = 5006 | ||||
| 	SYS_POLL                   = 5007 | ||||
| 	SYS_LSEEK                  = 5008 | ||||
| 	SYS_MMAP                   = 5009 | ||||
| 	SYS_MPROTECT               = 5010 | ||||
| 	SYS_MUNMAP                 = 5011 | ||||
| 	SYS_BRK                    = 5012 | ||||
| 	SYS_RT_SIGACTION           = 5013 | ||||
| 	SYS_RT_SIGPROCMASK         = 5014 | ||||
| 	SYS_IOCTL                  = 5015 | ||||
| 	SYS_PREAD64                = 5016 | ||||
| 	SYS_PWRITE64               = 5017 | ||||
| 	SYS_READV                  = 5018 | ||||
| 	SYS_WRITEV                 = 5019 | ||||
| 	SYS_ACCESS                 = 5020 | ||||
| 	SYS_PIPE                   = 5021 | ||||
| 	SYS__NEWSELECT             = 5022 | ||||
| 	SYS_SCHED_YIELD            = 5023 | ||||
| 	SYS_MREMAP                 = 5024 | ||||
| 	SYS_MSYNC                  = 5025 | ||||
| 	SYS_MINCORE                = 5026 | ||||
| 	SYS_MADVISE                = 5027 | ||||
| 	SYS_SHMGET                 = 5028 | ||||
| 	SYS_SHMAT                  = 5029 | ||||
| 	SYS_SHMCTL                 = 5030 | ||||
| 	SYS_DUP                    = 5031 | ||||
| 	SYS_DUP2                   = 5032 | ||||
| 	SYS_PAUSE                  = 5033 | ||||
| 	SYS_NANOSLEEP              = 5034 | ||||
| 	SYS_GETITIMER              = 5035 | ||||
| 	SYS_SETITIMER              = 5036 | ||||
| 	SYS_ALARM                  = 5037 | ||||
| 	SYS_GETPID                 = 5038 | ||||
| 	SYS_SENDFILE               = 5039 | ||||
| 	SYS_SOCKET                 = 5040 | ||||
| 	SYS_CONNECT                = 5041 | ||||
| 	SYS_ACCEPT                 = 5042 | ||||
| 	SYS_SENDTO                 = 5043 | ||||
| 	SYS_RECVFROM               = 5044 | ||||
| 	SYS_SENDMSG                = 5045 | ||||
| 	SYS_RECVMSG                = 5046 | ||||
| 	SYS_SHUTDOWN               = 5047 | ||||
| 	SYS_BIND                   = 5048 | ||||
| 	SYS_LISTEN                 = 5049 | ||||
| 	SYS_GETSOCKNAME            = 5050 | ||||
| 	SYS_GETPEERNAME            = 5051 | ||||
| 	SYS_SOCKETPAIR             = 5052 | ||||
| 	SYS_SETSOCKOPT             = 5053 | ||||
| 	SYS_GETSOCKOPT             = 5054 | ||||
| 	SYS_CLONE                  = 5055 | ||||
| 	SYS_FORK                   = 5056 | ||||
| 	SYS_EXECVE                 = 5057 | ||||
| 	SYS_EXIT                   = 5058 | ||||
| 	SYS_WAIT4                  = 5059 | ||||
| 	SYS_KILL                   = 5060 | ||||
| 	SYS_UNAME                  = 5061 | ||||
| 	SYS_SEMGET                 = 5062 | ||||
| 	SYS_SEMOP                  = 5063 | ||||
| 	SYS_SEMCTL                 = 5064 | ||||
| 	SYS_SHMDT                  = 5065 | ||||
| 	SYS_MSGGET                 = 5066 | ||||
| 	SYS_MSGSND                 = 5067 | ||||
| 	SYS_MSGRCV                 = 5068 | ||||
| 	SYS_MSGCTL                 = 5069 | ||||
| 	SYS_FCNTL                  = 5070 | ||||
| 	SYS_FLOCK                  = 5071 | ||||
| 	SYS_FSYNC                  = 5072 | ||||
| 	SYS_FDATASYNC              = 5073 | ||||
| 	SYS_TRUNCATE               = 5074 | ||||
| 	SYS_FTRUNCATE              = 5075 | ||||
| 	SYS_GETDENTS               = 5076 | ||||
| 	SYS_GETCWD                 = 5077 | ||||
| 	SYS_CHDIR                  = 5078 | ||||
| 	SYS_FCHDIR                 = 5079 | ||||
| 	SYS_RENAME                 = 5080 | ||||
| 	SYS_MKDIR                  = 5081 | ||||
| 	SYS_RMDIR                  = 5082 | ||||
| 	SYS_CREAT                  = 5083 | ||||
| 	SYS_LINK                   = 5084 | ||||
| 	SYS_UNLINK                 = 5085 | ||||
| 	SYS_SYMLINK                = 5086 | ||||
| 	SYS_READLINK               = 5087 | ||||
| 	SYS_CHMOD                  = 5088 | ||||
| 	SYS_FCHMOD                 = 5089 | ||||
| 	SYS_CHOWN                  = 5090 | ||||
| 	SYS_FCHOWN                 = 5091 | ||||
| 	SYS_LCHOWN                 = 5092 | ||||
| 	SYS_UMASK                  = 5093 | ||||
| 	SYS_GETTIMEOFDAY           = 5094 | ||||
| 	SYS_GETRLIMIT              = 5095 | ||||
| 	SYS_GETRUSAGE              = 5096 | ||||
| 	SYS_SYSINFO                = 5097 | ||||
| 	SYS_TIMES                  = 5098 | ||||
| 	SYS_PTRACE                 = 5099 | ||||
| 	SYS_GETUID                 = 5100 | ||||
| 	SYS_SYSLOG                 = 5101 | ||||
| 	SYS_GETGID                 = 5102 | ||||
| 	SYS_SETUID                 = 5103 | ||||
| 	SYS_SETGID                 = 5104 | ||||
| 	SYS_GETEUID                = 5105 | ||||
| 	SYS_GETEGID                = 5106 | ||||
| 	SYS_SETPGID                = 5107 | ||||
| 	SYS_GETPPID                = 5108 | ||||
| 	SYS_GETPGRP                = 5109 | ||||
| 	SYS_SETSID                 = 5110 | ||||
| 	SYS_SETREUID               = 5111 | ||||
| 	SYS_SETREGID               = 5112 | ||||
| 	SYS_GETGROUPS              = 5113 | ||||
| 	SYS_SETGROUPS              = 5114 | ||||
| 	SYS_SETRESUID              = 5115 | ||||
| 	SYS_GETRESUID              = 5116 | ||||
| 	SYS_SETRESGID              = 5117 | ||||
| 	SYS_GETRESGID              = 5118 | ||||
| 	SYS_GETPGID                = 5119 | ||||
| 	SYS_SETFSUID               = 5120 | ||||
| 	SYS_SETFSGID               = 5121 | ||||
| 	SYS_GETSID                 = 5122 | ||||
| 	SYS_CAPGET                 = 5123 | ||||
| 	SYS_CAPSET                 = 5124 | ||||
| 	SYS_RT_SIGPENDING          = 5125 | ||||
| 	SYS_RT_SIGTIMEDWAIT        = 5126 | ||||
| 	SYS_RT_SIGQUEUEINFO        = 5127 | ||||
| 	SYS_RT_SIGSUSPEND          = 5128 | ||||
| 	SYS_SIGALTSTACK            = 5129 | ||||
| 	SYS_UTIME                  = 5130 | ||||
| 	SYS_MKNOD                  = 5131 | ||||
| 	SYS_PERSONALITY            = 5132 | ||||
| 	SYS_USTAT                  = 5133 | ||||
| 	SYS_STATFS                 = 5134 | ||||
| 	SYS_FSTATFS                = 5135 | ||||
| 	SYS_SYSFS                  = 5136 | ||||
| 	SYS_GETPRIORITY            = 5137 | ||||
| 	SYS_SETPRIORITY            = 5138 | ||||
| 	SYS_SCHED_SETPARAM         = 5139 | ||||
| 	SYS_SCHED_GETPARAM         = 5140 | ||||
| 	SYS_SCHED_SETSCHEDULER     = 5141 | ||||
| 	SYS_SCHED_GETSCHEDULER     = 5142 | ||||
| 	SYS_SCHED_GET_PRIORITY_MAX = 5143 | ||||
| 	SYS_SCHED_GET_PRIORITY_MIN = 5144 | ||||
| 	SYS_SCHED_RR_GET_INTERVAL  = 5145 | ||||
| 	SYS_MLOCK                  = 5146 | ||||
| 	SYS_MUNLOCK                = 5147 | ||||
| 	SYS_MLOCKALL               = 5148 | ||||
| 	SYS_MUNLOCKALL             = 5149 | ||||
| 	SYS_VHANGUP                = 5150 | ||||
| 	SYS_PIVOT_ROOT             = 5151 | ||||
| 	SYS__SYSCTL                = 5152 | ||||
| 	SYS_PRCTL                  = 5153 | ||||
| 	SYS_ADJTIMEX               = 5154 | ||||
| 	SYS_SETRLIMIT              = 5155 | ||||
| 	SYS_CHROOT                 = 5156 | ||||
| 	SYS_SYNC                   = 5157 | ||||
| 	SYS_ACCT                   = 5158 | ||||
| 	SYS_SETTIMEOFDAY           = 5159 | ||||
| 	SYS_MOUNT                  = 5160 | ||||
| 	SYS_UMOUNT2                = 5161 | ||||
| 	SYS_SWAPON                 = 5162 | ||||
| 	SYS_SWAPOFF                = 5163 | ||||
| 	SYS_REBOOT                 = 5164 | ||||
| 	SYS_SETHOSTNAME            = 5165 | ||||
| 	SYS_SETDOMAINNAME          = 5166 | ||||
| 	SYS_CREATE_MODULE          = 5167 | ||||
| 	SYS_INIT_MODULE            = 5168 | ||||
| 	SYS_DELETE_MODULE          = 5169 | ||||
| 	SYS_GET_KERNEL_SYMS        = 5170 | ||||
| 	SYS_QUERY_MODULE           = 5171 | ||||
| 	SYS_QUOTACTL               = 5172 | ||||
| 	SYS_NFSSERVCTL             = 5173 | ||||
| 	SYS_GETPMSG                = 5174 | ||||
| 	SYS_PUTPMSG                = 5175 | ||||
| 	SYS_AFS_SYSCALL            = 5176 | ||||
| 	SYS_RESERVED177            = 5177 | ||||
| 	SYS_GETTID                 = 5178 | ||||
| 	SYS_READAHEAD              = 5179 | ||||
| 	SYS_SETXATTR               = 5180 | ||||
| 	SYS_LSETXATTR              = 5181 | ||||
| 	SYS_FSETXATTR              = 5182 | ||||
| 	SYS_GETXATTR               = 5183 | ||||
| 	SYS_LGETXATTR              = 5184 | ||||
| 	SYS_FGETXATTR              = 5185 | ||||
| 	SYS_LISTXATTR              = 5186 | ||||
| 	SYS_LLISTXATTR             = 5187 | ||||
| 	SYS_FLISTXATTR             = 5188 | ||||
| 	SYS_REMOVEXATTR            = 5189 | ||||
| 	SYS_LREMOVEXATTR           = 5190 | ||||
| 	SYS_FREMOVEXATTR           = 5191 | ||||
| 	SYS_TKILL                  = 5192 | ||||
| 	SYS_RESERVED193            = 5193 | ||||
| 	SYS_FUTEX                  = 5194 | ||||
| 	SYS_SCHED_SETAFFINITY      = 5195 | ||||
| 	SYS_SCHED_GETAFFINITY      = 5196 | ||||
| 	SYS_CACHEFLUSH             = 5197 | ||||
| 	SYS_CACHECTL               = 5198 | ||||
| 	SYS_SYSMIPS                = 5199 | ||||
| 	SYS_IO_SETUP               = 5200 | ||||
| 	SYS_IO_DESTROY             = 5201 | ||||
| 	SYS_IO_GETEVENTS           = 5202 | ||||
| 	SYS_IO_SUBMIT              = 5203 | ||||
| 	SYS_IO_CANCEL              = 5204 | ||||
| 	SYS_EXIT_GROUP             = 5205 | ||||
| 	SYS_LOOKUP_DCOOKIE         = 5206 | ||||
| 	SYS_EPOLL_CREATE           = 5207 | ||||
| 	SYS_EPOLL_CTL              = 5208 | ||||
| 	SYS_EPOLL_WAIT             = 5209 | ||||
| 	SYS_REMAP_FILE_PAGES       = 5210 | ||||
| 	SYS_RT_SIGRETURN           = 5211 | ||||
| 	SYS_SET_TID_ADDRESS        = 5212 | ||||
| 	SYS_RESTART_SYSCALL        = 5213 | ||||
| 	SYS_SEMTIMEDOP             = 5214 | ||||
| 	SYS_FADVISE64              = 5215 | ||||
| 	SYS_TIMER_CREATE           = 5216 | ||||
| 	SYS_TIMER_SETTIME          = 5217 | ||||
| 	SYS_TIMER_GETTIME          = 5218 | ||||
| 	SYS_TIMER_GETOVERRUN       = 5219 | ||||
| 	SYS_TIMER_DELETE           = 5220 | ||||
| 	SYS_CLOCK_SETTIME          = 5221 | ||||
| 	SYS_CLOCK_GETTIME          = 5222 | ||||
| 	SYS_CLOCK_GETRES           = 5223 | ||||
| 	SYS_CLOCK_NANOSLEEP        = 5224 | ||||
| 	SYS_TGKILL                 = 5225 | ||||
| 	SYS_UTIMES                 = 5226 | ||||
| 	SYS_MBIND                  = 5227 | ||||
| 	SYS_GET_MEMPOLICY          = 5228 | ||||
| 	SYS_SET_MEMPOLICY          = 5229 | ||||
| 	SYS_MQ_OPEN                = 5230 | ||||
| 	SYS_MQ_UNLINK              = 5231 | ||||
| 	SYS_MQ_TIMEDSEND           = 5232 | ||||
| 	SYS_MQ_TIMEDRECEIVE        = 5233 | ||||
| 	SYS_MQ_NOTIFY              = 5234 | ||||
| 	SYS_MQ_GETSETATTR          = 5235 | ||||
| 	SYS_VSERVER                = 5236 | ||||
| 	SYS_WAITID                 = 5237 | ||||
| 	SYS_ADD_KEY                = 5239 | ||||
| 	SYS_REQUEST_KEY            = 5240 | ||||
| 	SYS_KEYCTL                 = 5241 | ||||
| 	SYS_SET_THREAD_AREA        = 5242 | ||||
| 	SYS_INOTIFY_INIT           = 5243 | ||||
| 	SYS_INOTIFY_ADD_WATCH      = 5244 | ||||
| 	SYS_INOTIFY_RM_WATCH       = 5245 | ||||
| 	SYS_MIGRATE_PAGES          = 5246 | ||||
| 	SYS_OPENAT                 = 5247 | ||||
| 	SYS_MKDIRAT                = 5248 | ||||
| 	SYS_MKNODAT                = 5249 | ||||
| 	SYS_FCHOWNAT               = 5250 | ||||
| 	SYS_FUTIMESAT              = 5251 | ||||
| 	SYS_NEWFSTATAT             = 5252 | ||||
| 	SYS_UNLINKAT               = 5253 | ||||
| 	SYS_RENAMEAT               = 5254 | ||||
| 	SYS_LINKAT                 = 5255 | ||||
| 	SYS_SYMLINKAT              = 5256 | ||||
| 	SYS_READLINKAT             = 5257 | ||||
| 	SYS_FCHMODAT               = 5258 | ||||
| 	SYS_FACCESSAT              = 5259 | ||||
| 	SYS_PSELECT6               = 5260 | ||||
| 	SYS_PPOLL                  = 5261 | ||||
| 	SYS_UNSHARE                = 5262 | ||||
| 	SYS_SPLICE                 = 5263 | ||||
| 	SYS_SYNC_FILE_RANGE        = 5264 | ||||
| 	SYS_TEE                    = 5265 | ||||
| 	SYS_VMSPLICE               = 5266 | ||||
| 	SYS_MOVE_PAGES             = 5267 | ||||
| 	SYS_SET_ROBUST_LIST        = 5268 | ||||
| 	SYS_GET_ROBUST_LIST        = 5269 | ||||
| 	SYS_KEXEC_LOAD             = 5270 | ||||
| 	SYS_GETCPU                 = 5271 | ||||
| 	SYS_EPOLL_PWAIT            = 5272 | ||||
| 	SYS_IOPRIO_SET             = 5273 | ||||
| 	SYS_IOPRIO_GET             = 5274 | ||||
| 	SYS_UTIMENSAT              = 5275 | ||||
| 	SYS_SIGNALFD               = 5276 | ||||
| 	SYS_TIMERFD                = 5277 | ||||
| 	SYS_EVENTFD                = 5278 | ||||
| 	SYS_FALLOCATE              = 5279 | ||||
| 	SYS_TIMERFD_CREATE         = 5280 | ||||
| 	SYS_TIMERFD_GETTIME        = 5281 | ||||
| 	SYS_TIMERFD_SETTIME        = 5282 | ||||
| 	SYS_SIGNALFD4              = 5283 | ||||
| 	SYS_EVENTFD2               = 5284 | ||||
| 	SYS_EPOLL_CREATE1          = 5285 | ||||
| 	SYS_DUP3                   = 5286 | ||||
| 	SYS_PIPE2                  = 5287 | ||||
| 	SYS_INOTIFY_INIT1          = 5288 | ||||
| 	SYS_PREADV                 = 5289 | ||||
| 	SYS_PWRITEV                = 5290 | ||||
| 	SYS_RT_TGSIGQUEUEINFO      = 5291 | ||||
| 	SYS_PERF_EVENT_OPEN        = 5292 | ||||
| 	SYS_ACCEPT4                = 5293 | ||||
| 	SYS_RECVMMSG               = 5294 | ||||
| 	SYS_FANOTIFY_INIT          = 5295 | ||||
| 	SYS_FANOTIFY_MARK          = 5296 | ||||
| 	SYS_PRLIMIT64              = 5297 | ||||
| 	SYS_NAME_TO_HANDLE_AT      = 5298 | ||||
| 	SYS_OPEN_BY_HANDLE_AT      = 5299 | ||||
| 	SYS_CLOCK_ADJTIME          = 5300 | ||||
| 	SYS_SYNCFS                 = 5301 | ||||
| 	SYS_SENDMMSG               = 5302 | ||||
| 	SYS_SETNS                  = 5303 | ||||
| 	SYS_PROCESS_VM_READV       = 5304 | ||||
| 	SYS_PROCESS_VM_WRITEV      = 5305 | ||||
| 	SYS_KCMP                   = 5306 | ||||
| 	SYS_FINIT_MODULE           = 5307 | ||||
| 	SYS_GETDENTS64             = 5308 | ||||
| 	SYS_SCHED_SETATTR          = 5309 | ||||
| 	SYS_SCHED_GETATTR          = 5310 | ||||
| 	SYS_RENAMEAT2              = 5311 | ||||
| 	SYS_SECCOMP                = 5312 | ||||
| 	SYS_GETRANDOM              = 5313 | ||||
| 	SYS_MEMFD_CREATE           = 5314 | ||||
| 	SYS_BPF                    = 5315 | ||||
| 	SYS_EXECVEAT               = 5316 | ||||
| 	SYS_USERFAULTFD            = 5317 | ||||
| 	SYS_MEMBARRIER             = 5318 | ||||
| 	SYS_MLOCK2                 = 5319 | ||||
| 	SYS_COPY_FILE_RANGE        = 5320 | ||||
| 	SYS_PREADV2                = 5321 | ||||
| 	SYS_PWRITEV2               = 5322 | ||||
| 	SYS_PKEY_MPROTECT          = 5323 | ||||
| 	SYS_PKEY_ALLOC             = 5324 | ||||
| 	SYS_PKEY_FREE              = 5325 | ||||
| 	SYS_STATX                  = 5326 | ||||
| 	SYS_RSEQ                   = 5327 | ||||
| 	SYS_IO_PGETEVENTS          = 5328 | ||||
| 	SYS_PIDFD_SEND_SIGNAL      = 5424 | ||||
| 	SYS_IO_URING_SETUP         = 5425 | ||||
| 	SYS_IO_URING_ENTER         = 5426 | ||||
| 	SYS_IO_URING_REGISTER      = 5427 | ||||
| 	SYS_OPEN_TREE              = 5428 | ||||
| 	SYS_MOVE_MOUNT             = 5429 | ||||
| 	SYS_FSOPEN                 = 5430 | ||||
| 	SYS_FSCONFIG               = 5431 | ||||
| 	SYS_FSMOUNT                = 5432 | ||||
| 	SYS_FSPICK                 = 5433 | ||||
| 	SYS_PIDFD_OPEN             = 5434 | ||||
| 	SYS_CLONE3                 = 5435 | ||||
| 	SYS_CLOSE_RANGE            = 5436 | ||||
| 	SYS_OPENAT2                = 5437 | ||||
| 	SYS_PIDFD_GETFD            = 5438 | ||||
| 	SYS_FACCESSAT2             = 5439 | ||||
| 	SYS_PROCESS_MADVISE        = 5440 | ||||
| 	SYS_EPOLL_PWAIT2           = 5441 | ||||
| 	SYS_MOUNT_SETATTR          = 5442 | ||||
| 	SYS_READ                    = 5000 | ||||
| 	SYS_WRITE                   = 5001 | ||||
| 	SYS_OPEN                    = 5002 | ||||
| 	SYS_CLOSE                   = 5003 | ||||
| 	SYS_STAT                    = 5004 | ||||
| 	SYS_FSTAT                   = 5005 | ||||
| 	SYS_LSTAT                   = 5006 | ||||
| 	SYS_POLL                    = 5007 | ||||
| 	SYS_LSEEK                   = 5008 | ||||
| 	SYS_MMAP                    = 5009 | ||||
| 	SYS_MPROTECT                = 5010 | ||||
| 	SYS_MUNMAP                  = 5011 | ||||
| 	SYS_BRK                     = 5012 | ||||
| 	SYS_RT_SIGACTION            = 5013 | ||||
| 	SYS_RT_SIGPROCMASK          = 5014 | ||||
| 	SYS_IOCTL                   = 5015 | ||||
| 	SYS_PREAD64                 = 5016 | ||||
| 	SYS_PWRITE64                = 5017 | ||||
| 	SYS_READV                   = 5018 | ||||
| 	SYS_WRITEV                  = 5019 | ||||
| 	SYS_ACCESS                  = 5020 | ||||
| 	SYS_PIPE                    = 5021 | ||||
| 	SYS__NEWSELECT              = 5022 | ||||
| 	SYS_SCHED_YIELD             = 5023 | ||||
| 	SYS_MREMAP                  = 5024 | ||||
| 	SYS_MSYNC                   = 5025 | ||||
| 	SYS_MINCORE                 = 5026 | ||||
| 	SYS_MADVISE                 = 5027 | ||||
| 	SYS_SHMGET                  = 5028 | ||||
| 	SYS_SHMAT                   = 5029 | ||||
| 	SYS_SHMCTL                  = 5030 | ||||
| 	SYS_DUP                     = 5031 | ||||
| 	SYS_DUP2                    = 5032 | ||||
| 	SYS_PAUSE                   = 5033 | ||||
| 	SYS_NANOSLEEP               = 5034 | ||||
| 	SYS_GETITIMER               = 5035 | ||||
| 	SYS_SETITIMER               = 5036 | ||||
| 	SYS_ALARM                   = 5037 | ||||
| 	SYS_GETPID                  = 5038 | ||||
| 	SYS_SENDFILE                = 5039 | ||||
| 	SYS_SOCKET                  = 5040 | ||||
| 	SYS_CONNECT                 = 5041 | ||||
| 	SYS_ACCEPT                  = 5042 | ||||
| 	SYS_SENDTO                  = 5043 | ||||
| 	SYS_RECVFROM                = 5044 | ||||
| 	SYS_SENDMSG                 = 5045 | ||||
| 	SYS_RECVMSG                 = 5046 | ||||
| 	SYS_SHUTDOWN                = 5047 | ||||
| 	SYS_BIND                    = 5048 | ||||
| 	SYS_LISTEN                  = 5049 | ||||
| 	SYS_GETSOCKNAME             = 5050 | ||||
| 	SYS_GETPEERNAME             = 5051 | ||||
| 	SYS_SOCKETPAIR              = 5052 | ||||
| 	SYS_SETSOCKOPT              = 5053 | ||||
| 	SYS_GETSOCKOPT              = 5054 | ||||
| 	SYS_CLONE                   = 5055 | ||||
| 	SYS_FORK                    = 5056 | ||||
| 	SYS_EXECVE                  = 5057 | ||||
| 	SYS_EXIT                    = 5058 | ||||
| 	SYS_WAIT4                   = 5059 | ||||
| 	SYS_KILL                    = 5060 | ||||
| 	SYS_UNAME                   = 5061 | ||||
| 	SYS_SEMGET                  = 5062 | ||||
| 	SYS_SEMOP                   = 5063 | ||||
| 	SYS_SEMCTL                  = 5064 | ||||
| 	SYS_SHMDT                   = 5065 | ||||
| 	SYS_MSGGET                  = 5066 | ||||
| 	SYS_MSGSND                  = 5067 | ||||
| 	SYS_MSGRCV                  = 5068 | ||||
| 	SYS_MSGCTL                  = 5069 | ||||
| 	SYS_FCNTL                   = 5070 | ||||
| 	SYS_FLOCK                   = 5071 | ||||
| 	SYS_FSYNC                   = 5072 | ||||
| 	SYS_FDATASYNC               = 5073 | ||||
| 	SYS_TRUNCATE                = 5074 | ||||
| 	SYS_FTRUNCATE               = 5075 | ||||
| 	SYS_GETDENTS                = 5076 | ||||
| 	SYS_GETCWD                  = 5077 | ||||
| 	SYS_CHDIR                   = 5078 | ||||
| 	SYS_FCHDIR                  = 5079 | ||||
| 	SYS_RENAME                  = 5080 | ||||
| 	SYS_MKDIR                   = 5081 | ||||
| 	SYS_RMDIR                   = 5082 | ||||
| 	SYS_CREAT                   = 5083 | ||||
| 	SYS_LINK                    = 5084 | ||||
| 	SYS_UNLINK                  = 5085 | ||||
| 	SYS_SYMLINK                 = 5086 | ||||
| 	SYS_READLINK                = 5087 | ||||
| 	SYS_CHMOD                   = 5088 | ||||
| 	SYS_FCHMOD                  = 5089 | ||||
| 	SYS_CHOWN                   = 5090 | ||||
| 	SYS_FCHOWN                  = 5091 | ||||
| 	SYS_LCHOWN                  = 5092 | ||||
| 	SYS_UMASK                   = 5093 | ||||
| 	SYS_GETTIMEOFDAY            = 5094 | ||||
| 	SYS_GETRLIMIT               = 5095 | ||||
| 	SYS_GETRUSAGE               = 5096 | ||||
| 	SYS_SYSINFO                 = 5097 | ||||
| 	SYS_TIMES                   = 5098 | ||||
| 	SYS_PTRACE                  = 5099 | ||||
| 	SYS_GETUID                  = 5100 | ||||
| 	SYS_SYSLOG                  = 5101 | ||||
| 	SYS_GETGID                  = 5102 | ||||
| 	SYS_SETUID                  = 5103 | ||||
| 	SYS_SETGID                  = 5104 | ||||
| 	SYS_GETEUID                 = 5105 | ||||
| 	SYS_GETEGID                 = 5106 | ||||
| 	SYS_SETPGID                 = 5107 | ||||
| 	SYS_GETPPID                 = 5108 | ||||
| 	SYS_GETPGRP                 = 5109 | ||||
| 	SYS_SETSID                  = 5110 | ||||
| 	SYS_SETREUID                = 5111 | ||||
| 	SYS_SETREGID                = 5112 | ||||
| 	SYS_GETGROUPS               = 5113 | ||||
| 	SYS_SETGROUPS               = 5114 | ||||
| 	SYS_SETRESUID               = 5115 | ||||
| 	SYS_GETRESUID               = 5116 | ||||
| 	SYS_SETRESGID               = 5117 | ||||
| 	SYS_GETRESGID               = 5118 | ||||
| 	SYS_GETPGID                 = 5119 | ||||
| 	SYS_SETFSUID                = 5120 | ||||
| 	SYS_SETFSGID                = 5121 | ||||
| 	SYS_GETSID                  = 5122 | ||||
| 	SYS_CAPGET                  = 5123 | ||||
| 	SYS_CAPSET                  = 5124 | ||||
| 	SYS_RT_SIGPENDING           = 5125 | ||||
| 	SYS_RT_SIGTIMEDWAIT         = 5126 | ||||
| 	SYS_RT_SIGQUEUEINFO         = 5127 | ||||
| 	SYS_RT_SIGSUSPEND           = 5128 | ||||
| 	SYS_SIGALTSTACK             = 5129 | ||||
| 	SYS_UTIME                   = 5130 | ||||
| 	SYS_MKNOD                   = 5131 | ||||
| 	SYS_PERSONALITY             = 5132 | ||||
| 	SYS_USTAT                   = 5133 | ||||
| 	SYS_STATFS                  = 5134 | ||||
| 	SYS_FSTATFS                 = 5135 | ||||
| 	SYS_SYSFS                   = 5136 | ||||
| 	SYS_GETPRIORITY             = 5137 | ||||
| 	SYS_SETPRIORITY             = 5138 | ||||
| 	SYS_SCHED_SETPARAM          = 5139 | ||||
| 	SYS_SCHED_GETPARAM          = 5140 | ||||
| 	SYS_SCHED_SETSCHEDULER      = 5141 | ||||
| 	SYS_SCHED_GETSCHEDULER      = 5142 | ||||
| 	SYS_SCHED_GET_PRIORITY_MAX  = 5143 | ||||
| 	SYS_SCHED_GET_PRIORITY_MIN  = 5144 | ||||
| 	SYS_SCHED_RR_GET_INTERVAL   = 5145 | ||||
| 	SYS_MLOCK                   = 5146 | ||||
| 	SYS_MUNLOCK                 = 5147 | ||||
| 	SYS_MLOCKALL                = 5148 | ||||
| 	SYS_MUNLOCKALL              = 5149 | ||||
| 	SYS_VHANGUP                 = 5150 | ||||
| 	SYS_PIVOT_ROOT              = 5151 | ||||
| 	SYS__SYSCTL                 = 5152 | ||||
| 	SYS_PRCTL                   = 5153 | ||||
| 	SYS_ADJTIMEX                = 5154 | ||||
| 	SYS_SETRLIMIT               = 5155 | ||||
| 	SYS_CHROOT                  = 5156 | ||||
| 	SYS_SYNC                    = 5157 | ||||
| 	SYS_ACCT                    = 5158 | ||||
| 	SYS_SETTIMEOFDAY            = 5159 | ||||
| 	SYS_MOUNT                   = 5160 | ||||
| 	SYS_UMOUNT2                 = 5161 | ||||
| 	SYS_SWAPON                  = 5162 | ||||
| 	SYS_SWAPOFF                 = 5163 | ||||
| 	SYS_REBOOT                  = 5164 | ||||
| 	SYS_SETHOSTNAME             = 5165 | ||||
| 	SYS_SETDOMAINNAME           = 5166 | ||||
| 	SYS_CREATE_MODULE           = 5167 | ||||
| 	SYS_INIT_MODULE             = 5168 | ||||
| 	SYS_DELETE_MODULE           = 5169 | ||||
| 	SYS_GET_KERNEL_SYMS         = 5170 | ||||
| 	SYS_QUERY_MODULE            = 5171 | ||||
| 	SYS_QUOTACTL                = 5172 | ||||
| 	SYS_NFSSERVCTL              = 5173 | ||||
| 	SYS_GETPMSG                 = 5174 | ||||
| 	SYS_PUTPMSG                 = 5175 | ||||
| 	SYS_AFS_SYSCALL             = 5176 | ||||
| 	SYS_RESERVED177             = 5177 | ||||
| 	SYS_GETTID                  = 5178 | ||||
| 	SYS_READAHEAD               = 5179 | ||||
| 	SYS_SETXATTR                = 5180 | ||||
| 	SYS_LSETXATTR               = 5181 | ||||
| 	SYS_FSETXATTR               = 5182 | ||||
| 	SYS_GETXATTR                = 5183 | ||||
| 	SYS_LGETXATTR               = 5184 | ||||
| 	SYS_FGETXATTR               = 5185 | ||||
| 	SYS_LISTXATTR               = 5186 | ||||
| 	SYS_LLISTXATTR              = 5187 | ||||
| 	SYS_FLISTXATTR              = 5188 | ||||
| 	SYS_REMOVEXATTR             = 5189 | ||||
| 	SYS_LREMOVEXATTR            = 5190 | ||||
| 	SYS_FREMOVEXATTR            = 5191 | ||||
| 	SYS_TKILL                   = 5192 | ||||
| 	SYS_RESERVED193             = 5193 | ||||
| 	SYS_FUTEX                   = 5194 | ||||
| 	SYS_SCHED_SETAFFINITY       = 5195 | ||||
| 	SYS_SCHED_GETAFFINITY       = 5196 | ||||
| 	SYS_CACHEFLUSH              = 5197 | ||||
| 	SYS_CACHECTL                = 5198 | ||||
| 	SYS_SYSMIPS                 = 5199 | ||||
| 	SYS_IO_SETUP                = 5200 | ||||
| 	SYS_IO_DESTROY              = 5201 | ||||
| 	SYS_IO_GETEVENTS            = 5202 | ||||
| 	SYS_IO_SUBMIT               = 5203 | ||||
| 	SYS_IO_CANCEL               = 5204 | ||||
| 	SYS_EXIT_GROUP              = 5205 | ||||
| 	SYS_LOOKUP_DCOOKIE          = 5206 | ||||
| 	SYS_EPOLL_CREATE            = 5207 | ||||
| 	SYS_EPOLL_CTL               = 5208 | ||||
| 	SYS_EPOLL_WAIT              = 5209 | ||||
| 	SYS_REMAP_FILE_PAGES        = 5210 | ||||
| 	SYS_RT_SIGRETURN            = 5211 | ||||
| 	SYS_SET_TID_ADDRESS         = 5212 | ||||
| 	SYS_RESTART_SYSCALL         = 5213 | ||||
| 	SYS_SEMTIMEDOP              = 5214 | ||||
| 	SYS_FADVISE64               = 5215 | ||||
| 	SYS_TIMER_CREATE            = 5216 | ||||
| 	SYS_TIMER_SETTIME           = 5217 | ||||
| 	SYS_TIMER_GETTIME           = 5218 | ||||
| 	SYS_TIMER_GETOVERRUN        = 5219 | ||||
| 	SYS_TIMER_DELETE            = 5220 | ||||
| 	SYS_CLOCK_SETTIME           = 5221 | ||||
| 	SYS_CLOCK_GETTIME           = 5222 | ||||
| 	SYS_CLOCK_GETRES            = 5223 | ||||
| 	SYS_CLOCK_NANOSLEEP         = 5224 | ||||
| 	SYS_TGKILL                  = 5225 | ||||
| 	SYS_UTIMES                  = 5226 | ||||
| 	SYS_MBIND                   = 5227 | ||||
| 	SYS_GET_MEMPOLICY           = 5228 | ||||
| 	SYS_SET_MEMPOLICY           = 5229 | ||||
| 	SYS_MQ_OPEN                 = 5230 | ||||
| 	SYS_MQ_UNLINK               = 5231 | ||||
| 	SYS_MQ_TIMEDSEND            = 5232 | ||||
| 	SYS_MQ_TIMEDRECEIVE         = 5233 | ||||
| 	SYS_MQ_NOTIFY               = 5234 | ||||
| 	SYS_MQ_GETSETATTR           = 5235 | ||||
| 	SYS_VSERVER                 = 5236 | ||||
| 	SYS_WAITID                  = 5237 | ||||
| 	SYS_ADD_KEY                 = 5239 | ||||
| 	SYS_REQUEST_KEY             = 5240 | ||||
| 	SYS_KEYCTL                  = 5241 | ||||
| 	SYS_SET_THREAD_AREA         = 5242 | ||||
| 	SYS_INOTIFY_INIT            = 5243 | ||||
| 	SYS_INOTIFY_ADD_WATCH       = 5244 | ||||
| 	SYS_INOTIFY_RM_WATCH        = 5245 | ||||
| 	SYS_MIGRATE_PAGES           = 5246 | ||||
| 	SYS_OPENAT                  = 5247 | ||||
| 	SYS_MKDIRAT                 = 5248 | ||||
| 	SYS_MKNODAT                 = 5249 | ||||
| 	SYS_FCHOWNAT                = 5250 | ||||
| 	SYS_FUTIMESAT               = 5251 | ||||
| 	SYS_NEWFSTATAT              = 5252 | ||||
| 	SYS_UNLINKAT                = 5253 | ||||
| 	SYS_RENAMEAT                = 5254 | ||||
| 	SYS_LINKAT                  = 5255 | ||||
| 	SYS_SYMLINKAT               = 5256 | ||||
| 	SYS_READLINKAT              = 5257 | ||||
| 	SYS_FCHMODAT                = 5258 | ||||
| 	SYS_FACCESSAT               = 5259 | ||||
| 	SYS_PSELECT6                = 5260 | ||||
| 	SYS_PPOLL                   = 5261 | ||||
| 	SYS_UNSHARE                 = 5262 | ||||
| 	SYS_SPLICE                  = 5263 | ||||
| 	SYS_SYNC_FILE_RANGE         = 5264 | ||||
| 	SYS_TEE                     = 5265 | ||||
| 	SYS_VMSPLICE                = 5266 | ||||
| 	SYS_MOVE_PAGES              = 5267 | ||||
| 	SYS_SET_ROBUST_LIST         = 5268 | ||||
| 	SYS_GET_ROBUST_LIST         = 5269 | ||||
| 	SYS_KEXEC_LOAD              = 5270 | ||||
| 	SYS_GETCPU                  = 5271 | ||||
| 	SYS_EPOLL_PWAIT             = 5272 | ||||
| 	SYS_IOPRIO_SET              = 5273 | ||||
| 	SYS_IOPRIO_GET              = 5274 | ||||
| 	SYS_UTIMENSAT               = 5275 | ||||
| 	SYS_SIGNALFD                = 5276 | ||||
| 	SYS_TIMERFD                 = 5277 | ||||
| 	SYS_EVENTFD                 = 5278 | ||||
| 	SYS_FALLOCATE               = 5279 | ||||
| 	SYS_TIMERFD_CREATE          = 5280 | ||||
| 	SYS_TIMERFD_GETTIME         = 5281 | ||||
| 	SYS_TIMERFD_SETTIME         = 5282 | ||||
| 	SYS_SIGNALFD4               = 5283 | ||||
| 	SYS_EVENTFD2                = 5284 | ||||
| 	SYS_EPOLL_CREATE1           = 5285 | ||||
| 	SYS_DUP3                    = 5286 | ||||
| 	SYS_PIPE2                   = 5287 | ||||
| 	SYS_INOTIFY_INIT1           = 5288 | ||||
| 	SYS_PREADV                  = 5289 | ||||
| 	SYS_PWRITEV                 = 5290 | ||||
| 	SYS_RT_TGSIGQUEUEINFO       = 5291 | ||||
| 	SYS_PERF_EVENT_OPEN         = 5292 | ||||
| 	SYS_ACCEPT4                 = 5293 | ||||
| 	SYS_RECVMMSG                = 5294 | ||||
| 	SYS_FANOTIFY_INIT           = 5295 | ||||
| 	SYS_FANOTIFY_MARK           = 5296 | ||||
| 	SYS_PRLIMIT64               = 5297 | ||||
| 	SYS_NAME_TO_HANDLE_AT       = 5298 | ||||
| 	SYS_OPEN_BY_HANDLE_AT       = 5299 | ||||
| 	SYS_CLOCK_ADJTIME           = 5300 | ||||
| 	SYS_SYNCFS                  = 5301 | ||||
| 	SYS_SENDMMSG                = 5302 | ||||
| 	SYS_SETNS                   = 5303 | ||||
| 	SYS_PROCESS_VM_READV        = 5304 | ||||
| 	SYS_PROCESS_VM_WRITEV       = 5305 | ||||
| 	SYS_KCMP                    = 5306 | ||||
| 	SYS_FINIT_MODULE            = 5307 | ||||
| 	SYS_GETDENTS64              = 5308 | ||||
| 	SYS_SCHED_SETATTR           = 5309 | ||||
| 	SYS_SCHED_GETATTR           = 5310 | ||||
| 	SYS_RENAMEAT2               = 5311 | ||||
| 	SYS_SECCOMP                 = 5312 | ||||
| 	SYS_GETRANDOM               = 5313 | ||||
| 	SYS_MEMFD_CREATE            = 5314 | ||||
| 	SYS_BPF                     = 5315 | ||||
| 	SYS_EXECVEAT                = 5316 | ||||
| 	SYS_USERFAULTFD             = 5317 | ||||
| 	SYS_MEMBARRIER              = 5318 | ||||
| 	SYS_MLOCK2                  = 5319 | ||||
| 	SYS_COPY_FILE_RANGE         = 5320 | ||||
| 	SYS_PREADV2                 = 5321 | ||||
| 	SYS_PWRITEV2                = 5322 | ||||
| 	SYS_PKEY_MPROTECT           = 5323 | ||||
| 	SYS_PKEY_ALLOC              = 5324 | ||||
| 	SYS_PKEY_FREE               = 5325 | ||||
| 	SYS_STATX                   = 5326 | ||||
| 	SYS_RSEQ                    = 5327 | ||||
| 	SYS_IO_PGETEVENTS           = 5328 | ||||
| 	SYS_PIDFD_SEND_SIGNAL       = 5424 | ||||
| 	SYS_IO_URING_SETUP          = 5425 | ||||
| 	SYS_IO_URING_ENTER          = 5426 | ||||
| 	SYS_IO_URING_REGISTER       = 5427 | ||||
| 	SYS_OPEN_TREE               = 5428 | ||||
| 	SYS_MOVE_MOUNT              = 5429 | ||||
| 	SYS_FSOPEN                  = 5430 | ||||
| 	SYS_FSCONFIG                = 5431 | ||||
| 	SYS_FSMOUNT                 = 5432 | ||||
| 	SYS_FSPICK                  = 5433 | ||||
| 	SYS_PIDFD_OPEN              = 5434 | ||||
| 	SYS_CLONE3                  = 5435 | ||||
| 	SYS_CLOSE_RANGE             = 5436 | ||||
| 	SYS_OPENAT2                 = 5437 | ||||
| 	SYS_PIDFD_GETFD             = 5438 | ||||
| 	SYS_FACCESSAT2              = 5439 | ||||
| 	SYS_PROCESS_MADVISE         = 5440 | ||||
| 	SYS_EPOLL_PWAIT2            = 5441 | ||||
| 	SYS_MOUNT_SETATTR           = 5442 | ||||
| 	SYS_QUOTACTL_FD             = 5443 | ||||
| 	SYS_LANDLOCK_CREATE_RULESET = 5444 | ||||
| 	SYS_LANDLOCK_ADD_RULE       = 5445 | ||||
| 	SYS_LANDLOCK_RESTRICT_SELF  = 5446 | ||||
| 	SYS_PROCESS_MRELEASE        = 5448 | ||||
| ) | ||||
|  |  | |||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
		Reference in New Issue