ruby_snowflake_client 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.github/dependabot.yml +11 -0
- data/.github/workflows/ci.yml +42 -0
- data/.github/workflows/release.yml +30 -0
- data/.gitignore +10 -0
- data/Gemfile +12 -0
- data/Gemfile.lock +43 -0
- data/LICENSE.txt +21 -0
- data/README.md +130 -0
- data/Rakefile +3 -0
- data/ext/c-decl.go +54 -0
- data/ext/extconf.rb +21 -0
- data/ext/go.mod +60 -0
- data/ext/go.sum +173 -0
- data/ext/result.go +181 -0
- data/ext/ruby_snowflake.go +179 -0
- data/ext/vendor/github.com/99designs/go-keychain/.gitignore +24 -0
- data/ext/vendor/github.com/99designs/go-keychain/.golangci.yml +11 -0
- data/ext/vendor/github.com/99designs/go-keychain/.travis.yml +20 -0
- data/ext/vendor/github.com/99designs/go-keychain/LICENSE +22 -0
- data/ext/vendor/github.com/99designs/go-keychain/README.md +159 -0
- data/ext/vendor/github.com/99designs/go-keychain/corefoundation.go +359 -0
- data/ext/vendor/github.com/99designs/go-keychain/datetime.go +68 -0
- data/ext/vendor/github.com/99designs/go-keychain/ios.go +22 -0
- data/ext/vendor/github.com/99designs/go-keychain/keychain.go +531 -0
- data/ext/vendor/github.com/99designs/go-keychain/macos.go +272 -0
- data/ext/vendor/github.com/99designs/go-keychain/util.go +31 -0
- data/ext/vendor/github.com/99designs/keyring/.gitattributes +1 -0
- data/ext/vendor/github.com/99designs/keyring/.gitignore +1 -0
- data/ext/vendor/github.com/99designs/keyring/.golangci.yml +39 -0
- data/ext/vendor/github.com/99designs/keyring/LICENSE +22 -0
- data/ext/vendor/github.com/99designs/keyring/README.md +67 -0
- data/ext/vendor/github.com/99designs/keyring/Vagrantfile +85 -0
- data/ext/vendor/github.com/99designs/keyring/array.go +54 -0
- data/ext/vendor/github.com/99designs/keyring/config.go +58 -0
- data/ext/vendor/github.com/99designs/keyring/docker-compose.yml +7 -0
- data/ext/vendor/github.com/99designs/keyring/file.go +181 -0
- data/ext/vendor/github.com/99designs/keyring/keychain.go +296 -0
- data/ext/vendor/github.com/99designs/keyring/keyctl.go +327 -0
- data/ext/vendor/github.com/99designs/keyring/keyring.go +134 -0
- data/ext/vendor/github.com/99designs/keyring/kwallet.go +237 -0
- data/ext/vendor/github.com/99designs/keyring/pass.go +166 -0
- data/ext/vendor/github.com/99designs/keyring/prompt.go +27 -0
- data/ext/vendor/github.com/99designs/keyring/secretservice.go +293 -0
- data/ext/vendor/github.com/99designs/keyring/tilde.go +22 -0
- data/ext/vendor/github.com/99designs/keyring/wincred.go +98 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/CHANGELOG.md +537 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/LICENSE.txt +21 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/README.md +39 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/ci.yml +29 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/cloud/cloud.go +44 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/cloud/doc.go +53 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/core.go +113 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/doc.go +257 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/errors.go +14 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/etag.go +48 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported/exported.go +83 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported/pipeline.go +97 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported/request.go +182 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported/response_error.go +142 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/log/log.go +38 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/async/async.go +158 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/body/body.go +134 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/loc/loc.go +118 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/op/op.go +144 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/poller.go +24 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/pollers/util.go +317 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/shared/constants.go +35 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/shared/shared.go +159 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/log/doc.go +10 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/log/log.go +50 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/policy/doc.go +10 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/policy/policy.go +155 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/doc.go +10 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/errors.go +19 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/pager.go +77 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/pipeline.go +66 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_api_version.go +75 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_bearer_token.go +116 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_body_download.go +73 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_http_header.go +39 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_include_response.go +34 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_logging.go +263 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_request_id.go +34 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_retry.go +251 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_telemetry.go +79 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/poller.go +326 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/request.go +248 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/response.go +136 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/transport_default_http_client.go +37 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/streaming/doc.go +9 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/streaming/progress.go +75 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/to/doc.go +9 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/to/to.go +21 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/tracing/constants.go +41 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/tracing/tracing.go +168 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/LICENSE.txt +21 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/diag/diag.go +51 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/diag/doc.go +7 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/errorinfo/doc.go +7 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/errorinfo/errorinfo.go +16 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/log/doc.go +7 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/log/log.go +104 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/temporal/resource.go +123 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/uuid/doc.go +7 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/uuid/uuid.go +76 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/CHANGELOG.md +167 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/LICENSE.txt +21 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/README.md +274 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/appendblob/client.go +352 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/appendblob/models.go +176 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/appendblob/responses.go +26 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/assets.json +6 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blob/client.go +446 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blob/constants.go +229 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blob/models.go +567 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blob/responses.go +116 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blob/retry_reader.go +192 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blob/utils.go +79 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/bloberror/error_codes.go +156 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blockblob/chunkwriting.go +313 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blockblob/client.go +532 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blockblob/constants.go +39 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blockblob/mmf_unix.go +38 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blockblob/mmf_windows.go +54 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blockblob/models.go +348 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blockblob/responses.go +114 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/ci.yml +28 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/client.go +176 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/common.go +36 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/constants.go +37 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/container/client.go +331 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/container/constants.go +150 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/container/models.go +331 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/container/responses.go +44 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/doc.go +213 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/base/clients.go +89 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/access_conditions.go +43 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/access_policy.go +67 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/exported.go +33 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/log_events.go +14 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/set_expiry.go +71 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/shared_key_credential.go +218 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/transfer_validation_option.go +67 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/user_delegation_credential.go +64 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/exported/version.go +12 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/appendblob_client.go +19 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/autorest.md +387 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/blob_client.go +17 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/block_blob_client.go +19 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/build.go +10 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/container_client.go +17 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/models.go +65 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/pageblob_client.go +17 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/service_client.go +17 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_appendblob_client.go +659 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_blob_client.go +2879 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_blockblob_client.go +972 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_constants.go +714 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_container_client.go +1478 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_models.go +1733 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_models_serde.go +481 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_pageblob_client.go +1297 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_response_types.go +1972 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_service_client.go +558 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_time_rfc1123.go +43 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_time_rfc3339.go +59 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/generated/zz_xml_helper.go +41 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/shared/batch_transfer.go +77 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/shared/bytes_writer.go +30 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/shared/section_writer.go +53 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/internal/shared/shared.go +243 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/log.go +11 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/migrationguide.md +76 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/models.go +69 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/pageblob/client.go +433 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/pageblob/constants.go +65 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/pageblob/models.go +330 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/pageblob/responses.go +38 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/responses.go +51 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/sas/account.go +202 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/sas/query_params.go +440 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/sas/service.go +448 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/sas/url_parts.go +166 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/service/client.go +282 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/service/constants.go +92 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/service/models.go +301 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/service/responses.go +44 -0
- data/ext/vendor/github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/test-resources.json +579 -0
- data/ext/vendor/github.com/andybalholm/brotli/LICENSE +19 -0
- data/ext/vendor/github.com/andybalholm/brotli/README.md +7 -0
- data/ext/vendor/github.com/andybalholm/brotli/backward_references.go +185 -0
- data/ext/vendor/github.com/andybalholm/brotli/backward_references_hq.go +796 -0
- data/ext/vendor/github.com/andybalholm/brotli/bit_cost.go +436 -0
- data/ext/vendor/github.com/andybalholm/brotli/bit_reader.go +266 -0
- data/ext/vendor/github.com/andybalholm/brotli/block_splitter.go +144 -0
- data/ext/vendor/github.com/andybalholm/brotli/block_splitter_command.go +434 -0
- data/ext/vendor/github.com/andybalholm/brotli/block_splitter_distance.go +433 -0
- data/ext/vendor/github.com/andybalholm/brotli/block_splitter_literal.go +433 -0
- data/ext/vendor/github.com/andybalholm/brotli/brotli_bit_stream.go +1300 -0
- data/ext/vendor/github.com/andybalholm/brotli/cluster.go +30 -0
- data/ext/vendor/github.com/andybalholm/brotli/cluster_command.go +164 -0
- data/ext/vendor/github.com/andybalholm/brotli/cluster_distance.go +326 -0
- data/ext/vendor/github.com/andybalholm/brotli/cluster_literal.go +326 -0
- data/ext/vendor/github.com/andybalholm/brotli/command.go +254 -0
- data/ext/vendor/github.com/andybalholm/brotli/compress_fragment.go +834 -0
- data/ext/vendor/github.com/andybalholm/brotli/compress_fragment_two_pass.go +748 -0
- data/ext/vendor/github.com/andybalholm/brotli/constants.go +77 -0
- data/ext/vendor/github.com/andybalholm/brotli/context.go +2176 -0
- data/ext/vendor/github.com/andybalholm/brotli/decode.go +2586 -0
- data/ext/vendor/github.com/andybalholm/brotli/dictionary.go +122890 -0
- data/ext/vendor/github.com/andybalholm/brotli/dictionary_hash.go +32779 -0
- data/ext/vendor/github.com/andybalholm/brotli/encode.go +1220 -0
- data/ext/vendor/github.com/andybalholm/brotli/encoder_dict.go +22 -0
- data/ext/vendor/github.com/andybalholm/brotli/entropy_encode.go +592 -0
- data/ext/vendor/github.com/andybalholm/brotli/entropy_encode_static.go +4394 -0
- data/ext/vendor/github.com/andybalholm/brotli/fast_log.go +290 -0
- data/ext/vendor/github.com/andybalholm/brotli/find_match_length.go +45 -0
- data/ext/vendor/github.com/andybalholm/brotli/h10.go +287 -0
- data/ext/vendor/github.com/andybalholm/brotli/h5.go +214 -0
- data/ext/vendor/github.com/andybalholm/brotli/h6.go +216 -0
- data/ext/vendor/github.com/andybalholm/brotli/hash.go +342 -0
- data/ext/vendor/github.com/andybalholm/brotli/hash_composite.go +93 -0
- data/ext/vendor/github.com/andybalholm/brotli/hash_forgetful_chain.go +252 -0
- data/ext/vendor/github.com/andybalholm/brotli/hash_longest_match_quickly.go +214 -0
- data/ext/vendor/github.com/andybalholm/brotli/hash_rolling.go +168 -0
- data/ext/vendor/github.com/andybalholm/brotli/histogram.go +226 -0
- data/ext/vendor/github.com/andybalholm/brotli/http.go +192 -0
- data/ext/vendor/github.com/andybalholm/brotli/huffman.go +653 -0
- data/ext/vendor/github.com/andybalholm/brotli/literal_cost.go +182 -0
- data/ext/vendor/github.com/andybalholm/brotli/memory.go +66 -0
- data/ext/vendor/github.com/andybalholm/brotli/metablock.go +574 -0
- data/ext/vendor/github.com/andybalholm/brotli/metablock_command.go +165 -0
- data/ext/vendor/github.com/andybalholm/brotli/metablock_distance.go +165 -0
- data/ext/vendor/github.com/andybalholm/brotli/metablock_literal.go +165 -0
- data/ext/vendor/github.com/andybalholm/brotli/params.go +37 -0
- data/ext/vendor/github.com/andybalholm/brotli/platform.go +103 -0
- data/ext/vendor/github.com/andybalholm/brotli/prefix.go +30 -0
- data/ext/vendor/github.com/andybalholm/brotli/prefix_dec.go +723 -0
- data/ext/vendor/github.com/andybalholm/brotli/quality.go +196 -0
- data/ext/vendor/github.com/andybalholm/brotli/reader.go +102 -0
- data/ext/vendor/github.com/andybalholm/brotli/ringbuffer.go +134 -0
- data/ext/vendor/github.com/andybalholm/brotli/state.go +295 -0
- data/ext/vendor/github.com/andybalholm/brotli/static_dict.go +662 -0
- data/ext/vendor/github.com/andybalholm/brotli/static_dict_lut.go +75094 -0
- data/ext/vendor/github.com/andybalholm/brotli/symbol_list.go +22 -0
- data/ext/vendor/github.com/andybalholm/brotli/transform.go +641 -0
- data/ext/vendor/github.com/andybalholm/brotli/utf8_util.go +70 -0
- data/ext/vendor/github.com/andybalholm/brotli/util.go +7 -0
- data/ext/vendor/github.com/andybalholm/brotli/write_bits.go +52 -0
- data/ext/vendor/github.com/andybalholm/brotli/writer.go +119 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/LICENSE.txt +1873 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/.editorconfig +21 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/.gitignore +35 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/Gopkg.lock +44 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/Gopkg.toml +23 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/Makefile +54 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/array.go +184 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/binary.go +308 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/binarybuilder.go +335 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/boolean.go +117 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/booleanbuilder.go +234 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/bufferbuilder.go +143 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/bufferbuilder_byte.go +30 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/bufferbuilder_numeric.gen.go +124 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/bufferbuilder_numeric.gen.go.tmpl +61 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/builder.go +337 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/compare.go +728 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/concat.go +567 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/data.go +250 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/decimal128.go +334 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/decimal256.go +333 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/dictionary.go +1666 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/doc.go +20 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/extension.go +256 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/fixed_size_list.go +337 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/fixedsize_binary.go +116 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/fixedsize_binarybuilder.go +229 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/float16.go +107 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/float16_builder.go +237 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/interval.go +847 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/json_reader.go +205 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/list.go +589 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/map.go +304 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/null.go +198 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/numeric.gen.go +1406 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/numeric.gen.go.tmpl +136 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/numericbuilder.gen.go +3429 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/numericbuilder.gen.go.tmpl +371 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/numericbuilder.gen_test.go.tmpl +216 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/record.go +383 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/string.go +498 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/struct.go +442 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/table.go +337 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/union.go +1308 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array/util.go +492 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/array.go +122 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/arrio/arrio.go +92 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/Makefile +62 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops.go +63 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_amd64.go +35 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_arm64.go +25 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_avx2_amd64.go +38 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_avx2_amd64.s +192 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_noasm.go +25 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_ppc64le.go +25 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_s390x.go +25 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_sse4_amd64.go +38 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmap_ops_sse4_amd64.s +256 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitmaps.go +586 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/bitutil.go +220 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/endian_default.go +33 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/bitutil/endian_s390x.go +32 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/compare.go +127 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype.go +376 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype_binary.go +98 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype_extension.go +173 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype_fixedwidth.go +786 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype_nested.go +732 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype_null.go +33 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype_numeric.gen.go +206 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype_numeric.gen.go.tmpl +45 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/datatype_numeric.gen.go.tmpldata +66 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/decimal128/decimal128.go +445 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/decimal256/decimal256.go +545 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/doc.go +43 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/endian/big.go +30 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/endian/endian.go +41 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/endian/little.go +30 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/errors.go +27 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/float16/float16.go +70 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/debug/assert_off.go +24 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/debug/assert_on.go +28 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/debug/doc.go +32 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/debug/log_off.go +21 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/debug/log_on.go +32 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/debug/util.go +37 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/dictutils/dict.go +406 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Binary.go +51 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Block.go +74 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/BodyCompression.go +89 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/BodyCompressionMethod.go +52 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Bool.go +50 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Buffer.go +73 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/CompressionType.go +45 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Date.go +71 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/DateUnit.go +45 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Decimal.go +107 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/DictionaryBatch.go +108 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/DictionaryEncoding.go +135 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/DictionaryKind.go +47 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Duration.go +65 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Endianness.go +47 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Feature.go +71 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Field.go +188 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/FieldNode.go +76 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/FixedSizeBinary.go +67 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/FixedSizeList.go +67 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/FloatingPoint.go +65 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Footer.go +162 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Int.go +80 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Interval.go +65 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/IntervalUnit.go +48 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/KeyValue.go +75 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/LargeBinary.go +52 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/LargeList.go +52 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/LargeUtf8.go +52 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/List.go +50 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Map.go +92 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Message.go +133 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/MessageHeader.go +65 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/MetadataVersion.go +65 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Null.go +51 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Precision.go +48 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/RecordBatch.go +154 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Schema.go +159 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/SparseMatrixCompressedAxis.go +45 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/SparseMatrixIndexCSR.go +181 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/SparseMatrixIndexCSX.go +200 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/SparseTensor.go +175 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/SparseTensorIndex.go +51 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/SparseTensorIndexCOO.go +179 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/SparseTensorIndexCSF.go +291 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Struct_.go +53 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Tensor.go +163 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/TensorDim.go +83 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Time.go +94 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/TimeUnit.go +51 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Timestamp.go +201 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Type.go +108 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Union.go +101 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/UnionMode.go +45 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/flatbuf/Utf8.go +51 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/internal/utils.go +47 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/compression.go +120 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/endian_swap.go +162 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/file_reader.go +728 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/file_writer.go +392 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/ipc.go +178 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/message.go +242 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/metadata.go +1237 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/reader.go +284 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/ipc/writer.go +892 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/Makefile +66 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/allocator.go +33 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/buffer.go +145 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/cgo_allocator.go +108 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/cgo_allocator_defaults.go +23 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/cgo_allocator_logging.go +23 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/checked_allocator.go +157 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/doc.go +20 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/go_allocator.go +48 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/internal/cgoalloc/allocator.cc +71 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/internal/cgoalloc/allocator.go +107 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/internal/cgoalloc/allocator.h +39 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/internal/cgoalloc/helpers.h +52 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory.go +33 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_amd64.go +33 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_arm64.go +31 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_avx2_amd64.go +41 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_avx2_amd64.s +85 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_js_wasm.go +23 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_neon_arm64.go +31 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_neon_arm64.s +43 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_noasm.go +23 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_sse4_amd64.go +31 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/memory_sse4_amd64.s +84 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/memory/util.go +37 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/numeric.schema.json +15 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/numeric.tmpldata +147 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/record.go +48 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/schema.go +266 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/table.go +189 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/tools.go +25 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_string.go +61 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_traits_boolean.go +28 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_traits_decimal128.go +75 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_traits_decimal256.go +70 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_traits_float16.go +74 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_traits_interval.go +184 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_traits_numeric.gen.go +814 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_traits_numeric.gen.go.tmpl +95 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/type_traits_numeric.gen_test.go.tmpl +61 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/arrow/unionmode_string.go +25 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/bitutils/bit_block_counter.go +417 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/bitutils/bit_run_reader.go +151 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/bitutils/bit_set_run_reader.go +346 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/bitutils/bitmap_generate.go +107 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/hashing/types.tmpldata +42 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/hashing/xxh3_memo_table.gen.go +2783 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/hashing/xxh3_memo_table.gen.go.tmpl +343 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/hashing/xxh3_memo_table.go +465 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/Makefile +80 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/buf_reader.go +212 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/endians_default.go +31 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/endians_s390x.go +33 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/math.go +49 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max.go +212 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_amd64.go +56 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_arm64.go +66 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_avx2_amd64.go +91 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_avx2_amd64.s +927 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_neon_arm64.go +56 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_neon_arm64.s +324 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_noasm.go +32 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_ppc64le.go +31 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_s390x.go +31 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_sse4_amd64.go +89 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/min_max_sse4_amd64.s +1044 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints.go +407 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints.go.tmpl +34 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints.tmpldata +34 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_amd64.go +326 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_amd64.go.tmpl +75 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_arm64.go +97 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_avx2_amd64.go +474 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_avx2_amd64.s +3074 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_def.go +227 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_noasm.go +97 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_noasm.go.tmpl +34 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_ppc64le.go +97 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_s390x.go +97 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_s390x.go.tmpl +34 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_simd.go.tmpl +42 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_sse4_amd64.go +474 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/internal/utils/transpose_ints_sse4_amd64.s +3074 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/.gitignore +31 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/compress/brotli.go +115 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/compress/compress.go +156 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/compress/gzip.go +98 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/compress/snappy.go +62 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/compress/zstd.go +112 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/doc.go +67 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/encryption_properties.go +711 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/debug/assert_off.go +24 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/debug/assert_on.go +28 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/debug/doc.go +23 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/debug/log_off.go +24 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/debug/log_on.go +32 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/gen-go/parquet/GoUnusedProtection__.go +6 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/gen-go/parquet/parquet-consts.go +23 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/gen-go/parquet/parquet.go +10967 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/internal/gen-go/parquet/staticcheck.conf +17 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/reader_properties.go +88 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/tools.go +26 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/types.go +391 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/version_string.go +25 -0
- data/ext/vendor/github.com/apache/arrow/go/v10/parquet/writer_properties.go +533 -0
- data/ext/vendor/github.com/apache/thrift/LICENSE +306 -0
- data/ext/vendor/github.com/apache/thrift/NOTICE +5 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/application_exception.go +183 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/binary_protocol.go +548 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/buf_pool.go +52 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/buffered_transport.go +99 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/client.go +109 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/compact_protocol.go +846 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/configuration.go +378 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/context.go +24 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/debug_protocol.go +447 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/deserializer.go +121 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/exception.go +116 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/framed_transport.go +250 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/header_context.go +110 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/header_protocol.go +351 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/header_transport.go +816 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/http_client.go +256 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/http_transport.go +74 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/iostream_transport.go +222 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/json_protocol.go +564 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/logger.go +69 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/memory_buffer.go +80 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/messagetype.go +31 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/middleware.go +109 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/multiplexed_protocol.go +237 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/numeric.go +164 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/pointerize.go +52 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/processor_factory.go +80 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/protocol.go +184 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/protocol_exception.go +104 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/protocol_factory.go +25 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/response_helper.go +94 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/rich_transport.go +71 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/serializer.go +136 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/server.go +35 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/server_socket.go +137 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/server_transport.go +34 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/simple_json_protocol.go +1334 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/simple_server.go +336 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/socket.go +241 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/socket_conn.go +124 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/socket_non_unix_conn.go +35 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/socket_unix_conn.go +84 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/ssl_server_socket.go +112 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/ssl_socket.go +262 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/staticcheck.conf +4 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/transport.go +70 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/transport_exception.go +131 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/transport_factory.go +39 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/type.go +69 -0
- data/ext/vendor/github.com/apache/thrift/lib/go/thrift/zlib_transport.go +137 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/LICENSE.txt +202 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/NOTICE.txt +3 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/arn/arn.go +92 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/config.go +179 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/context.go +22 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/credential_cache.go +218 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/credentials.go +131 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/defaults/auto.go +38 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/defaults/configuration.go +43 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/defaults/defaults.go +50 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/defaults/doc.go +2 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/defaultsmode.go +95 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/doc.go +62 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/endpoints.go +229 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/errors.go +9 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/from_ptr.go +365 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/go_module_metadata.go +6 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/logging.go +119 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/logging_generate.go +95 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/metadata.go +180 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/middleware.go +168 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/osname.go +24 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/osname_go115.go +24 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/request_id.go +27 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/request_id_retriever.go +49 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/user_agent.go +243 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/CHANGELOG.md +54 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/LICENSE.txt +202 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/debug.go +144 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/decode.go +218 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/encode.go +167 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/error.go +23 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/eventstreamapi/headers.go +24 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/eventstreamapi/middleware.go +71 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/eventstreamapi/transport.go +13 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/eventstreamapi/transport_go117.go +12 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/go_module_metadata.go +6 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/header.go +175 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/header_value.go +521 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/message.go +117 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/xml/error_utils.go +56 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/ratelimit/token_bucket.go +96 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/ratelimit/token_rate_limit.go +87 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/request.go +25 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/adaptive.go +156 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/adaptive_ratelimit.go +158 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/adaptive_token_bucket.go +83 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/doc.go +80 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/errors.go +20 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/jitter_backoff.go +49 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/metadata.go +52 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/middleware.go +331 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/retry.go +90 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/retryable_error.go +186 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/standard.go +258 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/throttle_error.go +60 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retry/timeout_error.go +52 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/retryer.go +127 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/runtime.go +14 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/cache.go +115 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/const.go +40 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/header_rules.go +82 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/headers.go +68 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/hmac.go +13 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/host.go +75 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/scope.go +13 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/time.go +36 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/util.go +80 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/v4/middleware.go +400 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/v4/presign_middleware.go +127 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/v4/stream.go +86 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/signer/v4/v4.go +548 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/to_ptr.go +297 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/transport/http/client.go +310 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/transport/http/content_type.go +42 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/transport/http/response_error.go +33 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/transport/http/response_error_middleware.go +54 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/transport/http/timeout_read_closer.go +104 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/types.go +42 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/aws/version.go +8 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/credentials/CHANGELOG.md +197 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/credentials/LICENSE.txt +202 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/credentials/doc.go +4 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/credentials/go_module_metadata.go +6 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/credentials/static_provider.go +53 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/CHANGELOG.md +249 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/LICENSE.txt +202 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/api.go +37 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/arn.go +23 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/bucket_region.go +139 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/buffered_read_seeker.go +79 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/default_read_seeker_write_to.go +8 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/default_read_seeker_write_to_windows.go +5 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/default_writer_read_from.go +8 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/default_writer_read_from_windows.go +5 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/doc.go +3 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/download.go +525 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/go_module_metadata.go +6 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/pool.go +251 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/read_seeker_write_to.go +65 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/types.go +187 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/upload.go +808 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/feature/s3/manager/writer_read_from.go +83 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/awsutil/copy.go +112 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/awsutil/equal.go +33 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/awsutil/path_value.go +225 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/awsutil/prettify.go +131 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/awsutil/string_value.go +88 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/CHANGELOG.md +130 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/LICENSE.txt +202 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/config.go +65 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/go_module_metadata.go +6 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/CHANGELOG.md +103 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/LICENSE.txt +202 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/endpoints.go +302 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/go_module_metadata.go +6 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/rand/rand.go +33 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/sdk/interfaces.go +9 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/sdk/time.go +74 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/sdkio/byte.go +12 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/strings/strings.go +11 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/sync/singleflight/LICENSE +28 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/sync/singleflight/docs.go +7 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/sync/singleflight/singleflight.go +210 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/timeconv/duration.go +13 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/CHANGELOG.md +61 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/LICENSE.txt +202 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/credentials.go +141 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/error.go +17 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/go_module_metadata.go +6 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/crypto/compare.go +30 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/crypto/ecc.go +113 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/v4/const.go +36 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/v4/header_rules.go +82 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/v4/headers.go +67 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/v4/hmac.go +13 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/v4/host.go +75 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/v4/time.go +36 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/internal/v4/util.go +64 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/middleware.go +105 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/presign_middleware.go +117 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/internal/v4a/v4a.go +520 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/CHANGELOG.md +80 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/LICENSE.txt +202 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/accept_encoding_gzip.go +176 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/doc.go +22 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/go_module_metadata.go +6 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/CHANGELOG.md +84 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/LICENSE.txt +202 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/algorithms.go +323 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/aws_chunked_encoding.go +389 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/go_module_metadata.go +6 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/middleware_add.go +185 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/middleware_compute_input_checksum.go +479 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/middleware_setup_context.go +117 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/checksum/middleware_validate_output.go +131 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/CHANGELOG.md +147 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/LICENSE.txt +202 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/context.go +48 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/doc.go +3 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/go_module_metadata.go +6 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/middleware.go +110 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/CHANGELOG.md +156 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/LICENSE.txt +202 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn/accesspoint_arn.go +53 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn/arn.go +85 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn/outpost_arn.go +128 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn/s3_object_lambda_arn.go +15 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/arn_lookup.go +73 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/config/config.go +22 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/endpoint_error.go +183 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/go_module_metadata.go +6 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/host_id.go +29 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/metadata.go +28 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/metadata_retriever.go +52 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/resource_request.go +77 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/response_error.go +33 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/response_error_middleware.go +60 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/update_endpoint.go +78 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/internal/s3shared/xml_utils.go +89 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/CHANGELOG.md +228 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/LICENSE.txt +202 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_client.go +772 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_AbortMultipartUpload.go +232 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CompleteMultipartUpload.go +436 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CopyObject.go +574 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CreateBucket.go +318 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_CreateMultipartUpload.go +604 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucket.go +200 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketAnalyticsConfiguration.go +189 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketCors.go +172 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketEncryption.go +180 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketIntelligentTieringConfiguration.go +188 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketInventoryConfiguration.go +188 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketLifecycle.go +178 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketMetricsConfiguration.go +194 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketOwnershipControls.go +171 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketPolicy.go +181 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketReplication.go +179 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketTagging.go +170 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketWebsite.go +179 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteObject.go +270 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteObjectTagging.go +202 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteObjects.go +294 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeletePublicAccessBlock.go +183 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketAccelerateConfiguration.go +188 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketAcl.go +181 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketAnalyticsConfiguration.go +194 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketCors.go +179 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketEncryption.go +188 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketIntelligentTieringConfiguration.go +193 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketInventoryConfiguration.go +192 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketLifecycleConfiguration.go +209 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketLocation.go +248 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketLogging.go +177 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketMetricsConfiguration.go +199 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketNotificationConfiguration.go +193 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketOwnershipControls.go +177 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketPolicy.go +180 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketPolicyStatus.go +189 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketReplication.go +188 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketRequestPayment.go +172 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketTagging.go +185 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketVersioning.go +186 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetBucketWebsite.go +190 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObject.go +593 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectAcl.go +224 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectAttributes.go +363 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectLegalHold.go +195 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectLockConfiguration.go +181 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectRetention.go +195 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectTagging.go +223 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetObjectTorrent.go +191 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_GetPublicAccessBlock.go +196 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_HeadBucket.go +541 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_HeadObject.go +884 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBucketAnalyticsConfigurations.go +214 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBucketIntelligentTieringConfigurations.go +206 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBucketInventoryConfigurations.go +215 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBucketMetricsConfigurations.go +218 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListBuckets.go +145 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListMultipartUploads.go +310 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjectVersions.go +276 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjects.go +284 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListObjectsV2.go +408 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_ListParts.go +424 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketAccelerateConfiguration.go +237 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketAcl.go +368 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketAnalyticsConfiguration.go +234 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketCors.go +253 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketEncryption.go +243 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketIntelligentTieringConfiguration.go +225 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketInventoryConfiguration.go +235 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketLifecycleConfiguration.go +269 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketLogging.go +258 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketMetricsConfiguration.go +209 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketNotificationConfiguration.go +209 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketOwnershipControls.go +197 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketPolicy.go +229 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketReplication.go +264 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketRequestPayment.go +221 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketTagging.go +266 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketVersioning.go +243 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutBucketWebsite.go +279 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObject.go +613 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectAcl.go +410 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectLegalHold.go +237 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectLockConfiguration.go +234 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectRetention.go +244 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutObjectTagging.go +291 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_PutPublicAccessBlock.go +240 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_RestoreObject.go +457 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_SelectObjectContent.go +426 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_UploadPart.go +496 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_UploadPartCopy.go +437 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_WriteGetObjectResponse.go +457 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/deserializers.go +21940 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/doc.go +5 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/endpoints.go +208 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/eventstream.go +285 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/generated.json +128 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/go_module_metadata.go +6 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/arn/arn_parser.go +106 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/doc.go +80 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/handle_200_error.go +74 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/host.go +22 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/presigned_expires.go +49 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/process_arn_resource.go +564 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/remove_bucket_middleware.go +58 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/s3_object_lambda.go +84 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/signer_wrapper.go +213 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations/update_endpoint.go +306 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/internal/endpoints/endpoints.go +836 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/serializers.go +12713 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/types/enums.go +1200 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/types/errors.go +188 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/types/types.go +3892 -0
- data/ext/vendor/github.com/aws/aws-sdk-go-v2/service/s3/validators.go +5494 -0
- data/ext/vendor/github.com/aws/smithy-go/.gitignore +22 -0
- data/ext/vendor/github.com/aws/smithy-go/.travis.yml +28 -0
- data/ext/vendor/github.com/aws/smithy-go/CHANGELOG.md +157 -0
- data/ext/vendor/github.com/aws/smithy-go/CODE_OF_CONDUCT.md +4 -0
- data/ext/vendor/github.com/aws/smithy-go/CONTRIBUTING.md +59 -0
- data/ext/vendor/github.com/aws/smithy-go/LICENSE +175 -0
- data/ext/vendor/github.com/aws/smithy-go/Makefile +63 -0
- data/ext/vendor/github.com/aws/smithy-go/NOTICE +1 -0
- data/ext/vendor/github.com/aws/smithy-go/README.md +12 -0
- data/ext/vendor/github.com/aws/smithy-go/auth/bearer/docs.go +3 -0
- data/ext/vendor/github.com/aws/smithy-go/auth/bearer/middleware.go +104 -0
- data/ext/vendor/github.com/aws/smithy-go/auth/bearer/token.go +50 -0
- data/ext/vendor/github.com/aws/smithy-go/auth/bearer/token_cache.go +208 -0
- data/ext/vendor/github.com/aws/smithy-go/context/suppress_expired.go +81 -0
- data/ext/vendor/github.com/aws/smithy-go/doc.go +2 -0
- data/ext/vendor/github.com/aws/smithy-go/document/doc.go +12 -0
- data/ext/vendor/github.com/aws/smithy-go/document/document.go +153 -0
- data/ext/vendor/github.com/aws/smithy-go/document/errors.go +75 -0
- data/ext/vendor/github.com/aws/smithy-go/document.go +10 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/doc.go +4 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/encoding.go +40 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/httpbinding/encode.go +116 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/httpbinding/header.go +122 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/httpbinding/path_replace.go +108 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/httpbinding/query.go +107 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/httpbinding/uri.go +111 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/xml/array.go +49 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/xml/constants.go +10 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/xml/doc.go +49 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/xml/element.go +91 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/xml/encoder.go +51 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/xml/error_utils.go +51 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/xml/escape.go +137 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/xml/map.go +53 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/xml/value.go +302 -0
- data/ext/vendor/github.com/aws/smithy-go/encoding/xml/xml_decoder.go +154 -0
- data/ext/vendor/github.com/aws/smithy-go/errors.go +137 -0
- data/ext/vendor/github.com/aws/smithy-go/go_module_metadata.go +6 -0
- data/ext/vendor/github.com/aws/smithy-go/internal/sync/singleflight/LICENSE +28 -0
- data/ext/vendor/github.com/aws/smithy-go/internal/sync/singleflight/docs.go +8 -0
- data/ext/vendor/github.com/aws/smithy-go/internal/sync/singleflight/singleflight.go +210 -0
- data/ext/vendor/github.com/aws/smithy-go/io/byte.go +12 -0
- data/ext/vendor/github.com/aws/smithy-go/io/doc.go +2 -0
- data/ext/vendor/github.com/aws/smithy-go/io/reader.go +16 -0
- data/ext/vendor/github.com/aws/smithy-go/io/ringbuffer.go +94 -0
- data/ext/vendor/github.com/aws/smithy-go/local-mod-replace.sh +39 -0
- data/ext/vendor/github.com/aws/smithy-go/logging/logger.go +82 -0
- data/ext/vendor/github.com/aws/smithy-go/middleware/doc.go +67 -0
- data/ext/vendor/github.com/aws/smithy-go/middleware/logging.go +46 -0
- data/ext/vendor/github.com/aws/smithy-go/middleware/metadata.go +65 -0
- data/ext/vendor/github.com/aws/smithy-go/middleware/middleware.go +71 -0
- data/ext/vendor/github.com/aws/smithy-go/middleware/ordered_group.go +268 -0
- data/ext/vendor/github.com/aws/smithy-go/middleware/stack.go +209 -0
- data/ext/vendor/github.com/aws/smithy-go/middleware/stack_values.go +100 -0
- data/ext/vendor/github.com/aws/smithy-go/middleware/step_build.go +211 -0
- data/ext/vendor/github.com/aws/smithy-go/middleware/step_deserialize.go +217 -0
- data/ext/vendor/github.com/aws/smithy-go/middleware/step_finalize.go +211 -0
- data/ext/vendor/github.com/aws/smithy-go/middleware/step_initialize.go +211 -0
- data/ext/vendor/github.com/aws/smithy-go/middleware/step_serialize.go +219 -0
- data/ext/vendor/github.com/aws/smithy-go/modman.toml +11 -0
- data/ext/vendor/github.com/aws/smithy-go/ptr/doc.go +5 -0
- data/ext/vendor/github.com/aws/smithy-go/ptr/from_ptr.go +601 -0
- data/ext/vendor/github.com/aws/smithy-go/ptr/gen_scalars.go +83 -0
- data/ext/vendor/github.com/aws/smithy-go/ptr/to_ptr.go +499 -0
- data/ext/vendor/github.com/aws/smithy-go/rand/doc.go +3 -0
- data/ext/vendor/github.com/aws/smithy-go/rand/rand.go +31 -0
- data/ext/vendor/github.com/aws/smithy-go/rand/uuid.go +87 -0
- data/ext/vendor/github.com/aws/smithy-go/sync/error.go +53 -0
- data/ext/vendor/github.com/aws/smithy-go/time/time.go +134 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/checksum_middleware.go +70 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/client.go +120 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/doc.go +5 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/headerlist.go +163 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/host.go +89 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/internal/io/safe.go +75 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/md5_checksum.go +25 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/middleware_close_response_body.go +79 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/middleware_content_length.go +84 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/middleware_headers.go +167 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/middleware_http_logging.go +75 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/middleware_metadata.go +51 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/middleware_min_proto.go +79 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/request.go +189 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/response.go +34 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/time.go +13 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/url.go +44 -0
- data/ext/vendor/github.com/aws/smithy-go/transport/http/user_agent.go +37 -0
- data/ext/vendor/github.com/aws/smithy-go/validation.go +140 -0
- data/ext/vendor/github.com/aws/smithy-go/waiter/logger.go +36 -0
- data/ext/vendor/github.com/aws/smithy-go/waiter/waiter.go +66 -0
- data/ext/vendor/github.com/danieljoos/wincred/.gitattributes +1 -0
- data/ext/vendor/github.com/danieljoos/wincred/.gitignore +25 -0
- data/ext/vendor/github.com/danieljoos/wincred/LICENSE +21 -0
- data/ext/vendor/github.com/danieljoos/wincred/README.md +145 -0
- data/ext/vendor/github.com/danieljoos/wincred/conversion.go +116 -0
- data/ext/vendor/github.com/danieljoos/wincred/conversion_unsupported.go +11 -0
- data/ext/vendor/github.com/danieljoos/wincred/sys.go +143 -0
- data/ext/vendor/github.com/danieljoos/wincred/sys_unsupported.go +36 -0
- data/ext/vendor/github.com/danieljoos/wincred/types.go +69 -0
- data/ext/vendor/github.com/danieljoos/wincred/wincred.go +111 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/.gitignore +23 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/LICENSE +21 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/README.md +938 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/aes/ecb.go +68 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/aes/key_wrap.go +113 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/aes_cbc_hmac.go +112 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/aes_gcm.go +98 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/aes_gcm_kw.go +128 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/aeskw.go +64 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/arrays/arrays.go +116 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/base64url/base64url.go +31 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/compact/compact.go +33 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/deflate.go +39 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/direct.go +39 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/ecdh.go +157 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/ecdh_aeskw.go +42 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/ecdsa_using_sha.go +76 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/hmac.go +13 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/hmac_using_sha.go +46 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/jose.go +424 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/kdf/nist_sp800_56a.go +43 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/kdf/pbkdf2.go +63 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/keys/ecc/ec_cert.pem +14 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/keys/ecc/ec_private.key +5 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/keys/ecc/ec_private.pem +5 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/keys/ecc/ec_public.key +4 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/keys/ecc/ecc.go +88 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/padding/align.go +23 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/padding/pkcs7.go +38 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/pbse2_hmac_aeskw.go +103 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/plaintext.go +38 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/rsa_oaep.go +57 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/rsa_pkcs1v15.go +41 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/rsa_using_sha.go +50 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/rsapss_using_sha.go +43 -0
- data/ext/vendor/github.com/dvsekhvalnov/jose2go/sha.go +24 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/.gitignore +5 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/.travis.yml +12 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/LICENSE +8 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/MIGRATION_GUIDE.md +97 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/README.md +104 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/VERSION_HISTORY.md +118 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/claims.go +136 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/doc.go +4 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/ecdsa.go +148 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/ecdsa_utils.go +69 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/errors.go +59 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/hmac.go +95 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/map_claims.go +122 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/none.go +52 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/parser.go +148 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/rsa.go +101 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/rsa_pss.go +142 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/rsa_utils.go +101 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/signing_method.go +35 -0
- data/ext/vendor/github.com/form3tech-oss/jwt-go/token.go +108 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/.gitattributes +1 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/CODE_OF_CONDUCT.md +76 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/CONTRIBUTING.md +12 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/LICENSE +21 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/README.md +108 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/charset/charset.go +309 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/json/json.go +544 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/archive.go +116 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/audio.go +76 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/binary.go +196 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/database.go +13 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/document.go +62 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/font.go +39 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/ftyp.go +57 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/geo.go +55 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/image.go +106 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/magic.go +239 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/ms_office.go +225 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/ogg.go +42 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/text.go +375 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/text_csv.go +51 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/video.go +85 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/internal/magic/zip.go +92 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/mime.go +186 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/mimetype.gif +0 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/mimetype.go +123 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/supported_mimes.md +176 -0
- data/ext/vendor/github.com/gabriel-vasile/mimetype/tree.go +258 -0
- data/ext/vendor/github.com/goccy/go-json/.codecov.yml +32 -0
- data/ext/vendor/github.com/goccy/go-json/.gitignore +2 -0
- data/ext/vendor/github.com/goccy/go-json/.golangci.yml +83 -0
- data/ext/vendor/github.com/goccy/go-json/CHANGELOG.md +393 -0
- data/ext/vendor/github.com/goccy/go-json/LICENSE +21 -0
- data/ext/vendor/github.com/goccy/go-json/Makefile +39 -0
- data/ext/vendor/github.com/goccy/go-json/README.md +529 -0
- data/ext/vendor/github.com/goccy/go-json/color.go +68 -0
- data/ext/vendor/github.com/goccy/go-json/decode.go +232 -0
- data/ext/vendor/github.com/goccy/go-json/docker-compose.yml +13 -0
- data/ext/vendor/github.com/goccy/go-json/encode.go +326 -0
- data/ext/vendor/github.com/goccy/go-json/error.go +39 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/anonymous_field.go +37 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/array.go +169 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/bool.go +78 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/bytes.go +113 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/compile.go +487 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/compile_norace.go +29 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/compile_race.go +37 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/context.go +254 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/float.go +158 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/func.go +141 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/int.go +242 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/interface.go +458 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/invalid.go +45 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/map.go +187 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/number.go +112 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/option.go +15 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/ptr.go +87 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/slice.go +301 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/stream.go +556 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/string.go +441 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/struct.go +819 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/type.go +29 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/uint.go +190 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/unmarshal_json.go +99 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/unmarshal_text.go +280 -0
- data/ext/vendor/github.com/goccy/go-json/internal/decoder/wrapped_string.go +68 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/code.go +1017 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/compact.go +286 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/compiler.go +930 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/compiler_norace.go +32 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/compiler_race.go +45 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/context.go +105 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/decode_rune.go +126 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/encoder.go +596 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/indent.go +211 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/int.go +152 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/map112.go +9 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/map113.go +9 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/opcode.go +669 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/option.go +47 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/optype.go +932 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/query.go +135 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/string.go +459 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/string_table.go +415 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm/debug_vm.go +35 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm/hack.go +9 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm/util.go +207 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm/vm.go +4859 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_color/debug_vm.go +35 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_color/hack.go +9 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_color/util.go +274 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_color/vm.go +4859 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_color_indent/debug_vm.go +35 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_color_indent/util.go +296 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_color_indent/vm.go +4859 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_indent/debug_vm.go +35 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_indent/hack.go +9 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_indent/util.go +229 -0
- data/ext/vendor/github.com/goccy/go-json/internal/encoder/vm_indent/vm.go +4859 -0
- data/ext/vendor/github.com/goccy/go-json/internal/errors/error.go +164 -0
- data/ext/vendor/github.com/goccy/go-json/internal/runtime/rtype.go +263 -0
- data/ext/vendor/github.com/goccy/go-json/internal/runtime/struct_field.go +91 -0
- data/ext/vendor/github.com/goccy/go-json/internal/runtime/type.go +100 -0
- data/ext/vendor/github.com/goccy/go-json/json.go +371 -0
- data/ext/vendor/github.com/goccy/go-json/option.go +72 -0
- data/ext/vendor/github.com/goccy/go-json/query.go +47 -0
- data/ext/vendor/github.com/godbus/dbus/.travis.yml +46 -0
- data/ext/vendor/github.com/godbus/dbus/CONTRIBUTING.md +50 -0
- data/ext/vendor/github.com/godbus/dbus/LICENSE +25 -0
- data/ext/vendor/github.com/godbus/dbus/MAINTAINERS +3 -0
- data/ext/vendor/github.com/godbus/dbus/README.markdown +44 -0
- data/ext/vendor/github.com/godbus/dbus/auth.go +252 -0
- data/ext/vendor/github.com/godbus/dbus/auth_anonymous.go +16 -0
- data/ext/vendor/github.com/godbus/dbus/auth_external.go +26 -0
- data/ext/vendor/github.com/godbus/dbus/auth_sha1.go +102 -0
- data/ext/vendor/github.com/godbus/dbus/call.go +60 -0
- data/ext/vendor/github.com/godbus/dbus/conn.go +865 -0
- data/ext/vendor/github.com/godbus/dbus/conn_darwin.go +37 -0
- data/ext/vendor/github.com/godbus/dbus/conn_other.go +93 -0
- data/ext/vendor/github.com/godbus/dbus/conn_unix.go +17 -0
- data/ext/vendor/github.com/godbus/dbus/conn_windows.go +15 -0
- data/ext/vendor/github.com/godbus/dbus/dbus.go +427 -0
- data/ext/vendor/github.com/godbus/dbus/decoder.go +286 -0
- data/ext/vendor/github.com/godbus/dbus/default_handler.go +328 -0
- data/ext/vendor/github.com/godbus/dbus/doc.go +69 -0
- data/ext/vendor/github.com/godbus/dbus/encoder.go +210 -0
- data/ext/vendor/github.com/godbus/dbus/export.go +412 -0
- data/ext/vendor/github.com/godbus/dbus/homedir.go +28 -0
- data/ext/vendor/github.com/godbus/dbus/homedir_dynamic.go +15 -0
- data/ext/vendor/github.com/godbus/dbus/homedir_static.go +45 -0
- data/ext/vendor/github.com/godbus/dbus/match.go +62 -0
- data/ext/vendor/github.com/godbus/dbus/message.go +353 -0
- data/ext/vendor/github.com/godbus/dbus/object.go +211 -0
- data/ext/vendor/github.com/godbus/dbus/server_interfaces.go +107 -0
- data/ext/vendor/github.com/godbus/dbus/sig.go +259 -0
- data/ext/vendor/github.com/godbus/dbus/transport_darwin.go +6 -0
- data/ext/vendor/github.com/godbus/dbus/transport_generic.go +50 -0
- data/ext/vendor/github.com/godbus/dbus/transport_nonce_tcp.go +39 -0
- data/ext/vendor/github.com/godbus/dbus/transport_tcp.go +41 -0
- data/ext/vendor/github.com/godbus/dbus/transport_unix.go +214 -0
- data/ext/vendor/github.com/godbus/dbus/transport_unixcred_dragonfly.go +95 -0
- data/ext/vendor/github.com/godbus/dbus/transport_unixcred_freebsd.go +91 -0
- data/ext/vendor/github.com/godbus/dbus/transport_unixcred_linux.go +25 -0
- data/ext/vendor/github.com/godbus/dbus/transport_unixcred_openbsd.go +14 -0
- data/ext/vendor/github.com/godbus/dbus/variant.go +144 -0
- data/ext/vendor/github.com/godbus/dbus/variant_lexer.go +284 -0
- data/ext/vendor/github.com/godbus/dbus/variant_parser.go +817 -0
- data/ext/vendor/github.com/golang/snappy/.gitignore +16 -0
- data/ext/vendor/github.com/golang/snappy/AUTHORS +18 -0
- data/ext/vendor/github.com/golang/snappy/CONTRIBUTORS +41 -0
- data/ext/vendor/github.com/golang/snappy/LICENSE +27 -0
- data/ext/vendor/github.com/golang/snappy/README +107 -0
- data/ext/vendor/github.com/golang/snappy/decode.go +264 -0
- data/ext/vendor/github.com/golang/snappy/decode_amd64.s +490 -0
- data/ext/vendor/github.com/golang/snappy/decode_arm64.s +494 -0
- data/ext/vendor/github.com/golang/snappy/decode_asm.go +15 -0
- data/ext/vendor/github.com/golang/snappy/decode_other.go +115 -0
- data/ext/vendor/github.com/golang/snappy/encode.go +289 -0
- data/ext/vendor/github.com/golang/snappy/encode_amd64.s +730 -0
- data/ext/vendor/github.com/golang/snappy/encode_arm64.s +722 -0
- data/ext/vendor/github.com/golang/snappy/encode_asm.go +30 -0
- data/ext/vendor/github.com/golang/snappy/encode_other.go +238 -0
- data/ext/vendor/github.com/golang/snappy/snappy.go +98 -0
- data/ext/vendor/github.com/google/flatbuffers/LICENSE.txt +202 -0
- data/ext/vendor/github.com/google/flatbuffers/go/BUILD.bazel +23 -0
- data/ext/vendor/github.com/google/flatbuffers/go/builder.go +835 -0
- data/ext/vendor/github.com/google/flatbuffers/go/doc.go +3 -0
- data/ext/vendor/github.com/google/flatbuffers/go/encode.go +238 -0
- data/ext/vendor/github.com/google/flatbuffers/go/grpc.go +38 -0
- data/ext/vendor/github.com/google/flatbuffers/go/lib.go +25 -0
- data/ext/vendor/github.com/google/flatbuffers/go/sizes.go +55 -0
- data/ext/vendor/github.com/google/flatbuffers/go/struct.go +8 -0
- data/ext/vendor/github.com/google/flatbuffers/go/table.go +505 -0
- data/ext/vendor/github.com/gsterjov/go-libsecret/LICENSE +22 -0
- data/ext/vendor/github.com/gsterjov/go-libsecret/collection.go +124 -0
- data/ext/vendor/github.com/gsterjov/go-libsecret/item.go +77 -0
- data/ext/vendor/github.com/gsterjov/go-libsecret/prompt.go +55 -0
- data/ext/vendor/github.com/gsterjov/go-libsecret/secret.go +21 -0
- data/ext/vendor/github.com/gsterjov/go-libsecret/service.go +141 -0
- data/ext/vendor/github.com/gsterjov/go-libsecret/session.go +22 -0
- data/ext/vendor/github.com/jmespath/go-jmespath/.gitignore +4 -0
- data/ext/vendor/github.com/jmespath/go-jmespath/.travis.yml +28 -0
- data/ext/vendor/github.com/jmespath/go-jmespath/LICENSE +13 -0
- data/ext/vendor/github.com/jmespath/go-jmespath/Makefile +51 -0
- data/ext/vendor/github.com/jmespath/go-jmespath/README.md +87 -0
- data/ext/vendor/github.com/jmespath/go-jmespath/api.go +49 -0
- data/ext/vendor/github.com/jmespath/go-jmespath/astnodetype_string.go +16 -0
- data/ext/vendor/github.com/jmespath/go-jmespath/functions.go +842 -0
- data/ext/vendor/github.com/jmespath/go-jmespath/interpreter.go +418 -0
- data/ext/vendor/github.com/jmespath/go-jmespath/lexer.go +420 -0
- data/ext/vendor/github.com/jmespath/go-jmespath/parser.go +603 -0
- data/ext/vendor/github.com/jmespath/go-jmespath/toktype_string.go +16 -0
- data/ext/vendor/github.com/jmespath/go-jmespath/util.go +185 -0
- data/ext/vendor/github.com/klauspost/asmfmt/.gitignore +24 -0
- data/ext/vendor/github.com/klauspost/asmfmt/.goreleaser.yml +77 -0
- data/ext/vendor/github.com/klauspost/asmfmt/LICENSE +22 -0
- data/ext/vendor/github.com/klauspost/asmfmt/README.md +113 -0
- data/ext/vendor/github.com/klauspost/asmfmt/asmfmt.go +652 -0
- data/ext/vendor/github.com/klauspost/asmfmt/cmd/asmfmt/LICENSE +27 -0
- data/ext/vendor/github.com/klauspost/asmfmt/cmd/asmfmt/doc.go +43 -0
- data/ext/vendor/github.com/klauspost/asmfmt/cmd/asmfmt/main.go +203 -0
- data/ext/vendor/github.com/klauspost/compress/.gitattributes +2 -0
- data/ext/vendor/github.com/klauspost/compress/.gitignore +32 -0
- data/ext/vendor/github.com/klauspost/compress/.goreleaser.yml +141 -0
- data/ext/vendor/github.com/klauspost/compress/LICENSE +304 -0
- data/ext/vendor/github.com/klauspost/compress/README.md +578 -0
- data/ext/vendor/github.com/klauspost/compress/compressible.go +85 -0
- data/ext/vendor/github.com/klauspost/compress/flate/deflate.go +910 -0
- data/ext/vendor/github.com/klauspost/compress/flate/dict_decoder.go +184 -0
- data/ext/vendor/github.com/klauspost/compress/flate/fast_encoder.go +216 -0
- data/ext/vendor/github.com/klauspost/compress/flate/huffman_bit_writer.go +1187 -0
- data/ext/vendor/github.com/klauspost/compress/flate/huffman_code.go +417 -0
- data/ext/vendor/github.com/klauspost/compress/flate/huffman_sortByFreq.go +178 -0
- data/ext/vendor/github.com/klauspost/compress/flate/huffman_sortByLiteral.go +201 -0
- data/ext/vendor/github.com/klauspost/compress/flate/inflate.go +793 -0
- data/ext/vendor/github.com/klauspost/compress/flate/inflate_gen.go +1283 -0
- data/ext/vendor/github.com/klauspost/compress/flate/level1.go +241 -0
- data/ext/vendor/github.com/klauspost/compress/flate/level2.go +214 -0
- data/ext/vendor/github.com/klauspost/compress/flate/level3.go +241 -0
- data/ext/vendor/github.com/klauspost/compress/flate/level4.go +221 -0
- data/ext/vendor/github.com/klauspost/compress/flate/level5.go +310 -0
- data/ext/vendor/github.com/klauspost/compress/flate/level6.go +325 -0
- data/ext/vendor/github.com/klauspost/compress/flate/regmask_amd64.go +37 -0
- data/ext/vendor/github.com/klauspost/compress/flate/regmask_other.go +40 -0
- data/ext/vendor/github.com/klauspost/compress/flate/stateless.go +305 -0
- data/ext/vendor/github.com/klauspost/compress/flate/token.go +379 -0
- data/ext/vendor/github.com/klauspost/compress/fse/README.md +79 -0
- data/ext/vendor/github.com/klauspost/compress/fse/bitreader.go +122 -0
- data/ext/vendor/github.com/klauspost/compress/fse/bitwriter.go +168 -0
- data/ext/vendor/github.com/klauspost/compress/fse/bytereader.go +47 -0
- data/ext/vendor/github.com/klauspost/compress/fse/compress.go +683 -0
- data/ext/vendor/github.com/klauspost/compress/fse/decompress.go +374 -0
- data/ext/vendor/github.com/klauspost/compress/fse/fse.go +144 -0
- data/ext/vendor/github.com/klauspost/compress/gen.sh +4 -0
- data/ext/vendor/github.com/klauspost/compress/gzip/gunzip.go +349 -0
- data/ext/vendor/github.com/klauspost/compress/gzip/gzip.go +269 -0
- data/ext/vendor/github.com/klauspost/compress/huff0/.gitignore +1 -0
- data/ext/vendor/github.com/klauspost/compress/huff0/README.md +89 -0
- data/ext/vendor/github.com/klauspost/compress/huff0/bitreader.go +233 -0
- data/ext/vendor/github.com/klauspost/compress/huff0/bitwriter.go +95 -0
- data/ext/vendor/github.com/klauspost/compress/huff0/bytereader.go +44 -0
- data/ext/vendor/github.com/klauspost/compress/huff0/compress.go +730 -0
- data/ext/vendor/github.com/klauspost/compress/huff0/decompress.go +1167 -0
- data/ext/vendor/github.com/klauspost/compress/huff0/decompress_amd64.go +226 -0
- data/ext/vendor/github.com/klauspost/compress/huff0/decompress_amd64.s +846 -0
- data/ext/vendor/github.com/klauspost/compress/huff0/decompress_generic.go +299 -0
- data/ext/vendor/github.com/klauspost/compress/huff0/huff0.go +337 -0
- data/ext/vendor/github.com/klauspost/compress/internal/cpuinfo/cpuinfo.go +34 -0
- data/ext/vendor/github.com/klauspost/compress/internal/cpuinfo/cpuinfo_amd64.go +11 -0
- data/ext/vendor/github.com/klauspost/compress/internal/cpuinfo/cpuinfo_amd64.s +36 -0
- data/ext/vendor/github.com/klauspost/compress/internal/snapref/LICENSE +27 -0
- data/ext/vendor/github.com/klauspost/compress/internal/snapref/decode.go +264 -0
- data/ext/vendor/github.com/klauspost/compress/internal/snapref/decode_other.go +113 -0
- data/ext/vendor/github.com/klauspost/compress/internal/snapref/encode.go +289 -0
- data/ext/vendor/github.com/klauspost/compress/internal/snapref/encode_other.go +240 -0
- data/ext/vendor/github.com/klauspost/compress/internal/snapref/snappy.go +98 -0
- data/ext/vendor/github.com/klauspost/compress/s2sx.mod +4 -0
- data/ext/vendor/github.com/klauspost/compress/s2sx.sum +0 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/README.md +441 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/bitreader.go +140 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/bitwriter.go +113 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/blockdec.go +720 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/blockenc.go +871 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/blocktype_string.go +85 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/bytebuf.go +131 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/bytereader.go +82 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/decodeheader.go +230 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/decoder.go +950 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/decoder_options.go +149 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/dict.go +122 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/enc_base.go +188 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/enc_best.go +559 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/enc_better.go +1246 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/enc_dfast.go +1127 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/enc_fast.go +900 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/encoder.go +641 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/encoder_options.go +317 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/framedec.go +436 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/frameenc.go +137 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/fse_decoder.go +307 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/fse_decoder_amd64.go +65 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/fse_decoder_amd64.s +126 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/fse_decoder_generic.go +72 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/fse_encoder.go +701 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/fse_predefined.go +158 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/hash.go +35 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/history.go +116 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/internal/xxhash/LICENSE.txt +22 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/internal/xxhash/README.md +58 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/internal/xxhash/xxhash.go +237 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/internal/xxhash/xxhash_amd64.s +216 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/internal/xxhash/xxhash_arm64.s +186 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/internal/xxhash/xxhash_asm.go +16 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/internal/xxhash/xxhash_other.go +77 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/internal/xxhash/xxhash_safe.go +11 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/seqdec.go +509 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/seqdec_amd64.go +379 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/seqdec_amd64.s +4099 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/seqdec_generic.go +237 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/seqenc.go +114 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/snappy.go +435 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/zip.go +141 -0
- data/ext/vendor/github.com/klauspost/compress/zstd/zstd.go +152 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/.gitignore +24 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/.goreleaser.yml +74 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/CONTRIBUTING.txt +35 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/LICENSE +22 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/README.md +137 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/cpuid.go +1070 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/cpuid_386.s +47 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/cpuid_amd64.s +72 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/cpuid_arm64.s +26 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/detect_arm64.go +246 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/detect_ref.go +14 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/detect_x86.go +35 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/featureid_string.go +185 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/os_darwin_arm64.go +19 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/os_linux_arm64.go +130 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/os_other_arm64.go +17 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/os_safe_linux_arm64.go +7 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/os_unsafe_linux_arm64.go +10 -0
- data/ext/vendor/github.com/klauspost/cpuid/v2/test-architectures.sh +15 -0
- data/ext/vendor/github.com/mattn/go-pointer/LICENSE +21 -0
- data/ext/vendor/github.com/mattn/go-pointer/README.md +29 -0
- data/ext/vendor/github.com/mattn/go-pointer/doc.go +1 -0
- data/ext/vendor/github.com/mattn/go-pointer/pointer.go +57 -0
- data/ext/vendor/github.com/minio/asm2plan9s/.gitignore +2 -0
- data/ext/vendor/github.com/minio/asm2plan9s/LICENSE +202 -0
- data/ext/vendor/github.com/minio/asm2plan9s/README.md +91 -0
- data/ext/vendor/github.com/minio/asm2plan9s/asm2plan9s.go +252 -0
- data/ext/vendor/github.com/minio/asm2plan9s/asm2plan9s_amd64.go +192 -0
- data/ext/vendor/github.com/minio/asm2plan9s/asm2plan9s_arm64.go +122 -0
- data/ext/vendor/github.com/minio/asm2plan9s/example.s +1 -0
- data/ext/vendor/github.com/minio/asm2plan9s/neon.asm +1 -0
- data/ext/vendor/github.com/minio/asm2plan9s/yasm.go +176 -0
- data/ext/vendor/github.com/minio/c2goasm/LICENSE +202 -0
- data/ext/vendor/github.com/minio/c2goasm/README.md +203 -0
- data/ext/vendor/github.com/minio/c2goasm/arguments.go +122 -0
- data/ext/vendor/github.com/minio/c2goasm/assembly.go +412 -0
- data/ext/vendor/github.com/minio/c2goasm/c2goasm.go +300 -0
- data/ext/vendor/github.com/minio/c2goasm/constants.go +255 -0
- data/ext/vendor/github.com/minio/c2goasm/epilogue.go +219 -0
- data/ext/vendor/github.com/minio/c2goasm/subroutine.go +294 -0
- data/ext/vendor/github.com/mtibben/percent/LICENSE +21 -0
- data/ext/vendor/github.com/mtibben/percent/README.md +5 -0
- data/ext/vendor/github.com/mtibben/percent/percent.go +64 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/.gitignore +36 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/LICENSE +28 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/README.md +92 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4block/block.go +482 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4block/blocks.go +90 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4block/decode_amd64.s +448 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4block/decode_arm.s +231 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4block/decode_arm64.s +230 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4block/decode_asm.go +10 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4block/decode_other.go +139 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4errors/errors.go +19 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4stream/block.go +350 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4stream/frame.go +204 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/internal/lz4stream/frame_gen.go +103 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/internal/xxh32/xxh32zero.go +212 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/internal/xxh32/xxh32zero_arm.go +11 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/internal/xxh32/xxh32zero_arm.s +251 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/internal/xxh32/xxh32zero_other.go +10 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/lz4.go +157 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/options.go +214 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/options_gen.go +92 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/reader.go +275 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/state.go +75 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/state_gen.go +28 -0
- data/ext/vendor/github.com/pierrec/lz4/v4/writer.go +238 -0
- data/ext/vendor/github.com/pkg/browser/LICENSE +23 -0
- data/ext/vendor/github.com/pkg/browser/README.md +55 -0
- data/ext/vendor/github.com/pkg/browser/browser.go +57 -0
- data/ext/vendor/github.com/pkg/browser/browser_darwin.go +5 -0
- data/ext/vendor/github.com/pkg/browser/browser_freebsd.go +14 -0
- data/ext/vendor/github.com/pkg/browser/browser_linux.go +21 -0
- data/ext/vendor/github.com/pkg/browser/browser_netbsd.go +14 -0
- data/ext/vendor/github.com/pkg/browser/browser_openbsd.go +14 -0
- data/ext/vendor/github.com/pkg/browser/browser_unsupported.go +12 -0
- data/ext/vendor/github.com/pkg/browser/browser_windows.go +7 -0
- data/ext/vendor/github.com/sirupsen/logrus/.gitignore +4 -0
- data/ext/vendor/github.com/sirupsen/logrus/.golangci.yml +40 -0
- data/ext/vendor/github.com/sirupsen/logrus/.travis.yml +15 -0
- data/ext/vendor/github.com/sirupsen/logrus/CHANGELOG.md +259 -0
- data/ext/vendor/github.com/sirupsen/logrus/LICENSE +21 -0
- data/ext/vendor/github.com/sirupsen/logrus/README.md +513 -0
- data/ext/vendor/github.com/sirupsen/logrus/alt_exit.go +76 -0
- data/ext/vendor/github.com/sirupsen/logrus/appveyor.yml +14 -0
- data/ext/vendor/github.com/sirupsen/logrus/buffer_pool.go +43 -0
- data/ext/vendor/github.com/sirupsen/logrus/doc.go +26 -0
- data/ext/vendor/github.com/sirupsen/logrus/entry.go +442 -0
- data/ext/vendor/github.com/sirupsen/logrus/exported.go +270 -0
- data/ext/vendor/github.com/sirupsen/logrus/formatter.go +78 -0
- data/ext/vendor/github.com/sirupsen/logrus/hooks.go +34 -0
- data/ext/vendor/github.com/sirupsen/logrus/json_formatter.go +128 -0
- data/ext/vendor/github.com/sirupsen/logrus/logger.go +417 -0
- data/ext/vendor/github.com/sirupsen/logrus/logrus.go +186 -0
- data/ext/vendor/github.com/sirupsen/logrus/terminal_check_appengine.go +11 -0
- data/ext/vendor/github.com/sirupsen/logrus/terminal_check_bsd.go +13 -0
- data/ext/vendor/github.com/sirupsen/logrus/terminal_check_js.go +7 -0
- data/ext/vendor/github.com/sirupsen/logrus/terminal_check_no_terminal.go +11 -0
- data/ext/vendor/github.com/sirupsen/logrus/terminal_check_notappengine.go +17 -0
- data/ext/vendor/github.com/sirupsen/logrus/terminal_check_solaris.go +11 -0
- data/ext/vendor/github.com/sirupsen/logrus/terminal_check_unix.go +13 -0
- data/ext/vendor/github.com/sirupsen/logrus/terminal_check_windows.go +27 -0
- data/ext/vendor/github.com/sirupsen/logrus/text_formatter.go +339 -0
- data/ext/vendor/github.com/sirupsen/logrus/writer.go +70 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/.gitignore +13 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/.pre-commit-config.yaml +6 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/CONTRIBUTING.md +18 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/LICENSE +201 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/Makefile +52 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/README.md +109 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/arrow_chunk.go +91 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/async.go +142 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/auth.go +549 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/authexternalbrowser.go +251 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/authokta.go +341 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/azure_storage_client.go +294 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/bind_uploader.go +300 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/cacert.go +3454 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/chunk.go +312 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/chunk_downloader.go +742 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/client.go +38 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/connection.go +493 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/connection_util.go +287 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/connector.go +40 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/converter.go +1171 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/datatype.go +195 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/debug.go +12 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/doc.go +885 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/driver.go +66 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/dsn.go +667 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/encrypt_util.go +332 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/errors.go +321 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/file_compression_type.go +132 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/file_transfer_agent.go +1228 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/file_util.go +209 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/gcs_storage_client.go +355 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/gosnowflake.mak +42 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/heartbeat.go +98 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/local_storage_client.go +113 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/location.go +106 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/log.go +314 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/monitoring.go +271 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/multistatement.go +118 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/ocsp.go +966 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/parameters.json.tmpl +11 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/priv_key_test_coding_helper.go +30 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/query.go +128 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/release.go +8 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/restful.go +489 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/result.go +75 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/retry.go +322 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/rows.go +245 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/s3_storage_client.go +275 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/secret_detector.go +63 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/secure_storage_manager.go +282 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/sqlstate.go +18 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/statement.go +45 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/storage_client.go +253 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/telemetry.go +128 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/transaction.go +35 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/url_util.go +29 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/util.go +214 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/uuid.go +47 -0
- data/ext/vendor/github.com/snowflakedb/gosnowflake/version.go +6 -0
- data/ext/vendor/github.com/zeebo/xxh3/.gitignore +6 -0
- data/ext/vendor/github.com/zeebo/xxh3/LICENSE +25 -0
- data/ext/vendor/github.com/zeebo/xxh3/Makefile +27 -0
- data/ext/vendor/github.com/zeebo/xxh3/README.md +38 -0
- data/ext/vendor/github.com/zeebo/xxh3/_compat.c +39 -0
- data/ext/vendor/github.com/zeebo/xxh3/accum_generic.go +542 -0
- data/ext/vendor/github.com/zeebo/xxh3/accum_stubs_amd64.go +40 -0
- data/ext/vendor/github.com/zeebo/xxh3/accum_stubs_other.go +25 -0
- data/ext/vendor/github.com/zeebo/xxh3/accum_vector_avx512_amd64.s +379 -0
- data/ext/vendor/github.com/zeebo/xxh3/accum_vector_avx_amd64.s +586 -0
- data/ext/vendor/github.com/zeebo/xxh3/accum_vector_sse_amd64.s +1236 -0
- data/ext/vendor/github.com/zeebo/xxh3/consts.go +97 -0
- data/ext/vendor/github.com/zeebo/xxh3/hash128.go +253 -0
- data/ext/vendor/github.com/zeebo/xxh3/hash128_seed.go +264 -0
- data/ext/vendor/github.com/zeebo/xxh3/hash64.go +126 -0
- data/ext/vendor/github.com/zeebo/xxh3/hash64_seed.go +134 -0
- data/ext/vendor/github.com/zeebo/xxh3/hasher.go +239 -0
- data/ext/vendor/github.com/zeebo/xxh3/utils.go +129 -0
- data/ext/vendor/golang.org/x/crypto/LICENSE +27 -0
- data/ext/vendor/golang.org/x/crypto/PATENTS +22 -0
- data/ext/vendor/golang.org/x/crypto/ocsp/ocsp.go +792 -0
- data/ext/vendor/golang.org/x/mod/LICENSE +27 -0
- data/ext/vendor/golang.org/x/mod/PATENTS +22 -0
- data/ext/vendor/golang.org/x/mod/internal/lazyregexp/lazyre.go +78 -0
- data/ext/vendor/golang.org/x/mod/module/module.go +841 -0
- data/ext/vendor/golang.org/x/mod/module/pseudo.go +250 -0
- data/ext/vendor/golang.org/x/mod/semver/semver.go +401 -0
- data/ext/vendor/golang.org/x/net/LICENSE +27 -0
- data/ext/vendor/golang.org/x/net/PATENTS +22 -0
- data/ext/vendor/golang.org/x/net/html/atom/atom.go +78 -0
- data/ext/vendor/golang.org/x/net/html/atom/table.go +783 -0
- data/ext/vendor/golang.org/x/net/html/const.go +111 -0
- data/ext/vendor/golang.org/x/net/html/doc.go +121 -0
- data/ext/vendor/golang.org/x/net/html/doctype.go +156 -0
- data/ext/vendor/golang.org/x/net/html/entity.go +2253 -0
- data/ext/vendor/golang.org/x/net/html/escape.go +339 -0
- data/ext/vendor/golang.org/x/net/html/foreign.go +222 -0
- data/ext/vendor/golang.org/x/net/html/node.go +225 -0
- data/ext/vendor/golang.org/x/net/html/parse.go +2460 -0
- data/ext/vendor/golang.org/x/net/html/render.go +273 -0
- data/ext/vendor/golang.org/x/net/html/token.go +1261 -0
- data/ext/vendor/golang.org/x/net/http/httpguts/guts.go +50 -0
- data/ext/vendor/golang.org/x/net/http/httpguts/httplex.go +352 -0
- data/ext/vendor/golang.org/x/net/idna/go118.go +14 -0
- data/ext/vendor/golang.org/x/net/idna/idna10.0.0.go +770 -0
- data/ext/vendor/golang.org/x/net/idna/idna9.0.0.go +718 -0
- data/ext/vendor/golang.org/x/net/idna/pre_go118.go +12 -0
- data/ext/vendor/golang.org/x/net/idna/punycode.go +217 -0
- data/ext/vendor/golang.org/x/net/idna/tables10.0.0.go +4560 -0
- data/ext/vendor/golang.org/x/net/idna/tables11.0.0.go +4654 -0
- data/ext/vendor/golang.org/x/net/idna/tables12.0.0.go +4734 -0
- data/ext/vendor/golang.org/x/net/idna/tables13.0.0.go +4840 -0
- data/ext/vendor/golang.org/x/net/idna/tables9.0.0.go +4487 -0
- data/ext/vendor/golang.org/x/net/idna/trie.go +72 -0
- data/ext/vendor/golang.org/x/net/idna/trieval.go +119 -0
- data/ext/vendor/golang.org/x/sys/LICENSE +27 -0
- data/ext/vendor/golang.org/x/sys/PATENTS +22 -0
- data/ext/vendor/golang.org/x/sys/cpu/asm_aix_ppc64.s +18 -0
- data/ext/vendor/golang.org/x/sys/cpu/byteorder.go +66 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu.go +287 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_aix.go +34 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_arm.go +73 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_arm64.go +172 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_arm64.s +32 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_gc_arm64.go +12 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_gc_s390x.go +22 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_gc_x86.go +17 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_gccgo_arm64.go +12 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_gccgo_s390x.go +23 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_gccgo_x86.c +39 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_gccgo_x86.go +33 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_linux.go +16 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_linux_arm.go +39 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_linux_arm64.go +111 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_linux_mips64x.go +24 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_linux_noinit.go +10 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_linux_ppc64x.go +32 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_linux_s390x.go +40 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_loong64.go +13 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_mips64x.go +16 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_mipsx.go +12 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_netbsd_arm64.go +173 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_openbsd_arm64.go +65 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_openbsd_arm64.s +11 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_other_arm.go +10 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_other_arm64.go +10 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_other_mips64x.go +13 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_other_ppc64x.go +15 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_other_riscv64.go +12 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_ppc64x.go +17 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_riscv64.go +12 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_s390x.go +172 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_s390x.s +58 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_wasm.go +18 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_x86.go +145 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_x86.s +28 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_zos.go +10 -0
- data/ext/vendor/golang.org/x/sys/cpu/cpu_zos_s390x.go +25 -0
- data/ext/vendor/golang.org/x/sys/cpu/endian_big.go +11 -0
- data/ext/vendor/golang.org/x/sys/cpu/endian_little.go +11 -0
- data/ext/vendor/golang.org/x/sys/cpu/hwcap_linux.go +71 -0
- data/ext/vendor/golang.org/x/sys/cpu/parse.go +43 -0
- data/ext/vendor/golang.org/x/sys/cpu/proc_cpuinfo_linux.go +54 -0
- data/ext/vendor/golang.org/x/sys/cpu/runtime_auxv.go +16 -0
- data/ext/vendor/golang.org/x/sys/cpu/runtime_auxv_go121.go +19 -0
- data/ext/vendor/golang.org/x/sys/cpu/syscall_aix_gccgo.go +27 -0
- data/ext/vendor/golang.org/x/sys/cpu/syscall_aix_ppc64_gc.go +36 -0
- data/ext/vendor/golang.org/x/sys/execabs/execabs.go +102 -0
- data/ext/vendor/golang.org/x/sys/execabs/execabs_go118.go +18 -0
- data/ext/vendor/golang.org/x/sys/execabs/execabs_go119.go +21 -0
- data/ext/vendor/golang.org/x/sys/internal/unsafeheader/unsafeheader.go +30 -0
- data/ext/vendor/golang.org/x/sys/plan9/asm.s +8 -0
- data/ext/vendor/golang.org/x/sys/plan9/asm_plan9_386.s +30 -0
- data/ext/vendor/golang.org/x/sys/plan9/asm_plan9_amd64.s +30 -0
- data/ext/vendor/golang.org/x/sys/plan9/asm_plan9_arm.s +25 -0
- data/ext/vendor/golang.org/x/sys/plan9/const_plan9.go +70 -0
- data/ext/vendor/golang.org/x/sys/plan9/dir_plan9.go +212 -0
- data/ext/vendor/golang.org/x/sys/plan9/env_plan9.go +31 -0
- data/ext/vendor/golang.org/x/sys/plan9/errors_plan9.go +50 -0
- data/ext/vendor/golang.org/x/sys/plan9/mkall.sh +150 -0
- data/ext/vendor/golang.org/x/sys/plan9/mkerrors.sh +246 -0
- data/ext/vendor/golang.org/x/sys/plan9/mksysnum_plan9.sh +23 -0
- data/ext/vendor/golang.org/x/sys/plan9/pwd_go15_plan9.go +22 -0
- data/ext/vendor/golang.org/x/sys/plan9/pwd_plan9.go +24 -0
- data/ext/vendor/golang.org/x/sys/plan9/race.go +31 -0
- data/ext/vendor/golang.org/x/sys/plan9/race0.go +26 -0
- data/ext/vendor/golang.org/x/sys/plan9/str.go +23 -0
- data/ext/vendor/golang.org/x/sys/plan9/syscall.go +110 -0
- data/ext/vendor/golang.org/x/sys/plan9/syscall_plan9.go +361 -0
- data/ext/vendor/golang.org/x/sys/plan9/zsyscall_plan9_386.go +285 -0
- data/ext/vendor/golang.org/x/sys/plan9/zsyscall_plan9_amd64.go +285 -0
- data/ext/vendor/golang.org/x/sys/plan9/zsyscall_plan9_arm.go +285 -0
- data/ext/vendor/golang.org/x/sys/plan9/zsysnum_plan9.go +49 -0
- data/ext/vendor/golang.org/x/sys/unix/.gitignore +2 -0
- data/ext/vendor/golang.org/x/sys/unix/README.md +184 -0
- data/ext/vendor/golang.org/x/sys/unix/affinity_linux.go +86 -0
- data/ext/vendor/golang.org/x/sys/unix/aliases.go +15 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s +18 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_bsd_386.s +29 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_bsd_amd64.s +29 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_bsd_arm.s +29 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_bsd_arm64.s +29 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_bsd_ppc64.s +31 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_bsd_riscv64.s +29 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_linux_386.s +66 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_linux_amd64.s +58 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_linux_arm.s +57 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_linux_arm64.s +53 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_linux_loong64.s +54 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s +57 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s +55 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s +45 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s +49 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_linux_s390x.s +57 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s +30 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s +18 -0
- data/ext/vendor/golang.org/x/sys/unix/asm_zos_s390x.s +426 -0
- data/ext/vendor/golang.org/x/sys/unix/bluetooth_linux.go +36 -0
- data/ext/vendor/golang.org/x/sys/unix/cap_freebsd.go +196 -0
- data/ext/vendor/golang.org/x/sys/unix/constants.go +14 -0
- data/ext/vendor/golang.org/x/sys/unix/dev_aix_ppc.go +27 -0
- data/ext/vendor/golang.org/x/sys/unix/dev_aix_ppc64.go +29 -0
- data/ext/vendor/golang.org/x/sys/unix/dev_darwin.go +24 -0
- data/ext/vendor/golang.org/x/sys/unix/dev_dragonfly.go +30 -0
- data/ext/vendor/golang.org/x/sys/unix/dev_freebsd.go +30 -0
- data/ext/vendor/golang.org/x/sys/unix/dev_linux.go +42 -0
- data/ext/vendor/golang.org/x/sys/unix/dev_netbsd.go +29 -0
- data/ext/vendor/golang.org/x/sys/unix/dev_openbsd.go +29 -0
- data/ext/vendor/golang.org/x/sys/unix/dev_zos.go +29 -0
- data/ext/vendor/golang.org/x/sys/unix/dirent.go +103 -0
- data/ext/vendor/golang.org/x/sys/unix/endian_big.go +10 -0
- data/ext/vendor/golang.org/x/sys/unix/endian_little.go +10 -0
- data/ext/vendor/golang.org/x/sys/unix/env_unix.go +32 -0
- data/ext/vendor/golang.org/x/sys/unix/epoll_zos.go +221 -0
- data/ext/vendor/golang.org/x/sys/unix/fcntl.go +37 -0
- data/ext/vendor/golang.org/x/sys/unix/fcntl_darwin.go +24 -0
- data/ext/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go +14 -0
- data/ext/vendor/golang.org/x/sys/unix/fdset.go +30 -0
- data/ext/vendor/golang.org/x/sys/unix/fstatfs_zos.go +164 -0
- data/ext/vendor/golang.org/x/sys/unix/gccgo.go +60 -0
- data/ext/vendor/golang.org/x/sys/unix/gccgo_c.c +45 -0
- data/ext/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go +21 -0
- data/ext/vendor/golang.org/x/sys/unix/ifreq_linux.go +142 -0
- data/ext/vendor/golang.org/x/sys/unix/ioctl.go +70 -0
- data/ext/vendor/golang.org/x/sys/unix/ioctl_linux.go +233 -0
- data/ext/vendor/golang.org/x/sys/unix/ioctl_zos.go +72 -0
- data/ext/vendor/golang.org/x/sys/unix/mkall.sh +249 -0
- data/ext/vendor/golang.org/x/sys/unix/mkerrors.sh +778 -0
- data/ext/vendor/golang.org/x/sys/unix/pagesize_unix.go +16 -0
- data/ext/vendor/golang.org/x/sys/unix/pledge_openbsd.go +163 -0
- data/ext/vendor/golang.org/x/sys/unix/ptrace_darwin.go +18 -0
- data/ext/vendor/golang.org/x/sys/unix/ptrace_ios.go +18 -0
- data/ext/vendor/golang.org/x/sys/unix/race.go +31 -0
- data/ext/vendor/golang.org/x/sys/unix/race0.go +26 -0
- data/ext/vendor/golang.org/x/sys/unix/readdirent_getdents.go +13 -0
- data/ext/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go +20 -0
- data/ext/vendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go +16 -0
- data/ext/vendor/golang.org/x/sys/unix/sockcmsg_linux.go +85 -0
- data/ext/vendor/golang.org/x/sys/unix/sockcmsg_unix.go +107 -0
- data/ext/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go +47 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall.go +87 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_aix.go +599 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_aix_ppc.go +54 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go +85 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_bsd.go +624 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_darwin.go +827 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go +52 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go +52 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go +27 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_dragonfly.go +546 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go +57 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_freebsd.go +646 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go +65 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go +65 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go +61 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go +61 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_freebsd_riscv64.go +61 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_hurd.go +30 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_hurd_386.go +29 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_illumos.go +79 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux.go +2510 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_386.go +342 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_alarm.go +14 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go +147 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go +13 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_arm.go +244 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go +195 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_gc.go +15 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go +17 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go +14 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go +31 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go +21 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_loong64.go +222 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go +191 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go +203 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_ppc.go +232 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go +118 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go +180 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go +298 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go +114 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_netbsd.go +623 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go +38 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go +38 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go +38 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go +38 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd.go +391 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go +42 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go +42 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go +42 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go +42 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd_libc.go +27 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd_mips64.go +39 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd_ppc64.go +42 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_openbsd_riscv64.go +42 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_solaris.go +1136 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go +28 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_unix.go +589 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_unix_gc.go +16 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go +25 -0
- data/ext/vendor/golang.org/x/sys/unix/syscall_zos_s390x.go +1994 -0
- data/ext/vendor/golang.org/x/sys/unix/sysvshm_linux.go +21 -0
- data/ext/vendor/golang.org/x/sys/unix/sysvshm_unix.go +52 -0
- data/ext/vendor/golang.org/x/sys/unix/sysvshm_unix_other.go +14 -0
- data/ext/vendor/golang.org/x/sys/unix/timestruct.go +77 -0
- data/ext/vendor/golang.org/x/sys/unix/unveil_openbsd.go +42 -0
- data/ext/vendor/golang.org/x/sys/unix/xattr_bsd.go +281 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go +1385 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go +1386 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go +1892 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go +1892 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go +1738 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go +2043 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go +2040 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go +2034 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go +2034 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_freebsd_riscv64.go +2148 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_linux.go +3479 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_386.go +829 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go +829 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go +835 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go +827 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go +819 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go +836 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go +836 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go +836 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go +836 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go +888 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go +892 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go +892 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go +816 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go +891 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go +886 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go +1780 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go +1770 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go +1759 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go +1770 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go +1906 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go +1906 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go +1906 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go +1906 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_openbsd_mips64.go +1906 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_openbsd_ppc64.go +1905 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_openbsd_riscv64.go +1904 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go +1557 -0
- data/ext/vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go +860 -0
- data/ext/vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go +42 -0
- data/ext/vendor/golang.org/x/sys/unix/zptrace_linux_arm64.go +17 -0
- data/ext/vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go +51 -0
- data/ext/vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go +51 -0
- data/ext/vendor/golang.org/x/sys/unix/zptrace_x86_linux.go +81 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go +1495 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go +1453 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go +1199 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go +1078 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go +2561 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s +904 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go +2561 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s +904 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go +1699 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go +1919 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go +1919 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go +1919 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go +1919 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_freebsd_riscv64.go +1919 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go +102 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux.go +2184 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go +497 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go +664 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go +612 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go +563 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_loong64.go +487 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go +664 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go +658 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go +647 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go +664 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc.go +669 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go +715 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go +715 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go +543 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go +506 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go +659 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go +1870 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go +1870 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go +1870 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go +1870 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go +2243 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.s +669 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go +2243 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.s +669 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go +2243 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.s +669 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go +2243 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.s +669 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.go +2243 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.s +669 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.go +2243 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.s +802 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.go +2243 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.s +669 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go +2117 -0
- data/ext/vendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go +1265 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go +281 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go +281 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go +281 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go +281 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go +281 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysctl_openbsd_ppc64.go +281 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysctl_openbsd_riscv64.go +282 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go +440 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go +438 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go +317 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go +394 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go +394 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go +394 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go +394 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_freebsd_riscv64.go +394 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go +450 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go +372 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go +414 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go +317 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go +311 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go +434 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go +364 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go +364 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go +434 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go +441 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go +413 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go +413 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go +316 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go +378 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go +392 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go +275 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go +275 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go +275 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go +275 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go +220 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go +220 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go +220 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go +219 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go +222 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_openbsd_ppc64.go +218 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_openbsd_riscv64.go +219 -0
- data/ext/vendor/golang.org/x/sys/unix/zsysnum_zos_s390x.go +2670 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go +354 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go +358 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go +795 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go +795 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go +474 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go +651 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go +656 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go +642 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go +636 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_freebsd_riscv64.go +638 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_linux.go +5812 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_386.go +696 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go +711 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go +691 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go +690 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_loong64.go +691 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go +696 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go +693 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go +693 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go +696 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go +704 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go +699 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go +699 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go +718 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go +713 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go +694 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go +586 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go +594 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go +591 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go +594 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go +569 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go +569 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go +576 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go +569 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go +569 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_openbsd_ppc64.go +571 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_openbsd_riscv64.go +571 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go +517 -0
- data/ext/vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go +415 -0
- data/ext/vendor/golang.org/x/sys/windows/aliases.go +13 -0
- data/ext/vendor/golang.org/x/sys/windows/dll_windows.go +416 -0
- data/ext/vendor/golang.org/x/sys/windows/empty.s +9 -0
- data/ext/vendor/golang.org/x/sys/windows/env_windows.go +54 -0
- data/ext/vendor/golang.org/x/sys/windows/eventlog.go +21 -0
- data/ext/vendor/golang.org/x/sys/windows/exec_windows.go +178 -0
- data/ext/vendor/golang.org/x/sys/windows/memory_windows.go +48 -0
- data/ext/vendor/golang.org/x/sys/windows/mkerrors.bash +70 -0
- data/ext/vendor/golang.org/x/sys/windows/mkknownfolderids.bash +27 -0
- data/ext/vendor/golang.org/x/sys/windows/mksyscall.go +10 -0
- data/ext/vendor/golang.org/x/sys/windows/race.go +31 -0
- data/ext/vendor/golang.org/x/sys/windows/race0.go +26 -0
- data/ext/vendor/golang.org/x/sys/windows/security_windows.go +1444 -0
- data/ext/vendor/golang.org/x/sys/windows/service.go +247 -0
- data/ext/vendor/golang.org/x/sys/windows/setupapi_windows.go +1425 -0
- data/ext/vendor/golang.org/x/sys/windows/str.go +23 -0
- data/ext/vendor/golang.org/x/sys/windows/syscall.go +105 -0
- data/ext/vendor/golang.org/x/sys/windows/syscall_windows.go +1808 -0
- data/ext/vendor/golang.org/x/sys/windows/types_windows.go +3345 -0
- data/ext/vendor/golang.org/x/sys/windows/types_windows_386.go +35 -0
- data/ext/vendor/golang.org/x/sys/windows/types_windows_amd64.go +34 -0
- data/ext/vendor/golang.org/x/sys/windows/types_windows_arm.go +35 -0
- data/ext/vendor/golang.org/x/sys/windows/types_windows_arm64.go +34 -0
- data/ext/vendor/golang.org/x/sys/windows/zerrors_windows.go +9468 -0
- data/ext/vendor/golang.org/x/sys/windows/zknownfolderids_windows.go +149 -0
- data/ext/vendor/golang.org/x/sys/windows/zsyscall_windows.go +4336 -0
- data/ext/vendor/golang.org/x/term/CONTRIBUTING.md +26 -0
- data/ext/vendor/golang.org/x/term/LICENSE +27 -0
- data/ext/vendor/golang.org/x/term/PATENTS +22 -0
- data/ext/vendor/golang.org/x/term/README.md +19 -0
- data/ext/vendor/golang.org/x/term/codereview.cfg +1 -0
- data/ext/vendor/golang.org/x/term/term.go +60 -0
- data/ext/vendor/golang.org/x/term/term_plan9.go +42 -0
- data/ext/vendor/golang.org/x/term/term_unix.go +92 -0
- data/ext/vendor/golang.org/x/term/term_unix_bsd.go +13 -0
- data/ext/vendor/golang.org/x/term/term_unix_other.go +13 -0
- data/ext/vendor/golang.org/x/term/term_unsupported.go +39 -0
- data/ext/vendor/golang.org/x/term/term_windows.go +79 -0
- data/ext/vendor/golang.org/x/term/terminal.go +986 -0
- data/ext/vendor/golang.org/x/text/LICENSE +27 -0
- data/ext/vendor/golang.org/x/text/PATENTS +22 -0
- data/ext/vendor/golang.org/x/text/secure/bidirule/bidirule.go +336 -0
- data/ext/vendor/golang.org/x/text/secure/bidirule/bidirule10.0.0.go +12 -0
- data/ext/vendor/golang.org/x/text/secure/bidirule/bidirule9.0.0.go +15 -0
- data/ext/vendor/golang.org/x/text/transform/transform.go +709 -0
- data/ext/vendor/golang.org/x/text/unicode/bidi/bidi.go +359 -0
- data/ext/vendor/golang.org/x/text/unicode/bidi/bracket.go +335 -0
- data/ext/vendor/golang.org/x/text/unicode/bidi/core.go +1071 -0
- data/ext/vendor/golang.org/x/text/unicode/bidi/prop.go +206 -0
- data/ext/vendor/golang.org/x/text/unicode/bidi/tables10.0.0.go +1816 -0
- data/ext/vendor/golang.org/x/text/unicode/bidi/tables11.0.0.go +1888 -0
- data/ext/vendor/golang.org/x/text/unicode/bidi/tables12.0.0.go +1924 -0
- data/ext/vendor/golang.org/x/text/unicode/bidi/tables13.0.0.go +1956 -0
- data/ext/vendor/golang.org/x/text/unicode/bidi/tables9.0.0.go +1782 -0
- data/ext/vendor/golang.org/x/text/unicode/bidi/trieval.go +48 -0
- data/ext/vendor/golang.org/x/text/unicode/norm/composition.go +512 -0
- data/ext/vendor/golang.org/x/text/unicode/norm/forminfo.go +279 -0
- data/ext/vendor/golang.org/x/text/unicode/norm/input.go +109 -0
- data/ext/vendor/golang.org/x/text/unicode/norm/iter.go +458 -0
- data/ext/vendor/golang.org/x/text/unicode/norm/normalize.go +610 -0
- data/ext/vendor/golang.org/x/text/unicode/norm/readwriter.go +125 -0
- data/ext/vendor/golang.org/x/text/unicode/norm/tables10.0.0.go +7658 -0
- data/ext/vendor/golang.org/x/text/unicode/norm/tables11.0.0.go +7694 -0
- data/ext/vendor/golang.org/x/text/unicode/norm/tables12.0.0.go +7711 -0
- data/ext/vendor/golang.org/x/text/unicode/norm/tables13.0.0.go +7761 -0
- data/ext/vendor/golang.org/x/text/unicode/norm/tables9.0.0.go +7638 -0
- data/ext/vendor/golang.org/x/text/unicode/norm/transform.go +88 -0
- data/ext/vendor/golang.org/x/text/unicode/norm/trie.go +54 -0
- data/ext/vendor/golang.org/x/tools/LICENSE +27 -0
- data/ext/vendor/golang.org/x/tools/PATENTS +22 -0
- data/ext/vendor/golang.org/x/tools/cmd/goimports/doc.go +50 -0
- data/ext/vendor/golang.org/x/tools/cmd/goimports/goimports.go +380 -0
- data/ext/vendor/golang.org/x/tools/cmd/goimports/goimports_gc.go +27 -0
- data/ext/vendor/golang.org/x/tools/cmd/goimports/goimports_not_gc.go +12 -0
- data/ext/vendor/golang.org/x/tools/cmd/stringer/stringer.go +657 -0
- data/ext/vendor/golang.org/x/tools/go/ast/astutil/enclosing.go +636 -0
- data/ext/vendor/golang.org/x/tools/go/ast/astutil/imports.go +485 -0
- data/ext/vendor/golang.org/x/tools/go/ast/astutil/rewrite.go +488 -0
- data/ext/vendor/golang.org/x/tools/go/ast/astutil/util.go +18 -0
- data/ext/vendor/golang.org/x/tools/go/gcexportdata/gcexportdata.go +187 -0
- data/ext/vendor/golang.org/x/tools/go/gcexportdata/importer.go +75 -0
- data/ext/vendor/golang.org/x/tools/go/internal/packagesdriver/sizes.go +49 -0
- data/ext/vendor/golang.org/x/tools/go/packages/doc.go +220 -0
- data/ext/vendor/golang.org/x/tools/go/packages/external.go +101 -0
- data/ext/vendor/golang.org/x/tools/go/packages/golist.go +1173 -0
- data/ext/vendor/golang.org/x/tools/go/packages/golist_overlay.go +575 -0
- data/ext/vendor/golang.org/x/tools/go/packages/loadmode_string.go +57 -0
- data/ext/vendor/golang.org/x/tools/go/packages/packages.go +1326 -0
- data/ext/vendor/golang.org/x/tools/go/packages/visit.go +59 -0
- data/ext/vendor/golang.org/x/tools/internal/event/core/event.go +85 -0
- data/ext/vendor/golang.org/x/tools/internal/event/core/export.go +70 -0
- data/ext/vendor/golang.org/x/tools/internal/event/core/fast.go +77 -0
- data/ext/vendor/golang.org/x/tools/internal/event/doc.go +7 -0
- data/ext/vendor/golang.org/x/tools/internal/event/event.go +127 -0
- data/ext/vendor/golang.org/x/tools/internal/event/keys/keys.go +564 -0
- data/ext/vendor/golang.org/x/tools/internal/event/keys/standard.go +22 -0
- data/ext/vendor/golang.org/x/tools/internal/event/label/label.go +215 -0
- data/ext/vendor/golang.org/x/tools/internal/fastwalk/fastwalk.go +196 -0
- data/ext/vendor/golang.org/x/tools/internal/fastwalk/fastwalk_darwin.go +119 -0
- data/ext/vendor/golang.org/x/tools/internal/fastwalk/fastwalk_dirent_fileno.go +14 -0
- data/ext/vendor/golang.org/x/tools/internal/fastwalk/fastwalk_dirent_ino.go +15 -0
- data/ext/vendor/golang.org/x/tools/internal/fastwalk/fastwalk_dirent_namlen_bsd.go +14 -0
- data/ext/vendor/golang.org/x/tools/internal/fastwalk/fastwalk_dirent_namlen_linux.go +29 -0
- data/ext/vendor/golang.org/x/tools/internal/fastwalk/fastwalk_portable.go +38 -0
- data/ext/vendor/golang.org/x/tools/internal/fastwalk/fastwalk_unix.go +153 -0
- data/ext/vendor/golang.org/x/tools/internal/gcimporter/bexport.go +852 -0
- data/ext/vendor/golang.org/x/tools/internal/gcimporter/bimport.go +1053 -0
- data/ext/vendor/golang.org/x/tools/internal/gcimporter/exportdata.go +99 -0
- data/ext/vendor/golang.org/x/tools/internal/gcimporter/gcimporter.go +265 -0
- data/ext/vendor/golang.org/x/tools/internal/gcimporter/iexport.go +1180 -0
- data/ext/vendor/golang.org/x/tools/internal/gcimporter/iimport.go +976 -0
- data/ext/vendor/golang.org/x/tools/internal/gcimporter/newInterface10.go +22 -0
- data/ext/vendor/golang.org/x/tools/internal/gcimporter/newInterface11.go +14 -0
- data/ext/vendor/golang.org/x/tools/internal/gcimporter/support_go117.go +16 -0
- data/ext/vendor/golang.org/x/tools/internal/gcimporter/support_go118.go +37 -0
- data/ext/vendor/golang.org/x/tools/internal/gcimporter/unified_no.go +10 -0
- data/ext/vendor/golang.org/x/tools/internal/gcimporter/unified_yes.go +10 -0
- data/ext/vendor/golang.org/x/tools/internal/gcimporter/ureader_no.go +19 -0
- data/ext/vendor/golang.org/x/tools/internal/gcimporter/ureader_yes.go +738 -0
- data/ext/vendor/golang.org/x/tools/internal/gocommand/invoke.go +356 -0
- data/ext/vendor/golang.org/x/tools/internal/gocommand/vendor.go +109 -0
- data/ext/vendor/golang.org/x/tools/internal/gocommand/version.go +81 -0
- data/ext/vendor/golang.org/x/tools/internal/gopathwalk/walk.go +254 -0
- data/ext/vendor/golang.org/x/tools/internal/imports/fix.go +1738 -0
- data/ext/vendor/golang.org/x/tools/internal/imports/imports.go +351 -0
- data/ext/vendor/golang.org/x/tools/internal/imports/mod.go +716 -0
- data/ext/vendor/golang.org/x/tools/internal/imports/mod_cache.go +236 -0
- data/ext/vendor/golang.org/x/tools/internal/imports/sortimports.go +297 -0
- data/ext/vendor/golang.org/x/tools/internal/imports/zstdlib.go +11115 -0
- data/ext/vendor/golang.org/x/tools/internal/packagesinternal/packages.go +30 -0
- data/ext/vendor/golang.org/x/tools/internal/pkgbits/codes.go +77 -0
- data/ext/vendor/golang.org/x/tools/internal/pkgbits/decoder.go +517 -0
- data/ext/vendor/golang.org/x/tools/internal/pkgbits/doc.go +32 -0
- data/ext/vendor/golang.org/x/tools/internal/pkgbits/encoder.go +383 -0
- data/ext/vendor/golang.org/x/tools/internal/pkgbits/flags.go +9 -0
- data/ext/vendor/golang.org/x/tools/internal/pkgbits/frames_go1.go +21 -0
- data/ext/vendor/golang.org/x/tools/internal/pkgbits/frames_go17.go +28 -0
- data/ext/vendor/golang.org/x/tools/internal/pkgbits/reloc.go +42 -0
- data/ext/vendor/golang.org/x/tools/internal/pkgbits/support.go +17 -0
- data/ext/vendor/golang.org/x/tools/internal/pkgbits/sync.go +113 -0
- data/ext/vendor/golang.org/x/tools/internal/pkgbits/syncmarker_string.go +89 -0
- data/ext/vendor/golang.org/x/tools/internal/tokeninternal/tokeninternal.go +59 -0
- data/ext/vendor/golang.org/x/tools/internal/typeparams/common.go +179 -0
- data/ext/vendor/golang.org/x/tools/internal/typeparams/coretype.go +122 -0
- data/ext/vendor/golang.org/x/tools/internal/typeparams/enabled_go117.go +12 -0
- data/ext/vendor/golang.org/x/tools/internal/typeparams/enabled_go118.go +15 -0
- data/ext/vendor/golang.org/x/tools/internal/typeparams/normalize.go +218 -0
- data/ext/vendor/golang.org/x/tools/internal/typeparams/termlist.go +163 -0
- data/ext/vendor/golang.org/x/tools/internal/typeparams/typeparams_go117.go +197 -0
- data/ext/vendor/golang.org/x/tools/internal/typeparams/typeparams_go118.go +151 -0
- data/ext/vendor/golang.org/x/tools/internal/typeparams/typeterm.go +170 -0
- data/ext/vendor/golang.org/x/tools/internal/typesinternal/errorcode.go +1560 -0
- data/ext/vendor/golang.org/x/tools/internal/typesinternal/errorcode_string.go +179 -0
- data/ext/vendor/golang.org/x/tools/internal/typesinternal/types.go +52 -0
- data/ext/vendor/golang.org/x/tools/internal/typesinternal/types_118.go +19 -0
- data/ext/vendor/golang.org/x/xerrors/LICENSE +27 -0
- data/ext/vendor/golang.org/x/xerrors/PATENTS +22 -0
- data/ext/vendor/golang.org/x/xerrors/README +2 -0
- data/ext/vendor/golang.org/x/xerrors/adaptor.go +193 -0
- data/ext/vendor/golang.org/x/xerrors/codereview.cfg +1 -0
- data/ext/vendor/golang.org/x/xerrors/doc.go +23 -0
- data/ext/vendor/golang.org/x/xerrors/errors.go +33 -0
- data/ext/vendor/golang.org/x/xerrors/fmt.go +190 -0
- data/ext/vendor/golang.org/x/xerrors/format.go +34 -0
- data/ext/vendor/golang.org/x/xerrors/frame.go +56 -0
- data/ext/vendor/golang.org/x/xerrors/internal/internal.go +8 -0
- data/ext/vendor/golang.org/x/xerrors/wrap.go +112 -0
- data/ext/vendor/modules.txt +311 -0
- data/ext/wrapper.go +158 -0
- data/lib/ruby_snowflake_client/version.rb +3 -0
- data/lib/ruby_snowflake_client.rb +46 -0
- data/ruby_snowflake_client.gemspec +24 -0
- metadata +2141 -0
@@ -0,0 +1,2510 @@
|
|
1
|
+
// Copyright 2009 The Go Authors. All rights reserved.
|
2
|
+
// Use of this source code is governed by a BSD-style
|
3
|
+
// license that can be found in the LICENSE file.
|
4
|
+
|
5
|
+
// Linux system calls.
|
6
|
+
// This file is compiled as ordinary Go code,
|
7
|
+
// but it is also input to mksyscall,
|
8
|
+
// which parses the //sys lines and generates system call stubs.
|
9
|
+
// Note that sometimes we use a lowercase //sys name and
|
10
|
+
// wrap it in our own nicer implementation.
|
11
|
+
|
12
|
+
package unix
|
13
|
+
|
14
|
+
import (
|
15
|
+
"encoding/binary"
|
16
|
+
"strconv"
|
17
|
+
"syscall"
|
18
|
+
"time"
|
19
|
+
"unsafe"
|
20
|
+
)
|
21
|
+
|
22
|
+
/*
|
23
|
+
* Wrapped
|
24
|
+
*/
|
25
|
+
|
26
|
+
func Access(path string, mode uint32) (err error) {
|
27
|
+
return Faccessat(AT_FDCWD, path, mode, 0)
|
28
|
+
}
|
29
|
+
|
30
|
+
func Chmod(path string, mode uint32) (err error) {
|
31
|
+
return Fchmodat(AT_FDCWD, path, mode, 0)
|
32
|
+
}
|
33
|
+
|
34
|
+
func Chown(path string, uid int, gid int) (err error) {
|
35
|
+
return Fchownat(AT_FDCWD, path, uid, gid, 0)
|
36
|
+
}
|
37
|
+
|
38
|
+
func Creat(path string, mode uint32) (fd int, err error) {
|
39
|
+
return Open(path, O_CREAT|O_WRONLY|O_TRUNC, mode)
|
40
|
+
}
|
41
|
+
|
42
|
+
func EpollCreate(size int) (fd int, err error) {
|
43
|
+
if size <= 0 {
|
44
|
+
return -1, EINVAL
|
45
|
+
}
|
46
|
+
return EpollCreate1(0)
|
47
|
+
}
|
48
|
+
|
49
|
+
//sys FanotifyInit(flags uint, event_f_flags uint) (fd int, err error)
|
50
|
+
//sys fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error)
|
51
|
+
|
52
|
+
func FanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname string) (err error) {
|
53
|
+
if pathname == "" {
|
54
|
+
return fanotifyMark(fd, flags, mask, dirFd, nil)
|
55
|
+
}
|
56
|
+
p, err := BytePtrFromString(pathname)
|
57
|
+
if err != nil {
|
58
|
+
return err
|
59
|
+
}
|
60
|
+
return fanotifyMark(fd, flags, mask, dirFd, p)
|
61
|
+
}
|
62
|
+
|
63
|
+
//sys fchmodat(dirfd int, path string, mode uint32) (err error)
|
64
|
+
|
65
|
+
func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) {
|
66
|
+
// Linux fchmodat doesn't support the flags parameter. Mimick glibc's behavior
|
67
|
+
// and check the flags. Otherwise the mode would be applied to the symlink
|
68
|
+
// destination which is not what the user expects.
|
69
|
+
if flags&^AT_SYMLINK_NOFOLLOW != 0 {
|
70
|
+
return EINVAL
|
71
|
+
} else if flags&AT_SYMLINK_NOFOLLOW != 0 {
|
72
|
+
return EOPNOTSUPP
|
73
|
+
}
|
74
|
+
return fchmodat(dirfd, path, mode)
|
75
|
+
}
|
76
|
+
|
77
|
+
func InotifyInit() (fd int, err error) {
|
78
|
+
return InotifyInit1(0)
|
79
|
+
}
|
80
|
+
|
81
|
+
//sys ioctl(fd int, req uint, arg uintptr) (err error) = SYS_IOCTL
|
82
|
+
//sys ioctlPtr(fd int, req uint, arg unsafe.Pointer) (err error) = SYS_IOCTL
|
83
|
+
|
84
|
+
// ioctl itself should not be exposed directly, but additional get/set functions
|
85
|
+
// for specific types are permissible. These are defined in ioctl.go and
|
86
|
+
// ioctl_linux.go.
|
87
|
+
//
|
88
|
+
// The third argument to ioctl is often a pointer but sometimes an integer.
|
89
|
+
// Callers should use ioctlPtr when the third argument is a pointer and ioctl
|
90
|
+
// when the third argument is an integer.
|
91
|
+
//
|
92
|
+
// TODO: some existing code incorrectly uses ioctl when it should use ioctlPtr.
|
93
|
+
|
94
|
+
//sys Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error)
|
95
|
+
|
96
|
+
func Link(oldpath string, newpath string) (err error) {
|
97
|
+
return Linkat(AT_FDCWD, oldpath, AT_FDCWD, newpath, 0)
|
98
|
+
}
|
99
|
+
|
100
|
+
func Mkdir(path string, mode uint32) (err error) {
|
101
|
+
return Mkdirat(AT_FDCWD, path, mode)
|
102
|
+
}
|
103
|
+
|
104
|
+
func Mknod(path string, mode uint32, dev int) (err error) {
|
105
|
+
return Mknodat(AT_FDCWD, path, mode, dev)
|
106
|
+
}
|
107
|
+
|
108
|
+
func Open(path string, mode int, perm uint32) (fd int, err error) {
|
109
|
+
return openat(AT_FDCWD, path, mode|O_LARGEFILE, perm)
|
110
|
+
}
|
111
|
+
|
112
|
+
//sys openat(dirfd int, path string, flags int, mode uint32) (fd int, err error)
|
113
|
+
|
114
|
+
func Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) {
|
115
|
+
return openat(dirfd, path, flags|O_LARGEFILE, mode)
|
116
|
+
}
|
117
|
+
|
118
|
+
//sys openat2(dirfd int, path string, open_how *OpenHow, size int) (fd int, err error)
|
119
|
+
|
120
|
+
func Openat2(dirfd int, path string, how *OpenHow) (fd int, err error) {
|
121
|
+
return openat2(dirfd, path, how, SizeofOpenHow)
|
122
|
+
}
|
123
|
+
|
124
|
+
func Pipe(p []int) error {
|
125
|
+
return Pipe2(p, 0)
|
126
|
+
}
|
127
|
+
|
128
|
+
//sysnb pipe2(p *[2]_C_int, flags int) (err error)
|
129
|
+
|
130
|
+
func Pipe2(p []int, flags int) error {
|
131
|
+
if len(p) != 2 {
|
132
|
+
return EINVAL
|
133
|
+
}
|
134
|
+
var pp [2]_C_int
|
135
|
+
err := pipe2(&pp, flags)
|
136
|
+
if err == nil {
|
137
|
+
p[0] = int(pp[0])
|
138
|
+
p[1] = int(pp[1])
|
139
|
+
}
|
140
|
+
return err
|
141
|
+
}
|
142
|
+
|
143
|
+
//sys ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error)
|
144
|
+
|
145
|
+
func Ppoll(fds []PollFd, timeout *Timespec, sigmask *Sigset_t) (n int, err error) {
|
146
|
+
if len(fds) == 0 {
|
147
|
+
return ppoll(nil, 0, timeout, sigmask)
|
148
|
+
}
|
149
|
+
return ppoll(&fds[0], len(fds), timeout, sigmask)
|
150
|
+
}
|
151
|
+
|
152
|
+
func Poll(fds []PollFd, timeout int) (n int, err error) {
|
153
|
+
var ts *Timespec
|
154
|
+
if timeout >= 0 {
|
155
|
+
ts = new(Timespec)
|
156
|
+
*ts = NsecToTimespec(int64(timeout) * 1e6)
|
157
|
+
}
|
158
|
+
return Ppoll(fds, ts, nil)
|
159
|
+
}
|
160
|
+
|
161
|
+
//sys Readlinkat(dirfd int, path string, buf []byte) (n int, err error)
|
162
|
+
|
163
|
+
func Readlink(path string, buf []byte) (n int, err error) {
|
164
|
+
return Readlinkat(AT_FDCWD, path, buf)
|
165
|
+
}
|
166
|
+
|
167
|
+
func Rename(oldpath string, newpath string) (err error) {
|
168
|
+
return Renameat(AT_FDCWD, oldpath, AT_FDCWD, newpath)
|
169
|
+
}
|
170
|
+
|
171
|
+
func Rmdir(path string) error {
|
172
|
+
return Unlinkat(AT_FDCWD, path, AT_REMOVEDIR)
|
173
|
+
}
|
174
|
+
|
175
|
+
//sys Symlinkat(oldpath string, newdirfd int, newpath string) (err error)
|
176
|
+
|
177
|
+
func Symlink(oldpath string, newpath string) (err error) {
|
178
|
+
return Symlinkat(oldpath, AT_FDCWD, newpath)
|
179
|
+
}
|
180
|
+
|
181
|
+
func Unlink(path string) error {
|
182
|
+
return Unlinkat(AT_FDCWD, path, 0)
|
183
|
+
}
|
184
|
+
|
185
|
+
//sys Unlinkat(dirfd int, path string, flags int) (err error)
|
186
|
+
|
187
|
+
func Utimes(path string, tv []Timeval) error {
|
188
|
+
if tv == nil {
|
189
|
+
err := utimensat(AT_FDCWD, path, nil, 0)
|
190
|
+
if err != ENOSYS {
|
191
|
+
return err
|
192
|
+
}
|
193
|
+
return utimes(path, nil)
|
194
|
+
}
|
195
|
+
if len(tv) != 2 {
|
196
|
+
return EINVAL
|
197
|
+
}
|
198
|
+
var ts [2]Timespec
|
199
|
+
ts[0] = NsecToTimespec(TimevalToNsec(tv[0]))
|
200
|
+
ts[1] = NsecToTimespec(TimevalToNsec(tv[1]))
|
201
|
+
err := utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0)
|
202
|
+
if err != ENOSYS {
|
203
|
+
return err
|
204
|
+
}
|
205
|
+
return utimes(path, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
|
206
|
+
}
|
207
|
+
|
208
|
+
//sys utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error)
|
209
|
+
|
210
|
+
func UtimesNano(path string, ts []Timespec) error {
|
211
|
+
return UtimesNanoAt(AT_FDCWD, path, ts, 0)
|
212
|
+
}
|
213
|
+
|
214
|
+
func UtimesNanoAt(dirfd int, path string, ts []Timespec, flags int) error {
|
215
|
+
if ts == nil {
|
216
|
+
return utimensat(dirfd, path, nil, flags)
|
217
|
+
}
|
218
|
+
if len(ts) != 2 {
|
219
|
+
return EINVAL
|
220
|
+
}
|
221
|
+
return utimensat(dirfd, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), flags)
|
222
|
+
}
|
223
|
+
|
224
|
+
func Futimesat(dirfd int, path string, tv []Timeval) error {
|
225
|
+
if tv == nil {
|
226
|
+
return futimesat(dirfd, path, nil)
|
227
|
+
}
|
228
|
+
if len(tv) != 2 {
|
229
|
+
return EINVAL
|
230
|
+
}
|
231
|
+
return futimesat(dirfd, path, (*[2]Timeval)(unsafe.Pointer(&tv[0])))
|
232
|
+
}
|
233
|
+
|
234
|
+
func Futimes(fd int, tv []Timeval) (err error) {
|
235
|
+
// Believe it or not, this is the best we can do on Linux
|
236
|
+
// (and is what glibc does).
|
237
|
+
return Utimes("/proc/self/fd/"+strconv.Itoa(fd), tv)
|
238
|
+
}
|
239
|
+
|
240
|
+
const ImplementsGetwd = true
|
241
|
+
|
242
|
+
//sys Getcwd(buf []byte) (n int, err error)
|
243
|
+
|
244
|
+
func Getwd() (wd string, err error) {
|
245
|
+
var buf [PathMax]byte
|
246
|
+
n, err := Getcwd(buf[0:])
|
247
|
+
if err != nil {
|
248
|
+
return "", err
|
249
|
+
}
|
250
|
+
// Getcwd returns the number of bytes written to buf, including the NUL.
|
251
|
+
if n < 1 || n > len(buf) || buf[n-1] != 0 {
|
252
|
+
return "", EINVAL
|
253
|
+
}
|
254
|
+
// In some cases, Linux can return a path that starts with the
|
255
|
+
// "(unreachable)" prefix, which can potentially be a valid relative
|
256
|
+
// path. To work around that, return ENOENT if path is not absolute.
|
257
|
+
if buf[0] != '/' {
|
258
|
+
return "", ENOENT
|
259
|
+
}
|
260
|
+
|
261
|
+
return string(buf[0 : n-1]), nil
|
262
|
+
}
|
263
|
+
|
264
|
+
func Getgroups() (gids []int, err error) {
|
265
|
+
n, err := getgroups(0, nil)
|
266
|
+
if err != nil {
|
267
|
+
return nil, err
|
268
|
+
}
|
269
|
+
if n == 0 {
|
270
|
+
return nil, nil
|
271
|
+
}
|
272
|
+
|
273
|
+
// Sanity check group count. Max is 1<<16 on Linux.
|
274
|
+
if n < 0 || n > 1<<20 {
|
275
|
+
return nil, EINVAL
|
276
|
+
}
|
277
|
+
|
278
|
+
a := make([]_Gid_t, n)
|
279
|
+
n, err = getgroups(n, &a[0])
|
280
|
+
if err != nil {
|
281
|
+
return nil, err
|
282
|
+
}
|
283
|
+
gids = make([]int, n)
|
284
|
+
for i, v := range a[0:n] {
|
285
|
+
gids[i] = int(v)
|
286
|
+
}
|
287
|
+
return
|
288
|
+
}
|
289
|
+
|
290
|
+
func Setgroups(gids []int) (err error) {
|
291
|
+
if len(gids) == 0 {
|
292
|
+
return setgroups(0, nil)
|
293
|
+
}
|
294
|
+
|
295
|
+
a := make([]_Gid_t, len(gids))
|
296
|
+
for i, v := range gids {
|
297
|
+
a[i] = _Gid_t(v)
|
298
|
+
}
|
299
|
+
return setgroups(len(a), &a[0])
|
300
|
+
}
|
301
|
+
|
302
|
+
type WaitStatus uint32
|
303
|
+
|
304
|
+
// Wait status is 7 bits at bottom, either 0 (exited),
|
305
|
+
// 0x7F (stopped), or a signal number that caused an exit.
|
306
|
+
// The 0x80 bit is whether there was a core dump.
|
307
|
+
// An extra number (exit code, signal causing a stop)
|
308
|
+
// is in the high bits. At least that's the idea.
|
309
|
+
// There are various irregularities. For example, the
|
310
|
+
// "continued" status is 0xFFFF, distinguishing itself
|
311
|
+
// from stopped via the core dump bit.
|
312
|
+
|
313
|
+
const (
|
314
|
+
mask = 0x7F
|
315
|
+
core = 0x80
|
316
|
+
exited = 0x00
|
317
|
+
stopped = 0x7F
|
318
|
+
shift = 8
|
319
|
+
)
|
320
|
+
|
321
|
+
func (w WaitStatus) Exited() bool { return w&mask == exited }
|
322
|
+
|
323
|
+
func (w WaitStatus) Signaled() bool { return w&mask != stopped && w&mask != exited }
|
324
|
+
|
325
|
+
func (w WaitStatus) Stopped() bool { return w&0xFF == stopped }
|
326
|
+
|
327
|
+
func (w WaitStatus) Continued() bool { return w == 0xFFFF }
|
328
|
+
|
329
|
+
func (w WaitStatus) CoreDump() bool { return w.Signaled() && w&core != 0 }
|
330
|
+
|
331
|
+
func (w WaitStatus) ExitStatus() int {
|
332
|
+
if !w.Exited() {
|
333
|
+
return -1
|
334
|
+
}
|
335
|
+
return int(w>>shift) & 0xFF
|
336
|
+
}
|
337
|
+
|
338
|
+
func (w WaitStatus) Signal() syscall.Signal {
|
339
|
+
if !w.Signaled() {
|
340
|
+
return -1
|
341
|
+
}
|
342
|
+
return syscall.Signal(w & mask)
|
343
|
+
}
|
344
|
+
|
345
|
+
func (w WaitStatus) StopSignal() syscall.Signal {
|
346
|
+
if !w.Stopped() {
|
347
|
+
return -1
|
348
|
+
}
|
349
|
+
return syscall.Signal(w>>shift) & 0xFF
|
350
|
+
}
|
351
|
+
|
352
|
+
func (w WaitStatus) TrapCause() int {
|
353
|
+
if w.StopSignal() != SIGTRAP {
|
354
|
+
return -1
|
355
|
+
}
|
356
|
+
return int(w>>shift) >> 8
|
357
|
+
}
|
358
|
+
|
359
|
+
//sys wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error)
|
360
|
+
|
361
|
+
func Wait4(pid int, wstatus *WaitStatus, options int, rusage *Rusage) (wpid int, err error) {
|
362
|
+
var status _C_int
|
363
|
+
wpid, err = wait4(pid, &status, options, rusage)
|
364
|
+
if wstatus != nil {
|
365
|
+
*wstatus = WaitStatus(status)
|
366
|
+
}
|
367
|
+
return
|
368
|
+
}
|
369
|
+
|
370
|
+
//sys Waitid(idType int, id int, info *Siginfo, options int, rusage *Rusage) (err error)
|
371
|
+
|
372
|
+
func Mkfifo(path string, mode uint32) error {
|
373
|
+
return Mknod(path, mode|S_IFIFO, 0)
|
374
|
+
}
|
375
|
+
|
376
|
+
func Mkfifoat(dirfd int, path string, mode uint32) error {
|
377
|
+
return Mknodat(dirfd, path, mode|S_IFIFO, 0)
|
378
|
+
}
|
379
|
+
|
380
|
+
func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
381
|
+
if sa.Port < 0 || sa.Port > 0xFFFF {
|
382
|
+
return nil, 0, EINVAL
|
383
|
+
}
|
384
|
+
sa.raw.Family = AF_INET
|
385
|
+
p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port))
|
386
|
+
p[0] = byte(sa.Port >> 8)
|
387
|
+
p[1] = byte(sa.Port)
|
388
|
+
sa.raw.Addr = sa.Addr
|
389
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrInet4, nil
|
390
|
+
}
|
391
|
+
|
392
|
+
func (sa *SockaddrInet6) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
393
|
+
if sa.Port < 0 || sa.Port > 0xFFFF {
|
394
|
+
return nil, 0, EINVAL
|
395
|
+
}
|
396
|
+
sa.raw.Family = AF_INET6
|
397
|
+
p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port))
|
398
|
+
p[0] = byte(sa.Port >> 8)
|
399
|
+
p[1] = byte(sa.Port)
|
400
|
+
sa.raw.Scope_id = sa.ZoneId
|
401
|
+
sa.raw.Addr = sa.Addr
|
402
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrInet6, nil
|
403
|
+
}
|
404
|
+
|
405
|
+
func (sa *SockaddrUnix) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
406
|
+
name := sa.Name
|
407
|
+
n := len(name)
|
408
|
+
if n >= len(sa.raw.Path) {
|
409
|
+
return nil, 0, EINVAL
|
410
|
+
}
|
411
|
+
sa.raw.Family = AF_UNIX
|
412
|
+
for i := 0; i < n; i++ {
|
413
|
+
sa.raw.Path[i] = int8(name[i])
|
414
|
+
}
|
415
|
+
// length is family (uint16), name, NUL.
|
416
|
+
sl := _Socklen(2)
|
417
|
+
if n > 0 {
|
418
|
+
sl += _Socklen(n) + 1
|
419
|
+
}
|
420
|
+
if sa.raw.Path[0] == '@' {
|
421
|
+
sa.raw.Path[0] = 0
|
422
|
+
// Don't count trailing NUL for abstract address.
|
423
|
+
sl--
|
424
|
+
}
|
425
|
+
|
426
|
+
return unsafe.Pointer(&sa.raw), sl, nil
|
427
|
+
}
|
428
|
+
|
429
|
+
// SockaddrLinklayer implements the Sockaddr interface for AF_PACKET type sockets.
|
430
|
+
type SockaddrLinklayer struct {
|
431
|
+
Protocol uint16
|
432
|
+
Ifindex int
|
433
|
+
Hatype uint16
|
434
|
+
Pkttype uint8
|
435
|
+
Halen uint8
|
436
|
+
Addr [8]byte
|
437
|
+
raw RawSockaddrLinklayer
|
438
|
+
}
|
439
|
+
|
440
|
+
func (sa *SockaddrLinklayer) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
441
|
+
if sa.Ifindex < 0 || sa.Ifindex > 0x7fffffff {
|
442
|
+
return nil, 0, EINVAL
|
443
|
+
}
|
444
|
+
sa.raw.Family = AF_PACKET
|
445
|
+
sa.raw.Protocol = sa.Protocol
|
446
|
+
sa.raw.Ifindex = int32(sa.Ifindex)
|
447
|
+
sa.raw.Hatype = sa.Hatype
|
448
|
+
sa.raw.Pkttype = sa.Pkttype
|
449
|
+
sa.raw.Halen = sa.Halen
|
450
|
+
sa.raw.Addr = sa.Addr
|
451
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrLinklayer, nil
|
452
|
+
}
|
453
|
+
|
454
|
+
// SockaddrNetlink implements the Sockaddr interface for AF_NETLINK type sockets.
|
455
|
+
type SockaddrNetlink struct {
|
456
|
+
Family uint16
|
457
|
+
Pad uint16
|
458
|
+
Pid uint32
|
459
|
+
Groups uint32
|
460
|
+
raw RawSockaddrNetlink
|
461
|
+
}
|
462
|
+
|
463
|
+
func (sa *SockaddrNetlink) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
464
|
+
sa.raw.Family = AF_NETLINK
|
465
|
+
sa.raw.Pad = sa.Pad
|
466
|
+
sa.raw.Pid = sa.Pid
|
467
|
+
sa.raw.Groups = sa.Groups
|
468
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrNetlink, nil
|
469
|
+
}
|
470
|
+
|
471
|
+
// SockaddrHCI implements the Sockaddr interface for AF_BLUETOOTH type sockets
|
472
|
+
// using the HCI protocol.
|
473
|
+
type SockaddrHCI struct {
|
474
|
+
Dev uint16
|
475
|
+
Channel uint16
|
476
|
+
raw RawSockaddrHCI
|
477
|
+
}
|
478
|
+
|
479
|
+
func (sa *SockaddrHCI) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
480
|
+
sa.raw.Family = AF_BLUETOOTH
|
481
|
+
sa.raw.Dev = sa.Dev
|
482
|
+
sa.raw.Channel = sa.Channel
|
483
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrHCI, nil
|
484
|
+
}
|
485
|
+
|
486
|
+
// SockaddrL2 implements the Sockaddr interface for AF_BLUETOOTH type sockets
|
487
|
+
// using the L2CAP protocol.
|
488
|
+
type SockaddrL2 struct {
|
489
|
+
PSM uint16
|
490
|
+
CID uint16
|
491
|
+
Addr [6]uint8
|
492
|
+
AddrType uint8
|
493
|
+
raw RawSockaddrL2
|
494
|
+
}
|
495
|
+
|
496
|
+
func (sa *SockaddrL2) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
497
|
+
sa.raw.Family = AF_BLUETOOTH
|
498
|
+
psm := (*[2]byte)(unsafe.Pointer(&sa.raw.Psm))
|
499
|
+
psm[0] = byte(sa.PSM)
|
500
|
+
psm[1] = byte(sa.PSM >> 8)
|
501
|
+
for i := 0; i < len(sa.Addr); i++ {
|
502
|
+
sa.raw.Bdaddr[i] = sa.Addr[len(sa.Addr)-1-i]
|
503
|
+
}
|
504
|
+
cid := (*[2]byte)(unsafe.Pointer(&sa.raw.Cid))
|
505
|
+
cid[0] = byte(sa.CID)
|
506
|
+
cid[1] = byte(sa.CID >> 8)
|
507
|
+
sa.raw.Bdaddr_type = sa.AddrType
|
508
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrL2, nil
|
509
|
+
}
|
510
|
+
|
511
|
+
// SockaddrRFCOMM implements the Sockaddr interface for AF_BLUETOOTH type sockets
|
512
|
+
// using the RFCOMM protocol.
|
513
|
+
//
|
514
|
+
// Server example:
|
515
|
+
//
|
516
|
+
// fd, _ := Socket(AF_BLUETOOTH, SOCK_STREAM, BTPROTO_RFCOMM)
|
517
|
+
// _ = unix.Bind(fd, &unix.SockaddrRFCOMM{
|
518
|
+
// Channel: 1,
|
519
|
+
// Addr: [6]uint8{0, 0, 0, 0, 0, 0}, // BDADDR_ANY or 00:00:00:00:00:00
|
520
|
+
// })
|
521
|
+
// _ = Listen(fd, 1)
|
522
|
+
// nfd, sa, _ := Accept(fd)
|
523
|
+
// fmt.Printf("conn addr=%v fd=%d", sa.(*unix.SockaddrRFCOMM).Addr, nfd)
|
524
|
+
// Read(nfd, buf)
|
525
|
+
//
|
526
|
+
// Client example:
|
527
|
+
//
|
528
|
+
// fd, _ := Socket(AF_BLUETOOTH, SOCK_STREAM, BTPROTO_RFCOMM)
|
529
|
+
// _ = Connect(fd, &SockaddrRFCOMM{
|
530
|
+
// Channel: 1,
|
531
|
+
// Addr: [6]byte{0x11, 0x22, 0x33, 0xaa, 0xbb, 0xcc}, // CC:BB:AA:33:22:11
|
532
|
+
// })
|
533
|
+
// Write(fd, []byte(`hello`))
|
534
|
+
type SockaddrRFCOMM struct {
|
535
|
+
// Addr represents a bluetooth address, byte ordering is little-endian.
|
536
|
+
Addr [6]uint8
|
537
|
+
|
538
|
+
// Channel is a designated bluetooth channel, only 1-30 are available for use.
|
539
|
+
// Since Linux 2.6.7 and further zero value is the first available channel.
|
540
|
+
Channel uint8
|
541
|
+
|
542
|
+
raw RawSockaddrRFCOMM
|
543
|
+
}
|
544
|
+
|
545
|
+
func (sa *SockaddrRFCOMM) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
546
|
+
sa.raw.Family = AF_BLUETOOTH
|
547
|
+
sa.raw.Channel = sa.Channel
|
548
|
+
sa.raw.Bdaddr = sa.Addr
|
549
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrRFCOMM, nil
|
550
|
+
}
|
551
|
+
|
552
|
+
// SockaddrCAN implements the Sockaddr interface for AF_CAN type sockets.
|
553
|
+
// The RxID and TxID fields are used for transport protocol addressing in
|
554
|
+
// (CAN_TP16, CAN_TP20, CAN_MCNET, and CAN_ISOTP), they can be left with
|
555
|
+
// zero values for CAN_RAW and CAN_BCM sockets as they have no meaning.
|
556
|
+
//
|
557
|
+
// The SockaddrCAN struct must be bound to the socket file descriptor
|
558
|
+
// using Bind before the CAN socket can be used.
|
559
|
+
//
|
560
|
+
// // Read one raw CAN frame
|
561
|
+
// fd, _ := Socket(AF_CAN, SOCK_RAW, CAN_RAW)
|
562
|
+
// addr := &SockaddrCAN{Ifindex: index}
|
563
|
+
// Bind(fd, addr)
|
564
|
+
// frame := make([]byte, 16)
|
565
|
+
// Read(fd, frame)
|
566
|
+
//
|
567
|
+
// The full SocketCAN documentation can be found in the linux kernel
|
568
|
+
// archives at: https://www.kernel.org/doc/Documentation/networking/can.txt
|
569
|
+
type SockaddrCAN struct {
|
570
|
+
Ifindex int
|
571
|
+
RxID uint32
|
572
|
+
TxID uint32
|
573
|
+
raw RawSockaddrCAN
|
574
|
+
}
|
575
|
+
|
576
|
+
func (sa *SockaddrCAN) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
577
|
+
if sa.Ifindex < 0 || sa.Ifindex > 0x7fffffff {
|
578
|
+
return nil, 0, EINVAL
|
579
|
+
}
|
580
|
+
sa.raw.Family = AF_CAN
|
581
|
+
sa.raw.Ifindex = int32(sa.Ifindex)
|
582
|
+
rx := (*[4]byte)(unsafe.Pointer(&sa.RxID))
|
583
|
+
for i := 0; i < 4; i++ {
|
584
|
+
sa.raw.Addr[i] = rx[i]
|
585
|
+
}
|
586
|
+
tx := (*[4]byte)(unsafe.Pointer(&sa.TxID))
|
587
|
+
for i := 0; i < 4; i++ {
|
588
|
+
sa.raw.Addr[i+4] = tx[i]
|
589
|
+
}
|
590
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrCAN, nil
|
591
|
+
}
|
592
|
+
|
593
|
+
// SockaddrCANJ1939 implements the Sockaddr interface for AF_CAN using J1939
|
594
|
+
// protocol (https://en.wikipedia.org/wiki/SAE_J1939). For more information
|
595
|
+
// on the purposes of the fields, check the official linux kernel documentation
|
596
|
+
// available here: https://www.kernel.org/doc/Documentation/networking/j1939.rst
|
597
|
+
type SockaddrCANJ1939 struct {
|
598
|
+
Ifindex int
|
599
|
+
Name uint64
|
600
|
+
PGN uint32
|
601
|
+
Addr uint8
|
602
|
+
raw RawSockaddrCAN
|
603
|
+
}
|
604
|
+
|
605
|
+
func (sa *SockaddrCANJ1939) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
606
|
+
if sa.Ifindex < 0 || sa.Ifindex > 0x7fffffff {
|
607
|
+
return nil, 0, EINVAL
|
608
|
+
}
|
609
|
+
sa.raw.Family = AF_CAN
|
610
|
+
sa.raw.Ifindex = int32(sa.Ifindex)
|
611
|
+
n := (*[8]byte)(unsafe.Pointer(&sa.Name))
|
612
|
+
for i := 0; i < 8; i++ {
|
613
|
+
sa.raw.Addr[i] = n[i]
|
614
|
+
}
|
615
|
+
p := (*[4]byte)(unsafe.Pointer(&sa.PGN))
|
616
|
+
for i := 0; i < 4; i++ {
|
617
|
+
sa.raw.Addr[i+8] = p[i]
|
618
|
+
}
|
619
|
+
sa.raw.Addr[12] = sa.Addr
|
620
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrCAN, nil
|
621
|
+
}
|
622
|
+
|
623
|
+
// SockaddrALG implements the Sockaddr interface for AF_ALG type sockets.
|
624
|
+
// SockaddrALG enables userspace access to the Linux kernel's cryptography
|
625
|
+
// subsystem. The Type and Name fields specify which type of hash or cipher
|
626
|
+
// should be used with a given socket.
|
627
|
+
//
|
628
|
+
// To create a file descriptor that provides access to a hash or cipher, both
|
629
|
+
// Bind and Accept must be used. Once the setup process is complete, input
|
630
|
+
// data can be written to the socket, processed by the kernel, and then read
|
631
|
+
// back as hash output or ciphertext.
|
632
|
+
//
|
633
|
+
// Here is an example of using an AF_ALG socket with SHA1 hashing.
|
634
|
+
// The initial socket setup process is as follows:
|
635
|
+
//
|
636
|
+
// // Open a socket to perform SHA1 hashing.
|
637
|
+
// fd, _ := unix.Socket(unix.AF_ALG, unix.SOCK_SEQPACKET, 0)
|
638
|
+
// addr := &unix.SockaddrALG{Type: "hash", Name: "sha1"}
|
639
|
+
// unix.Bind(fd, addr)
|
640
|
+
// // Note: unix.Accept does not work at this time; must invoke accept()
|
641
|
+
// // manually using unix.Syscall.
|
642
|
+
// hashfd, _, _ := unix.Syscall(unix.SYS_ACCEPT, uintptr(fd), 0, 0)
|
643
|
+
//
|
644
|
+
// Once a file descriptor has been returned from Accept, it may be used to
|
645
|
+
// perform SHA1 hashing. The descriptor is not safe for concurrent use, but
|
646
|
+
// may be re-used repeatedly with subsequent Write and Read operations.
|
647
|
+
//
|
648
|
+
// When hashing a small byte slice or string, a single Write and Read may
|
649
|
+
// be used:
|
650
|
+
//
|
651
|
+
// // Assume hashfd is already configured using the setup process.
|
652
|
+
// hash := os.NewFile(hashfd, "sha1")
|
653
|
+
// // Hash an input string and read the results. Each Write discards
|
654
|
+
// // previous hash state. Read always reads the current state.
|
655
|
+
// b := make([]byte, 20)
|
656
|
+
// for i := 0; i < 2; i++ {
|
657
|
+
// io.WriteString(hash, "Hello, world.")
|
658
|
+
// hash.Read(b)
|
659
|
+
// fmt.Println(hex.EncodeToString(b))
|
660
|
+
// }
|
661
|
+
// // Output:
|
662
|
+
// // 2ae01472317d1935a84797ec1983ae243fc6aa28
|
663
|
+
// // 2ae01472317d1935a84797ec1983ae243fc6aa28
|
664
|
+
//
|
665
|
+
// For hashing larger byte slices, or byte streams such as those read from
|
666
|
+
// a file or socket, use Sendto with MSG_MORE to instruct the kernel to update
|
667
|
+
// the hash digest instead of creating a new one for a given chunk and finalizing it.
|
668
|
+
//
|
669
|
+
// // Assume hashfd and addr are already configured using the setup process.
|
670
|
+
// hash := os.NewFile(hashfd, "sha1")
|
671
|
+
// // Hash the contents of a file.
|
672
|
+
// f, _ := os.Open("/tmp/linux-4.10-rc7.tar.xz")
|
673
|
+
// b := make([]byte, 4096)
|
674
|
+
// for {
|
675
|
+
// n, err := f.Read(b)
|
676
|
+
// if err == io.EOF {
|
677
|
+
// break
|
678
|
+
// }
|
679
|
+
// unix.Sendto(hashfd, b[:n], unix.MSG_MORE, addr)
|
680
|
+
// }
|
681
|
+
// hash.Read(b)
|
682
|
+
// fmt.Println(hex.EncodeToString(b))
|
683
|
+
// // Output: 85cdcad0c06eef66f805ecce353bec9accbeecc5
|
684
|
+
//
|
685
|
+
// For more information, see: http://www.chronox.de/crypto-API/crypto/userspace-if.html.
|
686
|
+
type SockaddrALG struct {
|
687
|
+
Type string
|
688
|
+
Name string
|
689
|
+
Feature uint32
|
690
|
+
Mask uint32
|
691
|
+
raw RawSockaddrALG
|
692
|
+
}
|
693
|
+
|
694
|
+
func (sa *SockaddrALG) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
695
|
+
// Leave room for NUL byte terminator.
|
696
|
+
if len(sa.Type) > 13 {
|
697
|
+
return nil, 0, EINVAL
|
698
|
+
}
|
699
|
+
if len(sa.Name) > 63 {
|
700
|
+
return nil, 0, EINVAL
|
701
|
+
}
|
702
|
+
|
703
|
+
sa.raw.Family = AF_ALG
|
704
|
+
sa.raw.Feat = sa.Feature
|
705
|
+
sa.raw.Mask = sa.Mask
|
706
|
+
|
707
|
+
typ, err := ByteSliceFromString(sa.Type)
|
708
|
+
if err != nil {
|
709
|
+
return nil, 0, err
|
710
|
+
}
|
711
|
+
name, err := ByteSliceFromString(sa.Name)
|
712
|
+
if err != nil {
|
713
|
+
return nil, 0, err
|
714
|
+
}
|
715
|
+
|
716
|
+
copy(sa.raw.Type[:], typ)
|
717
|
+
copy(sa.raw.Name[:], name)
|
718
|
+
|
719
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrALG, nil
|
720
|
+
}
|
721
|
+
|
722
|
+
// SockaddrVM implements the Sockaddr interface for AF_VSOCK type sockets.
|
723
|
+
// SockaddrVM provides access to Linux VM sockets: a mechanism that enables
|
724
|
+
// bidirectional communication between a hypervisor and its guest virtual
|
725
|
+
// machines.
|
726
|
+
type SockaddrVM struct {
|
727
|
+
// CID and Port specify a context ID and port address for a VM socket.
|
728
|
+
// Guests have a unique CID, and hosts may have a well-known CID of:
|
729
|
+
// - VMADDR_CID_HYPERVISOR: refers to the hypervisor process.
|
730
|
+
// - VMADDR_CID_LOCAL: refers to local communication (loopback).
|
731
|
+
// - VMADDR_CID_HOST: refers to other processes on the host.
|
732
|
+
CID uint32
|
733
|
+
Port uint32
|
734
|
+
Flags uint8
|
735
|
+
raw RawSockaddrVM
|
736
|
+
}
|
737
|
+
|
738
|
+
func (sa *SockaddrVM) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
739
|
+
sa.raw.Family = AF_VSOCK
|
740
|
+
sa.raw.Port = sa.Port
|
741
|
+
sa.raw.Cid = sa.CID
|
742
|
+
sa.raw.Flags = sa.Flags
|
743
|
+
|
744
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrVM, nil
|
745
|
+
}
|
746
|
+
|
747
|
+
type SockaddrXDP struct {
|
748
|
+
Flags uint16
|
749
|
+
Ifindex uint32
|
750
|
+
QueueID uint32
|
751
|
+
SharedUmemFD uint32
|
752
|
+
raw RawSockaddrXDP
|
753
|
+
}
|
754
|
+
|
755
|
+
func (sa *SockaddrXDP) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
756
|
+
sa.raw.Family = AF_XDP
|
757
|
+
sa.raw.Flags = sa.Flags
|
758
|
+
sa.raw.Ifindex = sa.Ifindex
|
759
|
+
sa.raw.Queue_id = sa.QueueID
|
760
|
+
sa.raw.Shared_umem_fd = sa.SharedUmemFD
|
761
|
+
|
762
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrXDP, nil
|
763
|
+
}
|
764
|
+
|
765
|
+
// This constant mirrors the #define of PX_PROTO_OE in
|
766
|
+
// linux/if_pppox.h. We're defining this by hand here instead of
|
767
|
+
// autogenerating through mkerrors.sh because including
|
768
|
+
// linux/if_pppox.h causes some declaration conflicts with other
|
769
|
+
// includes (linux/if_pppox.h includes linux/in.h, which conflicts
|
770
|
+
// with netinet/in.h). Given that we only need a single zero constant
|
771
|
+
// out of that file, it's cleaner to just define it by hand here.
|
772
|
+
const px_proto_oe = 0
|
773
|
+
|
774
|
+
type SockaddrPPPoE struct {
|
775
|
+
SID uint16
|
776
|
+
Remote []byte
|
777
|
+
Dev string
|
778
|
+
raw RawSockaddrPPPoX
|
779
|
+
}
|
780
|
+
|
781
|
+
func (sa *SockaddrPPPoE) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
782
|
+
if len(sa.Remote) != 6 {
|
783
|
+
return nil, 0, EINVAL
|
784
|
+
}
|
785
|
+
if len(sa.Dev) > IFNAMSIZ-1 {
|
786
|
+
return nil, 0, EINVAL
|
787
|
+
}
|
788
|
+
|
789
|
+
*(*uint16)(unsafe.Pointer(&sa.raw[0])) = AF_PPPOX
|
790
|
+
// This next field is in host-endian byte order. We can't use the
|
791
|
+
// same unsafe pointer cast as above, because this value is not
|
792
|
+
// 32-bit aligned and some architectures don't allow unaligned
|
793
|
+
// access.
|
794
|
+
//
|
795
|
+
// However, the value of px_proto_oe is 0, so we can use
|
796
|
+
// encoding/binary helpers to write the bytes without worrying
|
797
|
+
// about the ordering.
|
798
|
+
binary.BigEndian.PutUint32(sa.raw[2:6], px_proto_oe)
|
799
|
+
// This field is deliberately big-endian, unlike the previous
|
800
|
+
// one. The kernel expects SID to be in network byte order.
|
801
|
+
binary.BigEndian.PutUint16(sa.raw[6:8], sa.SID)
|
802
|
+
copy(sa.raw[8:14], sa.Remote)
|
803
|
+
for i := 14; i < 14+IFNAMSIZ; i++ {
|
804
|
+
sa.raw[i] = 0
|
805
|
+
}
|
806
|
+
copy(sa.raw[14:], sa.Dev)
|
807
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrPPPoX, nil
|
808
|
+
}
|
809
|
+
|
810
|
+
// SockaddrTIPC implements the Sockaddr interface for AF_TIPC type sockets.
|
811
|
+
// For more information on TIPC, see: http://tipc.sourceforge.net/.
|
812
|
+
type SockaddrTIPC struct {
|
813
|
+
// Scope is the publication scopes when binding service/service range.
|
814
|
+
// Should be set to TIPC_CLUSTER_SCOPE or TIPC_NODE_SCOPE.
|
815
|
+
Scope int
|
816
|
+
|
817
|
+
// Addr is the type of address used to manipulate a socket. Addr must be
|
818
|
+
// one of:
|
819
|
+
// - *TIPCSocketAddr: "id" variant in the C addr union
|
820
|
+
// - *TIPCServiceRange: "nameseq" variant in the C addr union
|
821
|
+
// - *TIPCServiceName: "name" variant in the C addr union
|
822
|
+
//
|
823
|
+
// If nil, EINVAL will be returned when the structure is used.
|
824
|
+
Addr TIPCAddr
|
825
|
+
|
826
|
+
raw RawSockaddrTIPC
|
827
|
+
}
|
828
|
+
|
829
|
+
// TIPCAddr is implemented by types that can be used as an address for
|
830
|
+
// SockaddrTIPC. It is only implemented by *TIPCSocketAddr, *TIPCServiceRange,
|
831
|
+
// and *TIPCServiceName.
|
832
|
+
type TIPCAddr interface {
|
833
|
+
tipcAddrtype() uint8
|
834
|
+
tipcAddr() [12]byte
|
835
|
+
}
|
836
|
+
|
837
|
+
func (sa *TIPCSocketAddr) tipcAddr() [12]byte {
|
838
|
+
var out [12]byte
|
839
|
+
copy(out[:], (*(*[unsafe.Sizeof(TIPCSocketAddr{})]byte)(unsafe.Pointer(sa)))[:])
|
840
|
+
return out
|
841
|
+
}
|
842
|
+
|
843
|
+
func (sa *TIPCSocketAddr) tipcAddrtype() uint8 { return TIPC_SOCKET_ADDR }
|
844
|
+
|
845
|
+
func (sa *TIPCServiceRange) tipcAddr() [12]byte {
|
846
|
+
var out [12]byte
|
847
|
+
copy(out[:], (*(*[unsafe.Sizeof(TIPCServiceRange{})]byte)(unsafe.Pointer(sa)))[:])
|
848
|
+
return out
|
849
|
+
}
|
850
|
+
|
851
|
+
func (sa *TIPCServiceRange) tipcAddrtype() uint8 { return TIPC_SERVICE_RANGE }
|
852
|
+
|
853
|
+
func (sa *TIPCServiceName) tipcAddr() [12]byte {
|
854
|
+
var out [12]byte
|
855
|
+
copy(out[:], (*(*[unsafe.Sizeof(TIPCServiceName{})]byte)(unsafe.Pointer(sa)))[:])
|
856
|
+
return out
|
857
|
+
}
|
858
|
+
|
859
|
+
func (sa *TIPCServiceName) tipcAddrtype() uint8 { return TIPC_SERVICE_ADDR }
|
860
|
+
|
861
|
+
func (sa *SockaddrTIPC) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
862
|
+
if sa.Addr == nil {
|
863
|
+
return nil, 0, EINVAL
|
864
|
+
}
|
865
|
+
sa.raw.Family = AF_TIPC
|
866
|
+
sa.raw.Scope = int8(sa.Scope)
|
867
|
+
sa.raw.Addrtype = sa.Addr.tipcAddrtype()
|
868
|
+
sa.raw.Addr = sa.Addr.tipcAddr()
|
869
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrTIPC, nil
|
870
|
+
}
|
871
|
+
|
872
|
+
// SockaddrL2TPIP implements the Sockaddr interface for IPPROTO_L2TP/AF_INET sockets.
|
873
|
+
type SockaddrL2TPIP struct {
|
874
|
+
Addr [4]byte
|
875
|
+
ConnId uint32
|
876
|
+
raw RawSockaddrL2TPIP
|
877
|
+
}
|
878
|
+
|
879
|
+
func (sa *SockaddrL2TPIP) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
880
|
+
sa.raw.Family = AF_INET
|
881
|
+
sa.raw.Conn_id = sa.ConnId
|
882
|
+
sa.raw.Addr = sa.Addr
|
883
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrL2TPIP, nil
|
884
|
+
}
|
885
|
+
|
886
|
+
// SockaddrL2TPIP6 implements the Sockaddr interface for IPPROTO_L2TP/AF_INET6 sockets.
|
887
|
+
type SockaddrL2TPIP6 struct {
|
888
|
+
Addr [16]byte
|
889
|
+
ZoneId uint32
|
890
|
+
ConnId uint32
|
891
|
+
raw RawSockaddrL2TPIP6
|
892
|
+
}
|
893
|
+
|
894
|
+
func (sa *SockaddrL2TPIP6) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
895
|
+
sa.raw.Family = AF_INET6
|
896
|
+
sa.raw.Conn_id = sa.ConnId
|
897
|
+
sa.raw.Scope_id = sa.ZoneId
|
898
|
+
sa.raw.Addr = sa.Addr
|
899
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrL2TPIP6, nil
|
900
|
+
}
|
901
|
+
|
902
|
+
// SockaddrIUCV implements the Sockaddr interface for AF_IUCV sockets.
|
903
|
+
type SockaddrIUCV struct {
|
904
|
+
UserID string
|
905
|
+
Name string
|
906
|
+
raw RawSockaddrIUCV
|
907
|
+
}
|
908
|
+
|
909
|
+
func (sa *SockaddrIUCV) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
910
|
+
sa.raw.Family = AF_IUCV
|
911
|
+
// These are EBCDIC encoded by the kernel, but we still need to pad them
|
912
|
+
// with blanks. Initializing with blanks allows the caller to feed in either
|
913
|
+
// a padded or an unpadded string.
|
914
|
+
for i := 0; i < 8; i++ {
|
915
|
+
sa.raw.Nodeid[i] = ' '
|
916
|
+
sa.raw.User_id[i] = ' '
|
917
|
+
sa.raw.Name[i] = ' '
|
918
|
+
}
|
919
|
+
if len(sa.UserID) > 8 || len(sa.Name) > 8 {
|
920
|
+
return nil, 0, EINVAL
|
921
|
+
}
|
922
|
+
for i, b := range []byte(sa.UserID[:]) {
|
923
|
+
sa.raw.User_id[i] = int8(b)
|
924
|
+
}
|
925
|
+
for i, b := range []byte(sa.Name[:]) {
|
926
|
+
sa.raw.Name[i] = int8(b)
|
927
|
+
}
|
928
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrIUCV, nil
|
929
|
+
}
|
930
|
+
|
931
|
+
type SockaddrNFC struct {
|
932
|
+
DeviceIdx uint32
|
933
|
+
TargetIdx uint32
|
934
|
+
NFCProtocol uint32
|
935
|
+
raw RawSockaddrNFC
|
936
|
+
}
|
937
|
+
|
938
|
+
func (sa *SockaddrNFC) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
939
|
+
sa.raw.Sa_family = AF_NFC
|
940
|
+
sa.raw.Dev_idx = sa.DeviceIdx
|
941
|
+
sa.raw.Target_idx = sa.TargetIdx
|
942
|
+
sa.raw.Nfc_protocol = sa.NFCProtocol
|
943
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrNFC, nil
|
944
|
+
}
|
945
|
+
|
946
|
+
type SockaddrNFCLLCP struct {
|
947
|
+
DeviceIdx uint32
|
948
|
+
TargetIdx uint32
|
949
|
+
NFCProtocol uint32
|
950
|
+
DestinationSAP uint8
|
951
|
+
SourceSAP uint8
|
952
|
+
ServiceName string
|
953
|
+
raw RawSockaddrNFCLLCP
|
954
|
+
}
|
955
|
+
|
956
|
+
func (sa *SockaddrNFCLLCP) sockaddr() (unsafe.Pointer, _Socklen, error) {
|
957
|
+
sa.raw.Sa_family = AF_NFC
|
958
|
+
sa.raw.Dev_idx = sa.DeviceIdx
|
959
|
+
sa.raw.Target_idx = sa.TargetIdx
|
960
|
+
sa.raw.Nfc_protocol = sa.NFCProtocol
|
961
|
+
sa.raw.Dsap = sa.DestinationSAP
|
962
|
+
sa.raw.Ssap = sa.SourceSAP
|
963
|
+
if len(sa.ServiceName) > len(sa.raw.Service_name) {
|
964
|
+
return nil, 0, EINVAL
|
965
|
+
}
|
966
|
+
copy(sa.raw.Service_name[:], sa.ServiceName)
|
967
|
+
sa.raw.SetServiceNameLen(len(sa.ServiceName))
|
968
|
+
return unsafe.Pointer(&sa.raw), SizeofSockaddrNFCLLCP, nil
|
969
|
+
}
|
970
|
+
|
971
|
+
var socketProtocol = func(fd int) (int, error) {
|
972
|
+
return GetsockoptInt(fd, SOL_SOCKET, SO_PROTOCOL)
|
973
|
+
}
|
974
|
+
|
975
|
+
func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
|
976
|
+
switch rsa.Addr.Family {
|
977
|
+
case AF_NETLINK:
|
978
|
+
pp := (*RawSockaddrNetlink)(unsafe.Pointer(rsa))
|
979
|
+
sa := new(SockaddrNetlink)
|
980
|
+
sa.Family = pp.Family
|
981
|
+
sa.Pad = pp.Pad
|
982
|
+
sa.Pid = pp.Pid
|
983
|
+
sa.Groups = pp.Groups
|
984
|
+
return sa, nil
|
985
|
+
|
986
|
+
case AF_PACKET:
|
987
|
+
pp := (*RawSockaddrLinklayer)(unsafe.Pointer(rsa))
|
988
|
+
sa := new(SockaddrLinklayer)
|
989
|
+
sa.Protocol = pp.Protocol
|
990
|
+
sa.Ifindex = int(pp.Ifindex)
|
991
|
+
sa.Hatype = pp.Hatype
|
992
|
+
sa.Pkttype = pp.Pkttype
|
993
|
+
sa.Halen = pp.Halen
|
994
|
+
sa.Addr = pp.Addr
|
995
|
+
return sa, nil
|
996
|
+
|
997
|
+
case AF_UNIX:
|
998
|
+
pp := (*RawSockaddrUnix)(unsafe.Pointer(rsa))
|
999
|
+
sa := new(SockaddrUnix)
|
1000
|
+
if pp.Path[0] == 0 {
|
1001
|
+
// "Abstract" Unix domain socket.
|
1002
|
+
// Rewrite leading NUL as @ for textual display.
|
1003
|
+
// (This is the standard convention.)
|
1004
|
+
// Not friendly to overwrite in place,
|
1005
|
+
// but the callers below don't care.
|
1006
|
+
pp.Path[0] = '@'
|
1007
|
+
}
|
1008
|
+
|
1009
|
+
// Assume path ends at NUL.
|
1010
|
+
// This is not technically the Linux semantics for
|
1011
|
+
// abstract Unix domain sockets--they are supposed
|
1012
|
+
// to be uninterpreted fixed-size binary blobs--but
|
1013
|
+
// everyone uses this convention.
|
1014
|
+
n := 0
|
1015
|
+
for n < len(pp.Path) && pp.Path[n] != 0 {
|
1016
|
+
n++
|
1017
|
+
}
|
1018
|
+
sa.Name = string(unsafe.Slice((*byte)(unsafe.Pointer(&pp.Path[0])), n))
|
1019
|
+
return sa, nil
|
1020
|
+
|
1021
|
+
case AF_INET:
|
1022
|
+
proto, err := socketProtocol(fd)
|
1023
|
+
if err != nil {
|
1024
|
+
return nil, err
|
1025
|
+
}
|
1026
|
+
|
1027
|
+
switch proto {
|
1028
|
+
case IPPROTO_L2TP:
|
1029
|
+
pp := (*RawSockaddrL2TPIP)(unsafe.Pointer(rsa))
|
1030
|
+
sa := new(SockaddrL2TPIP)
|
1031
|
+
sa.ConnId = pp.Conn_id
|
1032
|
+
sa.Addr = pp.Addr
|
1033
|
+
return sa, nil
|
1034
|
+
default:
|
1035
|
+
pp := (*RawSockaddrInet4)(unsafe.Pointer(rsa))
|
1036
|
+
sa := new(SockaddrInet4)
|
1037
|
+
p := (*[2]byte)(unsafe.Pointer(&pp.Port))
|
1038
|
+
sa.Port = int(p[0])<<8 + int(p[1])
|
1039
|
+
sa.Addr = pp.Addr
|
1040
|
+
return sa, nil
|
1041
|
+
}
|
1042
|
+
|
1043
|
+
case AF_INET6:
|
1044
|
+
proto, err := socketProtocol(fd)
|
1045
|
+
if err != nil {
|
1046
|
+
return nil, err
|
1047
|
+
}
|
1048
|
+
|
1049
|
+
switch proto {
|
1050
|
+
case IPPROTO_L2TP:
|
1051
|
+
pp := (*RawSockaddrL2TPIP6)(unsafe.Pointer(rsa))
|
1052
|
+
sa := new(SockaddrL2TPIP6)
|
1053
|
+
sa.ConnId = pp.Conn_id
|
1054
|
+
sa.ZoneId = pp.Scope_id
|
1055
|
+
sa.Addr = pp.Addr
|
1056
|
+
return sa, nil
|
1057
|
+
default:
|
1058
|
+
pp := (*RawSockaddrInet6)(unsafe.Pointer(rsa))
|
1059
|
+
sa := new(SockaddrInet6)
|
1060
|
+
p := (*[2]byte)(unsafe.Pointer(&pp.Port))
|
1061
|
+
sa.Port = int(p[0])<<8 + int(p[1])
|
1062
|
+
sa.ZoneId = pp.Scope_id
|
1063
|
+
sa.Addr = pp.Addr
|
1064
|
+
return sa, nil
|
1065
|
+
}
|
1066
|
+
|
1067
|
+
case AF_VSOCK:
|
1068
|
+
pp := (*RawSockaddrVM)(unsafe.Pointer(rsa))
|
1069
|
+
sa := &SockaddrVM{
|
1070
|
+
CID: pp.Cid,
|
1071
|
+
Port: pp.Port,
|
1072
|
+
Flags: pp.Flags,
|
1073
|
+
}
|
1074
|
+
return sa, nil
|
1075
|
+
case AF_BLUETOOTH:
|
1076
|
+
proto, err := socketProtocol(fd)
|
1077
|
+
if err != nil {
|
1078
|
+
return nil, err
|
1079
|
+
}
|
1080
|
+
// only BTPROTO_L2CAP and BTPROTO_RFCOMM can accept connections
|
1081
|
+
switch proto {
|
1082
|
+
case BTPROTO_L2CAP:
|
1083
|
+
pp := (*RawSockaddrL2)(unsafe.Pointer(rsa))
|
1084
|
+
sa := &SockaddrL2{
|
1085
|
+
PSM: pp.Psm,
|
1086
|
+
CID: pp.Cid,
|
1087
|
+
Addr: pp.Bdaddr,
|
1088
|
+
AddrType: pp.Bdaddr_type,
|
1089
|
+
}
|
1090
|
+
return sa, nil
|
1091
|
+
case BTPROTO_RFCOMM:
|
1092
|
+
pp := (*RawSockaddrRFCOMM)(unsafe.Pointer(rsa))
|
1093
|
+
sa := &SockaddrRFCOMM{
|
1094
|
+
Channel: pp.Channel,
|
1095
|
+
Addr: pp.Bdaddr,
|
1096
|
+
}
|
1097
|
+
return sa, nil
|
1098
|
+
}
|
1099
|
+
case AF_XDP:
|
1100
|
+
pp := (*RawSockaddrXDP)(unsafe.Pointer(rsa))
|
1101
|
+
sa := &SockaddrXDP{
|
1102
|
+
Flags: pp.Flags,
|
1103
|
+
Ifindex: pp.Ifindex,
|
1104
|
+
QueueID: pp.Queue_id,
|
1105
|
+
SharedUmemFD: pp.Shared_umem_fd,
|
1106
|
+
}
|
1107
|
+
return sa, nil
|
1108
|
+
case AF_PPPOX:
|
1109
|
+
pp := (*RawSockaddrPPPoX)(unsafe.Pointer(rsa))
|
1110
|
+
if binary.BigEndian.Uint32(pp[2:6]) != px_proto_oe {
|
1111
|
+
return nil, EINVAL
|
1112
|
+
}
|
1113
|
+
sa := &SockaddrPPPoE{
|
1114
|
+
SID: binary.BigEndian.Uint16(pp[6:8]),
|
1115
|
+
Remote: pp[8:14],
|
1116
|
+
}
|
1117
|
+
for i := 14; i < 14+IFNAMSIZ; i++ {
|
1118
|
+
if pp[i] == 0 {
|
1119
|
+
sa.Dev = string(pp[14:i])
|
1120
|
+
break
|
1121
|
+
}
|
1122
|
+
}
|
1123
|
+
return sa, nil
|
1124
|
+
case AF_TIPC:
|
1125
|
+
pp := (*RawSockaddrTIPC)(unsafe.Pointer(rsa))
|
1126
|
+
|
1127
|
+
sa := &SockaddrTIPC{
|
1128
|
+
Scope: int(pp.Scope),
|
1129
|
+
}
|
1130
|
+
|
1131
|
+
// Determine which union variant is present in pp.Addr by checking
|
1132
|
+
// pp.Addrtype.
|
1133
|
+
switch pp.Addrtype {
|
1134
|
+
case TIPC_SERVICE_RANGE:
|
1135
|
+
sa.Addr = (*TIPCServiceRange)(unsafe.Pointer(&pp.Addr))
|
1136
|
+
case TIPC_SERVICE_ADDR:
|
1137
|
+
sa.Addr = (*TIPCServiceName)(unsafe.Pointer(&pp.Addr))
|
1138
|
+
case TIPC_SOCKET_ADDR:
|
1139
|
+
sa.Addr = (*TIPCSocketAddr)(unsafe.Pointer(&pp.Addr))
|
1140
|
+
default:
|
1141
|
+
return nil, EINVAL
|
1142
|
+
}
|
1143
|
+
|
1144
|
+
return sa, nil
|
1145
|
+
case AF_IUCV:
|
1146
|
+
pp := (*RawSockaddrIUCV)(unsafe.Pointer(rsa))
|
1147
|
+
|
1148
|
+
var user [8]byte
|
1149
|
+
var name [8]byte
|
1150
|
+
|
1151
|
+
for i := 0; i < 8; i++ {
|
1152
|
+
user[i] = byte(pp.User_id[i])
|
1153
|
+
name[i] = byte(pp.Name[i])
|
1154
|
+
}
|
1155
|
+
|
1156
|
+
sa := &SockaddrIUCV{
|
1157
|
+
UserID: string(user[:]),
|
1158
|
+
Name: string(name[:]),
|
1159
|
+
}
|
1160
|
+
return sa, nil
|
1161
|
+
|
1162
|
+
case AF_CAN:
|
1163
|
+
proto, err := socketProtocol(fd)
|
1164
|
+
if err != nil {
|
1165
|
+
return nil, err
|
1166
|
+
}
|
1167
|
+
|
1168
|
+
pp := (*RawSockaddrCAN)(unsafe.Pointer(rsa))
|
1169
|
+
|
1170
|
+
switch proto {
|
1171
|
+
case CAN_J1939:
|
1172
|
+
sa := &SockaddrCANJ1939{
|
1173
|
+
Ifindex: int(pp.Ifindex),
|
1174
|
+
}
|
1175
|
+
name := (*[8]byte)(unsafe.Pointer(&sa.Name))
|
1176
|
+
for i := 0; i < 8; i++ {
|
1177
|
+
name[i] = pp.Addr[i]
|
1178
|
+
}
|
1179
|
+
pgn := (*[4]byte)(unsafe.Pointer(&sa.PGN))
|
1180
|
+
for i := 0; i < 4; i++ {
|
1181
|
+
pgn[i] = pp.Addr[i+8]
|
1182
|
+
}
|
1183
|
+
addr := (*[1]byte)(unsafe.Pointer(&sa.Addr))
|
1184
|
+
addr[0] = pp.Addr[12]
|
1185
|
+
return sa, nil
|
1186
|
+
default:
|
1187
|
+
sa := &SockaddrCAN{
|
1188
|
+
Ifindex: int(pp.Ifindex),
|
1189
|
+
}
|
1190
|
+
rx := (*[4]byte)(unsafe.Pointer(&sa.RxID))
|
1191
|
+
for i := 0; i < 4; i++ {
|
1192
|
+
rx[i] = pp.Addr[i]
|
1193
|
+
}
|
1194
|
+
tx := (*[4]byte)(unsafe.Pointer(&sa.TxID))
|
1195
|
+
for i := 0; i < 4; i++ {
|
1196
|
+
tx[i] = pp.Addr[i+4]
|
1197
|
+
}
|
1198
|
+
return sa, nil
|
1199
|
+
}
|
1200
|
+
case AF_NFC:
|
1201
|
+
proto, err := socketProtocol(fd)
|
1202
|
+
if err != nil {
|
1203
|
+
return nil, err
|
1204
|
+
}
|
1205
|
+
switch proto {
|
1206
|
+
case NFC_SOCKPROTO_RAW:
|
1207
|
+
pp := (*RawSockaddrNFC)(unsafe.Pointer(rsa))
|
1208
|
+
sa := &SockaddrNFC{
|
1209
|
+
DeviceIdx: pp.Dev_idx,
|
1210
|
+
TargetIdx: pp.Target_idx,
|
1211
|
+
NFCProtocol: pp.Nfc_protocol,
|
1212
|
+
}
|
1213
|
+
return sa, nil
|
1214
|
+
case NFC_SOCKPROTO_LLCP:
|
1215
|
+
pp := (*RawSockaddrNFCLLCP)(unsafe.Pointer(rsa))
|
1216
|
+
if uint64(pp.Service_name_len) > uint64(len(pp.Service_name)) {
|
1217
|
+
return nil, EINVAL
|
1218
|
+
}
|
1219
|
+
sa := &SockaddrNFCLLCP{
|
1220
|
+
DeviceIdx: pp.Dev_idx,
|
1221
|
+
TargetIdx: pp.Target_idx,
|
1222
|
+
NFCProtocol: pp.Nfc_protocol,
|
1223
|
+
DestinationSAP: pp.Dsap,
|
1224
|
+
SourceSAP: pp.Ssap,
|
1225
|
+
ServiceName: string(pp.Service_name[:pp.Service_name_len]),
|
1226
|
+
}
|
1227
|
+
return sa, nil
|
1228
|
+
default:
|
1229
|
+
return nil, EINVAL
|
1230
|
+
}
|
1231
|
+
}
|
1232
|
+
return nil, EAFNOSUPPORT
|
1233
|
+
}
|
1234
|
+
|
1235
|
+
func Accept(fd int) (nfd int, sa Sockaddr, err error) {
|
1236
|
+
var rsa RawSockaddrAny
|
1237
|
+
var len _Socklen = SizeofSockaddrAny
|
1238
|
+
nfd, err = accept4(fd, &rsa, &len, 0)
|
1239
|
+
if err != nil {
|
1240
|
+
return
|
1241
|
+
}
|
1242
|
+
sa, err = anyToSockaddr(fd, &rsa)
|
1243
|
+
if err != nil {
|
1244
|
+
Close(nfd)
|
1245
|
+
nfd = 0
|
1246
|
+
}
|
1247
|
+
return
|
1248
|
+
}
|
1249
|
+
|
1250
|
+
func Accept4(fd int, flags int) (nfd int, sa Sockaddr, err error) {
|
1251
|
+
var rsa RawSockaddrAny
|
1252
|
+
var len _Socklen = SizeofSockaddrAny
|
1253
|
+
nfd, err = accept4(fd, &rsa, &len, flags)
|
1254
|
+
if err != nil {
|
1255
|
+
return
|
1256
|
+
}
|
1257
|
+
if len > SizeofSockaddrAny {
|
1258
|
+
panic("RawSockaddrAny too small")
|
1259
|
+
}
|
1260
|
+
sa, err = anyToSockaddr(fd, &rsa)
|
1261
|
+
if err != nil {
|
1262
|
+
Close(nfd)
|
1263
|
+
nfd = 0
|
1264
|
+
}
|
1265
|
+
return
|
1266
|
+
}
|
1267
|
+
|
1268
|
+
func Getsockname(fd int) (sa Sockaddr, err error) {
|
1269
|
+
var rsa RawSockaddrAny
|
1270
|
+
var len _Socklen = SizeofSockaddrAny
|
1271
|
+
if err = getsockname(fd, &rsa, &len); err != nil {
|
1272
|
+
return
|
1273
|
+
}
|
1274
|
+
return anyToSockaddr(fd, &rsa)
|
1275
|
+
}
|
1276
|
+
|
1277
|
+
func GetsockoptIPMreqn(fd, level, opt int) (*IPMreqn, error) {
|
1278
|
+
var value IPMreqn
|
1279
|
+
vallen := _Socklen(SizeofIPMreqn)
|
1280
|
+
err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
|
1281
|
+
return &value, err
|
1282
|
+
}
|
1283
|
+
|
1284
|
+
func GetsockoptUcred(fd, level, opt int) (*Ucred, error) {
|
1285
|
+
var value Ucred
|
1286
|
+
vallen := _Socklen(SizeofUcred)
|
1287
|
+
err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
|
1288
|
+
return &value, err
|
1289
|
+
}
|
1290
|
+
|
1291
|
+
func GetsockoptTCPInfo(fd, level, opt int) (*TCPInfo, error) {
|
1292
|
+
var value TCPInfo
|
1293
|
+
vallen := _Socklen(SizeofTCPInfo)
|
1294
|
+
err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
|
1295
|
+
return &value, err
|
1296
|
+
}
|
1297
|
+
|
1298
|
+
// GetsockoptString returns the string value of the socket option opt for the
|
1299
|
+
// socket associated with fd at the given socket level.
|
1300
|
+
func GetsockoptString(fd, level, opt int) (string, error) {
|
1301
|
+
buf := make([]byte, 256)
|
1302
|
+
vallen := _Socklen(len(buf))
|
1303
|
+
err := getsockopt(fd, level, opt, unsafe.Pointer(&buf[0]), &vallen)
|
1304
|
+
if err != nil {
|
1305
|
+
if err == ERANGE {
|
1306
|
+
buf = make([]byte, vallen)
|
1307
|
+
err = getsockopt(fd, level, opt, unsafe.Pointer(&buf[0]), &vallen)
|
1308
|
+
}
|
1309
|
+
if err != nil {
|
1310
|
+
return "", err
|
1311
|
+
}
|
1312
|
+
}
|
1313
|
+
return string(buf[:vallen-1]), nil
|
1314
|
+
}
|
1315
|
+
|
1316
|
+
func GetsockoptTpacketStats(fd, level, opt int) (*TpacketStats, error) {
|
1317
|
+
var value TpacketStats
|
1318
|
+
vallen := _Socklen(SizeofTpacketStats)
|
1319
|
+
err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
|
1320
|
+
return &value, err
|
1321
|
+
}
|
1322
|
+
|
1323
|
+
func GetsockoptTpacketStatsV3(fd, level, opt int) (*TpacketStatsV3, error) {
|
1324
|
+
var value TpacketStatsV3
|
1325
|
+
vallen := _Socklen(SizeofTpacketStatsV3)
|
1326
|
+
err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen)
|
1327
|
+
return &value, err
|
1328
|
+
}
|
1329
|
+
|
1330
|
+
func SetsockoptIPMreqn(fd, level, opt int, mreq *IPMreqn) (err error) {
|
1331
|
+
return setsockopt(fd, level, opt, unsafe.Pointer(mreq), unsafe.Sizeof(*mreq))
|
1332
|
+
}
|
1333
|
+
|
1334
|
+
func SetsockoptPacketMreq(fd, level, opt int, mreq *PacketMreq) error {
|
1335
|
+
return setsockopt(fd, level, opt, unsafe.Pointer(mreq), unsafe.Sizeof(*mreq))
|
1336
|
+
}
|
1337
|
+
|
1338
|
+
// SetsockoptSockFprog attaches a classic BPF or an extended BPF program to a
|
1339
|
+
// socket to filter incoming packets. See 'man 7 socket' for usage information.
|
1340
|
+
func SetsockoptSockFprog(fd, level, opt int, fprog *SockFprog) error {
|
1341
|
+
return setsockopt(fd, level, opt, unsafe.Pointer(fprog), unsafe.Sizeof(*fprog))
|
1342
|
+
}
|
1343
|
+
|
1344
|
+
func SetsockoptCanRawFilter(fd, level, opt int, filter []CanFilter) error {
|
1345
|
+
var p unsafe.Pointer
|
1346
|
+
if len(filter) > 0 {
|
1347
|
+
p = unsafe.Pointer(&filter[0])
|
1348
|
+
}
|
1349
|
+
return setsockopt(fd, level, opt, p, uintptr(len(filter)*SizeofCanFilter))
|
1350
|
+
}
|
1351
|
+
|
1352
|
+
func SetsockoptTpacketReq(fd, level, opt int, tp *TpacketReq) error {
|
1353
|
+
return setsockopt(fd, level, opt, unsafe.Pointer(tp), unsafe.Sizeof(*tp))
|
1354
|
+
}
|
1355
|
+
|
1356
|
+
func SetsockoptTpacketReq3(fd, level, opt int, tp *TpacketReq3) error {
|
1357
|
+
return setsockopt(fd, level, opt, unsafe.Pointer(tp), unsafe.Sizeof(*tp))
|
1358
|
+
}
|
1359
|
+
|
1360
|
+
func SetsockoptTCPRepairOpt(fd, level, opt int, o []TCPRepairOpt) (err error) {
|
1361
|
+
if len(o) == 0 {
|
1362
|
+
return EINVAL
|
1363
|
+
}
|
1364
|
+
return setsockopt(fd, level, opt, unsafe.Pointer(&o[0]), uintptr(SizeofTCPRepairOpt*len(o)))
|
1365
|
+
}
|
1366
|
+
|
1367
|
+
func SetsockoptTCPMD5Sig(fd, level, opt int, s *TCPMD5Sig) error {
|
1368
|
+
return setsockopt(fd, level, opt, unsafe.Pointer(s), unsafe.Sizeof(*s))
|
1369
|
+
}
|
1370
|
+
|
1371
|
+
// Keyctl Commands (http://man7.org/linux/man-pages/man2/keyctl.2.html)
|
1372
|
+
|
1373
|
+
// KeyctlInt calls keyctl commands in which each argument is an int.
|
1374
|
+
// These commands are KEYCTL_REVOKE, KEYCTL_CHOWN, KEYCTL_CLEAR, KEYCTL_LINK,
|
1375
|
+
// KEYCTL_UNLINK, KEYCTL_NEGATE, KEYCTL_SET_REQKEY_KEYRING, KEYCTL_SET_TIMEOUT,
|
1376
|
+
// KEYCTL_ASSUME_AUTHORITY, KEYCTL_SESSION_TO_PARENT, KEYCTL_REJECT,
|
1377
|
+
// KEYCTL_INVALIDATE, and KEYCTL_GET_PERSISTENT.
|
1378
|
+
//sys KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) = SYS_KEYCTL
|
1379
|
+
|
1380
|
+
// KeyctlBuffer calls keyctl commands in which the third and fourth
|
1381
|
+
// arguments are a buffer and its length, respectively.
|
1382
|
+
// These commands are KEYCTL_UPDATE, KEYCTL_READ, and KEYCTL_INSTANTIATE.
|
1383
|
+
//sys KeyctlBuffer(cmd int, arg2 int, buf []byte, arg5 int) (ret int, err error) = SYS_KEYCTL
|
1384
|
+
|
1385
|
+
// KeyctlString calls keyctl commands which return a string.
|
1386
|
+
// These commands are KEYCTL_DESCRIBE and KEYCTL_GET_SECURITY.
|
1387
|
+
func KeyctlString(cmd int, id int) (string, error) {
|
1388
|
+
// We must loop as the string data may change in between the syscalls.
|
1389
|
+
// We could allocate a large buffer here to reduce the chance that the
|
1390
|
+
// syscall needs to be called twice; however, this is unnecessary as
|
1391
|
+
// the performance loss is negligible.
|
1392
|
+
var buffer []byte
|
1393
|
+
for {
|
1394
|
+
// Try to fill the buffer with data
|
1395
|
+
length, err := KeyctlBuffer(cmd, id, buffer, 0)
|
1396
|
+
if err != nil {
|
1397
|
+
return "", err
|
1398
|
+
}
|
1399
|
+
|
1400
|
+
// Check if the data was written
|
1401
|
+
if length <= len(buffer) {
|
1402
|
+
// Exclude the null terminator
|
1403
|
+
return string(buffer[:length-1]), nil
|
1404
|
+
}
|
1405
|
+
|
1406
|
+
// Make a bigger buffer if needed
|
1407
|
+
buffer = make([]byte, length)
|
1408
|
+
}
|
1409
|
+
}
|
1410
|
+
|
1411
|
+
// Keyctl commands with special signatures.
|
1412
|
+
|
1413
|
+
// KeyctlGetKeyringID implements the KEYCTL_GET_KEYRING_ID command.
|
1414
|
+
// See the full documentation at:
|
1415
|
+
// http://man7.org/linux/man-pages/man3/keyctl_get_keyring_ID.3.html
|
1416
|
+
func KeyctlGetKeyringID(id int, create bool) (ringid int, err error) {
|
1417
|
+
createInt := 0
|
1418
|
+
if create {
|
1419
|
+
createInt = 1
|
1420
|
+
}
|
1421
|
+
return KeyctlInt(KEYCTL_GET_KEYRING_ID, id, createInt, 0, 0)
|
1422
|
+
}
|
1423
|
+
|
1424
|
+
// KeyctlSetperm implements the KEYCTL_SETPERM command. The perm value is the
|
1425
|
+
// key handle permission mask as described in the "keyctl setperm" section of
|
1426
|
+
// http://man7.org/linux/man-pages/man1/keyctl.1.html.
|
1427
|
+
// See the full documentation at:
|
1428
|
+
// http://man7.org/linux/man-pages/man3/keyctl_setperm.3.html
|
1429
|
+
func KeyctlSetperm(id int, perm uint32) error {
|
1430
|
+
_, err := KeyctlInt(KEYCTL_SETPERM, id, int(perm), 0, 0)
|
1431
|
+
return err
|
1432
|
+
}
|
1433
|
+
|
1434
|
+
//sys keyctlJoin(cmd int, arg2 string) (ret int, err error) = SYS_KEYCTL
|
1435
|
+
|
1436
|
+
// KeyctlJoinSessionKeyring implements the KEYCTL_JOIN_SESSION_KEYRING command.
|
1437
|
+
// See the full documentation at:
|
1438
|
+
// http://man7.org/linux/man-pages/man3/keyctl_join_session_keyring.3.html
|
1439
|
+
func KeyctlJoinSessionKeyring(name string) (ringid int, err error) {
|
1440
|
+
return keyctlJoin(KEYCTL_JOIN_SESSION_KEYRING, name)
|
1441
|
+
}
|
1442
|
+
|
1443
|
+
//sys keyctlSearch(cmd int, arg2 int, arg3 string, arg4 string, arg5 int) (ret int, err error) = SYS_KEYCTL
|
1444
|
+
|
1445
|
+
// KeyctlSearch implements the KEYCTL_SEARCH command.
|
1446
|
+
// See the full documentation at:
|
1447
|
+
// http://man7.org/linux/man-pages/man3/keyctl_search.3.html
|
1448
|
+
func KeyctlSearch(ringid int, keyType, description string, destRingid int) (id int, err error) {
|
1449
|
+
return keyctlSearch(KEYCTL_SEARCH, ringid, keyType, description, destRingid)
|
1450
|
+
}
|
1451
|
+
|
1452
|
+
//sys keyctlIOV(cmd int, arg2 int, payload []Iovec, arg5 int) (err error) = SYS_KEYCTL
|
1453
|
+
|
1454
|
+
// KeyctlInstantiateIOV implements the KEYCTL_INSTANTIATE_IOV command. This
|
1455
|
+
// command is similar to KEYCTL_INSTANTIATE, except that the payload is a slice
|
1456
|
+
// of Iovec (each of which represents a buffer) instead of a single buffer.
|
1457
|
+
// See the full documentation at:
|
1458
|
+
// http://man7.org/linux/man-pages/man3/keyctl_instantiate_iov.3.html
|
1459
|
+
func KeyctlInstantiateIOV(id int, payload []Iovec, ringid int) error {
|
1460
|
+
return keyctlIOV(KEYCTL_INSTANTIATE_IOV, id, payload, ringid)
|
1461
|
+
}
|
1462
|
+
|
1463
|
+
//sys keyctlDH(cmd int, arg2 *KeyctlDHParams, buf []byte) (ret int, err error) = SYS_KEYCTL
|
1464
|
+
|
1465
|
+
// KeyctlDHCompute implements the KEYCTL_DH_COMPUTE command. This command
|
1466
|
+
// computes a Diffie-Hellman shared secret based on the provide params. The
|
1467
|
+
// secret is written to the provided buffer and the returned size is the number
|
1468
|
+
// of bytes written (returning an error if there is insufficient space in the
|
1469
|
+
// buffer). If a nil buffer is passed in, this function returns the minimum
|
1470
|
+
// buffer length needed to store the appropriate data. Note that this differs
|
1471
|
+
// from KEYCTL_READ's behavior which always returns the requested payload size.
|
1472
|
+
// See the full documentation at:
|
1473
|
+
// http://man7.org/linux/man-pages/man3/keyctl_dh_compute.3.html
|
1474
|
+
func KeyctlDHCompute(params *KeyctlDHParams, buffer []byte) (size int, err error) {
|
1475
|
+
return keyctlDH(KEYCTL_DH_COMPUTE, params, buffer)
|
1476
|
+
}
|
1477
|
+
|
1478
|
+
// KeyctlRestrictKeyring implements the KEYCTL_RESTRICT_KEYRING command. This
|
1479
|
+
// command limits the set of keys that can be linked to the keyring, regardless
|
1480
|
+
// of keyring permissions. The command requires the "setattr" permission.
|
1481
|
+
//
|
1482
|
+
// When called with an empty keyType the command locks the keyring, preventing
|
1483
|
+
// any further keys from being linked to the keyring.
|
1484
|
+
//
|
1485
|
+
// The "asymmetric" keyType defines restrictions requiring key payloads to be
|
1486
|
+
// DER encoded X.509 certificates signed by keys in another keyring. Restrictions
|
1487
|
+
// for "asymmetric" include "builtin_trusted", "builtin_and_secondary_trusted",
|
1488
|
+
// "key_or_keyring:<key>", and "key_or_keyring:<key>:chain".
|
1489
|
+
//
|
1490
|
+
// As of Linux 4.12, only the "asymmetric" keyType defines type-specific
|
1491
|
+
// restrictions.
|
1492
|
+
//
|
1493
|
+
// See the full documentation at:
|
1494
|
+
// http://man7.org/linux/man-pages/man3/keyctl_restrict_keyring.3.html
|
1495
|
+
// http://man7.org/linux/man-pages/man2/keyctl.2.html
|
1496
|
+
func KeyctlRestrictKeyring(ringid int, keyType string, restriction string) error {
|
1497
|
+
if keyType == "" {
|
1498
|
+
return keyctlRestrictKeyring(KEYCTL_RESTRICT_KEYRING, ringid)
|
1499
|
+
}
|
1500
|
+
return keyctlRestrictKeyringByType(KEYCTL_RESTRICT_KEYRING, ringid, keyType, restriction)
|
1501
|
+
}
|
1502
|
+
|
1503
|
+
//sys keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) = SYS_KEYCTL
|
1504
|
+
//sys keyctlRestrictKeyring(cmd int, arg2 int) (err error) = SYS_KEYCTL
|
1505
|
+
|
1506
|
+
func recvmsgRaw(fd int, iov []Iovec, oob []byte, flags int, rsa *RawSockaddrAny) (n, oobn int, recvflags int, err error) {
|
1507
|
+
var msg Msghdr
|
1508
|
+
msg.Name = (*byte)(unsafe.Pointer(rsa))
|
1509
|
+
msg.Namelen = uint32(SizeofSockaddrAny)
|
1510
|
+
var dummy byte
|
1511
|
+
if len(oob) > 0 {
|
1512
|
+
if emptyIovecs(iov) {
|
1513
|
+
var sockType int
|
1514
|
+
sockType, err = GetsockoptInt(fd, SOL_SOCKET, SO_TYPE)
|
1515
|
+
if err != nil {
|
1516
|
+
return
|
1517
|
+
}
|
1518
|
+
// receive at least one normal byte
|
1519
|
+
if sockType != SOCK_DGRAM {
|
1520
|
+
var iova [1]Iovec
|
1521
|
+
iova[0].Base = &dummy
|
1522
|
+
iova[0].SetLen(1)
|
1523
|
+
iov = iova[:]
|
1524
|
+
}
|
1525
|
+
}
|
1526
|
+
msg.Control = &oob[0]
|
1527
|
+
msg.SetControllen(len(oob))
|
1528
|
+
}
|
1529
|
+
if len(iov) > 0 {
|
1530
|
+
msg.Iov = &iov[0]
|
1531
|
+
msg.SetIovlen(len(iov))
|
1532
|
+
}
|
1533
|
+
if n, err = recvmsg(fd, &msg, flags); err != nil {
|
1534
|
+
return
|
1535
|
+
}
|
1536
|
+
oobn = int(msg.Controllen)
|
1537
|
+
recvflags = int(msg.Flags)
|
1538
|
+
return
|
1539
|
+
}
|
1540
|
+
|
1541
|
+
func sendmsgN(fd int, iov []Iovec, oob []byte, ptr unsafe.Pointer, salen _Socklen, flags int) (n int, err error) {
|
1542
|
+
var msg Msghdr
|
1543
|
+
msg.Name = (*byte)(ptr)
|
1544
|
+
msg.Namelen = uint32(salen)
|
1545
|
+
var dummy byte
|
1546
|
+
var empty bool
|
1547
|
+
if len(oob) > 0 {
|
1548
|
+
empty = emptyIovecs(iov)
|
1549
|
+
if empty {
|
1550
|
+
var sockType int
|
1551
|
+
sockType, err = GetsockoptInt(fd, SOL_SOCKET, SO_TYPE)
|
1552
|
+
if err != nil {
|
1553
|
+
return 0, err
|
1554
|
+
}
|
1555
|
+
// send at least one normal byte
|
1556
|
+
if sockType != SOCK_DGRAM {
|
1557
|
+
var iova [1]Iovec
|
1558
|
+
iova[0].Base = &dummy
|
1559
|
+
iova[0].SetLen(1)
|
1560
|
+
iov = iova[:]
|
1561
|
+
}
|
1562
|
+
}
|
1563
|
+
msg.Control = &oob[0]
|
1564
|
+
msg.SetControllen(len(oob))
|
1565
|
+
}
|
1566
|
+
if len(iov) > 0 {
|
1567
|
+
msg.Iov = &iov[0]
|
1568
|
+
msg.SetIovlen(len(iov))
|
1569
|
+
}
|
1570
|
+
if n, err = sendmsg(fd, &msg, flags); err != nil {
|
1571
|
+
return 0, err
|
1572
|
+
}
|
1573
|
+
if len(oob) > 0 && empty {
|
1574
|
+
n = 0
|
1575
|
+
}
|
1576
|
+
return n, nil
|
1577
|
+
}
|
1578
|
+
|
1579
|
+
// BindToDevice binds the socket associated with fd to device.
|
1580
|
+
func BindToDevice(fd int, device string) (err error) {
|
1581
|
+
return SetsockoptString(fd, SOL_SOCKET, SO_BINDTODEVICE, device)
|
1582
|
+
}
|
1583
|
+
|
1584
|
+
//sys ptrace(request int, pid int, addr uintptr, data uintptr) (err error)
|
1585
|
+
//sys ptracePtr(request int, pid int, addr uintptr, data unsafe.Pointer) (err error) = SYS_PTRACE
|
1586
|
+
|
1587
|
+
func ptracePeek(req int, pid int, addr uintptr, out []byte) (count int, err error) {
|
1588
|
+
// The peek requests are machine-size oriented, so we wrap it
|
1589
|
+
// to retrieve arbitrary-length data.
|
1590
|
+
|
1591
|
+
// The ptrace syscall differs from glibc's ptrace.
|
1592
|
+
// Peeks returns the word in *data, not as the return value.
|
1593
|
+
|
1594
|
+
var buf [SizeofPtr]byte
|
1595
|
+
|
1596
|
+
// Leading edge. PEEKTEXT/PEEKDATA don't require aligned
|
1597
|
+
// access (PEEKUSER warns that it might), but if we don't
|
1598
|
+
// align our reads, we might straddle an unmapped page
|
1599
|
+
// boundary and not get the bytes leading up to the page
|
1600
|
+
// boundary.
|
1601
|
+
n := 0
|
1602
|
+
if addr%SizeofPtr != 0 {
|
1603
|
+
err = ptracePtr(req, pid, addr-addr%SizeofPtr, unsafe.Pointer(&buf[0]))
|
1604
|
+
if err != nil {
|
1605
|
+
return 0, err
|
1606
|
+
}
|
1607
|
+
n += copy(out, buf[addr%SizeofPtr:])
|
1608
|
+
out = out[n:]
|
1609
|
+
}
|
1610
|
+
|
1611
|
+
// Remainder.
|
1612
|
+
for len(out) > 0 {
|
1613
|
+
// We use an internal buffer to guarantee alignment.
|
1614
|
+
// It's not documented if this is necessary, but we're paranoid.
|
1615
|
+
err = ptracePtr(req, pid, addr+uintptr(n), unsafe.Pointer(&buf[0]))
|
1616
|
+
if err != nil {
|
1617
|
+
return n, err
|
1618
|
+
}
|
1619
|
+
copied := copy(out, buf[0:])
|
1620
|
+
n += copied
|
1621
|
+
out = out[copied:]
|
1622
|
+
}
|
1623
|
+
|
1624
|
+
return n, nil
|
1625
|
+
}
|
1626
|
+
|
1627
|
+
func PtracePeekText(pid int, addr uintptr, out []byte) (count int, err error) {
|
1628
|
+
return ptracePeek(PTRACE_PEEKTEXT, pid, addr, out)
|
1629
|
+
}
|
1630
|
+
|
1631
|
+
func PtracePeekData(pid int, addr uintptr, out []byte) (count int, err error) {
|
1632
|
+
return ptracePeek(PTRACE_PEEKDATA, pid, addr, out)
|
1633
|
+
}
|
1634
|
+
|
1635
|
+
func PtracePeekUser(pid int, addr uintptr, out []byte) (count int, err error) {
|
1636
|
+
return ptracePeek(PTRACE_PEEKUSR, pid, addr, out)
|
1637
|
+
}
|
1638
|
+
|
1639
|
+
func ptracePoke(pokeReq int, peekReq int, pid int, addr uintptr, data []byte) (count int, err error) {
|
1640
|
+
// As for ptracePeek, we need to align our accesses to deal
|
1641
|
+
// with the possibility of straddling an invalid page.
|
1642
|
+
|
1643
|
+
// Leading edge.
|
1644
|
+
n := 0
|
1645
|
+
if addr%SizeofPtr != 0 {
|
1646
|
+
var buf [SizeofPtr]byte
|
1647
|
+
err = ptracePtr(peekReq, pid, addr-addr%SizeofPtr, unsafe.Pointer(&buf[0]))
|
1648
|
+
if err != nil {
|
1649
|
+
return 0, err
|
1650
|
+
}
|
1651
|
+
n += copy(buf[addr%SizeofPtr:], data)
|
1652
|
+
word := *((*uintptr)(unsafe.Pointer(&buf[0])))
|
1653
|
+
err = ptrace(pokeReq, pid, addr-addr%SizeofPtr, word)
|
1654
|
+
if err != nil {
|
1655
|
+
return 0, err
|
1656
|
+
}
|
1657
|
+
data = data[n:]
|
1658
|
+
}
|
1659
|
+
|
1660
|
+
// Interior.
|
1661
|
+
for len(data) > SizeofPtr {
|
1662
|
+
word := *((*uintptr)(unsafe.Pointer(&data[0])))
|
1663
|
+
err = ptrace(pokeReq, pid, addr+uintptr(n), word)
|
1664
|
+
if err != nil {
|
1665
|
+
return n, err
|
1666
|
+
}
|
1667
|
+
n += SizeofPtr
|
1668
|
+
data = data[SizeofPtr:]
|
1669
|
+
}
|
1670
|
+
|
1671
|
+
// Trailing edge.
|
1672
|
+
if len(data) > 0 {
|
1673
|
+
var buf [SizeofPtr]byte
|
1674
|
+
err = ptracePtr(peekReq, pid, addr+uintptr(n), unsafe.Pointer(&buf[0]))
|
1675
|
+
if err != nil {
|
1676
|
+
return n, err
|
1677
|
+
}
|
1678
|
+
copy(buf[0:], data)
|
1679
|
+
word := *((*uintptr)(unsafe.Pointer(&buf[0])))
|
1680
|
+
err = ptrace(pokeReq, pid, addr+uintptr(n), word)
|
1681
|
+
if err != nil {
|
1682
|
+
return n, err
|
1683
|
+
}
|
1684
|
+
n += len(data)
|
1685
|
+
}
|
1686
|
+
|
1687
|
+
return n, nil
|
1688
|
+
}
|
1689
|
+
|
1690
|
+
func PtracePokeText(pid int, addr uintptr, data []byte) (count int, err error) {
|
1691
|
+
return ptracePoke(PTRACE_POKETEXT, PTRACE_PEEKTEXT, pid, addr, data)
|
1692
|
+
}
|
1693
|
+
|
1694
|
+
func PtracePokeData(pid int, addr uintptr, data []byte) (count int, err error) {
|
1695
|
+
return ptracePoke(PTRACE_POKEDATA, PTRACE_PEEKDATA, pid, addr, data)
|
1696
|
+
}
|
1697
|
+
|
1698
|
+
func PtracePokeUser(pid int, addr uintptr, data []byte) (count int, err error) {
|
1699
|
+
return ptracePoke(PTRACE_POKEUSR, PTRACE_PEEKUSR, pid, addr, data)
|
1700
|
+
}
|
1701
|
+
|
1702
|
+
func PtraceGetRegs(pid int, regsout *PtraceRegs) (err error) {
|
1703
|
+
return ptracePtr(PTRACE_GETREGS, pid, 0, unsafe.Pointer(regsout))
|
1704
|
+
}
|
1705
|
+
|
1706
|
+
func PtraceSetRegs(pid int, regs *PtraceRegs) (err error) {
|
1707
|
+
return ptracePtr(PTRACE_SETREGS, pid, 0, unsafe.Pointer(regs))
|
1708
|
+
}
|
1709
|
+
|
1710
|
+
func PtraceSetOptions(pid int, options int) (err error) {
|
1711
|
+
return ptrace(PTRACE_SETOPTIONS, pid, 0, uintptr(options))
|
1712
|
+
}
|
1713
|
+
|
1714
|
+
func PtraceGetEventMsg(pid int) (msg uint, err error) {
|
1715
|
+
var data _C_long
|
1716
|
+
err = ptracePtr(PTRACE_GETEVENTMSG, pid, 0, unsafe.Pointer(&data))
|
1717
|
+
msg = uint(data)
|
1718
|
+
return
|
1719
|
+
}
|
1720
|
+
|
1721
|
+
func PtraceCont(pid int, signal int) (err error) {
|
1722
|
+
return ptrace(PTRACE_CONT, pid, 0, uintptr(signal))
|
1723
|
+
}
|
1724
|
+
|
1725
|
+
func PtraceSyscall(pid int, signal int) (err error) {
|
1726
|
+
return ptrace(PTRACE_SYSCALL, pid, 0, uintptr(signal))
|
1727
|
+
}
|
1728
|
+
|
1729
|
+
func PtraceSingleStep(pid int) (err error) { return ptrace(PTRACE_SINGLESTEP, pid, 0, 0) }
|
1730
|
+
|
1731
|
+
func PtraceInterrupt(pid int) (err error) { return ptrace(PTRACE_INTERRUPT, pid, 0, 0) }
|
1732
|
+
|
1733
|
+
func PtraceAttach(pid int) (err error) { return ptrace(PTRACE_ATTACH, pid, 0, 0) }
|
1734
|
+
|
1735
|
+
func PtraceSeize(pid int) (err error) { return ptrace(PTRACE_SEIZE, pid, 0, 0) }
|
1736
|
+
|
1737
|
+
func PtraceDetach(pid int) (err error) { return ptrace(PTRACE_DETACH, pid, 0, 0) }
|
1738
|
+
|
1739
|
+
//sys reboot(magic1 uint, magic2 uint, cmd int, arg string) (err error)
|
1740
|
+
|
1741
|
+
func Reboot(cmd int) (err error) {
|
1742
|
+
return reboot(LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, cmd, "")
|
1743
|
+
}
|
1744
|
+
|
1745
|
+
func direntIno(buf []byte) (uint64, bool) {
|
1746
|
+
return readInt(buf, unsafe.Offsetof(Dirent{}.Ino), unsafe.Sizeof(Dirent{}.Ino))
|
1747
|
+
}
|
1748
|
+
|
1749
|
+
func direntReclen(buf []byte) (uint64, bool) {
|
1750
|
+
return readInt(buf, unsafe.Offsetof(Dirent{}.Reclen), unsafe.Sizeof(Dirent{}.Reclen))
|
1751
|
+
}
|
1752
|
+
|
1753
|
+
func direntNamlen(buf []byte) (uint64, bool) {
|
1754
|
+
reclen, ok := direntReclen(buf)
|
1755
|
+
if !ok {
|
1756
|
+
return 0, false
|
1757
|
+
}
|
1758
|
+
return reclen - uint64(unsafe.Offsetof(Dirent{}.Name)), true
|
1759
|
+
}
|
1760
|
+
|
1761
|
+
//sys mount(source string, target string, fstype string, flags uintptr, data *byte) (err error)
|
1762
|
+
|
1763
|
+
func Mount(source string, target string, fstype string, flags uintptr, data string) (err error) {
|
1764
|
+
// Certain file systems get rather angry and EINVAL if you give
|
1765
|
+
// them an empty string of data, rather than NULL.
|
1766
|
+
if data == "" {
|
1767
|
+
return mount(source, target, fstype, flags, nil)
|
1768
|
+
}
|
1769
|
+
datap, err := BytePtrFromString(data)
|
1770
|
+
if err != nil {
|
1771
|
+
return err
|
1772
|
+
}
|
1773
|
+
return mount(source, target, fstype, flags, datap)
|
1774
|
+
}
|
1775
|
+
|
1776
|
+
//sys mountSetattr(dirfd int, pathname string, flags uint, attr *MountAttr, size uintptr) (err error) = SYS_MOUNT_SETATTR
|
1777
|
+
|
1778
|
+
// MountSetattr is a wrapper for mount_setattr(2).
|
1779
|
+
// https://man7.org/linux/man-pages/man2/mount_setattr.2.html
|
1780
|
+
//
|
1781
|
+
// Requires kernel >= 5.12.
|
1782
|
+
func MountSetattr(dirfd int, pathname string, flags uint, attr *MountAttr) error {
|
1783
|
+
return mountSetattr(dirfd, pathname, flags, attr, unsafe.Sizeof(*attr))
|
1784
|
+
}
|
1785
|
+
|
1786
|
+
func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
|
1787
|
+
if raceenabled {
|
1788
|
+
raceReleaseMerge(unsafe.Pointer(&ioSync))
|
1789
|
+
}
|
1790
|
+
return sendfile(outfd, infd, offset, count)
|
1791
|
+
}
|
1792
|
+
|
1793
|
+
// Sendto
|
1794
|
+
// Recvfrom
|
1795
|
+
// Socketpair
|
1796
|
+
|
1797
|
+
/*
|
1798
|
+
* Direct access
|
1799
|
+
*/
|
1800
|
+
//sys Acct(path string) (err error)
|
1801
|
+
//sys AddKey(keyType string, description string, payload []byte, ringid int) (id int, err error)
|
1802
|
+
//sys Adjtimex(buf *Timex) (state int, err error)
|
1803
|
+
//sysnb Capget(hdr *CapUserHeader, data *CapUserData) (err error)
|
1804
|
+
//sysnb Capset(hdr *CapUserHeader, data *CapUserData) (err error)
|
1805
|
+
//sys Chdir(path string) (err error)
|
1806
|
+
//sys Chroot(path string) (err error)
|
1807
|
+
//sys ClockAdjtime(clockid int32, buf *Timex) (state int, err error)
|
1808
|
+
//sys ClockGetres(clockid int32, res *Timespec) (err error)
|
1809
|
+
//sys ClockGettime(clockid int32, time *Timespec) (err error)
|
1810
|
+
//sys ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error)
|
1811
|
+
//sys Close(fd int) (err error)
|
1812
|
+
//sys CloseRange(first uint, last uint, flags uint) (err error)
|
1813
|
+
//sys CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error)
|
1814
|
+
//sys DeleteModule(name string, flags int) (err error)
|
1815
|
+
//sys Dup(oldfd int) (fd int, err error)
|
1816
|
+
|
1817
|
+
func Dup2(oldfd, newfd int) error {
|
1818
|
+
return Dup3(oldfd, newfd, 0)
|
1819
|
+
}
|
1820
|
+
|
1821
|
+
//sys Dup3(oldfd int, newfd int, flags int) (err error)
|
1822
|
+
//sysnb EpollCreate1(flag int) (fd int, err error)
|
1823
|
+
//sysnb EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error)
|
1824
|
+
//sys Eventfd(initval uint, flags int) (fd int, err error) = SYS_EVENTFD2
|
1825
|
+
//sys Exit(code int) = SYS_EXIT_GROUP
|
1826
|
+
//sys Fallocate(fd int, mode uint32, off int64, len int64) (err error)
|
1827
|
+
//sys Fchdir(fd int) (err error)
|
1828
|
+
//sys Fchmod(fd int, mode uint32) (err error)
|
1829
|
+
//sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error)
|
1830
|
+
//sys Fdatasync(fd int) (err error)
|
1831
|
+
//sys Fgetxattr(fd int, attr string, dest []byte) (sz int, err error)
|
1832
|
+
//sys FinitModule(fd int, params string, flags int) (err error)
|
1833
|
+
//sys Flistxattr(fd int, dest []byte) (sz int, err error)
|
1834
|
+
//sys Flock(fd int, how int) (err error)
|
1835
|
+
//sys Fremovexattr(fd int, attr string) (err error)
|
1836
|
+
//sys Fsetxattr(fd int, attr string, dest []byte, flags int) (err error)
|
1837
|
+
//sys Fsync(fd int) (err error)
|
1838
|
+
//sys Fsmount(fd int, flags int, mountAttrs int) (fsfd int, err error)
|
1839
|
+
//sys Fsopen(fsName string, flags int) (fd int, err error)
|
1840
|
+
//sys Fspick(dirfd int, pathName string, flags int) (fd int, err error)
|
1841
|
+
//sys Getdents(fd int, buf []byte) (n int, err error) = SYS_GETDENTS64
|
1842
|
+
//sysnb Getpgid(pid int) (pgid int, err error)
|
1843
|
+
|
1844
|
+
func Getpgrp() (pid int) {
|
1845
|
+
pid, _ = Getpgid(0)
|
1846
|
+
return
|
1847
|
+
}
|
1848
|
+
|
1849
|
+
//sysnb Getpid() (pid int)
|
1850
|
+
//sysnb Getppid() (ppid int)
|
1851
|
+
//sys Getpriority(which int, who int) (prio int, err error)
|
1852
|
+
//sys Getrandom(buf []byte, flags int) (n int, err error)
|
1853
|
+
//sysnb Getrusage(who int, rusage *Rusage) (err error)
|
1854
|
+
//sysnb Getsid(pid int) (sid int, err error)
|
1855
|
+
//sysnb Gettid() (tid int)
|
1856
|
+
//sys Getxattr(path string, attr string, dest []byte) (sz int, err error)
|
1857
|
+
//sys InitModule(moduleImage []byte, params string) (err error)
|
1858
|
+
//sys InotifyAddWatch(fd int, pathname string, mask uint32) (watchdesc int, err error)
|
1859
|
+
//sysnb InotifyInit1(flags int) (fd int, err error)
|
1860
|
+
//sysnb InotifyRmWatch(fd int, watchdesc uint32) (success int, err error)
|
1861
|
+
//sysnb Kill(pid int, sig syscall.Signal) (err error)
|
1862
|
+
//sys Klogctl(typ int, buf []byte) (n int, err error) = SYS_SYSLOG
|
1863
|
+
//sys Lgetxattr(path string, attr string, dest []byte) (sz int, err error)
|
1864
|
+
//sys Listxattr(path string, dest []byte) (sz int, err error)
|
1865
|
+
//sys Llistxattr(path string, dest []byte) (sz int, err error)
|
1866
|
+
//sys Lremovexattr(path string, attr string) (err error)
|
1867
|
+
//sys Lsetxattr(path string, attr string, data []byte, flags int) (err error)
|
1868
|
+
//sys MemfdCreate(name string, flags int) (fd int, err error)
|
1869
|
+
//sys Mkdirat(dirfd int, path string, mode uint32) (err error)
|
1870
|
+
//sys Mknodat(dirfd int, path string, mode uint32, dev int) (err error)
|
1871
|
+
//sys MoveMount(fromDirfd int, fromPathName string, toDirfd int, toPathName string, flags int) (err error)
|
1872
|
+
//sys Nanosleep(time *Timespec, leftover *Timespec) (err error)
|
1873
|
+
//sys OpenTree(dfd int, fileName string, flags uint) (r int, err error)
|
1874
|
+
//sys PerfEventOpen(attr *PerfEventAttr, pid int, cpu int, groupFd int, flags int) (fd int, err error)
|
1875
|
+
//sys PivotRoot(newroot string, putold string) (err error) = SYS_PIVOT_ROOT
|
1876
|
+
//sysnb Prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) = SYS_PRLIMIT64
|
1877
|
+
//sys Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error)
|
1878
|
+
//sys Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) = SYS_PSELECT6
|
1879
|
+
//sys read(fd int, p []byte) (n int, err error)
|
1880
|
+
//sys Removexattr(path string, attr string) (err error)
|
1881
|
+
//sys Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error)
|
1882
|
+
//sys RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error)
|
1883
|
+
//sys Setdomainname(p []byte) (err error)
|
1884
|
+
//sys Sethostname(p []byte) (err error)
|
1885
|
+
//sysnb Setpgid(pid int, pgid int) (err error)
|
1886
|
+
//sysnb Setsid() (pid int, err error)
|
1887
|
+
//sysnb Settimeofday(tv *Timeval) (err error)
|
1888
|
+
//sys Setns(fd int, nstype int) (err error)
|
1889
|
+
|
1890
|
+
// PrctlRetInt performs a prctl operation specified by option and further
|
1891
|
+
// optional arguments arg2 through arg5 depending on option. It returns a
|
1892
|
+
// non-negative integer that is returned by the prctl syscall.
|
1893
|
+
func PrctlRetInt(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (int, error) {
|
1894
|
+
ret, _, err := Syscall6(SYS_PRCTL, uintptr(option), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0)
|
1895
|
+
if err != 0 {
|
1896
|
+
return 0, err
|
1897
|
+
}
|
1898
|
+
return int(ret), nil
|
1899
|
+
}
|
1900
|
+
|
1901
|
+
func Setuid(uid int) (err error) {
|
1902
|
+
return syscall.Setuid(uid)
|
1903
|
+
}
|
1904
|
+
|
1905
|
+
func Setgid(gid int) (err error) {
|
1906
|
+
return syscall.Setgid(gid)
|
1907
|
+
}
|
1908
|
+
|
1909
|
+
func Setreuid(ruid, euid int) (err error) {
|
1910
|
+
return syscall.Setreuid(ruid, euid)
|
1911
|
+
}
|
1912
|
+
|
1913
|
+
func Setregid(rgid, egid int) (err error) {
|
1914
|
+
return syscall.Setregid(rgid, egid)
|
1915
|
+
}
|
1916
|
+
|
1917
|
+
func Setresuid(ruid, euid, suid int) (err error) {
|
1918
|
+
return syscall.Setresuid(ruid, euid, suid)
|
1919
|
+
}
|
1920
|
+
|
1921
|
+
func Setresgid(rgid, egid, sgid int) (err error) {
|
1922
|
+
return syscall.Setresgid(rgid, egid, sgid)
|
1923
|
+
}
|
1924
|
+
|
1925
|
+
// SetfsgidRetGid sets fsgid for current thread and returns previous fsgid set.
|
1926
|
+
// setfsgid(2) will return a non-nil error only if its caller lacks CAP_SETUID capability.
|
1927
|
+
// If the call fails due to other reasons, current fsgid will be returned.
|
1928
|
+
func SetfsgidRetGid(gid int) (int, error) {
|
1929
|
+
return setfsgid(gid)
|
1930
|
+
}
|
1931
|
+
|
1932
|
+
// SetfsuidRetUid sets fsuid for current thread and returns previous fsuid set.
|
1933
|
+
// setfsgid(2) will return a non-nil error only if its caller lacks CAP_SETUID capability
|
1934
|
+
// If the call fails due to other reasons, current fsuid will be returned.
|
1935
|
+
func SetfsuidRetUid(uid int) (int, error) {
|
1936
|
+
return setfsuid(uid)
|
1937
|
+
}
|
1938
|
+
|
1939
|
+
func Setfsgid(gid int) error {
|
1940
|
+
_, err := setfsgid(gid)
|
1941
|
+
return err
|
1942
|
+
}
|
1943
|
+
|
1944
|
+
func Setfsuid(uid int) error {
|
1945
|
+
_, err := setfsuid(uid)
|
1946
|
+
return err
|
1947
|
+
}
|
1948
|
+
|
1949
|
+
func Signalfd(fd int, sigmask *Sigset_t, flags int) (newfd int, err error) {
|
1950
|
+
return signalfd(fd, sigmask, _C__NSIG/8, flags)
|
1951
|
+
}
|
1952
|
+
|
1953
|
+
//sys Setpriority(which int, who int, prio int) (err error)
|
1954
|
+
//sys Setxattr(path string, attr string, data []byte, flags int) (err error)
|
1955
|
+
//sys signalfd(fd int, sigmask *Sigset_t, maskSize uintptr, flags int) (newfd int, err error) = SYS_SIGNALFD4
|
1956
|
+
//sys Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error)
|
1957
|
+
//sys Sync()
|
1958
|
+
//sys Syncfs(fd int) (err error)
|
1959
|
+
//sysnb Sysinfo(info *Sysinfo_t) (err error)
|
1960
|
+
//sys Tee(rfd int, wfd int, len int, flags int) (n int64, err error)
|
1961
|
+
//sysnb TimerfdCreate(clockid int, flags int) (fd int, err error)
|
1962
|
+
//sysnb TimerfdGettime(fd int, currValue *ItimerSpec) (err error)
|
1963
|
+
//sysnb TimerfdSettime(fd int, flags int, newValue *ItimerSpec, oldValue *ItimerSpec) (err error)
|
1964
|
+
//sysnb Tgkill(tgid int, tid int, sig syscall.Signal) (err error)
|
1965
|
+
//sysnb Times(tms *Tms) (ticks uintptr, err error)
|
1966
|
+
//sysnb Umask(mask int) (oldmask int)
|
1967
|
+
//sysnb Uname(buf *Utsname) (err error)
|
1968
|
+
//sys Unmount(target string, flags int) (err error) = SYS_UMOUNT2
|
1969
|
+
//sys Unshare(flags int) (err error)
|
1970
|
+
//sys write(fd int, p []byte) (n int, err error)
|
1971
|
+
//sys exitThread(code int) (err error) = SYS_EXIT
|
1972
|
+
//sys readlen(fd int, p *byte, np int) (n int, err error) = SYS_READ
|
1973
|
+
//sys writelen(fd int, p *byte, np int) (n int, err error) = SYS_WRITE
|
1974
|
+
//sys readv(fd int, iovs []Iovec) (n int, err error) = SYS_READV
|
1975
|
+
//sys writev(fd int, iovs []Iovec) (n int, err error) = SYS_WRITEV
|
1976
|
+
//sys preadv(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) = SYS_PREADV
|
1977
|
+
//sys pwritev(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr) (n int, err error) = SYS_PWRITEV
|
1978
|
+
//sys preadv2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) = SYS_PREADV2
|
1979
|
+
//sys pwritev2(fd int, iovs []Iovec, offs_l uintptr, offs_h uintptr, flags int) (n int, err error) = SYS_PWRITEV2
|
1980
|
+
|
1981
|
+
// minIovec is the size of the small initial allocation used by
|
1982
|
+
// Readv, Writev, etc.
|
1983
|
+
//
|
1984
|
+
// This small allocation gets stack allocated, which lets the
|
1985
|
+
// common use case of len(iovs) <= minIovs avoid more expensive
|
1986
|
+
// heap allocations.
|
1987
|
+
const minIovec = 8
|
1988
|
+
|
1989
|
+
// appendBytes converts bs to Iovecs and appends them to vecs.
|
1990
|
+
func appendBytes(vecs []Iovec, bs [][]byte) []Iovec {
|
1991
|
+
for _, b := range bs {
|
1992
|
+
var v Iovec
|
1993
|
+
v.SetLen(len(b))
|
1994
|
+
if len(b) > 0 {
|
1995
|
+
v.Base = &b[0]
|
1996
|
+
} else {
|
1997
|
+
v.Base = (*byte)(unsafe.Pointer(&_zero))
|
1998
|
+
}
|
1999
|
+
vecs = append(vecs, v)
|
2000
|
+
}
|
2001
|
+
return vecs
|
2002
|
+
}
|
2003
|
+
|
2004
|
+
// offs2lohi splits offs into its low and high order bits.
|
2005
|
+
func offs2lohi(offs int64) (lo, hi uintptr) {
|
2006
|
+
const longBits = SizeofLong * 8
|
2007
|
+
return uintptr(offs), uintptr(uint64(offs) >> (longBits - 1) >> 1) // two shifts to avoid false positive in vet
|
2008
|
+
}
|
2009
|
+
|
2010
|
+
func Readv(fd int, iovs [][]byte) (n int, err error) {
|
2011
|
+
iovecs := make([]Iovec, 0, minIovec)
|
2012
|
+
iovecs = appendBytes(iovecs, iovs)
|
2013
|
+
n, err = readv(fd, iovecs)
|
2014
|
+
readvRacedetect(iovecs, n, err)
|
2015
|
+
return n, err
|
2016
|
+
}
|
2017
|
+
|
2018
|
+
func Preadv(fd int, iovs [][]byte, offset int64) (n int, err error) {
|
2019
|
+
iovecs := make([]Iovec, 0, minIovec)
|
2020
|
+
iovecs = appendBytes(iovecs, iovs)
|
2021
|
+
lo, hi := offs2lohi(offset)
|
2022
|
+
n, err = preadv(fd, iovecs, lo, hi)
|
2023
|
+
readvRacedetect(iovecs, n, err)
|
2024
|
+
return n, err
|
2025
|
+
}
|
2026
|
+
|
2027
|
+
func Preadv2(fd int, iovs [][]byte, offset int64, flags int) (n int, err error) {
|
2028
|
+
iovecs := make([]Iovec, 0, minIovec)
|
2029
|
+
iovecs = appendBytes(iovecs, iovs)
|
2030
|
+
lo, hi := offs2lohi(offset)
|
2031
|
+
n, err = preadv2(fd, iovecs, lo, hi, flags)
|
2032
|
+
readvRacedetect(iovecs, n, err)
|
2033
|
+
return n, err
|
2034
|
+
}
|
2035
|
+
|
2036
|
+
func readvRacedetect(iovecs []Iovec, n int, err error) {
|
2037
|
+
if !raceenabled {
|
2038
|
+
return
|
2039
|
+
}
|
2040
|
+
for i := 0; n > 0 && i < len(iovecs); i++ {
|
2041
|
+
m := int(iovecs[i].Len)
|
2042
|
+
if m > n {
|
2043
|
+
m = n
|
2044
|
+
}
|
2045
|
+
n -= m
|
2046
|
+
if m > 0 {
|
2047
|
+
raceWriteRange(unsafe.Pointer(iovecs[i].Base), m)
|
2048
|
+
}
|
2049
|
+
}
|
2050
|
+
if err == nil {
|
2051
|
+
raceAcquire(unsafe.Pointer(&ioSync))
|
2052
|
+
}
|
2053
|
+
}
|
2054
|
+
|
2055
|
+
func Writev(fd int, iovs [][]byte) (n int, err error) {
|
2056
|
+
iovecs := make([]Iovec, 0, minIovec)
|
2057
|
+
iovecs = appendBytes(iovecs, iovs)
|
2058
|
+
if raceenabled {
|
2059
|
+
raceReleaseMerge(unsafe.Pointer(&ioSync))
|
2060
|
+
}
|
2061
|
+
n, err = writev(fd, iovecs)
|
2062
|
+
writevRacedetect(iovecs, n)
|
2063
|
+
return n, err
|
2064
|
+
}
|
2065
|
+
|
2066
|
+
func Pwritev(fd int, iovs [][]byte, offset int64) (n int, err error) {
|
2067
|
+
iovecs := make([]Iovec, 0, minIovec)
|
2068
|
+
iovecs = appendBytes(iovecs, iovs)
|
2069
|
+
if raceenabled {
|
2070
|
+
raceReleaseMerge(unsafe.Pointer(&ioSync))
|
2071
|
+
}
|
2072
|
+
lo, hi := offs2lohi(offset)
|
2073
|
+
n, err = pwritev(fd, iovecs, lo, hi)
|
2074
|
+
writevRacedetect(iovecs, n)
|
2075
|
+
return n, err
|
2076
|
+
}
|
2077
|
+
|
2078
|
+
func Pwritev2(fd int, iovs [][]byte, offset int64, flags int) (n int, err error) {
|
2079
|
+
iovecs := make([]Iovec, 0, minIovec)
|
2080
|
+
iovecs = appendBytes(iovecs, iovs)
|
2081
|
+
if raceenabled {
|
2082
|
+
raceReleaseMerge(unsafe.Pointer(&ioSync))
|
2083
|
+
}
|
2084
|
+
lo, hi := offs2lohi(offset)
|
2085
|
+
n, err = pwritev2(fd, iovecs, lo, hi, flags)
|
2086
|
+
writevRacedetect(iovecs, n)
|
2087
|
+
return n, err
|
2088
|
+
}
|
2089
|
+
|
2090
|
+
func writevRacedetect(iovecs []Iovec, n int) {
|
2091
|
+
if !raceenabled {
|
2092
|
+
return
|
2093
|
+
}
|
2094
|
+
for i := 0; n > 0 && i < len(iovecs); i++ {
|
2095
|
+
m := int(iovecs[i].Len)
|
2096
|
+
if m > n {
|
2097
|
+
m = n
|
2098
|
+
}
|
2099
|
+
n -= m
|
2100
|
+
if m > 0 {
|
2101
|
+
raceReadRange(unsafe.Pointer(iovecs[i].Base), m)
|
2102
|
+
}
|
2103
|
+
}
|
2104
|
+
}
|
2105
|
+
|
2106
|
+
// mmap varies by architecture; see syscall_linux_*.go.
|
2107
|
+
//sys munmap(addr uintptr, length uintptr) (err error)
|
2108
|
+
|
2109
|
+
var mapper = &mmapper{
|
2110
|
+
active: make(map[*byte][]byte),
|
2111
|
+
mmap: mmap,
|
2112
|
+
munmap: munmap,
|
2113
|
+
}
|
2114
|
+
|
2115
|
+
func Mmap(fd int, offset int64, length int, prot int, flags int) (data []byte, err error) {
|
2116
|
+
return mapper.Mmap(fd, offset, length, prot, flags)
|
2117
|
+
}
|
2118
|
+
|
2119
|
+
func Munmap(b []byte) (err error) {
|
2120
|
+
return mapper.Munmap(b)
|
2121
|
+
}
|
2122
|
+
|
2123
|
+
//sys Madvise(b []byte, advice int) (err error)
|
2124
|
+
//sys Mprotect(b []byte, prot int) (err error)
|
2125
|
+
//sys Mlock(b []byte) (err error)
|
2126
|
+
//sys Mlockall(flags int) (err error)
|
2127
|
+
//sys Msync(b []byte, flags int) (err error)
|
2128
|
+
//sys Munlock(b []byte) (err error)
|
2129
|
+
//sys Munlockall() (err error)
|
2130
|
+
|
2131
|
+
// Vmsplice splices user pages from a slice of Iovecs into a pipe specified by fd,
|
2132
|
+
// using the specified flags.
|
2133
|
+
func Vmsplice(fd int, iovs []Iovec, flags int) (int, error) {
|
2134
|
+
var p unsafe.Pointer
|
2135
|
+
if len(iovs) > 0 {
|
2136
|
+
p = unsafe.Pointer(&iovs[0])
|
2137
|
+
}
|
2138
|
+
|
2139
|
+
n, _, errno := Syscall6(SYS_VMSPLICE, uintptr(fd), uintptr(p), uintptr(len(iovs)), uintptr(flags), 0, 0)
|
2140
|
+
if errno != 0 {
|
2141
|
+
return 0, syscall.Errno(errno)
|
2142
|
+
}
|
2143
|
+
|
2144
|
+
return int(n), nil
|
2145
|
+
}
|
2146
|
+
|
2147
|
+
func isGroupMember(gid int) bool {
|
2148
|
+
groups, err := Getgroups()
|
2149
|
+
if err != nil {
|
2150
|
+
return false
|
2151
|
+
}
|
2152
|
+
|
2153
|
+
for _, g := range groups {
|
2154
|
+
if g == gid {
|
2155
|
+
return true
|
2156
|
+
}
|
2157
|
+
}
|
2158
|
+
return false
|
2159
|
+
}
|
2160
|
+
|
2161
|
+
func isCapDacOverrideSet() bool {
|
2162
|
+
hdr := CapUserHeader{Version: LINUX_CAPABILITY_VERSION_3}
|
2163
|
+
data := [2]CapUserData{}
|
2164
|
+
err := Capget(&hdr, &data[0])
|
2165
|
+
|
2166
|
+
return err == nil && data[0].Effective&(1<<CAP_DAC_OVERRIDE) != 0
|
2167
|
+
}
|
2168
|
+
|
2169
|
+
//sys faccessat(dirfd int, path string, mode uint32) (err error)
|
2170
|
+
//sys Faccessat2(dirfd int, path string, mode uint32, flags int) (err error)
|
2171
|
+
|
2172
|
+
func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
|
2173
|
+
if flags == 0 {
|
2174
|
+
return faccessat(dirfd, path, mode)
|
2175
|
+
}
|
2176
|
+
|
2177
|
+
if err := Faccessat2(dirfd, path, mode, flags); err != ENOSYS && err != EPERM {
|
2178
|
+
return err
|
2179
|
+
}
|
2180
|
+
|
2181
|
+
// The Linux kernel faccessat system call does not take any flags.
|
2182
|
+
// The glibc faccessat implements the flags itself; see
|
2183
|
+
// https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/faccessat.c;hb=HEAD
|
2184
|
+
// Because people naturally expect syscall.Faccessat to act
|
2185
|
+
// like C faccessat, we do the same.
|
2186
|
+
|
2187
|
+
if flags & ^(AT_SYMLINK_NOFOLLOW|AT_EACCESS) != 0 {
|
2188
|
+
return EINVAL
|
2189
|
+
}
|
2190
|
+
|
2191
|
+
var st Stat_t
|
2192
|
+
if err := Fstatat(dirfd, path, &st, flags&AT_SYMLINK_NOFOLLOW); err != nil {
|
2193
|
+
return err
|
2194
|
+
}
|
2195
|
+
|
2196
|
+
mode &= 7
|
2197
|
+
if mode == 0 {
|
2198
|
+
return nil
|
2199
|
+
}
|
2200
|
+
|
2201
|
+
var uid int
|
2202
|
+
if flags&AT_EACCESS != 0 {
|
2203
|
+
uid = Geteuid()
|
2204
|
+
if uid != 0 && isCapDacOverrideSet() {
|
2205
|
+
// If CAP_DAC_OVERRIDE is set, file access check is
|
2206
|
+
// done by the kernel in the same way as for root
|
2207
|
+
// (see generic_permission() in the Linux sources).
|
2208
|
+
uid = 0
|
2209
|
+
}
|
2210
|
+
} else {
|
2211
|
+
uid = Getuid()
|
2212
|
+
}
|
2213
|
+
|
2214
|
+
if uid == 0 {
|
2215
|
+
if mode&1 == 0 {
|
2216
|
+
// Root can read and write any file.
|
2217
|
+
return nil
|
2218
|
+
}
|
2219
|
+
if st.Mode&0111 != 0 {
|
2220
|
+
// Root can execute any file that anybody can execute.
|
2221
|
+
return nil
|
2222
|
+
}
|
2223
|
+
return EACCES
|
2224
|
+
}
|
2225
|
+
|
2226
|
+
var fmode uint32
|
2227
|
+
if uint32(uid) == st.Uid {
|
2228
|
+
fmode = (st.Mode >> 6) & 7
|
2229
|
+
} else {
|
2230
|
+
var gid int
|
2231
|
+
if flags&AT_EACCESS != 0 {
|
2232
|
+
gid = Getegid()
|
2233
|
+
} else {
|
2234
|
+
gid = Getgid()
|
2235
|
+
}
|
2236
|
+
|
2237
|
+
if uint32(gid) == st.Gid || isGroupMember(int(st.Gid)) {
|
2238
|
+
fmode = (st.Mode >> 3) & 7
|
2239
|
+
} else {
|
2240
|
+
fmode = st.Mode & 7
|
2241
|
+
}
|
2242
|
+
}
|
2243
|
+
|
2244
|
+
if fmode&mode == mode {
|
2245
|
+
return nil
|
2246
|
+
}
|
2247
|
+
|
2248
|
+
return EACCES
|
2249
|
+
}
|
2250
|
+
|
2251
|
+
//sys nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int, flags int) (err error) = SYS_NAME_TO_HANDLE_AT
|
2252
|
+
//sys openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) = SYS_OPEN_BY_HANDLE_AT
|
2253
|
+
|
2254
|
+
// fileHandle is the argument to nameToHandleAt and openByHandleAt. We
|
2255
|
+
// originally tried to generate it via unix/linux/types.go with "type
|
2256
|
+
// fileHandle C.struct_file_handle" but that generated empty structs
|
2257
|
+
// for mips64 and mips64le. Instead, hard code it for now (it's the
|
2258
|
+
// same everywhere else) until the mips64 generator issue is fixed.
|
2259
|
+
type fileHandle struct {
|
2260
|
+
Bytes uint32
|
2261
|
+
Type int32
|
2262
|
+
}
|
2263
|
+
|
2264
|
+
// FileHandle represents the C struct file_handle used by
|
2265
|
+
// name_to_handle_at (see NameToHandleAt) and open_by_handle_at (see
|
2266
|
+
// OpenByHandleAt).
|
2267
|
+
type FileHandle struct {
|
2268
|
+
*fileHandle
|
2269
|
+
}
|
2270
|
+
|
2271
|
+
// NewFileHandle constructs a FileHandle.
|
2272
|
+
func NewFileHandle(handleType int32, handle []byte) FileHandle {
|
2273
|
+
const hdrSize = unsafe.Sizeof(fileHandle{})
|
2274
|
+
buf := make([]byte, hdrSize+uintptr(len(handle)))
|
2275
|
+
copy(buf[hdrSize:], handle)
|
2276
|
+
fh := (*fileHandle)(unsafe.Pointer(&buf[0]))
|
2277
|
+
fh.Type = handleType
|
2278
|
+
fh.Bytes = uint32(len(handle))
|
2279
|
+
return FileHandle{fh}
|
2280
|
+
}
|
2281
|
+
|
2282
|
+
func (fh *FileHandle) Size() int { return int(fh.fileHandle.Bytes) }
|
2283
|
+
func (fh *FileHandle) Type() int32 { return fh.fileHandle.Type }
|
2284
|
+
func (fh *FileHandle) Bytes() []byte {
|
2285
|
+
n := fh.Size()
|
2286
|
+
if n == 0 {
|
2287
|
+
return nil
|
2288
|
+
}
|
2289
|
+
return unsafe.Slice((*byte)(unsafe.Pointer(uintptr(unsafe.Pointer(&fh.fileHandle.Type))+4)), n)
|
2290
|
+
}
|
2291
|
+
|
2292
|
+
// NameToHandleAt wraps the name_to_handle_at system call; it obtains
|
2293
|
+
// a handle for a path name.
|
2294
|
+
func NameToHandleAt(dirfd int, path string, flags int) (handle FileHandle, mountID int, err error) {
|
2295
|
+
var mid _C_int
|
2296
|
+
// Try first with a small buffer, assuming the handle will
|
2297
|
+
// only be 32 bytes.
|
2298
|
+
size := uint32(32 + unsafe.Sizeof(fileHandle{}))
|
2299
|
+
didResize := false
|
2300
|
+
for {
|
2301
|
+
buf := make([]byte, size)
|
2302
|
+
fh := (*fileHandle)(unsafe.Pointer(&buf[0]))
|
2303
|
+
fh.Bytes = size - uint32(unsafe.Sizeof(fileHandle{}))
|
2304
|
+
err = nameToHandleAt(dirfd, path, fh, &mid, flags)
|
2305
|
+
if err == EOVERFLOW {
|
2306
|
+
if didResize {
|
2307
|
+
// We shouldn't need to resize more than once
|
2308
|
+
return
|
2309
|
+
}
|
2310
|
+
didResize = true
|
2311
|
+
size = fh.Bytes + uint32(unsafe.Sizeof(fileHandle{}))
|
2312
|
+
continue
|
2313
|
+
}
|
2314
|
+
if err != nil {
|
2315
|
+
return
|
2316
|
+
}
|
2317
|
+
return FileHandle{fh}, int(mid), nil
|
2318
|
+
}
|
2319
|
+
}
|
2320
|
+
|
2321
|
+
// OpenByHandleAt wraps the open_by_handle_at system call; it opens a
|
2322
|
+
// file via a handle as previously returned by NameToHandleAt.
|
2323
|
+
func OpenByHandleAt(mountFD int, handle FileHandle, flags int) (fd int, err error) {
|
2324
|
+
return openByHandleAt(mountFD, handle.fileHandle, flags)
|
2325
|
+
}
|
2326
|
+
|
2327
|
+
// Klogset wraps the sys_syslog system call; it sets console_loglevel to
|
2328
|
+
// the value specified by arg and passes a dummy pointer to bufp.
|
2329
|
+
func Klogset(typ int, arg int) (err error) {
|
2330
|
+
var p unsafe.Pointer
|
2331
|
+
_, _, errno := Syscall(SYS_SYSLOG, uintptr(typ), uintptr(p), uintptr(arg))
|
2332
|
+
if errno != 0 {
|
2333
|
+
return errnoErr(errno)
|
2334
|
+
}
|
2335
|
+
return nil
|
2336
|
+
}
|
2337
|
+
|
2338
|
+
// RemoteIovec is Iovec with the pointer replaced with an integer.
|
2339
|
+
// It is used for ProcessVMReadv and ProcessVMWritev, where the pointer
|
2340
|
+
// refers to a location in a different process' address space, which
|
2341
|
+
// would confuse the Go garbage collector.
|
2342
|
+
type RemoteIovec struct {
|
2343
|
+
Base uintptr
|
2344
|
+
Len int
|
2345
|
+
}
|
2346
|
+
|
2347
|
+
//sys ProcessVMReadv(pid int, localIov []Iovec, remoteIov []RemoteIovec, flags uint) (n int, err error) = SYS_PROCESS_VM_READV
|
2348
|
+
//sys ProcessVMWritev(pid int, localIov []Iovec, remoteIov []RemoteIovec, flags uint) (n int, err error) = SYS_PROCESS_VM_WRITEV
|
2349
|
+
|
2350
|
+
//sys PidfdOpen(pid int, flags int) (fd int, err error) = SYS_PIDFD_OPEN
|
2351
|
+
//sys PidfdGetfd(pidfd int, targetfd int, flags int) (fd int, err error) = SYS_PIDFD_GETFD
|
2352
|
+
//sys PidfdSendSignal(pidfd int, sig Signal, info *Siginfo, flags int) (err error) = SYS_PIDFD_SEND_SIGNAL
|
2353
|
+
|
2354
|
+
//sys shmat(id int, addr uintptr, flag int) (ret uintptr, err error)
|
2355
|
+
//sys shmctl(id int, cmd int, buf *SysvShmDesc) (result int, err error)
|
2356
|
+
//sys shmdt(addr uintptr) (err error)
|
2357
|
+
//sys shmget(key int, size int, flag int) (id int, err error)
|
2358
|
+
|
2359
|
+
//sys getitimer(which int, currValue *Itimerval) (err error)
|
2360
|
+
//sys setitimer(which int, newValue *Itimerval, oldValue *Itimerval) (err error)
|
2361
|
+
|
2362
|
+
// MakeItimerval creates an Itimerval from interval and value durations.
|
2363
|
+
func MakeItimerval(interval, value time.Duration) Itimerval {
|
2364
|
+
return Itimerval{
|
2365
|
+
Interval: NsecToTimeval(interval.Nanoseconds()),
|
2366
|
+
Value: NsecToTimeval(value.Nanoseconds()),
|
2367
|
+
}
|
2368
|
+
}
|
2369
|
+
|
2370
|
+
// A value which may be passed to the which parameter for Getitimer and
|
2371
|
+
// Setitimer.
|
2372
|
+
type ItimerWhich int
|
2373
|
+
|
2374
|
+
// Possible which values for Getitimer and Setitimer.
|
2375
|
+
const (
|
2376
|
+
ItimerReal ItimerWhich = ITIMER_REAL
|
2377
|
+
ItimerVirtual ItimerWhich = ITIMER_VIRTUAL
|
2378
|
+
ItimerProf ItimerWhich = ITIMER_PROF
|
2379
|
+
)
|
2380
|
+
|
2381
|
+
// Getitimer wraps getitimer(2) to return the current value of the timer
|
2382
|
+
// specified by which.
|
2383
|
+
func Getitimer(which ItimerWhich) (Itimerval, error) {
|
2384
|
+
var it Itimerval
|
2385
|
+
if err := getitimer(int(which), &it); err != nil {
|
2386
|
+
return Itimerval{}, err
|
2387
|
+
}
|
2388
|
+
|
2389
|
+
return it, nil
|
2390
|
+
}
|
2391
|
+
|
2392
|
+
// Setitimer wraps setitimer(2) to arm or disarm the timer specified by which.
|
2393
|
+
// It returns the previous value of the timer.
|
2394
|
+
//
|
2395
|
+
// If the Itimerval argument is the zero value, the timer will be disarmed.
|
2396
|
+
func Setitimer(which ItimerWhich, it Itimerval) (Itimerval, error) {
|
2397
|
+
var prev Itimerval
|
2398
|
+
if err := setitimer(int(which), &it, &prev); err != nil {
|
2399
|
+
return Itimerval{}, err
|
2400
|
+
}
|
2401
|
+
|
2402
|
+
return prev, nil
|
2403
|
+
}
|
2404
|
+
|
2405
|
+
//sysnb rtSigprocmask(how int, set *Sigset_t, oldset *Sigset_t, sigsetsize uintptr) (err error) = SYS_RT_SIGPROCMASK
|
2406
|
+
|
2407
|
+
func PthreadSigmask(how int, set, oldset *Sigset_t) error {
|
2408
|
+
if oldset != nil {
|
2409
|
+
// Explicitly clear in case Sigset_t is larger than _C__NSIG.
|
2410
|
+
*oldset = Sigset_t{}
|
2411
|
+
}
|
2412
|
+
return rtSigprocmask(how, set, oldset, _C__NSIG/8)
|
2413
|
+
}
|
2414
|
+
|
2415
|
+
/*
|
2416
|
+
* Unimplemented
|
2417
|
+
*/
|
2418
|
+
// AfsSyscall
|
2419
|
+
// ArchPrctl
|
2420
|
+
// Brk
|
2421
|
+
// ClockNanosleep
|
2422
|
+
// ClockSettime
|
2423
|
+
// Clone
|
2424
|
+
// EpollCtlOld
|
2425
|
+
// EpollPwait
|
2426
|
+
// EpollWaitOld
|
2427
|
+
// Execve
|
2428
|
+
// Fork
|
2429
|
+
// Futex
|
2430
|
+
// GetKernelSyms
|
2431
|
+
// GetMempolicy
|
2432
|
+
// GetRobustList
|
2433
|
+
// GetThreadArea
|
2434
|
+
// Getpmsg
|
2435
|
+
// IoCancel
|
2436
|
+
// IoDestroy
|
2437
|
+
// IoGetevents
|
2438
|
+
// IoSetup
|
2439
|
+
// IoSubmit
|
2440
|
+
// IoprioGet
|
2441
|
+
// IoprioSet
|
2442
|
+
// KexecLoad
|
2443
|
+
// LookupDcookie
|
2444
|
+
// Mbind
|
2445
|
+
// MigratePages
|
2446
|
+
// Mincore
|
2447
|
+
// ModifyLdt
|
2448
|
+
// Mount
|
2449
|
+
// MovePages
|
2450
|
+
// MqGetsetattr
|
2451
|
+
// MqNotify
|
2452
|
+
// MqOpen
|
2453
|
+
// MqTimedreceive
|
2454
|
+
// MqTimedsend
|
2455
|
+
// MqUnlink
|
2456
|
+
// Mremap
|
2457
|
+
// Msgctl
|
2458
|
+
// Msgget
|
2459
|
+
// Msgrcv
|
2460
|
+
// Msgsnd
|
2461
|
+
// Nfsservctl
|
2462
|
+
// Personality
|
2463
|
+
// Pselect6
|
2464
|
+
// Ptrace
|
2465
|
+
// Putpmsg
|
2466
|
+
// Quotactl
|
2467
|
+
// Readahead
|
2468
|
+
// Readv
|
2469
|
+
// RemapFilePages
|
2470
|
+
// RestartSyscall
|
2471
|
+
// RtSigaction
|
2472
|
+
// RtSigpending
|
2473
|
+
// RtSigqueueinfo
|
2474
|
+
// RtSigreturn
|
2475
|
+
// RtSigsuspend
|
2476
|
+
// RtSigtimedwait
|
2477
|
+
// SchedGetPriorityMax
|
2478
|
+
// SchedGetPriorityMin
|
2479
|
+
// SchedGetparam
|
2480
|
+
// SchedGetscheduler
|
2481
|
+
// SchedRrGetInterval
|
2482
|
+
// SchedSetparam
|
2483
|
+
// SchedYield
|
2484
|
+
// Security
|
2485
|
+
// Semctl
|
2486
|
+
// Semget
|
2487
|
+
// Semop
|
2488
|
+
// Semtimedop
|
2489
|
+
// SetMempolicy
|
2490
|
+
// SetRobustList
|
2491
|
+
// SetThreadArea
|
2492
|
+
// SetTidAddress
|
2493
|
+
// Sigaltstack
|
2494
|
+
// Swapoff
|
2495
|
+
// Swapon
|
2496
|
+
// Sysfs
|
2497
|
+
// TimerCreate
|
2498
|
+
// TimerDelete
|
2499
|
+
// TimerGetoverrun
|
2500
|
+
// TimerGettime
|
2501
|
+
// TimerSettime
|
2502
|
+
// Tkill (obsolete)
|
2503
|
+
// Tuxcall
|
2504
|
+
// Umount2
|
2505
|
+
// Uselib
|
2506
|
+
// Utimensat
|
2507
|
+
// Vfork
|
2508
|
+
// Vhangup
|
2509
|
+
// Vserver
|
2510
|
+
// _Sysctl
|