mirror of
				https://github.com/superseriousbusiness/gotosocial.git
				synced 2025-10-31 15:42:26 -05:00 
			
		
		
		
	[chore]: Bump golang.org/x/net from 0.24.0 to 0.25.0 (#2914)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.24.0 to 0.25.0. - [Commits](https://github.com/golang/net/compare/v0.24.0...v0.25.0) --- updated-dependencies: - dependency-name: golang.org/x/net dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This commit is contained in:
		
					parent
					
						
							
								c06e6fb656
							
						
					
				
			
			
				commit
				
					
						96eea416f3
					
				
			
		
					 66 changed files with 8876 additions and 4162 deletions
				
			
		
							
								
								
									
										6
									
								
								go.mod
									
										
									
									
									
								
							
							
						
						
									
										6
									
								
								go.mod
									
										
									
									
									
								
							|  | @ -71,9 +71,9 @@ require ( | ||||||
| 	go.opentelemetry.io/otel/sdk/metric v1.24.0 | 	go.opentelemetry.io/otel/sdk/metric v1.24.0 | ||||||
| 	go.opentelemetry.io/otel/trace v1.26.0 | 	go.opentelemetry.io/otel/trace v1.26.0 | ||||||
| 	go.uber.org/automaxprocs v1.5.3 | 	go.uber.org/automaxprocs v1.5.3 | ||||||
| 	golang.org/x/crypto v0.22.0 | 	golang.org/x/crypto v0.23.0 | ||||||
| 	golang.org/x/image v0.16.0 | 	golang.org/x/image v0.16.0 | ||||||
| 	golang.org/x/net v0.24.0 | 	golang.org/x/net v0.25.0 | ||||||
| 	golang.org/x/oauth2 v0.20.0 | 	golang.org/x/oauth2 v0.20.0 | ||||||
| 	golang.org/x/text v0.15.0 | 	golang.org/x/text v0.15.0 | ||||||
| 	gopkg.in/mcuadros/go-syslog.v2 v2.3.0 | 	gopkg.in/mcuadros/go-syslog.v2 v2.3.0 | ||||||
|  | @ -214,7 +214,7 @@ require ( | ||||||
| 	golang.org/x/exp v0.0.0-20240222234643-814bf88cf225 // indirect | 	golang.org/x/exp v0.0.0-20240222234643-814bf88cf225 // indirect | ||||||
| 	golang.org/x/mod v0.16.0 // indirect | 	golang.org/x/mod v0.16.0 // indirect | ||||||
| 	golang.org/x/sync v0.6.0 // indirect | 	golang.org/x/sync v0.6.0 // indirect | ||||||
| 	golang.org/x/sys v0.19.0 // indirect | 	golang.org/x/sys v0.20.0 // indirect | ||||||
| 	golang.org/x/tools v0.19.0 // indirect | 	golang.org/x/tools v0.19.0 // indirect | ||||||
| 	google.golang.org/genproto/googleapis/api v0.0.0-20240227224415-6ceb2ff114de // indirect | 	google.golang.org/genproto/googleapis/api v0.0.0-20240227224415-6ceb2ff114de // indirect | ||||||
| 	google.golang.org/genproto/googleapis/rpc v0.0.0-20240401170217-c3f982113cda // indirect | 	google.golang.org/genproto/googleapis/rpc v0.0.0-20240401170217-c3f982113cda // indirect | ||||||
|  |  | ||||||
							
								
								
									
										16
									
								
								go.sum
									
										
									
									
									
								
							
							
						
						
									
										16
									
								
								go.sum
									
										
									
									
									
								
							|  | @ -680,8 +680,8 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U | ||||||
| golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= | golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= | ||||||
| golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= | golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= | ||||||
| golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= | golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= | ||||||
| golang.org/x/crypto v0.22.0 h1:g1v0xeRhjcugydODzvb3mEM9SQ0HGp9s/nh3COQ/C30= | golang.org/x/crypto v0.23.0 h1:dIJU/v2J8Mdglj/8rJ6UUOM3Zc9zLZxVZwwxMooUSAI= | ||||||
| golang.org/x/crypto v0.22.0/go.mod h1:vr6Su+7cTlO45qkww3VDJlzDn0ctJvRgYbC2NvXHt+M= | golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8= | ||||||
| golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= | golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= | ||||||
| golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= | golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= | ||||||
| golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= | golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= | ||||||
|  | @ -752,8 +752,8 @@ golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81R | ||||||
| golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= | golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= | ||||||
| golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= | golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= | ||||||
| golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= | golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= | ||||||
| golang.org/x/net v0.24.0 h1:1PcaxkF854Fu3+lvBIx5SYn9wRlBzzcnHZSiaFFAb0w= | golang.org/x/net v0.25.0 h1:d/OCCoBEUq33pjydKrGQhw7IlUPI2Oylr+8qLx49kac= | ||||||
| golang.org/x/net v0.24.0/go.mod h1:2Q7sJY5mzlzWjKtYUEXSlBWCdyaioyXzRB2RtU8KVE8= | golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= | ||||||
| golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= | golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= | ||||||
| golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= | golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= | ||||||
| golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= | golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= | ||||||
|  | @ -813,13 +813,13 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc | ||||||
| golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
| golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
| golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | ||||||
| golang.org/x/sys v0.19.0 h1:q5f1RH2jigJ1MoAWp2KTp3gm5zAGFUTarQZ5U386+4o= | golang.org/x/sys v0.20.0 h1:Od9JTbYCk261bKm4M/mw7AklTlFYIa0bIp9BgSm1S8Y= | ||||||
| golang.org/x/sys v0.19.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= | golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= | ||||||
| golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= | golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= | ||||||
| golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= | golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= | ||||||
| golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= | golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= | ||||||
| golang.org/x/term v0.19.0 h1:+ThwsDv+tYfnJFhF4L8jITxu1tdTWRTZpdsWgEgjL6Q= | golang.org/x/term v0.20.0 h1:VnkxpohqXaOBYJtBmEppKUG6mXpi+4O6purfc2+sMhw= | ||||||
| golang.org/x/term v0.19.0/go.mod h1:2CuTdWZ7KHSQwUzKva0cbMg6q2DMI3Mmxp+gKJbskEk= | golang.org/x/term v0.20.0/go.mod h1:8UkIAJTvZgivsXaD6/pH6U9ecQzZ45awqEOzuCvwpFY= | ||||||
| golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= | golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= | ||||||
| golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= | golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= | ||||||
| golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= | golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= | ||||||
|  |  | ||||||
							
								
								
									
										19
									
								
								vendor/golang.org/x/crypto/sha3/sha3_s390x.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								vendor/golang.org/x/crypto/sha3/sha3_s390x.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -143,6 +143,12 @@ func (s *asmState) Write(b []byte) (int, error) { | ||||||
| 
 | 
 | ||||||
| // Read squeezes an arbitrary number of bytes from the sponge. | // Read squeezes an arbitrary number of bytes from the sponge. | ||||||
| func (s *asmState) Read(out []byte) (n int, err error) { | func (s *asmState) Read(out []byte) (n int, err error) { | ||||||
|  | 	// The 'compute last message digest' instruction only stores the digest | ||||||
|  | 	// at the first operand (dst) for SHAKE functions. | ||||||
|  | 	if s.function != shake_128 && s.function != shake_256 { | ||||||
|  | 		panic("sha3: can only call Read for SHAKE functions") | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
| 	n = len(out) | 	n = len(out) | ||||||
| 
 | 
 | ||||||
| 	// need to pad if we were absorbing | 	// need to pad if we were absorbing | ||||||
|  | @ -202,8 +208,17 @@ func (s *asmState) Sum(b []byte) []byte { | ||||||
| 
 | 
 | ||||||
| 	// Hash the buffer. Note that we don't clear it because we | 	// Hash the buffer. Note that we don't clear it because we | ||||||
| 	// aren't updating the state. | 	// aren't updating the state. | ||||||
| 	klmd(s.function, &a, nil, s.buf) | 	switch s.function { | ||||||
| 	return append(b, a[:s.outputLen]...) | 	case sha3_224, sha3_256, sha3_384, sha3_512: | ||||||
|  | 		klmd(s.function, &a, nil, s.buf) | ||||||
|  | 		return append(b, a[:s.outputLen]...) | ||||||
|  | 	case shake_128, shake_256: | ||||||
|  | 		d := make([]byte, s.outputLen, 64) | ||||||
|  | 		klmd(s.function, &a, d, s.buf) | ||||||
|  | 		return append(b, d[:s.outputLen]...) | ||||||
|  | 	default: | ||||||
|  | 		panic("sha3: unknown function") | ||||||
|  | 	} | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // Reset resets the Hash to its initial state. | // Reset resets the Hash to its initial state. | ||||||
|  |  | ||||||
							
								
								
									
										14
									
								
								vendor/golang.org/x/crypto/ssh/client_auth.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										14
									
								
								vendor/golang.org/x/crypto/ssh/client_auth.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -404,10 +404,10 @@ func validateKey(key PublicKey, algo string, user string, c packetConn) (bool, e | ||||||
| 		return false, err | 		return false, err | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	return confirmKeyAck(key, algo, c) | 	return confirmKeyAck(key, c) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func confirmKeyAck(key PublicKey, algo string, c packetConn) (bool, error) { | func confirmKeyAck(key PublicKey, c packetConn) (bool, error) { | ||||||
| 	pubKey := key.Marshal() | 	pubKey := key.Marshal() | ||||||
| 
 | 
 | ||||||
| 	for { | 	for { | ||||||
|  | @ -425,7 +425,15 @@ func confirmKeyAck(key PublicKey, algo string, c packetConn) (bool, error) { | ||||||
| 			if err := Unmarshal(packet, &msg); err != nil { | 			if err := Unmarshal(packet, &msg); err != nil { | ||||||
| 				return false, err | 				return false, err | ||||||
| 			} | 			} | ||||||
| 			if msg.Algo != algo || !bytes.Equal(msg.PubKey, pubKey) { | 			// According to RFC 4252 Section 7 the algorithm in | ||||||
|  | 			// SSH_MSG_USERAUTH_PK_OK should match that of the request but some | ||||||
|  | 			// servers send the key type instead. OpenSSH allows any algorithm | ||||||
|  | 			// that matches the public key, so we do the same. | ||||||
|  | 			// https://github.com/openssh/openssh-portable/blob/86bdd385/sshconnect2.c#L709 | ||||||
|  | 			if !contains(algorithmsForKeyFormat(key.Type()), msg.Algo) { | ||||||
|  | 				return false, nil | ||||||
|  | 			} | ||||||
|  | 			if !bytes.Equal(msg.PubKey, pubKey) { | ||||||
| 				return false, nil | 				return false, nil | ||||||
| 			} | 			} | ||||||
| 			return true, nil | 			return true, nil | ||||||
|  |  | ||||||
							
								
								
									
										2
									
								
								vendor/golang.org/x/net/html/doc.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/golang.org/x/net/html/doc.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -104,7 +104,7 @@ tokenization, and tokenization and tree construction stages of the WHATWG HTML | ||||||
| parsing specification respectively. While the tokenizer parses and normalizes | parsing specification respectively. While the tokenizer parses and normalizes | ||||||
| individual HTML tokens, only the parser constructs the DOM tree from the | individual HTML tokens, only the parser constructs the DOM tree from the | ||||||
| tokenized HTML, as described in the tree construction stage of the | tokenized HTML, as described in the tree construction stage of the | ||||||
| specification, dynamically modifying or extending the docuemnt's DOM tree. | specification, dynamically modifying or extending the document's DOM tree. | ||||||
| 
 | 
 | ||||||
| If your use case requires semantically well-formed HTML documents, as defined by | If your use case requires semantically well-formed HTML documents, as defined by | ||||||
| the WHATWG specification, the parser should be used rather than the tokenizer. | the WHATWG specification, the parser should be used rather than the tokenizer. | ||||||
|  |  | ||||||
							
								
								
									
										13
									
								
								vendor/golang.org/x/net/http/httpguts/httplex.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										13
									
								
								vendor/golang.org/x/net/http/httpguts/httplex.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -12,7 +12,7 @@ import ( | ||||||
| 	"golang.org/x/net/idna" | 	"golang.org/x/net/idna" | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| var isTokenTable = [127]bool{ | var isTokenTable = [256]bool{ | ||||||
| 	'!':  true, | 	'!':  true, | ||||||
| 	'#':  true, | 	'#':  true, | ||||||
| 	'$':  true, | 	'$':  true, | ||||||
|  | @ -93,12 +93,7 @@ var isTokenTable = [127]bool{ | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func IsTokenRune(r rune) bool { | func IsTokenRune(r rune) bool { | ||||||
| 	i := int(r) | 	return r < utf8.RuneSelf && isTokenTable[byte(r)] | ||||||
| 	return i < len(isTokenTable) && isTokenTable[i] |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func isNotToken(r rune) bool { |  | ||||||
| 	return !IsTokenRune(r) |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // HeaderValuesContainsToken reports whether any string in values | // HeaderValuesContainsToken reports whether any string in values | ||||||
|  | @ -202,8 +197,8 @@ func ValidHeaderFieldName(v string) bool { | ||||||
| 	if len(v) == 0 { | 	if len(v) == 0 { | ||||||
| 		return false | 		return false | ||||||
| 	} | 	} | ||||||
| 	for _, r := range v { | 	for i := 0; i < len(v); i++ { | ||||||
| 		if !IsTokenRune(r) { | 		if !isTokenTable[v[i]] { | ||||||
| 			return false | 			return false | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
							
								
								
									
										13
									
								
								vendor/golang.org/x/net/http2/frame.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										13
									
								
								vendor/golang.org/x/net/http2/frame.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -490,6 +490,9 @@ func terminalReadFrameError(err error) bool { | ||||||
| // returned error is ErrFrameTooLarge. Other errors may be of type | // returned error is ErrFrameTooLarge. Other errors may be of type | ||||||
| // ConnectionError, StreamError, or anything else from the underlying | // ConnectionError, StreamError, or anything else from the underlying | ||||||
| // reader. | // reader. | ||||||
|  | // | ||||||
|  | // If ReadFrame returns an error and a non-nil Frame, the Frame's StreamID | ||||||
|  | // indicates the stream responsible for the error. | ||||||
| func (fr *Framer) ReadFrame() (Frame, error) { | func (fr *Framer) ReadFrame() (Frame, error) { | ||||||
| 	fr.errDetail = nil | 	fr.errDetail = nil | ||||||
| 	if fr.lastFrame != nil { | 	if fr.lastFrame != nil { | ||||||
|  | @ -1521,7 +1524,7 @@ func (fr *Framer) maxHeaderStringLen() int { | ||||||
| // readMetaFrame returns 0 or more CONTINUATION frames from fr and | // readMetaFrame returns 0 or more CONTINUATION frames from fr and | ||||||
| // merge them into the provided hf and returns a MetaHeadersFrame | // merge them into the provided hf and returns a MetaHeadersFrame | ||||||
| // with the decoded hpack values. | // with the decoded hpack values. | ||||||
| func (fr *Framer) readMetaFrame(hf *HeadersFrame) (*MetaHeadersFrame, error) { | func (fr *Framer) readMetaFrame(hf *HeadersFrame) (Frame, error) { | ||||||
| 	if fr.AllowIllegalReads { | 	if fr.AllowIllegalReads { | ||||||
| 		return nil, errors.New("illegal use of AllowIllegalReads with ReadMetaHeaders") | 		return nil, errors.New("illegal use of AllowIllegalReads with ReadMetaHeaders") | ||||||
| 	} | 	} | ||||||
|  | @ -1592,7 +1595,7 @@ func (fr *Framer) readMetaFrame(hf *HeadersFrame) (*MetaHeadersFrame, error) { | ||||||
| 			} | 			} | ||||||
| 			// It would be nice to send a RST_STREAM before sending the GOAWAY, | 			// It would be nice to send a RST_STREAM before sending the GOAWAY, | ||||||
| 			// but the structure of the server's frame writer makes this difficult. | 			// but the structure of the server's frame writer makes this difficult. | ||||||
| 			return nil, ConnectionError(ErrCodeProtocol) | 			return mh, ConnectionError(ErrCodeProtocol) | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		// Also close the connection after any CONTINUATION frame following an | 		// Also close the connection after any CONTINUATION frame following an | ||||||
|  | @ -1604,11 +1607,11 @@ func (fr *Framer) readMetaFrame(hf *HeadersFrame) (*MetaHeadersFrame, error) { | ||||||
| 			} | 			} | ||||||
| 			// It would be nice to send a RST_STREAM before sending the GOAWAY, | 			// It would be nice to send a RST_STREAM before sending the GOAWAY, | ||||||
| 			// but the structure of the server's frame writer makes this difficult. | 			// but the structure of the server's frame writer makes this difficult. | ||||||
| 			return nil, ConnectionError(ErrCodeProtocol) | 			return mh, ConnectionError(ErrCodeProtocol) | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		if _, err := hdec.Write(frag); err != nil { | 		if _, err := hdec.Write(frag); err != nil { | ||||||
| 			return nil, ConnectionError(ErrCodeCompression) | 			return mh, ConnectionError(ErrCodeCompression) | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		if hc.HeadersEnded() { | 		if hc.HeadersEnded() { | ||||||
|  | @ -1625,7 +1628,7 @@ func (fr *Framer) readMetaFrame(hf *HeadersFrame) (*MetaHeadersFrame, error) { | ||||||
| 	mh.HeadersFrame.invalidate() | 	mh.HeadersFrame.invalidate() | ||||||
| 
 | 
 | ||||||
| 	if err := hdec.Close(); err != nil { | 	if err := hdec.Close(); err != nil { | ||||||
| 		return nil, ConnectionError(ErrCodeCompression) | 		return mh, ConnectionError(ErrCodeCompression) | ||||||
| 	} | 	} | ||||||
| 	if invalid != nil { | 	if invalid != nil { | ||||||
| 		fr.errDetail = invalid | 		fr.errDetail = invalid | ||||||
|  |  | ||||||
							
								
								
									
										11
									
								
								vendor/golang.org/x/net/http2/server.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										11
									
								
								vendor/golang.org/x/net/http2/server.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -732,11 +732,7 @@ func isClosedConnError(err error) bool { | ||||||
| 		return false | 		return false | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	// TODO: remove this string search and be more like the Windows | 	if errors.Is(err, net.ErrClosed) { | ||||||
| 	// case below. That might involve modifying the standard library |  | ||||||
| 	// to return better error types. |  | ||||||
| 	str := err.Error() |  | ||||||
| 	if strings.Contains(str, "use of closed network connection") { |  | ||||||
| 		return true | 		return true | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | @ -1482,6 +1478,11 @@ func (sc *serverConn) processFrameFromReader(res readFrameResult) bool { | ||||||
| 		sc.goAway(ErrCodeFlowControl) | 		sc.goAway(ErrCodeFlowControl) | ||||||
| 		return true | 		return true | ||||||
| 	case ConnectionError: | 	case ConnectionError: | ||||||
|  | 		if res.f != nil { | ||||||
|  | 			if id := res.f.Header().StreamID; id > sc.maxClientStreamID { | ||||||
|  | 				sc.maxClientStreamID = id | ||||||
|  | 			} | ||||||
|  | 		} | ||||||
| 		sc.logf("http2: server connection error from %v: %v", sc.conn.RemoteAddr(), ev) | 		sc.logf("http2: server connection error from %v: %v", sc.conn.RemoteAddr(), ev) | ||||||
| 		sc.goAway(ErrCode(ev)) | 		sc.goAway(ErrCode(ev)) | ||||||
| 		return true // goAway will handle shutdown | 		return true // goAway will handle shutdown | ||||||
|  |  | ||||||
							
								
								
									
										15
									
								
								vendor/golang.org/x/net/http2/transport.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										15
									
								
								vendor/golang.org/x/net/http2/transport.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -936,7 +936,20 @@ func (cc *ClientConn) setGoAway(f *GoAwayFrame) { | ||||||
| 	} | 	} | ||||||
| 	last := f.LastStreamID | 	last := f.LastStreamID | ||||||
| 	for streamID, cs := range cc.streams { | 	for streamID, cs := range cc.streams { | ||||||
| 		if streamID > last { | 		if streamID <= last { | ||||||
|  | 			// The server's GOAWAY indicates that it received this stream. | ||||||
|  | 			// It will either finish processing it, or close the connection | ||||||
|  | 			// without doing so. Either way, leave the stream alone for now. | ||||||
|  | 			continue | ||||||
|  | 		} | ||||||
|  | 		if streamID == 1 && cc.goAway.ErrCode != ErrCodeNo { | ||||||
|  | 			// Don't retry the first stream on a connection if we get a non-NO error. | ||||||
|  | 			// If the server is sending an error on a new connection, | ||||||
|  | 			// retrying the request on a new one probably isn't going to work. | ||||||
|  | 			cs.abortStreamLocked(fmt.Errorf("http2: Transport received GOAWAY from server ErrCode:%v", cc.goAway.ErrCode)) | ||||||
|  | 		} else { | ||||||
|  | 			// Aborting the stream with errClentConnGotGoAway indicates that | ||||||
|  | 			// the request should be retried on a new connection. | ||||||
| 			cs.abortStreamLocked(errClientConnGotGoAway) | 			cs.abortStreamLocked(errClientConnGotGoAway) | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
							
								
								
									
										1
									
								
								vendor/golang.org/x/sys/cpu/cpu.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								vendor/golang.org/x/sys/cpu/cpu.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -103,6 +103,7 @@ var ARM64 struct { | ||||||
| 	HasASIMDDP  bool // Advanced SIMD double precision instruction set | 	HasASIMDDP  bool // Advanced SIMD double precision instruction set | ||||||
| 	HasSHA512   bool // SHA512 hardware implementation | 	HasSHA512   bool // SHA512 hardware implementation | ||||||
| 	HasSVE      bool // Scalable Vector Extensions | 	HasSVE      bool // Scalable Vector Extensions | ||||||
|  | 	HasSVE2     bool // Scalable Vector Extensions 2 | ||||||
| 	HasASIMDFHM bool // Advanced SIMD multiplication FP16 to FP32 | 	HasASIMDFHM bool // Advanced SIMD multiplication FP16 to FP32 | ||||||
| 	_           CacheLinePad | 	_           CacheLinePad | ||||||
| } | } | ||||||
|  |  | ||||||
							
								
								
									
										10
									
								
								vendor/golang.org/x/sys/cpu/cpu_arm64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										10
									
								
								vendor/golang.org/x/sys/cpu/cpu_arm64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -28,6 +28,7 @@ func initOptions() { | ||||||
| 		{Name: "sm3", Feature: &ARM64.HasSM3}, | 		{Name: "sm3", Feature: &ARM64.HasSM3}, | ||||||
| 		{Name: "sm4", Feature: &ARM64.HasSM4}, | 		{Name: "sm4", Feature: &ARM64.HasSM4}, | ||||||
| 		{Name: "sve", Feature: &ARM64.HasSVE}, | 		{Name: "sve", Feature: &ARM64.HasSVE}, | ||||||
|  | 		{Name: "sve2", Feature: &ARM64.HasSVE2}, | ||||||
| 		{Name: "crc32", Feature: &ARM64.HasCRC32}, | 		{Name: "crc32", Feature: &ARM64.HasCRC32}, | ||||||
| 		{Name: "atomics", Feature: &ARM64.HasATOMICS}, | 		{Name: "atomics", Feature: &ARM64.HasATOMICS}, | ||||||
| 		{Name: "asimdhp", Feature: &ARM64.HasASIMDHP}, | 		{Name: "asimdhp", Feature: &ARM64.HasASIMDHP}, | ||||||
|  | @ -164,6 +165,15 @@ func parseARM64SystemRegisters(isar0, isar1, pfr0 uint64) { | ||||||
| 	switch extractBits(pfr0, 32, 35) { | 	switch extractBits(pfr0, 32, 35) { | ||||||
| 	case 1: | 	case 1: | ||||||
| 		ARM64.HasSVE = true | 		ARM64.HasSVE = true | ||||||
|  | 
 | ||||||
|  | 		parseARM64SVERegister(getzfr0()) | ||||||
|  | 	} | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func parseARM64SVERegister(zfr0 uint64) { | ||||||
|  | 	switch extractBits(zfr0, 0, 3) { | ||||||
|  | 	case 1: | ||||||
|  | 		ARM64.HasSVE2 = true | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
							
								
								
									
										8
									
								
								vendor/golang.org/x/sys/cpu/cpu_arm64.s
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										8
									
								
								vendor/golang.org/x/sys/cpu/cpu_arm64.s
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -29,3 +29,11 @@ TEXT ·getpfr0(SB),NOSPLIT,$0-8 | ||||||
| 	WORD	$0xd5380400 | 	WORD	$0xd5380400 | ||||||
| 	MOVD	R0, ret+0(FP) | 	MOVD	R0, ret+0(FP) | ||||||
| 	RET | 	RET | ||||||
|  | 
 | ||||||
|  | // func getzfr0() uint64 | ||||||
|  | TEXT ·getzfr0(SB),NOSPLIT,$0-8 | ||||||
|  | 	// get SVE Feature Register 0 into x0 | ||||||
|  | 	// mrs	x0, ID_AA64ZFR0_EL1 = d5380480 | ||||||
|  | 	WORD $0xd5380480 | ||||||
|  | 	MOVD	R0, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  |  | ||||||
							
								
								
									
										1
									
								
								vendor/golang.org/x/sys/cpu/cpu_gc_arm64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								vendor/golang.org/x/sys/cpu/cpu_gc_arm64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -9,3 +9,4 @@ package cpu | ||||||
| func getisar0() uint64 | func getisar0() uint64 | ||||||
| func getisar1() uint64 | func getisar1() uint64 | ||||||
| func getpfr0() uint64 | func getpfr0() uint64 | ||||||
|  | func getzfr0() uint64 | ||||||
|  |  | ||||||
							
								
								
									
										5
									
								
								vendor/golang.org/x/sys/cpu/cpu_linux_arm64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/golang.org/x/sys/cpu/cpu_linux_arm64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -35,6 +35,8 @@ const ( | ||||||
| 	hwcap_SHA512   = 1 << 21 | 	hwcap_SHA512   = 1 << 21 | ||||||
| 	hwcap_SVE      = 1 << 22 | 	hwcap_SVE      = 1 << 22 | ||||||
| 	hwcap_ASIMDFHM = 1 << 23 | 	hwcap_ASIMDFHM = 1 << 23 | ||||||
|  | 
 | ||||||
|  | 	hwcap2_SVE2 = 1 << 1 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| // linuxKernelCanEmulateCPUID reports whether we're running | // linuxKernelCanEmulateCPUID reports whether we're running | ||||||
|  | @ -104,6 +106,9 @@ func doinit() { | ||||||
| 	ARM64.HasSHA512 = isSet(hwCap, hwcap_SHA512) | 	ARM64.HasSHA512 = isSet(hwCap, hwcap_SHA512) | ||||||
| 	ARM64.HasSVE = isSet(hwCap, hwcap_SVE) | 	ARM64.HasSVE = isSet(hwCap, hwcap_SVE) | ||||||
| 	ARM64.HasASIMDFHM = isSet(hwCap, hwcap_ASIMDFHM) | 	ARM64.HasASIMDFHM = isSet(hwCap, hwcap_ASIMDFHM) | ||||||
|  | 
 | ||||||
|  | 	// HWCAP2 feature bits | ||||||
|  | 	ARM64.HasSVE2 = isSet(hwCap2, hwcap2_SVE2) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func isSet(hwc uint, value uint) bool { | func isSet(hwc uint, value uint) bool { | ||||||
|  |  | ||||||
							
								
								
									
										675
									
								
								vendor/golang.org/x/sys/unix/asm_zos_s390x.s
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										675
									
								
								vendor/golang.org/x/sys/unix/asm_zos_s390x.s
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -9,9 +9,11 @@ | ||||||
| #define PSALAA            1208(R0) | #define PSALAA            1208(R0) | ||||||
| #define GTAB64(x)           80(x) | #define GTAB64(x)           80(x) | ||||||
| #define LCA64(x)            88(x) | #define LCA64(x)            88(x) | ||||||
|  | #define SAVSTACK_ASYNC(x)  336(x) // in the LCA | ||||||
| #define CAA(x)               8(x) | #define CAA(x)               8(x) | ||||||
| #define EDCHPXV(x)        1016(x)       // in the CAA | #define CEECAATHDID(x)     976(x) // in the CAA | ||||||
| #define SAVSTACK_ASYNC(x)  336(x)       // in the LCA | #define EDCHPXV(x)        1016(x) // in the CAA | ||||||
|  | #define GOCB(x)           1104(x) // in the CAA | ||||||
| 
 | 
 | ||||||
| // SS_*, where x=SAVSTACK_ASYNC | // SS_*, where x=SAVSTACK_ASYNC | ||||||
| #define SS_LE(x)             0(x) | #define SS_LE(x)             0(x) | ||||||
|  | @ -19,394 +21,125 @@ | ||||||
| #define SS_ERRNO(x)         16(x) | #define SS_ERRNO(x)         16(x) | ||||||
| #define SS_ERRNOJR(x)       20(x) | #define SS_ERRNOJR(x)       20(x) | ||||||
| 
 | 
 | ||||||
| #define LE_CALL BYTE $0x0D; BYTE $0x76; // BL R7, R6
 | // Function Descriptor Offsets | ||||||
|  | #define __errno  0x156*16 | ||||||
|  | #define __err2ad 0x16C*16 | ||||||
| 
 | 
 | ||||||
| TEXT ·clearErrno(SB),NOSPLIT,$0-0 | // Call Instructions | ||||||
| 	BL	addrerrno<>(SB) | #define LE_CALL    BYTE $0x0D; BYTE $0x76 // BL R7, R6
 | ||||||
| 	MOVD	$0, 0(R3) | #define SVC_LOAD   BYTE $0x0A; BYTE $0x08 // SVC 08 LOAD
 | ||||||
|  | #define SVC_DELETE BYTE $0x0A; BYTE $0x09 // SVC 09 DELETE
 | ||||||
|  | 
 | ||||||
|  | DATA zosLibVec<>(SB)/8, $0 | ||||||
|  | GLOBL zosLibVec<>(SB), NOPTR, $8 | ||||||
|  | 
 | ||||||
|  | TEXT ·initZosLibVec(SB), NOSPLIT|NOFRAME, $0-0 | ||||||
|  | 	MOVW PSALAA, R8 | ||||||
|  | 	MOVD LCA64(R8), R8 | ||||||
|  | 	MOVD CAA(R8), R8 | ||||||
|  | 	MOVD EDCHPXV(R8), R8 | ||||||
|  | 	MOVD R8, zosLibVec<>(SB) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | TEXT ·GetZosLibVec(SB), NOSPLIT|NOFRAME, $0-0 | ||||||
|  | 	MOVD zosLibVec<>(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | TEXT ·clearErrno(SB), NOSPLIT, $0-0 | ||||||
|  | 	BL   addrerrno<>(SB) | ||||||
|  | 	MOVD $0, 0(R3) | ||||||
| 	RET | 	RET | ||||||
| 
 | 
 | ||||||
| // Returns the address of errno in R3. | // Returns the address of errno in R3. | ||||||
| TEXT addrerrno<>(SB),NOSPLIT|NOFRAME,$0-0 | TEXT addrerrno<>(SB), NOSPLIT|NOFRAME, $0-0 | ||||||
| 	// Get library control area (LCA). | 	// Get library control area (LCA). | ||||||
| 	MOVW	PSALAA, R8 | 	MOVW PSALAA, R8 | ||||||
| 	MOVD	LCA64(R8), R8 | 	MOVD LCA64(R8), R8 | ||||||
| 
 | 
 | ||||||
| 	// Get __errno FuncDesc. | 	// Get __errno FuncDesc. | ||||||
| 	MOVD	CAA(R8), R9 | 	MOVD CAA(R8), R9 | ||||||
| 	MOVD	EDCHPXV(R9), R9 | 	MOVD EDCHPXV(R9), R9 | ||||||
| 	ADD	$(0x156*16), R9 | 	ADD  $(__errno), R9 | ||||||
| 	LMG	0(R9), R5, R6 | 	LMG  0(R9), R5, R6 | ||||||
| 
 | 
 | ||||||
| 	// Switch to saved LE stack. | 	// Switch to saved LE stack. | ||||||
| 	MOVD	SAVSTACK_ASYNC(R8), R9 | 	MOVD SAVSTACK_ASYNC(R8), R9 | ||||||
| 	MOVD	0(R9), R4 | 	MOVD 0(R9), R4 | ||||||
| 	MOVD	$0, 0(R9) | 	MOVD $0, 0(R9) | ||||||
| 
 | 
 | ||||||
| 	// Call __errno function. | 	// Call __errno function. | ||||||
| 	LE_CALL | 	LE_CALL | ||||||
| 	NOPH | 	NOPH | ||||||
| 
 | 
 | ||||||
| 	// Switch back to Go stack. | 	// Switch back to Go stack. | ||||||
| 	XOR	R0, R0      // Restore R0 to $0. | 	XOR  R0, R0    // Restore R0 to $0. | ||||||
| 	MOVD	R4, 0(R9)   // Save stack pointer. | 	MOVD R4, 0(R9) // Save stack pointer. | ||||||
| 	RET |  | ||||||
| 
 |  | ||||||
| TEXT ·syscall_syscall(SB),NOSPLIT,$0-56 |  | ||||||
| 	BL	runtime·entersyscall(SB) |  | ||||||
| 	MOVD	a1+8(FP), R1 |  | ||||||
| 	MOVD	a2+16(FP), R2 |  | ||||||
| 	MOVD	a3+24(FP), R3 |  | ||||||
| 
 |  | ||||||
| 	// Get library control area (LCA). |  | ||||||
| 	MOVW	PSALAA, R8 |  | ||||||
| 	MOVD	LCA64(R8), R8 |  | ||||||
| 
 |  | ||||||
| 	// Get function. |  | ||||||
| 	MOVD	CAA(R8), R9 |  | ||||||
| 	MOVD	EDCHPXV(R9), R9 |  | ||||||
| 	MOVD	trap+0(FP), R5 |  | ||||||
| 	SLD	$4, R5 |  | ||||||
| 	ADD	R5, R9 |  | ||||||
| 	LMG	0(R9), R5, R6 |  | ||||||
| 
 |  | ||||||
| 	// Restore LE stack. |  | ||||||
| 	MOVD	SAVSTACK_ASYNC(R8), R9 |  | ||||||
| 	MOVD	0(R9), R4 |  | ||||||
| 	MOVD	$0, 0(R9) |  | ||||||
| 
 |  | ||||||
| 	// Call function. |  | ||||||
| 	LE_CALL |  | ||||||
| 	NOPH |  | ||||||
| 	XOR	R0, R0      // Restore R0 to $0. |  | ||||||
| 	MOVD	R4, 0(R9)   // Save stack pointer. |  | ||||||
| 
 |  | ||||||
| 	MOVD	R3, r1+32(FP) |  | ||||||
| 	MOVD	R0, r2+40(FP) |  | ||||||
| 	MOVD	R0, err+48(FP) |  | ||||||
| 	MOVW	R3, R4 |  | ||||||
| 	CMP	R4, $-1 |  | ||||||
| 	BNE	done |  | ||||||
| 	BL	addrerrno<>(SB) |  | ||||||
| 	MOVWZ	0(R3), R3 |  | ||||||
| 	MOVD	R3, err+48(FP) |  | ||||||
| done: |  | ||||||
| 	BL	runtime·exitsyscall(SB) |  | ||||||
| 	RET |  | ||||||
| 
 |  | ||||||
| TEXT ·syscall_rawsyscall(SB),NOSPLIT,$0-56 |  | ||||||
| 	MOVD	a1+8(FP), R1 |  | ||||||
| 	MOVD	a2+16(FP), R2 |  | ||||||
| 	MOVD	a3+24(FP), R3 |  | ||||||
| 
 |  | ||||||
| 	// Get library control area (LCA). |  | ||||||
| 	MOVW	PSALAA, R8 |  | ||||||
| 	MOVD	LCA64(R8), R8 |  | ||||||
| 
 |  | ||||||
| 	// Get function. |  | ||||||
| 	MOVD	CAA(R8), R9 |  | ||||||
| 	MOVD	EDCHPXV(R9), R9 |  | ||||||
| 	MOVD	trap+0(FP), R5 |  | ||||||
| 	SLD	$4, R5 |  | ||||||
| 	ADD	R5, R9 |  | ||||||
| 	LMG	0(R9), R5, R6 |  | ||||||
| 
 |  | ||||||
| 	// Restore LE stack. |  | ||||||
| 	MOVD	SAVSTACK_ASYNC(R8), R9 |  | ||||||
| 	MOVD	0(R9), R4 |  | ||||||
| 	MOVD	$0, 0(R9) |  | ||||||
| 
 |  | ||||||
| 	// Call function. |  | ||||||
| 	LE_CALL |  | ||||||
| 	NOPH |  | ||||||
| 	XOR	R0, R0      // Restore R0 to $0. |  | ||||||
| 	MOVD	R4, 0(R9)   // Save stack pointer. |  | ||||||
| 
 |  | ||||||
| 	MOVD	R3, r1+32(FP) |  | ||||||
| 	MOVD	R0, r2+40(FP) |  | ||||||
| 	MOVD	R0, err+48(FP) |  | ||||||
| 	MOVW	R3, R4 |  | ||||||
| 	CMP	R4, $-1 |  | ||||||
| 	BNE	done |  | ||||||
| 	BL	addrerrno<>(SB) |  | ||||||
| 	MOVWZ	0(R3), R3 |  | ||||||
| 	MOVD	R3, err+48(FP) |  | ||||||
| done: |  | ||||||
| 	RET |  | ||||||
| 
 |  | ||||||
| TEXT ·syscall_syscall6(SB),NOSPLIT,$0-80 |  | ||||||
| 	BL	runtime·entersyscall(SB) |  | ||||||
| 	MOVD	a1+8(FP), R1 |  | ||||||
| 	MOVD	a2+16(FP), R2 |  | ||||||
| 	MOVD	a3+24(FP), R3 |  | ||||||
| 
 |  | ||||||
| 	// Get library control area (LCA). |  | ||||||
| 	MOVW	PSALAA, R8 |  | ||||||
| 	MOVD	LCA64(R8), R8 |  | ||||||
| 
 |  | ||||||
| 	// Get function. |  | ||||||
| 	MOVD	CAA(R8), R9 |  | ||||||
| 	MOVD	EDCHPXV(R9), R9 |  | ||||||
| 	MOVD	trap+0(FP), R5 |  | ||||||
| 	SLD	$4, R5 |  | ||||||
| 	ADD	R5, R9 |  | ||||||
| 	LMG	0(R9), R5, R6 |  | ||||||
| 
 |  | ||||||
| 	// Restore LE stack. |  | ||||||
| 	MOVD	SAVSTACK_ASYNC(R8), R9 |  | ||||||
| 	MOVD	0(R9), R4 |  | ||||||
| 	MOVD	$0, 0(R9) |  | ||||||
| 
 |  | ||||||
| 	// Fill in parameter list. |  | ||||||
| 	MOVD	a4+32(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+24)(R4) |  | ||||||
| 	MOVD	a5+40(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+32)(R4) |  | ||||||
| 	MOVD	a6+48(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+40)(R4) |  | ||||||
| 
 |  | ||||||
| 	// Call function. |  | ||||||
| 	LE_CALL |  | ||||||
| 	NOPH |  | ||||||
| 	XOR	R0, R0      // Restore R0 to $0. |  | ||||||
| 	MOVD	R4, 0(R9)   // Save stack pointer. |  | ||||||
| 
 |  | ||||||
| 	MOVD	R3, r1+56(FP) |  | ||||||
| 	MOVD	R0, r2+64(FP) |  | ||||||
| 	MOVD	R0, err+72(FP) |  | ||||||
| 	MOVW	R3, R4 |  | ||||||
| 	CMP	R4, $-1 |  | ||||||
| 	BNE	done |  | ||||||
| 	BL	addrerrno<>(SB) |  | ||||||
| 	MOVWZ	0(R3), R3 |  | ||||||
| 	MOVD	R3, err+72(FP) |  | ||||||
| done: |  | ||||||
| 	BL	runtime·exitsyscall(SB) |  | ||||||
| 	RET |  | ||||||
| 
 |  | ||||||
| TEXT ·syscall_rawsyscall6(SB),NOSPLIT,$0-80 |  | ||||||
| 	MOVD	a1+8(FP), R1 |  | ||||||
| 	MOVD	a2+16(FP), R2 |  | ||||||
| 	MOVD	a3+24(FP), R3 |  | ||||||
| 
 |  | ||||||
| 	// Get library control area (LCA). |  | ||||||
| 	MOVW	PSALAA, R8 |  | ||||||
| 	MOVD	LCA64(R8), R8 |  | ||||||
| 
 |  | ||||||
| 	// Get function. |  | ||||||
| 	MOVD	CAA(R8), R9 |  | ||||||
| 	MOVD	EDCHPXV(R9), R9 |  | ||||||
| 	MOVD	trap+0(FP), R5 |  | ||||||
| 	SLD	$4, R5 |  | ||||||
| 	ADD	R5, R9 |  | ||||||
| 	LMG	0(R9), R5, R6 |  | ||||||
| 
 |  | ||||||
| 	// Restore LE stack. |  | ||||||
| 	MOVD	SAVSTACK_ASYNC(R8), R9 |  | ||||||
| 	MOVD	0(R9), R4 |  | ||||||
| 	MOVD	$0, 0(R9) |  | ||||||
| 
 |  | ||||||
| 	// Fill in parameter list. |  | ||||||
| 	MOVD	a4+32(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+24)(R4) |  | ||||||
| 	MOVD	a5+40(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+32)(R4) |  | ||||||
| 	MOVD	a6+48(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+40)(R4) |  | ||||||
| 
 |  | ||||||
| 	// Call function. |  | ||||||
| 	LE_CALL |  | ||||||
| 	NOPH |  | ||||||
| 	XOR	R0, R0      // Restore R0 to $0. |  | ||||||
| 	MOVD	R4, 0(R9)   // Save stack pointer. |  | ||||||
| 
 |  | ||||||
| 	MOVD	R3, r1+56(FP) |  | ||||||
| 	MOVD	R0, r2+64(FP) |  | ||||||
| 	MOVD	R0, err+72(FP) |  | ||||||
| 	MOVW	R3, R4 |  | ||||||
| 	CMP	R4, $-1 |  | ||||||
| 	BNE	done |  | ||||||
| 	BL	·rrno<>(SB) |  | ||||||
| 	MOVWZ	0(R3), R3 |  | ||||||
| 	MOVD	R3, err+72(FP) |  | ||||||
| done: |  | ||||||
| 	RET |  | ||||||
| 
 |  | ||||||
| TEXT ·syscall_syscall9(SB),NOSPLIT,$0 |  | ||||||
| 	BL	runtime·entersyscall(SB) |  | ||||||
| 	MOVD	a1+8(FP), R1 |  | ||||||
| 	MOVD	a2+16(FP), R2 |  | ||||||
| 	MOVD	a3+24(FP), R3 |  | ||||||
| 
 |  | ||||||
| 	// Get library control area (LCA). |  | ||||||
| 	MOVW	PSALAA, R8 |  | ||||||
| 	MOVD	LCA64(R8), R8 |  | ||||||
| 
 |  | ||||||
| 	// Get function. |  | ||||||
| 	MOVD	CAA(R8), R9 |  | ||||||
| 	MOVD	EDCHPXV(R9), R9 |  | ||||||
| 	MOVD	trap+0(FP), R5 |  | ||||||
| 	SLD	$4, R5 |  | ||||||
| 	ADD	R5, R9 |  | ||||||
| 	LMG	0(R9), R5, R6 |  | ||||||
| 
 |  | ||||||
| 	// Restore LE stack. |  | ||||||
| 	MOVD	SAVSTACK_ASYNC(R8), R9 |  | ||||||
| 	MOVD	0(R9), R4 |  | ||||||
| 	MOVD	$0, 0(R9) |  | ||||||
| 
 |  | ||||||
| 	// Fill in parameter list. |  | ||||||
| 	MOVD	a4+32(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+24)(R4) |  | ||||||
| 	MOVD	a5+40(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+32)(R4) |  | ||||||
| 	MOVD	a6+48(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+40)(R4) |  | ||||||
| 	MOVD	a7+56(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+48)(R4) |  | ||||||
| 	MOVD	a8+64(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+56)(R4) |  | ||||||
| 	MOVD	a9+72(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+64)(R4) |  | ||||||
| 
 |  | ||||||
| 	// Call function. |  | ||||||
| 	LE_CALL |  | ||||||
| 	NOPH |  | ||||||
| 	XOR	R0, R0      // Restore R0 to $0. |  | ||||||
| 	MOVD	R4, 0(R9)   // Save stack pointer. |  | ||||||
| 
 |  | ||||||
| 	MOVD	R3, r1+80(FP) |  | ||||||
| 	MOVD	R0, r2+88(FP) |  | ||||||
| 	MOVD	R0, err+96(FP) |  | ||||||
| 	MOVW	R3, R4 |  | ||||||
| 	CMP	R4, $-1 |  | ||||||
| 	BNE	done |  | ||||||
| 	BL	addrerrno<>(SB) |  | ||||||
| 	MOVWZ	0(R3), R3 |  | ||||||
| 	MOVD	R3, err+96(FP) |  | ||||||
| done: |  | ||||||
|         BL	runtime·exitsyscall(SB) |  | ||||||
|         RET |  | ||||||
| 
 |  | ||||||
| TEXT ·syscall_rawsyscall9(SB),NOSPLIT,$0 |  | ||||||
| 	MOVD	a1+8(FP), R1 |  | ||||||
| 	MOVD	a2+16(FP), R2 |  | ||||||
| 	MOVD	a3+24(FP), R3 |  | ||||||
| 
 |  | ||||||
| 	// Get library control area (LCA). |  | ||||||
| 	MOVW	PSALAA, R8 |  | ||||||
| 	MOVD	LCA64(R8), R8 |  | ||||||
| 
 |  | ||||||
| 	// Get function. |  | ||||||
| 	MOVD	CAA(R8), R9 |  | ||||||
| 	MOVD	EDCHPXV(R9), R9 |  | ||||||
| 	MOVD	trap+0(FP), R5 |  | ||||||
| 	SLD	$4, R5 |  | ||||||
| 	ADD	R5, R9 |  | ||||||
| 	LMG	0(R9), R5, R6 |  | ||||||
| 
 |  | ||||||
| 	// Restore LE stack. |  | ||||||
| 	MOVD	SAVSTACK_ASYNC(R8), R9 |  | ||||||
| 	MOVD	0(R9), R4 |  | ||||||
| 	MOVD	$0, 0(R9) |  | ||||||
| 
 |  | ||||||
| 	// Fill in parameter list. |  | ||||||
| 	MOVD	a4+32(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+24)(R4) |  | ||||||
| 	MOVD	a5+40(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+32)(R4) |  | ||||||
| 	MOVD	a6+48(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+40)(R4) |  | ||||||
| 	MOVD	a7+56(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+48)(R4) |  | ||||||
| 	MOVD	a8+64(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+56)(R4) |  | ||||||
| 	MOVD	a9+72(FP), R12 |  | ||||||
| 	MOVD	R12, (2176+64)(R4) |  | ||||||
| 
 |  | ||||||
| 	// Call function. |  | ||||||
| 	LE_CALL |  | ||||||
| 	NOPH |  | ||||||
| 	XOR	R0, R0      // Restore R0 to $0. |  | ||||||
| 	MOVD	R4, 0(R9)   // Save stack pointer. |  | ||||||
| 
 |  | ||||||
| 	MOVD	R3, r1+80(FP) |  | ||||||
| 	MOVD	R0, r2+88(FP) |  | ||||||
| 	MOVD	R0, err+96(FP) |  | ||||||
| 	MOVW	R3, R4 |  | ||||||
| 	CMP	R4, $-1 |  | ||||||
| 	BNE	done |  | ||||||
| 	BL	addrerrno<>(SB) |  | ||||||
| 	MOVWZ	0(R3), R3 |  | ||||||
| 	MOVD	R3, err+96(FP) |  | ||||||
| done: |  | ||||||
| 	RET | 	RET | ||||||
| 
 | 
 | ||||||
| // func svcCall(fnptr unsafe.Pointer, argv *unsafe.Pointer, dsa *uint64) | // func svcCall(fnptr unsafe.Pointer, argv *unsafe.Pointer, dsa *uint64) | ||||||
| TEXT ·svcCall(SB),NOSPLIT,$0 | TEXT ·svcCall(SB), NOSPLIT, $0 | ||||||
| 	BL	runtime·save_g(SB)   // Save g and stack pointer | 	BL   runtime·save_g(SB)     // Save g and stack pointer | ||||||
| 	MOVW	PSALAA, R8 | 	MOVW PSALAA, R8 | ||||||
| 	MOVD	LCA64(R8), R8 | 	MOVD LCA64(R8), R8 | ||||||
| 	MOVD	SAVSTACK_ASYNC(R8), R9 | 	MOVD SAVSTACK_ASYNC(R8), R9 | ||||||
| 	MOVD	R15, 0(R9) | 	MOVD R15, 0(R9) | ||||||
| 
 | 
 | ||||||
| 	MOVD	argv+8(FP), R1       // Move function arguments into registers | 	MOVD argv+8(FP), R1   // Move function arguments into registers | ||||||
| 	MOVD	dsa+16(FP), g | 	MOVD dsa+16(FP), g | ||||||
| 	MOVD	fnptr+0(FP), R15 | 	MOVD fnptr+0(FP), R15 | ||||||
| 
 | 
 | ||||||
| 	BYTE	$0x0D                // Branch to function | 	BYTE $0x0D // Branch to function | ||||||
| 	BYTE	$0xEF | 	BYTE $0xEF | ||||||
| 
 | 
 | ||||||
| 	BL	runtime·load_g(SB)   // Restore g and stack pointer | 	BL   runtime·load_g(SB)     // Restore g and stack pointer | ||||||
| 	MOVW	PSALAA, R8 | 	MOVW PSALAA, R8 | ||||||
| 	MOVD	LCA64(R8), R8 | 	MOVD LCA64(R8), R8 | ||||||
| 	MOVD	SAVSTACK_ASYNC(R8), R9 | 	MOVD SAVSTACK_ASYNC(R8), R9 | ||||||
| 	MOVD	0(R9), R15 | 	MOVD 0(R9), R15 | ||||||
| 
 | 
 | ||||||
| 	RET | 	RET | ||||||
| 
 | 
 | ||||||
| // func svcLoad(name *byte) unsafe.Pointer | // func svcLoad(name *byte) unsafe.Pointer | ||||||
| TEXT ·svcLoad(SB),NOSPLIT,$0 | TEXT ·svcLoad(SB), NOSPLIT, $0 | ||||||
| 	MOVD	R15, R2          // Save go stack pointer | 	MOVD R15, R2         // Save go stack pointer | ||||||
| 	MOVD	name+0(FP), R0   // Move SVC args into registers | 	MOVD name+0(FP), R0  // Move SVC args into registers | ||||||
| 	MOVD	$0x80000000, R1 | 	MOVD $0x80000000, R1 | ||||||
| 	MOVD	$0, R15 | 	MOVD $0, R15 | ||||||
| 	BYTE	$0x0A            // SVC 08 LOAD | 	SVC_LOAD | ||||||
| 	BYTE	$0x08 | 	MOVW R15, R3         // Save return code from SVC | ||||||
| 	MOVW	R15, R3          // Save return code from SVC | 	MOVD R2, R15         // Restore go stack pointer | ||||||
| 	MOVD	R2, R15          // Restore go stack pointer | 	CMP  R3, $0          // Check SVC return code | ||||||
| 	CMP	R3, $0           // Check SVC return code | 	BNE  error | ||||||
| 	BNE	error |  | ||||||
| 
 | 
 | ||||||
| 	MOVD	$-2, R3          // Reset last bit of entry point to zero | 	MOVD $-2, R3       // Reset last bit of entry point to zero | ||||||
| 	AND	R0, R3 | 	AND  R0, R3 | ||||||
| 	MOVD	R3, addr+8(FP)   // Return entry point returned by SVC | 	MOVD R3, ret+8(FP) // Return entry point returned by SVC | ||||||
| 	CMP	R0, R3           // Check if last bit of entry point was set | 	CMP  R0, R3        // Check if last bit of entry point was set | ||||||
| 	BNE	done | 	BNE  done | ||||||
| 
 | 
 | ||||||
| 	MOVD	R15, R2          // Save go stack pointer | 	MOVD R15, R2 // Save go stack pointer | ||||||
| 	MOVD	$0, R15          // Move SVC args into registers (entry point still in r0 from SVC 08) | 	MOVD $0, R15 // Move SVC args into registers (entry point still in r0 from SVC 08) | ||||||
| 	BYTE	$0x0A            // SVC 09 DELETE | 	SVC_DELETE | ||||||
| 	BYTE	$0x09 | 	MOVD R2, R15 // Restore go stack pointer | ||||||
| 	MOVD	R2, R15          // Restore go stack pointer |  | ||||||
| 
 | 
 | ||||||
| error: | error: | ||||||
| 	MOVD	$0, addr+8(FP)   // Return 0 on failure | 	MOVD $0, ret+8(FP) // Return 0 on failure | ||||||
|  | 
 | ||||||
| done: | done: | ||||||
| 	XOR	R0, R0           // Reset r0 to 0 | 	XOR R0, R0 // Reset r0 to 0 | ||||||
| 	RET | 	RET | ||||||
| 
 | 
 | ||||||
| // func svcUnload(name *byte, fnptr unsafe.Pointer) int64 | // func svcUnload(name *byte, fnptr unsafe.Pointer) int64 | ||||||
| TEXT ·svcUnload(SB),NOSPLIT,$0 | TEXT ·svcUnload(SB), NOSPLIT, $0 | ||||||
| 	MOVD	R15, R2          // Save go stack pointer | 	MOVD R15, R2          // Save go stack pointer | ||||||
| 	MOVD	name+0(FP), R0   // Move SVC args into registers | 	MOVD name+0(FP), R0   // Move SVC args into registers | ||||||
| 	MOVD	addr+8(FP), R15 | 	MOVD fnptr+8(FP), R15 | ||||||
| 	BYTE	$0x0A            // SVC 09 | 	SVC_DELETE | ||||||
| 	BYTE	$0x09 | 	XOR  R0, R0           // Reset r0 to 0 | ||||||
| 	XOR	R0, R0           // Reset r0 to 0 | 	MOVD R15, R1          // Save SVC return code | ||||||
| 	MOVD	R15, R1          // Save SVC return code | 	MOVD R2, R15          // Restore go stack pointer | ||||||
| 	MOVD	R2, R15          // Restore go stack pointer | 	MOVD R1, ret+16(FP)   // Return SVC return code | ||||||
| 	MOVD	R1, rc+0(FP)     // Return SVC return code |  | ||||||
| 	RET | 	RET | ||||||
| 
 | 
 | ||||||
| // func gettid() uint64 | // func gettid() uint64 | ||||||
|  | @ -417,7 +150,233 @@ TEXT ·gettid(SB), NOSPLIT, $0 | ||||||
| 
 | 
 | ||||||
| 	// Get CEECAATHDID | 	// Get CEECAATHDID | ||||||
| 	MOVD CAA(R8), R9 | 	MOVD CAA(R8), R9 | ||||||
| 	MOVD 0x3D0(R9), R9 | 	MOVD CEECAATHDID(R9), R9 | ||||||
| 	MOVD R9, ret+0(FP) | 	MOVD R9, ret+0(FP) | ||||||
| 
 | 
 | ||||||
| 	RET | 	RET | ||||||
|  | 
 | ||||||
|  | // | ||||||
|  | // Call LE function, if the return is -1 | ||||||
|  | // errno and errno2 is retrieved | ||||||
|  | // | ||||||
|  | TEXT ·CallLeFuncWithErr(SB), NOSPLIT, $0 | ||||||
|  | 	MOVW PSALAA, R8 | ||||||
|  | 	MOVD LCA64(R8), R8 | ||||||
|  | 	MOVD CAA(R8), R9 | ||||||
|  | 	MOVD g, GOCB(R9) | ||||||
|  | 
 | ||||||
|  | 	// Restore LE stack. | ||||||
|  | 	MOVD SAVSTACK_ASYNC(R8), R9 // R9-> LE stack frame saving address | ||||||
|  | 	MOVD 0(R9), R4              // R4-> restore previously saved stack frame pointer | ||||||
|  | 
 | ||||||
|  | 	MOVD parms_base+8(FP), R7 // R7 -> argument array | ||||||
|  | 	MOVD parms_len+16(FP), R8 // R8 number of arguments | ||||||
|  | 
 | ||||||
|  | 	//  arg 1 ---> R1 | ||||||
|  | 	CMP  R8, $0 | ||||||
|  | 	BEQ  docall | ||||||
|  | 	SUB  $1, R8 | ||||||
|  | 	MOVD 0(R7), R1 | ||||||
|  | 
 | ||||||
|  | 	//  arg 2 ---> R2 | ||||||
|  | 	CMP  R8, $0 | ||||||
|  | 	BEQ  docall | ||||||
|  | 	SUB  $1, R8 | ||||||
|  | 	ADD  $8, R7 | ||||||
|  | 	MOVD 0(R7), R2 | ||||||
|  | 
 | ||||||
|  | 	//  arg 3 --> R3 | ||||||
|  | 	CMP  R8, $0 | ||||||
|  | 	BEQ  docall | ||||||
|  | 	SUB  $1, R8 | ||||||
|  | 	ADD  $8, R7 | ||||||
|  | 	MOVD 0(R7), R3 | ||||||
|  | 
 | ||||||
|  | 	CMP  R8, $0 | ||||||
|  | 	BEQ  docall | ||||||
|  | 	MOVD $2176+16, R6 // starting LE stack address-8 to store 4th argument | ||||||
|  | 
 | ||||||
|  | repeat: | ||||||
|  | 	ADD  $8, R7 | ||||||
|  | 	MOVD 0(R7), R0      // advance arg pointer by 8 byte | ||||||
|  | 	ADD  $8, R6         // advance LE argument address by 8 byte | ||||||
|  | 	MOVD R0, (R4)(R6*1) // copy argument from go-slice to le-frame | ||||||
|  | 	SUB  $1, R8 | ||||||
|  | 	CMP  R8, $0 | ||||||
|  | 	BNE  repeat | ||||||
|  | 
 | ||||||
|  | docall: | ||||||
|  | 	MOVD funcdesc+0(FP), R8 // R8-> function descriptor | ||||||
|  | 	LMG  0(R8), R5, R6 | ||||||
|  | 	MOVD $0, 0(R9)          // R9 address of SAVSTACK_ASYNC | ||||||
|  | 	LE_CALL                 // balr R7, R6 (return #1) | ||||||
|  | 	NOPH | ||||||
|  | 	MOVD R3, ret+32(FP) | ||||||
|  | 	CMP  R3, $-1            // compare result to -1 | ||||||
|  | 	BNE  done | ||||||
|  | 
 | ||||||
|  | 	// retrieve errno and errno2 | ||||||
|  | 	MOVD  zosLibVec<>(SB), R8 | ||||||
|  | 	ADD   $(__errno), R8 | ||||||
|  | 	LMG   0(R8), R5, R6 | ||||||
|  | 	LE_CALL                   // balr R7, R6 __errno (return #3) | ||||||
|  | 	NOPH | ||||||
|  | 	MOVWZ 0(R3), R3 | ||||||
|  | 	MOVD  R3, err+48(FP) | ||||||
|  | 	MOVD  zosLibVec<>(SB), R8 | ||||||
|  | 	ADD   $(__err2ad), R8 | ||||||
|  | 	LMG   0(R8), R5, R6 | ||||||
|  | 	LE_CALL                   // balr R7, R6 __err2ad (return #2) | ||||||
|  | 	NOPH | ||||||
|  | 	MOVW  (R3), R2            // retrieve errno2 | ||||||
|  | 	MOVD  R2, errno2+40(FP)   // store in return area | ||||||
|  | 
 | ||||||
|  | done: | ||||||
|  | 	MOVD R4, 0(R9)            // Save stack pointer. | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // | ||||||
|  | // Call LE function, if the return is 0 | ||||||
|  | // errno and errno2 is retrieved | ||||||
|  | // | ||||||
|  | TEXT ·CallLeFuncWithPtrReturn(SB), NOSPLIT, $0 | ||||||
|  | 	MOVW PSALAA, R8 | ||||||
|  | 	MOVD LCA64(R8), R8 | ||||||
|  | 	MOVD CAA(R8), R9 | ||||||
|  | 	MOVD g, GOCB(R9) | ||||||
|  | 
 | ||||||
|  | 	// Restore LE stack. | ||||||
|  | 	MOVD SAVSTACK_ASYNC(R8), R9 // R9-> LE stack frame saving address | ||||||
|  | 	MOVD 0(R9), R4              // R4-> restore previously saved stack frame pointer | ||||||
|  | 
 | ||||||
|  | 	MOVD parms_base+8(FP), R7 // R7 -> argument array | ||||||
|  | 	MOVD parms_len+16(FP), R8 // R8 number of arguments | ||||||
|  | 
 | ||||||
|  | 	//  arg 1 ---> R1 | ||||||
|  | 	CMP  R8, $0 | ||||||
|  | 	BEQ  docall | ||||||
|  | 	SUB  $1, R8 | ||||||
|  | 	MOVD 0(R7), R1 | ||||||
|  | 
 | ||||||
|  | 	//  arg 2 ---> R2 | ||||||
|  | 	CMP  R8, $0 | ||||||
|  | 	BEQ  docall | ||||||
|  | 	SUB  $1, R8 | ||||||
|  | 	ADD  $8, R7 | ||||||
|  | 	MOVD 0(R7), R2 | ||||||
|  | 
 | ||||||
|  | 	//  arg 3 --> R3 | ||||||
|  | 	CMP  R8, $0 | ||||||
|  | 	BEQ  docall | ||||||
|  | 	SUB  $1, R8 | ||||||
|  | 	ADD  $8, R7 | ||||||
|  | 	MOVD 0(R7), R3 | ||||||
|  | 
 | ||||||
|  | 	CMP  R8, $0 | ||||||
|  | 	BEQ  docall | ||||||
|  | 	MOVD $2176+16, R6 // starting LE stack address-8 to store 4th argument | ||||||
|  | 
 | ||||||
|  | repeat: | ||||||
|  | 	ADD  $8, R7 | ||||||
|  | 	MOVD 0(R7), R0      // advance arg pointer by 8 byte | ||||||
|  | 	ADD  $8, R6         // advance LE argument address by 8 byte | ||||||
|  | 	MOVD R0, (R4)(R6*1) // copy argument from go-slice to le-frame | ||||||
|  | 	SUB  $1, R8 | ||||||
|  | 	CMP  R8, $0 | ||||||
|  | 	BNE  repeat | ||||||
|  | 
 | ||||||
|  | docall: | ||||||
|  | 	MOVD funcdesc+0(FP), R8 // R8-> function descriptor | ||||||
|  | 	LMG  0(R8), R5, R6 | ||||||
|  | 	MOVD $0, 0(R9)          // R9 address of SAVSTACK_ASYNC | ||||||
|  | 	LE_CALL                 // balr R7, R6 (return #1) | ||||||
|  | 	NOPH | ||||||
|  | 	MOVD R3, ret+32(FP) | ||||||
|  | 	CMP  R3, $0             // compare result to 0 | ||||||
|  | 	BNE  done | ||||||
|  | 
 | ||||||
|  | 	// retrieve errno and errno2 | ||||||
|  | 	MOVD  zosLibVec<>(SB), R8 | ||||||
|  | 	ADD   $(__errno), R8 | ||||||
|  | 	LMG   0(R8), R5, R6 | ||||||
|  | 	LE_CALL                   // balr R7, R6 __errno (return #3) | ||||||
|  | 	NOPH | ||||||
|  | 	MOVWZ 0(R3), R3 | ||||||
|  | 	MOVD  R3, err+48(FP) | ||||||
|  | 	MOVD  zosLibVec<>(SB), R8 | ||||||
|  | 	ADD   $(__err2ad), R8 | ||||||
|  | 	LMG   0(R8), R5, R6 | ||||||
|  | 	LE_CALL                   // balr R7, R6 __err2ad (return #2) | ||||||
|  | 	NOPH | ||||||
|  | 	MOVW  (R3), R2            // retrieve errno2 | ||||||
|  | 	MOVD  R2, errno2+40(FP)   // store in return area | ||||||
|  | 	XOR   R2, R2 | ||||||
|  | 	MOVWZ R2, (R3)            // clear errno2 | ||||||
|  | 
 | ||||||
|  | done: | ||||||
|  | 	MOVD R4, 0(R9)            // Save stack pointer. | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // | ||||||
|  | // function to test if a pointer can be safely dereferenced (content read) | ||||||
|  | // return 0 for succces | ||||||
|  | // | ||||||
|  | TEXT ·ptrtest(SB), NOSPLIT, $0-16 | ||||||
|  | 	MOVD arg+0(FP), R10 // test pointer in R10 | ||||||
|  | 
 | ||||||
|  | 	// set up R2 to point to CEECAADMC | ||||||
|  | 	BYTE $0xE3; BYTE $0x20; BYTE $0x04; BYTE $0xB8; BYTE $0x00; BYTE $0x17 // llgt  2,1208
 | ||||||
|  | 	BYTE $0xB9; BYTE $0x17; BYTE $0x00; BYTE $0x22                         // llgtr 2,2
 | ||||||
|  | 	BYTE $0xA5; BYTE $0x26; BYTE $0x7F; BYTE $0xFF                         // nilh  2,32767
 | ||||||
|  | 	BYTE $0xE3; BYTE $0x22; BYTE $0x00; BYTE $0x58; BYTE $0x00; BYTE $0x04 // lg    2,88(2)
 | ||||||
|  | 	BYTE $0xE3; BYTE $0x22; BYTE $0x00; BYTE $0x08; BYTE $0x00; BYTE $0x04 // lg    2,8(2)
 | ||||||
|  | 	BYTE $0x41; BYTE $0x22; BYTE $0x03; BYTE $0x68                         // la    2,872(2)
 | ||||||
|  | 
 | ||||||
|  | 	// set up R5 to point to the "shunt" path which set 1 to R3 (failure) | ||||||
|  | 	BYTE $0xB9; BYTE $0x82; BYTE $0x00; BYTE $0x33 // xgr   3,3
 | ||||||
|  | 	BYTE $0xA7; BYTE $0x55; BYTE $0x00; BYTE $0x04 // bras  5,lbl1
 | ||||||
|  | 	BYTE $0xA7; BYTE $0x39; BYTE $0x00; BYTE $0x01 // lghi  3,1
 | ||||||
|  | 
 | ||||||
|  | 	// if r3 is not zero (failed) then branch to finish | ||||||
|  | 	BYTE $0xB9; BYTE $0x02; BYTE $0x00; BYTE $0x33 // lbl1     ltgr  3,3
 | ||||||
|  | 	BYTE $0xA7; BYTE $0x74; BYTE $0x00; BYTE $0x08 // brc   b'0111',lbl2
 | ||||||
|  | 
 | ||||||
|  | 	// stomic store shunt address in R5 into CEECAADMC | ||||||
|  | 	BYTE $0xE3; BYTE $0x52; BYTE $0x00; BYTE $0x00; BYTE $0x00; BYTE $0x24 // stg   5,0(2)
 | ||||||
|  | 
 | ||||||
|  | 	// now try reading from the test pointer in R10, if it fails it branches to the "lghi" instruction above | ||||||
|  | 	BYTE $0xE3; BYTE $0x9A; BYTE $0x00; BYTE $0x00; BYTE $0x00; BYTE $0x04 // lg    9,0(10)
 | ||||||
|  | 
 | ||||||
|  | 	// finish here, restore 0 into CEECAADMC | ||||||
|  | 	BYTE $0xB9; BYTE $0x82; BYTE $0x00; BYTE $0x99                         // lbl2     xgr   9,9
 | ||||||
|  | 	BYTE $0xE3; BYTE $0x92; BYTE $0x00; BYTE $0x00; BYTE $0x00; BYTE $0x24 // stg   9,0(2)
 | ||||||
|  | 	MOVD R3, ret+8(FP)                                                     // result in R3 | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // | ||||||
|  | // function to test if a untptr can be loaded from a pointer | ||||||
|  | // return 1: the 8-byte content | ||||||
|  | //        2: 0 for success, 1 for failure | ||||||
|  | // | ||||||
|  | // func safeload(ptr uintptr) ( value uintptr, error uintptr) | ||||||
|  | TEXT ·safeload(SB), NOSPLIT, $0-24 | ||||||
|  | 	MOVD ptr+0(FP), R10                                                    // test pointer in R10 | ||||||
|  | 	MOVD $0x0, R6 | ||||||
|  | 	BYTE $0xE3; BYTE $0x20; BYTE $0x04; BYTE $0xB8; BYTE $0x00; BYTE $0x17 // llgt  2,1208
 | ||||||
|  | 	BYTE $0xB9; BYTE $0x17; BYTE $0x00; BYTE $0x22                         // llgtr 2,2
 | ||||||
|  | 	BYTE $0xA5; BYTE $0x26; BYTE $0x7F; BYTE $0xFF                         // nilh  2,32767
 | ||||||
|  | 	BYTE $0xE3; BYTE $0x22; BYTE $0x00; BYTE $0x58; BYTE $0x00; BYTE $0x04 // lg    2,88(2)
 | ||||||
|  | 	BYTE $0xE3; BYTE $0x22; BYTE $0x00; BYTE $0x08; BYTE $0x00; BYTE $0x04 // lg    2,8(2)
 | ||||||
|  | 	BYTE $0x41; BYTE $0x22; BYTE $0x03; BYTE $0x68                         // la    2,872(2)
 | ||||||
|  | 	BYTE $0xB9; BYTE $0x82; BYTE $0x00; BYTE $0x33                         // xgr   3,3
 | ||||||
|  | 	BYTE $0xA7; BYTE $0x55; BYTE $0x00; BYTE $0x04                         // bras  5,lbl1
 | ||||||
|  | 	BYTE $0xA7; BYTE $0x39; BYTE $0x00; BYTE $0x01                         // lghi  3,1
 | ||||||
|  | 	BYTE $0xB9; BYTE $0x02; BYTE $0x00; BYTE $0x33                         // lbl1     ltgr  3,3
 | ||||||
|  | 	BYTE $0xA7; BYTE $0x74; BYTE $0x00; BYTE $0x08                         // brc   b'0111',lbl2
 | ||||||
|  | 	BYTE $0xE3; BYTE $0x52; BYTE $0x00; BYTE $0x00; BYTE $0x00; BYTE $0x24 // stg 5,0(2)
 | ||||||
|  | 	BYTE $0xE3; BYTE $0x6A; BYTE $0x00; BYTE $0x00; BYTE $0x00; BYTE $0x04 // lg    6,0(10)
 | ||||||
|  | 	BYTE $0xB9; BYTE $0x82; BYTE $0x00; BYTE $0x99                         // lbl2     xgr   9,9
 | ||||||
|  | 	BYTE $0xE3; BYTE $0x92; BYTE $0x00; BYTE $0x00; BYTE $0x00; BYTE $0x24 // stg   9,0(2)
 | ||||||
|  | 	MOVD R6, value+8(FP)                                                   // result in R6 | ||||||
|  | 	MOVD R3, error+16(FP)                                                  // error in R3 | ||||||
|  | 	RET | ||||||
|  |  | ||||||
							
								
								
									
										657
									
								
								vendor/golang.org/x/sys/unix/bpxsvc_zos.go
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										657
									
								
								vendor/golang.org/x/sys/unix/bpxsvc_zos.go
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,657 @@ | ||||||
|  | // Copyright 2024 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 zos | ||||||
|  | 
 | ||||||
|  | package unix | ||||||
|  | 
 | ||||||
|  | import ( | ||||||
|  | 	"bytes" | ||||||
|  | 	"fmt" | ||||||
|  | 	"unsafe" | ||||||
|  | ) | ||||||
|  | 
 | ||||||
|  | //go:noescape | ||||||
|  | func bpxcall(plist []unsafe.Pointer, bpx_offset int64) | ||||||
|  | 
 | ||||||
|  | //go:noescape | ||||||
|  | func A2e([]byte) | ||||||
|  | 
 | ||||||
|  | //go:noescape | ||||||
|  | func E2a([]byte) | ||||||
|  | 
 | ||||||
|  | const ( | ||||||
|  | 	BPX4STA = 192  // stat | ||||||
|  | 	BPX4FST = 104  // fstat | ||||||
|  | 	BPX4LST = 132  // lstat | ||||||
|  | 	BPX4OPN = 156  // open | ||||||
|  | 	BPX4CLO = 72   // close | ||||||
|  | 	BPX4CHR = 500  // chattr | ||||||
|  | 	BPX4FCR = 504  // fchattr | ||||||
|  | 	BPX4LCR = 1180 // lchattr | ||||||
|  | 	BPX4CTW = 492  // cond_timed_wait | ||||||
|  | 	BPX4GTH = 1056 // __getthent | ||||||
|  | 	BPX4PTQ = 412  // pthread_quiesc | ||||||
|  | 	BPX4PTR = 320  // ptrace | ||||||
|  | ) | ||||||
|  | 
 | ||||||
|  | const ( | ||||||
|  | 	//options | ||||||
|  | 	//byte1 | ||||||
|  | 	BPX_OPNFHIGH = 0x80 | ||||||
|  | 	//byte2 | ||||||
|  | 	BPX_OPNFEXEC = 0x80 | ||||||
|  | 	//byte3 | ||||||
|  | 	BPX_O_NOLARGEFILE = 0x08 | ||||||
|  | 	BPX_O_LARGEFILE   = 0x04 | ||||||
|  | 	BPX_O_ASYNCSIG    = 0x02 | ||||||
|  | 	BPX_O_SYNC        = 0x01 | ||||||
|  | 	//byte4 | ||||||
|  | 	BPX_O_CREXCL   = 0xc0 | ||||||
|  | 	BPX_O_CREAT    = 0x80 | ||||||
|  | 	BPX_O_EXCL     = 0x40 | ||||||
|  | 	BPX_O_NOCTTY   = 0x20 | ||||||
|  | 	BPX_O_TRUNC    = 0x10 | ||||||
|  | 	BPX_O_APPEND   = 0x08 | ||||||
|  | 	BPX_O_NONBLOCK = 0x04 | ||||||
|  | 	BPX_FNDELAY    = 0x04 | ||||||
|  | 	BPX_O_RDWR     = 0x03 | ||||||
|  | 	BPX_O_RDONLY   = 0x02 | ||||||
|  | 	BPX_O_WRONLY   = 0x01 | ||||||
|  | 	BPX_O_ACCMODE  = 0x03 | ||||||
|  | 	BPX_O_GETFL    = 0x0f | ||||||
|  | 
 | ||||||
|  | 	//mode | ||||||
|  | 	// byte1 (file type) | ||||||
|  | 	BPX_FT_DIR      = 1 | ||||||
|  | 	BPX_FT_CHARSPEC = 2 | ||||||
|  | 	BPX_FT_REGFILE  = 3 | ||||||
|  | 	BPX_FT_FIFO     = 4 | ||||||
|  | 	BPX_FT_SYMLINK  = 5 | ||||||
|  | 	BPX_FT_SOCKET   = 6 | ||||||
|  | 	//byte3 | ||||||
|  | 	BPX_S_ISUID  = 0x08 | ||||||
|  | 	BPX_S_ISGID  = 0x04 | ||||||
|  | 	BPX_S_ISVTX  = 0x02 | ||||||
|  | 	BPX_S_IRWXU1 = 0x01 | ||||||
|  | 	BPX_S_IRUSR  = 0x01 | ||||||
|  | 	//byte4 | ||||||
|  | 	BPX_S_IRWXU2 = 0xc0 | ||||||
|  | 	BPX_S_IWUSR  = 0x80 | ||||||
|  | 	BPX_S_IXUSR  = 0x40 | ||||||
|  | 	BPX_S_IRWXG  = 0x38 | ||||||
|  | 	BPX_S_IRGRP  = 0x20 | ||||||
|  | 	BPX_S_IWGRP  = 0x10 | ||||||
|  | 	BPX_S_IXGRP  = 0x08 | ||||||
|  | 	BPX_S_IRWXOX = 0x07 | ||||||
|  | 	BPX_S_IROTH  = 0x04 | ||||||
|  | 	BPX_S_IWOTH  = 0x02 | ||||||
|  | 	BPX_S_IXOTH  = 0x01 | ||||||
|  | 
 | ||||||
|  | 	CW_INTRPT  = 1 | ||||||
|  | 	CW_CONDVAR = 32 | ||||||
|  | 	CW_TIMEOUT = 64 | ||||||
|  | 
 | ||||||
|  | 	PGTHA_NEXT        = 2 | ||||||
|  | 	PGTHA_CURRENT     = 1 | ||||||
|  | 	PGTHA_FIRST       = 0 | ||||||
|  | 	PGTHA_LAST        = 3 | ||||||
|  | 	PGTHA_PROCESS     = 0x80 | ||||||
|  | 	PGTHA_CONTTY      = 0x40 | ||||||
|  | 	PGTHA_PATH        = 0x20 | ||||||
|  | 	PGTHA_COMMAND     = 0x10 | ||||||
|  | 	PGTHA_FILEDATA    = 0x08 | ||||||
|  | 	PGTHA_THREAD      = 0x04 | ||||||
|  | 	PGTHA_PTAG        = 0x02 | ||||||
|  | 	PGTHA_COMMANDLONG = 0x01 | ||||||
|  | 	PGTHA_THREADFAST  = 0x80 | ||||||
|  | 	PGTHA_FILEPATH    = 0x40 | ||||||
|  | 	PGTHA_THDSIGMASK  = 0x20 | ||||||
|  | 	// thread quiece mode | ||||||
|  | 	QUIESCE_TERM       int32 = 1 | ||||||
|  | 	QUIESCE_FORCE      int32 = 2 | ||||||
|  | 	QUIESCE_QUERY      int32 = 3 | ||||||
|  | 	QUIESCE_FREEZE     int32 = 4 | ||||||
|  | 	QUIESCE_UNFREEZE   int32 = 5 | ||||||
|  | 	FREEZE_THIS_THREAD int32 = 6 | ||||||
|  | 	FREEZE_EXIT        int32 = 8 | ||||||
|  | 	QUIESCE_SRB        int32 = 9 | ||||||
|  | ) | ||||||
|  | 
 | ||||||
|  | type Pgtha struct { | ||||||
|  | 	Pid        uint32 // 0 | ||||||
|  | 	Tid0       uint32 // 4 | ||||||
|  | 	Tid1       uint32 | ||||||
|  | 	Accesspid  byte    // C | ||||||
|  | 	Accesstid  byte    // D | ||||||
|  | 	Accessasid uint16  // E | ||||||
|  | 	Loginname  [8]byte // 10 | ||||||
|  | 	Flag1      byte    // 18 | ||||||
|  | 	Flag1b2    byte    // 19 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | type Bpxystat_t struct { // DSECT BPXYSTAT | ||||||
|  | 	St_id           [4]uint8  // 0 | ||||||
|  | 	St_length       uint16    // 0x4 | ||||||
|  | 	St_version      uint16    // 0x6 | ||||||
|  | 	St_mode         uint32    // 0x8 | ||||||
|  | 	St_ino          uint32    // 0xc | ||||||
|  | 	St_dev          uint32    // 0x10 | ||||||
|  | 	St_nlink        uint32    // 0x14 | ||||||
|  | 	St_uid          uint32    // 0x18 | ||||||
|  | 	St_gid          uint32    // 0x1c | ||||||
|  | 	St_size         uint64    // 0x20 | ||||||
|  | 	St_atime        uint32    // 0x28 | ||||||
|  | 	St_mtime        uint32    // 0x2c | ||||||
|  | 	St_ctime        uint32    // 0x30 | ||||||
|  | 	St_rdev         uint32    // 0x34 | ||||||
|  | 	St_auditoraudit uint32    // 0x38 | ||||||
|  | 	St_useraudit    uint32    // 0x3c | ||||||
|  | 	St_blksize      uint32    // 0x40 | ||||||
|  | 	St_createtime   uint32    // 0x44 | ||||||
|  | 	St_auditid      [4]uint32 // 0x48 | ||||||
|  | 	St_res01        uint32    // 0x58 | ||||||
|  | 	Ft_ccsid        uint16    // 0x5c | ||||||
|  | 	Ft_flags        uint16    // 0x5e | ||||||
|  | 	St_res01a       [2]uint32 // 0x60 | ||||||
|  | 	St_res02        uint32    // 0x68 | ||||||
|  | 	St_blocks       uint32    // 0x6c | ||||||
|  | 	St_opaque       [3]uint8  // 0x70 | ||||||
|  | 	St_visible      uint8     // 0x73 | ||||||
|  | 	St_reftime      uint32    // 0x74 | ||||||
|  | 	St_fid          uint64    // 0x78 | ||||||
|  | 	St_filefmt      uint8     // 0x80 | ||||||
|  | 	St_fspflag2     uint8     // 0x81 | ||||||
|  | 	St_res03        [2]uint8  // 0x82 | ||||||
|  | 	St_ctimemsec    uint32    // 0x84 | ||||||
|  | 	St_seclabel     [8]uint8  // 0x88 | ||||||
|  | 	St_res04        [4]uint8  // 0x90 | ||||||
|  | 	// end of version 1 | ||||||
|  | 	_               uint32    // 0x94 | ||||||
|  | 	St_atime64      uint64    // 0x98 | ||||||
|  | 	St_mtime64      uint64    // 0xa0 | ||||||
|  | 	St_ctime64      uint64    // 0xa8 | ||||||
|  | 	St_createtime64 uint64    // 0xb0 | ||||||
|  | 	St_reftime64    uint64    // 0xb8 | ||||||
|  | 	_               uint64    // 0xc0 | ||||||
|  | 	St_res05        [16]uint8 // 0xc8 | ||||||
|  | 	// end of version 2 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | type BpxFilestatus struct { | ||||||
|  | 	Oflag1 byte | ||||||
|  | 	Oflag2 byte | ||||||
|  | 	Oflag3 byte | ||||||
|  | 	Oflag4 byte | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | type BpxMode struct { | ||||||
|  | 	Ftype byte | ||||||
|  | 	Mode1 byte | ||||||
|  | 	Mode2 byte | ||||||
|  | 	Mode3 byte | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | // Thr attribute structure for extended attributes | ||||||
|  | type Bpxyatt_t struct { // DSECT BPXYATT | ||||||
|  | 	Att_id           [4]uint8 | ||||||
|  | 	Att_version      uint16 | ||||||
|  | 	Att_res01        [2]uint8 | ||||||
|  | 	Att_setflags1    uint8 | ||||||
|  | 	Att_setflags2    uint8 | ||||||
|  | 	Att_setflags3    uint8 | ||||||
|  | 	Att_setflags4    uint8 | ||||||
|  | 	Att_mode         uint32 | ||||||
|  | 	Att_uid          uint32 | ||||||
|  | 	Att_gid          uint32 | ||||||
|  | 	Att_opaquemask   [3]uint8 | ||||||
|  | 	Att_visblmaskres uint8 | ||||||
|  | 	Att_opaque       [3]uint8 | ||||||
|  | 	Att_visibleres   uint8 | ||||||
|  | 	Att_size_h       uint32 | ||||||
|  | 	Att_size_l       uint32 | ||||||
|  | 	Att_atime        uint32 | ||||||
|  | 	Att_mtime        uint32 | ||||||
|  | 	Att_auditoraudit uint32 | ||||||
|  | 	Att_useraudit    uint32 | ||||||
|  | 	Att_ctime        uint32 | ||||||
|  | 	Att_reftime      uint32 | ||||||
|  | 	// end of version 1 | ||||||
|  | 	Att_filefmt uint8 | ||||||
|  | 	Att_res02   [3]uint8 | ||||||
|  | 	Att_filetag uint32 | ||||||
|  | 	Att_res03   [8]uint8 | ||||||
|  | 	// end of version 2 | ||||||
|  | 	Att_atime64   uint64 | ||||||
|  | 	Att_mtime64   uint64 | ||||||
|  | 	Att_ctime64   uint64 | ||||||
|  | 	Att_reftime64 uint64 | ||||||
|  | 	Att_seclabel  [8]uint8 | ||||||
|  | 	Att_ver3res02 [8]uint8 | ||||||
|  | 	// end of version 3 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func BpxOpen(name string, options *BpxFilestatus, mode *BpxMode) (rv int32, rc int32, rn int32) { | ||||||
|  | 	if len(name) < 1024 { | ||||||
|  | 		var namebuf [1024]byte | ||||||
|  | 		sz := int32(copy(namebuf[:], name)) | ||||||
|  | 		A2e(namebuf[:sz]) | ||||||
|  | 		var parms [7]unsafe.Pointer | ||||||
|  | 		parms[0] = unsafe.Pointer(&sz) | ||||||
|  | 		parms[1] = unsafe.Pointer(&namebuf[0]) | ||||||
|  | 		parms[2] = unsafe.Pointer(options) | ||||||
|  | 		parms[3] = unsafe.Pointer(mode) | ||||||
|  | 		parms[4] = unsafe.Pointer(&rv) | ||||||
|  | 		parms[5] = unsafe.Pointer(&rc) | ||||||
|  | 		parms[6] = unsafe.Pointer(&rn) | ||||||
|  | 		bpxcall(parms[:], BPX4OPN) | ||||||
|  | 		return rv, rc, rn | ||||||
|  | 	} | ||||||
|  | 	return -1, -1, -1 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func BpxClose(fd int32) (rv int32, rc int32, rn int32) { | ||||||
|  | 	var parms [4]unsafe.Pointer | ||||||
|  | 	parms[0] = unsafe.Pointer(&fd) | ||||||
|  | 	parms[1] = unsafe.Pointer(&rv) | ||||||
|  | 	parms[2] = unsafe.Pointer(&rc) | ||||||
|  | 	parms[3] = unsafe.Pointer(&rn) | ||||||
|  | 	bpxcall(parms[:], BPX4CLO) | ||||||
|  | 	return rv, rc, rn | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func BpxFileFStat(fd int32, st *Bpxystat_t) (rv int32, rc int32, rn int32) { | ||||||
|  | 	st.St_id = [4]uint8{0xe2, 0xe3, 0xc1, 0xe3} | ||||||
|  | 	st.St_version = 2 | ||||||
|  | 	stat_sz := uint32(unsafe.Sizeof(*st)) | ||||||
|  | 	var parms [6]unsafe.Pointer | ||||||
|  | 	parms[0] = unsafe.Pointer(&fd) | ||||||
|  | 	parms[1] = unsafe.Pointer(&stat_sz) | ||||||
|  | 	parms[2] = unsafe.Pointer(st) | ||||||
|  | 	parms[3] = unsafe.Pointer(&rv) | ||||||
|  | 	parms[4] = unsafe.Pointer(&rc) | ||||||
|  | 	parms[5] = unsafe.Pointer(&rn) | ||||||
|  | 	bpxcall(parms[:], BPX4FST) | ||||||
|  | 	return rv, rc, rn | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func BpxFileStat(name string, st *Bpxystat_t) (rv int32, rc int32, rn int32) { | ||||||
|  | 	if len(name) < 1024 { | ||||||
|  | 		var namebuf [1024]byte | ||||||
|  | 		sz := int32(copy(namebuf[:], name)) | ||||||
|  | 		A2e(namebuf[:sz]) | ||||||
|  | 		st.St_id = [4]uint8{0xe2, 0xe3, 0xc1, 0xe3} | ||||||
|  | 		st.St_version = 2 | ||||||
|  | 		stat_sz := uint32(unsafe.Sizeof(*st)) | ||||||
|  | 		var parms [7]unsafe.Pointer | ||||||
|  | 		parms[0] = unsafe.Pointer(&sz) | ||||||
|  | 		parms[1] = unsafe.Pointer(&namebuf[0]) | ||||||
|  | 		parms[2] = unsafe.Pointer(&stat_sz) | ||||||
|  | 		parms[3] = unsafe.Pointer(st) | ||||||
|  | 		parms[4] = unsafe.Pointer(&rv) | ||||||
|  | 		parms[5] = unsafe.Pointer(&rc) | ||||||
|  | 		parms[6] = unsafe.Pointer(&rn) | ||||||
|  | 		bpxcall(parms[:], BPX4STA) | ||||||
|  | 		return rv, rc, rn | ||||||
|  | 	} | ||||||
|  | 	return -1, -1, -1 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func BpxFileLStat(name string, st *Bpxystat_t) (rv int32, rc int32, rn int32) { | ||||||
|  | 	if len(name) < 1024 { | ||||||
|  | 		var namebuf [1024]byte | ||||||
|  | 		sz := int32(copy(namebuf[:], name)) | ||||||
|  | 		A2e(namebuf[:sz]) | ||||||
|  | 		st.St_id = [4]uint8{0xe2, 0xe3, 0xc1, 0xe3} | ||||||
|  | 		st.St_version = 2 | ||||||
|  | 		stat_sz := uint32(unsafe.Sizeof(*st)) | ||||||
|  | 		var parms [7]unsafe.Pointer | ||||||
|  | 		parms[0] = unsafe.Pointer(&sz) | ||||||
|  | 		parms[1] = unsafe.Pointer(&namebuf[0]) | ||||||
|  | 		parms[2] = unsafe.Pointer(&stat_sz) | ||||||
|  | 		parms[3] = unsafe.Pointer(st) | ||||||
|  | 		parms[4] = unsafe.Pointer(&rv) | ||||||
|  | 		parms[5] = unsafe.Pointer(&rc) | ||||||
|  | 		parms[6] = unsafe.Pointer(&rn) | ||||||
|  | 		bpxcall(parms[:], BPX4LST) | ||||||
|  | 		return rv, rc, rn | ||||||
|  | 	} | ||||||
|  | 	return -1, -1, -1 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func BpxChattr(path string, attr *Bpxyatt_t) (rv int32, rc int32, rn int32) { | ||||||
|  | 	if len(path) >= 1024 { | ||||||
|  | 		return -1, -1, -1 | ||||||
|  | 	} | ||||||
|  | 	var namebuf [1024]byte | ||||||
|  | 	sz := int32(copy(namebuf[:], path)) | ||||||
|  | 	A2e(namebuf[:sz]) | ||||||
|  | 	attr_sz := uint32(unsafe.Sizeof(*attr)) | ||||||
|  | 	var parms [7]unsafe.Pointer | ||||||
|  | 	parms[0] = unsafe.Pointer(&sz) | ||||||
|  | 	parms[1] = unsafe.Pointer(&namebuf[0]) | ||||||
|  | 	parms[2] = unsafe.Pointer(&attr_sz) | ||||||
|  | 	parms[3] = unsafe.Pointer(attr) | ||||||
|  | 	parms[4] = unsafe.Pointer(&rv) | ||||||
|  | 	parms[5] = unsafe.Pointer(&rc) | ||||||
|  | 	parms[6] = unsafe.Pointer(&rn) | ||||||
|  | 	bpxcall(parms[:], BPX4CHR) | ||||||
|  | 	return rv, rc, rn | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func BpxLchattr(path string, attr *Bpxyatt_t) (rv int32, rc int32, rn int32) { | ||||||
|  | 	if len(path) >= 1024 { | ||||||
|  | 		return -1, -1, -1 | ||||||
|  | 	} | ||||||
|  | 	var namebuf [1024]byte | ||||||
|  | 	sz := int32(copy(namebuf[:], path)) | ||||||
|  | 	A2e(namebuf[:sz]) | ||||||
|  | 	attr_sz := uint32(unsafe.Sizeof(*attr)) | ||||||
|  | 	var parms [7]unsafe.Pointer | ||||||
|  | 	parms[0] = unsafe.Pointer(&sz) | ||||||
|  | 	parms[1] = unsafe.Pointer(&namebuf[0]) | ||||||
|  | 	parms[2] = unsafe.Pointer(&attr_sz) | ||||||
|  | 	parms[3] = unsafe.Pointer(attr) | ||||||
|  | 	parms[4] = unsafe.Pointer(&rv) | ||||||
|  | 	parms[5] = unsafe.Pointer(&rc) | ||||||
|  | 	parms[6] = unsafe.Pointer(&rn) | ||||||
|  | 	bpxcall(parms[:], BPX4LCR) | ||||||
|  | 	return rv, rc, rn | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func BpxFchattr(fd int32, attr *Bpxyatt_t) (rv int32, rc int32, rn int32) { | ||||||
|  | 	attr_sz := uint32(unsafe.Sizeof(*attr)) | ||||||
|  | 	var parms [6]unsafe.Pointer | ||||||
|  | 	parms[0] = unsafe.Pointer(&fd) | ||||||
|  | 	parms[1] = unsafe.Pointer(&attr_sz) | ||||||
|  | 	parms[2] = unsafe.Pointer(attr) | ||||||
|  | 	parms[3] = unsafe.Pointer(&rv) | ||||||
|  | 	parms[4] = unsafe.Pointer(&rc) | ||||||
|  | 	parms[5] = unsafe.Pointer(&rn) | ||||||
|  | 	bpxcall(parms[:], BPX4FCR) | ||||||
|  | 	return rv, rc, rn | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func BpxCondTimedWait(sec uint32, nsec uint32, events uint32, secrem *uint32, nsecrem *uint32) (rv int32, rc int32, rn int32) { | ||||||
|  | 	var parms [8]unsafe.Pointer | ||||||
|  | 	parms[0] = unsafe.Pointer(&sec) | ||||||
|  | 	parms[1] = unsafe.Pointer(&nsec) | ||||||
|  | 	parms[2] = unsafe.Pointer(&events) | ||||||
|  | 	parms[3] = unsafe.Pointer(secrem) | ||||||
|  | 	parms[4] = unsafe.Pointer(nsecrem) | ||||||
|  | 	parms[5] = unsafe.Pointer(&rv) | ||||||
|  | 	parms[6] = unsafe.Pointer(&rc) | ||||||
|  | 	parms[7] = unsafe.Pointer(&rn) | ||||||
|  | 	bpxcall(parms[:], BPX4CTW) | ||||||
|  | 	return rv, rc, rn | ||||||
|  | } | ||||||
|  | func BpxGetthent(in *Pgtha, outlen *uint32, out unsafe.Pointer) (rv int32, rc int32, rn int32) { | ||||||
|  | 	var parms [7]unsafe.Pointer | ||||||
|  | 	inlen := uint32(26) // nothing else will work. Go says Pgtha is 28-byte because of alignment, but Pgtha is "packed" and must be 26-byte | ||||||
|  | 	parms[0] = unsafe.Pointer(&inlen) | ||||||
|  | 	parms[1] = unsafe.Pointer(&in) | ||||||
|  | 	parms[2] = unsafe.Pointer(outlen) | ||||||
|  | 	parms[3] = unsafe.Pointer(&out) | ||||||
|  | 	parms[4] = unsafe.Pointer(&rv) | ||||||
|  | 	parms[5] = unsafe.Pointer(&rc) | ||||||
|  | 	parms[6] = unsafe.Pointer(&rn) | ||||||
|  | 	bpxcall(parms[:], BPX4GTH) | ||||||
|  | 	return rv, rc, rn | ||||||
|  | } | ||||||
|  | func ZosJobname() (jobname string, err error) { | ||||||
|  | 	var pgtha Pgtha | ||||||
|  | 	pgtha.Pid = uint32(Getpid()) | ||||||
|  | 	pgtha.Accesspid = PGTHA_CURRENT | ||||||
|  | 	pgtha.Flag1 = PGTHA_PROCESS | ||||||
|  | 	var out [256]byte | ||||||
|  | 	var outlen uint32 | ||||||
|  | 	outlen = 256 | ||||||
|  | 	rv, rc, rn := BpxGetthent(&pgtha, &outlen, unsafe.Pointer(&out[0])) | ||||||
|  | 	if rv == 0 { | ||||||
|  | 		gthc := []byte{0x87, 0xa3, 0x88, 0x83} // 'gthc' in ebcdic | ||||||
|  | 		ix := bytes.Index(out[:], gthc) | ||||||
|  | 		if ix == -1 { | ||||||
|  | 			err = fmt.Errorf("BPX4GTH: gthc return data not found") | ||||||
|  | 			return | ||||||
|  | 		} | ||||||
|  | 		jn := out[ix+80 : ix+88] // we didn't declare Pgthc, but jobname is 8-byte at offset 80 | ||||||
|  | 		E2a(jn) | ||||||
|  | 		jobname = string(bytes.TrimRight(jn, " ")) | ||||||
|  | 
 | ||||||
|  | 	} else { | ||||||
|  | 		err = fmt.Errorf("BPX4GTH: rc=%d errno=%d reason=code=0x%x", rv, rc, rn) | ||||||
|  | 	} | ||||||
|  | 	return | ||||||
|  | } | ||||||
|  | func Bpx4ptq(code int32, data string) (rv int32, rc int32, rn int32) { | ||||||
|  | 	var userdata [8]byte | ||||||
|  | 	var parms [5]unsafe.Pointer | ||||||
|  | 	copy(userdata[:], data+"        ") | ||||||
|  | 	A2e(userdata[:]) | ||||||
|  | 	parms[0] = unsafe.Pointer(&code) | ||||||
|  | 	parms[1] = unsafe.Pointer(&userdata[0]) | ||||||
|  | 	parms[2] = unsafe.Pointer(&rv) | ||||||
|  | 	parms[3] = unsafe.Pointer(&rc) | ||||||
|  | 	parms[4] = unsafe.Pointer(&rn) | ||||||
|  | 	bpxcall(parms[:], BPX4PTQ) | ||||||
|  | 	return rv, rc, rn | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | const ( | ||||||
|  | 	PT_TRACE_ME             = 0  // Debug this process | ||||||
|  | 	PT_READ_I               = 1  // Read a full word | ||||||
|  | 	PT_READ_D               = 2  // Read a full word | ||||||
|  | 	PT_READ_U               = 3  // Read control info | ||||||
|  | 	PT_WRITE_I              = 4  //Write a full word | ||||||
|  | 	PT_WRITE_D              = 5  //Write a full word | ||||||
|  | 	PT_CONTINUE             = 7  //Continue the process | ||||||
|  | 	PT_KILL                 = 8  //Terminate the process | ||||||
|  | 	PT_READ_GPR             = 11 // Read GPR, CR, PSW | ||||||
|  | 	PT_READ_FPR             = 12 // Read FPR | ||||||
|  | 	PT_READ_VR              = 13 // Read VR | ||||||
|  | 	PT_WRITE_GPR            = 14 // Write GPR, CR, PSW | ||||||
|  | 	PT_WRITE_FPR            = 15 // Write FPR | ||||||
|  | 	PT_WRITE_VR             = 16 // Write VR | ||||||
|  | 	PT_READ_BLOCK           = 17 // Read storage | ||||||
|  | 	PT_WRITE_BLOCK          = 19 // Write storage | ||||||
|  | 	PT_READ_GPRH            = 20 // Read GPRH | ||||||
|  | 	PT_WRITE_GPRH           = 21 // Write GPRH | ||||||
|  | 	PT_REGHSET              = 22 // Read all GPRHs | ||||||
|  | 	PT_ATTACH               = 30 // Attach to a process | ||||||
|  | 	PT_DETACH               = 31 // Detach from a process | ||||||
|  | 	PT_REGSET               = 32 // Read all GPRs | ||||||
|  | 	PT_REATTACH             = 33 // Reattach to a process | ||||||
|  | 	PT_LDINFO               = 34 // Read loader info | ||||||
|  | 	PT_MULTI                = 35 // Multi process mode | ||||||
|  | 	PT_LD64INFO             = 36 // RMODE64 Info Area | ||||||
|  | 	PT_BLOCKREQ             = 40 // Block request | ||||||
|  | 	PT_THREAD_INFO          = 60 // Read thread info | ||||||
|  | 	PT_THREAD_MODIFY        = 61 | ||||||
|  | 	PT_THREAD_READ_FOCUS    = 62 | ||||||
|  | 	PT_THREAD_WRITE_FOCUS   = 63 | ||||||
|  | 	PT_THREAD_HOLD          = 64 | ||||||
|  | 	PT_THREAD_SIGNAL        = 65 | ||||||
|  | 	PT_EXPLAIN              = 66 | ||||||
|  | 	PT_EVENTS               = 67 | ||||||
|  | 	PT_THREAD_INFO_EXTENDED = 68 | ||||||
|  | 	PT_REATTACH2            = 71 | ||||||
|  | 	PT_CAPTURE              = 72 | ||||||
|  | 	PT_UNCAPTURE            = 73 | ||||||
|  | 	PT_GET_THREAD_TCB       = 74 | ||||||
|  | 	PT_GET_ALET             = 75 | ||||||
|  | 	PT_SWAPIN               = 76 | ||||||
|  | 	PT_EXTENDED_EVENT       = 98 | ||||||
|  | 	PT_RECOVER              = 99  // Debug a program check | ||||||
|  | 	PT_GPR0                 = 0   // General purpose register 0 | ||||||
|  | 	PT_GPR1                 = 1   // General purpose register 1 | ||||||
|  | 	PT_GPR2                 = 2   // General purpose register 2 | ||||||
|  | 	PT_GPR3                 = 3   // General purpose register 3 | ||||||
|  | 	PT_GPR4                 = 4   // General purpose register 4 | ||||||
|  | 	PT_GPR5                 = 5   // General purpose register 5 | ||||||
|  | 	PT_GPR6                 = 6   // General purpose register 6 | ||||||
|  | 	PT_GPR7                 = 7   // General purpose register 7 | ||||||
|  | 	PT_GPR8                 = 8   // General purpose register 8 | ||||||
|  | 	PT_GPR9                 = 9   // General purpose register 9 | ||||||
|  | 	PT_GPR10                = 10  // General purpose register 10 | ||||||
|  | 	PT_GPR11                = 11  // General purpose register 11 | ||||||
|  | 	PT_GPR12                = 12  // General purpose register 12 | ||||||
|  | 	PT_GPR13                = 13  // General purpose register 13 | ||||||
|  | 	PT_GPR14                = 14  // General purpose register 14 | ||||||
|  | 	PT_GPR15                = 15  // General purpose register 15 | ||||||
|  | 	PT_FPR0                 = 16  // Floating point register 0 | ||||||
|  | 	PT_FPR1                 = 17  // Floating point register 1 | ||||||
|  | 	PT_FPR2                 = 18  // Floating point register 2 | ||||||
|  | 	PT_FPR3                 = 19  // Floating point register 3 | ||||||
|  | 	PT_FPR4                 = 20  // Floating point register 4 | ||||||
|  | 	PT_FPR5                 = 21  // Floating point register 5 | ||||||
|  | 	PT_FPR6                 = 22  // Floating point register 6 | ||||||
|  | 	PT_FPR7                 = 23  // Floating point register 7 | ||||||
|  | 	PT_FPR8                 = 24  // Floating point register 8 | ||||||
|  | 	PT_FPR9                 = 25  // Floating point register 9 | ||||||
|  | 	PT_FPR10                = 26  // Floating point register 10 | ||||||
|  | 	PT_FPR11                = 27  // Floating point register 11 | ||||||
|  | 	PT_FPR12                = 28  // Floating point register 12 | ||||||
|  | 	PT_FPR13                = 29  // Floating point register 13 | ||||||
|  | 	PT_FPR14                = 30  // Floating point register 14 | ||||||
|  | 	PT_FPR15                = 31  // Floating point register 15 | ||||||
|  | 	PT_FPC                  = 32  // Floating point control register | ||||||
|  | 	PT_PSW                  = 40  // PSW | ||||||
|  | 	PT_PSW0                 = 40  // Left half of the PSW | ||||||
|  | 	PT_PSW1                 = 41  // Right half of the PSW | ||||||
|  | 	PT_CR0                  = 42  // Control register 0 | ||||||
|  | 	PT_CR1                  = 43  // Control register 1 | ||||||
|  | 	PT_CR2                  = 44  // Control register 2 | ||||||
|  | 	PT_CR3                  = 45  // Control register 3 | ||||||
|  | 	PT_CR4                  = 46  // Control register 4 | ||||||
|  | 	PT_CR5                  = 47  // Control register 5 | ||||||
|  | 	PT_CR6                  = 48  // Control register 6 | ||||||
|  | 	PT_CR7                  = 49  // Control register 7 | ||||||
|  | 	PT_CR8                  = 50  // Control register 8 | ||||||
|  | 	PT_CR9                  = 51  // Control register 9 | ||||||
|  | 	PT_CR10                 = 52  // Control register 10 | ||||||
|  | 	PT_CR11                 = 53  // Control register 11 | ||||||
|  | 	PT_CR12                 = 54  // Control register 12 | ||||||
|  | 	PT_CR13                 = 55  // Control register 13 | ||||||
|  | 	PT_CR14                 = 56  // Control register 14 | ||||||
|  | 	PT_CR15                 = 57  // Control register 15 | ||||||
|  | 	PT_GPRH0                = 58  // GP High register 0 | ||||||
|  | 	PT_GPRH1                = 59  // GP High register 1 | ||||||
|  | 	PT_GPRH2                = 60  // GP High register 2 | ||||||
|  | 	PT_GPRH3                = 61  // GP High register 3 | ||||||
|  | 	PT_GPRH4                = 62  // GP High register 4 | ||||||
|  | 	PT_GPRH5                = 63  // GP High register 5 | ||||||
|  | 	PT_GPRH6                = 64  // GP High register 6 | ||||||
|  | 	PT_GPRH7                = 65  // GP High register 7 | ||||||
|  | 	PT_GPRH8                = 66  // GP High register 8 | ||||||
|  | 	PT_GPRH9                = 67  // GP High register 9 | ||||||
|  | 	PT_GPRH10               = 68  // GP High register 10 | ||||||
|  | 	PT_GPRH11               = 69  // GP High register 11 | ||||||
|  | 	PT_GPRH12               = 70  // GP High register 12 | ||||||
|  | 	PT_GPRH13               = 71  // GP High register 13 | ||||||
|  | 	PT_GPRH14               = 72  // GP High register 14 | ||||||
|  | 	PT_GPRH15               = 73  // GP High register 15 | ||||||
|  | 	PT_VR0                  = 74  // Vector register 0 | ||||||
|  | 	PT_VR1                  = 75  // Vector register 1 | ||||||
|  | 	PT_VR2                  = 76  // Vector register 2 | ||||||
|  | 	PT_VR3                  = 77  // Vector register 3 | ||||||
|  | 	PT_VR4                  = 78  // Vector register 4 | ||||||
|  | 	PT_VR5                  = 79  // Vector register 5 | ||||||
|  | 	PT_VR6                  = 80  // Vector register 6 | ||||||
|  | 	PT_VR7                  = 81  // Vector register 7 | ||||||
|  | 	PT_VR8                  = 82  // Vector register 8 | ||||||
|  | 	PT_VR9                  = 83  // Vector register 9 | ||||||
|  | 	PT_VR10                 = 84  // Vector register 10 | ||||||
|  | 	PT_VR11                 = 85  // Vector register 11 | ||||||
|  | 	PT_VR12                 = 86  // Vector register 12 | ||||||
|  | 	PT_VR13                 = 87  // Vector register 13 | ||||||
|  | 	PT_VR14                 = 88  // Vector register 14 | ||||||
|  | 	PT_VR15                 = 89  // Vector register 15 | ||||||
|  | 	PT_VR16                 = 90  // Vector register 16 | ||||||
|  | 	PT_VR17                 = 91  // Vector register 17 | ||||||
|  | 	PT_VR18                 = 92  // Vector register 18 | ||||||
|  | 	PT_VR19                 = 93  // Vector register 19 | ||||||
|  | 	PT_VR20                 = 94  // Vector register 20 | ||||||
|  | 	PT_VR21                 = 95  // Vector register 21 | ||||||
|  | 	PT_VR22                 = 96  // Vector register 22 | ||||||
|  | 	PT_VR23                 = 97  // Vector register 23 | ||||||
|  | 	PT_VR24                 = 98  // Vector register 24 | ||||||
|  | 	PT_VR25                 = 99  // Vector register 25 | ||||||
|  | 	PT_VR26                 = 100 // Vector register 26 | ||||||
|  | 	PT_VR27                 = 101 // Vector register 27 | ||||||
|  | 	PT_VR28                 = 102 // Vector register 28 | ||||||
|  | 	PT_VR29                 = 103 // Vector register 29 | ||||||
|  | 	PT_VR30                 = 104 // Vector register 30 | ||||||
|  | 	PT_VR31                 = 105 // Vector register 31 | ||||||
|  | 	PT_PSWG                 = 106 // PSWG | ||||||
|  | 	PT_PSWG0                = 106 // Bytes 0-3 | ||||||
|  | 	PT_PSWG1                = 107 // Bytes 4-7 | ||||||
|  | 	PT_PSWG2                = 108 // Bytes 8-11 (IA high word) | ||||||
|  | 	PT_PSWG3                = 109 // Bytes 12-15 (IA low word) | ||||||
|  | ) | ||||||
|  | 
 | ||||||
|  | func Bpx4ptr(request int32, pid int32, addr unsafe.Pointer, data unsafe.Pointer, buffer unsafe.Pointer) (rv int32, rc int32, rn int32) { | ||||||
|  | 	var parms [8]unsafe.Pointer | ||||||
|  | 	parms[0] = unsafe.Pointer(&request) | ||||||
|  | 	parms[1] = unsafe.Pointer(&pid) | ||||||
|  | 	parms[2] = unsafe.Pointer(&addr) | ||||||
|  | 	parms[3] = unsafe.Pointer(&data) | ||||||
|  | 	parms[4] = unsafe.Pointer(&buffer) | ||||||
|  | 	parms[5] = unsafe.Pointer(&rv) | ||||||
|  | 	parms[6] = unsafe.Pointer(&rc) | ||||||
|  | 	parms[7] = unsafe.Pointer(&rn) | ||||||
|  | 	bpxcall(parms[:], BPX4PTR) | ||||||
|  | 	return rv, rc, rn | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func copyU8(val uint8, dest []uint8) int { | ||||||
|  | 	if len(dest) < 1 { | ||||||
|  | 		return 0 | ||||||
|  | 	} | ||||||
|  | 	dest[0] = val | ||||||
|  | 	return 1 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func copyU8Arr(src, dest []uint8) int { | ||||||
|  | 	if len(dest) < len(src) { | ||||||
|  | 		return 0 | ||||||
|  | 	} | ||||||
|  | 	for i, v := range src { | ||||||
|  | 		dest[i] = v | ||||||
|  | 	} | ||||||
|  | 	return len(src) | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func copyU16(val uint16, dest []uint16) int { | ||||||
|  | 	if len(dest) < 1 { | ||||||
|  | 		return 0 | ||||||
|  | 	} | ||||||
|  | 	dest[0] = val | ||||||
|  | 	return 1 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func copyU32(val uint32, dest []uint32) int { | ||||||
|  | 	if len(dest) < 1 { | ||||||
|  | 		return 0 | ||||||
|  | 	} | ||||||
|  | 	dest[0] = val | ||||||
|  | 	return 1 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func copyU32Arr(src, dest []uint32) int { | ||||||
|  | 	if len(dest) < len(src) { | ||||||
|  | 		return 0 | ||||||
|  | 	} | ||||||
|  | 	for i, v := range src { | ||||||
|  | 		dest[i] = v | ||||||
|  | 	} | ||||||
|  | 	return len(src) | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | func copyU64(val uint64, dest []uint64) int { | ||||||
|  | 	if len(dest) < 1 { | ||||||
|  | 		return 0 | ||||||
|  | 	} | ||||||
|  | 	dest[0] = val | ||||||
|  | 	return 1 | ||||||
|  | } | ||||||
							
								
								
									
										192
									
								
								vendor/golang.org/x/sys/unix/bpxsvc_zos.s
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										192
									
								
								vendor/golang.org/x/sys/unix/bpxsvc_zos.s
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,192 @@ | ||||||
|  | // Copyright 2024 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. | ||||||
|  | 
 | ||||||
|  | #include "go_asm.h" | ||||||
|  | #include "textflag.h" | ||||||
|  | 
 | ||||||
|  | // function to call USS assembly language services | ||||||
|  | // | ||||||
|  | // doc: https://www.ibm.com/support/knowledgecenter/en/SSLTBW_3.1.0/com.ibm.zos.v3r1.bpxb100/bit64env.htm | ||||||
|  | // | ||||||
|  | //   arg1 unsafe.Pointer array that ressembles an OS PLIST | ||||||
|  | // | ||||||
|  | //   arg2 function offset as in | ||||||
|  | //       doc: https://www.ibm.com/support/knowledgecenter/en/SSLTBW_3.1.0/com.ibm.zos.v3r1.bpxb100/bpx2cr_List_of_offsets.htm | ||||||
|  | // | ||||||
|  | // func bpxcall(plist []unsafe.Pointer, bpx_offset int64) | ||||||
|  | 
 | ||||||
|  | TEXT ·bpxcall(SB), NOSPLIT|NOFRAME, $0 | ||||||
|  | 	MOVD  plist_base+0(FP), R1  // r1 points to plist | ||||||
|  | 	MOVD  bpx_offset+24(FP), R2 // r2 offset to BPX vector table | ||||||
|  | 	MOVD  R14, R7               // save r14 | ||||||
|  | 	MOVD  R15, R8               // save r15 | ||||||
|  | 	MOVWZ 16(R0), R9 | ||||||
|  | 	MOVWZ 544(R9), R9 | ||||||
|  | 	MOVWZ 24(R9), R9            // call vector in r9 | ||||||
|  | 	ADD   R2, R9                // add offset to vector table | ||||||
|  | 	MOVWZ (R9), R9              // r9 points to entry point | ||||||
|  | 	BYTE  $0x0D                 // BL R14,R9 --> basr r14,r9 | ||||||
|  | 	BYTE  $0xE9                 // clobbers 0,1,14,15 | ||||||
|  | 	MOVD  R8, R15               // restore 15 | ||||||
|  | 	JMP   R7                    // return via saved return address | ||||||
|  | 
 | ||||||
|  | //   func A2e(arr [] byte) | ||||||
|  | //   code page conversion from  819 to 1047 | ||||||
|  | TEXT ·A2e(SB), NOSPLIT|NOFRAME, $0 | ||||||
|  | 	MOVD arg_base+0(FP), R2                        // pointer to arry of characters | ||||||
|  | 	MOVD arg_len+8(FP), R3                         // count | ||||||
|  | 	XOR  R0, R0 | ||||||
|  | 	XOR  R1, R1 | ||||||
|  | 	BYTE $0xA7; BYTE $0x15; BYTE $0x00; BYTE $0x82 // BRAS 1,(2+(256/2))
 | ||||||
|  | 
 | ||||||
|  | 	// ASCII -> EBCDIC conversion table: | ||||||
|  | 	BYTE $0x00; BYTE $0x01; BYTE $0x02; BYTE $0x03
 | ||||||
|  | 	BYTE $0x37; BYTE $0x2d; BYTE $0x2e; BYTE $0x2f
 | ||||||
|  | 	BYTE $0x16; BYTE $0x05; BYTE $0x15; BYTE $0x0b
 | ||||||
|  | 	BYTE $0x0c; BYTE $0x0d; BYTE $0x0e; BYTE $0x0f
 | ||||||
|  | 	BYTE $0x10; BYTE $0x11; BYTE $0x12; BYTE $0x13
 | ||||||
|  | 	BYTE $0x3c; BYTE $0x3d; BYTE $0x32; BYTE $0x26
 | ||||||
|  | 	BYTE $0x18; BYTE $0x19; BYTE $0x3f; BYTE $0x27
 | ||||||
|  | 	BYTE $0x1c; BYTE $0x1d; BYTE $0x1e; BYTE $0x1f
 | ||||||
|  | 	BYTE $0x40; BYTE $0x5a; BYTE $0x7f; BYTE $0x7b
 | ||||||
|  | 	BYTE $0x5b; BYTE $0x6c; BYTE $0x50; BYTE $0x7d
 | ||||||
|  | 	BYTE $0x4d; BYTE $0x5d; BYTE $0x5c; BYTE $0x4e
 | ||||||
|  | 	BYTE $0x6b; BYTE $0x60; BYTE $0x4b; BYTE $0x61
 | ||||||
|  | 	BYTE $0xf0; BYTE $0xf1; BYTE $0xf2; BYTE $0xf3
 | ||||||
|  | 	BYTE $0xf4; BYTE $0xf5; BYTE $0xf6; BYTE $0xf7
 | ||||||
|  | 	BYTE $0xf8; BYTE $0xf9; BYTE $0x7a; BYTE $0x5e
 | ||||||
|  | 	BYTE $0x4c; BYTE $0x7e; BYTE $0x6e; BYTE $0x6f
 | ||||||
|  | 	BYTE $0x7c; BYTE $0xc1; BYTE $0xc2; BYTE $0xc3
 | ||||||
|  | 	BYTE $0xc4; BYTE $0xc5; BYTE $0xc6; BYTE $0xc7
 | ||||||
|  | 	BYTE $0xc8; BYTE $0xc9; BYTE $0xd1; BYTE $0xd2
 | ||||||
|  | 	BYTE $0xd3; BYTE $0xd4; BYTE $0xd5; BYTE $0xd6
 | ||||||
|  | 	BYTE $0xd7; BYTE $0xd8; BYTE $0xd9; BYTE $0xe2
 | ||||||
|  | 	BYTE $0xe3; BYTE $0xe4; BYTE $0xe5; BYTE $0xe6
 | ||||||
|  | 	BYTE $0xe7; BYTE $0xe8; BYTE $0xe9; BYTE $0xad
 | ||||||
|  | 	BYTE $0xe0; BYTE $0xbd; BYTE $0x5f; BYTE $0x6d
 | ||||||
|  | 	BYTE $0x79; BYTE $0x81; BYTE $0x82; BYTE $0x83
 | ||||||
|  | 	BYTE $0x84; BYTE $0x85; BYTE $0x86; BYTE $0x87
 | ||||||
|  | 	BYTE $0x88; BYTE $0x89; BYTE $0x91; BYTE $0x92
 | ||||||
|  | 	BYTE $0x93; BYTE $0x94; BYTE $0x95; BYTE $0x96
 | ||||||
|  | 	BYTE $0x97; BYTE $0x98; BYTE $0x99; BYTE $0xa2
 | ||||||
|  | 	BYTE $0xa3; BYTE $0xa4; BYTE $0xa5; BYTE $0xa6
 | ||||||
|  | 	BYTE $0xa7; BYTE $0xa8; BYTE $0xa9; BYTE $0xc0
 | ||||||
|  | 	BYTE $0x4f; BYTE $0xd0; BYTE $0xa1; BYTE $0x07
 | ||||||
|  | 	BYTE $0x20; BYTE $0x21; BYTE $0x22; BYTE $0x23
 | ||||||
|  | 	BYTE $0x24; BYTE $0x25; BYTE $0x06; BYTE $0x17
 | ||||||
|  | 	BYTE $0x28; BYTE $0x29; BYTE $0x2a; BYTE $0x2b
 | ||||||
|  | 	BYTE $0x2c; BYTE $0x09; BYTE $0x0a; BYTE $0x1b
 | ||||||
|  | 	BYTE $0x30; BYTE $0x31; BYTE $0x1a; BYTE $0x33
 | ||||||
|  | 	BYTE $0x34; BYTE $0x35; BYTE $0x36; BYTE $0x08
 | ||||||
|  | 	BYTE $0x38; BYTE $0x39; BYTE $0x3a; BYTE $0x3b
 | ||||||
|  | 	BYTE $0x04; BYTE $0x14; BYTE $0x3e; BYTE $0xff
 | ||||||
|  | 	BYTE $0x41; BYTE $0xaa; BYTE $0x4a; BYTE $0xb1
 | ||||||
|  | 	BYTE $0x9f; BYTE $0xb2; BYTE $0x6a; BYTE $0xb5
 | ||||||
|  | 	BYTE $0xbb; BYTE $0xb4; BYTE $0x9a; BYTE $0x8a
 | ||||||
|  | 	BYTE $0xb0; BYTE $0xca; BYTE $0xaf; BYTE $0xbc
 | ||||||
|  | 	BYTE $0x90; BYTE $0x8f; BYTE $0xea; BYTE $0xfa
 | ||||||
|  | 	BYTE $0xbe; BYTE $0xa0; BYTE $0xb6; BYTE $0xb3
 | ||||||
|  | 	BYTE $0x9d; BYTE $0xda; BYTE $0x9b; BYTE $0x8b
 | ||||||
|  | 	BYTE $0xb7; BYTE $0xb8; BYTE $0xb9; BYTE $0xab
 | ||||||
|  | 	BYTE $0x64; BYTE $0x65; BYTE $0x62; BYTE $0x66
 | ||||||
|  | 	BYTE $0x63; BYTE $0x67; BYTE $0x9e; BYTE $0x68
 | ||||||
|  | 	BYTE $0x74; BYTE $0x71; BYTE $0x72; BYTE $0x73
 | ||||||
|  | 	BYTE $0x78; BYTE $0x75; BYTE $0x76; BYTE $0x77
 | ||||||
|  | 	BYTE $0xac; BYTE $0x69; BYTE $0xed; BYTE $0xee
 | ||||||
|  | 	BYTE $0xeb; BYTE $0xef; BYTE $0xec; BYTE $0xbf
 | ||||||
|  | 	BYTE $0x80; BYTE $0xfd; BYTE $0xfe; BYTE $0xfb
 | ||||||
|  | 	BYTE $0xfc; BYTE $0xba; BYTE $0xae; BYTE $0x59
 | ||||||
|  | 	BYTE $0x44; BYTE $0x45; BYTE $0x42; BYTE $0x46
 | ||||||
|  | 	BYTE $0x43; BYTE $0x47; BYTE $0x9c; BYTE $0x48
 | ||||||
|  | 	BYTE $0x54; BYTE $0x51; BYTE $0x52; BYTE $0x53
 | ||||||
|  | 	BYTE $0x58; BYTE $0x55; BYTE $0x56; BYTE $0x57
 | ||||||
|  | 	BYTE $0x8c; BYTE $0x49; BYTE $0xcd; BYTE $0xce
 | ||||||
|  | 	BYTE $0xcb; BYTE $0xcf; BYTE $0xcc; BYTE $0xe1
 | ||||||
|  | 	BYTE $0x70; BYTE $0xdd; BYTE $0xde; BYTE $0xdb
 | ||||||
|  | 	BYTE $0xdc; BYTE $0x8d; BYTE $0x8e; BYTE $0xdf
 | ||||||
|  | 
 | ||||||
|  | retry: | ||||||
|  | 	WORD $0xB9931022 // TROO 2,2,b'0001' | ||||||
|  | 	BVS  retry | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | //   func e2a(arr [] byte) | ||||||
|  | //   code page conversion from  1047 to 819 | ||||||
|  | TEXT ·E2a(SB), NOSPLIT|NOFRAME, $0 | ||||||
|  | 	MOVD arg_base+0(FP), R2                        // pointer to arry of characters | ||||||
|  | 	MOVD arg_len+8(FP), R3                         // count | ||||||
|  | 	XOR  R0, R0 | ||||||
|  | 	XOR  R1, R1 | ||||||
|  | 	BYTE $0xA7; BYTE $0x15; BYTE $0x00; BYTE $0x82 // BRAS 1,(2+(256/2))
 | ||||||
|  | 
 | ||||||
|  | 	// EBCDIC -> ASCII conversion table: | ||||||
|  | 	BYTE $0x00; BYTE $0x01; BYTE $0x02; BYTE $0x03
 | ||||||
|  | 	BYTE $0x9c; BYTE $0x09; BYTE $0x86; BYTE $0x7f
 | ||||||
|  | 	BYTE $0x97; BYTE $0x8d; BYTE $0x8e; BYTE $0x0b
 | ||||||
|  | 	BYTE $0x0c; BYTE $0x0d; BYTE $0x0e; BYTE $0x0f
 | ||||||
|  | 	BYTE $0x10; BYTE $0x11; BYTE $0x12; BYTE $0x13
 | ||||||
|  | 	BYTE $0x9d; BYTE $0x0a; BYTE $0x08; BYTE $0x87
 | ||||||
|  | 	BYTE $0x18; BYTE $0x19; BYTE $0x92; BYTE $0x8f
 | ||||||
|  | 	BYTE $0x1c; BYTE $0x1d; BYTE $0x1e; BYTE $0x1f
 | ||||||
|  | 	BYTE $0x80; BYTE $0x81; BYTE $0x82; BYTE $0x83
 | ||||||
|  | 	BYTE $0x84; BYTE $0x85; BYTE $0x17; BYTE $0x1b
 | ||||||
|  | 	BYTE $0x88; BYTE $0x89; BYTE $0x8a; BYTE $0x8b
 | ||||||
|  | 	BYTE $0x8c; BYTE $0x05; BYTE $0x06; BYTE $0x07
 | ||||||
|  | 	BYTE $0x90; BYTE $0x91; BYTE $0x16; BYTE $0x93
 | ||||||
|  | 	BYTE $0x94; BYTE $0x95; BYTE $0x96; BYTE $0x04
 | ||||||
|  | 	BYTE $0x98; BYTE $0x99; BYTE $0x9a; BYTE $0x9b
 | ||||||
|  | 	BYTE $0x14; BYTE $0x15; BYTE $0x9e; BYTE $0x1a
 | ||||||
|  | 	BYTE $0x20; BYTE $0xa0; BYTE $0xe2; BYTE $0xe4
 | ||||||
|  | 	BYTE $0xe0; BYTE $0xe1; BYTE $0xe3; BYTE $0xe5
 | ||||||
|  | 	BYTE $0xe7; BYTE $0xf1; BYTE $0xa2; BYTE $0x2e
 | ||||||
|  | 	BYTE $0x3c; BYTE $0x28; BYTE $0x2b; BYTE $0x7c
 | ||||||
|  | 	BYTE $0x26; BYTE $0xe9; BYTE $0xea; BYTE $0xeb
 | ||||||
|  | 	BYTE $0xe8; BYTE $0xed; BYTE $0xee; BYTE $0xef
 | ||||||
|  | 	BYTE $0xec; BYTE $0xdf; BYTE $0x21; BYTE $0x24
 | ||||||
|  | 	BYTE $0x2a; BYTE $0x29; BYTE $0x3b; BYTE $0x5e
 | ||||||
|  | 	BYTE $0x2d; BYTE $0x2f; BYTE $0xc2; BYTE $0xc4
 | ||||||
|  | 	BYTE $0xc0; BYTE $0xc1; BYTE $0xc3; BYTE $0xc5
 | ||||||
|  | 	BYTE $0xc7; BYTE $0xd1; BYTE $0xa6; BYTE $0x2c
 | ||||||
|  | 	BYTE $0x25; BYTE $0x5f; BYTE $0x3e; BYTE $0x3f
 | ||||||
|  | 	BYTE $0xf8; BYTE $0xc9; BYTE $0xca; BYTE $0xcb
 | ||||||
|  | 	BYTE $0xc8; BYTE $0xcd; BYTE $0xce; BYTE $0xcf
 | ||||||
|  | 	BYTE $0xcc; BYTE $0x60; BYTE $0x3a; BYTE $0x23
 | ||||||
|  | 	BYTE $0x40; BYTE $0x27; BYTE $0x3d; BYTE $0x22
 | ||||||
|  | 	BYTE $0xd8; BYTE $0x61; BYTE $0x62; BYTE $0x63
 | ||||||
|  | 	BYTE $0x64; BYTE $0x65; BYTE $0x66; BYTE $0x67
 | ||||||
|  | 	BYTE $0x68; BYTE $0x69; BYTE $0xab; BYTE $0xbb
 | ||||||
|  | 	BYTE $0xf0; BYTE $0xfd; BYTE $0xfe; BYTE $0xb1
 | ||||||
|  | 	BYTE $0xb0; BYTE $0x6a; BYTE $0x6b; BYTE $0x6c
 | ||||||
|  | 	BYTE $0x6d; BYTE $0x6e; BYTE $0x6f; BYTE $0x70
 | ||||||
|  | 	BYTE $0x71; BYTE $0x72; BYTE $0xaa; BYTE $0xba
 | ||||||
|  | 	BYTE $0xe6; BYTE $0xb8; BYTE $0xc6; BYTE $0xa4
 | ||||||
|  | 	BYTE $0xb5; BYTE $0x7e; BYTE $0x73; BYTE $0x74
 | ||||||
|  | 	BYTE $0x75; BYTE $0x76; BYTE $0x77; BYTE $0x78
 | ||||||
|  | 	BYTE $0x79; BYTE $0x7a; BYTE $0xa1; BYTE $0xbf
 | ||||||
|  | 	BYTE $0xd0; BYTE $0x5b; BYTE $0xde; BYTE $0xae
 | ||||||
|  | 	BYTE $0xac; BYTE $0xa3; BYTE $0xa5; BYTE $0xb7
 | ||||||
|  | 	BYTE $0xa9; BYTE $0xa7; BYTE $0xb6; BYTE $0xbc
 | ||||||
|  | 	BYTE $0xbd; BYTE $0xbe; BYTE $0xdd; BYTE $0xa8
 | ||||||
|  | 	BYTE $0xaf; BYTE $0x5d; BYTE $0xb4; BYTE $0xd7
 | ||||||
|  | 	BYTE $0x7b; BYTE $0x41; BYTE $0x42; BYTE $0x43
 | ||||||
|  | 	BYTE $0x44; BYTE $0x45; BYTE $0x46; BYTE $0x47
 | ||||||
|  | 	BYTE $0x48; BYTE $0x49; BYTE $0xad; BYTE $0xf4
 | ||||||
|  | 	BYTE $0xf6; BYTE $0xf2; BYTE $0xf3; BYTE $0xf5
 | ||||||
|  | 	BYTE $0x7d; BYTE $0x4a; BYTE $0x4b; BYTE $0x4c
 | ||||||
|  | 	BYTE $0x4d; BYTE $0x4e; BYTE $0x4f; BYTE $0x50
 | ||||||
|  | 	BYTE $0x51; BYTE $0x52; BYTE $0xb9; BYTE $0xfb
 | ||||||
|  | 	BYTE $0xfc; BYTE $0xf9; BYTE $0xfa; BYTE $0xff
 | ||||||
|  | 	BYTE $0x5c; BYTE $0xf7; BYTE $0x53; BYTE $0x54
 | ||||||
|  | 	BYTE $0x55; BYTE $0x56; BYTE $0x57; BYTE $0x58
 | ||||||
|  | 	BYTE $0x59; BYTE $0x5a; BYTE $0xb2; BYTE $0xd4
 | ||||||
|  | 	BYTE $0xd6; BYTE $0xd2; BYTE $0xd3; BYTE $0xd5
 | ||||||
|  | 	BYTE $0x30; BYTE $0x31; BYTE $0x32; BYTE $0x33
 | ||||||
|  | 	BYTE $0x34; BYTE $0x35; BYTE $0x36; BYTE $0x37
 | ||||||
|  | 	BYTE $0x38; BYTE $0x39; BYTE $0xb3; BYTE $0xdb
 | ||||||
|  | 	BYTE $0xdc; BYTE $0xd9; BYTE $0xda; BYTE $0x9f
 | ||||||
|  | 
 | ||||||
|  | retry: | ||||||
|  | 	WORD $0xB9931022 // TROO 2,2,b'0001' | ||||||
|  | 	BVS  retry | ||||||
|  | 	RET | ||||||
							
								
								
									
										220
									
								
								vendor/golang.org/x/sys/unix/epoll_zos.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										220
									
								
								vendor/golang.org/x/sys/unix/epoll_zos.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -1,220 +0,0 @@ | ||||||
| // Copyright 2020 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 zos && s390x |  | ||||||
| 
 |  | ||||||
| package unix |  | ||||||
| 
 |  | ||||||
| import ( |  | ||||||
| 	"sync" |  | ||||||
| ) |  | ||||||
| 
 |  | ||||||
| // This file simulates epoll on z/OS using poll. |  | ||||||
| 
 |  | ||||||
| // Analogous to epoll_event on Linux. |  | ||||||
| // TODO(neeilan): Pad is because the Linux kernel expects a 96-bit struct. We never pass this to the kernel; remove? |  | ||||||
| type EpollEvent struct { |  | ||||||
| 	Events uint32 |  | ||||||
| 	Fd     int32 |  | ||||||
| 	Pad    int32 |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| const ( |  | ||||||
| 	EPOLLERR      = 0x8 |  | ||||||
| 	EPOLLHUP      = 0x10 |  | ||||||
| 	EPOLLIN       = 0x1 |  | ||||||
| 	EPOLLMSG      = 0x400 |  | ||||||
| 	EPOLLOUT      = 0x4 |  | ||||||
| 	EPOLLPRI      = 0x2 |  | ||||||
| 	EPOLLRDBAND   = 0x80 |  | ||||||
| 	EPOLLRDNORM   = 0x40 |  | ||||||
| 	EPOLLWRBAND   = 0x200 |  | ||||||
| 	EPOLLWRNORM   = 0x100 |  | ||||||
| 	EPOLL_CTL_ADD = 0x1 |  | ||||||
| 	EPOLL_CTL_DEL = 0x2 |  | ||||||
| 	EPOLL_CTL_MOD = 0x3 |  | ||||||
| 	// The following constants are part of the epoll API, but represent |  | ||||||
| 	// currently unsupported functionality on z/OS. |  | ||||||
| 	// EPOLL_CLOEXEC  = 0x80000 |  | ||||||
| 	// EPOLLET        = 0x80000000 |  | ||||||
| 	// EPOLLONESHOT   = 0x40000000 |  | ||||||
| 	// EPOLLRDHUP     = 0x2000     // Typically used with edge-triggered notis |  | ||||||
| 	// EPOLLEXCLUSIVE = 0x10000000 // Exclusive wake-up mode |  | ||||||
| 	// EPOLLWAKEUP    = 0x20000000 // Relies on Linux's BLOCK_SUSPEND capability |  | ||||||
| ) |  | ||||||
| 
 |  | ||||||
| // TODO(neeilan): We can eliminate these epToPoll / pToEpoll calls by using identical mask values for POLL/EPOLL |  | ||||||
| // constants where possible The lower 16 bits of epoll events (uint32) can fit any system poll event (int16). |  | ||||||
| 
 |  | ||||||
| // epToPollEvt converts epoll event field to poll equivalent. |  | ||||||
| // In epoll, Events is a 32-bit field, while poll uses 16 bits. |  | ||||||
| func epToPollEvt(events uint32) int16 { |  | ||||||
| 	var ep2p = map[uint32]int16{ |  | ||||||
| 		EPOLLIN:  POLLIN, |  | ||||||
| 		EPOLLOUT: POLLOUT, |  | ||||||
| 		EPOLLHUP: POLLHUP, |  | ||||||
| 		EPOLLPRI: POLLPRI, |  | ||||||
| 		EPOLLERR: POLLERR, |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	var pollEvts int16 = 0 |  | ||||||
| 	for epEvt, pEvt := range ep2p { |  | ||||||
| 		if (events & epEvt) != 0 { |  | ||||||
| 			pollEvts |= pEvt |  | ||||||
| 		} |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	return pollEvts |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| // pToEpollEvt converts 16 bit poll event bitfields to 32-bit epoll event fields. |  | ||||||
| func pToEpollEvt(revents int16) uint32 { |  | ||||||
| 	var p2ep = map[int16]uint32{ |  | ||||||
| 		POLLIN:  EPOLLIN, |  | ||||||
| 		POLLOUT: EPOLLOUT, |  | ||||||
| 		POLLHUP: EPOLLHUP, |  | ||||||
| 		POLLPRI: EPOLLPRI, |  | ||||||
| 		POLLERR: EPOLLERR, |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	var epollEvts uint32 = 0 |  | ||||||
| 	for pEvt, epEvt := range p2ep { |  | ||||||
| 		if (revents & pEvt) != 0 { |  | ||||||
| 			epollEvts |= epEvt |  | ||||||
| 		} |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	return epollEvts |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| // Per-process epoll implementation. |  | ||||||
| type epollImpl struct { |  | ||||||
| 	mu       sync.Mutex |  | ||||||
| 	epfd2ep  map[int]*eventPoll |  | ||||||
| 	nextEpfd int |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| // eventPoll holds a set of file descriptors being watched by the process. A process can have multiple epoll instances. |  | ||||||
| // On Linux, this is an in-kernel data structure accessed through a fd. |  | ||||||
| type eventPoll struct { |  | ||||||
| 	mu  sync.Mutex |  | ||||||
| 	fds map[int]*EpollEvent |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| // epoll impl for this process. |  | ||||||
| var impl epollImpl = epollImpl{ |  | ||||||
| 	epfd2ep:  make(map[int]*eventPoll), |  | ||||||
| 	nextEpfd: 0, |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func (e *epollImpl) epollcreate(size int) (epfd int, err error) { |  | ||||||
| 	e.mu.Lock() |  | ||||||
| 	defer e.mu.Unlock() |  | ||||||
| 	epfd = e.nextEpfd |  | ||||||
| 	e.nextEpfd++ |  | ||||||
| 
 |  | ||||||
| 	e.epfd2ep[epfd] = &eventPoll{ |  | ||||||
| 		fds: make(map[int]*EpollEvent), |  | ||||||
| 	} |  | ||||||
| 	return epfd, nil |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func (e *epollImpl) epollcreate1(flag int) (fd int, err error) { |  | ||||||
| 	return e.epollcreate(4) |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func (e *epollImpl) epollctl(epfd int, op int, fd int, event *EpollEvent) (err error) { |  | ||||||
| 	e.mu.Lock() |  | ||||||
| 	defer e.mu.Unlock() |  | ||||||
| 
 |  | ||||||
| 	ep, ok := e.epfd2ep[epfd] |  | ||||||
| 	if !ok { |  | ||||||
| 
 |  | ||||||
| 		return EBADF |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	switch op { |  | ||||||
| 	case EPOLL_CTL_ADD: |  | ||||||
| 		// TODO(neeilan): When we make epfds and fds disjoint, detect epoll |  | ||||||
| 		// loops here (instances watching each other) and return ELOOP. |  | ||||||
| 		if _, ok := ep.fds[fd]; ok { |  | ||||||
| 			return EEXIST |  | ||||||
| 		} |  | ||||||
| 		ep.fds[fd] = event |  | ||||||
| 	case EPOLL_CTL_MOD: |  | ||||||
| 		if _, ok := ep.fds[fd]; !ok { |  | ||||||
| 			return ENOENT |  | ||||||
| 		} |  | ||||||
| 		ep.fds[fd] = event |  | ||||||
| 	case EPOLL_CTL_DEL: |  | ||||||
| 		if _, ok := ep.fds[fd]; !ok { |  | ||||||
| 			return ENOENT |  | ||||||
| 		} |  | ||||||
| 		delete(ep.fds, fd) |  | ||||||
| 
 |  | ||||||
| 	} |  | ||||||
| 	return nil |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| // Must be called while holding ep.mu |  | ||||||
| func (ep *eventPoll) getFds() []int { |  | ||||||
| 	fds := make([]int, len(ep.fds)) |  | ||||||
| 	for fd := range ep.fds { |  | ||||||
| 		fds = append(fds, fd) |  | ||||||
| 	} |  | ||||||
| 	return fds |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func (e *epollImpl) epollwait(epfd int, events []EpollEvent, msec int) (n int, err error) { |  | ||||||
| 	e.mu.Lock() // in [rare] case of concurrent epollcreate + epollwait |  | ||||||
| 	ep, ok := e.epfd2ep[epfd] |  | ||||||
| 
 |  | ||||||
| 	if !ok { |  | ||||||
| 		e.mu.Unlock() |  | ||||||
| 		return 0, EBADF |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	pollfds := make([]PollFd, 4) |  | ||||||
| 	for fd, epollevt := range ep.fds { |  | ||||||
| 		pollfds = append(pollfds, PollFd{Fd: int32(fd), Events: epToPollEvt(epollevt.Events)}) |  | ||||||
| 	} |  | ||||||
| 	e.mu.Unlock() |  | ||||||
| 
 |  | ||||||
| 	n, err = Poll(pollfds, msec) |  | ||||||
| 	if err != nil { |  | ||||||
| 		return n, err |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	i := 0 |  | ||||||
| 	for _, pFd := range pollfds { |  | ||||||
| 		if pFd.Revents != 0 { |  | ||||||
| 			events[i] = EpollEvent{Fd: pFd.Fd, Events: pToEpollEvt(pFd.Revents)} |  | ||||||
| 			i++ |  | ||||||
| 		} |  | ||||||
| 
 |  | ||||||
| 		if i == n { |  | ||||||
| 			break |  | ||||||
| 		} |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	return n, nil |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func EpollCreate(size int) (fd int, err error) { |  | ||||||
| 	return impl.epollcreate(size) |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func EpollCreate1(flag int) (fd int, err error) { |  | ||||||
| 	return impl.epollcreate1(flag) |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) { |  | ||||||
| 	return impl.epollctl(epfd, op, fd, event) |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| // Because EpollWait mutates events, the caller is expected to coordinate |  | ||||||
| // concurrent access if calling with the same epfd from multiple goroutines. |  | ||||||
| func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { |  | ||||||
| 	return impl.epollwait(epfd, events, msec) |  | ||||||
| } |  | ||||||
							
								
								
									
										163
									
								
								vendor/golang.org/x/sys/unix/fstatfs_zos.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										163
									
								
								vendor/golang.org/x/sys/unix/fstatfs_zos.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -1,163 +0,0 @@ | ||||||
| // Copyright 2020 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 zos && s390x |  | ||||||
| 
 |  | ||||||
| package unix |  | ||||||
| 
 |  | ||||||
| import ( |  | ||||||
| 	"unsafe" |  | ||||||
| ) |  | ||||||
| 
 |  | ||||||
| // This file simulates fstatfs on z/OS using fstatvfs and w_getmntent. |  | ||||||
| 
 |  | ||||||
| func Fstatfs(fd int, stat *Statfs_t) (err error) { |  | ||||||
| 	var stat_v Statvfs_t |  | ||||||
| 	err = Fstatvfs(fd, &stat_v) |  | ||||||
| 	if err == nil { |  | ||||||
| 		// populate stat |  | ||||||
| 		stat.Type = 0 |  | ||||||
| 		stat.Bsize = stat_v.Bsize |  | ||||||
| 		stat.Blocks = stat_v.Blocks |  | ||||||
| 		stat.Bfree = stat_v.Bfree |  | ||||||
| 		stat.Bavail = stat_v.Bavail |  | ||||||
| 		stat.Files = stat_v.Files |  | ||||||
| 		stat.Ffree = stat_v.Ffree |  | ||||||
| 		stat.Fsid = stat_v.Fsid |  | ||||||
| 		stat.Namelen = stat_v.Namemax |  | ||||||
| 		stat.Frsize = stat_v.Frsize |  | ||||||
| 		stat.Flags = stat_v.Flag |  | ||||||
| 		for passn := 0; passn < 5; passn++ { |  | ||||||
| 			switch passn { |  | ||||||
| 			case 0: |  | ||||||
| 				err = tryGetmntent64(stat) |  | ||||||
| 				break |  | ||||||
| 			case 1: |  | ||||||
| 				err = tryGetmntent128(stat) |  | ||||||
| 				break |  | ||||||
| 			case 2: |  | ||||||
| 				err = tryGetmntent256(stat) |  | ||||||
| 				break |  | ||||||
| 			case 3: |  | ||||||
| 				err = tryGetmntent512(stat) |  | ||||||
| 				break |  | ||||||
| 			case 4: |  | ||||||
| 				err = tryGetmntent1024(stat) |  | ||||||
| 				break |  | ||||||
| 			default: |  | ||||||
| 				break |  | ||||||
| 			} |  | ||||||
| 			//proceed to return if: err is nil (found), err is nonnil but not ERANGE (another error occurred) |  | ||||||
| 			if err == nil || err != nil && err != ERANGE { |  | ||||||
| 				break |  | ||||||
| 			} |  | ||||||
| 		} |  | ||||||
| 	} |  | ||||||
| 	return err |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func tryGetmntent64(stat *Statfs_t) (err error) { |  | ||||||
| 	var mnt_ent_buffer struct { |  | ||||||
| 		header       W_Mnth |  | ||||||
| 		filesys_info [64]W_Mntent |  | ||||||
| 	} |  | ||||||
| 	var buffer_size int = int(unsafe.Sizeof(mnt_ent_buffer)) |  | ||||||
| 	fs_count, err := W_Getmntent((*byte)(unsafe.Pointer(&mnt_ent_buffer)), buffer_size) |  | ||||||
| 	if err != nil { |  | ||||||
| 		return err |  | ||||||
| 	} |  | ||||||
| 	err = ERANGE //return ERANGE if no match is found in this batch |  | ||||||
| 	for i := 0; i < fs_count; i++ { |  | ||||||
| 		if stat.Fsid == uint64(mnt_ent_buffer.filesys_info[i].Dev) { |  | ||||||
| 			stat.Type = uint32(mnt_ent_buffer.filesys_info[i].Fstname[0]) |  | ||||||
| 			err = nil |  | ||||||
| 			break |  | ||||||
| 		} |  | ||||||
| 	} |  | ||||||
| 	return err |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func tryGetmntent128(stat *Statfs_t) (err error) { |  | ||||||
| 	var mnt_ent_buffer struct { |  | ||||||
| 		header       W_Mnth |  | ||||||
| 		filesys_info [128]W_Mntent |  | ||||||
| 	} |  | ||||||
| 	var buffer_size int = int(unsafe.Sizeof(mnt_ent_buffer)) |  | ||||||
| 	fs_count, err := W_Getmntent((*byte)(unsafe.Pointer(&mnt_ent_buffer)), buffer_size) |  | ||||||
| 	if err != nil { |  | ||||||
| 		return err |  | ||||||
| 	} |  | ||||||
| 	err = ERANGE //return ERANGE if no match is found in this batch |  | ||||||
| 	for i := 0; i < fs_count; i++ { |  | ||||||
| 		if stat.Fsid == uint64(mnt_ent_buffer.filesys_info[i].Dev) { |  | ||||||
| 			stat.Type = uint32(mnt_ent_buffer.filesys_info[i].Fstname[0]) |  | ||||||
| 			err = nil |  | ||||||
| 			break |  | ||||||
| 		} |  | ||||||
| 	} |  | ||||||
| 	return err |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func tryGetmntent256(stat *Statfs_t) (err error) { |  | ||||||
| 	var mnt_ent_buffer struct { |  | ||||||
| 		header       W_Mnth |  | ||||||
| 		filesys_info [256]W_Mntent |  | ||||||
| 	} |  | ||||||
| 	var buffer_size int = int(unsafe.Sizeof(mnt_ent_buffer)) |  | ||||||
| 	fs_count, err := W_Getmntent((*byte)(unsafe.Pointer(&mnt_ent_buffer)), buffer_size) |  | ||||||
| 	if err != nil { |  | ||||||
| 		return err |  | ||||||
| 	} |  | ||||||
| 	err = ERANGE //return ERANGE if no match is found in this batch |  | ||||||
| 	for i := 0; i < fs_count; i++ { |  | ||||||
| 		if stat.Fsid == uint64(mnt_ent_buffer.filesys_info[i].Dev) { |  | ||||||
| 			stat.Type = uint32(mnt_ent_buffer.filesys_info[i].Fstname[0]) |  | ||||||
| 			err = nil |  | ||||||
| 			break |  | ||||||
| 		} |  | ||||||
| 	} |  | ||||||
| 	return err |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func tryGetmntent512(stat *Statfs_t) (err error) { |  | ||||||
| 	var mnt_ent_buffer struct { |  | ||||||
| 		header       W_Mnth |  | ||||||
| 		filesys_info [512]W_Mntent |  | ||||||
| 	} |  | ||||||
| 	var buffer_size int = int(unsafe.Sizeof(mnt_ent_buffer)) |  | ||||||
| 	fs_count, err := W_Getmntent((*byte)(unsafe.Pointer(&mnt_ent_buffer)), buffer_size) |  | ||||||
| 	if err != nil { |  | ||||||
| 		return err |  | ||||||
| 	} |  | ||||||
| 	err = ERANGE //return ERANGE if no match is found in this batch |  | ||||||
| 	for i := 0; i < fs_count; i++ { |  | ||||||
| 		if stat.Fsid == uint64(mnt_ent_buffer.filesys_info[i].Dev) { |  | ||||||
| 			stat.Type = uint32(mnt_ent_buffer.filesys_info[i].Fstname[0]) |  | ||||||
| 			err = nil |  | ||||||
| 			break |  | ||||||
| 		} |  | ||||||
| 	} |  | ||||||
| 	return err |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| func tryGetmntent1024(stat *Statfs_t) (err error) { |  | ||||||
| 	var mnt_ent_buffer struct { |  | ||||||
| 		header       W_Mnth |  | ||||||
| 		filesys_info [1024]W_Mntent |  | ||||||
| 	} |  | ||||||
| 	var buffer_size int = int(unsafe.Sizeof(mnt_ent_buffer)) |  | ||||||
| 	fs_count, err := W_Getmntent((*byte)(unsafe.Pointer(&mnt_ent_buffer)), buffer_size) |  | ||||||
| 	if err != nil { |  | ||||||
| 		return err |  | ||||||
| 	} |  | ||||||
| 	err = ERANGE //return ERANGE if no match is found in this batch |  | ||||||
| 	for i := 0; i < fs_count; i++ { |  | ||||||
| 		if stat.Fsid == uint64(mnt_ent_buffer.filesys_info[i].Dev) { |  | ||||||
| 			stat.Type = uint32(mnt_ent_buffer.filesys_info[i].Fstname[0]) |  | ||||||
| 			err = nil |  | ||||||
| 			break |  | ||||||
| 		} |  | ||||||
| 	} |  | ||||||
| 	return err |  | ||||||
| } |  | ||||||
							
								
								
									
										2
									
								
								vendor/golang.org/x/sys/unix/pagesize_unix.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/golang.org/x/sys/unix/pagesize_unix.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -2,7 +2,7 @@ | ||||||
| // Use of this source code is governed by a BSD-style | // Use of this source code is governed by a BSD-style | ||||||
| // license that can be found in the LICENSE file. | // license that can be found in the LICENSE file. | ||||||
| 
 | 
 | ||||||
| //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris | //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos | ||||||
| 
 | 
 | ||||||
| // For Unix, get the pagesize from the runtime. | // For Unix, get the pagesize from the runtime. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
							
								
								
									
										2
									
								
								vendor/golang.org/x/sys/unix/readdirent_getdirentries.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/golang.org/x/sys/unix/readdirent_getdirentries.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -2,7 +2,7 @@ | ||||||
| // Use of this source code is governed by a BSD-style | // Use of this source code is governed by a BSD-style | ||||||
| // license that can be found in the LICENSE file. | // license that can be found in the LICENSE file. | ||||||
| 
 | 
 | ||||||
| //go:build darwin | //go:build darwin || zos | ||||||
| 
 | 
 | ||||||
| package unix | package unix | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
							
								
								
									
										58
									
								
								vendor/golang.org/x/sys/unix/sockcmsg_zos.go
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										58
									
								
								vendor/golang.org/x/sys/unix/sockcmsg_zos.go
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,58 @@ | ||||||
|  | // Copyright 2024 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. | ||||||
|  | 
 | ||||||
|  | // Socket control messages | ||||||
|  | 
 | ||||||
|  | package unix | ||||||
|  | 
 | ||||||
|  | import "unsafe" | ||||||
|  | 
 | ||||||
|  | // UnixCredentials encodes credentials into a socket control message | ||||||
|  | // for sending to another process. This can be used for | ||||||
|  | // authentication. | ||||||
|  | func UnixCredentials(ucred *Ucred) []byte { | ||||||
|  | 	b := make([]byte, CmsgSpace(SizeofUcred)) | ||||||
|  | 	h := (*Cmsghdr)(unsafe.Pointer(&b[0])) | ||||||
|  | 	h.Level = SOL_SOCKET | ||||||
|  | 	h.Type = SCM_CREDENTIALS | ||||||
|  | 	h.SetLen(CmsgLen(SizeofUcred)) | ||||||
|  | 	*(*Ucred)(h.data(0)) = *ucred | ||||||
|  | 	return b | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | // ParseUnixCredentials decodes a socket control message that contains | ||||||
|  | // credentials in a Ucred structure. To receive such a message, the | ||||||
|  | // SO_PASSCRED option must be enabled on the socket. | ||||||
|  | func ParseUnixCredentials(m *SocketControlMessage) (*Ucred, error) { | ||||||
|  | 	if m.Header.Level != SOL_SOCKET { | ||||||
|  | 		return nil, EINVAL | ||||||
|  | 	} | ||||||
|  | 	if m.Header.Type != SCM_CREDENTIALS { | ||||||
|  | 		return nil, EINVAL | ||||||
|  | 	} | ||||||
|  | 	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 | ||||||
|  | } | ||||||
							
								
								
									
										75
									
								
								vendor/golang.org/x/sys/unix/symaddr_zos_s390x.s
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								vendor/golang.org/x/sys/unix/symaddr_zos_s390x.s
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,75 @@ | ||||||
|  | // Copyright 2024 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 zos && s390x && gc | ||||||
|  | 
 | ||||||
|  | #include "textflag.h" | ||||||
|  | 
 | ||||||
|  | //  provide the address of function variable to be fixed up. | ||||||
|  | 
 | ||||||
|  | TEXT ·getPipe2Addr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Pipe2(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | TEXT ·get_FlockAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Flock(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | TEXT ·get_GetxattrAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Getxattr(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | TEXT ·get_NanosleepAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Nanosleep(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | TEXT ·get_SetxattrAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Setxattr(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | TEXT ·get_Wait4Addr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Wait4(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | TEXT ·get_MountAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Mount(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | TEXT ·get_UnmountAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Unmount(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | TEXT ·get_UtimesNanoAtAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·UtimesNanoAt(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | TEXT ·get_UtimesNanoAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·UtimesNano(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | TEXT ·get_MkfifoatAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Mkfifoat(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | TEXT ·get_ChtagAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Chtag(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | TEXT ·get_ReadlinkatAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Readlinkat(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 	 | ||||||
							
								
								
									
										1509
									
								
								vendor/golang.org/x/sys/unix/syscall_zos_s390x.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										1509
									
								
								vendor/golang.org/x/sys/unix/syscall_zos_s390x.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										2
									
								
								vendor/golang.org/x/sys/unix/sysvshm_unix.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/golang.org/x/sys/unix/sysvshm_unix.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -2,7 +2,7 @@ | ||||||
| // Use of this source code is governed by a BSD-style | // Use of this source code is governed by a BSD-style | ||||||
| // license that can be found in the LICENSE file. | // license that can be found in the LICENSE file. | ||||||
| 
 | 
 | ||||||
| //go:build (darwin && !ios) || linux | //go:build (darwin && !ios) || linux || zos | ||||||
| 
 | 
 | ||||||
| package unix | package unix | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
							
								
								
									
										2
									
								
								vendor/golang.org/x/sys/unix/sysvshm_unix_other.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/golang.org/x/sys/unix/sysvshm_unix_other.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -2,7 +2,7 @@ | ||||||
| // Use of this source code is governed by a BSD-style | // Use of this source code is governed by a BSD-style | ||||||
| // license that can be found in the LICENSE file. | // license that can be found in the LICENSE file. | ||||||
| 
 | 
 | ||||||
| //go:build darwin && !ios | //go:build (darwin && !ios) || zos | ||||||
| 
 | 
 | ||||||
| package unix | package unix | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
							
								
								
									
										9
									
								
								vendor/golang.org/x/sys/unix/zerrors_linux.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								vendor/golang.org/x/sys/unix/zerrors_linux.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -491,6 +491,7 @@ const ( | ||||||
| 	BPF_F_REPLACE                               = 0x4 | 	BPF_F_REPLACE                               = 0x4 | ||||||
| 	BPF_F_SLEEPABLE                             = 0x10 | 	BPF_F_SLEEPABLE                             = 0x10 | ||||||
| 	BPF_F_STRICT_ALIGNMENT                      = 0x1 | 	BPF_F_STRICT_ALIGNMENT                      = 0x1 | ||||||
|  | 	BPF_F_TEST_REG_INVARIANTS                   = 0x80 | ||||||
| 	BPF_F_TEST_RND_HI32                         = 0x4 | 	BPF_F_TEST_RND_HI32                         = 0x4 | ||||||
| 	BPF_F_TEST_RUN_ON_CPU                       = 0x1 | 	BPF_F_TEST_RUN_ON_CPU                       = 0x1 | ||||||
| 	BPF_F_TEST_STATE_FREQ                       = 0x8 | 	BPF_F_TEST_STATE_FREQ                       = 0x8 | ||||||
|  | @ -1697,6 +1698,7 @@ const ( | ||||||
| 	KEXEC_ARCH_S390                             = 0x160000 | 	KEXEC_ARCH_S390                             = 0x160000 | ||||||
| 	KEXEC_ARCH_SH                               = 0x2a0000 | 	KEXEC_ARCH_SH                               = 0x2a0000 | ||||||
| 	KEXEC_ARCH_X86_64                           = 0x3e0000 | 	KEXEC_ARCH_X86_64                           = 0x3e0000 | ||||||
|  | 	KEXEC_FILE_DEBUG                            = 0x8 | ||||||
| 	KEXEC_FILE_NO_INITRAMFS                     = 0x4 | 	KEXEC_FILE_NO_INITRAMFS                     = 0x4 | ||||||
| 	KEXEC_FILE_ON_CRASH                         = 0x2 | 	KEXEC_FILE_ON_CRASH                         = 0x2 | ||||||
| 	KEXEC_FILE_UNLOAD                           = 0x1 | 	KEXEC_FILE_UNLOAD                           = 0x1 | ||||||
|  | @ -1898,6 +1900,7 @@ const ( | ||||||
| 	MNT_DETACH                                  = 0x2 | 	MNT_DETACH                                  = 0x2 | ||||||
| 	MNT_EXPIRE                                  = 0x4 | 	MNT_EXPIRE                                  = 0x4 | ||||||
| 	MNT_FORCE                                   = 0x1 | 	MNT_FORCE                                   = 0x1 | ||||||
|  | 	MNT_ID_REQ_SIZE_VER0                        = 0x18 | ||||||
| 	MODULE_INIT_COMPRESSED_FILE                 = 0x4 | 	MODULE_INIT_COMPRESSED_FILE                 = 0x4 | ||||||
| 	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1 | 	MODULE_INIT_IGNORE_MODVERSIONS              = 0x1 | ||||||
| 	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2 | 	MODULE_INIT_IGNORE_VERMAGIC                 = 0x2 | ||||||
|  | @ -2302,6 +2305,7 @@ const ( | ||||||
| 	PERF_AUX_FLAG_PARTIAL                       = 0x4 | 	PERF_AUX_FLAG_PARTIAL                       = 0x4 | ||||||
| 	PERF_AUX_FLAG_PMU_FORMAT_TYPE_MASK          = 0xff00 | 	PERF_AUX_FLAG_PMU_FORMAT_TYPE_MASK          = 0xff00 | ||||||
| 	PERF_AUX_FLAG_TRUNCATED                     = 0x1 | 	PERF_AUX_FLAG_TRUNCATED                     = 0x1 | ||||||
|  | 	PERF_BRANCH_ENTRY_INFO_BITS_MAX             = 0x21 | ||||||
| 	PERF_BR_ARM64_DEBUG_DATA                    = 0x7 | 	PERF_BR_ARM64_DEBUG_DATA                    = 0x7 | ||||||
| 	PERF_BR_ARM64_DEBUG_EXIT                    = 0x5 | 	PERF_BR_ARM64_DEBUG_EXIT                    = 0x5 | ||||||
| 	PERF_BR_ARM64_DEBUG_HALT                    = 0x4 | 	PERF_BR_ARM64_DEBUG_HALT                    = 0x4 | ||||||
|  | @ -3168,6 +3172,7 @@ const ( | ||||||
| 	STATX_GID                                   = 0x10 | 	STATX_GID                                   = 0x10 | ||||||
| 	STATX_INO                                   = 0x100 | 	STATX_INO                                   = 0x100 | ||||||
| 	STATX_MNT_ID                                = 0x1000 | 	STATX_MNT_ID                                = 0x1000 | ||||||
|  | 	STATX_MNT_ID_UNIQUE                         = 0x4000 | ||||||
| 	STATX_MODE                                  = 0x2 | 	STATX_MODE                                  = 0x2 | ||||||
| 	STATX_MTIME                                 = 0x40 | 	STATX_MTIME                                 = 0x40 | ||||||
| 	STATX_NLINK                                 = 0x4 | 	STATX_NLINK                                 = 0x4 | ||||||
|  | @ -3562,12 +3567,16 @@ const ( | ||||||
| 	XDP_RX_RING                                 = 0x2 | 	XDP_RX_RING                                 = 0x2 | ||||||
| 	XDP_SHARED_UMEM                             = 0x1 | 	XDP_SHARED_UMEM                             = 0x1 | ||||||
| 	XDP_STATISTICS                              = 0x7 | 	XDP_STATISTICS                              = 0x7 | ||||||
|  | 	XDP_TXMD_FLAGS_CHECKSUM                     = 0x2 | ||||||
|  | 	XDP_TXMD_FLAGS_TIMESTAMP                    = 0x1 | ||||||
|  | 	XDP_TX_METADATA                             = 0x2 | ||||||
| 	XDP_TX_RING                                 = 0x3 | 	XDP_TX_RING                                 = 0x3 | ||||||
| 	XDP_UMEM_COMPLETION_RING                    = 0x6 | 	XDP_UMEM_COMPLETION_RING                    = 0x6 | ||||||
| 	XDP_UMEM_FILL_RING                          = 0x5 | 	XDP_UMEM_FILL_RING                          = 0x5 | ||||||
| 	XDP_UMEM_PGOFF_COMPLETION_RING              = 0x180000000 | 	XDP_UMEM_PGOFF_COMPLETION_RING              = 0x180000000 | ||||||
| 	XDP_UMEM_PGOFF_FILL_RING                    = 0x100000000 | 	XDP_UMEM_PGOFF_FILL_RING                    = 0x100000000 | ||||||
| 	XDP_UMEM_REG                                = 0x4 | 	XDP_UMEM_REG                                = 0x4 | ||||||
|  | 	XDP_UMEM_TX_SW_CSUM                         = 0x2 | ||||||
| 	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1 | 	XDP_UMEM_UNALIGNED_CHUNK_FLAG               = 0x1 | ||||||
| 	XDP_USE_NEED_WAKEUP                         = 0x8 | 	XDP_USE_NEED_WAKEUP                         = 0x8 | ||||||
| 	XDP_USE_SG                                  = 0x10 | 	XDP_USE_SG                                  = 0x10 | ||||||
|  |  | ||||||
							
								
								
									
										233
									
								
								vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										233
									
								
								vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -10,41 +10,99 @@ | ||||||
| package unix | package unix | ||||||
| 
 | 
 | ||||||
| const ( | const ( | ||||||
| 	BRKINT                          = 0x0001 | 	BRKINT                   = 0x0001 | ||||||
| 	CLOCK_MONOTONIC                 = 0x1 | 	CLOCAL                   = 0x1 | ||||||
| 	CLOCK_PROCESS_CPUTIME_ID        = 0x2 | 	CLOCK_MONOTONIC          = 0x1 | ||||||
| 	CLOCK_REALTIME                  = 0x0 | 	CLOCK_PROCESS_CPUTIME_ID = 0x2 | ||||||
| 	CLOCK_THREAD_CPUTIME_ID         = 0x3 | 	CLOCK_REALTIME           = 0x0 | ||||||
| 	CS8                             = 0x0030 | 	CLOCK_THREAD_CPUTIME_ID  = 0x3 | ||||||
| 	CSIZE                           = 0x0030 | 	CLONE_NEWIPC             = 0x08000000 | ||||||
| 	ECHO                            = 0x00000008 | 	CLONE_NEWNET             = 0x40000000 | ||||||
| 	ECHONL                          = 0x00000001 | 	CLONE_NEWNS              = 0x00020000 | ||||||
| 	FD_CLOEXEC                      = 0x01 | 	CLONE_NEWPID             = 0x20000000 | ||||||
| 	FD_CLOFORK                      = 0x02 | 	CLONE_NEWUTS             = 0x04000000 | ||||||
| 	FNDELAY                         = 0x04 | 	CLONE_PARENT             = 0x00008000 | ||||||
| 	F_CLOSFD                        = 9 | 	CS8                      = 0x0030 | ||||||
| 	F_CONTROL_CVT                   = 13 | 	CSIZE                    = 0x0030 | ||||||
| 	F_DUPFD                         = 0 | 	ECHO                     = 0x00000008 | ||||||
| 	F_DUPFD2                        = 8 | 	ECHONL                   = 0x00000001 | ||||||
| 	F_GETFD                         = 1 | 	EFD_SEMAPHORE            = 0x00002000 | ||||||
| 	F_GETFL                         = 259 | 	EFD_CLOEXEC              = 0x00001000 | ||||||
| 	F_GETLK                         = 5 | 	EFD_NONBLOCK             = 0x00000004 | ||||||
| 	F_GETOWN                        = 10 | 	EPOLL_CLOEXEC            = 0x00001000 | ||||||
| 	F_OK                            = 0x0 | 	EPOLL_CTL_ADD            = 0 | ||||||
| 	F_RDLCK                         = 1 | 	EPOLL_CTL_MOD            = 1 | ||||||
| 	F_SETFD                         = 2 | 	EPOLL_CTL_DEL            = 2 | ||||||
| 	F_SETFL                         = 4 | 	EPOLLRDNORM              = 0x0001 | ||||||
| 	F_SETLK                         = 6 | 	EPOLLRDBAND              = 0x0002 | ||||||
| 	F_SETLKW                        = 7 | 	EPOLLIN                  = 0x0003 | ||||||
| 	F_SETOWN                        = 11 | 	EPOLLOUT                 = 0x0004 | ||||||
| 	F_SETTAG                        = 12 | 	EPOLLWRBAND              = 0x0008 | ||||||
| 	F_UNLCK                         = 3 | 	EPOLLPRI                 = 0x0010 | ||||||
| 	F_WRLCK                         = 2 | 	EPOLLERR                 = 0x0020 | ||||||
| 	FSTYPE_ZFS                      = 0xe9 //"Z" | 	EPOLLHUP                 = 0x0040 | ||||||
| 	FSTYPE_HFS                      = 0xc8 //"H" | 	EPOLLEXCLUSIVE           = 0x20000000 | ||||||
| 	FSTYPE_NFS                      = 0xd5 //"N" | 	EPOLLONESHOT             = 0x40000000 | ||||||
| 	FSTYPE_TFS                      = 0xe3 //"T" | 	FD_CLOEXEC               = 0x01 | ||||||
| 	FSTYPE_AUTOMOUNT                = 0xc1 //"A" | 	FD_CLOFORK               = 0x02 | ||||||
|  | 	FD_SETSIZE               = 0x800 | ||||||
|  | 	FNDELAY                  = 0x04 | ||||||
|  | 	F_CLOSFD                 = 9 | ||||||
|  | 	F_CONTROL_CVT            = 13 | ||||||
|  | 	F_DUPFD                  = 0 | ||||||
|  | 	F_DUPFD2                 = 8 | ||||||
|  | 	F_GETFD                  = 1 | ||||||
|  | 	F_GETFL                  = 259 | ||||||
|  | 	F_GETLK                  = 5 | ||||||
|  | 	F_GETOWN                 = 10 | ||||||
|  | 	F_OK                     = 0x0 | ||||||
|  | 	F_RDLCK                  = 1 | ||||||
|  | 	F_SETFD                  = 2 | ||||||
|  | 	F_SETFL                  = 4 | ||||||
|  | 	F_SETLK                  = 6 | ||||||
|  | 	F_SETLKW                 = 7 | ||||||
|  | 	F_SETOWN                 = 11 | ||||||
|  | 	F_SETTAG                 = 12 | ||||||
|  | 	F_UNLCK                  = 3 | ||||||
|  | 	F_WRLCK                  = 2 | ||||||
|  | 	FSTYPE_ZFS               = 0xe9 //"Z" | ||||||
|  | 	FSTYPE_HFS               = 0xc8 //"H" | ||||||
|  | 	FSTYPE_NFS               = 0xd5 //"N" | ||||||
|  | 	FSTYPE_TFS               = 0xe3 //"T" | ||||||
|  | 	FSTYPE_AUTOMOUNT         = 0xc1 //"A" | ||||||
|  | 	GRND_NONBLOCK            = 1 | ||||||
|  | 	GRND_RANDOM              = 2 | ||||||
|  | 	HUPCL                    = 0x0100 // Hang up on last close | ||||||
|  | 	IN_CLOEXEC               = 0x00001000 | ||||||
|  | 	IN_NONBLOCK              = 0x00000004 | ||||||
|  | 	IN_ACCESS                = 0x00000001 | ||||||
|  | 	IN_MODIFY                = 0x00000002 | ||||||
|  | 	IN_ATTRIB                = 0x00000004 | ||||||
|  | 	IN_CLOSE_WRITE           = 0x00000008 | ||||||
|  | 	IN_CLOSE_NOWRITE         = 0x00000010 | ||||||
|  | 	IN_OPEN                  = 0x00000020 | ||||||
|  | 	IN_MOVED_FROM            = 0x00000040 | ||||||
|  | 	IN_MOVED_TO              = 0x00000080 | ||||||
|  | 	IN_CREATE                = 0x00000100 | ||||||
|  | 	IN_DELETE                = 0x00000200 | ||||||
|  | 	IN_DELETE_SELF           = 0x00000400 | ||||||
|  | 	IN_MOVE_SELF             = 0x00000800 | ||||||
|  | 	IN_UNMOUNT               = 0x00002000 | ||||||
|  | 	IN_Q_OVERFLOW            = 0x00004000 | ||||||
|  | 	IN_IGNORED               = 0x00008000 | ||||||
|  | 	IN_CLOSE                 = (IN_CLOSE_WRITE | IN_CLOSE_NOWRITE) | ||||||
|  | 	IN_MOVE                  = (IN_MOVED_FROM | IN_MOVED_TO) | ||||||
|  | 	IN_ALL_EVENTS            = (IN_ACCESS | IN_MODIFY | IN_ATTRIB | | ||||||
|  | 		IN_CLOSE | IN_OPEN | IN_MOVE | | ||||||
|  | 		IN_CREATE | IN_DELETE | IN_DELETE_SELF | | ||||||
|  | 		IN_MOVE_SELF) | ||||||
|  | 	IN_ONLYDIR                      = 0x01000000 | ||||||
|  | 	IN_DONT_FOLLOW                  = 0x02000000 | ||||||
|  | 	IN_EXCL_UNLINK                  = 0x04000000 | ||||||
|  | 	IN_MASK_CREATE                  = 0x10000000 | ||||||
|  | 	IN_MASK_ADD                     = 0x20000000 | ||||||
|  | 	IN_ISDIR                        = 0x40000000 | ||||||
|  | 	IN_ONESHOT                      = 0x80000000 | ||||||
| 	IP6F_MORE_FRAG                  = 0x0001 | 	IP6F_MORE_FRAG                  = 0x0001 | ||||||
| 	IP6F_OFF_MASK                   = 0xfff8 | 	IP6F_OFF_MASK                   = 0xfff8 | ||||||
| 	IP6F_RESERVED_MASK              = 0x0006 | 	IP6F_RESERVED_MASK              = 0x0006 | ||||||
|  | @ -152,10 +210,18 @@ const ( | ||||||
| 	IP_PKTINFO                      = 101 | 	IP_PKTINFO                      = 101 | ||||||
| 	IP_RECVPKTINFO                  = 102 | 	IP_RECVPKTINFO                  = 102 | ||||||
| 	IP_TOS                          = 2 | 	IP_TOS                          = 2 | ||||||
| 	IP_TTL                          = 3 | 	IP_TTL                          = 14 | ||||||
| 	IP_UNBLOCK_SOURCE               = 11 | 	IP_UNBLOCK_SOURCE               = 11 | ||||||
|  | 	ICMP6_FILTER                    = 1 | ||||||
|  | 	MCAST_INCLUDE                   = 0 | ||||||
|  | 	MCAST_EXCLUDE                   = 1 | ||||||
|  | 	MCAST_JOIN_GROUP                = 40 | ||||||
|  | 	MCAST_LEAVE_GROUP               = 41 | ||||||
|  | 	MCAST_JOIN_SOURCE_GROUP         = 42 | ||||||
|  | 	MCAST_LEAVE_SOURCE_GROUP        = 43 | ||||||
|  | 	MCAST_BLOCK_SOURCE              = 44 | ||||||
|  | 	MCAST_UNBLOCK_SOURCE            = 46 | ||||||
| 	ICANON                          = 0x0010 | 	ICANON                          = 0x0010 | ||||||
| 	ICMP6_FILTER                    = 0x26 |  | ||||||
| 	ICRNL                           = 0x0002 | 	ICRNL                           = 0x0002 | ||||||
| 	IEXTEN                          = 0x0020 | 	IEXTEN                          = 0x0020 | ||||||
| 	IGNBRK                          = 0x0004 | 	IGNBRK                          = 0x0004 | ||||||
|  | @ -165,10 +231,10 @@ const ( | ||||||
| 	ISTRIP                          = 0x0080 | 	ISTRIP                          = 0x0080 | ||||||
| 	IXON                            = 0x0200 | 	IXON                            = 0x0200 | ||||||
| 	IXOFF                           = 0x0100 | 	IXOFF                           = 0x0100 | ||||||
| 	LOCK_SH                         = 0x1 // Not exist on zOS | 	LOCK_SH                         = 0x1 | ||||||
| 	LOCK_EX                         = 0x2 // Not exist on zOS | 	LOCK_EX                         = 0x2 | ||||||
| 	LOCK_NB                         = 0x4 // Not exist on zOS | 	LOCK_NB                         = 0x4 | ||||||
| 	LOCK_UN                         = 0x8 // Not exist on zOS | 	LOCK_UN                         = 0x8 | ||||||
| 	POLLIN                          = 0x0003 | 	POLLIN                          = 0x0003 | ||||||
| 	POLLOUT                         = 0x0004 | 	POLLOUT                         = 0x0004 | ||||||
| 	POLLPRI                         = 0x0010 | 	POLLPRI                         = 0x0010 | ||||||
|  | @ -182,15 +248,29 @@ const ( | ||||||
| 	MAP_PRIVATE                     = 0x1 // changes are private | 	MAP_PRIVATE                     = 0x1 // changes are private | ||||||
| 	MAP_SHARED                      = 0x2 // changes are shared | 	MAP_SHARED                      = 0x2 // changes are shared | ||||||
| 	MAP_FIXED                       = 0x4 // place exactly | 	MAP_FIXED                       = 0x4 // place exactly | ||||||
| 	MCAST_JOIN_GROUP                = 40 | 	__MAP_MEGA                      = 0x8 | ||||||
| 	MCAST_LEAVE_GROUP               = 41 | 	__MAP_64                        = 0x10 | ||||||
| 	MCAST_JOIN_SOURCE_GROUP         = 42 | 	MAP_ANON                        = 0x20 | ||||||
| 	MCAST_LEAVE_SOURCE_GROUP        = 43 | 	MAP_ANONYMOUS                   = 0x20 | ||||||
| 	MCAST_BLOCK_SOURCE              = 44 |  | ||||||
| 	MCAST_UNBLOCK_SOURCE            = 45 |  | ||||||
| 	MS_SYNC                         = 0x1 // msync - synchronous writes | 	MS_SYNC                         = 0x1 // msync - synchronous writes | ||||||
| 	MS_ASYNC                        = 0x2 // asynchronous writes | 	MS_ASYNC                        = 0x2 // asynchronous writes | ||||||
| 	MS_INVALIDATE                   = 0x4 // invalidate mappings | 	MS_INVALIDATE                   = 0x4 // invalidate mappings | ||||||
|  | 	MS_BIND                         = 0x00001000 | ||||||
|  | 	MS_MOVE                         = 0x00002000 | ||||||
|  | 	MS_NOSUID                       = 0x00000002 | ||||||
|  | 	MS_PRIVATE                      = 0x00040000 | ||||||
|  | 	MS_REC                          = 0x00004000 | ||||||
|  | 	MS_REMOUNT                      = 0x00008000 | ||||||
|  | 	MS_RDONLY                       = 0x00000001 | ||||||
|  | 	MS_UNBINDABLE                   = 0x00020000 | ||||||
|  | 	MNT_DETACH                      = 0x00000004 | ||||||
|  | 	ZOSDSFS_SUPER_MAGIC             = 0x44534653 // zOS DSFS | ||||||
|  | 	NFS_SUPER_MAGIC                 = 0x6969     // NFS | ||||||
|  | 	NSFS_MAGIC                      = 0x6e736673 // PROCNS | ||||||
|  | 	PROC_SUPER_MAGIC                = 0x9fa0     // proc FS | ||||||
|  | 	ZOSTFS_SUPER_MAGIC              = 0x544653   // zOS TFS | ||||||
|  | 	ZOSUFS_SUPER_MAGIC              = 0x554653   // zOS UFS | ||||||
|  | 	ZOSZFS_SUPER_MAGIC              = 0x5A4653   // zOS ZFS | ||||||
| 	MTM_RDONLY                      = 0x80000000 | 	MTM_RDONLY                      = 0x80000000 | ||||||
| 	MTM_RDWR                        = 0x40000000 | 	MTM_RDWR                        = 0x40000000 | ||||||
| 	MTM_UMOUNT                      = 0x10000000 | 	MTM_UMOUNT                      = 0x10000000 | ||||||
|  | @ -205,13 +285,20 @@ const ( | ||||||
| 	MTM_REMOUNT                     = 0x00000100 | 	MTM_REMOUNT                     = 0x00000100 | ||||||
| 	MTM_NOSECURITY                  = 0x00000080 | 	MTM_NOSECURITY                  = 0x00000080 | ||||||
| 	NFDBITS                         = 0x20 | 	NFDBITS                         = 0x20 | ||||||
|  | 	ONLRET                          = 0x0020 // NL performs CR function | ||||||
| 	O_ACCMODE                       = 0x03 | 	O_ACCMODE                       = 0x03 | ||||||
| 	O_APPEND                        = 0x08 | 	O_APPEND                        = 0x08 | ||||||
| 	O_ASYNCSIG                      = 0x0200 | 	O_ASYNCSIG                      = 0x0200 | ||||||
| 	O_CREAT                         = 0x80 | 	O_CREAT                         = 0x80 | ||||||
|  | 	O_DIRECT                        = 0x00002000 | ||||||
|  | 	O_NOFOLLOW                      = 0x00004000 | ||||||
|  | 	O_DIRECTORY                     = 0x00008000 | ||||||
|  | 	O_PATH                          = 0x00080000 | ||||||
|  | 	O_CLOEXEC                       = 0x00001000 | ||||||
| 	O_EXCL                          = 0x40 | 	O_EXCL                          = 0x40 | ||||||
| 	O_GETFL                         = 0x0F | 	O_GETFL                         = 0x0F | ||||||
| 	O_LARGEFILE                     = 0x0400 | 	O_LARGEFILE                     = 0x0400 | ||||||
|  | 	O_NDELAY                        = 0x4 | ||||||
| 	O_NONBLOCK                      = 0x04 | 	O_NONBLOCK                      = 0x04 | ||||||
| 	O_RDONLY                        = 0x02 | 	O_RDONLY                        = 0x02 | ||||||
| 	O_RDWR                          = 0x03 | 	O_RDWR                          = 0x03 | ||||||
|  | @ -248,6 +335,7 @@ const ( | ||||||
| 	AF_IUCV                         = 17 | 	AF_IUCV                         = 17 | ||||||
| 	AF_LAT                          = 14 | 	AF_LAT                          = 14 | ||||||
| 	AF_LINK                         = 18 | 	AF_LINK                         = 18 | ||||||
|  | 	AF_LOCAL                        = AF_UNIX // AF_LOCAL is an alias for AF_UNIX | ||||||
| 	AF_MAX                          = 30 | 	AF_MAX                          = 30 | ||||||
| 	AF_NBS                          = 7 | 	AF_NBS                          = 7 | ||||||
| 	AF_NDD                          = 23 | 	AF_NDD                          = 23 | ||||||
|  | @ -285,15 +373,33 @@ const ( | ||||||
| 	RLIMIT_AS                       = 5 | 	RLIMIT_AS                       = 5 | ||||||
| 	RLIMIT_NOFILE                   = 6 | 	RLIMIT_NOFILE                   = 6 | ||||||
| 	RLIMIT_MEMLIMIT                 = 7 | 	RLIMIT_MEMLIMIT                 = 7 | ||||||
|  | 	RLIMIT_MEMLOCK                  = 0x8 | ||||||
| 	RLIM_INFINITY                   = 2147483647 | 	RLIM_INFINITY                   = 2147483647 | ||||||
|  | 	SCHED_FIFO                      = 0x2 | ||||||
|  | 	SCM_CREDENTIALS                 = 0x2 | ||||||
| 	SCM_RIGHTS                      = 0x01 | 	SCM_RIGHTS                      = 0x01 | ||||||
| 	SF_CLOSE                        = 0x00000002 | 	SF_CLOSE                        = 0x00000002 | ||||||
| 	SF_REUSE                        = 0x00000001 | 	SF_REUSE                        = 0x00000001 | ||||||
|  | 	SHM_RND                         = 0x2 | ||||||
|  | 	SHM_RDONLY                      = 0x1 | ||||||
|  | 	SHMLBA                          = 0x1000 | ||||||
|  | 	IPC_STAT                        = 0x3 | ||||||
|  | 	IPC_SET                         = 0x2 | ||||||
|  | 	IPC_RMID                        = 0x1 | ||||||
|  | 	IPC_PRIVATE                     = 0x0 | ||||||
|  | 	IPC_CREAT                       = 0x1000000 | ||||||
|  | 	__IPC_MEGA                      = 0x4000000 | ||||||
|  | 	__IPC_SHAREAS                   = 0x20000000 | ||||||
|  | 	__IPC_BELOWBAR                  = 0x10000000 | ||||||
|  | 	IPC_EXCL                        = 0x2000000 | ||||||
|  | 	__IPC_GIGA                      = 0x8000000 | ||||||
| 	SHUT_RD                         = 0 | 	SHUT_RD                         = 0 | ||||||
| 	SHUT_RDWR                       = 2 | 	SHUT_RDWR                       = 2 | ||||||
| 	SHUT_WR                         = 1 | 	SHUT_WR                         = 1 | ||||||
|  | 	SOCK_CLOEXEC                    = 0x00001000 | ||||||
| 	SOCK_CONN_DGRAM                 = 6 | 	SOCK_CONN_DGRAM                 = 6 | ||||||
| 	SOCK_DGRAM                      = 2 | 	SOCK_DGRAM                      = 2 | ||||||
|  | 	SOCK_NONBLOCK                   = 0x800 | ||||||
| 	SOCK_RAW                        = 3 | 	SOCK_RAW                        = 3 | ||||||
| 	SOCK_RDM                        = 4 | 	SOCK_RDM                        = 4 | ||||||
| 	SOCK_SEQPACKET                  = 5 | 	SOCK_SEQPACKET                  = 5 | ||||||
|  | @ -378,8 +484,6 @@ const ( | ||||||
| 	S_IFMST                         = 0x00FF0000 | 	S_IFMST                         = 0x00FF0000 | ||||||
| 	TCP_KEEPALIVE                   = 0x8 | 	TCP_KEEPALIVE                   = 0x8 | ||||||
| 	TCP_NODELAY                     = 0x1 | 	TCP_NODELAY                     = 0x1 | ||||||
| 	TCP_INFO                        = 0xb |  | ||||||
| 	TCP_USER_TIMEOUT                = 0x1 |  | ||||||
| 	TIOCGWINSZ                      = 0x4008a368 | 	TIOCGWINSZ                      = 0x4008a368 | ||||||
| 	TIOCSWINSZ                      = 0x8008a367 | 	TIOCSWINSZ                      = 0x8008a367 | ||||||
| 	TIOCSBRK                        = 0x2000a77b | 	TIOCSBRK                        = 0x2000a77b | ||||||
|  | @ -427,7 +531,10 @@ const ( | ||||||
| 	VSUSP                           = 9 | 	VSUSP                           = 9 | ||||||
| 	VTIME                           = 10 | 	VTIME                           = 10 | ||||||
| 	WCONTINUED                      = 0x4 | 	WCONTINUED                      = 0x4 | ||||||
|  | 	WEXITED                         = 0x8 | ||||||
| 	WNOHANG                         = 0x1 | 	WNOHANG                         = 0x1 | ||||||
|  | 	WNOWAIT                         = 0x20 | ||||||
|  | 	WSTOPPED                        = 0x10 | ||||||
| 	WUNTRACED                       = 0x2 | 	WUNTRACED                       = 0x2 | ||||||
| 	_BPX_SWAP                       = 1 | 	_BPX_SWAP                       = 1 | ||||||
| 	_BPX_NONSWAP                    = 2 | 	_BPX_NONSWAP                    = 2 | ||||||
|  | @ -452,8 +559,28 @@ const ( | ||||||
| 	MADV_FREE                       = 15 // for Linux compatibility -- no zos semantics | 	MADV_FREE                       = 15 // for Linux compatibility -- no zos semantics | ||||||
| 	MADV_WIPEONFORK                 = 16 // for Linux compatibility -- no zos semantics | 	MADV_WIPEONFORK                 = 16 // for Linux compatibility -- no zos semantics | ||||||
| 	MADV_KEEPONFORK                 = 17 // for Linux compatibility -- no zos semantics | 	MADV_KEEPONFORK                 = 17 // for Linux compatibility -- no zos semantics | ||||||
| 	AT_SYMLINK_NOFOLLOW             = 1  // for Unix  compatibility -- no zos semantics | 	AT_SYMLINK_FOLLOW               = 0x400 | ||||||
| 	AT_FDCWD                        = 2  // for Unix  compatibility -- no zos semantics | 	AT_SYMLINK_NOFOLLOW             = 0x100 | ||||||
|  | 	XATTR_CREATE                    = 0x1 | ||||||
|  | 	XATTR_REPLACE                   = 0x2 | ||||||
|  | 	P_PID                           = 0 | ||||||
|  | 	P_PGID                          = 1 | ||||||
|  | 	P_ALL                           = 2 | ||||||
|  | 	PR_SET_NAME                     = 15 | ||||||
|  | 	PR_GET_NAME                     = 16 | ||||||
|  | 	PR_SET_NO_NEW_PRIVS             = 38 | ||||||
|  | 	PR_GET_NO_NEW_PRIVS             = 39 | ||||||
|  | 	PR_SET_DUMPABLE                 = 4 | ||||||
|  | 	PR_GET_DUMPABLE                 = 3 | ||||||
|  | 	PR_SET_PDEATHSIG                = 1 | ||||||
|  | 	PR_GET_PDEATHSIG                = 2 | ||||||
|  | 	PR_SET_CHILD_SUBREAPER          = 36 | ||||||
|  | 	PR_GET_CHILD_SUBREAPER          = 37 | ||||||
|  | 	AT_FDCWD                        = -100 | ||||||
|  | 	AT_EACCESS                      = 0x200 | ||||||
|  | 	AT_EMPTY_PATH                   = 0x1000 | ||||||
|  | 	AT_REMOVEDIR                    = 0x200 | ||||||
|  | 	RENAME_NOREPLACE                = 1 << 0 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| const ( | const ( | ||||||
|  | @ -476,6 +603,7 @@ const ( | ||||||
| 	EMLINK             = Errno(125) | 	EMLINK             = Errno(125) | ||||||
| 	ENAMETOOLONG       = Errno(126) | 	ENAMETOOLONG       = Errno(126) | ||||||
| 	ENFILE             = Errno(127) | 	ENFILE             = Errno(127) | ||||||
|  | 	ENOATTR            = Errno(265) | ||||||
| 	ENODEV             = Errno(128) | 	ENODEV             = Errno(128) | ||||||
| 	ENOENT             = Errno(129) | 	ENOENT             = Errno(129) | ||||||
| 	ENOEXEC            = Errno(130) | 	ENOEXEC            = Errno(130) | ||||||
|  | @ -700,7 +828,7 @@ var errorList = [...]struct { | ||||||
| 	{145, "EDC5145I", "The parameter list is too long, or the message to receive was too large for the buffer."}, | 	{145, "EDC5145I", "The parameter list is too long, or the message to receive was too large for the buffer."}, | ||||||
| 	{146, "EDC5146I", "Too many levels of symbolic links."}, | 	{146, "EDC5146I", "Too many levels of symbolic links."}, | ||||||
| 	{147, "EDC5147I", "Illegal byte sequence."}, | 	{147, "EDC5147I", "Illegal byte sequence."}, | ||||||
| 	{148, "", ""}, | 	{148, "EDC5148I", "The named attribute or data not available."}, | ||||||
| 	{149, "EDC5149I", "Value Overflow Error."}, | 	{149, "EDC5149I", "Value Overflow Error."}, | ||||||
| 	{150, "EDC5150I", "UNIX System Services is not active."}, | 	{150, "EDC5150I", "UNIX System Services is not active."}, | ||||||
| 	{151, "EDC5151I", "Dynamic allocation error."}, | 	{151, "EDC5151I", "Dynamic allocation error."}, | ||||||
|  | @ -743,6 +871,7 @@ var errorList = [...]struct { | ||||||
| 	{259, "EDC5259I", "A CUN_RS_NO_CONVERSION error was issued by Unicode Services."}, | 	{259, "EDC5259I", "A CUN_RS_NO_CONVERSION error was issued by Unicode Services."}, | ||||||
| 	{260, "EDC5260I", "A CUN_RS_TABLE_NOT_ALIGNED error was issued by Unicode Services."}, | 	{260, "EDC5260I", "A CUN_RS_TABLE_NOT_ALIGNED error was issued by Unicode Services."}, | ||||||
| 	{262, "EDC5262I", "An iconv() function encountered an unexpected error while using Unicode Services."}, | 	{262, "EDC5262I", "An iconv() function encountered an unexpected error while using Unicode Services."}, | ||||||
|  | 	{265, "EDC5265I", "The named attribute not available."}, | ||||||
| 	{1000, "EDC8000I", "A bad socket-call constant was found in the IUCV header."}, | 	{1000, "EDC8000I", "A bad socket-call constant was found in the IUCV header."}, | ||||||
| 	{1001, "EDC8001I", "An error was found in the IUCV header."}, | 	{1001, "EDC8001I", "An error was found in the IUCV header."}, | ||||||
| 	{1002, "EDC8002I", "A socket descriptor is out of range."}, | 	{1002, "EDC8002I", "A socket descriptor is out of range."}, | ||||||
|  |  | ||||||
							
								
								
									
										364
									
								
								vendor/golang.org/x/sys/unix/zsymaddr_zos_s390x.s
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										364
									
								
								vendor/golang.org/x/sys/unix/zsymaddr_zos_s390x.s
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,364 @@ | ||||||
|  | // go run mksyscall_zos_s390x.go -o_sysnum zsysnum_zos_s390x.go -o_syscall zsyscall_zos_s390x.go -i_syscall syscall_zos_s390x.go -o_asm zsymaddr_zos_s390x.s | ||||||
|  | // Code generated by the command above; see README.md. DO NOT EDIT.
 | ||||||
|  | 
 | ||||||
|  | //go:build zos && s390x | ||||||
|  | #include "textflag.h" | ||||||
|  | 
 | ||||||
|  | //  provide the address of function variable to be fixed up. | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_FlistxattrAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Flistxattr(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_FremovexattrAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Fremovexattr(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_FgetxattrAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Fgetxattr(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_FsetxattrAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Fsetxattr(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_accept4Addr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·accept4(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_RemovexattrAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Removexattr(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_Dup3Addr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Dup3(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_DirfdAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Dirfd(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_EpollCreateAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·EpollCreate(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_EpollCreate1Addr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·EpollCreate1(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_EpollCtlAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·EpollCtl(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_EpollPwaitAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·EpollPwait(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_EpollWaitAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·EpollWait(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_EventfdAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Eventfd(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_FaccessatAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Faccessat(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_FchmodatAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Fchmodat(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_FchownatAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Fchownat(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_FdatasyncAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Fdatasync(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_fstatatAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·fstatat(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_LgetxattrAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Lgetxattr(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_LsetxattrAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Lsetxattr(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_FstatfsAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Fstatfs(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_FutimesAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Futimes(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_FutimesatAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Futimesat(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_GetrandomAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Getrandom(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_InotifyInitAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·InotifyInit(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_InotifyInit1Addr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·InotifyInit1(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_InotifyAddWatchAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·InotifyAddWatch(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_InotifyRmWatchAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·InotifyRmWatch(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_ListxattrAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Listxattr(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_LlistxattrAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Llistxattr(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_LremovexattrAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Lremovexattr(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_LutimesAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Lutimes(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_StatfsAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Statfs(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_SyncfsAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Syncfs(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_UnshareAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Unshare(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_LinkatAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Linkat(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_MkdiratAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Mkdirat(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_MknodatAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Mknodat(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_PivotRootAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·PivotRoot(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_PrctlAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Prctl(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_PrlimitAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Prlimit(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_RenameatAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Renameat(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_Renameat2Addr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Renameat2(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_SethostnameAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Sethostname(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_SetnsAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Setns(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_SymlinkatAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Symlinkat(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_UnlinkatAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·Unlinkat(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_openatAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·openat(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_openat2Addr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·openat2(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
|  | 
 | ||||||
|  | // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
 | ||||||
|  | 
 | ||||||
|  | TEXT ·get_utimensatAddr(SB), NOSPLIT|NOFRAME, $0-8 | ||||||
|  | 	MOVD $·utimensat(SB), R8 | ||||||
|  | 	MOVD R8, ret+0(FP) | ||||||
|  | 	RET | ||||||
							
								
								
									
										2837
									
								
								vendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2837
									
								
								vendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_386.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -452,4 +452,9 @@ const ( | ||||||
| 	SYS_FUTEX_WAKE                   = 454 | 	SYS_FUTEX_WAKE                   = 454 | ||||||
| 	SYS_FUTEX_WAIT                   = 455 | 	SYS_FUTEX_WAIT                   = 455 | ||||||
| 	SYS_FUTEX_REQUEUE                = 456 | 	SYS_FUTEX_REQUEUE                = 456 | ||||||
|  | 	SYS_STATMOUNT                    = 457 | ||||||
|  | 	SYS_LISTMOUNT                    = 458 | ||||||
|  | 	SYS_LSM_GET_SELF_ATTR            = 459 | ||||||
|  | 	SYS_LSM_SET_SELF_ATTR            = 460 | ||||||
|  | 	SYS_LSM_LIST_MODULES             = 461 | ||||||
| ) | ) | ||||||
|  |  | ||||||
							
								
								
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -374,4 +374,9 @@ const ( | ||||||
| 	SYS_FUTEX_WAKE              = 454 | 	SYS_FUTEX_WAKE              = 454 | ||||||
| 	SYS_FUTEX_WAIT              = 455 | 	SYS_FUTEX_WAIT              = 455 | ||||||
| 	SYS_FUTEX_REQUEUE           = 456 | 	SYS_FUTEX_REQUEUE           = 456 | ||||||
|  | 	SYS_STATMOUNT               = 457 | ||||||
|  | 	SYS_LISTMOUNT               = 458 | ||||||
|  | 	SYS_LSM_GET_SELF_ATTR       = 459 | ||||||
|  | 	SYS_LSM_SET_SELF_ATTR       = 460 | ||||||
|  | 	SYS_LSM_LIST_MODULES        = 461 | ||||||
| ) | ) | ||||||
|  |  | ||||||
							
								
								
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -416,4 +416,9 @@ const ( | ||||||
| 	SYS_FUTEX_WAKE                   = 454 | 	SYS_FUTEX_WAKE                   = 454 | ||||||
| 	SYS_FUTEX_WAIT                   = 455 | 	SYS_FUTEX_WAIT                   = 455 | ||||||
| 	SYS_FUTEX_REQUEUE                = 456 | 	SYS_FUTEX_REQUEUE                = 456 | ||||||
|  | 	SYS_STATMOUNT                    = 457 | ||||||
|  | 	SYS_LISTMOUNT                    = 458 | ||||||
|  | 	SYS_LSM_GET_SELF_ATTR            = 459 | ||||||
|  | 	SYS_LSM_SET_SELF_ATTR            = 460 | ||||||
|  | 	SYS_LSM_LIST_MODULES             = 461 | ||||||
| ) | ) | ||||||
|  |  | ||||||
							
								
								
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -319,4 +319,9 @@ const ( | ||||||
| 	SYS_FUTEX_WAKE              = 454 | 	SYS_FUTEX_WAKE              = 454 | ||||||
| 	SYS_FUTEX_WAIT              = 455 | 	SYS_FUTEX_WAIT              = 455 | ||||||
| 	SYS_FUTEX_REQUEUE           = 456 | 	SYS_FUTEX_REQUEUE           = 456 | ||||||
|  | 	SYS_STATMOUNT               = 457 | ||||||
|  | 	SYS_LISTMOUNT               = 458 | ||||||
|  | 	SYS_LSM_GET_SELF_ATTR       = 459 | ||||||
|  | 	SYS_LSM_SET_SELF_ATTR       = 460 | ||||||
|  | 	SYS_LSM_LIST_MODULES        = 461 | ||||||
| ) | ) | ||||||
|  |  | ||||||
							
								
								
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -313,4 +313,9 @@ const ( | ||||||
| 	SYS_FUTEX_WAKE              = 454 | 	SYS_FUTEX_WAKE              = 454 | ||||||
| 	SYS_FUTEX_WAIT              = 455 | 	SYS_FUTEX_WAIT              = 455 | ||||||
| 	SYS_FUTEX_REQUEUE           = 456 | 	SYS_FUTEX_REQUEUE           = 456 | ||||||
|  | 	SYS_STATMOUNT               = 457 | ||||||
|  | 	SYS_LISTMOUNT               = 458 | ||||||
|  | 	SYS_LSM_GET_SELF_ATTR       = 459 | ||||||
|  | 	SYS_LSM_SET_SELF_ATTR       = 460 | ||||||
|  | 	SYS_LSM_LIST_MODULES        = 461 | ||||||
| ) | ) | ||||||
|  |  | ||||||
							
								
								
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -436,4 +436,9 @@ const ( | ||||||
| 	SYS_FUTEX_WAKE                   = 4454 | 	SYS_FUTEX_WAKE                   = 4454 | ||||||
| 	SYS_FUTEX_WAIT                   = 4455 | 	SYS_FUTEX_WAIT                   = 4455 | ||||||
| 	SYS_FUTEX_REQUEUE                = 4456 | 	SYS_FUTEX_REQUEUE                = 4456 | ||||||
|  | 	SYS_STATMOUNT                    = 4457 | ||||||
|  | 	SYS_LISTMOUNT                    = 4458 | ||||||
|  | 	SYS_LSM_GET_SELF_ATTR            = 4459 | ||||||
|  | 	SYS_LSM_SET_SELF_ATTR            = 4460 | ||||||
|  | 	SYS_LSM_LIST_MODULES             = 4461 | ||||||
| ) | ) | ||||||
|  |  | ||||||
							
								
								
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -366,4 +366,9 @@ const ( | ||||||
| 	SYS_FUTEX_WAKE              = 5454 | 	SYS_FUTEX_WAKE              = 5454 | ||||||
| 	SYS_FUTEX_WAIT              = 5455 | 	SYS_FUTEX_WAIT              = 5455 | ||||||
| 	SYS_FUTEX_REQUEUE           = 5456 | 	SYS_FUTEX_REQUEUE           = 5456 | ||||||
|  | 	SYS_STATMOUNT               = 5457 | ||||||
|  | 	SYS_LISTMOUNT               = 5458 | ||||||
|  | 	SYS_LSM_GET_SELF_ATTR       = 5459 | ||||||
|  | 	SYS_LSM_SET_SELF_ATTR       = 5460 | ||||||
|  | 	SYS_LSM_LIST_MODULES        = 5461 | ||||||
| ) | ) | ||||||
|  |  | ||||||
							
								
								
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -366,4 +366,9 @@ const ( | ||||||
| 	SYS_FUTEX_WAKE              = 5454 | 	SYS_FUTEX_WAKE              = 5454 | ||||||
| 	SYS_FUTEX_WAIT              = 5455 | 	SYS_FUTEX_WAIT              = 5455 | ||||||
| 	SYS_FUTEX_REQUEUE           = 5456 | 	SYS_FUTEX_REQUEUE           = 5456 | ||||||
|  | 	SYS_STATMOUNT               = 5457 | ||||||
|  | 	SYS_LISTMOUNT               = 5458 | ||||||
|  | 	SYS_LSM_GET_SELF_ATTR       = 5459 | ||||||
|  | 	SYS_LSM_SET_SELF_ATTR       = 5460 | ||||||
|  | 	SYS_LSM_LIST_MODULES        = 5461 | ||||||
| ) | ) | ||||||
|  |  | ||||||
							
								
								
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -436,4 +436,9 @@ const ( | ||||||
| 	SYS_FUTEX_WAKE                   = 4454 | 	SYS_FUTEX_WAKE                   = 4454 | ||||||
| 	SYS_FUTEX_WAIT                   = 4455 | 	SYS_FUTEX_WAIT                   = 4455 | ||||||
| 	SYS_FUTEX_REQUEUE                = 4456 | 	SYS_FUTEX_REQUEUE                = 4456 | ||||||
|  | 	SYS_STATMOUNT                    = 4457 | ||||||
|  | 	SYS_LISTMOUNT                    = 4458 | ||||||
|  | 	SYS_LSM_GET_SELF_ATTR            = 4459 | ||||||
|  | 	SYS_LSM_SET_SELF_ATTR            = 4460 | ||||||
|  | 	SYS_LSM_LIST_MODULES             = 4461 | ||||||
| ) | ) | ||||||
|  |  | ||||||
							
								
								
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -443,4 +443,9 @@ const ( | ||||||
| 	SYS_FUTEX_WAKE                   = 454 | 	SYS_FUTEX_WAKE                   = 454 | ||||||
| 	SYS_FUTEX_WAIT                   = 455 | 	SYS_FUTEX_WAIT                   = 455 | ||||||
| 	SYS_FUTEX_REQUEUE                = 456 | 	SYS_FUTEX_REQUEUE                = 456 | ||||||
|  | 	SYS_STATMOUNT                    = 457 | ||||||
|  | 	SYS_LISTMOUNT                    = 458 | ||||||
|  | 	SYS_LSM_GET_SELF_ATTR            = 459 | ||||||
|  | 	SYS_LSM_SET_SELF_ATTR            = 460 | ||||||
|  | 	SYS_LSM_LIST_MODULES             = 461 | ||||||
| ) | ) | ||||||
|  |  | ||||||
							
								
								
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -415,4 +415,9 @@ const ( | ||||||
| 	SYS_FUTEX_WAKE              = 454 | 	SYS_FUTEX_WAKE              = 454 | ||||||
| 	SYS_FUTEX_WAIT              = 455 | 	SYS_FUTEX_WAIT              = 455 | ||||||
| 	SYS_FUTEX_REQUEUE           = 456 | 	SYS_FUTEX_REQUEUE           = 456 | ||||||
|  | 	SYS_STATMOUNT               = 457 | ||||||
|  | 	SYS_LISTMOUNT               = 458 | ||||||
|  | 	SYS_LSM_GET_SELF_ATTR       = 459 | ||||||
|  | 	SYS_LSM_SET_SELF_ATTR       = 460 | ||||||
|  | 	SYS_LSM_LIST_MODULES        = 461 | ||||||
| ) | ) | ||||||
|  |  | ||||||
							
								
								
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -415,4 +415,9 @@ const ( | ||||||
| 	SYS_FUTEX_WAKE              = 454 | 	SYS_FUTEX_WAKE              = 454 | ||||||
| 	SYS_FUTEX_WAIT              = 455 | 	SYS_FUTEX_WAIT              = 455 | ||||||
| 	SYS_FUTEX_REQUEUE           = 456 | 	SYS_FUTEX_REQUEUE           = 456 | ||||||
|  | 	SYS_STATMOUNT               = 457 | ||||||
|  | 	SYS_LISTMOUNT               = 458 | ||||||
|  | 	SYS_LSM_GET_SELF_ATTR       = 459 | ||||||
|  | 	SYS_LSM_SET_SELF_ATTR       = 460 | ||||||
|  | 	SYS_LSM_LIST_MODULES        = 461 | ||||||
| ) | ) | ||||||
|  |  | ||||||
							
								
								
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -320,4 +320,9 @@ const ( | ||||||
| 	SYS_FUTEX_WAKE              = 454 | 	SYS_FUTEX_WAKE              = 454 | ||||||
| 	SYS_FUTEX_WAIT              = 455 | 	SYS_FUTEX_WAIT              = 455 | ||||||
| 	SYS_FUTEX_REQUEUE           = 456 | 	SYS_FUTEX_REQUEUE           = 456 | ||||||
|  | 	SYS_STATMOUNT               = 457 | ||||||
|  | 	SYS_LISTMOUNT               = 458 | ||||||
|  | 	SYS_LSM_GET_SELF_ATTR       = 459 | ||||||
|  | 	SYS_LSM_SET_SELF_ATTR       = 460 | ||||||
|  | 	SYS_LSM_LIST_MODULES        = 461 | ||||||
| ) | ) | ||||||
|  |  | ||||||
							
								
								
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -381,4 +381,9 @@ const ( | ||||||
| 	SYS_FUTEX_WAKE              = 454 | 	SYS_FUTEX_WAKE              = 454 | ||||||
| 	SYS_FUTEX_WAIT              = 455 | 	SYS_FUTEX_WAIT              = 455 | ||||||
| 	SYS_FUTEX_REQUEUE           = 456 | 	SYS_FUTEX_REQUEUE           = 456 | ||||||
|  | 	SYS_STATMOUNT               = 457 | ||||||
|  | 	SYS_LISTMOUNT               = 458 | ||||||
|  | 	SYS_LSM_GET_SELF_ATTR       = 459 | ||||||
|  | 	SYS_LSM_SET_SELF_ATTR       = 460 | ||||||
|  | 	SYS_LSM_LIST_MODULES        = 461 | ||||||
| ) | ) | ||||||
|  |  | ||||||
							
								
								
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -394,4 +394,9 @@ const ( | ||||||
| 	SYS_FUTEX_WAKE              = 454 | 	SYS_FUTEX_WAKE              = 454 | ||||||
| 	SYS_FUTEX_WAIT              = 455 | 	SYS_FUTEX_WAIT              = 455 | ||||||
| 	SYS_FUTEX_REQUEUE           = 456 | 	SYS_FUTEX_REQUEUE           = 456 | ||||||
|  | 	SYS_STATMOUNT               = 457 | ||||||
|  | 	SYS_LISTMOUNT               = 458 | ||||||
|  | 	SYS_LSM_GET_SELF_ATTR       = 459 | ||||||
|  | 	SYS_LSM_SET_SELF_ATTR       = 460 | ||||||
|  | 	SYS_LSM_LIST_MODULES        = 461 | ||||||
| ) | ) | ||||||
|  |  | ||||||
							
								
								
									
										5507
									
								
								vendor/golang.org/x/sys/unix/zsysnum_zos_s390x.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5507
									
								
								vendor/golang.org/x/sys/unix/zsysnum_zos_s390x.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										26
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										26
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -1178,7 +1178,8 @@ const ( | ||||||
| 	PERF_SAMPLE_BRANCH_TYPE_SAVE_SHIFT    = 0x10 | 	PERF_SAMPLE_BRANCH_TYPE_SAVE_SHIFT    = 0x10 | ||||||
| 	PERF_SAMPLE_BRANCH_HW_INDEX_SHIFT     = 0x11 | 	PERF_SAMPLE_BRANCH_HW_INDEX_SHIFT     = 0x11 | ||||||
| 	PERF_SAMPLE_BRANCH_PRIV_SAVE_SHIFT    = 0x12 | 	PERF_SAMPLE_BRANCH_PRIV_SAVE_SHIFT    = 0x12 | ||||||
| 	PERF_SAMPLE_BRANCH_MAX_SHIFT          = 0x13 | 	PERF_SAMPLE_BRANCH_COUNTERS           = 0x80000 | ||||||
|  | 	PERF_SAMPLE_BRANCH_MAX_SHIFT          = 0x14 | ||||||
| 	PERF_SAMPLE_BRANCH_USER               = 0x1 | 	PERF_SAMPLE_BRANCH_USER               = 0x1 | ||||||
| 	PERF_SAMPLE_BRANCH_KERNEL             = 0x2 | 	PERF_SAMPLE_BRANCH_KERNEL             = 0x2 | ||||||
| 	PERF_SAMPLE_BRANCH_HV                 = 0x4 | 	PERF_SAMPLE_BRANCH_HV                 = 0x4 | ||||||
|  | @ -1198,7 +1199,7 @@ const ( | ||||||
| 	PERF_SAMPLE_BRANCH_TYPE_SAVE          = 0x10000 | 	PERF_SAMPLE_BRANCH_TYPE_SAVE          = 0x10000 | ||||||
| 	PERF_SAMPLE_BRANCH_HW_INDEX           = 0x20000 | 	PERF_SAMPLE_BRANCH_HW_INDEX           = 0x20000 | ||||||
| 	PERF_SAMPLE_BRANCH_PRIV_SAVE          = 0x40000 | 	PERF_SAMPLE_BRANCH_PRIV_SAVE          = 0x40000 | ||||||
| 	PERF_SAMPLE_BRANCH_MAX                = 0x80000 | 	PERF_SAMPLE_BRANCH_MAX                = 0x100000 | ||||||
| 	PERF_BR_UNKNOWN                       = 0x0 | 	PERF_BR_UNKNOWN                       = 0x0 | ||||||
| 	PERF_BR_COND                          = 0x1 | 	PERF_BR_COND                          = 0x1 | ||||||
| 	PERF_BR_UNCOND                        = 0x2 | 	PERF_BR_UNCOND                        = 0x2 | ||||||
|  | @ -2481,6 +2482,15 @@ type XDPMmapOffsets struct { | ||||||
| 	Cr XDPRingOffset | 	Cr XDPRingOffset | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | type XDPUmemReg struct { | ||||||
|  | 	Addr            uint64 | ||||||
|  | 	Len             uint64 | ||||||
|  | 	Chunk_size      uint32 | ||||||
|  | 	Headroom        uint32 | ||||||
|  | 	Flags           uint32 | ||||||
|  | 	Tx_metadata_len uint32 | ||||||
|  | } | ||||||
|  | 
 | ||||||
| type XDPStatistics struct { | type XDPStatistics struct { | ||||||
| 	Rx_dropped               uint64 | 	Rx_dropped               uint64 | ||||||
| 	Rx_invalid_descs         uint64 | 	Rx_invalid_descs         uint64 | ||||||
|  | @ -2935,7 +2945,7 @@ const ( | ||||||
| 	BPF_TCP_LISTEN                             = 0xa | 	BPF_TCP_LISTEN                             = 0xa | ||||||
| 	BPF_TCP_CLOSING                            = 0xb | 	BPF_TCP_CLOSING                            = 0xb | ||||||
| 	BPF_TCP_NEW_SYN_RECV                       = 0xc | 	BPF_TCP_NEW_SYN_RECV                       = 0xc | ||||||
| 	BPF_TCP_MAX_STATES                         = 0xd | 	BPF_TCP_MAX_STATES                         = 0xe | ||||||
| 	TCP_BPF_IW                                 = 0x3e9 | 	TCP_BPF_IW                                 = 0x3e9 | ||||||
| 	TCP_BPF_SNDCWND_CLAMP                      = 0x3ea | 	TCP_BPF_SNDCWND_CLAMP                      = 0x3ea | ||||||
| 	TCP_BPF_DELACK_MAX                         = 0x3eb | 	TCP_BPF_DELACK_MAX                         = 0x3eb | ||||||
|  | @ -3211,7 +3221,7 @@ const ( | ||||||
| 	DEVLINK_CMD_LINECARD_NEW                           = 0x50 | 	DEVLINK_CMD_LINECARD_NEW                           = 0x50 | ||||||
| 	DEVLINK_CMD_LINECARD_DEL                           = 0x51 | 	DEVLINK_CMD_LINECARD_DEL                           = 0x51 | ||||||
| 	DEVLINK_CMD_SELFTESTS_GET                          = 0x52 | 	DEVLINK_CMD_SELFTESTS_GET                          = 0x52 | ||||||
| 	DEVLINK_CMD_MAX                                    = 0x53 | 	DEVLINK_CMD_MAX                                    = 0x54 | ||||||
| 	DEVLINK_PORT_TYPE_NOTSET                           = 0x0 | 	DEVLINK_PORT_TYPE_NOTSET                           = 0x0 | ||||||
| 	DEVLINK_PORT_TYPE_AUTO                             = 0x1 | 	DEVLINK_PORT_TYPE_AUTO                             = 0x1 | ||||||
| 	DEVLINK_PORT_TYPE_ETH                              = 0x2 | 	DEVLINK_PORT_TYPE_ETH                              = 0x2 | ||||||
|  | @ -4595,7 +4605,7 @@ const ( | ||||||
| 	NL80211_ATTR_MAC_HINT                                   = 0xc8 | 	NL80211_ATTR_MAC_HINT                                   = 0xc8 | ||||||
| 	NL80211_ATTR_MAC_MASK                                   = 0xd7 | 	NL80211_ATTR_MAC_MASK                                   = 0xd7 | ||||||
| 	NL80211_ATTR_MAX_AP_ASSOC_STA                           = 0xca | 	NL80211_ATTR_MAX_AP_ASSOC_STA                           = 0xca | ||||||
| 	NL80211_ATTR_MAX                                        = 0x146 | 	NL80211_ATTR_MAX                                        = 0x149 | ||||||
| 	NL80211_ATTR_MAX_CRIT_PROT_DURATION                     = 0xb4 | 	NL80211_ATTR_MAX_CRIT_PROT_DURATION                     = 0xb4 | ||||||
| 	NL80211_ATTR_MAX_CSA_COUNTERS                           = 0xce | 	NL80211_ATTR_MAX_CSA_COUNTERS                           = 0xce | ||||||
| 	NL80211_ATTR_MAX_MATCH_SETS                             = 0x85 | 	NL80211_ATTR_MAX_MATCH_SETS                             = 0x85 | ||||||
|  | @ -4861,7 +4871,7 @@ const ( | ||||||
| 	NL80211_BSS_FREQUENCY_OFFSET                            = 0x14 | 	NL80211_BSS_FREQUENCY_OFFSET                            = 0x14 | ||||||
| 	NL80211_BSS_INFORMATION_ELEMENTS                        = 0x6 | 	NL80211_BSS_INFORMATION_ELEMENTS                        = 0x6 | ||||||
| 	NL80211_BSS_LAST_SEEN_BOOTTIME                          = 0xf | 	NL80211_BSS_LAST_SEEN_BOOTTIME                          = 0xf | ||||||
| 	NL80211_BSS_MAX                                         = 0x16 | 	NL80211_BSS_MAX                                         = 0x18 | ||||||
| 	NL80211_BSS_MLD_ADDR                                    = 0x16 | 	NL80211_BSS_MLD_ADDR                                    = 0x16 | ||||||
| 	NL80211_BSS_MLO_LINK_ID                                 = 0x15 | 	NL80211_BSS_MLO_LINK_ID                                 = 0x15 | ||||||
| 	NL80211_BSS_PAD                                         = 0x10 | 	NL80211_BSS_PAD                                         = 0x10 | ||||||
|  | @ -4965,7 +4975,7 @@ const ( | ||||||
| 	NL80211_CMD_LEAVE_IBSS                                  = 0x2c | 	NL80211_CMD_LEAVE_IBSS                                  = 0x2c | ||||||
| 	NL80211_CMD_LEAVE_MESH                                  = 0x45 | 	NL80211_CMD_LEAVE_MESH                                  = 0x45 | ||||||
| 	NL80211_CMD_LEAVE_OCB                                   = 0x6d | 	NL80211_CMD_LEAVE_OCB                                   = 0x6d | ||||||
| 	NL80211_CMD_MAX                                         = 0x9a | 	NL80211_CMD_MAX                                         = 0x9b | ||||||
| 	NL80211_CMD_MICHAEL_MIC_FAILURE                         = 0x29 | 	NL80211_CMD_MICHAEL_MIC_FAILURE                         = 0x29 | ||||||
| 	NL80211_CMD_MODIFY_LINK_STA                             = 0x97 | 	NL80211_CMD_MODIFY_LINK_STA                             = 0x97 | ||||||
| 	NL80211_CMD_NAN_MATCH                                   = 0x78 | 	NL80211_CMD_NAN_MATCH                                   = 0x78 | ||||||
|  | @ -5199,7 +5209,7 @@ const ( | ||||||
| 	NL80211_FREQUENCY_ATTR_GO_CONCURRENT                    = 0xf | 	NL80211_FREQUENCY_ATTR_GO_CONCURRENT                    = 0xf | ||||||
| 	NL80211_FREQUENCY_ATTR_INDOOR_ONLY                      = 0xe | 	NL80211_FREQUENCY_ATTR_INDOOR_ONLY                      = 0xe | ||||||
| 	NL80211_FREQUENCY_ATTR_IR_CONCURRENT                    = 0xf | 	NL80211_FREQUENCY_ATTR_IR_CONCURRENT                    = 0xf | ||||||
| 	NL80211_FREQUENCY_ATTR_MAX                              = 0x1c | 	NL80211_FREQUENCY_ATTR_MAX                              = 0x1f | ||||||
| 	NL80211_FREQUENCY_ATTR_MAX_TX_POWER                     = 0x6 | 	NL80211_FREQUENCY_ATTR_MAX_TX_POWER                     = 0x6 | ||||||
| 	NL80211_FREQUENCY_ATTR_NO_10MHZ                         = 0x11 | 	NL80211_FREQUENCY_ATTR_NO_10MHZ                         = 0x11 | ||||||
| 	NL80211_FREQUENCY_ATTR_NO_160MHZ                        = 0xc | 	NL80211_FREQUENCY_ATTR_NO_160MHZ                        = 0xc | ||||||
|  |  | ||||||
							
								
								
									
										8
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_386.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										8
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_386.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -477,14 +477,6 @@ const ( | ||||||
| 	BLKPG = 0x1269 | 	BLKPG = 0x1269 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type XDPUmemReg struct { |  | ||||||
| 	Addr     uint64 |  | ||||||
| 	Len      uint64 |  | ||||||
| 	Size     uint32 |  | ||||||
| 	Headroom uint32 |  | ||||||
| 	Flags    uint32 |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| type CryptoUserAlg struct { | type CryptoUserAlg struct { | ||||||
| 	Name        [64]int8 | 	Name        [64]int8 | ||||||
| 	Driver_name [64]int8 | 	Driver_name [64]int8 | ||||||
|  |  | ||||||
							
								
								
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -492,15 +492,6 @@ const ( | ||||||
| 	BLKPG = 0x1269 | 	BLKPG = 0x1269 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type XDPUmemReg struct { |  | ||||||
| 	Addr     uint64 |  | ||||||
| 	Len      uint64 |  | ||||||
| 	Size     uint32 |  | ||||||
| 	Headroom uint32 |  | ||||||
| 	Flags    uint32 |  | ||||||
| 	_        [4]byte |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| type CryptoUserAlg struct { | type CryptoUserAlg struct { | ||||||
| 	Name        [64]int8 | 	Name        [64]int8 | ||||||
| 	Driver_name [64]int8 | 	Driver_name [64]int8 | ||||||
|  |  | ||||||
							
								
								
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -470,15 +470,6 @@ const ( | ||||||
| 	BLKPG = 0x1269 | 	BLKPG = 0x1269 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type XDPUmemReg struct { |  | ||||||
| 	Addr     uint64 |  | ||||||
| 	Len      uint64 |  | ||||||
| 	Size     uint32 |  | ||||||
| 	Headroom uint32 |  | ||||||
| 	Flags    uint32 |  | ||||||
| 	_        [4]byte |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| type CryptoUserAlg struct { | type CryptoUserAlg struct { | ||||||
| 	Name        [64]uint8 | 	Name        [64]uint8 | ||||||
| 	Driver_name [64]uint8 | 	Driver_name [64]uint8 | ||||||
|  |  | ||||||
							
								
								
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -471,15 +471,6 @@ const ( | ||||||
| 	BLKPG = 0x1269 | 	BLKPG = 0x1269 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type XDPUmemReg struct { |  | ||||||
| 	Addr     uint64 |  | ||||||
| 	Len      uint64 |  | ||||||
| 	Size     uint32 |  | ||||||
| 	Headroom uint32 |  | ||||||
| 	Flags    uint32 |  | ||||||
| 	_        [4]byte |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| type CryptoUserAlg struct { | type CryptoUserAlg struct { | ||||||
| 	Name        [64]int8 | 	Name        [64]int8 | ||||||
| 	Driver_name [64]int8 | 	Driver_name [64]int8 | ||||||
|  |  | ||||||
							
								
								
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_loong64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_loong64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -472,15 +472,6 @@ const ( | ||||||
| 	BLKPG = 0x1269 | 	BLKPG = 0x1269 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type XDPUmemReg struct { |  | ||||||
| 	Addr     uint64 |  | ||||||
| 	Len      uint64 |  | ||||||
| 	Size     uint32 |  | ||||||
| 	Headroom uint32 |  | ||||||
| 	Flags    uint32 |  | ||||||
| 	_        [4]byte |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| type CryptoUserAlg struct { | type CryptoUserAlg struct { | ||||||
| 	Name        [64]int8 | 	Name        [64]int8 | ||||||
| 	Driver_name [64]int8 | 	Driver_name [64]int8 | ||||||
|  |  | ||||||
							
								
								
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_mips.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_mips.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -476,15 +476,6 @@ const ( | ||||||
| 	BLKPG = 0x20001269 | 	BLKPG = 0x20001269 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type XDPUmemReg struct { |  | ||||||
| 	Addr     uint64 |  | ||||||
| 	Len      uint64 |  | ||||||
| 	Size     uint32 |  | ||||||
| 	Headroom uint32 |  | ||||||
| 	Flags    uint32 |  | ||||||
| 	_        [4]byte |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| type CryptoUserAlg struct { | type CryptoUserAlg struct { | ||||||
| 	Name        [64]int8 | 	Name        [64]int8 | ||||||
| 	Driver_name [64]int8 | 	Driver_name [64]int8 | ||||||
|  |  | ||||||
							
								
								
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -474,15 +474,6 @@ const ( | ||||||
| 	BLKPG = 0x20001269 | 	BLKPG = 0x20001269 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type XDPUmemReg struct { |  | ||||||
| 	Addr     uint64 |  | ||||||
| 	Len      uint64 |  | ||||||
| 	Size     uint32 |  | ||||||
| 	Headroom uint32 |  | ||||||
| 	Flags    uint32 |  | ||||||
| 	_        [4]byte |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| type CryptoUserAlg struct { | type CryptoUserAlg struct { | ||||||
| 	Name        [64]int8 | 	Name        [64]int8 | ||||||
| 	Driver_name [64]int8 | 	Driver_name [64]int8 | ||||||
|  |  | ||||||
							
								
								
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -474,15 +474,6 @@ const ( | ||||||
| 	BLKPG = 0x20001269 | 	BLKPG = 0x20001269 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type XDPUmemReg struct { |  | ||||||
| 	Addr     uint64 |  | ||||||
| 	Len      uint64 |  | ||||||
| 	Size     uint32 |  | ||||||
| 	Headroom uint32 |  | ||||||
| 	Flags    uint32 |  | ||||||
| 	_        [4]byte |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| type CryptoUserAlg struct { | type CryptoUserAlg struct { | ||||||
| 	Name        [64]int8 | 	Name        [64]int8 | ||||||
| 	Driver_name [64]int8 | 	Driver_name [64]int8 | ||||||
|  |  | ||||||
							
								
								
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -476,15 +476,6 @@ const ( | ||||||
| 	BLKPG = 0x20001269 | 	BLKPG = 0x20001269 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type XDPUmemReg struct { |  | ||||||
| 	Addr     uint64 |  | ||||||
| 	Len      uint64 |  | ||||||
| 	Size     uint32 |  | ||||||
| 	Headroom uint32 |  | ||||||
| 	Flags    uint32 |  | ||||||
| 	_        [4]byte |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| type CryptoUserAlg struct { | type CryptoUserAlg struct { | ||||||
| 	Name        [64]int8 | 	Name        [64]int8 | ||||||
| 	Driver_name [64]int8 | 	Driver_name [64]int8 | ||||||
|  |  | ||||||
							
								
								
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -482,15 +482,6 @@ const ( | ||||||
| 	BLKPG = 0x20001269 | 	BLKPG = 0x20001269 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type XDPUmemReg struct { |  | ||||||
| 	Addr     uint64 |  | ||||||
| 	Len      uint64 |  | ||||||
| 	Size     uint32 |  | ||||||
| 	Headroom uint32 |  | ||||||
| 	Flags    uint32 |  | ||||||
| 	_        [4]byte |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| type CryptoUserAlg struct { | type CryptoUserAlg struct { | ||||||
| 	Name        [64]uint8 | 	Name        [64]uint8 | ||||||
| 	Driver_name [64]uint8 | 	Driver_name [64]uint8 | ||||||
|  |  | ||||||
							
								
								
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -481,15 +481,6 @@ const ( | ||||||
| 	BLKPG = 0x20001269 | 	BLKPG = 0x20001269 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type XDPUmemReg struct { |  | ||||||
| 	Addr     uint64 |  | ||||||
| 	Len      uint64 |  | ||||||
| 	Size     uint32 |  | ||||||
| 	Headroom uint32 |  | ||||||
| 	Flags    uint32 |  | ||||||
| 	_        [4]byte |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| type CryptoUserAlg struct { | type CryptoUserAlg struct { | ||||||
| 	Name        [64]uint8 | 	Name        [64]uint8 | ||||||
| 	Driver_name [64]uint8 | 	Driver_name [64]uint8 | ||||||
|  |  | ||||||
							
								
								
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -481,15 +481,6 @@ const ( | ||||||
| 	BLKPG = 0x20001269 | 	BLKPG = 0x20001269 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type XDPUmemReg struct { |  | ||||||
| 	Addr     uint64 |  | ||||||
| 	Len      uint64 |  | ||||||
| 	Size     uint32 |  | ||||||
| 	Headroom uint32 |  | ||||||
| 	Flags    uint32 |  | ||||||
| 	_        [4]byte |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| type CryptoUserAlg struct { | type CryptoUserAlg struct { | ||||||
| 	Name        [64]uint8 | 	Name        [64]uint8 | ||||||
| 	Driver_name [64]uint8 | 	Driver_name [64]uint8 | ||||||
|  |  | ||||||
							
								
								
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -499,15 +499,6 @@ const ( | ||||||
| 	BLKPG = 0x1269 | 	BLKPG = 0x1269 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type XDPUmemReg struct { |  | ||||||
| 	Addr     uint64 |  | ||||||
| 	Len      uint64 |  | ||||||
| 	Size     uint32 |  | ||||||
| 	Headroom uint32 |  | ||||||
| 	Flags    uint32 |  | ||||||
| 	_        [4]byte |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| type CryptoUserAlg struct { | type CryptoUserAlg struct { | ||||||
| 	Name        [64]uint8 | 	Name        [64]uint8 | ||||||
| 	Driver_name [64]uint8 | 	Driver_name [64]uint8 | ||||||
|  |  | ||||||
							
								
								
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -495,15 +495,6 @@ const ( | ||||||
| 	BLKPG = 0x1269 | 	BLKPG = 0x1269 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type XDPUmemReg struct { |  | ||||||
| 	Addr     uint64 |  | ||||||
| 	Len      uint64 |  | ||||||
| 	Size     uint32 |  | ||||||
| 	Headroom uint32 |  | ||||||
| 	Flags    uint32 |  | ||||||
| 	_        [4]byte |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| type CryptoUserAlg struct { | type CryptoUserAlg struct { | ||||||
| 	Name        [64]int8 | 	Name        [64]int8 | ||||||
| 	Driver_name [64]int8 | 	Driver_name [64]int8 | ||||||
|  |  | ||||||
							
								
								
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -476,15 +476,6 @@ const ( | ||||||
| 	BLKPG = 0x20001269 | 	BLKPG = 0x20001269 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type XDPUmemReg struct { |  | ||||||
| 	Addr     uint64 |  | ||||||
| 	Len      uint64 |  | ||||||
| 	Size     uint32 |  | ||||||
| 	Headroom uint32 |  | ||||||
| 	Flags    uint32 |  | ||||||
| 	_        [4]byte |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| type CryptoUserAlg struct { | type CryptoUserAlg struct { | ||||||
| 	Name        [64]int8 | 	Name        [64]int8 | ||||||
| 	Driver_name [64]int8 | 	Driver_name [64]int8 | ||||||
|  |  | ||||||
							
								
								
									
										146
									
								
								vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										146
									
								
								vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -25,10 +25,13 @@ const ( | ||||||
| 	SizeofIPv6Mreq      = 20 | 	SizeofIPv6Mreq      = 20 | ||||||
| 	SizeofICMPv6Filter  = 32 | 	SizeofICMPv6Filter  = 32 | ||||||
| 	SizeofIPv6MTUInfo   = 32 | 	SizeofIPv6MTUInfo   = 32 | ||||||
|  | 	SizeofInet4Pktinfo  = 8 | ||||||
|  | 	SizeofInet6Pktinfo  = 20 | ||||||
| 	SizeofLinger        = 8 | 	SizeofLinger        = 8 | ||||||
| 	SizeofSockaddrInet4 = 16 | 	SizeofSockaddrInet4 = 16 | ||||||
| 	SizeofSockaddrInet6 = 28 | 	SizeofSockaddrInet6 = 28 | ||||||
| 	SizeofTCPInfo       = 0x68 | 	SizeofTCPInfo       = 0x68 | ||||||
|  | 	SizeofUcred         = 12 | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| type ( | type ( | ||||||
|  | @ -69,12 +72,17 @@ type Utimbuf struct { | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| type Utsname struct { | type Utsname struct { | ||||||
| 	Sysname    [65]byte | 	Sysname  [16]byte | ||||||
| 	Nodename   [65]byte | 	Nodename [32]byte | ||||||
| 	Release    [65]byte | 	Release  [8]byte | ||||||
| 	Version    [65]byte | 	Version  [8]byte | ||||||
| 	Machine    [65]byte | 	Machine  [16]byte | ||||||
| 	Domainname [65]byte | } | ||||||
|  | 
 | ||||||
|  | type Ucred struct { | ||||||
|  | 	Pid int32 | ||||||
|  | 	Uid uint32 | ||||||
|  | 	Gid uint32 | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| type RawSockaddrInet4 struct { | type RawSockaddrInet4 struct { | ||||||
|  | @ -325,7 +333,7 @@ type Statvfs_t struct { | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| type Statfs_t struct { | type Statfs_t struct { | ||||||
| 	Type    uint32 | 	Type    uint64 | ||||||
| 	Bsize   uint64 | 	Bsize   uint64 | ||||||
| 	Blocks  uint64 | 	Blocks  uint64 | ||||||
| 	Bfree   uint64 | 	Bfree   uint64 | ||||||
|  | @ -336,6 +344,7 @@ type Statfs_t struct { | ||||||
| 	Namelen uint64 | 	Namelen uint64 | ||||||
| 	Frsize  uint64 | 	Frsize  uint64 | ||||||
| 	Flags   uint64 | 	Flags   uint64 | ||||||
|  | 	_       [4]uint64 | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| type direntLE struct { | type direntLE struct { | ||||||
|  | @ -412,3 +421,126 @@ type W_Mntent struct { | ||||||
| 	Quiesceowner [8]byte | 	Quiesceowner [8]byte | ||||||
| 	_            [38]byte | 	_            [38]byte | ||||||
| } | } | ||||||
|  | 
 | ||||||
|  | type EpollEvent struct { | ||||||
|  | 	Events uint32 | ||||||
|  | 	_      int32 | ||||||
|  | 	Fd     int32 | ||||||
|  | 	Pad    int32 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | type InotifyEvent struct { | ||||||
|  | 	Wd     int32 | ||||||
|  | 	Mask   uint32 | ||||||
|  | 	Cookie uint32 | ||||||
|  | 	Len    uint32 | ||||||
|  | 	Name   string | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | const ( | ||||||
|  | 	SizeofInotifyEvent = 0x10 | ||||||
|  | ) | ||||||
|  | 
 | ||||||
|  | type ConsMsg2 struct { | ||||||
|  | 	Cm2Format       uint16 | ||||||
|  | 	Cm2R1           uint16 | ||||||
|  | 	Cm2Msglength    uint32 | ||||||
|  | 	Cm2Msg          *byte | ||||||
|  | 	Cm2R2           [4]byte | ||||||
|  | 	Cm2R3           [4]byte | ||||||
|  | 	Cm2Routcde      *uint32 | ||||||
|  | 	Cm2Descr        *uint32 | ||||||
|  | 	Cm2Msgflag      uint32 | ||||||
|  | 	Cm2Token        uint32 | ||||||
|  | 	Cm2Msgid        *uint32 | ||||||
|  | 	Cm2R4           [4]byte | ||||||
|  | 	Cm2DomToken     uint32 | ||||||
|  | 	Cm2DomMsgid     *uint32 | ||||||
|  | 	Cm2ModCartptr   *byte | ||||||
|  | 	Cm2ModConsidptr *byte | ||||||
|  | 	Cm2MsgCart      [8]byte | ||||||
|  | 	Cm2MsgConsid    [4]byte | ||||||
|  | 	Cm2R5           [12]byte | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | const ( | ||||||
|  | 	CC_modify        = 1 | ||||||
|  | 	CC_stop          = 2 | ||||||
|  | 	CONSOLE_FORMAT_2 = 2 | ||||||
|  | 	CONSOLE_FORMAT_3 = 3 | ||||||
|  | 	CONSOLE_HRDCPY   = 0x80000000 | ||||||
|  | ) | ||||||
|  | 
 | ||||||
|  | type OpenHow struct { | ||||||
|  | 	Flags   uint64 | ||||||
|  | 	Mode    uint64 | ||||||
|  | 	Resolve uint64 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | const SizeofOpenHow = 0x18 | ||||||
|  | 
 | ||||||
|  | const ( | ||||||
|  | 	RESOLVE_CACHED        = 0x20 | ||||||
|  | 	RESOLVE_BENEATH       = 0x8 | ||||||
|  | 	RESOLVE_IN_ROOT       = 0x10 | ||||||
|  | 	RESOLVE_NO_MAGICLINKS = 0x2 | ||||||
|  | 	RESOLVE_NO_SYMLINKS   = 0x4 | ||||||
|  | 	RESOLVE_NO_XDEV       = 0x1 | ||||||
|  | ) | ||||||
|  | 
 | ||||||
|  | type Siginfo struct { | ||||||
|  | 	Signo int32 | ||||||
|  | 	Errno int32 | ||||||
|  | 	Code  int32 | ||||||
|  | 	Pid   int32 | ||||||
|  | 	Uid   uint32 | ||||||
|  | 	_     [44]byte | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | type SysvIpcPerm struct { | ||||||
|  | 	Uid  uint32 | ||||||
|  | 	Gid  uint32 | ||||||
|  | 	Cuid uint32 | ||||||
|  | 	Cgid uint32 | ||||||
|  | 	Mode int32 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | type SysvShmDesc struct { | ||||||
|  | 	Perm   SysvIpcPerm | ||||||
|  | 	_      [4]byte | ||||||
|  | 	Lpid   int32 | ||||||
|  | 	Cpid   int32 | ||||||
|  | 	Nattch uint32 | ||||||
|  | 	_      [4]byte | ||||||
|  | 	_      [4]byte | ||||||
|  | 	_      [4]byte | ||||||
|  | 	_      int32 | ||||||
|  | 	_      uint8 | ||||||
|  | 	_      uint8 | ||||||
|  | 	_      uint16 | ||||||
|  | 	_      *byte | ||||||
|  | 	Segsz  uint64 | ||||||
|  | 	Atime  Time_t | ||||||
|  | 	Dtime  Time_t | ||||||
|  | 	Ctime  Time_t | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | type SysvShmDesc64 struct { | ||||||
|  | 	Perm   SysvIpcPerm | ||||||
|  | 	_      [4]byte | ||||||
|  | 	Lpid   int32 | ||||||
|  | 	Cpid   int32 | ||||||
|  | 	Nattch uint32 | ||||||
|  | 	_      [4]byte | ||||||
|  | 	_      [4]byte | ||||||
|  | 	_      [4]byte | ||||||
|  | 	_      int32 | ||||||
|  | 	_      byte | ||||||
|  | 	_      uint8 | ||||||
|  | 	_      uint16 | ||||||
|  | 	_      *byte | ||||||
|  | 	Segsz  uint64 | ||||||
|  | 	Atime  int64 | ||||||
|  | 	Dtime  int64 | ||||||
|  | 	Ctime  int64 | ||||||
|  | } | ||||||
|  |  | ||||||
							
								
								
									
										2
									
								
								vendor/golang.org/x/sys/windows/aliases.go
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								vendor/golang.org/x/sys/windows/aliases.go
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -2,7 +2,7 @@ | ||||||
| // Use of this source code is governed by a BSD-style | // Use of this source code is governed by a BSD-style | ||||||
| // license that can be found in the LICENSE file. | // license that can be found in the LICENSE file. | ||||||
| 
 | 
 | ||||||
| //go:build windows && go1.9 | //go:build windows | ||||||
| 
 | 
 | ||||||
| package windows | package windows | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
							
								
								
									
										8
									
								
								vendor/golang.org/x/sys/windows/empty.s
									
										
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										8
									
								
								vendor/golang.org/x/sys/windows/empty.s
									
										
									
										generated
									
									
										vendored
									
									
								
							|  | @ -1,8 +0,0 @@ | ||||||
| // Copyright 2019 The Go Authors. All rights reserved. |  | ||||||
| // Use of this source code is governed by a BSD-style |  | ||||||
| // license that can be found in the LICENSE file. |  | ||||||
| 
 |  | ||||||
| //go:build !go1.12 |  | ||||||
| 
 |  | ||||||
| // This file is here to allow bodyless functions with go:linkname for Go 1.11 |  | ||||||
| // and earlier (see https://golang.org/issue/23311). |  | ||||||
							
								
								
									
										6
									
								
								vendor/modules.txt
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										6
									
								
								vendor/modules.txt
									
										
									
									
										vendored
									
									
								
							|  | @ -1003,7 +1003,7 @@ go.uber.org/multierr | ||||||
| # golang.org/x/arch v0.7.0 | # golang.org/x/arch v0.7.0 | ||||||
| ## explicit; go 1.18 | ## explicit; go 1.18 | ||||||
| golang.org/x/arch/x86/x86asm | golang.org/x/arch/x86/x86asm | ||||||
| # golang.org/x/crypto v0.22.0 | # golang.org/x/crypto v0.23.0 | ||||||
| ## explicit; go 1.18 | ## explicit; go 1.18 | ||||||
| golang.org/x/crypto/acme | golang.org/x/crypto/acme | ||||||
| golang.org/x/crypto/acme/autocert | golang.org/x/crypto/acme/autocert | ||||||
|  | @ -1046,7 +1046,7 @@ golang.org/x/image/webp | ||||||
| golang.org/x/mod/internal/lazyregexp | golang.org/x/mod/internal/lazyregexp | ||||||
| golang.org/x/mod/module | golang.org/x/mod/module | ||||||
| golang.org/x/mod/semver | golang.org/x/mod/semver | ||||||
| # golang.org/x/net v0.24.0 | # golang.org/x/net v0.25.0 | ||||||
| ## explicit; go 1.18 | ## explicit; go 1.18 | ||||||
| golang.org/x/net/bpf | golang.org/x/net/bpf | ||||||
| golang.org/x/net/context | golang.org/x/net/context | ||||||
|  | @ -1074,7 +1074,7 @@ golang.org/x/oauth2/internal | ||||||
| ## explicit; go 1.18 | ## explicit; go 1.18 | ||||||
| golang.org/x/sync/errgroup | golang.org/x/sync/errgroup | ||||||
| golang.org/x/sync/semaphore | golang.org/x/sync/semaphore | ||||||
| # golang.org/x/sys v0.19.0 | # golang.org/x/sys v0.20.0 | ||||||
| ## explicit; go 1.18 | ## explicit; go 1.18 | ||||||
| golang.org/x/sys/cpu | golang.org/x/sys/cpu | ||||||
| golang.org/x/sys/unix | golang.org/x/sys/unix | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue