├── .github ├── ISSUE_TEMPLATE.md └── PULL_REQUEST_TEMPLATE.md ├── .gitignore ├── .travis.yml ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── Makefile ├── README.md ├── VERSION ├── go.mod ├── go.sum ├── pkg ├── capabilities │ ├── capabilities.go │ └── capabilities_test.go ├── cniipamwrapper │ ├── generate_mocks.go │ ├── ipam.go │ ├── mocks │ │ └── cniipamwrapper_mocks.go │ └── mocks_types │ │ └── result_mocks.go ├── cniipwrapper │ ├── generate_mocks.go │ ├── ip.go │ └── mocks │ │ └── cniipwrapper_mocks.go ├── cninswrapper │ ├── generate_mocks.go │ ├── mocks │ │ └── cninswrapper_mocks.go │ ├── mocks_netns │ │ └── netns_mocks.go │ └── ns.go ├── ec2metadata │ ├── client.go │ ├── generate_mocks.go │ └── mocks │ │ └── ec2metadata_mocks.go ├── execwrapper │ ├── exec.go │ ├── generate_mocks.go │ └── mocks │ │ └── exec_mocks.go ├── ioutilwrapper │ ├── generate_mocks.go │ ├── ioutil.go │ ├── mocks_fileinfo │ │ └── fileinfo_mocks.go │ └── mocks_ioutilwrapper │ │ └── ioutilwrapper_mocks.go ├── licenses │ ├── generate.go │ └── license.go ├── logger │ ├── logger.go │ └── logger_test.go ├── netlinkwrapper │ ├── generate_mocks.go │ ├── mocks │ │ └── netlinkwrapper_mocks.go │ ├── mocks_link │ │ └── link_mocks.go │ └── netlink.go ├── oswrapper │ ├── generate_mocks.go │ ├── mocks │ │ └── oswrapper_mocks.go │ └── os.go ├── utils │ ├── backoff.go │ ├── backoff_test.go │ ├── errors.go │ ├── gateway.go │ ├── gateway_test.go │ ├── utils.go │ └── utils_test.go └── version │ ├── version.go │ └── version_test.go ├── plugins ├── ecs-bridge │ ├── README.md │ ├── commands │ │ ├── commands.go │ │ └── commands_test.go │ ├── e2eTests │ │ └── e2e_test.go │ ├── engine │ │ ├── configureveth.go │ │ ├── createveth.go │ │ ├── deletelink.go │ │ ├── engine.go │ │ ├── engine_integ_test.go │ │ ├── engine_test.go │ │ ├── generate_mocks.go │ │ ├── interfaceip.go │ │ └── mocks │ │ │ └── engine_mocks.go │ ├── main.go │ ├── types │ │ ├── types.go │ │ └── types_test.go │ └── version │ │ └── cnispec │ │ └── cnispec.go ├── eni │ ├── README.md │ ├── commands │ │ ├── commands.go │ │ └── commands_test.go │ ├── e2eTests │ │ └── e2e_test.go │ ├── engine │ │ ├── engine.go │ │ ├── engine_test.go │ │ ├── error.go │ │ ├── generate_mocks.go │ │ ├── mocks │ │ │ └── engine_mocks.go │ │ └── nsclosure.go │ ├── main.go │ ├── types │ │ ├── types.go │ │ └── types_test.go │ └── version │ │ └── cnispec │ │ ├── spec.go │ │ └── spec_test.go └── ipam │ ├── README.md │ ├── commands │ ├── commands.go │ └── commands_test.go │ ├── config │ ├── config.go │ └── config_test.go │ ├── ipam_integ_test.go │ ├── ipstore │ ├── generate_mocks.go │ ├── ipstore.go │ ├── ipstore_integ_test.go │ ├── ipstore_test.go │ └── mocks │ │ └── ipstore_mocks.go │ ├── main.go │ └── version │ └── cnispec │ ├── spec.go │ └── spec_test.go ├── scripts ├── licenses.sh └── mockgen.go ├── tools.go └── vendor ├── github.com ├── aws │ ├── aws-sdk-go-v2 │ │ ├── LICENSE.txt │ │ ├── NOTICE.txt │ │ ├── aws │ │ │ ├── accountid_endpoint_mode.go │ │ │ ├── config.go │ │ │ ├── context.go │ │ │ ├── credential_cache.go │ │ │ ├── credentials.go │ │ │ ├── defaults │ │ │ │ ├── auto.go │ │ │ │ ├── configuration.go │ │ │ │ ├── defaults.go │ │ │ │ └── doc.go │ │ │ ├── defaultsmode.go │ │ │ ├── doc.go │ │ │ ├── endpoints.go │ │ │ ├── errors.go │ │ │ ├── from_ptr.go │ │ │ ├── go_module_metadata.go │ │ │ ├── logging.go │ │ │ ├── logging_generate.go │ │ │ ├── middleware │ │ │ │ ├── metadata.go │ │ │ │ ├── middleware.go │ │ │ │ ├── osname.go │ │ │ │ ├── osname_go115.go │ │ │ │ ├── private │ │ │ │ │ └── metrics │ │ │ │ │ │ └── metrics.go │ │ │ │ ├── recursion_detection.go │ │ │ │ ├── request_id.go │ │ │ │ ├── request_id_retriever.go │ │ │ │ └── user_agent.go │ │ │ ├── protocol │ │ │ │ ├── ec2query │ │ │ │ │ └── error_utils.go │ │ │ │ ├── query │ │ │ │ │ ├── array.go │ │ │ │ │ ├── encoder.go │ │ │ │ │ ├── map.go │ │ │ │ │ ├── middleware.go │ │ │ │ │ ├── object.go │ │ │ │ │ └── value.go │ │ │ │ ├── restjson │ │ │ │ │ └── decoder_util.go │ │ │ │ └── xml │ │ │ │ │ └── error_utils.go │ │ │ ├── ratelimit │ │ │ │ ├── none.go │ │ │ │ ├── token_bucket.go │ │ │ │ └── token_rate_limit.go │ │ │ ├── request.go │ │ │ ├── retry │ │ │ │ ├── adaptive.go │ │ │ │ ├── adaptive_ratelimit.go │ │ │ │ ├── adaptive_token_bucket.go │ │ │ │ ├── doc.go │ │ │ │ ├── errors.go │ │ │ │ ├── jitter_backoff.go │ │ │ │ ├── metadata.go │ │ │ │ ├── middleware.go │ │ │ │ ├── retry.go │ │ │ │ ├── retryable_error.go │ │ │ │ ├── standard.go │ │ │ │ ├── throttle_error.go │ │ │ │ └── timeout_error.go │ │ │ ├── retryer.go │ │ │ ├── runtime.go │ │ │ ├── signer │ │ │ │ ├── internal │ │ │ │ │ └── v4 │ │ │ │ │ │ ├── cache.go │ │ │ │ │ │ ├── const.go │ │ │ │ │ │ ├── header_rules.go │ │ │ │ │ │ ├── headers.go │ │ │ │ │ │ ├── hmac.go │ │ │ │ │ │ ├── host.go │ │ │ │ │ │ ├── scope.go │ │ │ │ │ │ ├── time.go │ │ │ │ │ │ └── util.go │ │ │ │ └── v4 │ │ │ │ │ ├── middleware.go │ │ │ │ │ ├── presign_middleware.go │ │ │ │ │ ├── stream.go │ │ │ │ │ └── v4.go │ │ │ ├── to_ptr.go │ │ │ ├── transport │ │ │ │ └── http │ │ │ │ │ ├── client.go │ │ │ │ │ ├── content_type.go │ │ │ │ │ ├── response_error.go │ │ │ │ │ ├── response_error_middleware.go │ │ │ │ │ └── timeout_read_closer.go │ │ │ ├── types.go │ │ │ └── version.go │ │ ├── config │ │ │ ├── CHANGELOG.md │ │ │ ├── LICENSE.txt │ │ │ ├── config.go │ │ │ ├── defaultsmode.go │ │ │ ├── doc.go │ │ │ ├── env_config.go │ │ │ ├── generate.go │ │ │ ├── go_module_metadata.go │ │ │ ├── load_options.go │ │ │ ├── local.go │ │ │ ├── provider.go │ │ │ ├── resolve.go │ │ │ ├── resolve_bearer_token.go │ │ │ ├── resolve_credentials.go │ │ │ └── shared_config.go │ │ ├── credentials │ │ │ ├── CHANGELOG.md │ │ │ ├── LICENSE.txt │ │ │ ├── doc.go │ │ │ ├── ec2rolecreds │ │ │ │ ├── doc.go │ │ │ │ └── provider.go │ │ │ ├── endpointcreds │ │ │ │ ├── internal │ │ │ │ │ └── client │ │ │ │ │ │ ├── auth.go │ │ │ │ │ │ ├── client.go │ │ │ │ │ │ ├── endpoints.go │ │ │ │ │ │ └── middleware.go │ │ │ │ └── provider.go │ │ │ ├── go_module_metadata.go │ │ │ ├── processcreds │ │ │ │ ├── doc.go │ │ │ │ └── provider.go │ │ │ ├── ssocreds │ │ │ │ ├── doc.go │ │ │ │ ├── sso_cached_token.go │ │ │ │ ├── sso_credentials_provider.go │ │ │ │ └── sso_token_provider.go │ │ │ ├── static_provider.go │ │ │ └── stscreds │ │ │ │ ├── assume_role_provider.go │ │ │ │ └── web_identity_provider.go │ │ ├── feature │ │ │ └── ec2 │ │ │ │ └── imds │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── LICENSE.txt │ │ │ │ ├── api_client.go │ │ │ │ ├── api_op_GetDynamicData.go │ │ │ │ ├── api_op_GetIAMInfo.go │ │ │ │ ├── api_op_GetInstanceIdentityDocument.go │ │ │ │ ├── api_op_GetMetadata.go │ │ │ │ ├── api_op_GetRegion.go │ │ │ │ ├── api_op_GetToken.go │ │ │ │ ├── api_op_GetUserData.go │ │ │ │ ├── auth.go │ │ │ │ ├── doc.go │ │ │ │ ├── endpoints.go │ │ │ │ ├── go_module_metadata.go │ │ │ │ ├── internal │ │ │ │ └── config │ │ │ │ │ └── resolvers.go │ │ │ │ ├── request_middleware.go │ │ │ │ └── token_provider.go │ │ ├── internal │ │ │ ├── auth │ │ │ │ ├── auth.go │ │ │ │ ├── scheme.go │ │ │ │ └── smithy │ │ │ │ │ ├── bearer_token_adapter.go │ │ │ │ │ ├── bearer_token_signer_adapter.go │ │ │ │ │ ├── credentials_adapter.go │ │ │ │ │ ├── smithy.go │ │ │ │ │ └── v4signer_adapter.go │ │ │ ├── configsources │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── LICENSE.txt │ │ │ │ ├── config.go │ │ │ │ ├── endpoints.go │ │ │ │ └── go_module_metadata.go │ │ │ ├── context │ │ │ │ └── context.go │ │ │ ├── endpoints │ │ │ │ ├── awsrulesfn │ │ │ │ │ ├── arn.go │ │ │ │ │ ├── doc.go │ │ │ │ │ ├── generate.go │ │ │ │ │ ├── host.go │ │ │ │ │ ├── partition.go │ │ │ │ │ ├── partitions.go │ │ │ │ │ └── partitions.json │ │ │ │ ├── endpoints.go │ │ │ │ └── v2 │ │ │ │ │ ├── CHANGELOG.md │ │ │ │ │ ├── LICENSE.txt │ │ │ │ │ ├── endpoints.go │ │ │ │ │ └── go_module_metadata.go │ │ │ ├── ini │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── LICENSE.txt │ │ │ │ ├── errors.go │ │ │ │ ├── go_module_metadata.go │ │ │ │ ├── ini.go │ │ │ │ ├── parse.go │ │ │ │ ├── sections.go │ │ │ │ ├── strings.go │ │ │ │ ├── token.go │ │ │ │ ├── tokenize.go │ │ │ │ └── value.go │ │ │ ├── middleware │ │ │ │ └── middleware.go │ │ │ ├── rand │ │ │ │ └── rand.go │ │ │ ├── sdk │ │ │ │ ├── interfaces.go │ │ │ │ └── time.go │ │ │ ├── sdkio │ │ │ │ └── byte.go │ │ │ ├── shareddefaults │ │ │ │ └── shared_config.go │ │ │ ├── strings │ │ │ │ └── strings.go │ │ │ ├── sync │ │ │ │ └── singleflight │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── docs.go │ │ │ │ │ └── singleflight.go │ │ │ └── timeconv │ │ │ │ └── duration.go │ │ └── service │ │ │ ├── ec2 │ │ │ ├── CHANGELOG.md │ │ │ ├── LICENSE.txt │ │ │ ├── api_client.go │ │ │ ├── api_op_AcceptAddressTransfer.go │ │ │ ├── api_op_AcceptReservedInstancesExchangeQuote.go │ │ │ ├── api_op_AcceptTransitGatewayMulticastDomainAssociations.go │ │ │ ├── api_op_AcceptTransitGatewayPeeringAttachment.go │ │ │ ├── api_op_AcceptTransitGatewayVpcAttachment.go │ │ │ ├── api_op_AcceptVpcEndpointConnections.go │ │ │ ├── api_op_AcceptVpcPeeringConnection.go │ │ │ ├── api_op_AdvertiseByoipCidr.go │ │ │ ├── api_op_AllocateAddress.go │ │ │ ├── api_op_AllocateHosts.go │ │ │ ├── api_op_AllocateIpamPoolCidr.go │ │ │ ├── api_op_ApplySecurityGroupsToClientVpnTargetNetwork.go │ │ │ ├── api_op_AssignIpv6Addresses.go │ │ │ ├── api_op_AssignPrivateIpAddresses.go │ │ │ ├── api_op_AssignPrivateNatGatewayAddress.go │ │ │ ├── api_op_AssociateAddress.go │ │ │ ├── api_op_AssociateClientVpnTargetNetwork.go │ │ │ ├── api_op_AssociateDhcpOptions.go │ │ │ ├── api_op_AssociateEnclaveCertificateIamRole.go │ │ │ ├── api_op_AssociateIamInstanceProfile.go │ │ │ ├── api_op_AssociateInstanceEventWindow.go │ │ │ ├── api_op_AssociateIpamByoasn.go │ │ │ ├── api_op_AssociateIpamResourceDiscovery.go │ │ │ ├── api_op_AssociateNatGatewayAddress.go │ │ │ ├── api_op_AssociateRouteTable.go │ │ │ ├── api_op_AssociateSubnetCidrBlock.go │ │ │ ├── api_op_AssociateTransitGatewayMulticastDomain.go │ │ │ ├── api_op_AssociateTransitGatewayPolicyTable.go │ │ │ ├── api_op_AssociateTransitGatewayRouteTable.go │ │ │ ├── api_op_AssociateTrunkInterface.go │ │ │ ├── api_op_AssociateVpcCidrBlock.go │ │ │ ├── api_op_AttachClassicLinkVpc.go │ │ │ ├── api_op_AttachInternetGateway.go │ │ │ ├── api_op_AttachNetworkInterface.go │ │ │ ├── api_op_AttachVerifiedAccessTrustProvider.go │ │ │ ├── api_op_AttachVolume.go │ │ │ ├── api_op_AttachVpnGateway.go │ │ │ ├── api_op_AuthorizeClientVpnIngress.go │ │ │ ├── api_op_AuthorizeSecurityGroupEgress.go │ │ │ ├── api_op_AuthorizeSecurityGroupIngress.go │ │ │ ├── api_op_BundleInstance.go │ │ │ ├── api_op_CancelBundleTask.go │ │ │ ├── api_op_CancelCapacityReservation.go │ │ │ ├── api_op_CancelCapacityReservationFleets.go │ │ │ ├── api_op_CancelConversionTask.go │ │ │ ├── api_op_CancelExportTask.go │ │ │ ├── api_op_CancelImageLaunchPermission.go │ │ │ ├── api_op_CancelImportTask.go │ │ │ ├── api_op_CancelReservedInstancesListing.go │ │ │ ├── api_op_CancelSpotFleetRequests.go │ │ │ ├── api_op_CancelSpotInstanceRequests.go │ │ │ ├── api_op_ConfirmProductInstance.go │ │ │ ├── api_op_CopyFpgaImage.go │ │ │ ├── api_op_CopyImage.go │ │ │ ├── api_op_CopySnapshot.go │ │ │ ├── api_op_CreateCapacityReservation.go │ │ │ ├── api_op_CreateCapacityReservationBySplitting.go │ │ │ ├── api_op_CreateCapacityReservationFleet.go │ │ │ ├── api_op_CreateCarrierGateway.go │ │ │ ├── api_op_CreateClientVpnEndpoint.go │ │ │ ├── api_op_CreateClientVpnRoute.go │ │ │ ├── api_op_CreateCoipCidr.go │ │ │ ├── api_op_CreateCoipPool.go │ │ │ ├── api_op_CreateCustomerGateway.go │ │ │ ├── api_op_CreateDefaultSubnet.go │ │ │ ├── api_op_CreateDefaultVpc.go │ │ │ ├── api_op_CreateDhcpOptions.go │ │ │ ├── api_op_CreateEgressOnlyInternetGateway.go │ │ │ ├── api_op_CreateFleet.go │ │ │ ├── api_op_CreateFlowLogs.go │ │ │ ├── api_op_CreateFpgaImage.go │ │ │ ├── api_op_CreateImage.go │ │ │ ├── api_op_CreateInstanceConnectEndpoint.go │ │ │ ├── api_op_CreateInstanceEventWindow.go │ │ │ ├── api_op_CreateInstanceExportTask.go │ │ │ ├── api_op_CreateInternetGateway.go │ │ │ ├── api_op_CreateIpam.go │ │ │ ├── api_op_CreateIpamExternalResourceVerificationToken.go │ │ │ ├── api_op_CreateIpamPool.go │ │ │ ├── api_op_CreateIpamResourceDiscovery.go │ │ │ ├── api_op_CreateIpamScope.go │ │ │ ├── api_op_CreateKeyPair.go │ │ │ ├── api_op_CreateLaunchTemplate.go │ │ │ ├── api_op_CreateLaunchTemplateVersion.go │ │ │ ├── api_op_CreateLocalGatewayRoute.go │ │ │ ├── api_op_CreateLocalGatewayRouteTable.go │ │ │ ├── api_op_CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociation.go │ │ │ ├── api_op_CreateLocalGatewayRouteTableVpcAssociation.go │ │ │ ├── api_op_CreateManagedPrefixList.go │ │ │ ├── api_op_CreateNatGateway.go │ │ │ ├── api_op_CreateNetworkAcl.go │ │ │ ├── api_op_CreateNetworkAclEntry.go │ │ │ ├── api_op_CreateNetworkInsightsAccessScope.go │ │ │ ├── api_op_CreateNetworkInsightsPath.go │ │ │ ├── api_op_CreateNetworkInterface.go │ │ │ ├── api_op_CreateNetworkInterfacePermission.go │ │ │ ├── api_op_CreatePlacementGroup.go │ │ │ ├── api_op_CreatePublicIpv4Pool.go │ │ │ ├── api_op_CreateReplaceRootVolumeTask.go │ │ │ ├── api_op_CreateReservedInstancesListing.go │ │ │ ├── api_op_CreateRestoreImageTask.go │ │ │ ├── api_op_CreateRoute.go │ │ │ ├── api_op_CreateRouteTable.go │ │ │ ├── api_op_CreateSecurityGroup.go │ │ │ ├── api_op_CreateSnapshot.go │ │ │ ├── api_op_CreateSnapshots.go │ │ │ ├── api_op_CreateSpotDatafeedSubscription.go │ │ │ ├── api_op_CreateStoreImageTask.go │ │ │ ├── api_op_CreateSubnet.go │ │ │ ├── api_op_CreateSubnetCidrReservation.go │ │ │ ├── api_op_CreateTags.go │ │ │ ├── api_op_CreateTrafficMirrorFilter.go │ │ │ ├── api_op_CreateTrafficMirrorFilterRule.go │ │ │ ├── api_op_CreateTrafficMirrorSession.go │ │ │ ├── api_op_CreateTrafficMirrorTarget.go │ │ │ ├── api_op_CreateTransitGateway.go │ │ │ ├── api_op_CreateTransitGatewayConnect.go │ │ │ ├── api_op_CreateTransitGatewayConnectPeer.go │ │ │ ├── api_op_CreateTransitGatewayMulticastDomain.go │ │ │ ├── api_op_CreateTransitGatewayPeeringAttachment.go │ │ │ ├── api_op_CreateTransitGatewayPolicyTable.go │ │ │ ├── api_op_CreateTransitGatewayPrefixListReference.go │ │ │ ├── api_op_CreateTransitGatewayRoute.go │ │ │ ├── api_op_CreateTransitGatewayRouteTable.go │ │ │ ├── api_op_CreateTransitGatewayRouteTableAnnouncement.go │ │ │ ├── api_op_CreateTransitGatewayVpcAttachment.go │ │ │ ├── api_op_CreateVerifiedAccessEndpoint.go │ │ │ ├── api_op_CreateVerifiedAccessGroup.go │ │ │ ├── api_op_CreateVerifiedAccessInstance.go │ │ │ ├── api_op_CreateVerifiedAccessTrustProvider.go │ │ │ ├── api_op_CreateVolume.go │ │ │ ├── api_op_CreateVpc.go │ │ │ ├── api_op_CreateVpcEndpoint.go │ │ │ ├── api_op_CreateVpcEndpointConnectionNotification.go │ │ │ ├── api_op_CreateVpcEndpointServiceConfiguration.go │ │ │ ├── api_op_CreateVpcPeeringConnection.go │ │ │ ├── api_op_CreateVpnConnection.go │ │ │ ├── api_op_CreateVpnConnectionRoute.go │ │ │ ├── api_op_CreateVpnGateway.go │ │ │ ├── api_op_DeleteCarrierGateway.go │ │ │ ├── api_op_DeleteClientVpnEndpoint.go │ │ │ ├── api_op_DeleteClientVpnRoute.go │ │ │ ├── api_op_DeleteCoipCidr.go │ │ │ ├── api_op_DeleteCoipPool.go │ │ │ ├── api_op_DeleteCustomerGateway.go │ │ │ ├── api_op_DeleteDhcpOptions.go │ │ │ ├── api_op_DeleteEgressOnlyInternetGateway.go │ │ │ ├── api_op_DeleteFleets.go │ │ │ ├── api_op_DeleteFlowLogs.go │ │ │ ├── api_op_DeleteFpgaImage.go │ │ │ ├── api_op_DeleteInstanceConnectEndpoint.go │ │ │ ├── api_op_DeleteInstanceEventWindow.go │ │ │ ├── api_op_DeleteInternetGateway.go │ │ │ ├── api_op_DeleteIpam.go │ │ │ ├── api_op_DeleteIpamExternalResourceVerificationToken.go │ │ │ ├── api_op_DeleteIpamPool.go │ │ │ ├── api_op_DeleteIpamResourceDiscovery.go │ │ │ ├── api_op_DeleteIpamScope.go │ │ │ ├── api_op_DeleteKeyPair.go │ │ │ ├── api_op_DeleteLaunchTemplate.go │ │ │ ├── api_op_DeleteLaunchTemplateVersions.go │ │ │ ├── api_op_DeleteLocalGatewayRoute.go │ │ │ ├── api_op_DeleteLocalGatewayRouteTable.go │ │ │ ├── api_op_DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociation.go │ │ │ ├── api_op_DeleteLocalGatewayRouteTableVpcAssociation.go │ │ │ ├── api_op_DeleteManagedPrefixList.go │ │ │ ├── api_op_DeleteNatGateway.go │ │ │ ├── api_op_DeleteNetworkAcl.go │ │ │ ├── api_op_DeleteNetworkAclEntry.go │ │ │ ├── api_op_DeleteNetworkInsightsAccessScope.go │ │ │ ├── api_op_DeleteNetworkInsightsAccessScopeAnalysis.go │ │ │ ├── api_op_DeleteNetworkInsightsAnalysis.go │ │ │ ├── api_op_DeleteNetworkInsightsPath.go │ │ │ ├── api_op_DeleteNetworkInterface.go │ │ │ ├── api_op_DeleteNetworkInterfacePermission.go │ │ │ ├── api_op_DeletePlacementGroup.go │ │ │ ├── api_op_DeletePublicIpv4Pool.go │ │ │ ├── api_op_DeleteQueuedReservedInstances.go │ │ │ ├── api_op_DeleteRoute.go │ │ │ ├── api_op_DeleteRouteTable.go │ │ │ ├── api_op_DeleteSecurityGroup.go │ │ │ ├── api_op_DeleteSnapshot.go │ │ │ ├── api_op_DeleteSpotDatafeedSubscription.go │ │ │ ├── api_op_DeleteSubnet.go │ │ │ ├── api_op_DeleteSubnetCidrReservation.go │ │ │ ├── api_op_DeleteTags.go │ │ │ ├── api_op_DeleteTrafficMirrorFilter.go │ │ │ ├── api_op_DeleteTrafficMirrorFilterRule.go │ │ │ ├── api_op_DeleteTrafficMirrorSession.go │ │ │ ├── api_op_DeleteTrafficMirrorTarget.go │ │ │ ├── api_op_DeleteTransitGateway.go │ │ │ ├── api_op_DeleteTransitGatewayConnect.go │ │ │ ├── api_op_DeleteTransitGatewayConnectPeer.go │ │ │ ├── api_op_DeleteTransitGatewayMulticastDomain.go │ │ │ ├── api_op_DeleteTransitGatewayPeeringAttachment.go │ │ │ ├── api_op_DeleteTransitGatewayPolicyTable.go │ │ │ ├── api_op_DeleteTransitGatewayPrefixListReference.go │ │ │ ├── api_op_DeleteTransitGatewayRoute.go │ │ │ ├── api_op_DeleteTransitGatewayRouteTable.go │ │ │ ├── api_op_DeleteTransitGatewayRouteTableAnnouncement.go │ │ │ ├── api_op_DeleteTransitGatewayVpcAttachment.go │ │ │ ├── api_op_DeleteVerifiedAccessEndpoint.go │ │ │ ├── api_op_DeleteVerifiedAccessGroup.go │ │ │ ├── api_op_DeleteVerifiedAccessInstance.go │ │ │ ├── api_op_DeleteVerifiedAccessTrustProvider.go │ │ │ ├── api_op_DeleteVolume.go │ │ │ ├── api_op_DeleteVpc.go │ │ │ ├── api_op_DeleteVpcEndpointConnectionNotifications.go │ │ │ ├── api_op_DeleteVpcEndpointServiceConfigurations.go │ │ │ ├── api_op_DeleteVpcEndpoints.go │ │ │ ├── api_op_DeleteVpcPeeringConnection.go │ │ │ ├── api_op_DeleteVpnConnection.go │ │ │ ├── api_op_DeleteVpnConnectionRoute.go │ │ │ ├── api_op_DeleteVpnGateway.go │ │ │ ├── api_op_DeprovisionByoipCidr.go │ │ │ ├── api_op_DeprovisionIpamByoasn.go │ │ │ ├── api_op_DeprovisionIpamPoolCidr.go │ │ │ ├── api_op_DeprovisionPublicIpv4PoolCidr.go │ │ │ ├── api_op_DeregisterImage.go │ │ │ ├── api_op_DeregisterInstanceEventNotificationAttributes.go │ │ │ ├── api_op_DeregisterTransitGatewayMulticastGroupMembers.go │ │ │ ├── api_op_DeregisterTransitGatewayMulticastGroupSources.go │ │ │ ├── api_op_DescribeAccountAttributes.go │ │ │ ├── api_op_DescribeAddressTransfers.go │ │ │ ├── api_op_DescribeAddresses.go │ │ │ ├── api_op_DescribeAddressesAttribute.go │ │ │ ├── api_op_DescribeAggregateIdFormat.go │ │ │ ├── api_op_DescribeAvailabilityZones.go │ │ │ ├── api_op_DescribeAwsNetworkPerformanceMetricSubscriptions.go │ │ │ ├── api_op_DescribeBundleTasks.go │ │ │ ├── api_op_DescribeByoipCidrs.go │ │ │ ├── api_op_DescribeCapacityBlockOfferings.go │ │ │ ├── api_op_DescribeCapacityReservationFleets.go │ │ │ ├── api_op_DescribeCapacityReservations.go │ │ │ ├── api_op_DescribeCarrierGateways.go │ │ │ ├── api_op_DescribeClassicLinkInstances.go │ │ │ ├── api_op_DescribeClientVpnAuthorizationRules.go │ │ │ ├── api_op_DescribeClientVpnConnections.go │ │ │ ├── api_op_DescribeClientVpnEndpoints.go │ │ │ ├── api_op_DescribeClientVpnRoutes.go │ │ │ ├── api_op_DescribeClientVpnTargetNetworks.go │ │ │ ├── api_op_DescribeCoipPools.go │ │ │ ├── api_op_DescribeConversionTasks.go │ │ │ ├── api_op_DescribeCustomerGateways.go │ │ │ ├── api_op_DescribeDhcpOptions.go │ │ │ ├── api_op_DescribeEgressOnlyInternetGateways.go │ │ │ ├── api_op_DescribeElasticGpus.go │ │ │ ├── api_op_DescribeExportImageTasks.go │ │ │ ├── api_op_DescribeExportTasks.go │ │ │ ├── api_op_DescribeFastLaunchImages.go │ │ │ ├── api_op_DescribeFastSnapshotRestores.go │ │ │ ├── api_op_DescribeFleetHistory.go │ │ │ ├── api_op_DescribeFleetInstances.go │ │ │ ├── api_op_DescribeFleets.go │ │ │ ├── api_op_DescribeFlowLogs.go │ │ │ ├── api_op_DescribeFpgaImageAttribute.go │ │ │ ├── api_op_DescribeFpgaImages.go │ │ │ ├── api_op_DescribeHostReservationOfferings.go │ │ │ ├── api_op_DescribeHostReservations.go │ │ │ ├── api_op_DescribeHosts.go │ │ │ ├── api_op_DescribeIamInstanceProfileAssociations.go │ │ │ ├── api_op_DescribeIdFormat.go │ │ │ ├── api_op_DescribeIdentityIdFormat.go │ │ │ ├── api_op_DescribeImageAttribute.go │ │ │ ├── api_op_DescribeImages.go │ │ │ ├── api_op_DescribeImportImageTasks.go │ │ │ ├── api_op_DescribeImportSnapshotTasks.go │ │ │ ├── api_op_DescribeInstanceAttribute.go │ │ │ ├── api_op_DescribeInstanceConnectEndpoints.go │ │ │ ├── api_op_DescribeInstanceCreditSpecifications.go │ │ │ ├── api_op_DescribeInstanceEventNotificationAttributes.go │ │ │ ├── api_op_DescribeInstanceEventWindows.go │ │ │ ├── api_op_DescribeInstanceStatus.go │ │ │ ├── api_op_DescribeInstanceTopology.go │ │ │ ├── api_op_DescribeInstanceTypeOfferings.go │ │ │ ├── api_op_DescribeInstanceTypes.go │ │ │ ├── api_op_DescribeInstances.go │ │ │ ├── api_op_DescribeInternetGateways.go │ │ │ ├── api_op_DescribeIpamByoasn.go │ │ │ ├── api_op_DescribeIpamExternalResourceVerificationTokens.go │ │ │ ├── api_op_DescribeIpamPools.go │ │ │ ├── api_op_DescribeIpamResourceDiscoveries.go │ │ │ ├── api_op_DescribeIpamResourceDiscoveryAssociations.go │ │ │ ├── api_op_DescribeIpamScopes.go │ │ │ ├── api_op_DescribeIpams.go │ │ │ ├── api_op_DescribeIpv6Pools.go │ │ │ ├── api_op_DescribeKeyPairs.go │ │ │ ├── api_op_DescribeLaunchTemplateVersions.go │ │ │ ├── api_op_DescribeLaunchTemplates.go │ │ │ ├── api_op_DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociations.go │ │ │ ├── api_op_DescribeLocalGatewayRouteTableVpcAssociations.go │ │ │ ├── api_op_DescribeLocalGatewayRouteTables.go │ │ │ ├── api_op_DescribeLocalGatewayVirtualInterfaceGroups.go │ │ │ ├── api_op_DescribeLocalGatewayVirtualInterfaces.go │ │ │ ├── api_op_DescribeLocalGateways.go │ │ │ ├── api_op_DescribeLockedSnapshots.go │ │ │ ├── api_op_DescribeMacHosts.go │ │ │ ├── api_op_DescribeManagedPrefixLists.go │ │ │ ├── api_op_DescribeMovingAddresses.go │ │ │ ├── api_op_DescribeNatGateways.go │ │ │ ├── api_op_DescribeNetworkAcls.go │ │ │ ├── api_op_DescribeNetworkInsightsAccessScopeAnalyses.go │ │ │ ├── api_op_DescribeNetworkInsightsAccessScopes.go │ │ │ ├── api_op_DescribeNetworkInsightsAnalyses.go │ │ │ ├── api_op_DescribeNetworkInsightsPaths.go │ │ │ ├── api_op_DescribeNetworkInterfaceAttribute.go │ │ │ ├── api_op_DescribeNetworkInterfacePermissions.go │ │ │ ├── api_op_DescribeNetworkInterfaces.go │ │ │ ├── api_op_DescribePlacementGroups.go │ │ │ ├── api_op_DescribePrefixLists.go │ │ │ ├── api_op_DescribePrincipalIdFormat.go │ │ │ ├── api_op_DescribePublicIpv4Pools.go │ │ │ ├── api_op_DescribeRegions.go │ │ │ ├── api_op_DescribeReplaceRootVolumeTasks.go │ │ │ ├── api_op_DescribeReservedInstances.go │ │ │ ├── api_op_DescribeReservedInstancesListings.go │ │ │ ├── api_op_DescribeReservedInstancesModifications.go │ │ │ ├── api_op_DescribeReservedInstancesOfferings.go │ │ │ ├── api_op_DescribeRouteTables.go │ │ │ ├── api_op_DescribeScheduledInstanceAvailability.go │ │ │ ├── api_op_DescribeScheduledInstances.go │ │ │ ├── api_op_DescribeSecurityGroupReferences.go │ │ │ ├── api_op_DescribeSecurityGroupRules.go │ │ │ ├── api_op_DescribeSecurityGroups.go │ │ │ ├── api_op_DescribeSnapshotAttribute.go │ │ │ ├── api_op_DescribeSnapshotTierStatus.go │ │ │ ├── api_op_DescribeSnapshots.go │ │ │ ├── api_op_DescribeSpotDatafeedSubscription.go │ │ │ ├── api_op_DescribeSpotFleetInstances.go │ │ │ ├── api_op_DescribeSpotFleetRequestHistory.go │ │ │ ├── api_op_DescribeSpotFleetRequests.go │ │ │ ├── api_op_DescribeSpotInstanceRequests.go │ │ │ ├── api_op_DescribeSpotPriceHistory.go │ │ │ ├── api_op_DescribeStaleSecurityGroups.go │ │ │ ├── api_op_DescribeStoreImageTasks.go │ │ │ ├── api_op_DescribeSubnets.go │ │ │ ├── api_op_DescribeTags.go │ │ │ ├── api_op_DescribeTrafficMirrorFilterRules.go │ │ │ ├── api_op_DescribeTrafficMirrorFilters.go │ │ │ ├── api_op_DescribeTrafficMirrorSessions.go │ │ │ ├── api_op_DescribeTrafficMirrorTargets.go │ │ │ ├── api_op_DescribeTransitGatewayAttachments.go │ │ │ ├── api_op_DescribeTransitGatewayConnectPeers.go │ │ │ ├── api_op_DescribeTransitGatewayConnects.go │ │ │ ├── api_op_DescribeTransitGatewayMulticastDomains.go │ │ │ ├── api_op_DescribeTransitGatewayPeeringAttachments.go │ │ │ ├── api_op_DescribeTransitGatewayPolicyTables.go │ │ │ ├── api_op_DescribeTransitGatewayRouteTableAnnouncements.go │ │ │ ├── api_op_DescribeTransitGatewayRouteTables.go │ │ │ ├── api_op_DescribeTransitGatewayVpcAttachments.go │ │ │ ├── api_op_DescribeTransitGateways.go │ │ │ ├── api_op_DescribeTrunkInterfaceAssociations.go │ │ │ ├── api_op_DescribeVerifiedAccessEndpoints.go │ │ │ ├── api_op_DescribeVerifiedAccessGroups.go │ │ │ ├── api_op_DescribeVerifiedAccessInstanceLoggingConfigurations.go │ │ │ ├── api_op_DescribeVerifiedAccessInstances.go │ │ │ ├── api_op_DescribeVerifiedAccessTrustProviders.go │ │ │ ├── api_op_DescribeVolumeAttribute.go │ │ │ ├── api_op_DescribeVolumeStatus.go │ │ │ ├── api_op_DescribeVolumes.go │ │ │ ├── api_op_DescribeVolumesModifications.go │ │ │ ├── api_op_DescribeVpcAttribute.go │ │ │ ├── api_op_DescribeVpcClassicLink.go │ │ │ ├── api_op_DescribeVpcClassicLinkDnsSupport.go │ │ │ ├── api_op_DescribeVpcEndpointConnectionNotifications.go │ │ │ ├── api_op_DescribeVpcEndpointConnections.go │ │ │ ├── api_op_DescribeVpcEndpointServiceConfigurations.go │ │ │ ├── api_op_DescribeVpcEndpointServicePermissions.go │ │ │ ├── api_op_DescribeVpcEndpointServices.go │ │ │ ├── api_op_DescribeVpcEndpoints.go │ │ │ ├── api_op_DescribeVpcPeeringConnections.go │ │ │ ├── api_op_DescribeVpcs.go │ │ │ ├── api_op_DescribeVpnConnections.go │ │ │ ├── api_op_DescribeVpnGateways.go │ │ │ ├── api_op_DetachClassicLinkVpc.go │ │ │ ├── api_op_DetachInternetGateway.go │ │ │ ├── api_op_DetachNetworkInterface.go │ │ │ ├── api_op_DetachVerifiedAccessTrustProvider.go │ │ │ ├── api_op_DetachVolume.go │ │ │ ├── api_op_DetachVpnGateway.go │ │ │ ├── api_op_DisableAddressTransfer.go │ │ │ ├── api_op_DisableAwsNetworkPerformanceMetricSubscription.go │ │ │ ├── api_op_DisableEbsEncryptionByDefault.go │ │ │ ├── api_op_DisableFastLaunch.go │ │ │ ├── api_op_DisableFastSnapshotRestores.go │ │ │ ├── api_op_DisableImage.go │ │ │ ├── api_op_DisableImageBlockPublicAccess.go │ │ │ ├── api_op_DisableImageDeprecation.go │ │ │ ├── api_op_DisableImageDeregistrationProtection.go │ │ │ ├── api_op_DisableIpamOrganizationAdminAccount.go │ │ │ ├── api_op_DisableSerialConsoleAccess.go │ │ │ ├── api_op_DisableSnapshotBlockPublicAccess.go │ │ │ ├── api_op_DisableTransitGatewayRouteTablePropagation.go │ │ │ ├── api_op_DisableVgwRoutePropagation.go │ │ │ ├── api_op_DisableVpcClassicLink.go │ │ │ ├── api_op_DisableVpcClassicLinkDnsSupport.go │ │ │ ├── api_op_DisassociateAddress.go │ │ │ ├── api_op_DisassociateClientVpnTargetNetwork.go │ │ │ ├── api_op_DisassociateEnclaveCertificateIamRole.go │ │ │ ├── api_op_DisassociateIamInstanceProfile.go │ │ │ ├── api_op_DisassociateInstanceEventWindow.go │ │ │ ├── api_op_DisassociateIpamByoasn.go │ │ │ ├── api_op_DisassociateIpamResourceDiscovery.go │ │ │ ├── api_op_DisassociateNatGatewayAddress.go │ │ │ ├── api_op_DisassociateRouteTable.go │ │ │ ├── api_op_DisassociateSubnetCidrBlock.go │ │ │ ├── api_op_DisassociateTransitGatewayMulticastDomain.go │ │ │ ├── api_op_DisassociateTransitGatewayPolicyTable.go │ │ │ ├── api_op_DisassociateTransitGatewayRouteTable.go │ │ │ ├── api_op_DisassociateTrunkInterface.go │ │ │ ├── api_op_DisassociateVpcCidrBlock.go │ │ │ ├── api_op_EnableAddressTransfer.go │ │ │ ├── api_op_EnableAwsNetworkPerformanceMetricSubscription.go │ │ │ ├── api_op_EnableEbsEncryptionByDefault.go │ │ │ ├── api_op_EnableFastLaunch.go │ │ │ ├── api_op_EnableFastSnapshotRestores.go │ │ │ ├── api_op_EnableImage.go │ │ │ ├── api_op_EnableImageBlockPublicAccess.go │ │ │ ├── api_op_EnableImageDeprecation.go │ │ │ ├── api_op_EnableImageDeregistrationProtection.go │ │ │ ├── api_op_EnableIpamOrganizationAdminAccount.go │ │ │ ├── api_op_EnableReachabilityAnalyzerOrganizationSharing.go │ │ │ ├── api_op_EnableSerialConsoleAccess.go │ │ │ ├── api_op_EnableSnapshotBlockPublicAccess.go │ │ │ ├── api_op_EnableTransitGatewayRouteTablePropagation.go │ │ │ ├── api_op_EnableVgwRoutePropagation.go │ │ │ ├── api_op_EnableVolumeIO.go │ │ │ ├── api_op_EnableVpcClassicLink.go │ │ │ ├── api_op_EnableVpcClassicLinkDnsSupport.go │ │ │ ├── api_op_ExportClientVpnClientCertificateRevocationList.go │ │ │ ├── api_op_ExportClientVpnClientConfiguration.go │ │ │ ├── api_op_ExportImage.go │ │ │ ├── api_op_ExportTransitGatewayRoutes.go │ │ │ ├── api_op_GetAssociatedEnclaveCertificateIamRoles.go │ │ │ ├── api_op_GetAssociatedIpv6PoolCidrs.go │ │ │ ├── api_op_GetAwsNetworkPerformanceData.go │ │ │ ├── api_op_GetCapacityReservationUsage.go │ │ │ ├── api_op_GetCoipPoolUsage.go │ │ │ ├── api_op_GetConsoleOutput.go │ │ │ ├── api_op_GetConsoleScreenshot.go │ │ │ ├── api_op_GetDefaultCreditSpecification.go │ │ │ ├── api_op_GetEbsDefaultKmsKeyId.go │ │ │ ├── api_op_GetEbsEncryptionByDefault.go │ │ │ ├── api_op_GetFlowLogsIntegrationTemplate.go │ │ │ ├── api_op_GetGroupsForCapacityReservation.go │ │ │ ├── api_op_GetHostReservationPurchasePreview.go │ │ │ ├── api_op_GetImageBlockPublicAccessState.go │ │ │ ├── api_op_GetInstanceMetadataDefaults.go │ │ │ ├── api_op_GetInstanceTpmEkPub.go │ │ │ ├── api_op_GetInstanceTypesFromInstanceRequirements.go │ │ │ ├── api_op_GetInstanceUefiData.go │ │ │ ├── api_op_GetIpamAddressHistory.go │ │ │ ├── api_op_GetIpamDiscoveredAccounts.go │ │ │ ├── api_op_GetIpamDiscoveredPublicAddresses.go │ │ │ ├── api_op_GetIpamDiscoveredResourceCidrs.go │ │ │ ├── api_op_GetIpamPoolAllocations.go │ │ │ ├── api_op_GetIpamPoolCidrs.go │ │ │ ├── api_op_GetIpamResourceCidrs.go │ │ │ ├── api_op_GetLaunchTemplateData.go │ │ │ ├── api_op_GetManagedPrefixListAssociations.go │ │ │ ├── api_op_GetManagedPrefixListEntries.go │ │ │ ├── api_op_GetNetworkInsightsAccessScopeAnalysisFindings.go │ │ │ ├── api_op_GetNetworkInsightsAccessScopeContent.go │ │ │ ├── api_op_GetPasswordData.go │ │ │ ├── api_op_GetReservedInstancesExchangeQuote.go │ │ │ ├── api_op_GetSecurityGroupsForVpc.go │ │ │ ├── api_op_GetSerialConsoleAccessStatus.go │ │ │ ├── api_op_GetSnapshotBlockPublicAccessState.go │ │ │ ├── api_op_GetSpotPlacementScores.go │ │ │ ├── api_op_GetSubnetCidrReservations.go │ │ │ ├── api_op_GetTransitGatewayAttachmentPropagations.go │ │ │ ├── api_op_GetTransitGatewayMulticastDomainAssociations.go │ │ │ ├── api_op_GetTransitGatewayPolicyTableAssociations.go │ │ │ ├── api_op_GetTransitGatewayPolicyTableEntries.go │ │ │ ├── api_op_GetTransitGatewayPrefixListReferences.go │ │ │ ├── api_op_GetTransitGatewayRouteTableAssociations.go │ │ │ ├── api_op_GetTransitGatewayRouteTablePropagations.go │ │ │ ├── api_op_GetVerifiedAccessEndpointPolicy.go │ │ │ ├── api_op_GetVerifiedAccessGroupPolicy.go │ │ │ ├── api_op_GetVpnConnectionDeviceSampleConfiguration.go │ │ │ ├── api_op_GetVpnConnectionDeviceTypes.go │ │ │ ├── api_op_GetVpnTunnelReplacementStatus.go │ │ │ ├── api_op_ImportClientVpnClientCertificateRevocationList.go │ │ │ ├── api_op_ImportImage.go │ │ │ ├── api_op_ImportInstance.go │ │ │ ├── api_op_ImportKeyPair.go │ │ │ ├── api_op_ImportSnapshot.go │ │ │ ├── api_op_ImportVolume.go │ │ │ ├── api_op_ListImagesInRecycleBin.go │ │ │ ├── api_op_ListSnapshotsInRecycleBin.go │ │ │ ├── api_op_LockSnapshot.go │ │ │ ├── api_op_ModifyAddressAttribute.go │ │ │ ├── api_op_ModifyAvailabilityZoneGroup.go │ │ │ ├── api_op_ModifyCapacityReservation.go │ │ │ ├── api_op_ModifyCapacityReservationFleet.go │ │ │ ├── api_op_ModifyClientVpnEndpoint.go │ │ │ ├── api_op_ModifyDefaultCreditSpecification.go │ │ │ ├── api_op_ModifyEbsDefaultKmsKeyId.go │ │ │ ├── api_op_ModifyFleet.go │ │ │ ├── api_op_ModifyFpgaImageAttribute.go │ │ │ ├── api_op_ModifyHosts.go │ │ │ ├── api_op_ModifyIdFormat.go │ │ │ ├── api_op_ModifyIdentityIdFormat.go │ │ │ ├── api_op_ModifyImageAttribute.go │ │ │ ├── api_op_ModifyInstanceAttribute.go │ │ │ ├── api_op_ModifyInstanceCapacityReservationAttributes.go │ │ │ ├── api_op_ModifyInstanceCreditSpecification.go │ │ │ ├── api_op_ModifyInstanceEventStartTime.go │ │ │ ├── api_op_ModifyInstanceEventWindow.go │ │ │ ├── api_op_ModifyInstanceMaintenanceOptions.go │ │ │ ├── api_op_ModifyInstanceMetadataDefaults.go │ │ │ ├── api_op_ModifyInstanceMetadataOptions.go │ │ │ ├── api_op_ModifyInstancePlacement.go │ │ │ ├── api_op_ModifyIpam.go │ │ │ ├── api_op_ModifyIpamPool.go │ │ │ ├── api_op_ModifyIpamResourceCidr.go │ │ │ ├── api_op_ModifyIpamResourceDiscovery.go │ │ │ ├── api_op_ModifyIpamScope.go │ │ │ ├── api_op_ModifyLaunchTemplate.go │ │ │ ├── api_op_ModifyLocalGatewayRoute.go │ │ │ ├── api_op_ModifyManagedPrefixList.go │ │ │ ├── api_op_ModifyNetworkInterfaceAttribute.go │ │ │ ├── api_op_ModifyPrivateDnsNameOptions.go │ │ │ ├── api_op_ModifyReservedInstances.go │ │ │ ├── api_op_ModifySecurityGroupRules.go │ │ │ ├── api_op_ModifySnapshotAttribute.go │ │ │ ├── api_op_ModifySnapshotTier.go │ │ │ ├── api_op_ModifySpotFleetRequest.go │ │ │ ├── api_op_ModifySubnetAttribute.go │ │ │ ├── api_op_ModifyTrafficMirrorFilterNetworkServices.go │ │ │ ├── api_op_ModifyTrafficMirrorFilterRule.go │ │ │ ├── api_op_ModifyTrafficMirrorSession.go │ │ │ ├── api_op_ModifyTransitGateway.go │ │ │ ├── api_op_ModifyTransitGatewayPrefixListReference.go │ │ │ ├── api_op_ModifyTransitGatewayVpcAttachment.go │ │ │ ├── api_op_ModifyVerifiedAccessEndpoint.go │ │ │ ├── api_op_ModifyVerifiedAccessEndpointPolicy.go │ │ │ ├── api_op_ModifyVerifiedAccessGroup.go │ │ │ ├── api_op_ModifyVerifiedAccessGroupPolicy.go │ │ │ ├── api_op_ModifyVerifiedAccessInstance.go │ │ │ ├── api_op_ModifyVerifiedAccessInstanceLoggingConfiguration.go │ │ │ ├── api_op_ModifyVerifiedAccessTrustProvider.go │ │ │ ├── api_op_ModifyVolume.go │ │ │ ├── api_op_ModifyVolumeAttribute.go │ │ │ ├── api_op_ModifyVpcAttribute.go │ │ │ ├── api_op_ModifyVpcEndpoint.go │ │ │ ├── api_op_ModifyVpcEndpointConnectionNotification.go │ │ │ ├── api_op_ModifyVpcEndpointServiceConfiguration.go │ │ │ ├── api_op_ModifyVpcEndpointServicePayerResponsibility.go │ │ │ ├── api_op_ModifyVpcEndpointServicePermissions.go │ │ │ ├── api_op_ModifyVpcPeeringConnectionOptions.go │ │ │ ├── api_op_ModifyVpcTenancy.go │ │ │ ├── api_op_ModifyVpnConnection.go │ │ │ ├── api_op_ModifyVpnConnectionOptions.go │ │ │ ├── api_op_ModifyVpnTunnelCertificate.go │ │ │ ├── api_op_ModifyVpnTunnelOptions.go │ │ │ ├── api_op_MonitorInstances.go │ │ │ ├── api_op_MoveAddressToVpc.go │ │ │ ├── api_op_MoveByoipCidrToIpam.go │ │ │ ├── api_op_MoveCapacityReservationInstances.go │ │ │ ├── api_op_ProvisionByoipCidr.go │ │ │ ├── api_op_ProvisionIpamByoasn.go │ │ │ ├── api_op_ProvisionIpamPoolCidr.go │ │ │ ├── api_op_ProvisionPublicIpv4PoolCidr.go │ │ │ ├── api_op_PurchaseCapacityBlock.go │ │ │ ├── api_op_PurchaseHostReservation.go │ │ │ ├── api_op_PurchaseReservedInstancesOffering.go │ │ │ ├── api_op_PurchaseScheduledInstances.go │ │ │ ├── api_op_RebootInstances.go │ │ │ ├── api_op_RegisterImage.go │ │ │ ├── api_op_RegisterInstanceEventNotificationAttributes.go │ │ │ ├── api_op_RegisterTransitGatewayMulticastGroupMembers.go │ │ │ ├── api_op_RegisterTransitGatewayMulticastGroupSources.go │ │ │ ├── api_op_RejectTransitGatewayMulticastDomainAssociations.go │ │ │ ├── api_op_RejectTransitGatewayPeeringAttachment.go │ │ │ ├── api_op_RejectTransitGatewayVpcAttachment.go │ │ │ ├── api_op_RejectVpcEndpointConnections.go │ │ │ ├── api_op_RejectVpcPeeringConnection.go │ │ │ ├── api_op_ReleaseAddress.go │ │ │ ├── api_op_ReleaseHosts.go │ │ │ ├── api_op_ReleaseIpamPoolAllocation.go │ │ │ ├── api_op_ReplaceIamInstanceProfileAssociation.go │ │ │ ├── api_op_ReplaceNetworkAclAssociation.go │ │ │ ├── api_op_ReplaceNetworkAclEntry.go │ │ │ ├── api_op_ReplaceRoute.go │ │ │ ├── api_op_ReplaceRouteTableAssociation.go │ │ │ ├── api_op_ReplaceTransitGatewayRoute.go │ │ │ ├── api_op_ReplaceVpnTunnel.go │ │ │ ├── api_op_ReportInstanceStatus.go │ │ │ ├── api_op_RequestSpotFleet.go │ │ │ ├── api_op_RequestSpotInstances.go │ │ │ ├── api_op_ResetAddressAttribute.go │ │ │ ├── api_op_ResetEbsDefaultKmsKeyId.go │ │ │ ├── api_op_ResetFpgaImageAttribute.go │ │ │ ├── api_op_ResetImageAttribute.go │ │ │ ├── api_op_ResetInstanceAttribute.go │ │ │ ├── api_op_ResetNetworkInterfaceAttribute.go │ │ │ ├── api_op_ResetSnapshotAttribute.go │ │ │ ├── api_op_RestoreAddressToClassic.go │ │ │ ├── api_op_RestoreImageFromRecycleBin.go │ │ │ ├── api_op_RestoreManagedPrefixListVersion.go │ │ │ ├── api_op_RestoreSnapshotFromRecycleBin.go │ │ │ ├── api_op_RestoreSnapshotTier.go │ │ │ ├── api_op_RevokeClientVpnIngress.go │ │ │ ├── api_op_RevokeSecurityGroupEgress.go │ │ │ ├── api_op_RevokeSecurityGroupIngress.go │ │ │ ├── api_op_RunInstances.go │ │ │ ├── api_op_RunScheduledInstances.go │ │ │ ├── api_op_SearchLocalGatewayRoutes.go │ │ │ ├── api_op_SearchTransitGatewayMulticastGroups.go │ │ │ ├── api_op_SearchTransitGatewayRoutes.go │ │ │ ├── api_op_SendDiagnosticInterrupt.go │ │ │ ├── api_op_StartInstances.go │ │ │ ├── api_op_StartNetworkInsightsAccessScopeAnalysis.go │ │ │ ├── api_op_StartNetworkInsightsAnalysis.go │ │ │ ├── api_op_StartVpcEndpointServicePrivateDnsVerification.go │ │ │ ├── api_op_StopInstances.go │ │ │ ├── api_op_TerminateClientVpnConnections.go │ │ │ ├── api_op_TerminateInstances.go │ │ │ ├── api_op_UnassignIpv6Addresses.go │ │ │ ├── api_op_UnassignPrivateIpAddresses.go │ │ │ ├── api_op_UnassignPrivateNatGatewayAddress.go │ │ │ ├── api_op_UnlockSnapshot.go │ │ │ ├── api_op_UnmonitorInstances.go │ │ │ ├── api_op_UpdateSecurityGroupRuleDescriptionsEgress.go │ │ │ ├── api_op_UpdateSecurityGroupRuleDescriptionsIngress.go │ │ │ ├── api_op_WithdrawByoipCidr.go │ │ │ ├── auth.go │ │ │ ├── deserializers.go │ │ │ ├── doc.go │ │ │ ├── endpoints.go │ │ │ ├── generated.json │ │ │ ├── go_module_metadata.go │ │ │ ├── internal │ │ │ │ └── endpoints │ │ │ │ │ └── endpoints.go │ │ │ ├── options.go │ │ │ ├── serializers.go │ │ │ ├── types │ │ │ │ ├── enums.go │ │ │ │ └── types.go │ │ │ └── validators.go │ │ │ ├── internal │ │ │ ├── accept-encoding │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── LICENSE.txt │ │ │ │ ├── accept_encoding_gzip.go │ │ │ │ ├── doc.go │ │ │ │ └── go_module_metadata.go │ │ │ └── presigned-url │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── LICENSE.txt │ │ │ │ ├── context.go │ │ │ │ ├── doc.go │ │ │ │ ├── go_module_metadata.go │ │ │ │ └── middleware.go │ │ │ ├── sso │ │ │ ├── CHANGELOG.md │ │ │ ├── LICENSE.txt │ │ │ ├── api_client.go │ │ │ ├── api_op_GetRoleCredentials.go │ │ │ ├── api_op_ListAccountRoles.go │ │ │ ├── api_op_ListAccounts.go │ │ │ ├── api_op_Logout.go │ │ │ ├── auth.go │ │ │ ├── deserializers.go │ │ │ ├── doc.go │ │ │ ├── endpoints.go │ │ │ ├── generated.json │ │ │ ├── go_module_metadata.go │ │ │ ├── internal │ │ │ │ └── endpoints │ │ │ │ │ └── endpoints.go │ │ │ ├── options.go │ │ │ ├── serializers.go │ │ │ ├── types │ │ │ │ ├── errors.go │ │ │ │ └── types.go │ │ │ └── validators.go │ │ │ ├── ssooidc │ │ │ ├── CHANGELOG.md │ │ │ ├── LICENSE.txt │ │ │ ├── api_client.go │ │ │ ├── api_op_CreateToken.go │ │ │ ├── api_op_CreateTokenWithIAM.go │ │ │ ├── api_op_RegisterClient.go │ │ │ ├── api_op_StartDeviceAuthorization.go │ │ │ ├── auth.go │ │ │ ├── deserializers.go │ │ │ ├── doc.go │ │ │ ├── endpoints.go │ │ │ ├── generated.json │ │ │ ├── go_module_metadata.go │ │ │ ├── internal │ │ │ │ └── endpoints │ │ │ │ │ └── endpoints.go │ │ │ ├── options.go │ │ │ ├── serializers.go │ │ │ ├── types │ │ │ │ ├── errors.go │ │ │ │ └── types.go │ │ │ └── validators.go │ │ │ └── sts │ │ │ ├── CHANGELOG.md │ │ │ ├── LICENSE.txt │ │ │ ├── api_client.go │ │ │ ├── api_op_AssumeRole.go │ │ │ ├── api_op_AssumeRoleWithSAML.go │ │ │ ├── api_op_AssumeRoleWithWebIdentity.go │ │ │ ├── api_op_DecodeAuthorizationMessage.go │ │ │ ├── api_op_GetAccessKeyInfo.go │ │ │ ├── api_op_GetCallerIdentity.go │ │ │ ├── api_op_GetFederationToken.go │ │ │ ├── api_op_GetSessionToken.go │ │ │ ├── auth.go │ │ │ ├── deserializers.go │ │ │ ├── doc.go │ │ │ ├── endpoints.go │ │ │ ├── generated.json │ │ │ ├── go_module_metadata.go │ │ │ ├── internal │ │ │ └── endpoints │ │ │ │ └── endpoints.go │ │ │ ├── options.go │ │ │ ├── serializers.go │ │ │ ├── types │ │ │ ├── errors.go │ │ │ └── types.go │ │ │ └── validators.go │ └── smithy-go │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── CHANGELOG.md │ │ ├── CODE_OF_CONDUCT.md │ │ ├── CONTRIBUTING.md │ │ ├── LICENSE │ │ ├── Makefile │ │ ├── NOTICE │ │ ├── README.md │ │ ├── auth │ │ ├── auth.go │ │ ├── bearer │ │ │ ├── docs.go │ │ │ ├── middleware.go │ │ │ ├── token.go │ │ │ └── token_cache.go │ │ ├── identity.go │ │ ├── option.go │ │ └── scheme_id.go │ │ ├── context │ │ └── suppress_expired.go │ │ ├── doc.go │ │ ├── document.go │ │ ├── document │ │ ├── doc.go │ │ ├── document.go │ │ └── errors.go │ │ ├── encoding │ │ ├── doc.go │ │ ├── encoding.go │ │ ├── httpbinding │ │ │ ├── encode.go │ │ │ ├── header.go │ │ │ ├── path_replace.go │ │ │ ├── query.go │ │ │ └── uri.go │ │ ├── json │ │ │ ├── array.go │ │ │ ├── constants.go │ │ │ ├── decoder_util.go │ │ │ ├── encoder.go │ │ │ ├── escape.go │ │ │ ├── object.go │ │ │ └── value.go │ │ └── xml │ │ │ ├── array.go │ │ │ ├── constants.go │ │ │ ├── doc.go │ │ │ ├── element.go │ │ │ ├── encoder.go │ │ │ ├── error_utils.go │ │ │ ├── escape.go │ │ │ ├── map.go │ │ │ ├── value.go │ │ │ └── xml_decoder.go │ │ ├── endpoints │ │ └── endpoint.go │ │ ├── errors.go │ │ ├── go_module_metadata.go │ │ ├── internal │ │ └── sync │ │ │ └── singleflight │ │ │ ├── LICENSE │ │ │ ├── docs.go │ │ │ └── singleflight.go │ │ ├── io │ │ ├── byte.go │ │ ├── doc.go │ │ ├── reader.go │ │ └── ringbuffer.go │ │ ├── local-mod-replace.sh │ │ ├── logging │ │ └── logger.go │ │ ├── middleware │ │ ├── doc.go │ │ ├── logging.go │ │ ├── metadata.go │ │ ├── middleware.go │ │ ├── ordered_group.go │ │ ├── stack.go │ │ ├── stack_values.go │ │ ├── step_build.go │ │ ├── step_deserialize.go │ │ ├── step_finalize.go │ │ ├── step_initialize.go │ │ └── step_serialize.go │ │ ├── modman.toml │ │ ├── private │ │ └── requestcompression │ │ │ ├── gzip.go │ │ │ ├── middleware_capture_request_compression.go │ │ │ └── request_compression.go │ │ ├── properties.go │ │ ├── ptr │ │ ├── doc.go │ │ ├── from_ptr.go │ │ ├── gen_scalars.go │ │ └── to_ptr.go │ │ ├── rand │ │ ├── doc.go │ │ ├── rand.go │ │ └── uuid.go │ │ ├── time │ │ └── time.go │ │ ├── transport │ │ └── http │ │ │ ├── auth.go │ │ │ ├── auth_schemes.go │ │ │ ├── checksum_middleware.go │ │ │ ├── client.go │ │ │ ├── doc.go │ │ │ ├── headerlist.go │ │ │ ├── host.go │ │ │ ├── internal │ │ │ └── io │ │ │ │ └── safe.go │ │ │ ├── md5_checksum.go │ │ │ ├── middleware_close_response_body.go │ │ │ ├── middleware_content_length.go │ │ │ ├── middleware_header_comment.go │ │ │ ├── middleware_headers.go │ │ │ ├── middleware_http_logging.go │ │ │ ├── middleware_metadata.go │ │ │ ├── middleware_min_proto.go │ │ │ ├── properties.go │ │ │ ├── request.go │ │ │ ├── response.go │ │ │ ├── time.go │ │ │ ├── url.go │ │ │ └── user_agent.go │ │ ├── validation.go │ │ └── waiter │ │ ├── logger.go │ │ └── waiter.go ├── cihub │ └── seelog │ │ ├── LICENSE.txt │ │ ├── README.markdown │ │ ├── archive │ │ ├── archive.go │ │ ├── gzip │ │ │ └── gzip.go │ │ ├── tar │ │ │ └── tar.go │ │ └── zip │ │ │ └── zip.go │ │ ├── behavior_adaptivelogger.go │ │ ├── behavior_asynclogger.go │ │ ├── behavior_asynclooplogger.go │ │ ├── behavior_asynctimerlogger.go │ │ ├── behavior_synclogger.go │ │ ├── cfg_config.go │ │ ├── cfg_errors.go │ │ ├── cfg_logconfig.go │ │ ├── cfg_parser.go │ │ ├── common_closer.go │ │ ├── common_constraints.go │ │ ├── common_context.go │ │ ├── common_exception.go │ │ ├── common_flusher.go │ │ ├── common_loglevel.go │ │ ├── dispatch_custom.go │ │ ├── dispatch_dispatcher.go │ │ ├── dispatch_filterdispatcher.go │ │ ├── dispatch_splitdispatcher.go │ │ ├── doc.go │ │ ├── format.go │ │ ├── internals_baseerror.go │ │ ├── internals_fsutils.go │ │ ├── internals_xmlnode.go │ │ ├── log.go │ │ ├── logger.go │ │ ├── writers_bufferedwriter.go │ │ ├── writers_connwriter.go │ │ ├── writers_consolewriter.go │ │ ├── writers_filewriter.go │ │ ├── writers_formattedwriter.go │ │ ├── writers_rollingfilewriter.go │ │ └── writers_smtpwriter.go ├── containernetworking │ └── cni │ │ ├── LICENSE │ │ └── pkg │ │ ├── invoke │ │ ├── args.go │ │ ├── delegate.go │ │ ├── exec.go │ │ ├── find.go │ │ ├── os_unix.go │ │ ├── os_windows.go │ │ └── raw_exec.go │ │ ├── ip │ │ ├── cidr.go │ │ ├── ipforward.go │ │ ├── ipmasq.go │ │ ├── link.go │ │ ├── route.go │ │ ├── route_linux.go │ │ └── route_unspecified.go │ │ ├── ipam │ │ └── ipam.go │ │ ├── ns │ │ ├── README.md │ │ ├── ns.go │ │ ├── ns_linux.go │ │ └── ns_unspecified.go │ │ ├── skel │ │ └── skel.go │ │ ├── types │ │ ├── 020 │ │ │ └── types.go │ │ ├── args.go │ │ ├── current │ │ │ └── types.go │ │ └── types.go │ │ ├── utils │ │ └── hwaddr │ │ │ └── hwaddr.go │ │ └── version │ │ ├── conf.go │ │ ├── plugin.go │ │ ├── reconcile.go │ │ └── version.go ├── coreos │ └── go-iptables │ │ ├── LICENSE │ │ ├── NOTICE │ │ └── iptables │ │ ├── iptables.go │ │ └── lock.go ├── davecgh │ └── go-spew │ │ ├── LICENSE │ │ └── spew │ │ ├── bypass.go │ │ ├── bypasssafe.go │ │ ├── common.go │ │ ├── config.go │ │ ├── doc.go │ │ ├── dump.go │ │ ├── format.go │ │ └── spew.go ├── docker │ └── libkv │ │ ├── .travis.yml │ │ ├── LICENSE.code │ │ ├── LICENSE.docs │ │ ├── MAINTAINERS │ │ ├── README.md │ │ ├── libkv.go │ │ └── store │ │ ├── boltdb │ │ └── boltdb.go │ │ ├── helpers.go │ │ └── store.go ├── golang │ └── mock │ │ ├── AUTHORS │ │ ├── CONTRIBUTORS │ │ ├── LICENSE │ │ ├── gomock │ │ ├── call.go │ │ ├── callset.go │ │ ├── controller.go │ │ └── matchers.go │ │ └── mockgen │ │ └── model │ │ └── model.go ├── pkg │ └── errors │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── Makefile │ │ ├── README.md │ │ ├── appveyor.yml │ │ ├── errors.go │ │ ├── go113.go │ │ └── stack.go ├── pmezard │ └── go-difflib │ │ ├── LICENSE │ │ └── difflib │ │ └── difflib.go ├── stretchr │ └── testify │ │ ├── LICENSE │ │ ├── assert │ │ ├── assertion_compare.go │ │ ├── assertion_format.go │ │ ├── assertion_format.go.tmpl │ │ ├── assertion_forward.go │ │ ├── assertion_forward.go.tmpl │ │ ├── assertion_order.go │ │ ├── assertions.go │ │ ├── doc.go │ │ ├── errors.go │ │ ├── forward_assertions.go │ │ └── http_assertions.go │ │ └── require │ │ ├── doc.go │ │ ├── forward_requirements.go │ │ ├── require.go │ │ ├── require.go.tmpl │ │ ├── require_forward.go │ │ ├── require_forward.go.tmpl │ │ └── requirements.go └── vishvananda │ ├── netlink │ ├── .travis.yml │ ├── LICENSE │ ├── Makefile │ ├── README.md │ ├── addr.go │ ├── addr_linux.go │ ├── bpf_linux.go │ ├── class.go │ ├── class_linux.go │ ├── conntrack_linux.go │ ├── conntrack_unspecified.go │ ├── filter.go │ ├── filter_linux.go │ ├── genetlink_linux.go │ ├── genetlink_unspecified.go │ ├── gtp_linux.go │ ├── handle_linux.go │ ├── handle_unspecified.go │ ├── link.go │ ├── link_linux.go │ ├── link_tuntap_linux.go │ ├── neigh.go │ ├── neigh_linux.go │ ├── netlink.go │ ├── netlink_linux.go │ ├── netlink_unspecified.go │ ├── nl │ │ ├── addr_linux.go │ │ ├── conntrack_linux.go │ │ ├── genetlink_linux.go │ │ ├── link_linux.go │ │ ├── mpls_linux.go │ │ ├── nl_linux.go │ │ ├── nl_unspecified.go │ │ ├── route_linux.go │ │ ├── syscall.go │ │ ├── tc_linux.go │ │ ├── xfrm_linux.go │ │ ├── xfrm_monitor_linux.go │ │ ├── xfrm_policy_linux.go │ │ └── xfrm_state_linux.go │ ├── order.go │ ├── protinfo.go │ ├── protinfo_linux.go │ ├── qdisc.go │ ├── qdisc_linux.go │ ├── route.go │ ├── route_linux.go │ ├── route_unspecified.go │ ├── rule.go │ ├── rule_linux.go │ ├── socket.go │ ├── socket_linux.go │ ├── xfrm.go │ ├── xfrm_monitor_linux.go │ ├── xfrm_policy.go │ ├── xfrm_policy_linux.go │ ├── xfrm_state.go │ └── xfrm_state_linux.go │ └── netns │ ├── .golangci.yml │ ├── LICENSE │ ├── README.md │ ├── doc.go │ ├── netns_linux.go │ ├── netns_others.go │ ├── nshandle_linux.go │ └── nshandle_others.go ├── go.etcd.io └── bbolt │ ├── .gitignore │ ├── .go-version │ ├── LICENSE │ ├── Makefile │ ├── README.md │ ├── bolt_386.go │ ├── bolt_amd64.go │ ├── bolt_arm.go │ ├── bolt_arm64.go │ ├── bolt_linux.go │ ├── bolt_loong64.go │ ├── bolt_mips64x.go │ ├── bolt_mipsx.go │ ├── bolt_openbsd.go │ ├── bolt_ppc.go │ ├── bolt_ppc64.go │ ├── bolt_ppc64le.go │ ├── bolt_riscv64.go │ ├── bolt_s390x.go │ ├── bolt_unix.go │ ├── bolt_unix_aix.go │ ├── bolt_unix_solaris.go │ ├── bolt_windows.go │ ├── boltsync_unix.go │ ├── bucket.go │ ├── compact.go │ ├── cursor.go │ ├── db.go │ ├── doc.go │ ├── errors.go │ ├── freelist.go │ ├── freelist_hmap.go │ ├── mlock_unix.go │ ├── mlock_windows.go │ ├── node.go │ ├── page.go │ ├── tx.go │ ├── tx_check.go │ └── unsafe.go ├── golang.org └── x │ ├── mod │ ├── LICENSE │ ├── PATENTS │ ├── internal │ │ └── lazyregexp │ │ │ └── lazyre.go │ ├── module │ │ ├── module.go │ │ └── pseudo.go │ └── semver │ │ └── semver.go │ ├── sync │ ├── LICENSE │ ├── PATENTS │ └── errgroup │ │ ├── errgroup.go │ │ ├── go120.go │ │ └── pre_go120.go │ ├── sys │ ├── LICENSE │ ├── PATENTS │ ├── unix │ │ ├── .gitignore │ │ ├── README.md │ │ ├── affinity_linux.go │ │ ├── aliases.go │ │ ├── asm_aix_ppc64.s │ │ ├── asm_bsd_386.s │ │ ├── asm_bsd_amd64.s │ │ ├── asm_bsd_arm.s │ │ ├── asm_bsd_arm64.s │ │ ├── asm_bsd_ppc64.s │ │ ├── asm_bsd_riscv64.s │ │ ├── asm_linux_386.s │ │ ├── asm_linux_amd64.s │ │ ├── asm_linux_arm.s │ │ ├── asm_linux_arm64.s │ │ ├── asm_linux_loong64.s │ │ ├── asm_linux_mips64x.s │ │ ├── asm_linux_mipsx.s │ │ ├── asm_linux_ppc64x.s │ │ ├── asm_linux_riscv64.s │ │ ├── asm_linux_s390x.s │ │ ├── asm_openbsd_mips64.s │ │ ├── asm_solaris_amd64.s │ │ ├── asm_zos_s390x.s │ │ ├── bluetooth_linux.go │ │ ├── bpxsvc_zos.go │ │ ├── bpxsvc_zos.s │ │ ├── cap_freebsd.go │ │ ├── constants.go │ │ ├── dev_aix_ppc.go │ │ ├── dev_aix_ppc64.go │ │ ├── dev_darwin.go │ │ ├── dev_dragonfly.go │ │ ├── dev_freebsd.go │ │ ├── dev_linux.go │ │ ├── dev_netbsd.go │ │ ├── dev_openbsd.go │ │ ├── dev_zos.go │ │ ├── dirent.go │ │ ├── endian_big.go │ │ ├── endian_little.go │ │ ├── env_unix.go │ │ ├── fcntl.go │ │ ├── fcntl_darwin.go │ │ ├── fcntl_linux_32bit.go │ │ ├── fdset.go │ │ ├── gccgo.go │ │ ├── gccgo_c.c │ │ ├── gccgo_linux_amd64.go │ │ ├── ifreq_linux.go │ │ ├── ioctl_linux.go │ │ ├── ioctl_signed.go │ │ ├── ioctl_unsigned.go │ │ ├── ioctl_zos.go │ │ ├── mkall.sh │ │ ├── mkerrors.sh │ │ ├── mmap_nomremap.go │ │ ├── mremap.go │ │ ├── pagesize_unix.go │ │ ├── pledge_openbsd.go │ │ ├── ptrace_darwin.go │ │ ├── ptrace_ios.go │ │ ├── race.go │ │ ├── race0.go │ │ ├── readdirent_getdents.go │ │ ├── readdirent_getdirentries.go │ │ ├── sockcmsg_dragonfly.go │ │ ├── sockcmsg_linux.go │ │ ├── sockcmsg_unix.go │ │ ├── sockcmsg_unix_other.go │ │ ├── sockcmsg_zos.go │ │ ├── symaddr_zos_s390x.s │ │ ├── syscall.go │ │ ├── syscall_aix.go │ │ ├── syscall_aix_ppc.go │ │ ├── syscall_aix_ppc64.go │ │ ├── syscall_bsd.go │ │ ├── syscall_darwin.go │ │ ├── syscall_darwin_amd64.go │ │ ├── syscall_darwin_arm64.go │ │ ├── syscall_darwin_libSystem.go │ │ ├── syscall_dragonfly.go │ │ ├── syscall_dragonfly_amd64.go │ │ ├── syscall_freebsd.go │ │ ├── syscall_freebsd_386.go │ │ ├── syscall_freebsd_amd64.go │ │ ├── syscall_freebsd_arm.go │ │ ├── syscall_freebsd_arm64.go │ │ ├── syscall_freebsd_riscv64.go │ │ ├── syscall_hurd.go │ │ ├── syscall_hurd_386.go │ │ ├── syscall_illumos.go │ │ ├── syscall_linux.go │ │ ├── syscall_linux_386.go │ │ ├── syscall_linux_alarm.go │ │ ├── syscall_linux_amd64.go │ │ ├── syscall_linux_amd64_gc.go │ │ ├── syscall_linux_arm.go │ │ ├── syscall_linux_arm64.go │ │ ├── syscall_linux_gc.go │ │ ├── syscall_linux_gc_386.go │ │ ├── syscall_linux_gc_arm.go │ │ ├── syscall_linux_gccgo_386.go │ │ ├── syscall_linux_gccgo_arm.go │ │ ├── syscall_linux_loong64.go │ │ ├── syscall_linux_mips64x.go │ │ ├── syscall_linux_mipsx.go │ │ ├── syscall_linux_ppc.go │ │ ├── syscall_linux_ppc64x.go │ │ ├── syscall_linux_riscv64.go │ │ ├── syscall_linux_s390x.go │ │ ├── syscall_linux_sparc64.go │ │ ├── syscall_netbsd.go │ │ ├── syscall_netbsd_386.go │ │ ├── syscall_netbsd_amd64.go │ │ ├── syscall_netbsd_arm.go │ │ ├── syscall_netbsd_arm64.go │ │ ├── syscall_openbsd.go │ │ ├── syscall_openbsd_386.go │ │ ├── syscall_openbsd_amd64.go │ │ ├── syscall_openbsd_arm.go │ │ ├── syscall_openbsd_arm64.go │ │ ├── syscall_openbsd_libc.go │ │ ├── syscall_openbsd_mips64.go │ │ ├── syscall_openbsd_ppc64.go │ │ ├── syscall_openbsd_riscv64.go │ │ ├── syscall_solaris.go │ │ ├── syscall_solaris_amd64.go │ │ ├── syscall_unix.go │ │ ├── syscall_unix_gc.go │ │ ├── syscall_unix_gc_ppc64x.go │ │ ├── syscall_zos_s390x.go │ │ ├── sysvshm_linux.go │ │ ├── sysvshm_unix.go │ │ ├── sysvshm_unix_other.go │ │ ├── timestruct.go │ │ ├── unveil_openbsd.go │ │ ├── xattr_bsd.go │ │ ├── zerrors_aix_ppc.go │ │ ├── zerrors_aix_ppc64.go │ │ ├── zerrors_darwin_amd64.go │ │ ├── zerrors_darwin_arm64.go │ │ ├── zerrors_dragonfly_amd64.go │ │ ├── zerrors_freebsd_386.go │ │ ├── zerrors_freebsd_amd64.go │ │ ├── zerrors_freebsd_arm.go │ │ ├── zerrors_freebsd_arm64.go │ │ ├── zerrors_freebsd_riscv64.go │ │ ├── zerrors_linux.go │ │ ├── zerrors_linux_386.go │ │ ├── zerrors_linux_amd64.go │ │ ├── zerrors_linux_arm.go │ │ ├── zerrors_linux_arm64.go │ │ ├── zerrors_linux_loong64.go │ │ ├── zerrors_linux_mips.go │ │ ├── zerrors_linux_mips64.go │ │ ├── zerrors_linux_mips64le.go │ │ ├── zerrors_linux_mipsle.go │ │ ├── zerrors_linux_ppc.go │ │ ├── zerrors_linux_ppc64.go │ │ ├── zerrors_linux_ppc64le.go │ │ ├── zerrors_linux_riscv64.go │ │ ├── zerrors_linux_s390x.go │ │ ├── zerrors_linux_sparc64.go │ │ ├── zerrors_netbsd_386.go │ │ ├── zerrors_netbsd_amd64.go │ │ ├── zerrors_netbsd_arm.go │ │ ├── zerrors_netbsd_arm64.go │ │ ├── zerrors_openbsd_386.go │ │ ├── zerrors_openbsd_amd64.go │ │ ├── zerrors_openbsd_arm.go │ │ ├── zerrors_openbsd_arm64.go │ │ ├── zerrors_openbsd_mips64.go │ │ ├── zerrors_openbsd_ppc64.go │ │ ├── zerrors_openbsd_riscv64.go │ │ ├── zerrors_solaris_amd64.go │ │ ├── zerrors_zos_s390x.go │ │ ├── zptrace_armnn_linux.go │ │ ├── zptrace_linux_arm64.go │ │ ├── zptrace_mipsnn_linux.go │ │ ├── zptrace_mipsnnle_linux.go │ │ ├── zptrace_x86_linux.go │ │ ├── zsymaddr_zos_s390x.s │ │ ├── zsyscall_aix_ppc.go │ │ ├── zsyscall_aix_ppc64.go │ │ ├── zsyscall_aix_ppc64_gc.go │ │ ├── zsyscall_aix_ppc64_gccgo.go │ │ ├── zsyscall_darwin_amd64.go │ │ ├── zsyscall_darwin_amd64.s │ │ ├── zsyscall_darwin_arm64.go │ │ ├── zsyscall_darwin_arm64.s │ │ ├── zsyscall_dragonfly_amd64.go │ │ ├── zsyscall_freebsd_386.go │ │ ├── zsyscall_freebsd_amd64.go │ │ ├── zsyscall_freebsd_arm.go │ │ ├── zsyscall_freebsd_arm64.go │ │ ├── zsyscall_freebsd_riscv64.go │ │ ├── zsyscall_illumos_amd64.go │ │ ├── zsyscall_linux.go │ │ ├── zsyscall_linux_386.go │ │ ├── zsyscall_linux_amd64.go │ │ ├── zsyscall_linux_arm.go │ │ ├── zsyscall_linux_arm64.go │ │ ├── zsyscall_linux_loong64.go │ │ ├── zsyscall_linux_mips.go │ │ ├── zsyscall_linux_mips64.go │ │ ├── zsyscall_linux_mips64le.go │ │ ├── zsyscall_linux_mipsle.go │ │ ├── zsyscall_linux_ppc.go │ │ ├── zsyscall_linux_ppc64.go │ │ ├── zsyscall_linux_ppc64le.go │ │ ├── zsyscall_linux_riscv64.go │ │ ├── zsyscall_linux_s390x.go │ │ ├── zsyscall_linux_sparc64.go │ │ ├── zsyscall_netbsd_386.go │ │ ├── zsyscall_netbsd_amd64.go │ │ ├── zsyscall_netbsd_arm.go │ │ ├── zsyscall_netbsd_arm64.go │ │ ├── zsyscall_openbsd_386.go │ │ ├── zsyscall_openbsd_386.s │ │ ├── zsyscall_openbsd_amd64.go │ │ ├── zsyscall_openbsd_amd64.s │ │ ├── zsyscall_openbsd_arm.go │ │ ├── zsyscall_openbsd_arm.s │ │ ├── zsyscall_openbsd_arm64.go │ │ ├── zsyscall_openbsd_arm64.s │ │ ├── zsyscall_openbsd_mips64.go │ │ ├── zsyscall_openbsd_mips64.s │ │ ├── zsyscall_openbsd_ppc64.go │ │ ├── zsyscall_openbsd_ppc64.s │ │ ├── zsyscall_openbsd_riscv64.go │ │ ├── zsyscall_openbsd_riscv64.s │ │ ├── zsyscall_solaris_amd64.go │ │ ├── zsyscall_zos_s390x.go │ │ ├── zsysctl_openbsd_386.go │ │ ├── zsysctl_openbsd_amd64.go │ │ ├── zsysctl_openbsd_arm.go │ │ ├── zsysctl_openbsd_arm64.go │ │ ├── zsysctl_openbsd_mips64.go │ │ ├── zsysctl_openbsd_ppc64.go │ │ ├── zsysctl_openbsd_riscv64.go │ │ ├── zsysnum_darwin_amd64.go │ │ ├── zsysnum_darwin_arm64.go │ │ ├── zsysnum_dragonfly_amd64.go │ │ ├── zsysnum_freebsd_386.go │ │ ├── zsysnum_freebsd_amd64.go │ │ ├── zsysnum_freebsd_arm.go │ │ ├── zsysnum_freebsd_arm64.go │ │ ├── zsysnum_freebsd_riscv64.go │ │ ├── zsysnum_linux_386.go │ │ ├── zsysnum_linux_amd64.go │ │ ├── zsysnum_linux_arm.go │ │ ├── zsysnum_linux_arm64.go │ │ ├── zsysnum_linux_loong64.go │ │ ├── zsysnum_linux_mips.go │ │ ├── zsysnum_linux_mips64.go │ │ ├── zsysnum_linux_mips64le.go │ │ ├── zsysnum_linux_mipsle.go │ │ ├── zsysnum_linux_ppc.go │ │ ├── zsysnum_linux_ppc64.go │ │ ├── zsysnum_linux_ppc64le.go │ │ ├── zsysnum_linux_riscv64.go │ │ ├── zsysnum_linux_s390x.go │ │ ├── zsysnum_linux_sparc64.go │ │ ├── zsysnum_netbsd_386.go │ │ ├── zsysnum_netbsd_amd64.go │ │ ├── zsysnum_netbsd_arm.go │ │ ├── zsysnum_netbsd_arm64.go │ │ ├── zsysnum_openbsd_386.go │ │ ├── zsysnum_openbsd_amd64.go │ │ ├── zsysnum_openbsd_arm.go │ │ ├── zsysnum_openbsd_arm64.go │ │ ├── zsysnum_openbsd_mips64.go │ │ ├── zsysnum_openbsd_ppc64.go │ │ ├── zsysnum_openbsd_riscv64.go │ │ ├── zsysnum_zos_s390x.go │ │ ├── ztypes_aix_ppc.go │ │ ├── ztypes_aix_ppc64.go │ │ ├── ztypes_darwin_amd64.go │ │ ├── ztypes_darwin_arm64.go │ │ ├── ztypes_dragonfly_amd64.go │ │ ├── ztypes_freebsd_386.go │ │ ├── ztypes_freebsd_amd64.go │ │ ├── ztypes_freebsd_arm.go │ │ ├── ztypes_freebsd_arm64.go │ │ ├── ztypes_freebsd_riscv64.go │ │ ├── ztypes_linux.go │ │ ├── ztypes_linux_386.go │ │ ├── ztypes_linux_amd64.go │ │ ├── ztypes_linux_arm.go │ │ ├── ztypes_linux_arm64.go │ │ ├── ztypes_linux_loong64.go │ │ ├── ztypes_linux_mips.go │ │ ├── ztypes_linux_mips64.go │ │ ├── ztypes_linux_mips64le.go │ │ ├── ztypes_linux_mipsle.go │ │ ├── ztypes_linux_ppc.go │ │ ├── ztypes_linux_ppc64.go │ │ ├── ztypes_linux_ppc64le.go │ │ ├── ztypes_linux_riscv64.go │ │ ├── ztypes_linux_s390x.go │ │ ├── ztypes_linux_sparc64.go │ │ ├── ztypes_netbsd_386.go │ │ ├── ztypes_netbsd_amd64.go │ │ ├── ztypes_netbsd_arm.go │ │ ├── ztypes_netbsd_arm64.go │ │ ├── ztypes_openbsd_386.go │ │ ├── ztypes_openbsd_amd64.go │ │ ├── ztypes_openbsd_arm.go │ │ ├── ztypes_openbsd_arm64.go │ │ ├── ztypes_openbsd_mips64.go │ │ ├── ztypes_openbsd_ppc64.go │ │ ├── ztypes_openbsd_riscv64.go │ │ ├── ztypes_solaris_amd64.go │ │ └── ztypes_zos_s390x.go │ └── windows │ │ ├── aliases.go │ │ ├── dll_windows.go │ │ ├── env_windows.go │ │ ├── eventlog.go │ │ ├── exec_windows.go │ │ ├── memory_windows.go │ │ ├── mkerrors.bash │ │ ├── mkknownfolderids.bash │ │ ├── mksyscall.go │ │ ├── race.go │ │ ├── race0.go │ │ ├── security_windows.go │ │ ├── service.go │ │ ├── setupapi_windows.go │ │ ├── str.go │ │ ├── syscall.go │ │ ├── syscall_windows.go │ │ ├── types_windows.go │ │ ├── types_windows_386.go │ │ ├── types_windows_amd64.go │ │ ├── types_windows_arm.go │ │ ├── types_windows_arm64.go │ │ ├── zerrors_windows.go │ │ ├── zknownfolderids_windows.go │ │ └── zsyscall_windows.go │ └── tools │ ├── LICENSE │ ├── PATENTS │ ├── go │ └── ast │ │ └── astutil │ │ ├── enclosing.go │ │ ├── imports.go │ │ ├── rewrite.go │ │ └── util.go │ ├── imports │ └── forward.go │ └── internal │ ├── event │ ├── core │ │ ├── event.go │ │ ├── export.go │ │ └── fast.go │ ├── doc.go │ ├── event.go │ ├── keys │ │ ├── keys.go │ │ ├── standard.go │ │ └── util.go │ └── label │ │ └── label.go │ ├── gocommand │ ├── invoke.go │ ├── vendor.go │ └── version.go │ ├── gopathwalk │ └── walk.go │ ├── imports │ ├── fix.go │ ├── imports.go │ ├── mod.go │ ├── mod_cache.go │ └── sortimports.go │ └── stdlib │ ├── manifest.go │ └── stdlib.go ├── gopkg.in └── yaml.v3 │ ├── LICENSE │ ├── NOTICE │ ├── README.md │ ├── apic.go │ ├── decode.go │ ├── emitterc.go │ ├── encode.go │ ├── parserc.go │ ├── readerc.go │ ├── resolve.go │ ├── scannerc.go │ ├── sorter.go │ ├── writerc.go │ ├── yaml.go │ ├── yamlh.go │ └── yamlprivateh.go └── modules.txt /.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | 10 | 11 | ### Summary 12 | 13 | 14 | ### Description 15 | 16 | 17 | ### Expected Behavior 18 | 19 | 20 | ### Observed Behavior 21 | 22 | 23 | ### Environment Details 24 | 30 | 31 | ### Supporting Log Snippets 32 | 40 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | 7 | 8 | ### Summary 9 | 10 | 11 | ### Implementation details 12 | 13 | 14 | ### Testing 15 | 16 | 17 | New tests cover the changes: 18 | 19 | ### Description for the changelog 20 | 26 | 27 | ### Licensing 28 | 29 | By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. 30 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | bin/ 2 | *.swp 3 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | sudo: false 3 | go: 4 | - 1.12.x 5 | go_import_path: github.com/aws/amazon-ecs-cni-plugins 6 | 7 | install: make get-deps 8 | script: 9 | - make unit-test 10 | 11 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | ## Code of Conduct 2 | This project has adopted the [Amazon Open Source Code of Conduct](https://aws.github.io/code-of-conduct). 3 | For more information see the [Code of Conduct FAQ](https://aws.github.io/code-of-conduct-faq) or contact 4 | opensource-codeofconduct@amazon.com with any additional questions or comments. 5 | -------------------------------------------------------------------------------- /VERSION: -------------------------------------------------------------------------------- 1 | 2024.09.0 2 | -------------------------------------------------------------------------------- /pkg/capabilities/capabilities_test.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package capabilities 15 | 16 | import ( 17 | "testing" 18 | 19 | "github.com/stretchr/testify/assert" 20 | ) 21 | 22 | func TestCapabilityString(t *testing.T) { 23 | expected := `{"capabilities":["feature 1","feature 2"]}` 24 | cap := New("feature 1", "feature 2") 25 | capStr, err := cap.String() 26 | assert.NoError(t, err) 27 | assert.Equal(t, expected, capStr) 28 | } 29 | -------------------------------------------------------------------------------- /pkg/cniipamwrapper/generate_mocks.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package cniipamwrapper 15 | 16 | //go:generate go run ../../scripts/mockgen.go github.com/aws/amazon-ecs-cni-plugins/pkg/cniipamwrapper IPAM mocks/cniipamwrapper_mocks.go 17 | //go:generate go run ../../scripts/mockgen.go github.com/containernetworking/cni/pkg/types Result mocks_types/result_mocks.go 18 | -------------------------------------------------------------------------------- /pkg/cniipwrapper/generate_mocks.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package cniipwrapper 15 | 16 | //go:generate go run ../../scripts/mockgen.go github.com/aws/amazon-ecs-cni-plugins/pkg/cniipwrapper IP mocks/cniipwrapper_mocks.go 17 | -------------------------------------------------------------------------------- /pkg/cninswrapper/generate_mocks.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package cninswrapper 15 | 16 | //go:generate go run ../../scripts/mockgen.go github.com/aws/amazon-ecs-cni-plugins/pkg/cninswrapper NS mocks/cninswrapper_mocks.go 17 | //go:generate go run ../../scripts/mockgen.go github.com/containernetworking/cni/pkg/ns NetNS mocks_netns/netns_mocks.go 18 | -------------------------------------------------------------------------------- /pkg/cninswrapper/ns.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package cninswrapper 15 | 16 | import "github.com/containernetworking/cni/pkg/ns" 17 | 18 | // NS wraps methods used from the cni/pkg/ns package 19 | type NS interface { 20 | GetNS(nspath string) (ns.NetNS, error) 21 | WithNetNSPath(nspath string, toRun func(ns.NetNS) error) error 22 | } 23 | 24 | type cniNS struct { 25 | } 26 | 27 | // NewNS creates a new NS object 28 | func NewNS() NS { 29 | return &cniNS{} 30 | } 31 | 32 | func (*cniNS) GetNS(nspath string) (ns.NetNS, error) { 33 | return ns.GetNS(nspath) 34 | } 35 | 36 | func (*cniNS) WithNetNSPath(nspath string, toRun func(ns.NetNS) error) error { 37 | return ns.WithNetNSPath(nspath, toRun) 38 | } 39 | -------------------------------------------------------------------------------- /pkg/ec2metadata/generate_mocks.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package ec2metadata 15 | 16 | //go:generate go run ../../scripts/mockgen.go github.com/aws/amazon-ecs-cni-plugins/pkg/ec2metadata EC2Metadata mocks/ec2metadata_mocks.go 17 | -------------------------------------------------------------------------------- /pkg/execwrapper/generate_mocks.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package execwrapper 15 | 16 | //go:generate go run ../../scripts/mockgen.go github.com/aws/amazon-ecs-cni-plugins/pkg/execwrapper Cmd,Exec mocks/exec_mocks.go 17 | -------------------------------------------------------------------------------- /pkg/ioutilwrapper/generate_mocks.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package ioutilwrapper 15 | 16 | //go:generate go run ../../scripts/mockgen.go github.com/aws/amazon-ecs-cni-plugins/pkg/ioutilwrapper IOUtil mocks_ioutilwrapper/ioutilwrapper_mocks.go 17 | //go:generate go run ../../scripts/mockgen.go os FileInfo mocks_fileinfo/fileinfo_mocks.go 18 | -------------------------------------------------------------------------------- /pkg/ioutilwrapper/ioutil.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package ioutilwrapper 15 | 16 | import ( 17 | "io/ioutil" 18 | "os" 19 | ) 20 | 21 | // IOUtil wraps methods used from the io/ioutil package 22 | type IOUtil interface { 23 | ReadDir(dirname string) ([]os.FileInfo, error) 24 | ReadFile(filename string) ([]byte, error) 25 | } 26 | 27 | type ioUtil struct { 28 | } 29 | 30 | // NewIOUtil creates a new IOUtil object 31 | func NewIOUtil() IOUtil { 32 | return &ioUtil{} 33 | } 34 | 35 | func (*ioUtil) ReadDir(dirname string) ([]os.FileInfo, error) { 36 | return ioutil.ReadDir(dirname) 37 | } 38 | 39 | func (*ioUtil) ReadFile(filename string) ([]byte, error) { 40 | return ioutil.ReadFile(filename) 41 | } 42 | -------------------------------------------------------------------------------- /pkg/licenses/generate.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package licenses 15 | 16 | //go:generate ../../scripts/licenses.sh license.go 17 | -------------------------------------------------------------------------------- /pkg/netlinkwrapper/generate_mocks.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package netlinkwrapper 15 | 16 | //go:generate go run ../../scripts/mockgen.go github.com/aws/amazon-ecs-cni-plugins/pkg/netlinkwrapper NetLink mocks/netlinkwrapper_mocks.go 17 | //go:generate go run ../../scripts/mockgen.go github.com/vishvananda/netlink Link mocks_link/link_mocks.go 18 | -------------------------------------------------------------------------------- /pkg/oswrapper/generate_mocks.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package oswrapper 15 | 16 | //go:generate go run ../../scripts/mockgen.go github.com/aws/amazon-ecs-cni-plugins/pkg/oswrapper OS,OSProcess mocks/oswrapper_mocks.go 17 | -------------------------------------------------------------------------------- /pkg/oswrapper/os.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package oswrapper 15 | 16 | import "os" 17 | 18 | // OS wraps methods from the 'os' package 19 | type OS interface { 20 | FindProcess(pid int) (OSProcess, error) 21 | Getenv(key string) string 22 | } 23 | 24 | // OSProcess wraps methods from the 'os.Process' struct 25 | type OSProcess interface { 26 | Signal(sig os.Signal) error 27 | } 28 | 29 | type _os struct { 30 | } 31 | 32 | // NewOS creates a new OS object 33 | func NewOS() OS { 34 | return &_os{} 35 | } 36 | 37 | func (*_os) FindProcess(pid int) (OSProcess, error) { 38 | return os.FindProcess(pid) 39 | } 40 | 41 | func (*_os) Getenv(key string) string { 42 | return os.Getenv(key) 43 | } 44 | -------------------------------------------------------------------------------- /plugins/ecs-bridge/engine/generate_mocks.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package engine 15 | 16 | //go:generate go run ../../../scripts/mockgen.go github.com/aws/amazon-ecs-cni-plugins/plugins/ecs-bridge/engine Engine mocks/engine_mocks.go 17 | -------------------------------------------------------------------------------- /plugins/ecs-bridge/version/cnispec/cnispec.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package cnispec 15 | 16 | import "github.com/containernetworking/cni/pkg/version" 17 | 18 | var specVersionSupported = version.PluginSupports("0.3.0") 19 | 20 | func GetSpecVersionSupported() version.PluginInfo { 21 | return specVersionSupported 22 | } 23 | -------------------------------------------------------------------------------- /plugins/eni/engine/generate_mocks.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package engine 15 | 16 | //go:generate go run ../../../scripts/mockgen.go github.com/aws/amazon-ecs-cni-plugins/plugins/eni/engine Engine mocks/engine_mocks.go 17 | -------------------------------------------------------------------------------- /plugins/eni/version/cnispec/spec.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package cnispec 15 | 16 | import "github.com/containernetworking/cni/pkg/version" 17 | 18 | // specVersionSupported is the version of the CNI spec that's supported by the 19 | // ENI plugin. It's set to 0.3.0, which means that we support the following 20 | // commands: 21 | // * ADD 22 | // * DELETE 23 | // * VERSION 24 | // Refer to https://github.com/containernetworking/cni/blob/master/SPEC.md 25 | // for details 26 | var specVersionSupported = version.PluginSupports("0.3.0") 27 | 28 | // GetSpecVersionSupported gets the version of the CNI spec that's supported 29 | // by the ENI plugin 30 | func GetSpecVersionSupported() version.PluginInfo { 31 | return specVersionSupported 32 | } 33 | -------------------------------------------------------------------------------- /plugins/eni/version/cnispec/spec_test.go: -------------------------------------------------------------------------------- 1 | // +build !integration,!e2e 2 | 3 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 4 | // 5 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 6 | // not use this file except in compliance with the License. A copy of the 7 | // License is located at 8 | // 9 | // http://aws.amazon.com/apache2.0/ 10 | // 11 | // or in the "license" file accompanying this file. This file is distributed 12 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 13 | // express or implied. See the License for the specific language governing 14 | // permissions and limitations under the License. 15 | 16 | package cnispec 17 | 18 | import ( 19 | "testing" 20 | 21 | "github.com/containernetworking/cni/pkg/version" 22 | "github.com/stretchr/testify/assert" 23 | ) 24 | 25 | func TestGetSpecVersionsSupported(t *testing.T) { 26 | specVersionSupported = version.PluginSupports("0.2.0") 27 | pluginInfo := GetSpecVersionSupported() 28 | supportedVersions := pluginInfo.SupportedVersions() 29 | assert.NotEmpty(t, supportedVersions) 30 | assert.Len(t, supportedVersions, 1) 31 | assert.Contains(t, supportedVersions, "0.2.0") 32 | } 33 | -------------------------------------------------------------------------------- /plugins/ipam/ipstore/generate_mocks.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 4 | // not use this file except in compliance with the License. A copy of the 5 | // License is located at 6 | // 7 | // http://aws.amazon.com/apache2.0/ 8 | // 9 | // or in the "license" file accompanying this file. This file is distributed 10 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 11 | // express or implied. See the License for the specific language governing 12 | // permissions and limitations under the License. 13 | 14 | package ipstore 15 | 16 | //go:generate go run ../../../scripts/mockgen.go github.com/aws/amazon-ecs-cni-plugins/plugins/ipam/ipstore IPAllocator mocks/ipstore_mocks.go 17 | -------------------------------------------------------------------------------- /plugins/ipam/version/cnispec/spec_test.go: -------------------------------------------------------------------------------- 1 | // +build !integration,!e2e 2 | 3 | // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 4 | // 5 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 6 | // not use this file except in compliance with the License. A copy of the 7 | // License is located at 8 | // 9 | // http://aws.amazon.com/apache2.0/ 10 | // 11 | // or in the "license" file accompanying this file. This file is distributed 12 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 13 | // express or implied. See the License for the specific language governing 14 | // permissions and limitations under the License. 15 | 16 | package cnispec 17 | 18 | import ( 19 | "testing" 20 | 21 | "github.com/containernetworking/cni/pkg/version" 22 | "github.com/stretchr/testify/assert" 23 | ) 24 | 25 | func TestGetSpecVersionsSupported(t *testing.T) { 26 | specVersionSupported = version.PluginSupports("0.3.0") 27 | pluginInfo := GetSpecVersionSupported() 28 | supportedVersions := pluginInfo.SupportedVersions() 29 | assert.NotEmpty(t, supportedVersions) 30 | assert.Len(t, supportedVersions, 1) 31 | assert.Contains(t, supportedVersions, "0.3.0") 32 | } 33 | -------------------------------------------------------------------------------- /tools.go: -------------------------------------------------------------------------------- 1 | //go:build tools 2 | // +build tools 3 | 4 | // Copyright Amazon.com Inc. or its affiliates. All Rights Reserved. 5 | // 6 | // Licensed under the Apache License, Version 2.0 (the "License"). You may 7 | // not use this file except in compliance with the License. A copy of the 8 | // License is located at 9 | // 10 | // http://aws.amazon.com/apache2.0/ 11 | // 12 | // or in the "license" file accompanying this file. This file is distributed 13 | // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 14 | // express or implied. See the License for the specific language governing 15 | // permissions and limitations under the License. 16 | 17 | // The tools package manages tool dependencies with go.mod. 18 | package tools 19 | 20 | // Some packages are required by tools we use but are not used explicitly in the code. 21 | // Import such packages so that they are copied to the vendor directory by go mod. 22 | import ( 23 | _ "github.com/golang/mock/mockgen/model" 24 | _ "golang.org/x/tools/imports" 25 | ) 26 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/NOTICE.txt: -------------------------------------------------------------------------------- 1 | AWS SDK for Go 2 | Copyright 2015 Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 | Copyright 2014-2015 Stripe, Inc. 4 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/accountid_endpoint_mode.go: -------------------------------------------------------------------------------- 1 | package aws 2 | 3 | // AccountIDEndpointMode controls how a resolved AWS account ID is handled for endpoint routing. 4 | type AccountIDEndpointMode string 5 | 6 | const ( 7 | // AccountIDEndpointModeUnset indicates the AWS account ID will not be used for endpoint routing 8 | AccountIDEndpointModeUnset AccountIDEndpointMode = "" 9 | 10 | // AccountIDEndpointModePreferred indicates the AWS account ID will be used for endpoint routing if present 11 | AccountIDEndpointModePreferred = "preferred" 12 | 13 | // AccountIDEndpointModeRequired indicates an error will be returned if the AWS account ID is not resolved from identity 14 | AccountIDEndpointModeRequired = "required" 15 | 16 | // AccountIDEndpointModeDisabled indicates the AWS account ID will be ignored during endpoint routing 17 | AccountIDEndpointModeDisabled = "disabled" 18 | ) 19 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/context.go: -------------------------------------------------------------------------------- 1 | package aws 2 | 3 | import ( 4 | "context" 5 | "time" 6 | ) 7 | 8 | type suppressedContext struct { 9 | context.Context 10 | } 11 | 12 | func (s *suppressedContext) Deadline() (deadline time.Time, ok bool) { 13 | return time.Time{}, false 14 | } 15 | 16 | func (s *suppressedContext) Done() <-chan struct{} { 17 | return nil 18 | } 19 | 20 | func (s *suppressedContext) Err() error { 21 | return nil 22 | } 23 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/defaults/auto.go: -------------------------------------------------------------------------------- 1 | package defaults 2 | 3 | import ( 4 | "github.com/aws/aws-sdk-go-v2/aws" 5 | "runtime" 6 | "strings" 7 | ) 8 | 9 | var getGOOS = func() string { 10 | return runtime.GOOS 11 | } 12 | 13 | // ResolveDefaultsModeAuto is used to determine the effective aws.DefaultsMode when the mode 14 | // is set to aws.DefaultsModeAuto. 15 | func ResolveDefaultsModeAuto(region string, environment aws.RuntimeEnvironment) aws.DefaultsMode { 16 | goos := getGOOS() 17 | if goos == "android" || goos == "ios" { 18 | return aws.DefaultsModeMobile 19 | } 20 | 21 | var currentRegion string 22 | if len(environment.EnvironmentIdentifier) > 0 { 23 | currentRegion = environment.Region 24 | } 25 | 26 | if len(currentRegion) == 0 && len(environment.EC2InstanceMetadataRegion) > 0 { 27 | currentRegion = environment.EC2InstanceMetadataRegion 28 | } 29 | 30 | if len(region) > 0 && len(currentRegion) > 0 { 31 | if strings.EqualFold(region, currentRegion) { 32 | return aws.DefaultsModeInRegion 33 | } 34 | return aws.DefaultsModeCrossRegion 35 | } 36 | 37 | return aws.DefaultsModeStandard 38 | } 39 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/defaults/doc.go: -------------------------------------------------------------------------------- 1 | // Package defaults provides recommended configuration values for AWS SDKs and CLIs. 2 | package defaults 3 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/errors.go: -------------------------------------------------------------------------------- 1 | package aws 2 | 3 | // MissingRegionError is an error that is returned if region configuration 4 | // value was not found. 5 | type MissingRegionError struct{} 6 | 7 | func (*MissingRegionError) Error() string { 8 | return "an AWS region is required, but was not found" 9 | } 10 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/go_module_metadata.go: -------------------------------------------------------------------------------- 1 | // Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT. 2 | 3 | package aws 4 | 5 | // goModuleVersion is the tagged release for this module 6 | const goModuleVersion = "1.30.5" 7 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/osname.go: -------------------------------------------------------------------------------- 1 | //go:build go1.16 2 | // +build go1.16 3 | 4 | package middleware 5 | 6 | import "runtime" 7 | 8 | func getNormalizedOSName() (os string) { 9 | switch runtime.GOOS { 10 | case "android": 11 | os = "android" 12 | case "linux": 13 | os = "linux" 14 | case "windows": 15 | os = "windows" 16 | case "darwin": 17 | os = "macos" 18 | case "ios": 19 | os = "ios" 20 | default: 21 | os = "other" 22 | } 23 | return os 24 | } 25 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/osname_go115.go: -------------------------------------------------------------------------------- 1 | //go:build !go1.16 2 | // +build !go1.16 3 | 4 | package middleware 5 | 6 | import "runtime" 7 | 8 | func getNormalizedOSName() (os string) { 9 | switch runtime.GOOS { 10 | case "android": 11 | os = "android" 12 | case "linux": 13 | os = "linux" 14 | case "windows": 15 | os = "windows" 16 | case "darwin": 17 | // Due to Apple M1 we can't distinguish between macOS and iOS when GOOS/GOARCH is darwin/amd64 18 | // For now declare this as "other" until we have a better detection mechanism. 19 | fallthrough 20 | default: 21 | os = "other" 22 | } 23 | return os 24 | } 25 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/middleware/request_id.go: -------------------------------------------------------------------------------- 1 | package middleware 2 | 3 | import ( 4 | "github.com/aws/smithy-go/middleware" 5 | ) 6 | 7 | // requestIDKey is used to retrieve request id from response metadata 8 | type requestIDKey struct{} 9 | 10 | // SetRequestIDMetadata sets the provided request id over middleware metadata 11 | func SetRequestIDMetadata(metadata *middleware.Metadata, id string) { 12 | metadata.Set(requestIDKey{}, id) 13 | } 14 | 15 | // GetRequestIDMetadata retrieves the request id from middleware metadata 16 | // returns string and bool indicating value of request id, whether request id was set. 17 | func GetRequestIDMetadata(metadata middleware.Metadata) (string, bool) { 18 | if !metadata.Has(requestIDKey{}) { 19 | return "", false 20 | } 21 | 22 | v, ok := metadata.Get(requestIDKey{}).(string) 23 | if !ok { 24 | return "", true 25 | } 26 | return v, true 27 | } 28 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/protocol/ec2query/error_utils.go: -------------------------------------------------------------------------------- 1 | package ec2query 2 | 3 | import ( 4 | "encoding/xml" 5 | "fmt" 6 | "io" 7 | ) 8 | 9 | // ErrorComponents represents the error response fields 10 | // that will be deserialized from a ec2query error response body 11 | type ErrorComponents struct { 12 | Code string `xml:"Errors>Error>Code"` 13 | Message string `xml:"Errors>Error>Message"` 14 | RequestID string `xml:"RequestID"` 15 | } 16 | 17 | // GetErrorResponseComponents returns the error components from a ec2query error response body 18 | func GetErrorResponseComponents(r io.Reader) (ErrorComponents, error) { 19 | var er ErrorComponents 20 | if err := xml.NewDecoder(r).Decode(&er); err != nil && err != io.EOF { 21 | return ErrorComponents{}, fmt.Errorf("error while fetching xml error response code: %w", err) 22 | } 23 | return er, nil 24 | } 25 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/ratelimit/none.go: -------------------------------------------------------------------------------- 1 | package ratelimit 2 | 3 | import "context" 4 | 5 | // None implements a no-op rate limiter which effectively disables client-side 6 | // rate limiting (also known as "retry quotas"). 7 | // 8 | // GetToken does nothing and always returns a nil error. The returned 9 | // token-release function does nothing, and always returns a nil error. 10 | // 11 | // AddTokens does nothing and always returns a nil error. 12 | var None = &none{} 13 | 14 | type none struct{} 15 | 16 | func (*none) GetToken(ctx context.Context, cost uint) (func() error, error) { 17 | return func() error { return nil }, nil 18 | } 19 | 20 | func (*none) AddTokens(v uint) error { return nil } 21 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/request.go: -------------------------------------------------------------------------------- 1 | package aws 2 | 3 | import ( 4 | "fmt" 5 | ) 6 | 7 | // TODO remove replace with smithy.CanceledError 8 | 9 | // RequestCanceledError is the error that will be returned by an API request 10 | // that was canceled. Requests given a Context may return this error when 11 | // canceled. 12 | type RequestCanceledError struct { 13 | Err error 14 | } 15 | 16 | // CanceledError returns true to satisfy interfaces checking for canceled errors. 17 | func (*RequestCanceledError) CanceledError() bool { return true } 18 | 19 | // Unwrap returns the underlying error, if there was one. 20 | func (e *RequestCanceledError) Unwrap() error { 21 | return e.Err 22 | } 23 | func (e *RequestCanceledError) Error() string { 24 | return fmt.Sprintf("request canceled, %v", e.Err) 25 | } 26 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/retry/errors.go: -------------------------------------------------------------------------------- 1 | package retry 2 | 3 | import "fmt" 4 | 5 | // MaxAttemptsError provides the error when the maximum number of attempts have 6 | // been exceeded. 7 | type MaxAttemptsError struct { 8 | Attempt int 9 | Err error 10 | } 11 | 12 | func (e *MaxAttemptsError) Error() string { 13 | return fmt.Sprintf("exceeded maximum number of attempts, %d, %v", e.Attempt, e.Err) 14 | } 15 | 16 | // Unwrap returns the nested error causing the max attempts error. Provides the 17 | // implementation for errors.Is and errors.As to unwrap nested errors. 18 | func (e *MaxAttemptsError) Unwrap() error { 19 | return e.Err 20 | } 21 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/runtime.go: -------------------------------------------------------------------------------- 1 | package aws 2 | 3 | // ExecutionEnvironmentID is the AWS execution environment runtime identifier. 4 | type ExecutionEnvironmentID string 5 | 6 | // RuntimeEnvironment is a collection of values that are determined at runtime 7 | // based on the environment that the SDK is executing in. Some of these values 8 | // may or may not be present based on the executing environment and certain SDK 9 | // configuration properties that drive whether these values are populated.. 10 | type RuntimeEnvironment struct { 11 | EnvironmentIdentifier ExecutionEnvironmentID 12 | Region string 13 | EC2InstanceMetadataRegion string 14 | } 15 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/hmac.go: -------------------------------------------------------------------------------- 1 | package v4 2 | 3 | import ( 4 | "crypto/hmac" 5 | "crypto/sha256" 6 | ) 7 | 8 | // HMACSHA256 computes a HMAC-SHA256 of data given the provided key. 9 | func HMACSHA256(key []byte, data []byte) []byte { 10 | hash := hmac.New(sha256.New, key) 11 | hash.Write(data) 12 | return hash.Sum(nil) 13 | } 14 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/scope.go: -------------------------------------------------------------------------------- 1 | package v4 2 | 3 | import "strings" 4 | 5 | // BuildCredentialScope builds the Signature Version 4 (SigV4) signing scope 6 | func BuildCredentialScope(signingTime SigningTime, region, service string) string { 7 | return strings.Join([]string{ 8 | signingTime.ShortTimeFormat(), 9 | region, 10 | service, 11 | "aws4_request", 12 | }, "/") 13 | } 14 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/signer/internal/v4/time.go: -------------------------------------------------------------------------------- 1 | package v4 2 | 3 | import "time" 4 | 5 | // SigningTime provides a wrapper around a time.Time which provides cached values for SigV4 signing. 6 | type SigningTime struct { 7 | time.Time 8 | timeFormat string 9 | shortTimeFormat string 10 | } 11 | 12 | // NewSigningTime creates a new SigningTime given a time.Time 13 | func NewSigningTime(t time.Time) SigningTime { 14 | return SigningTime{ 15 | Time: t, 16 | } 17 | } 18 | 19 | // TimeFormat provides a time formatted in the X-Amz-Date format. 20 | func (m *SigningTime) TimeFormat() string { 21 | return m.format(&m.timeFormat, TimeFormat) 22 | } 23 | 24 | // ShortTimeFormat provides a time formatted of 20060102. 25 | func (m *SigningTime) ShortTimeFormat() string { 26 | return m.format(&m.shortTimeFormat, ShortTimeFormat) 27 | } 28 | 29 | func (m *SigningTime) format(target *string, format string) string { 30 | if len(*target) > 0 { 31 | return *target 32 | } 33 | v := m.Time.Format(format) 34 | *target = v 35 | return v 36 | } 37 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/transport/http/response_error.go: -------------------------------------------------------------------------------- 1 | package http 2 | 3 | import ( 4 | "errors" 5 | "fmt" 6 | 7 | smithyhttp "github.com/aws/smithy-go/transport/http" 8 | ) 9 | 10 | // ResponseError provides the HTTP centric error type wrapping the underlying error 11 | // with the HTTP response value and the deserialized RequestID. 12 | type ResponseError struct { 13 | *smithyhttp.ResponseError 14 | 15 | // RequestID associated with response error 16 | RequestID string 17 | } 18 | 19 | // ServiceRequestID returns the request id associated with Response Error 20 | func (e *ResponseError) ServiceRequestID() string { return e.RequestID } 21 | 22 | // Error returns the formatted error 23 | func (e *ResponseError) Error() string { 24 | return fmt.Sprintf( 25 | "https response error StatusCode: %d, RequestID: %s, %v", 26 | e.Response.StatusCode, e.RequestID, e.Err) 27 | } 28 | 29 | // As populates target and returns true if the type of target is a error type that 30 | // the ResponseError embeds, (e.g.AWS HTTP ResponseError) 31 | func (e *ResponseError) As(target interface{}) bool { 32 | return errors.As(e.ResponseError, target) 33 | } 34 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/types.go: -------------------------------------------------------------------------------- 1 | package aws 2 | 3 | import ( 4 | "fmt" 5 | ) 6 | 7 | // Ternary is an enum allowing an unknown or none state in addition to a bool's 8 | // true and false. 9 | type Ternary int 10 | 11 | func (t Ternary) String() string { 12 | switch t { 13 | case UnknownTernary: 14 | return "unknown" 15 | case FalseTernary: 16 | return "false" 17 | case TrueTernary: 18 | return "true" 19 | default: 20 | return fmt.Sprintf("unknown value, %d", int(t)) 21 | } 22 | } 23 | 24 | // Bool returns true if the value is TrueTernary, false otherwise. 25 | func (t Ternary) Bool() bool { 26 | return t == TrueTernary 27 | } 28 | 29 | // Enumerations for the values of the Ternary type. 30 | const ( 31 | UnknownTernary Ternary = iota 32 | FalseTernary 33 | TrueTernary 34 | ) 35 | 36 | // BoolTernary returns a true or false Ternary value for the bool provided. 37 | func BoolTernary(v bool) Ternary { 38 | if v { 39 | return TrueTernary 40 | } 41 | return FalseTernary 42 | } 43 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/aws/version.go: -------------------------------------------------------------------------------- 1 | // Package aws provides core functionality for making requests to AWS services. 2 | package aws 3 | 4 | // SDKName is the name of this AWS SDK 5 | const SDKName = "aws-sdk-go-v2" 6 | 7 | // SDKVersion is the version of this SDK 8 | const SDKVersion = goModuleVersion 9 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/config/generate.go: -------------------------------------------------------------------------------- 1 | package config 2 | 3 | //go:generate go run -tags codegen ./codegen -output=provider_assert_test.go 4 | //go:generate gofmt -s -w ./ 5 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/config/go_module_metadata.go: -------------------------------------------------------------------------------- 1 | // Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT. 2 | 3 | package config 4 | 5 | // goModuleVersion is the tagged release for this module 6 | const goModuleVersion = "1.27.35" 7 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/config/local.go: -------------------------------------------------------------------------------- 1 | package config 2 | 3 | import ( 4 | "fmt" 5 | "net" 6 | "net/url" 7 | ) 8 | 9 | var lookupHostFn = net.LookupHost 10 | 11 | func isLoopbackHost(host string) (bool, error) { 12 | ip := net.ParseIP(host) 13 | if ip != nil { 14 | return ip.IsLoopback(), nil 15 | } 16 | 17 | // Host is not an ip, perform lookup 18 | addrs, err := lookupHostFn(host) 19 | if err != nil { 20 | return false, err 21 | } 22 | if len(addrs) == 0 { 23 | return false, fmt.Errorf("no addrs found for host, %s", host) 24 | } 25 | 26 | for _, addr := range addrs { 27 | if !net.ParseIP(addr).IsLoopback() { 28 | return false, nil 29 | } 30 | } 31 | 32 | return true, nil 33 | } 34 | 35 | func validateLocalURL(v string) error { 36 | u, err := url.Parse(v) 37 | if err != nil { 38 | return err 39 | } 40 | 41 | host := u.Hostname() 42 | if len(host) == 0 { 43 | return fmt.Errorf("unable to parse host from local HTTP cred provider URL") 44 | } else if isLoopback, err := isLoopbackHost(host); err != nil { 45 | return fmt.Errorf("failed to resolve host %q, %v", host, err) 46 | } else if !isLoopback { 47 | return fmt.Errorf("invalid endpoint host, %q, only host resolving to loopback addresses are allowed", host) 48 | } 49 | 50 | return nil 51 | } 52 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/credentials/doc.go: -------------------------------------------------------------------------------- 1 | /* 2 | Package credentials provides types for retrieving credentials from credentials sources. 3 | */ 4 | package credentials 5 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/credentials/endpointcreds/internal/client/endpoints.go: -------------------------------------------------------------------------------- 1 | package client 2 | 3 | import ( 4 | "context" 5 | "github.com/aws/smithy-go/middleware" 6 | ) 7 | 8 | type resolveEndpointV2Middleware struct { 9 | options Options 10 | } 11 | 12 | func (*resolveEndpointV2Middleware) ID() string { 13 | return "ResolveEndpointV2" 14 | } 15 | 16 | func (m *resolveEndpointV2Middleware) HandleFinalize(ctx context.Context, in middleware.FinalizeInput, next middleware.FinalizeHandler) ( 17 | out middleware.FinalizeOutput, metadata middleware.Metadata, err error, 18 | ) { 19 | return next.HandleFinalize(ctx, in) 20 | } 21 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/credentials/go_module_metadata.go: -------------------------------------------------------------------------------- 1 | // Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT. 2 | 3 | package credentials 4 | 5 | // goModuleVersion is the tagged release for this module 6 | const goModuleVersion = "1.17.33" 7 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/feature/ec2/imds/doc.go: -------------------------------------------------------------------------------- 1 | // Package imds provides the API client for interacting with the Amazon EC2 2 | // Instance Metadata Service. 3 | // 4 | // All Client operation calls have a default timeout. If the operation is not 5 | // completed before this timeout expires, the operation will be canceled. This 6 | // timeout can be overridden through the following: 7 | // - Set the options flag DisableDefaultTimeout 8 | // - Provide a Context with a timeout or deadline with calling the client's operations. 9 | // 10 | // See the EC2 IMDS user guide for more information on using the API. 11 | // https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html 12 | package imds 13 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/feature/ec2/imds/endpoints.go: -------------------------------------------------------------------------------- 1 | package imds 2 | 3 | import ( 4 | "context" 5 | "github.com/aws/smithy-go/middleware" 6 | ) 7 | 8 | type resolveEndpointV2Middleware struct { 9 | options Options 10 | } 11 | 12 | func (*resolveEndpointV2Middleware) ID() string { 13 | return "ResolveEndpointV2" 14 | } 15 | 16 | func (m *resolveEndpointV2Middleware) HandleFinalize(ctx context.Context, in middleware.FinalizeInput, next middleware.FinalizeHandler) ( 17 | out middleware.FinalizeOutput, metadata middleware.Metadata, err error, 18 | ) { 19 | return next.HandleFinalize(ctx, in) 20 | } 21 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/feature/ec2/imds/go_module_metadata.go: -------------------------------------------------------------------------------- 1 | // Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT. 2 | 3 | package imds 4 | 5 | // goModuleVersion is the tagged release for this module 6 | const goModuleVersion = "1.16.13" 7 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/auth/smithy/bearer_token_adapter.go: -------------------------------------------------------------------------------- 1 | package smithy 2 | 3 | import ( 4 | "context" 5 | "fmt" 6 | "time" 7 | 8 | "github.com/aws/smithy-go" 9 | "github.com/aws/smithy-go/auth" 10 | "github.com/aws/smithy-go/auth/bearer" 11 | ) 12 | 13 | // BearerTokenAdapter adapts smithy bearer.Token to smithy auth.Identity. 14 | type BearerTokenAdapter struct { 15 | Token bearer.Token 16 | } 17 | 18 | var _ auth.Identity = (*BearerTokenAdapter)(nil) 19 | 20 | // Expiration returns the time of expiration for the token. 21 | func (v *BearerTokenAdapter) Expiration() time.Time { 22 | return v.Token.Expires 23 | } 24 | 25 | // BearerTokenProviderAdapter adapts smithy bearer.TokenProvider to smithy 26 | // auth.IdentityResolver. 27 | type BearerTokenProviderAdapter struct { 28 | Provider bearer.TokenProvider 29 | } 30 | 31 | var _ (auth.IdentityResolver) = (*BearerTokenProviderAdapter)(nil) 32 | 33 | // GetIdentity retrieves a bearer token using the underlying provider. 34 | func (v *BearerTokenProviderAdapter) GetIdentity(ctx context.Context, _ smithy.Properties) ( 35 | auth.Identity, error, 36 | ) { 37 | token, err := v.Provider.RetrieveBearerToken(ctx) 38 | if err != nil { 39 | return nil, fmt.Errorf("get token: %w", err) 40 | } 41 | 42 | return &BearerTokenAdapter{Token: token}, nil 43 | } 44 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/auth/smithy/bearer_token_signer_adapter.go: -------------------------------------------------------------------------------- 1 | package smithy 2 | 3 | import ( 4 | "context" 5 | "fmt" 6 | 7 | "github.com/aws/smithy-go" 8 | "github.com/aws/smithy-go/auth" 9 | "github.com/aws/smithy-go/auth/bearer" 10 | smithyhttp "github.com/aws/smithy-go/transport/http" 11 | ) 12 | 13 | // BearerTokenSignerAdapter adapts smithy bearer.Signer to smithy http 14 | // auth.Signer. 15 | type BearerTokenSignerAdapter struct { 16 | Signer bearer.Signer 17 | } 18 | 19 | var _ (smithyhttp.Signer) = (*BearerTokenSignerAdapter)(nil) 20 | 21 | // SignRequest signs the request with the provided bearer token. 22 | func (v *BearerTokenSignerAdapter) SignRequest(ctx context.Context, r *smithyhttp.Request, identity auth.Identity, _ smithy.Properties) error { 23 | ca, ok := identity.(*BearerTokenAdapter) 24 | if !ok { 25 | return fmt.Errorf("unexpected identity type: %T", identity) 26 | } 27 | 28 | signed, err := v.Signer.SignWithBearerToken(ctx, ca.Token, r) 29 | if err != nil { 30 | return fmt.Errorf("sign request: %w", err) 31 | } 32 | 33 | *r = *signed.(*smithyhttp.Request) 34 | return nil 35 | } 36 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/auth/smithy/smithy.go: -------------------------------------------------------------------------------- 1 | // Package smithy adapts concrete AWS auth and signing types to the generic smithy versions. 2 | package smithy 3 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/configsources/go_module_metadata.go: -------------------------------------------------------------------------------- 1 | // Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT. 2 | 3 | package configsources 4 | 5 | // goModuleVersion is the tagged release for this module 6 | const goModuleVersion = "1.3.17" 7 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/awsrulesfn/doc.go: -------------------------------------------------------------------------------- 1 | // Package awsrulesfn provides AWS focused endpoint rule functions for 2 | // evaluating endpoint resolution rules. 3 | package awsrulesfn 4 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/awsrulesfn/generate.go: -------------------------------------------------------------------------------- 1 | //go:build codegen 2 | // +build codegen 3 | 4 | package awsrulesfn 5 | 6 | //go:generate go run -tags codegen ./internal/partition/codegen.go -model partitions.json -output partitions.go 7 | //go:generate gofmt -w -s . 8 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/endpoints/v2/go_module_metadata.go: -------------------------------------------------------------------------------- 1 | // Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT. 2 | 3 | package endpoints 4 | 5 | // goModuleVersion is the tagged release for this module 6 | const goModuleVersion = "2.6.17" 7 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/ini/errors.go: -------------------------------------------------------------------------------- 1 | package ini 2 | 3 | import "fmt" 4 | 5 | // UnableToReadFile is an error indicating that a ini file could not be read 6 | type UnableToReadFile struct { 7 | Err error 8 | } 9 | 10 | // Error returns an error message and the underlying error message if present 11 | func (e *UnableToReadFile) Error() string { 12 | base := "unable to read file" 13 | if e.Err == nil { 14 | return base 15 | } 16 | return fmt.Sprintf("%s: %v", base, e.Err) 17 | } 18 | 19 | // Unwrap returns the underlying error 20 | func (e *UnableToReadFile) Unwrap() error { 21 | return e.Err 22 | } 23 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/ini/go_module_metadata.go: -------------------------------------------------------------------------------- 1 | // Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT. 2 | 3 | package ini 4 | 5 | // goModuleVersion is the tagged release for this module 6 | const goModuleVersion = "1.8.1" 7 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/ini/token.go: -------------------------------------------------------------------------------- 1 | package ini 2 | 3 | type lineToken interface { 4 | isLineToken() 5 | } 6 | 7 | type lineTokenProfile struct { 8 | Type string 9 | Name string 10 | } 11 | 12 | func (*lineTokenProfile) isLineToken() {} 13 | 14 | type lineTokenProperty struct { 15 | Key string 16 | Value string 17 | } 18 | 19 | func (*lineTokenProperty) isLineToken() {} 20 | 21 | type lineTokenContinuation struct { 22 | Value string 23 | } 24 | 25 | func (*lineTokenContinuation) isLineToken() {} 26 | 27 | type lineTokenSubProperty struct { 28 | Key string 29 | Value string 30 | } 31 | 32 | func (*lineTokenSubProperty) isLineToken() {} 33 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/rand/rand.go: -------------------------------------------------------------------------------- 1 | package rand 2 | 3 | import ( 4 | "crypto/rand" 5 | "fmt" 6 | "io" 7 | "math/big" 8 | ) 9 | 10 | func init() { 11 | Reader = rand.Reader 12 | } 13 | 14 | // Reader provides a random reader that can reset during testing. 15 | var Reader io.Reader 16 | 17 | var floatMaxBigInt = big.NewInt(1 << 53) 18 | 19 | // Float64 returns a float64 read from an io.Reader source. The returned float will be between [0.0, 1.0). 20 | func Float64(reader io.Reader) (float64, error) { 21 | bi, err := rand.Int(reader, floatMaxBigInt) 22 | if err != nil { 23 | return 0, fmt.Errorf("failed to read random value, %v", err) 24 | } 25 | 26 | return float64(bi.Int64()) / (1 << 53), nil 27 | } 28 | 29 | // CryptoRandFloat64 returns a random float64 obtained from the crypto rand 30 | // source. 31 | func CryptoRandFloat64() (float64, error) { 32 | return Float64(Reader) 33 | } 34 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/sdk/interfaces.go: -------------------------------------------------------------------------------- 1 | package sdk 2 | 3 | // Invalidator provides access to a type's invalidate method to make it 4 | // invalidate it cache. 5 | // 6 | // e.g aws.SafeCredentialsProvider's Invalidate method. 7 | type Invalidator interface { 8 | Invalidate() 9 | } 10 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/sdkio/byte.go: -------------------------------------------------------------------------------- 1 | package sdkio 2 | 3 | const ( 4 | // Byte is 8 bits 5 | Byte int64 = 1 6 | // KibiByte (KiB) is 1024 Bytes 7 | KibiByte = Byte * 1024 8 | // MebiByte (MiB) is 1024 KiB 9 | MebiByte = KibiByte * 1024 10 | // GibiByte (GiB) is 1024 MiB 11 | GibiByte = MebiByte * 1024 12 | ) 13 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/shareddefaults/shared_config.go: -------------------------------------------------------------------------------- 1 | package shareddefaults 2 | 3 | import ( 4 | "os" 5 | "os/user" 6 | "path/filepath" 7 | ) 8 | 9 | // SharedCredentialsFilename returns the SDK's default file path 10 | // for the shared credentials file. 11 | // 12 | // Builds the shared config file path based on the OS's platform. 13 | // 14 | // - Linux/Unix: $HOME/.aws/credentials 15 | // - Windows: %USERPROFILE%\.aws\credentials 16 | func SharedCredentialsFilename() string { 17 | return filepath.Join(UserHomeDir(), ".aws", "credentials") 18 | } 19 | 20 | // SharedConfigFilename returns the SDK's default file path for 21 | // the shared config file. 22 | // 23 | // Builds the shared config file path based on the OS's platform. 24 | // 25 | // - Linux/Unix: $HOME/.aws/config 26 | // - Windows: %USERPROFILE%\.aws\config 27 | func SharedConfigFilename() string { 28 | return filepath.Join(UserHomeDir(), ".aws", "config") 29 | } 30 | 31 | // UserHomeDir returns the home directory for the user the process is 32 | // running under. 33 | func UserHomeDir() string { 34 | // Ignore errors since we only care about Windows and *nix. 35 | home, _ := os.UserHomeDir() 36 | 37 | if len(home) > 0 { 38 | return home 39 | } 40 | 41 | currUser, _ := user.Current() 42 | if currUser != nil { 43 | home = currUser.HomeDir 44 | } 45 | 46 | return home 47 | } 48 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/strings/strings.go: -------------------------------------------------------------------------------- 1 | package strings 2 | 3 | import ( 4 | "strings" 5 | ) 6 | 7 | // HasPrefixFold tests whether the string s begins with prefix, interpreted as UTF-8 strings, 8 | // under Unicode case-folding. 9 | func HasPrefixFold(s, prefix string) bool { 10 | return len(s) >= len(prefix) && strings.EqualFold(s[0:len(prefix)], prefix) 11 | } 12 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/sync/singleflight/docs.go: -------------------------------------------------------------------------------- 1 | // Package singleflight provides a duplicate function call suppression 2 | // mechanism. This package is a fork of the Go golang.org/x/sync/singleflight 3 | // package. The package is forked, because the package a part of the unstable 4 | // and unversioned golang.org/x/sync module. 5 | // 6 | // https://github.com/golang/sync/tree/67f06af15bc961c363a7260195bcd53487529a21/singleflight 7 | package singleflight 8 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/internal/timeconv/duration.go: -------------------------------------------------------------------------------- 1 | package timeconv 2 | 3 | import "time" 4 | 5 | // FloatSecondsDur converts a fractional seconds to duration. 6 | func FloatSecondsDur(v float64) time.Duration { 7 | return time.Duration(v * float64(time.Second)) 8 | } 9 | 10 | // DurSecondsFloat converts a duration into fractional seconds. 11 | func DurSecondsFloat(d time.Duration) float64 { 12 | return float64(d) / float64(time.Second) 13 | } 14 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/service/ec2/doc.go: -------------------------------------------------------------------------------- 1 | // Code generated by smithy-go-codegen DO NOT EDIT. 2 | 3 | // Package ec2 provides the API client, operations, and parameter types for Amazon 4 | // Elastic Compute Cloud. 5 | // 6 | // # Amazon Elastic Compute Cloud 7 | // 8 | // You can access the features of Amazon Elastic Compute Cloud (Amazon EC2) 9 | // programmatically. For more information, see the [Amazon EC2 Developer Guide]. 10 | // 11 | // [Amazon EC2 Developer Guide]: https://docs.aws.amazon.com/ec2/latest/devguide 12 | package ec2 13 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/service/ec2/go_module_metadata.go: -------------------------------------------------------------------------------- 1 | // Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT. 2 | 3 | package ec2 4 | 5 | // goModuleVersion is the tagged release for this module 6 | const goModuleVersion = "1.177.4" 7 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/doc.go: -------------------------------------------------------------------------------- 1 | /* 2 | Package acceptencoding provides customizations associated with Accept Encoding Header. 3 | 4 | # Accept encoding gzip 5 | 6 | The Go HTTP client automatically supports accept-encoding and content-encoding 7 | gzip by default. This default behavior is not desired by the SDK, and prevents 8 | validating the response body's checksum. To prevent this the SDK must manually 9 | control usage of content-encoding gzip. 10 | 11 | To control content-encoding, the SDK must always set the `Accept-Encoding` 12 | header to a value. This prevents the HTTP client from using gzip automatically. 13 | When gzip is enabled on the API client, the SDK's customization will control 14 | decompressing the gzip data in order to not break the checksum validation. When 15 | gzip is disabled, the API client will disable gzip, preventing the HTTP 16 | client's default behavior. 17 | 18 | An `EnableAcceptEncodingGzip` option may or may not be present depending on the client using 19 | the below middleware. The option if present can be used to enable auto decompressing 20 | gzip by the SDK. 21 | */ 22 | package acceptencoding 23 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding/go_module_metadata.go: -------------------------------------------------------------------------------- 1 | // Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT. 2 | 3 | package acceptencoding 4 | 5 | // goModuleVersion is the tagged release for this module 6 | const goModuleVersion = "1.11.4" 7 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/doc.go: -------------------------------------------------------------------------------- 1 | // Package presignedurl provides the customizations for API clients to fill in 2 | // presigned URLs into input parameters. 3 | package presignedurl 4 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/service/internal/presigned-url/go_module_metadata.go: -------------------------------------------------------------------------------- 1 | // Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT. 2 | 3 | package presignedurl 4 | 5 | // goModuleVersion is the tagged release for this module 6 | const goModuleVersion = "1.11.19" 7 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/service/sso/generated.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "github.com/aws/aws-sdk-go-v2": "v1.4.0", 4 | "github.com/aws/aws-sdk-go-v2/internal/configsources": "v0.0.0-00010101000000-000000000000", 5 | "github.com/aws/aws-sdk-go-v2/internal/endpoints/v2": "v2.0.0-00010101000000-000000000000", 6 | "github.com/aws/smithy-go": "v1.4.0" 7 | }, 8 | "files": [ 9 | "api_client.go", 10 | "api_client_test.go", 11 | "api_op_GetRoleCredentials.go", 12 | "api_op_ListAccountRoles.go", 13 | "api_op_ListAccounts.go", 14 | "api_op_Logout.go", 15 | "auth.go", 16 | "deserializers.go", 17 | "doc.go", 18 | "endpoints.go", 19 | "endpoints_config_test.go", 20 | "endpoints_test.go", 21 | "generated.json", 22 | "internal/endpoints/endpoints.go", 23 | "internal/endpoints/endpoints_test.go", 24 | "options.go", 25 | "protocol_test.go", 26 | "serializers.go", 27 | "snapshot_test.go", 28 | "types/errors.go", 29 | "types/types.go", 30 | "validators.go" 31 | ], 32 | "go": "1.15", 33 | "module": "github.com/aws/aws-sdk-go-v2/service/sso", 34 | "unstable": false 35 | } 36 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/service/sso/go_module_metadata.go: -------------------------------------------------------------------------------- 1 | // Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT. 2 | 3 | package sso 4 | 5 | // goModuleVersion is the tagged release for this module 6 | const goModuleVersion = "1.22.8" 7 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/service/ssooidc/generated.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "github.com/aws/aws-sdk-go-v2": "v1.4.0", 4 | "github.com/aws/aws-sdk-go-v2/internal/configsources": "v0.0.0-00010101000000-000000000000", 5 | "github.com/aws/aws-sdk-go-v2/internal/endpoints/v2": "v2.0.0-00010101000000-000000000000", 6 | "github.com/aws/smithy-go": "v1.4.0" 7 | }, 8 | "files": [ 9 | "api_client.go", 10 | "api_client_test.go", 11 | "api_op_CreateToken.go", 12 | "api_op_CreateTokenWithIAM.go", 13 | "api_op_RegisterClient.go", 14 | "api_op_StartDeviceAuthorization.go", 15 | "auth.go", 16 | "deserializers.go", 17 | "doc.go", 18 | "endpoints.go", 19 | "endpoints_config_test.go", 20 | "endpoints_test.go", 21 | "generated.json", 22 | "internal/endpoints/endpoints.go", 23 | "internal/endpoints/endpoints_test.go", 24 | "options.go", 25 | "protocol_test.go", 26 | "serializers.go", 27 | "snapshot_test.go", 28 | "types/errors.go", 29 | "types/types.go", 30 | "validators.go" 31 | ], 32 | "go": "1.15", 33 | "module": "github.com/aws/aws-sdk-go-v2/service/ssooidc", 34 | "unstable": false 35 | } 36 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/service/ssooidc/go_module_metadata.go: -------------------------------------------------------------------------------- 1 | // Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT. 2 | 3 | package ssooidc 4 | 5 | // goModuleVersion is the tagged release for this module 6 | const goModuleVersion = "1.26.8" 7 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/service/ssooidc/types/types.go: -------------------------------------------------------------------------------- 1 | // Code generated by smithy-go-codegen DO NOT EDIT. 2 | 3 | package types 4 | 5 | import ( 6 | smithydocument "github.com/aws/smithy-go/document" 7 | ) 8 | 9 | type noSmithyDocumentSerde = smithydocument.NoSerde 10 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/service/sts/doc.go: -------------------------------------------------------------------------------- 1 | // Code generated by smithy-go-codegen DO NOT EDIT. 2 | 3 | // Package sts provides the API client, operations, and parameter types for AWS 4 | // Security Token Service. 5 | // 6 | // # Security Token Service 7 | // 8 | // Security Token Service (STS) enables you to request temporary, 9 | // limited-privilege credentials for users. This guide provides descriptions of the 10 | // STS API. For more information about using this service, see [Temporary Security Credentials]. 11 | // 12 | // [Temporary Security Credentials]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html 13 | package sts 14 | -------------------------------------------------------------------------------- /vendor/github.com/aws/aws-sdk-go-v2/service/sts/go_module_metadata.go: -------------------------------------------------------------------------------- 1 | // Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT. 2 | 3 | package sts 4 | 5 | // goModuleVersion is the tagged release for this module 6 | const goModuleVersion = "1.30.8" 7 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/.gitignore: -------------------------------------------------------------------------------- 1 | # Eclipse 2 | .classpath 3 | .project 4 | .settings/ 5 | 6 | # Intellij 7 | .idea/ 8 | *.iml 9 | *.iws 10 | 11 | # Mac 12 | .DS_Store 13 | 14 | # Maven 15 | target/ 16 | **/dependency-reduced-pom.xml 17 | 18 | # Gradle 19 | /.gradle 20 | build/ 21 | */out/ 22 | */*/out/ 23 | 24 | # VS Code 25 | bin/ 26 | .vscode/ 27 | 28 | # make 29 | c.out 30 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | sudo: true 3 | dist: bionic 4 | 5 | branches: 6 | only: 7 | - main 8 | 9 | os: 10 | - linux 11 | - osx 12 | # Travis doesn't work with windows and Go tip 13 | #- windows 14 | 15 | go: 16 | - tip 17 | 18 | matrix: 19 | allow_failures: 20 | - go: tip 21 | 22 | before_install: 23 | - if [ "$TRAVIS_OS_NAME" = "windows" ]; then choco install make; fi 24 | - (cd /tmp/; go get golang.org/x/lint/golint) 25 | 26 | script: 27 | - make go test -v ./...; 28 | 29 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | ## Code of Conduct 2 | This project has adopted the [Amazon Open Source Code of Conduct](https://aws.github.io/code-of-conduct). 3 | For more information see the [Code of Conduct FAQ](https://aws.github.io/code-of-conduct-faq) or contact 4 | opensource-codeofconduct@amazon.com with any additional questions or comments. 5 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/NOTICE: -------------------------------------------------------------------------------- 1 | Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/auth/auth.go: -------------------------------------------------------------------------------- 1 | // Package auth defines protocol-agnostic authentication types for smithy 2 | // clients. 3 | package auth 4 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/auth/bearer/docs.go: -------------------------------------------------------------------------------- 1 | // Package bearer provides middleware and utilities for authenticating API 2 | // operation calls with a Bearer Token. 3 | package bearer 4 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/auth/option.go: -------------------------------------------------------------------------------- 1 | package auth 2 | 3 | import "github.com/aws/smithy-go" 4 | 5 | type ( 6 | authOptionsKey struct{} 7 | ) 8 | 9 | // Option represents a possible authentication method for an operation. 10 | type Option struct { 11 | SchemeID string 12 | IdentityProperties smithy.Properties 13 | SignerProperties smithy.Properties 14 | } 15 | 16 | // GetAuthOptions gets auth Options from Properties. 17 | func GetAuthOptions(p *smithy.Properties) ([]*Option, bool) { 18 | v, ok := p.Get(authOptionsKey{}).([]*Option) 19 | return v, ok 20 | } 21 | 22 | // SetAuthOptions sets auth Options on Properties. 23 | func SetAuthOptions(p *smithy.Properties, options []*Option) { 24 | p.Set(authOptionsKey{}, options) 25 | } 26 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/auth/scheme_id.go: -------------------------------------------------------------------------------- 1 | package auth 2 | 3 | // Anonymous 4 | const ( 5 | SchemeIDAnonymous = "smithy.api#noAuth" 6 | ) 7 | 8 | // HTTP auth schemes 9 | const ( 10 | SchemeIDHTTPBasic = "smithy.api#httpBasicAuth" 11 | SchemeIDHTTPDigest = "smithy.api#httpDigestAuth" 12 | SchemeIDHTTPBearer = "smithy.api#httpBearerAuth" 13 | SchemeIDHTTPAPIKey = "smithy.api#httpApiKeyAuth" 14 | ) 15 | 16 | // AWS auth schemes 17 | const ( 18 | SchemeIDSigV4 = "aws.auth#sigv4" 19 | SchemeIDSigV4A = "aws.auth#sigv4a" 20 | ) 21 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/doc.go: -------------------------------------------------------------------------------- 1 | // Package smithy provides the core components for a Smithy SDK. 2 | package smithy 3 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/document.go: -------------------------------------------------------------------------------- 1 | package smithy 2 | 3 | // Document provides access to loosely structured data in a document-like 4 | // format. 5 | // 6 | // Deprecated: See the github.com/aws/smithy-go/document package. 7 | type Document interface { 8 | UnmarshalDocument(interface{}) error 9 | GetValue() (interface{}, error) 10 | } 11 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/document/doc.go: -------------------------------------------------------------------------------- 1 | // Package document provides interface definitions and error types for document types. 2 | // 3 | // A document is a protocol-agnostic type which supports a JSON-like data-model. You can use this type to send 4 | // UTF-8 strings, arbitrary precision numbers, booleans, nulls, a list of these values, and a map of UTF-8 5 | // strings to these values. 6 | // 7 | // API Clients expose document constructors in their respective client document packages which must be used to 8 | // Marshal and Unmarshal Go types to and from their respective protocol representations. 9 | // 10 | // See the Marshaler and Unmarshaler type documentation for more details on how to Go types can be converted to and from 11 | // document types. 12 | package document 13 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/encoding/doc.go: -------------------------------------------------------------------------------- 1 | // Package encoding provides utilities for encoding values for specific 2 | // document encodings. 3 | 4 | package encoding 5 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/encoding/encoding.go: -------------------------------------------------------------------------------- 1 | package encoding 2 | 3 | import ( 4 | "fmt" 5 | "math" 6 | "strconv" 7 | ) 8 | 9 | // EncodeFloat encodes a float value as per the stdlib encoder for json and xml protocol 10 | // This encodes a float value into dst while attempting to conform to ES6 ToString for Numbers 11 | // 12 | // Based on encoding/json floatEncoder from the Go Standard Library 13 | // https://golang.org/src/encoding/json/encode.go 14 | func EncodeFloat(dst []byte, v float64, bits int) []byte { 15 | if math.IsInf(v, 0) || math.IsNaN(v) { 16 | panic(fmt.Sprintf("invalid float value: %s", strconv.FormatFloat(v, 'g', -1, bits))) 17 | } 18 | 19 | abs := math.Abs(v) 20 | fmt := byte('f') 21 | 22 | if abs != 0 { 23 | if bits == 64 && (abs < 1e-6 || abs >= 1e21) || bits == 32 && (float32(abs) < 1e-6 || float32(abs) >= 1e21) { 24 | fmt = 'e' 25 | } 26 | } 27 | 28 | dst = strconv.AppendFloat(dst, v, fmt, -1, bits) 29 | 30 | if fmt == 'e' { 31 | // clean up e-09 to e-9 32 | n := len(dst) 33 | if n >= 4 && dst[n-4] == 'e' && dst[n-3] == '-' && dst[n-2] == '0' { 34 | dst[n-2] = dst[n-1] 35 | dst = dst[:n-1] 36 | } 37 | } 38 | 39 | return dst 40 | } 41 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/encoding/json/array.go: -------------------------------------------------------------------------------- 1 | package json 2 | 3 | import ( 4 | "bytes" 5 | ) 6 | 7 | // Array represents the encoding of a JSON Array 8 | type Array struct { 9 | w *bytes.Buffer 10 | writeComma bool 11 | scratch *[]byte 12 | } 13 | 14 | func newArray(w *bytes.Buffer, scratch *[]byte) *Array { 15 | w.WriteRune(leftBracket) 16 | return &Array{w: w, scratch: scratch} 17 | } 18 | 19 | // Value adds a new element to the JSON Array. 20 | // Returns a Value type that is used to encode 21 | // the array element. 22 | func (a *Array) Value() Value { 23 | if a.writeComma { 24 | a.w.WriteRune(comma) 25 | } else { 26 | a.writeComma = true 27 | } 28 | 29 | return newValue(a.w, a.scratch) 30 | } 31 | 32 | // Close encodes the end of the JSON Array 33 | func (a *Array) Close() { 34 | a.w.WriteRune(rightBracket) 35 | } 36 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/encoding/json/constants.go: -------------------------------------------------------------------------------- 1 | package json 2 | 3 | const ( 4 | leftBrace = '{' 5 | rightBrace = '}' 6 | 7 | leftBracket = '[' 8 | rightBracket = ']' 9 | 10 | comma = ',' 11 | quote = '"' 12 | colon = ':' 13 | 14 | null = "null" 15 | ) 16 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/encoding/json/encoder.go: -------------------------------------------------------------------------------- 1 | package json 2 | 3 | import ( 4 | "bytes" 5 | ) 6 | 7 | // Encoder is JSON encoder that supports construction of JSON values 8 | // using methods. 9 | type Encoder struct { 10 | w *bytes.Buffer 11 | Value 12 | } 13 | 14 | // NewEncoder returns a new JSON encoder 15 | func NewEncoder() *Encoder { 16 | writer := bytes.NewBuffer(nil) 17 | scratch := make([]byte, 64) 18 | 19 | return &Encoder{w: writer, Value: newValue(writer, &scratch)} 20 | } 21 | 22 | // String returns the String output of the JSON encoder 23 | func (e Encoder) String() string { 24 | return e.w.String() 25 | } 26 | 27 | // Bytes returns the []byte slice of the JSON encoder 28 | func (e Encoder) Bytes() []byte { 29 | return e.w.Bytes() 30 | } 31 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/encoding/json/object.go: -------------------------------------------------------------------------------- 1 | package json 2 | 3 | import ( 4 | "bytes" 5 | ) 6 | 7 | // Object represents the encoding of a JSON Object type 8 | type Object struct { 9 | w *bytes.Buffer 10 | writeComma bool 11 | scratch *[]byte 12 | } 13 | 14 | func newObject(w *bytes.Buffer, scratch *[]byte) *Object { 15 | w.WriteRune(leftBrace) 16 | return &Object{w: w, scratch: scratch} 17 | } 18 | 19 | func (o *Object) writeKey(key string) { 20 | escapeStringBytes(o.w, []byte(key)) 21 | o.w.WriteRune(colon) 22 | } 23 | 24 | // Key adds the given named key to the JSON object. 25 | // Returns a Value encoder that should be used to encode 26 | // a JSON value type. 27 | func (o *Object) Key(name string) Value { 28 | if o.writeComma { 29 | o.w.WriteRune(comma) 30 | } else { 31 | o.writeComma = true 32 | } 33 | o.writeKey(name) 34 | return newValue(o.w, o.scratch) 35 | } 36 | 37 | // Close encodes the end of the JSON Object 38 | func (o *Object) Close() { 39 | o.w.WriteRune(rightBrace) 40 | } 41 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/encoding/xml/constants.go: -------------------------------------------------------------------------------- 1 | package xml 2 | 3 | const ( 4 | leftAngleBracket = '<' 5 | rightAngleBracket = '>' 6 | forwardSlash = '/' 7 | colon = ':' 8 | equals = '=' 9 | quote = '"' 10 | ) 11 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/endpoints/endpoint.go: -------------------------------------------------------------------------------- 1 | package transport 2 | 3 | import ( 4 | "net/http" 5 | "net/url" 6 | 7 | "github.com/aws/smithy-go" 8 | ) 9 | 10 | // Endpoint is the endpoint object returned by Endpoint resolution V2 11 | type Endpoint struct { 12 | // The complete URL minimally specfiying the scheme and host. 13 | // May optionally specify the port and base path component. 14 | URI url.URL 15 | 16 | // An optional set of headers to be sent using transport layer headers. 17 | Headers http.Header 18 | 19 | // A grab-bag property map of endpoint attributes. The 20 | // values present here are subject to change, or being add/removed at any 21 | // time. 22 | Properties smithy.Properties 23 | } 24 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/go_module_metadata.go: -------------------------------------------------------------------------------- 1 | // Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT. 2 | 3 | package smithy 4 | 5 | // goModuleVersion is the tagged release for this module 6 | const goModuleVersion = "1.20.4" 7 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/internal/sync/singleflight/docs.go: -------------------------------------------------------------------------------- 1 | // Package singleflight provides a duplicate function call suppression 2 | // mechanism. This package is a fork of the Go golang.org/x/sync/singleflight 3 | // package. The package is forked, because the package a part of the unstable 4 | // and unversioned golang.org/x/sync module. 5 | // 6 | // https://github.com/golang/sync/tree/67f06af15bc961c363a7260195bcd53487529a21/singleflight 7 | 8 | package singleflight 9 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/io/byte.go: -------------------------------------------------------------------------------- 1 | package io 2 | 3 | const ( 4 | // Byte is 8 bits 5 | Byte int64 = 1 6 | // KibiByte (KiB) is 1024 Bytes 7 | KibiByte = Byte * 1024 8 | // MebiByte (MiB) is 1024 KiB 9 | MebiByte = KibiByte * 1024 10 | // GibiByte (GiB) is 1024 MiB 11 | GibiByte = MebiByte * 1024 12 | ) 13 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/io/doc.go: -------------------------------------------------------------------------------- 1 | // Package io provides utilities for Smithy generated API clients. 2 | package io 3 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/io/reader.go: -------------------------------------------------------------------------------- 1 | package io 2 | 3 | import ( 4 | "io" 5 | ) 6 | 7 | // ReadSeekNopCloser wraps an io.ReadSeeker with an additional Close method 8 | // that does nothing. 9 | type ReadSeekNopCloser struct { 10 | io.ReadSeeker 11 | } 12 | 13 | // Close does nothing. 14 | func (ReadSeekNopCloser) Close() error { 15 | return nil 16 | } 17 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/local-mod-replace.sh: -------------------------------------------------------------------------------- 1 | #1/usr/bin/env bash 2 | 3 | PROJECT_DIR="" 4 | SMITHY_SOURCE_DIR=$(cd `dirname $0` && pwd) 5 | 6 | usage() { 7 | echo "Usage: $0 [-s SMITHY_SOURCE_DIR] [-d PROJECT_DIR]" 1>&2 8 | exit 1 9 | } 10 | 11 | while getopts "hs:d:" options; do 12 | case "${options}" in 13 | s) 14 | SMITHY_SOURCE_DIR=${OPTARG} 15 | if [ "$SMITHY_SOURCE_DIR" == "" ]; then 16 | echo "path to smithy-go source directory is required" || exit 17 | usage 18 | fi 19 | ;; 20 | d) 21 | PROJECT_DIR=${OPTARG} 22 | ;; 23 | h) 24 | usage 25 | ;; 26 | *) 27 | usage 28 | ;; 29 | esac 30 | done 31 | 32 | if [ "$PROJECT_DIR" != "" ]; then 33 | cd $PROJECT_DIR || exit 34 | fi 35 | 36 | go mod graph | awk '{print $1}' | cut -d '@' -f 1 | sort | uniq | grep "github.com/aws/smithy-go" | while read x; do 37 | repPath=${x/github.com\/aws\/smithy-go/${SMITHY_SOURCE_DIR}} 38 | echo -replace $x=$repPath 39 | done | xargs go mod edit 40 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/modman.toml: -------------------------------------------------------------------------------- 1 | [dependencies] 2 | "github.com/jmespath/go-jmespath" = "v0.4.0" 3 | 4 | [modules] 5 | 6 | [modules.codegen] 7 | no_tag = true 8 | 9 | [modules."codegen/smithy-go-codegen/build/test-generated/go/internal/testmodule"] 10 | no_tag = true 11 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/private/requestcompression/gzip.go: -------------------------------------------------------------------------------- 1 | package requestcompression 2 | 3 | import ( 4 | "bytes" 5 | "compress/gzip" 6 | "fmt" 7 | "io" 8 | ) 9 | 10 | func gzipCompress(input io.Reader) ([]byte, error) { 11 | var b bytes.Buffer 12 | w, err := gzip.NewWriterLevel(&b, gzip.DefaultCompression) 13 | if err != nil { 14 | return nil, fmt.Errorf("failed to create gzip writer, %v", err) 15 | } 16 | 17 | inBytes, err := io.ReadAll(input) 18 | if err != nil { 19 | return nil, fmt.Errorf("failed read payload to compress, %v", err) 20 | } 21 | 22 | if _, err = w.Write(inBytes); err != nil { 23 | return nil, fmt.Errorf("failed to write payload to be compressed, %v", err) 24 | } 25 | if err = w.Close(); err != nil { 26 | return nil, fmt.Errorf("failed to flush payload being compressed, %v", err) 27 | } 28 | 29 | return b.Bytes(), nil 30 | } 31 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/ptr/doc.go: -------------------------------------------------------------------------------- 1 | // Package ptr provides utilities for converting scalar literal type values to and from pointers inline. 2 | package ptr 3 | 4 | //go:generate go run -tags codegen generate.go 5 | //go:generate gofmt -w -s . 6 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/rand/doc.go: -------------------------------------------------------------------------------- 1 | // Package rand provides utilities for creating and working with random value 2 | // generators. 3 | package rand 4 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/rand/rand.go: -------------------------------------------------------------------------------- 1 | package rand 2 | 3 | import ( 4 | "crypto/rand" 5 | "fmt" 6 | "io" 7 | "math/big" 8 | ) 9 | 10 | func init() { 11 | Reader = rand.Reader 12 | } 13 | 14 | // Reader provides a random reader that can reset during testing. 15 | var Reader io.Reader 16 | 17 | // Int63n returns a int64 between zero and value of max, read from an io.Reader source. 18 | func Int63n(reader io.Reader, max int64) (int64, error) { 19 | bi, err := rand.Int(reader, big.NewInt(max)) 20 | if err != nil { 21 | return 0, fmt.Errorf("failed to read random value, %w", err) 22 | } 23 | 24 | return bi.Int64(), nil 25 | } 26 | 27 | // CryptoRandInt63n returns a random int64 between zero and value of max 28 | // obtained from the crypto rand source. 29 | func CryptoRandInt63n(max int64) (int64, error) { 30 | return Int63n(Reader, max) 31 | } 32 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/transport/http/auth.go: -------------------------------------------------------------------------------- 1 | package http 2 | 3 | import ( 4 | "context" 5 | 6 | smithy "github.com/aws/smithy-go" 7 | "github.com/aws/smithy-go/auth" 8 | ) 9 | 10 | // AuthScheme defines an HTTP authentication scheme. 11 | type AuthScheme interface { 12 | SchemeID() string 13 | IdentityResolver(auth.IdentityResolverOptions) auth.IdentityResolver 14 | Signer() Signer 15 | } 16 | 17 | // Signer defines the interface through which HTTP requests are supplemented 18 | // with an Identity. 19 | type Signer interface { 20 | SignRequest(context.Context, *Request, auth.Identity, smithy.Properties) error 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/transport/http/auth_schemes.go: -------------------------------------------------------------------------------- 1 | package http 2 | 3 | import ( 4 | "context" 5 | 6 | smithy "github.com/aws/smithy-go" 7 | "github.com/aws/smithy-go/auth" 8 | ) 9 | 10 | // NewAnonymousScheme returns the anonymous HTTP auth scheme. 11 | func NewAnonymousScheme() AuthScheme { 12 | return &authScheme{ 13 | schemeID: auth.SchemeIDAnonymous, 14 | signer: &nopSigner{}, 15 | } 16 | } 17 | 18 | // authScheme is parameterized to generically implement the exported AuthScheme 19 | // interface 20 | type authScheme struct { 21 | schemeID string 22 | signer Signer 23 | } 24 | 25 | var _ AuthScheme = (*authScheme)(nil) 26 | 27 | func (s *authScheme) SchemeID() string { 28 | return s.schemeID 29 | } 30 | 31 | func (s *authScheme) IdentityResolver(o auth.IdentityResolverOptions) auth.IdentityResolver { 32 | return o.GetIdentityResolver(s.schemeID) 33 | } 34 | 35 | func (s *authScheme) Signer() Signer { 36 | return s.signer 37 | } 38 | 39 | type nopSigner struct{} 40 | 41 | var _ Signer = (*nopSigner)(nil) 42 | 43 | func (*nopSigner) SignRequest(context.Context, *Request, auth.Identity, smithy.Properties) error { 44 | return nil 45 | } 46 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/transport/http/doc.go: -------------------------------------------------------------------------------- 1 | /* 2 | Package http provides the HTTP transport client and request/response types 3 | needed to round trip API operation calls with an service. 4 | */ 5 | package http 6 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/transport/http/md5_checksum.go: -------------------------------------------------------------------------------- 1 | package http 2 | 3 | import ( 4 | "crypto/md5" 5 | "encoding/base64" 6 | "fmt" 7 | "io" 8 | ) 9 | 10 | // computeMD5Checksum computes base64 md5 checksum of an io.Reader's contents. 11 | // Returns the byte slice of md5 checksum and an error. 12 | func computeMD5Checksum(r io.Reader) ([]byte, error) { 13 | h := md5.New() 14 | // copy errors may be assumed to be from the body. 15 | _, err := io.Copy(h, r) 16 | if err != nil { 17 | return nil, fmt.Errorf("failed to read body: %w", err) 18 | } 19 | 20 | // encode the md5 checksum in base64. 21 | sum := h.Sum(nil) 22 | sum64 := make([]byte, base64.StdEncoding.EncodedLen(len(sum))) 23 | base64.StdEncoding.Encode(sum64, sum) 24 | return sum64, nil 25 | } 26 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/transport/http/response.go: -------------------------------------------------------------------------------- 1 | package http 2 | 3 | import ( 4 | "fmt" 5 | "net/http" 6 | ) 7 | 8 | // Response provides the HTTP specific response structure for HTTP specific 9 | // middleware steps to use to deserialize the response from an operation call. 10 | type Response struct { 11 | *http.Response 12 | } 13 | 14 | // ResponseError provides the HTTP centric error type wrapping the underlying 15 | // error with the HTTP response value. 16 | type ResponseError struct { 17 | Response *Response 18 | Err error 19 | } 20 | 21 | // HTTPStatusCode returns the HTTP response status code received from the service. 22 | func (e *ResponseError) HTTPStatusCode() int { return e.Response.StatusCode } 23 | 24 | // HTTPResponse returns the HTTP response received from the service. 25 | func (e *ResponseError) HTTPResponse() *Response { return e.Response } 26 | 27 | // Unwrap returns the nested error if any, or nil. 28 | func (e *ResponseError) Unwrap() error { return e.Err } 29 | 30 | func (e *ResponseError) Error() string { 31 | return fmt.Sprintf( 32 | "http response error StatusCode: %d, %v", 33 | e.Response.StatusCode, e.Err) 34 | } 35 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/transport/http/time.go: -------------------------------------------------------------------------------- 1 | package http 2 | 3 | import ( 4 | "time" 5 | 6 | smithytime "github.com/aws/smithy-go/time" 7 | ) 8 | 9 | // ParseTime parses a time string like the HTTP Date header. This uses a more 10 | // relaxed rule set for date parsing compared to the standard library. 11 | func ParseTime(text string) (t time.Time, err error) { 12 | return smithytime.ParseHTTPDate(text) 13 | } 14 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/transport/http/url.go: -------------------------------------------------------------------------------- 1 | package http 2 | 3 | import "strings" 4 | 5 | // JoinPath returns an absolute URL path composed of the two paths provided. 6 | // Enforces that the returned path begins with '/'. If added path is empty the 7 | // returned path suffix will match the first parameter suffix. 8 | func JoinPath(a, b string) string { 9 | if len(a) == 0 { 10 | a = "/" 11 | } else if a[0] != '/' { 12 | a = "/" + a 13 | } 14 | 15 | if len(b) != 0 && b[0] == '/' { 16 | b = b[1:] 17 | } 18 | 19 | if len(b) != 0 && len(a) > 1 && a[len(a)-1] != '/' { 20 | a = a + "/" 21 | } 22 | 23 | return a + b 24 | } 25 | 26 | // JoinRawQuery returns an absolute raw query expression. Any duplicate '&' 27 | // will be collapsed to single separator between values. 28 | func JoinRawQuery(a, b string) string { 29 | a = strings.TrimFunc(a, isAmpersand) 30 | b = strings.TrimFunc(b, isAmpersand) 31 | 32 | if len(a) == 0 { 33 | return b 34 | } 35 | if len(b) == 0 { 36 | return a 37 | } 38 | 39 | return a + "&" + b 40 | } 41 | 42 | func isAmpersand(v rune) bool { 43 | return v == '&' 44 | } 45 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/transport/http/user_agent.go: -------------------------------------------------------------------------------- 1 | package http 2 | 3 | import ( 4 | "strings" 5 | ) 6 | 7 | // UserAgentBuilder is a builder for a HTTP User-Agent string. 8 | type UserAgentBuilder struct { 9 | sb strings.Builder 10 | } 11 | 12 | // NewUserAgentBuilder returns a new UserAgentBuilder. 13 | func NewUserAgentBuilder() *UserAgentBuilder { 14 | return &UserAgentBuilder{sb: strings.Builder{}} 15 | } 16 | 17 | // AddKey adds the named component/product to the agent string 18 | func (u *UserAgentBuilder) AddKey(key string) { 19 | u.appendTo(key) 20 | } 21 | 22 | // AddKeyValue adds the named key to the agent string with the given value. 23 | func (u *UserAgentBuilder) AddKeyValue(key, value string) { 24 | u.appendTo(key + "/" + value) 25 | } 26 | 27 | // Build returns the constructed User-Agent string. May be called multiple times. 28 | func (u *UserAgentBuilder) Build() string { 29 | return u.sb.String() 30 | } 31 | 32 | func (u *UserAgentBuilder) appendTo(value string) { 33 | if u.sb.Len() > 0 { 34 | u.sb.WriteRune(' ') 35 | } 36 | u.sb.WriteString(value) 37 | } 38 | -------------------------------------------------------------------------------- /vendor/github.com/aws/smithy-go/waiter/logger.go: -------------------------------------------------------------------------------- 1 | package waiter 2 | 3 | import ( 4 | "context" 5 | "fmt" 6 | 7 | "github.com/aws/smithy-go/logging" 8 | "github.com/aws/smithy-go/middleware" 9 | ) 10 | 11 | // Logger is the Logger middleware used by the waiter to log an attempt 12 | type Logger struct { 13 | // Attempt is the current attempt to be logged 14 | Attempt int64 15 | } 16 | 17 | // ID representing the Logger middleware 18 | func (*Logger) ID() string { 19 | return "WaiterLogger" 20 | } 21 | 22 | // HandleInitialize performs handling of request in initialize stack step 23 | func (m *Logger) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( 24 | out middleware.InitializeOutput, metadata middleware.Metadata, err error, 25 | ) { 26 | logger := middleware.GetLogger(ctx) 27 | 28 | logger.Logf(logging.Debug, fmt.Sprintf("attempting waiter request, attempt count: %d", m.Attempt)) 29 | 30 | return next.HandleInitialize(ctx, in) 31 | } 32 | 33 | // AddLogger is a helper util to add waiter logger after `SetLogger` middleware in 34 | func (m Logger) AddLogger(stack *middleware.Stack) error { 35 | return stack.Initialize.Insert(&m, "SetLogger", middleware.After) 36 | } 37 | -------------------------------------------------------------------------------- /vendor/github.com/cihub/seelog/internals_baseerror.go: -------------------------------------------------------------------------------- 1 | package seelog 2 | 3 | // Base struct for custom errors. 4 | type baseError struct { 5 | message string 6 | } 7 | 8 | func (be baseError) Error() string { 9 | return be.message 10 | } 11 | -------------------------------------------------------------------------------- /vendor/github.com/containernetworking/cni/pkg/invoke/os_unix.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 CNI authors 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | // +build darwin dragonfly freebsd linux netbsd opensbd solaris 16 | 17 | package invoke 18 | 19 | // Valid file extensions for plugin executables. 20 | var ExecutableFileExtensions = []string{""} 21 | -------------------------------------------------------------------------------- /vendor/github.com/containernetworking/cni/pkg/invoke/os_windows.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 CNI authors 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package invoke 16 | 17 | // Valid file extensions for plugin executables. 18 | var ExecutableFileExtensions = []string{".exe", ""} 19 | -------------------------------------------------------------------------------- /vendor/github.com/containernetworking/cni/pkg/ip/ipforward.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015 CNI authors 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package ip 16 | 17 | import ( 18 | "io/ioutil" 19 | ) 20 | 21 | func EnableIP4Forward() error { 22 | return echo1("/proc/sys/net/ipv4/ip_forward") 23 | } 24 | 25 | func EnableIP6Forward() error { 26 | return echo1("/proc/sys/net/ipv6/conf/all/forwarding") 27 | } 28 | 29 | func echo1(f string) error { 30 | return ioutil.WriteFile(f, []byte("1"), 0644) 31 | } 32 | -------------------------------------------------------------------------------- /vendor/github.com/containernetworking/cni/pkg/ip/route.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015 CNI authors 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package ip 16 | 17 | import ( 18 | "net" 19 | 20 | "github.com/vishvananda/netlink" 21 | ) 22 | 23 | // AddDefaultRoute sets the default route on the given gateway. 24 | func AddDefaultRoute(gw net.IP, dev netlink.Link) error { 25 | _, defNet, _ := net.ParseCIDR("0.0.0.0/0") 26 | return AddRoute(defNet, gw, dev) 27 | } 28 | -------------------------------------------------------------------------------- /vendor/github.com/containernetworking/cni/pkg/ip/route_unspecified.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015-2017 CNI authors 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | // +build !linux 16 | 17 | package ip 18 | 19 | import ( 20 | "net" 21 | 22 | "github.com/containernetworking/cni/pkg/types" 23 | "github.com/vishvananda/netlink" 24 | ) 25 | 26 | // AddRoute adds a universally-scoped route to a device. 27 | func AddRoute(ipn *net.IPNet, gw net.IP, dev netlink.Link) error { 28 | return types.NotImplementedError 29 | } 30 | 31 | // AddHostRoute adds a host-scoped route to a device. 32 | func AddHostRoute(ipn *net.IPNet, gw net.IP, dev netlink.Link) error { 33 | return types.NotImplementedError 34 | } 35 | -------------------------------------------------------------------------------- /vendor/github.com/containernetworking/cni/pkg/ns/ns_unspecified.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015-2017 CNI authors 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | // +build !linux 16 | 17 | package ns 18 | 19 | import "github.com/containernetworking/cni/pkg/types" 20 | 21 | // Returns an object representing the current OS thread's network namespace 22 | func GetCurrentNS() (NetNS, error) { 23 | return nil, types.NotImplementedError 24 | } 25 | 26 | func NewNS() (NetNS, error) { 27 | return nil, types.NotImplementedError 28 | } 29 | 30 | func (ns *netNS) Close() error { 31 | return types.NotImplementedError 32 | } 33 | 34 | func (ns *netNS) Set() error { 35 | return types.NotImplementedError 36 | } 37 | -------------------------------------------------------------------------------- /vendor/github.com/containernetworking/cni/pkg/version/conf.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 CNI authors 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | package version 16 | 17 | import ( 18 | "encoding/json" 19 | "fmt" 20 | ) 21 | 22 | // ConfigDecoder can decode the CNI version available in network config data 23 | type ConfigDecoder struct{} 24 | 25 | func (*ConfigDecoder) Decode(jsonBytes []byte) (string, error) { 26 | var conf struct { 27 | CNIVersion string `json:"cniVersion"` 28 | } 29 | err := json.Unmarshal(jsonBytes, &conf) 30 | if err != nil { 31 | return "", fmt.Errorf("decoding version from network config: %s", err) 32 | } 33 | if conf.CNIVersion == "" { 34 | return "0.1.0", nil 35 | } 36 | return conf.CNIVersion, nil 37 | } 38 | -------------------------------------------------------------------------------- /vendor/github.com/coreos/go-iptables/NOTICE: -------------------------------------------------------------------------------- 1 | CoreOS Project 2 | Copyright 2018 CoreOS, Inc 3 | 4 | This product includes software developed at CoreOS, Inc. 5 | (http://www.coreos.com/). 6 | -------------------------------------------------------------------------------- /vendor/github.com/davecgh/go-spew/LICENSE: -------------------------------------------------------------------------------- 1 | ISC License 2 | 3 | Copyright (c) 2012-2016 Dave Collins 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 15 | OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 | -------------------------------------------------------------------------------- /vendor/github.com/docker/libkv/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - 1.8.7 5 | 6 | # let us have speedy Docker-based Travis workers 7 | sudo: false 8 | 9 | before_install: 10 | # Symlink below is needed for Travis CI to work correctly on personal forks of libkv 11 | - ln -s $HOME/gopath/src/github.com/${TRAVIS_REPO_SLUG///libkv/} $HOME/gopath/src/github.com/docker 12 | - go get golang.org/x/tools/cmd/cover 13 | - go get github.com/mattn/goveralls 14 | - go get github.com/golang/lint/golint 15 | - go get github.com/GeertJohan/fgt 16 | 17 | before_script: 18 | - script/travis_consul.sh 0.6.3 19 | - script/travis_etcd.sh 3.0.0 20 | - script/travis_zk.sh 3.5.4-beta 21 | 22 | script: 23 | - ./consul agent -server -bootstrap -advertise=127.0.0.1 -data-dir /tmp/consul -config-file=./config.json 1>/dev/null & 24 | - ./etcd/etcd --listen-client-urls 'http://0.0.0.0:4001' --advertise-client-urls 'http://127.0.0.1:4001' >/dev/null 2>&1 & 25 | - ./zk/bin/zkServer.sh start ./zk/conf/zoo.cfg 1> /dev/null 26 | - script/validate-gofmt 27 | - go vet ./... 28 | - fgt golint ./... 29 | - go test -v -race ./... 30 | - script/coverage 31 | - goveralls -service=travis-ci -coverprofile=goverage.report 32 | -------------------------------------------------------------------------------- /vendor/github.com/docker/libkv/MAINTAINERS: -------------------------------------------------------------------------------- 1 | # Libkv maintainers file 2 | # 3 | # This file describes who runs the docker/libkv project and how. 4 | # This is a living document - if you see something out of date or missing, speak up! 5 | # 6 | # It is structured to be consumable by both humans and programs. 7 | # To extract its contents programmatically, use any TOML-compliant parser. 8 | # 9 | # This file is compiled into the MAINTAINERS file in docker/opensource. 10 | # 11 | [Org] 12 | [Org."Core maintainers"] 13 | people = [ 14 | "aluzzardi", 15 | "sanimej", 16 | "vieux", 17 | ] 18 | 19 | [people] 20 | 21 | # A reference list of all people associated with the project. 22 | # All other sections should refer to people by their canonical key 23 | # in the people section. 24 | 25 | # ADD YOURSELF HERE IN ALPHABETICAL ORDER 26 | 27 | [people.aluzzardi] 28 | Name = "Andrea Luzzardi" 29 | Email = "al@docker.com" 30 | GitHub = "aluzzardi" 31 | 32 | [people.sanimej] 33 | Name = "Santhosh Manohar" 34 | Email = "santhosh@docker.com" 35 | GitHub = "sanimej" 36 | 37 | [people.vieux] 38 | Name = "Victor Vieux" 39 | Email = "vieux@docker.com" 40 | GitHub = "vieux" 41 | -------------------------------------------------------------------------------- /vendor/github.com/docker/libkv/libkv.go: -------------------------------------------------------------------------------- 1 | package libkv 2 | 3 | import ( 4 | "fmt" 5 | "sort" 6 | "strings" 7 | 8 | "github.com/docker/libkv/store" 9 | ) 10 | 11 | // Initialize creates a new Store object, initializing the client 12 | type Initialize func(addrs []string, options *store.Config) (store.Store, error) 13 | 14 | var ( 15 | // Backend initializers 16 | initializers = make(map[store.Backend]Initialize) 17 | 18 | supportedBackend = func() string { 19 | keys := make([]string, 0, len(initializers)) 20 | for k := range initializers { 21 | keys = append(keys, string(k)) 22 | } 23 | sort.Strings(keys) 24 | return strings.Join(keys, ", ") 25 | }() 26 | ) 27 | 28 | // NewStore creates an instance of store 29 | func NewStore(backend store.Backend, addrs []string, options *store.Config) (store.Store, error) { 30 | if init, exists := initializers[backend]; exists { 31 | return init(addrs, options) 32 | } 33 | 34 | return nil, fmt.Errorf("%s %s", store.ErrBackendNotSupported.Error(), supportedBackend) 35 | } 36 | 37 | // AddStore adds a new store backend to libkv 38 | func AddStore(store store.Backend, init Initialize) { 39 | initializers[store] = init 40 | } 41 | -------------------------------------------------------------------------------- /vendor/github.com/docker/libkv/store/helpers.go: -------------------------------------------------------------------------------- 1 | package store 2 | 3 | import ( 4 | "strings" 5 | ) 6 | 7 | // CreateEndpoints creates a list of endpoints given the right scheme 8 | func CreateEndpoints(addrs []string, scheme string) (entries []string) { 9 | for _, addr := range addrs { 10 | entries = append(entries, scheme+"://"+addr) 11 | } 12 | return entries 13 | } 14 | 15 | // Normalize the key for each store to the form: 16 | // 17 | // /path/to/key 18 | // 19 | func Normalize(key string) string { 20 | return "/" + join(SplitKey(key)) 21 | } 22 | 23 | // GetDirectory gets the full directory part of 24 | // the key to the form: 25 | // 26 | // /path/to/ 27 | // 28 | func GetDirectory(key string) string { 29 | parts := SplitKey(key) 30 | parts = parts[:len(parts)-1] 31 | return "/" + join(parts) 32 | } 33 | 34 | // SplitKey splits the key to extract path informations 35 | func SplitKey(key string) (path []string) { 36 | if strings.Contains(key, "/") { 37 | path = strings.Split(key, "/") 38 | } else { 39 | path = []string{key} 40 | } 41 | return path 42 | } 43 | 44 | // join the path parts with '/' 45 | func join(parts []string) string { 46 | return strings.Join(parts, "/") 47 | } 48 | -------------------------------------------------------------------------------- /vendor/github.com/golang/mock/AUTHORS: -------------------------------------------------------------------------------- 1 | # This is the official list of GoMock authors for copyright purposes. 2 | # This file is distinct from the CONTRIBUTORS files. 3 | # See the latter for an explanation. 4 | 5 | # Names should be added to this file as 6 | # Name or Organization 7 | # The email address is not required for organizations. 8 | 9 | # Please keep the list sorted. 10 | 11 | Alex Reece 12 | Google Inc. 13 | -------------------------------------------------------------------------------- /vendor/github.com/pkg/errors/.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled Object files, Static and Dynamic libs (Shared Objects) 2 | *.o 3 | *.a 4 | *.so 5 | 6 | # Folders 7 | _obj 8 | _test 9 | 10 | # Architecture specific extensions/prefixes 11 | *.[568vq] 12 | [568vq].out 13 | 14 | *.cgo1.go 15 | *.cgo2.c 16 | _cgo_defun.c 17 | _cgo_gotypes.go 18 | _cgo_export.* 19 | 20 | _testmain.go 21 | 22 | *.exe 23 | *.test 24 | *.prof 25 | -------------------------------------------------------------------------------- /vendor/github.com/pkg/errors/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | go_import_path: github.com/pkg/errors 3 | go: 4 | - 1.11.x 5 | - 1.12.x 6 | - 1.13.x 7 | - tip 8 | 9 | script: 10 | - make check 11 | -------------------------------------------------------------------------------- /vendor/github.com/pkg/errors/Makefile: -------------------------------------------------------------------------------- 1 | PKGS := github.com/pkg/errors 2 | SRCDIRS := $(shell go list -f '{{.Dir}}' $(PKGS)) 3 | GO := go 4 | 5 | check: test vet gofmt misspell unconvert staticcheck ineffassign unparam 6 | 7 | test: 8 | $(GO) test $(PKGS) 9 | 10 | vet: | test 11 | $(GO) vet $(PKGS) 12 | 13 | staticcheck: 14 | $(GO) get honnef.co/go/tools/cmd/staticcheck 15 | staticcheck -checks all $(PKGS) 16 | 17 | misspell: 18 | $(GO) get github.com/client9/misspell/cmd/misspell 19 | misspell \ 20 | -locale GB \ 21 | -error \ 22 | *.md *.go 23 | 24 | unconvert: 25 | $(GO) get github.com/mdempsky/unconvert 26 | unconvert -v $(PKGS) 27 | 28 | ineffassign: 29 | $(GO) get github.com/gordonklaus/ineffassign 30 | find $(SRCDIRS) -name '*.go' | xargs ineffassign 31 | 32 | pedantic: check errcheck 33 | 34 | unparam: 35 | $(GO) get mvdan.cc/unparam 36 | unparam ./... 37 | 38 | errcheck: 39 | $(GO) get github.com/kisielk/errcheck 40 | errcheck $(PKGS) 41 | 42 | gofmt: 43 | @echo Checking code is gofmted 44 | @test -z "$(shell gofmt -s -l -d -e $(SRCDIRS) | tee /dev/stderr)" 45 | -------------------------------------------------------------------------------- /vendor/github.com/pkg/errors/appveyor.yml: -------------------------------------------------------------------------------- 1 | version: build-{build}.{branch} 2 | 3 | clone_folder: C:\gopath\src\github.com\pkg\errors 4 | shallow_clone: true # for startup speed 5 | 6 | environment: 7 | GOPATH: C:\gopath 8 | 9 | platform: 10 | - x64 11 | 12 | # http://www.appveyor.com/docs/installed-software 13 | install: 14 | # some helpful output for debugging builds 15 | - go version 16 | - go env 17 | # pre-installed MinGW at C:\MinGW is 32bit only 18 | # but MSYS2 at C:\msys64 has mingw64 19 | - set PATH=C:\msys64\mingw64\bin;%PATH% 20 | - gcc --version 21 | - g++ --version 22 | 23 | build_script: 24 | - go install -v ./... 25 | 26 | test_script: 27 | - set PATH=C:\gopath\bin;%PATH% 28 | - go test -v ./... 29 | 30 | #artifacts: 31 | # - path: '%GOPATH%\bin\*.exe' 32 | deploy: off 33 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2012-2020 Mat Ryer, Tyler Bunnell and contributors. 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/assert/assertion_format.go.tmpl: -------------------------------------------------------------------------------- 1 | {{.CommentFormat}} 2 | func {{.DocInfo.Name}}f(t TestingT, {{.ParamsFormat}}) bool { 3 | if h, ok := t.(tHelper); ok { h.Helper() } 4 | return {{.DocInfo.Name}}(t, {{.ForwardedParamsFormat}}) 5 | } 6 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/assert/assertion_forward.go.tmpl: -------------------------------------------------------------------------------- 1 | {{.CommentWithoutT "a"}} 2 | func (a *Assertions) {{.DocInfo.Name}}({{.Params}}) bool { 3 | if h, ok := a.t.(tHelper); ok { h.Helper() } 4 | return {{.DocInfo.Name}}(a.t, {{.ForwardedParams}}) 5 | } 6 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/assert/errors.go: -------------------------------------------------------------------------------- 1 | package assert 2 | 3 | import ( 4 | "errors" 5 | ) 6 | 7 | // AnError is an error instance useful for testing. If the code does not care 8 | // about error specifics, and only needs to return the error for example, this 9 | // error should be used to make the test code more readable. 10 | var AnError = errors.New("assert.AnError general error for testing") 11 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/assert/forward_assertions.go: -------------------------------------------------------------------------------- 1 | package assert 2 | 3 | // Assertions provides assertion methods around the 4 | // TestingT interface. 5 | type Assertions struct { 6 | t TestingT 7 | } 8 | 9 | // New makes a new Assertions object for the specified TestingT. 10 | func New(t TestingT) *Assertions { 11 | return &Assertions{ 12 | t: t, 13 | } 14 | } 15 | 16 | //go:generate sh -c "cd ../_codegen && go build && cd - && ../_codegen/_codegen -output-package=assert -template=assertion_forward.go.tmpl -include-format-funcs" 17 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/require/doc.go: -------------------------------------------------------------------------------- 1 | // Package require implements the same assertions as the `assert` package but 2 | // stops test execution when a test fails. 3 | // 4 | // # Example Usage 5 | // 6 | // The following is a complete example using require in a standard test function: 7 | // 8 | // import ( 9 | // "testing" 10 | // "github.com/stretchr/testify/require" 11 | // ) 12 | // 13 | // func TestSomething(t *testing.T) { 14 | // 15 | // var a string = "Hello" 16 | // var b string = "Hello" 17 | // 18 | // require.Equal(t, a, b, "The two words should be the same.") 19 | // 20 | // } 21 | // 22 | // # Assertions 23 | // 24 | // The `require` package have same global functions as in the `assert` package, 25 | // but instead of returning a boolean result they call `t.FailNow()`. 26 | // 27 | // Every assertion function also takes an optional string message as the final argument, 28 | // allowing custom error messages to be appended to the message the assertion method outputs. 29 | package require 30 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/require/forward_requirements.go: -------------------------------------------------------------------------------- 1 | package require 2 | 3 | // Assertions provides assertion methods around the 4 | // TestingT interface. 5 | type Assertions struct { 6 | t TestingT 7 | } 8 | 9 | // New makes a new Assertions object for the specified TestingT. 10 | func New(t TestingT) *Assertions { 11 | return &Assertions{ 12 | t: t, 13 | } 14 | } 15 | 16 | //go:generate sh -c "cd ../_codegen && go build && cd - && ../_codegen/_codegen -output-package=require -template=require_forward.go.tmpl -include-format-funcs" 17 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/require/require.go.tmpl: -------------------------------------------------------------------------------- 1 | {{.Comment}} 2 | func {{.DocInfo.Name}}(t TestingT, {{.Params}}) { 3 | if h, ok := t.(tHelper); ok { h.Helper() } 4 | if assert.{{.DocInfo.Name}}(t, {{.ForwardedParams}}) { return } 5 | t.FailNow() 6 | } 7 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/require/require_forward.go.tmpl: -------------------------------------------------------------------------------- 1 | {{.CommentWithoutT "a"}} 2 | func (a *Assertions) {{.DocInfo.Name}}({{.Params}}) { 3 | if h, ok := a.t.(tHelper); ok { h.Helper() } 4 | {{.DocInfo.Name}}(a.t, {{.ForwardedParams}}) 5 | } 6 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/require/requirements.go: -------------------------------------------------------------------------------- 1 | package require 2 | 3 | // TestingT is an interface wrapper around *testing.T 4 | type TestingT interface { 5 | Errorf(format string, args ...interface{}) 6 | FailNow() 7 | } 8 | 9 | type tHelper interface { 10 | Helper() 11 | } 12 | 13 | // ComparisonAssertionFunc is a common function prototype when comparing two values. Can be useful 14 | // for table driven tests. 15 | type ComparisonAssertionFunc func(TestingT, interface{}, interface{}, ...interface{}) 16 | 17 | // ValueAssertionFunc is a common function prototype when validating a single value. Can be useful 18 | // for table driven tests. 19 | type ValueAssertionFunc func(TestingT, interface{}, ...interface{}) 20 | 21 | // BoolAssertionFunc is a common function prototype when validating a bool value. Can be useful 22 | // for table driven tests. 23 | type BoolAssertionFunc func(TestingT, bool, ...interface{}) 24 | 25 | // ErrorAssertionFunc is a common function prototype when validating an error value. Can be useful 26 | // for table driven tests. 27 | type ErrorAssertionFunc func(TestingT, error, ...interface{}) 28 | 29 | //go:generate sh -c "cd ../_codegen && go build && cd - && ../_codegen/_codegen -output-package=require -template=require.go.tmpl -include-format-funcs" 30 | -------------------------------------------------------------------------------- /vendor/github.com/vishvananda/netlink/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | before_script: 3 | # make sure we keep path in tact when we sudo 4 | - sudo sed -i -e 's/^Defaults\tsecure_path.*$//' /etc/sudoers 5 | # modprobe ip_gre or else the first gre device can't be deleted 6 | - sudo modprobe ip_gre 7 | # modprobe nf_conntrack for the conntrack testing 8 | - sudo modprobe nf_conntrack 9 | - sudo modprobe nf_conntrack_netlink 10 | - sudo modprobe nf_conntrack_ipv4 11 | - sudo modprobe nf_conntrack_ipv6 12 | install: 13 | - go get github.com/vishvananda/netns 14 | -------------------------------------------------------------------------------- /vendor/github.com/vishvananda/netlink/Makefile: -------------------------------------------------------------------------------- 1 | DIRS := \ 2 | . \ 3 | nl 4 | 5 | DEPS = \ 6 | github.com/vishvananda/netns 7 | 8 | uniq = $(if $1,$(firstword $1) $(call uniq,$(filter-out $(firstword $1),$1))) 9 | testdirs = $(call uniq,$(foreach d,$(1),$(dir $(wildcard $(d)/*_test.go)))) 10 | goroot = $(addprefix ../../../,$(1)) 11 | unroot = $(subst ../../../,,$(1)) 12 | fmt = $(addprefix fmt-,$(1)) 13 | 14 | all: test 15 | 16 | $(call goroot,$(DEPS)): 17 | go get $(call unroot,$@) 18 | 19 | .PHONY: $(call testdirs,$(DIRS)) 20 | $(call testdirs,$(DIRS)): 21 | sudo -E go test -test.parallel 4 -timeout 60s -v github.com/vishvananda/netlink/$@ 22 | 23 | $(call fmt,$(call testdirs,$(DIRS))): 24 | ! gofmt -l $(subst fmt-,,$@)/*.go | grep -q . 25 | 26 | .PHONY: fmt 27 | fmt: $(call fmt,$(call testdirs,$(DIRS))) 28 | 29 | test: fmt $(call goroot,$(DEPS)) $(call testdirs,$(DIRS)) 30 | -------------------------------------------------------------------------------- /vendor/github.com/vishvananda/netlink/genetlink_unspecified.go: -------------------------------------------------------------------------------- 1 | // +build !linux 2 | 3 | package netlink 4 | 5 | type GenlOp struct{} 6 | 7 | type GenlMulticastGroup struct{} 8 | 9 | type GenlFamily struct{} 10 | 11 | func (h *Handle) GenlFamilyList() ([]*GenlFamily, error) { 12 | return nil, ErrNotImplemented 13 | } 14 | 15 | func GenlFamilyList() ([]*GenlFamily, error) { 16 | return nil, ErrNotImplemented 17 | } 18 | 19 | func (h *Handle) GenlFamilyGet(name string) (*GenlFamily, error) { 20 | return nil, ErrNotImplemented 21 | } 22 | 23 | func GenlFamilyGet(name string) (*GenlFamily, error) { 24 | return nil, ErrNotImplemented 25 | } 26 | -------------------------------------------------------------------------------- /vendor/github.com/vishvananda/netlink/link_tuntap_linux.go: -------------------------------------------------------------------------------- 1 | package netlink 2 | 3 | // ideally golang.org/x/sys/unix would define IfReq but it only has 4 | // IFNAMSIZ, hence this minimalistic implementation 5 | const ( 6 | SizeOfIfReq = 40 7 | IFNAMSIZ = 16 8 | ) 9 | 10 | type ifReq struct { 11 | Name [IFNAMSIZ]byte 12 | Flags uint16 13 | pad [SizeOfIfReq - IFNAMSIZ - 2]byte 14 | } 15 | -------------------------------------------------------------------------------- /vendor/github.com/vishvananda/netlink/neigh.go: -------------------------------------------------------------------------------- 1 | package netlink 2 | 3 | import ( 4 | "fmt" 5 | "net" 6 | ) 7 | 8 | // Neigh represents a link layer neighbor from netlink. 9 | type Neigh struct { 10 | LinkIndex int 11 | Family int 12 | State int 13 | Type int 14 | Flags int 15 | IP net.IP 16 | HardwareAddr net.HardwareAddr 17 | } 18 | 19 | // String returns $ip/$hwaddr $label 20 | func (neigh *Neigh) String() string { 21 | return fmt.Sprintf("%s %s", neigh.IP, neigh.HardwareAddr) 22 | } 23 | -------------------------------------------------------------------------------- /vendor/github.com/vishvananda/netlink/netlink_linux.go: -------------------------------------------------------------------------------- 1 | package netlink 2 | 3 | import "github.com/vishvananda/netlink/nl" 4 | 5 | // Family type definitions 6 | const ( 7 | FAMILY_ALL = nl.FAMILY_ALL 8 | FAMILY_V4 = nl.FAMILY_V4 9 | FAMILY_V6 = nl.FAMILY_V6 10 | FAMILY_MPLS = nl.FAMILY_MPLS 11 | ) 12 | -------------------------------------------------------------------------------- /vendor/github.com/vishvananda/netlink/nl/mpls_linux.go: -------------------------------------------------------------------------------- 1 | package nl 2 | 3 | import "encoding/binary" 4 | 5 | const ( 6 | MPLS_LS_LABEL_SHIFT = 12 7 | MPLS_LS_S_SHIFT = 8 8 | ) 9 | 10 | func EncodeMPLSStack(labels ...int) []byte { 11 | b := make([]byte, 4*len(labels)) 12 | for idx, label := range labels { 13 | l := label << MPLS_LS_LABEL_SHIFT 14 | if idx == len(labels)-1 { 15 | l |= 1 << MPLS_LS_S_SHIFT 16 | } 17 | binary.BigEndian.PutUint32(b[idx*4:], uint32(l)) 18 | } 19 | return b 20 | } 21 | 22 | func DecodeMPLSStack(buf []byte) []int { 23 | if len(buf)%4 != 0 { 24 | return nil 25 | } 26 | stack := make([]int, 0, len(buf)/4) 27 | for len(buf) > 0 { 28 | l := binary.BigEndian.Uint32(buf[:4]) 29 | buf = buf[4:] 30 | stack = append(stack, int(l)>>MPLS_LS_LABEL_SHIFT) 31 | if (l>>MPLS_LS_S_SHIFT)&1 > 0 { 32 | break 33 | } 34 | } 35 | return stack 36 | } 37 | -------------------------------------------------------------------------------- /vendor/github.com/vishvananda/netlink/nl/nl_unspecified.go: -------------------------------------------------------------------------------- 1 | // +build !linux 2 | 3 | package nl 4 | 5 | import "encoding/binary" 6 | 7 | var SupportedNlFamilies = []int{} 8 | 9 | func NativeEndian() binary.ByteOrder { 10 | return nil 11 | } 12 | -------------------------------------------------------------------------------- /vendor/github.com/vishvananda/netlink/nl/xfrm_monitor_linux.go: -------------------------------------------------------------------------------- 1 | package nl 2 | 3 | import ( 4 | "unsafe" 5 | ) 6 | 7 | const ( 8 | SizeofXfrmUserExpire = 0xe8 9 | ) 10 | 11 | // struct xfrm_user_expire { 12 | // struct xfrm_usersa_info state; 13 | // __u8 hard; 14 | // }; 15 | 16 | type XfrmUserExpire struct { 17 | XfrmUsersaInfo XfrmUsersaInfo 18 | Hard uint8 19 | Pad [7]byte 20 | } 21 | 22 | func (msg *XfrmUserExpire) Len() int { 23 | return SizeofXfrmUserExpire 24 | } 25 | 26 | func DeserializeXfrmUserExpire(b []byte) *XfrmUserExpire { 27 | return (*XfrmUserExpire)(unsafe.Pointer(&b[0:SizeofXfrmUserExpire][0])) 28 | } 29 | 30 | func (msg *XfrmUserExpire) Serialize() []byte { 31 | return (*(*[SizeofXfrmUserExpire]byte)(unsafe.Pointer(msg)))[:] 32 | } 33 | -------------------------------------------------------------------------------- /vendor/github.com/vishvananda/netlink/order.go: -------------------------------------------------------------------------------- 1 | package netlink 2 | 3 | import ( 4 | "encoding/binary" 5 | 6 | "github.com/vishvananda/netlink/nl" 7 | ) 8 | 9 | var ( 10 | native = nl.NativeEndian() 11 | networkOrder = binary.BigEndian 12 | ) 13 | 14 | func htonl(val uint32) []byte { 15 | bytes := make([]byte, 4) 16 | binary.BigEndian.PutUint32(bytes, val) 17 | return bytes 18 | } 19 | 20 | func htons(val uint16) []byte { 21 | bytes := make([]byte, 2) 22 | binary.BigEndian.PutUint16(bytes, val) 23 | return bytes 24 | } 25 | 26 | func ntohl(buf []byte) uint32 { 27 | return binary.BigEndian.Uint32(buf) 28 | } 29 | 30 | func ntohs(buf []byte) uint16 { 31 | return binary.BigEndian.Uint16(buf) 32 | } 33 | -------------------------------------------------------------------------------- /vendor/github.com/vishvananda/netlink/route_unspecified.go: -------------------------------------------------------------------------------- 1 | // +build !linux 2 | 3 | package netlink 4 | 5 | func (r *Route) ListFlags() []string { 6 | return []string{} 7 | } 8 | 9 | func (n *NexthopInfo) ListFlags() []string { 10 | return []string{} 11 | } 12 | -------------------------------------------------------------------------------- /vendor/github.com/vishvananda/netlink/rule.go: -------------------------------------------------------------------------------- 1 | package netlink 2 | 3 | import ( 4 | "fmt" 5 | "net" 6 | ) 7 | 8 | // Rule represents a netlink rule. 9 | type Rule struct { 10 | Priority int 11 | Table int 12 | Mark int 13 | Mask int 14 | TunID uint 15 | Goto int 16 | Src *net.IPNet 17 | Dst *net.IPNet 18 | Flow int 19 | IifName string 20 | OifName string 21 | SuppressIfgroup int 22 | SuppressPrefixlen int 23 | } 24 | 25 | func (r Rule) String() string { 26 | return fmt.Sprintf("ip rule %d: from %s table %d", r.Priority, r.Src, r.Table) 27 | } 28 | 29 | // NewRule return empty rules. 30 | func NewRule() *Rule { 31 | return &Rule{ 32 | SuppressIfgroup: -1, 33 | SuppressPrefixlen: -1, 34 | Priority: -1, 35 | Mark: -1, 36 | Mask: -1, 37 | Goto: -1, 38 | Flow: -1, 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /vendor/github.com/vishvananda/netlink/socket.go: -------------------------------------------------------------------------------- 1 | package netlink 2 | 3 | import "net" 4 | 5 | // SocketID identifies a single socket. 6 | type SocketID struct { 7 | SourcePort uint16 8 | DestinationPort uint16 9 | Source net.IP 10 | Destination net.IP 11 | Interface uint32 12 | Cookie [2]uint32 13 | } 14 | 15 | // Socket represents a netlink socket. 16 | type Socket struct { 17 | Family uint8 18 | State uint8 19 | Timer uint8 20 | Retrans uint8 21 | ID SocketID 22 | Expires uint32 23 | RQueue uint32 24 | WQueue uint32 25 | UID uint32 26 | INode uint32 27 | } 28 | -------------------------------------------------------------------------------- /vendor/github.com/vishvananda/netns/.golangci.yml: -------------------------------------------------------------------------------- 1 | run: 2 | timeout: 5m 3 | -------------------------------------------------------------------------------- /vendor/github.com/vishvananda/netns/README.md: -------------------------------------------------------------------------------- 1 | # netns - network namespaces in go # 2 | 3 | The netns package provides an ultra-simple interface for handling 4 | network namespaces in go. Changing namespaces requires elevated 5 | privileges, so in most cases this code needs to be run as root. 6 | 7 | ## Local Build and Test ## 8 | 9 | You can use go get command: 10 | 11 | go get github.com/vishvananda/netns 12 | 13 | Testing (requires root): 14 | 15 | sudo -E go test github.com/vishvananda/netns 16 | 17 | ## Example ## 18 | 19 | ```go 20 | package main 21 | 22 | import ( 23 | "fmt" 24 | "net" 25 | "runtime" 26 | 27 | "github.com/vishvananda/netns" 28 | ) 29 | 30 | func main() { 31 | // Lock the OS Thread so we don't accidentally switch namespaces 32 | runtime.LockOSThread() 33 | defer runtime.UnlockOSThread() 34 | 35 | // Save the current network namespace 36 | origns, _ := netns.Get() 37 | defer origns.Close() 38 | 39 | // Create a new network namespace 40 | newns, _ := netns.New() 41 | defer newns.Close() 42 | 43 | // Do something with the network namespace 44 | ifaces, _ := net.Interfaces() 45 | fmt.Printf("Interfaces: %v\n", ifaces) 46 | 47 | // Switch back to the original namespace 48 | netns.Set(origns) 49 | } 50 | 51 | ``` 52 | -------------------------------------------------------------------------------- /vendor/github.com/vishvananda/netns/doc.go: -------------------------------------------------------------------------------- 1 | // Package netns allows ultra-simple network namespace handling. NsHandles 2 | // can be retrieved and set. Note that the current namespace is thread 3 | // local so actions that set and reset namespaces should use LockOSThread 4 | // to make sure the namespace doesn't change due to a goroutine switch. 5 | // It is best to close NsHandles when you are done with them. This can be 6 | // accomplished via a `defer ns.Close()` on the handle. Changing namespaces 7 | // requires elevated privileges, so in most cases this code needs to be run 8 | // as root. 9 | package netns 10 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/.gitignore: -------------------------------------------------------------------------------- 1 | *.prof 2 | *.test 3 | *.swp 4 | /bin/ 5 | cover.out 6 | cover-*.out 7 | /.idea 8 | *.iml 9 | /cmd/bbolt/bbolt 10 | 11 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/.go-version: -------------------------------------------------------------------------------- 1 | 1.22.6 2 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2013 Ben Johnson 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of 6 | this software and associated documentation files (the "Software"), to deal in 7 | the Software without restriction, including without limitation the rights to 8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 | the Software, and to permit persons to whom the Software is furnished to do so, 10 | subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/bolt_386.go: -------------------------------------------------------------------------------- 1 | package bbolt 2 | 3 | // maxMapSize represents the largest mmap size supported by Bolt. 4 | const maxMapSize = 0x7FFFFFFF // 2GB 5 | 6 | // maxAllocSize is the size used when creating array pointers. 7 | const maxAllocSize = 0xFFFFFFF 8 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/bolt_amd64.go: -------------------------------------------------------------------------------- 1 | package bbolt 2 | 3 | // maxMapSize represents the largest mmap size supported by Bolt. 4 | const maxMapSize = 0xFFFFFFFFFFFF // 256TB 5 | 6 | // maxAllocSize is the size used when creating array pointers. 7 | const maxAllocSize = 0x7FFFFFFF 8 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/bolt_arm.go: -------------------------------------------------------------------------------- 1 | package bbolt 2 | 3 | // maxMapSize represents the largest mmap size supported by Bolt. 4 | const maxMapSize = 0x7FFFFFFF // 2GB 5 | 6 | // maxAllocSize is the size used when creating array pointers. 7 | const maxAllocSize = 0xFFFFFFF 8 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/bolt_arm64.go: -------------------------------------------------------------------------------- 1 | //go:build arm64 2 | // +build arm64 3 | 4 | package bbolt 5 | 6 | // maxMapSize represents the largest mmap size supported by Bolt. 7 | const maxMapSize = 0xFFFFFFFFFFFF // 256TB 8 | 9 | // maxAllocSize is the size used when creating array pointers. 10 | const maxAllocSize = 0x7FFFFFFF 11 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/bolt_linux.go: -------------------------------------------------------------------------------- 1 | package bbolt 2 | 3 | import ( 4 | "syscall" 5 | ) 6 | 7 | // fdatasync flushes written data to a file descriptor. 8 | func fdatasync(db *DB) error { 9 | return syscall.Fdatasync(int(db.file.Fd())) 10 | } 11 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/bolt_loong64.go: -------------------------------------------------------------------------------- 1 | //go:build loong64 2 | // +build loong64 3 | 4 | package bbolt 5 | 6 | // maxMapSize represents the largest mmap size supported by Bolt. 7 | const maxMapSize = 0xFFFFFFFFFFFF // 256TB 8 | 9 | // maxAllocSize is the size used when creating array pointers. 10 | const maxAllocSize = 0x7FFFFFFF 11 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/bolt_mips64x.go: -------------------------------------------------------------------------------- 1 | //go:build mips64 || mips64le 2 | // +build mips64 mips64le 3 | 4 | package bbolt 5 | 6 | // maxMapSize represents the largest mmap size supported by Bolt. 7 | const maxMapSize = 0x8000000000 // 512GB 8 | 9 | // maxAllocSize is the size used when creating array pointers. 10 | const maxAllocSize = 0x7FFFFFFF 11 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/bolt_mipsx.go: -------------------------------------------------------------------------------- 1 | //go:build mips || mipsle 2 | // +build mips mipsle 3 | 4 | package bbolt 5 | 6 | // maxMapSize represents the largest mmap size supported by Bolt. 7 | const maxMapSize = 0x40000000 // 1GB 8 | 9 | // maxAllocSize is the size used when creating array pointers. 10 | const maxAllocSize = 0xFFFFFFF 11 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/bolt_openbsd.go: -------------------------------------------------------------------------------- 1 | package bbolt 2 | 3 | import ( 4 | "golang.org/x/sys/unix" 5 | ) 6 | 7 | func msync(db *DB) error { 8 | return unix.Msync(db.data[:db.datasz], unix.MS_INVALIDATE) 9 | } 10 | 11 | func fdatasync(db *DB) error { 12 | if db.data != nil { 13 | return msync(db) 14 | } 15 | return db.file.Sync() 16 | } 17 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/bolt_ppc.go: -------------------------------------------------------------------------------- 1 | //go:build ppc 2 | // +build ppc 3 | 4 | package bbolt 5 | 6 | // maxMapSize represents the largest mmap size supported by Bolt. 7 | const maxMapSize = 0x7FFFFFFF // 2GB 8 | 9 | // maxAllocSize is the size used when creating array pointers. 10 | const maxAllocSize = 0xFFFFFFF 11 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/bolt_ppc64.go: -------------------------------------------------------------------------------- 1 | //go:build ppc64 2 | // +build ppc64 3 | 4 | package bbolt 5 | 6 | // maxMapSize represents the largest mmap size supported by Bolt. 7 | const maxMapSize = 0xFFFFFFFFFFFF // 256TB 8 | 9 | // maxAllocSize is the size used when creating array pointers. 10 | const maxAllocSize = 0x7FFFFFFF 11 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/bolt_ppc64le.go: -------------------------------------------------------------------------------- 1 | //go:build ppc64le 2 | // +build ppc64le 3 | 4 | package bbolt 5 | 6 | // maxMapSize represents the largest mmap size supported by Bolt. 7 | const maxMapSize = 0xFFFFFFFFFFFF // 256TB 8 | 9 | // maxAllocSize is the size used when creating array pointers. 10 | const maxAllocSize = 0x7FFFFFFF 11 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/bolt_riscv64.go: -------------------------------------------------------------------------------- 1 | //go:build riscv64 2 | // +build riscv64 3 | 4 | package bbolt 5 | 6 | // maxMapSize represents the largest mmap size supported by Bolt. 7 | const maxMapSize = 0xFFFFFFFFFFFF // 256TB 8 | 9 | // maxAllocSize is the size used when creating array pointers. 10 | const maxAllocSize = 0x7FFFFFFF 11 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/bolt_s390x.go: -------------------------------------------------------------------------------- 1 | //go:build s390x 2 | // +build s390x 3 | 4 | package bbolt 5 | 6 | // maxMapSize represents the largest mmap size supported by Bolt. 7 | const maxMapSize = 0xFFFFFFFFFFFF // 256TB 8 | 9 | // maxAllocSize is the size used when creating array pointers. 10 | const maxAllocSize = 0x7FFFFFFF 11 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/boltsync_unix.go: -------------------------------------------------------------------------------- 1 | //go:build !windows && !plan9 && !linux && !openbsd 2 | // +build !windows,!plan9,!linux,!openbsd 3 | 4 | package bbolt 5 | 6 | // fdatasync flushes written data to a file descriptor. 7 | func fdatasync(db *DB) error { 8 | return db.file.Sync() 9 | } 10 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/mlock_unix.go: -------------------------------------------------------------------------------- 1 | //go:build !windows 2 | // +build !windows 3 | 4 | package bbolt 5 | 6 | import "golang.org/x/sys/unix" 7 | 8 | // mlock locks memory of db file 9 | func mlock(db *DB, fileSize int) error { 10 | sizeToLock := fileSize 11 | if sizeToLock > db.datasz { 12 | // Can't lock more than mmaped slice 13 | sizeToLock = db.datasz 14 | } 15 | if err := unix.Mlock(db.dataref[:sizeToLock]); err != nil { 16 | return err 17 | } 18 | return nil 19 | } 20 | 21 | // munlock unlocks memory of db file 22 | func munlock(db *DB, fileSize int) error { 23 | if db.dataref == nil { 24 | return nil 25 | } 26 | 27 | sizeToUnlock := fileSize 28 | if sizeToUnlock > db.datasz { 29 | // Can't unlock more than mmaped slice 30 | sizeToUnlock = db.datasz 31 | } 32 | 33 | if err := unix.Munlock(db.dataref[:sizeToUnlock]); err != nil { 34 | return err 35 | } 36 | return nil 37 | } 38 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/mlock_windows.go: -------------------------------------------------------------------------------- 1 | package bbolt 2 | 3 | // mlock locks memory of db file 4 | func mlock(_ *DB, _ int) error { 5 | panic("mlock is supported only on UNIX systems") 6 | } 7 | 8 | // munlock unlocks memory of db file 9 | func munlock(_ *DB, _ int) error { 10 | panic("munlock is supported only on UNIX systems") 11 | } 12 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/bbolt/unsafe.go: -------------------------------------------------------------------------------- 1 | package bbolt 2 | 3 | import ( 4 | "unsafe" 5 | ) 6 | 7 | func unsafeAdd(base unsafe.Pointer, offset uintptr) unsafe.Pointer { 8 | return unsafe.Pointer(uintptr(base) + offset) 9 | } 10 | 11 | func unsafeIndex(base unsafe.Pointer, offset uintptr, elemsz uintptr, n int) unsafe.Pointer { 12 | return unsafe.Pointer(uintptr(base) + offset + uintptr(n)*elemsz) 13 | } 14 | 15 | func unsafeByteSlice(base unsafe.Pointer, offset uintptr, i, j int) []byte { 16 | // See: https://github.com/golang/go/wiki/cgo#turning-c-arrays-into-go-slices 17 | // 18 | // This memory is not allocated from C, but it is unmanaged by Go's 19 | // garbage collector and should behave similarly, and the compiler 20 | // should produce similar code. Note that this conversion allows a 21 | // subslice to begin after the base address, with an optional offset, 22 | // while the URL above does not cover this case and only slices from 23 | // index 0. However, the wiki never says that the address must be to 24 | // the beginning of a C allocation (or even that malloc was used at 25 | // all), so this is believed to be correct. 26 | return (*[maxAllocSize]byte)(unsafeAdd(base, offset))[i:j:j] 27 | } 28 | -------------------------------------------------------------------------------- /vendor/golang.org/x/mod/PATENTS: -------------------------------------------------------------------------------- 1 | Additional IP Rights Grant (Patents) 2 | 3 | "This implementation" means the copyrightable works distributed by 4 | Google as part of the Go project. 5 | 6 | Google hereby grants to You a perpetual, worldwide, non-exclusive, 7 | no-charge, royalty-free, irrevocable (except as stated in this section) 8 | patent license to make, have made, use, offer to sell, sell, import, 9 | transfer and otherwise run, modify and propagate the contents of this 10 | implementation of Go, where such license applies only to those patent 11 | claims, both currently owned or controlled by Google and acquired in 12 | the future, licensable by Google that are necessarily infringed by this 13 | implementation of Go. This grant does not include claims that would be 14 | infringed only as a consequence of further modification of this 15 | implementation. If you or your agent or exclusive licensee institute or 16 | order or agree to the institution of patent litigation against any 17 | entity (including a cross-claim or counterclaim in a lawsuit) alleging 18 | that this implementation of Go or any code incorporated within this 19 | implementation of Go constitutes direct or contributory patent 20 | infringement, or inducement of patent infringement, then any patent 21 | rights granted to you under this License for this implementation of Go 22 | shall terminate as of the date such litigation is filed. 23 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sync/PATENTS: -------------------------------------------------------------------------------- 1 | Additional IP Rights Grant (Patents) 2 | 3 | "This implementation" means the copyrightable works distributed by 4 | Google as part of the Go project. 5 | 6 | Google hereby grants to You a perpetual, worldwide, non-exclusive, 7 | no-charge, royalty-free, irrevocable (except as stated in this section) 8 | patent license to make, have made, use, offer to sell, sell, import, 9 | transfer and otherwise run, modify and propagate the contents of this 10 | implementation of Go, where such license applies only to those patent 11 | claims, both currently owned or controlled by Google and acquired in 12 | the future, licensable by Google that are necessarily infringed by this 13 | implementation of Go. This grant does not include claims that would be 14 | infringed only as a consequence of further modification of this 15 | implementation. If you or your agent or exclusive licensee institute or 16 | order or agree to the institution of patent litigation against any 17 | entity (including a cross-claim or counterclaim in a lawsuit) alleging 18 | that this implementation of Go or any code incorporated within this 19 | implementation of Go constitutes direct or contributory patent 20 | infringement, or inducement of patent infringement, then any patent 21 | rights granted to you under this License for this implementation of Go 22 | shall terminate as of the date such litigation is filed. 23 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sync/errgroup/go120.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 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 | //go:build go1.20 6 | 7 | package errgroup 8 | 9 | import "context" 10 | 11 | func withCancelCause(parent context.Context) (context.Context, func(error)) { 12 | return context.WithCancelCause(parent) 13 | } 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sync/errgroup/pre_go120.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 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 | //go:build !go1.20 6 | 7 | package errgroup 8 | 9 | import "context" 10 | 11 | func withCancelCause(parent context.Context) (context.Context, func(error)) { 12 | ctx, cancel := context.WithCancel(parent) 13 | return ctx, func(error) { cancel() } 14 | } 15 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/.gitignore: -------------------------------------------------------------------------------- 1 | _obj/ 2 | unix.test 3 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/aliases.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 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 | //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | type Signal = syscall.Signal 12 | type Errno = syscall.Errno 13 | type SysProcAttr = syscall.SysProcAttr 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_aix_ppc64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2018 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 | //go:build gc 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System calls for ppc64, AIX are implemented in runtime/syscall_aix.go 11 | // 12 | 13 | TEXT ·syscall6(SB),NOSPLIT,$0-88 14 | JMP syscall·syscall6(SB) 15 | 16 | TEXT ·rawSyscall6(SB),NOSPLIT,$0-88 17 | JMP syscall·rawSyscall6(SB) 18 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_bsd_386.s: -------------------------------------------------------------------------------- 1 | // Copyright 2021 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 | //go:build (freebsd || netbsd || openbsd) && gc 6 | 7 | #include "textflag.h" 8 | 9 | // System call support for 386 BSD 10 | 11 | // Just jump to package syscall's implementation for all these functions. 12 | // The runtime may know about them. 13 | 14 | TEXT ·Syscall(SB),NOSPLIT,$0-28 15 | JMP syscall·Syscall(SB) 16 | 17 | TEXT ·Syscall6(SB),NOSPLIT,$0-40 18 | JMP syscall·Syscall6(SB) 19 | 20 | TEXT ·Syscall9(SB),NOSPLIT,$0-52 21 | JMP syscall·Syscall9(SB) 22 | 23 | TEXT ·RawSyscall(SB),NOSPLIT,$0-28 24 | JMP syscall·RawSyscall(SB) 25 | 26 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 27 | JMP syscall·RawSyscall6(SB) 28 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_bsd_amd64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2021 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 | //go:build (darwin || dragonfly || freebsd || netbsd || openbsd) && gc 6 | 7 | #include "textflag.h" 8 | 9 | // System call support for AMD64 BSD 10 | 11 | // Just jump to package syscall's implementation for all these functions. 12 | // The runtime may know about them. 13 | 14 | TEXT ·Syscall(SB),NOSPLIT,$0-56 15 | JMP syscall·Syscall(SB) 16 | 17 | TEXT ·Syscall6(SB),NOSPLIT,$0-80 18 | JMP syscall·Syscall6(SB) 19 | 20 | TEXT ·Syscall9(SB),NOSPLIT,$0-104 21 | JMP syscall·Syscall9(SB) 22 | 23 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56 24 | JMP syscall·RawSyscall(SB) 25 | 26 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 27 | JMP syscall·RawSyscall6(SB) 28 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_bsd_arm.s: -------------------------------------------------------------------------------- 1 | // Copyright 2021 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 | //go:build (freebsd || netbsd || openbsd) && gc 6 | 7 | #include "textflag.h" 8 | 9 | // System call support for ARM BSD 10 | 11 | // Just jump to package syscall's implementation for all these functions. 12 | // The runtime may know about them. 13 | 14 | TEXT ·Syscall(SB),NOSPLIT,$0-28 15 | B syscall·Syscall(SB) 16 | 17 | TEXT ·Syscall6(SB),NOSPLIT,$0-40 18 | B syscall·Syscall6(SB) 19 | 20 | TEXT ·Syscall9(SB),NOSPLIT,$0-52 21 | B syscall·Syscall9(SB) 22 | 23 | TEXT ·RawSyscall(SB),NOSPLIT,$0-28 24 | B syscall·RawSyscall(SB) 25 | 26 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 27 | B syscall·RawSyscall6(SB) 28 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_bsd_arm64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2021 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 | //go:build (darwin || freebsd || netbsd || openbsd) && gc 6 | 7 | #include "textflag.h" 8 | 9 | // System call support for ARM64 BSD 10 | 11 | // Just jump to package syscall's implementation for all these functions. 12 | // The runtime may know about them. 13 | 14 | TEXT ·Syscall(SB),NOSPLIT,$0-56 15 | JMP syscall·Syscall(SB) 16 | 17 | TEXT ·Syscall6(SB),NOSPLIT,$0-80 18 | JMP syscall·Syscall6(SB) 19 | 20 | TEXT ·Syscall9(SB),NOSPLIT,$0-104 21 | JMP syscall·Syscall9(SB) 22 | 23 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56 24 | JMP syscall·RawSyscall(SB) 25 | 26 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 27 | JMP syscall·RawSyscall6(SB) 28 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_bsd_ppc64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2022 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 | //go:build (darwin || freebsd || netbsd || openbsd) && gc 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System call support for ppc64, BSD 11 | // 12 | 13 | // Just jump to package syscall's implementation for all these functions. 14 | // The runtime may know about them. 15 | 16 | TEXT ·Syscall(SB),NOSPLIT,$0-56 17 | JMP syscall·Syscall(SB) 18 | 19 | TEXT ·Syscall6(SB),NOSPLIT,$0-80 20 | JMP syscall·Syscall6(SB) 21 | 22 | TEXT ·Syscall9(SB),NOSPLIT,$0-104 23 | JMP syscall·Syscall9(SB) 24 | 25 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56 26 | JMP syscall·RawSyscall(SB) 27 | 28 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 29 | JMP syscall·RawSyscall6(SB) 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_bsd_riscv64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2021 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 | //go:build (darwin || freebsd || netbsd || openbsd) && gc 6 | 7 | #include "textflag.h" 8 | 9 | // System call support for RISCV64 BSD 10 | 11 | // Just jump to package syscall's implementation for all these functions. 12 | // The runtime may know about them. 13 | 14 | TEXT ·Syscall(SB),NOSPLIT,$0-56 15 | JMP syscall·Syscall(SB) 16 | 17 | TEXT ·Syscall6(SB),NOSPLIT,$0-80 18 | JMP syscall·Syscall6(SB) 19 | 20 | TEXT ·Syscall9(SB),NOSPLIT,$0-104 21 | JMP syscall·Syscall9(SB) 22 | 23 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56 24 | JMP syscall·RawSyscall(SB) 25 | 26 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 27 | JMP syscall·RawSyscall6(SB) 28 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_linux_arm64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2015 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 | //go:build linux && arm64 && gc 6 | 7 | #include "textflag.h" 8 | 9 | // Just jump to package syscall's implementation for all these functions. 10 | // The runtime may know about them. 11 | 12 | TEXT ·Syscall(SB),NOSPLIT,$0-56 13 | B syscall·Syscall(SB) 14 | 15 | TEXT ·Syscall6(SB),NOSPLIT,$0-80 16 | B syscall·Syscall6(SB) 17 | 18 | TEXT ·SyscallNoError(SB),NOSPLIT,$0-48 19 | BL runtime·entersyscall(SB) 20 | MOVD a1+8(FP), R0 21 | MOVD a2+16(FP), R1 22 | MOVD a3+24(FP), R2 23 | MOVD $0, R3 24 | MOVD $0, R4 25 | MOVD $0, R5 26 | MOVD trap+0(FP), R8 // syscall entry 27 | SVC 28 | MOVD R0, r1+32(FP) // r1 29 | MOVD R1, r2+40(FP) // r2 30 | BL runtime·exitsyscall(SB) 31 | RET 32 | 33 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56 34 | B syscall·RawSyscall(SB) 35 | 36 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 37 | B syscall·RawSyscall6(SB) 38 | 39 | TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48 40 | MOVD a1+8(FP), R0 41 | MOVD a2+16(FP), R1 42 | MOVD a3+24(FP), R2 43 | MOVD $0, R3 44 | MOVD $0, R4 45 | MOVD $0, R5 46 | MOVD trap+0(FP), R8 // syscall entry 47 | SVC 48 | MOVD R0, r1+32(FP) 49 | MOVD R1, r2+40(FP) 50 | RET 51 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s: -------------------------------------------------------------------------------- 1 | // Copyright 2014 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 | //go:build linux && (ppc64 || ppc64le) && gc 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System calls for ppc64, Linux 11 | // 12 | 13 | // Just jump to package syscall's implementation for all these functions. 14 | // The runtime may know about them. 15 | 16 | TEXT ·SyscallNoError(SB),NOSPLIT,$0-48 17 | BL runtime·entersyscall(SB) 18 | MOVD a1+8(FP), R3 19 | MOVD a2+16(FP), R4 20 | MOVD a3+24(FP), R5 21 | MOVD R0, R6 22 | MOVD R0, R7 23 | MOVD R0, R8 24 | MOVD trap+0(FP), R9 // syscall entry 25 | SYSCALL R9 26 | MOVD R3, r1+32(FP) 27 | MOVD R4, r2+40(FP) 28 | BL runtime·exitsyscall(SB) 29 | RET 30 | 31 | TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48 32 | MOVD a1+8(FP), R3 33 | MOVD a2+16(FP), R4 34 | MOVD a3+24(FP), R5 35 | MOVD R0, R6 36 | MOVD R0, R7 37 | MOVD R0, R8 38 | MOVD trap+0(FP), R9 // syscall entry 39 | SYSCALL R9 40 | MOVD R3, r1+32(FP) 41 | MOVD R4, r2+40(FP) 42 | RET 43 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_linux_riscv64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2019 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 | //go:build riscv64 && gc 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System calls for linux/riscv64. 11 | // 12 | // Where available, just jump to package syscall's implementation of 13 | // these functions. 14 | 15 | TEXT ·Syscall(SB),NOSPLIT,$0-56 16 | JMP syscall·Syscall(SB) 17 | 18 | TEXT ·Syscall6(SB),NOSPLIT,$0-80 19 | JMP syscall·Syscall6(SB) 20 | 21 | TEXT ·SyscallNoError(SB),NOSPLIT,$0-48 22 | CALL runtime·entersyscall(SB) 23 | MOV a1+8(FP), A0 24 | MOV a2+16(FP), A1 25 | MOV a3+24(FP), A2 26 | MOV trap+0(FP), A7 // syscall entry 27 | ECALL 28 | MOV A0, r1+32(FP) // r1 29 | MOV A1, r2+40(FP) // r2 30 | CALL runtime·exitsyscall(SB) 31 | RET 32 | 33 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56 34 | JMP syscall·RawSyscall(SB) 35 | 36 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 37 | JMP syscall·RawSyscall6(SB) 38 | 39 | TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48 40 | MOV a1+8(FP), A0 41 | MOV a2+16(FP), A1 42 | MOV a3+24(FP), A2 43 | MOV trap+0(FP), A7 // syscall entry 44 | ECALL 45 | MOV A0, r1+32(FP) 46 | MOV A1, r2+40(FP) 47 | RET 48 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2019 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 | //go:build gc 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System call support for mips64, OpenBSD 11 | // 12 | 13 | // Just jump to package syscall's implementation for all these functions. 14 | // The runtime may know about them. 15 | 16 | TEXT ·Syscall(SB),NOSPLIT,$0-56 17 | JMP syscall·Syscall(SB) 18 | 19 | TEXT ·Syscall6(SB),NOSPLIT,$0-80 20 | JMP syscall·Syscall6(SB) 21 | 22 | TEXT ·Syscall9(SB),NOSPLIT,$0-104 23 | JMP syscall·Syscall9(SB) 24 | 25 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56 26 | JMP syscall·RawSyscall(SB) 27 | 28 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 29 | JMP syscall·RawSyscall6(SB) 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_solaris_amd64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2014 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 | //go:build gc 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System calls for amd64, Solaris are implemented in runtime/syscall_solaris.go 11 | // 12 | 13 | TEXT ·sysvicall6(SB),NOSPLIT,$0-88 14 | JMP syscall·sysvicall6(SB) 15 | 16 | TEXT ·rawSysvicall6(SB),NOSPLIT,$0-88 17 | JMP syscall·rawSysvicall6(SB) 18 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/bluetooth_linux.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 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 | // Bluetooth sockets and messages 6 | 7 | package unix 8 | 9 | // Bluetooth Protocols 10 | const ( 11 | BTPROTO_L2CAP = 0 12 | BTPROTO_HCI = 1 13 | BTPROTO_SCO = 2 14 | BTPROTO_RFCOMM = 3 15 | BTPROTO_BNEP = 4 16 | BTPROTO_CMTP = 5 17 | BTPROTO_HIDP = 6 18 | BTPROTO_AVDTP = 7 19 | ) 20 | 21 | const ( 22 | HCI_CHANNEL_RAW = 0 23 | HCI_CHANNEL_USER = 1 24 | HCI_CHANNEL_MONITOR = 2 25 | HCI_CHANNEL_CONTROL = 3 26 | HCI_CHANNEL_LOGGING = 4 27 | ) 28 | 29 | // Socketoption Level 30 | const ( 31 | SOL_BLUETOOTH = 0x112 32 | SOL_HCI = 0x0 33 | SOL_L2CAP = 0x6 34 | SOL_RFCOMM = 0x12 35 | SOL_SCO = 0x11 36 | ) 37 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/constants.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015 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 | //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos 6 | 7 | package unix 8 | 9 | const ( 10 | R_OK = 0x4 11 | W_OK = 0x2 12 | X_OK = 0x1 13 | ) 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_aix_ppc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 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 | //go:build aix && ppc 6 | 7 | // Functions to access/create device major and minor numbers matching the 8 | // encoding used by AIX. 9 | 10 | package unix 11 | 12 | // Major returns the major component of a Linux device number. 13 | func Major(dev uint64) uint32 { 14 | return uint32((dev >> 16) & 0xffff) 15 | } 16 | 17 | // Minor returns the minor component of a Linux device number. 18 | func Minor(dev uint64) uint32 { 19 | return uint32(dev & 0xffff) 20 | } 21 | 22 | // Mkdev returns a Linux device number generated from the given major and minor 23 | // components. 24 | func Mkdev(major, minor uint32) uint64 { 25 | return uint64(((major) << 16) | (minor)) 26 | } 27 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_aix_ppc64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 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 | //go:build aix && ppc64 6 | 7 | // Functions to access/create device major and minor numbers matching the 8 | // encoding used AIX. 9 | 10 | package unix 11 | 12 | // Major returns the major component of a Linux device number. 13 | func Major(dev uint64) uint32 { 14 | return uint32((dev & 0x3fffffff00000000) >> 32) 15 | } 16 | 17 | // Minor returns the minor component of a Linux device number. 18 | func Minor(dev uint64) uint32 { 19 | return uint32((dev & 0x00000000ffffffff) >> 0) 20 | } 21 | 22 | // Mkdev returns a Linux device number generated from the given major and minor 23 | // components. 24 | func Mkdev(major, minor uint32) uint64 { 25 | var DEVNO64 uint64 26 | DEVNO64 = 0x8000000000000000 27 | return ((uint64(major) << 32) | (uint64(minor) & 0x00000000FFFFFFFF) | DEVNO64) 28 | } 29 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_darwin.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 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 | // Functions to access/create device major and minor numbers matching the 6 | // encoding used in Darwin's sys/types.h header. 7 | 8 | package unix 9 | 10 | // Major returns the major component of a Darwin device number. 11 | func Major(dev uint64) uint32 { 12 | return uint32((dev >> 24) & 0xff) 13 | } 14 | 15 | // Minor returns the minor component of a Darwin device number. 16 | func Minor(dev uint64) uint32 { 17 | return uint32(dev & 0xffffff) 18 | } 19 | 20 | // Mkdev returns a Darwin device number generated from the given major and minor 21 | // components. 22 | func Mkdev(major, minor uint32) uint64 { 23 | return (uint64(major) << 24) | uint64(minor) 24 | } 25 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_dragonfly.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 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 | // Functions to access/create device major and minor numbers matching the 6 | // encoding used in Dragonfly's sys/types.h header. 7 | // 8 | // The information below is extracted and adapted from sys/types.h: 9 | // 10 | // Minor gives a cookie instead of an index since in order to avoid changing the 11 | // meanings of bits 0-15 or wasting time and space shifting bits 16-31 for 12 | // devices that don't use them. 13 | 14 | package unix 15 | 16 | // Major returns the major component of a DragonFlyBSD device number. 17 | func Major(dev uint64) uint32 { 18 | return uint32((dev >> 8) & 0xff) 19 | } 20 | 21 | // Minor returns the minor component of a DragonFlyBSD device number. 22 | func Minor(dev uint64) uint32 { 23 | return uint32(dev & 0xffff00ff) 24 | } 25 | 26 | // Mkdev returns a DragonFlyBSD device number generated from the given major and 27 | // minor components. 28 | func Mkdev(major, minor uint32) uint64 { 29 | return (uint64(major) << 8) | uint64(minor) 30 | } 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_freebsd.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 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 | // Functions to access/create device major and minor numbers matching the 6 | // encoding used in FreeBSD's sys/types.h header. 7 | // 8 | // The information below is extracted and adapted from sys/types.h: 9 | // 10 | // Minor gives a cookie instead of an index since in order to avoid changing the 11 | // meanings of bits 0-15 or wasting time and space shifting bits 16-31 for 12 | // devices that don't use them. 13 | 14 | package unix 15 | 16 | // Major returns the major component of a FreeBSD device number. 17 | func Major(dev uint64) uint32 { 18 | return uint32((dev >> 8) & 0xff) 19 | } 20 | 21 | // Minor returns the minor component of a FreeBSD device number. 22 | func Minor(dev uint64) uint32 { 23 | return uint32(dev & 0xffff00ff) 24 | } 25 | 26 | // Mkdev returns a FreeBSD device number generated from the given major and 27 | // minor components. 28 | func Mkdev(major, minor uint32) uint64 { 29 | return (uint64(major) << 8) | uint64(minor) 30 | } 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_netbsd.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 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 | // Functions to access/create device major and minor numbers matching the 6 | // encoding used in NetBSD's sys/types.h header. 7 | 8 | package unix 9 | 10 | // Major returns the major component of a NetBSD device number. 11 | func Major(dev uint64) uint32 { 12 | return uint32((dev & 0x000fff00) >> 8) 13 | } 14 | 15 | // Minor returns the minor component of a NetBSD device number. 16 | func Minor(dev uint64) uint32 { 17 | minor := uint32((dev & 0x000000ff) >> 0) 18 | minor |= uint32((dev & 0xfff00000) >> 12) 19 | return minor 20 | } 21 | 22 | // Mkdev returns a NetBSD device number generated from the given major and minor 23 | // components. 24 | func Mkdev(major, minor uint32) uint64 { 25 | dev := (uint64(major) << 8) & 0x000fff00 26 | dev |= (uint64(minor) << 12) & 0xfff00000 27 | dev |= (uint64(minor) << 0) & 0x000000ff 28 | return dev 29 | } 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_openbsd.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 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 | // Functions to access/create device major and minor numbers matching the 6 | // encoding used in OpenBSD's sys/types.h header. 7 | 8 | package unix 9 | 10 | // Major returns the major component of an OpenBSD device number. 11 | func Major(dev uint64) uint32 { 12 | return uint32((dev & 0x0000ff00) >> 8) 13 | } 14 | 15 | // Minor returns the minor component of an OpenBSD device number. 16 | func Minor(dev uint64) uint32 { 17 | minor := uint32((dev & 0x000000ff) >> 0) 18 | minor |= uint32((dev & 0xffff0000) >> 8) 19 | return minor 20 | } 21 | 22 | // Mkdev returns an OpenBSD device number generated from the given major and minor 23 | // components. 24 | func Mkdev(major, minor uint32) uint64 { 25 | dev := (uint64(major) << 8) & 0x0000ff00 26 | dev |= (uint64(minor) << 8) & 0xffff0000 27 | dev |= (uint64(minor) << 0) & 0x000000ff 28 | return dev 29 | } 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_zos.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 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 | //go:build zos && s390x 6 | 7 | // Functions to access/create device major and minor numbers matching the 8 | // encoding used by z/OS. 9 | // 10 | // The information below is extracted and adapted from macros. 11 | 12 | package unix 13 | 14 | // Major returns the major component of a z/OS device number. 15 | func Major(dev uint64) uint32 { 16 | return uint32((dev >> 16) & 0x0000FFFF) 17 | } 18 | 19 | // Minor returns the minor component of a z/OS device number. 20 | func Minor(dev uint64) uint32 { 21 | return uint32(dev & 0x0000FFFF) 22 | } 23 | 24 | // Mkdev returns a z/OS device number generated from the given major and minor 25 | // components. 26 | func Mkdev(major, minor uint32) uint64 { 27 | return (uint64(major) << 16) | uint64(minor) 28 | } 29 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/endian_big.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 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 | //go:build armbe || arm64be || m68k || mips || mips64 || mips64p32 || ppc || ppc64 || s390 || s390x || shbe || sparc || sparc64 6 | 7 | package unix 8 | 9 | const isBigEndian = true 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/endian_little.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 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 | //go:build 386 || amd64 || amd64p32 || alpha || arm || arm64 || loong64 || mipsle || mips64le || mips64p32le || nios2 || ppc64le || riscv || riscv64 || sh 6 | 7 | package unix 8 | 9 | const isBigEndian = false 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/env_unix.go: -------------------------------------------------------------------------------- 1 | // Copyright 2010 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 | //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos 6 | 7 | // Unix environment variables. 8 | 9 | package unix 10 | 11 | import "syscall" 12 | 13 | func Getenv(key string) (value string, found bool) { 14 | return syscall.Getenv(key) 15 | } 16 | 17 | func Setenv(key, value string) error { 18 | return syscall.Setenv(key, value) 19 | } 20 | 21 | func Clearenv() { 22 | syscall.Clearenv() 23 | } 24 | 25 | func Environ() []string { 26 | return syscall.Environ() 27 | } 28 | 29 | func Unsetenv(key string) error { 30 | return syscall.Unsetenv(key) 31 | } 32 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/fcntl.go: -------------------------------------------------------------------------------- 1 | // Copyright 2014 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 | //go:build dragonfly || freebsd || linux || netbsd 6 | 7 | package unix 8 | 9 | import "unsafe" 10 | 11 | // fcntl64Syscall is usually SYS_FCNTL, but is overridden on 32-bit Linux 12 | // systems by fcntl_linux_32bit.go to be SYS_FCNTL64. 13 | var fcntl64Syscall uintptr = SYS_FCNTL 14 | 15 | func fcntl(fd int, cmd, arg int) (int, error) { 16 | valptr, _, errno := Syscall(fcntl64Syscall, uintptr(fd), uintptr(cmd), uintptr(arg)) 17 | var err error 18 | if errno != 0 { 19 | err = errno 20 | } 21 | return int(valptr), err 22 | } 23 | 24 | // FcntlInt performs a fcntl syscall on fd with the provided command and argument. 25 | func FcntlInt(fd uintptr, cmd, arg int) (int, error) { 26 | return fcntl(int(fd), cmd, arg) 27 | } 28 | 29 | // FcntlFlock performs a fcntl syscall for the F_GETLK, F_SETLK or F_SETLKW command. 30 | func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) error { 31 | _, _, errno := Syscall(fcntl64Syscall, fd, uintptr(cmd), uintptr(unsafe.Pointer(lk))) 32 | if errno == 0 { 33 | return nil 34 | } 35 | return errno 36 | } 37 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/fcntl_darwin.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 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 | package unix 6 | 7 | import "unsafe" 8 | 9 | // FcntlInt performs a fcntl syscall on fd with the provided command and argument. 10 | func FcntlInt(fd uintptr, cmd, arg int) (int, error) { 11 | return fcntl(int(fd), cmd, arg) 12 | } 13 | 14 | // FcntlFlock performs a fcntl syscall for the F_GETLK, F_SETLK or F_SETLKW command. 15 | func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) error { 16 | _, err := fcntl(int(fd), cmd, int(uintptr(unsafe.Pointer(lk)))) 17 | return err 18 | } 19 | 20 | // FcntlFstore performs a fcntl syscall for the F_PREALLOCATE command. 21 | func FcntlFstore(fd uintptr, cmd int, fstore *Fstore_t) error { 22 | _, err := fcntl(int(fd), cmd, int(uintptr(unsafe.Pointer(fstore)))) 23 | return err 24 | } 25 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go: -------------------------------------------------------------------------------- 1 | // Copyright 2014 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 | //go:build (linux && 386) || (linux && arm) || (linux && mips) || (linux && mipsle) || (linux && ppc) 6 | 7 | package unix 8 | 9 | func init() { 10 | // On 32-bit Linux systems, the fcntl syscall that matches Go's 11 | // Flock_t type is SYS_FCNTL64, not SYS_FCNTL. 12 | fcntl64Syscall = SYS_FCNTL64 13 | } 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/fdset.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 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 | //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos 6 | 7 | package unix 8 | 9 | // Set adds fd to the set fds. 10 | func (fds *FdSet) Set(fd int) { 11 | fds.Bits[fd/NFDBITS] |= (1 << (uintptr(fd) % NFDBITS)) 12 | } 13 | 14 | // Clear removes fd from the set fds. 15 | func (fds *FdSet) Clear(fd int) { 16 | fds.Bits[fd/NFDBITS] &^= (1 << (uintptr(fd) % NFDBITS)) 17 | } 18 | 19 | // IsSet returns whether fd is in the set fds. 20 | func (fds *FdSet) IsSet(fd int) bool { 21 | return fds.Bits[fd/NFDBITS]&(1<<(uintptr(fd)%NFDBITS)) != 0 22 | } 23 | 24 | // Zero clears the set fds. 25 | func (fds *FdSet) Zero() { 26 | for i := range fds.Bits { 27 | fds.Bits[i] = 0 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015 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 | //go:build gccgo && linux && amd64 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | //extern gettimeofday 12 | func realGettimeofday(*Timeval, *byte) int32 13 | 14 | func gettimeofday(tv *Timeval) (err syscall.Errno) { 15 | r := realGettimeofday(tv, nil) 16 | if r < 0 { 17 | return syscall.GetErrno() 18 | } 19 | return 0 20 | } 21 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/mmap_nomremap.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 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 | //go:build aix || darwin || dragonfly || freebsd || openbsd || solaris || zos 6 | 7 | package unix 8 | 9 | var mapper = &mmapper{ 10 | active: make(map[*byte][]byte), 11 | mmap: mmap, 12 | munmap: munmap, 13 | } 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/pagesize_unix.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 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 | //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos 6 | 7 | // For Unix, get the pagesize from the runtime. 8 | 9 | package unix 10 | 11 | import "syscall" 12 | 13 | func Getpagesize() int { 14 | return syscall.Getpagesize() 15 | } 16 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/ptrace_darwin.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 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 | //go:build darwin && !ios 6 | 7 | package unix 8 | 9 | func ptrace(request int, pid int, addr uintptr, data uintptr) error { 10 | return ptrace1(request, pid, addr, data) 11 | } 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/ptrace_ios.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 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 | //go:build ios 6 | 7 | package unix 8 | 9 | func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) { 10 | return ENOTSUP 11 | } 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/race.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012 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 | //go:build (darwin && race) || (linux && race) || (freebsd && race) 6 | 7 | package unix 8 | 9 | import ( 10 | "runtime" 11 | "unsafe" 12 | ) 13 | 14 | const raceenabled = true 15 | 16 | func raceAcquire(addr unsafe.Pointer) { 17 | runtime.RaceAcquire(addr) 18 | } 19 | 20 | func raceReleaseMerge(addr unsafe.Pointer) { 21 | runtime.RaceReleaseMerge(addr) 22 | } 23 | 24 | func raceReadRange(addr unsafe.Pointer, len int) { 25 | runtime.RaceReadRange(addr, len) 26 | } 27 | 28 | func raceWriteRange(addr unsafe.Pointer, len int) { 29 | runtime.RaceWriteRange(addr, len) 30 | } 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/race0.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012 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 | //go:build aix || (darwin && !race) || (linux && !race) || (freebsd && !race) || netbsd || openbsd || solaris || dragonfly || zos 6 | 7 | package unix 8 | 9 | import ( 10 | "unsafe" 11 | ) 12 | 13 | const raceenabled = false 14 | 15 | func raceAcquire(addr unsafe.Pointer) { 16 | } 17 | 18 | func raceReleaseMerge(addr unsafe.Pointer) { 19 | } 20 | 21 | func raceReadRange(addr unsafe.Pointer, len int) { 22 | } 23 | 24 | func raceWriteRange(addr unsafe.Pointer, len int) { 25 | } 26 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/readdirent_getdents.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 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 | //go:build aix || dragonfly || freebsd || linux || netbsd || openbsd 6 | 7 | package unix 8 | 9 | // ReadDirent reads directory entries from fd and writes them into buf. 10 | func ReadDirent(fd int, buf []byte) (n int, err error) { 11 | return Getdents(fd, buf) 12 | } 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/readdirent_getdirentries.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 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 | //go:build darwin || zos 6 | 7 | package unix 8 | 9 | import "unsafe" 10 | 11 | // ReadDirent reads directory entries from fd and writes them into buf. 12 | func ReadDirent(fd int, buf []byte) (n int, err error) { 13 | // Final argument is (basep *uintptr) and the syscall doesn't take nil. 14 | // 64 bits should be enough. (32 bits isn't even on 386). Since the 15 | // actual system call is getdirentries64, 64 is a good guess. 16 | // TODO(rsc): Can we use a single global basep for all calls? 17 | var base = (*uintptr)(unsafe.Pointer(new(uint64))) 18 | return Getdirentries(fd, buf, base) 19 | } 20 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 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 | package unix 6 | 7 | // Round the length of a raw sockaddr up to align it properly. 8 | func cmsgAlignOf(salen int) int { 9 | salign := SizeofPtr 10 | if SizeofPtr == 8 && !supportsABI(_dragonflyABIChangeVersion) { 11 | // 64-bit Dragonfly before the September 2019 ABI changes still requires 12 | // 32-bit aligned access to network subsystem. 13 | salign = 4 14 | } 15 | return (salen + salign - 1) & ^(salign - 1) 16 | } 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 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 | //go:build darwin 6 | 7 | package unix 8 | 9 | import _ "unsafe" 10 | 11 | // Implemented in the runtime package (runtime/sys_darwin.go) 12 | func syscall_syscall(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) 13 | func syscall_syscall6(fn, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno) 14 | func syscall_syscall6X(fn, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno) 15 | func syscall_syscall9(fn, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err Errno) // 32-bit only 16 | func syscall_rawSyscall(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) 17 | func syscall_rawSyscall6(fn, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno) 18 | func syscall_syscallPtr(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) 19 | 20 | //go:linkname syscall_syscall syscall.syscall 21 | //go:linkname syscall_syscall6 syscall.syscall6 22 | //go:linkname syscall_syscall6X syscall.syscall6X 23 | //go:linkname syscall_syscall9 syscall.syscall9 24 | //go:linkname syscall_rawSyscall syscall.rawSyscall 25 | //go:linkname syscall_rawSyscall6 syscall.rawSyscall6 26 | //go:linkname syscall_syscallPtr syscall.syscallPtr 27 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_hurd.go: -------------------------------------------------------------------------------- 1 | // Copyright 2022 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 | //go:build hurd 6 | 7 | package unix 8 | 9 | /* 10 | #include 11 | int ioctl(int, unsigned long int, uintptr_t); 12 | */ 13 | import "C" 14 | 15 | func ioctl(fd int, req uint, arg uintptr) (err error) { 16 | r0, er := C.ioctl(C.int(fd), C.ulong(req), C.uintptr_t(arg)) 17 | if r0 == -1 && er != nil { 18 | err = er 19 | } 20 | return 21 | } 22 | 23 | func ioctlPtr(fd int, req uint, arg unsafe.Pointer) (err error) { 24 | r0, er := C.ioctl(C.int(fd), C.ulong(req), C.uintptr_t(uintptr(arg))) 25 | if r0 == -1 && er != nil { 26 | err = er 27 | } 28 | return 29 | } 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_hurd_386.go: -------------------------------------------------------------------------------- 1 | // Copyright 2022 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 | //go:build 386 && hurd 6 | 7 | package unix 8 | 9 | const ( 10 | TIOCGETA = 0x62251713 11 | ) 12 | 13 | type Winsize struct { 14 | Row uint16 15 | Col uint16 16 | Xpixel uint16 17 | Ypixel uint16 18 | } 19 | 20 | type Termios struct { 21 | Iflag uint32 22 | Oflag uint32 23 | Cflag uint32 24 | Lflag uint32 25 | Cc [20]uint8 26 | Ispeed int32 27 | Ospeed int32 28 | } 29 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_alarm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2022 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 | //go:build linux && (386 || amd64 || mips || mipsle || mips64 || mipsle || ppc64 || ppc64le || ppc || s390x || sparc64) 6 | 7 | package unix 8 | 9 | // SYS_ALARM is not defined on arm or riscv, but is available for other GOARCH 10 | // values. 11 | 12 | //sys Alarm(seconds uint) (remaining uint, err error) 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 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 | //go:build amd64 && linux && gc 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | //go:noescape 12 | func gettimeofday(tv *Timeval) (err syscall.Errno) 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_gc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 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 | //go:build linux && gc 6 | 7 | package unix 8 | 9 | // SyscallNoError may be used instead of Syscall for syscalls that don't fail. 10 | func SyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr) 11 | 12 | // RawSyscallNoError may be used instead of RawSyscall for syscalls that don't 13 | // fail. 14 | func RawSyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr) 15 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 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 | //go:build linux && gc && 386 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | // Underlying system call writes to newoffset via pointer. 12 | // Implemented in assembly to avoid allocation. 13 | func seek(fd int, offset int64, whence int) (newoffset int64, err syscall.Errno) 14 | 15 | func socketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (n int, err syscall.Errno) 16 | func rawsocketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (n int, err syscall.Errno) 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go: -------------------------------------------------------------------------------- 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 | //go:build arm && gc && linux 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | // Underlying system call writes to newoffset via pointer. 12 | // Implemented in assembly to avoid allocation. 13 | func seek(fd int, offset int64, whence int) (newoffset int64, err syscall.Errno) 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 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 | //go:build linux && gccgo && 386 6 | 7 | package unix 8 | 9 | import ( 10 | "syscall" 11 | "unsafe" 12 | ) 13 | 14 | func seek(fd int, offset int64, whence int) (int64, syscall.Errno) { 15 | var newoffset int64 16 | offsetLow := uint32(offset & 0xffffffff) 17 | offsetHigh := uint32((offset >> 32) & 0xffffffff) 18 | _, _, err := Syscall6(SYS__LLSEEK, uintptr(fd), uintptr(offsetHigh), uintptr(offsetLow), uintptr(unsafe.Pointer(&newoffset)), uintptr(whence), 0) 19 | return newoffset, err 20 | } 21 | 22 | func socketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (int, syscall.Errno) { 23 | fd, _, err := Syscall(SYS_SOCKETCALL, uintptr(call), uintptr(unsafe.Pointer(&a0)), 0) 24 | return int(fd), err 25 | } 26 | 27 | func rawsocketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (int, syscall.Errno) { 28 | fd, _, err := RawSyscall(SYS_SOCKETCALL, uintptr(call), uintptr(unsafe.Pointer(&a0)), 0) 29 | return int(fd), err 30 | } 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 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 | //go:build linux && gccgo && arm 6 | 7 | package unix 8 | 9 | import ( 10 | "syscall" 11 | "unsafe" 12 | ) 13 | 14 | func seek(fd int, offset int64, whence int) (int64, syscall.Errno) { 15 | var newoffset int64 16 | offsetLow := uint32(offset & 0xffffffff) 17 | offsetHigh := uint32((offset >> 32) & 0xffffffff) 18 | _, _, err := Syscall6(SYS__LLSEEK, uintptr(fd), uintptr(offsetHigh), uintptr(offsetLow), uintptr(unsafe.Pointer(&newoffset)), uintptr(whence), 0) 19 | return newoffset, err 20 | } 21 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_netbsd_386.go: -------------------------------------------------------------------------------- 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 | //go:build 386 && netbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: int32(nsec)} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: int32(usec)} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint32(fd) 19 | k.Filter = uint32(mode) 20 | k.Flags = uint32(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint32(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = int32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go: -------------------------------------------------------------------------------- 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 | //go:build amd64 && netbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: nsec} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: int32(usec)} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint64(fd) 19 | k.Filter = uint32(mode) 20 | k.Flags = uint32(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint64(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = int32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 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 | //go:build arm && netbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: int32(nsec)} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: int32(usec)} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint32(fd) 19 | k.Filter = uint32(mode) 20 | k.Flags = uint32(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint32(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = int32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 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 | //go:build arm64 && netbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: nsec} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: int32(usec)} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint64(fd) 19 | k.Filter = uint32(mode) 20 | k.Flags = uint32(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint64(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = int32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_openbsd_386.go: -------------------------------------------------------------------------------- 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 | //go:build 386 && openbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: int32(nsec)} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: int32(usec)} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint32(fd) 19 | k.Filter = int16(mode) 20 | k.Flags = uint16(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint32(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = uint32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | 39 | // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions 40 | // of openbsd/386 the syscall is called sysctl instead of __sysctl. 41 | const SYS___SYSCTL = SYS_SYSCTL 42 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go: -------------------------------------------------------------------------------- 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 | //go:build amd64 && openbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: nsec} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: usec} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint64(fd) 19 | k.Filter = int16(mode) 20 | k.Flags = uint16(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint64(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = uint32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | 39 | // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions 40 | // of openbsd/amd64 the syscall is called sysctl instead of __sysctl. 41 | const SYS___SYSCTL = SYS_SYSCTL 42 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 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 | //go:build arm && openbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: int32(nsec)} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: int32(usec)} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint32(fd) 19 | k.Filter = int16(mode) 20 | k.Flags = uint16(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint32(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = uint32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | 39 | // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions 40 | // of openbsd/arm the syscall is called sysctl instead of __sysctl. 41 | const SYS___SYSCTL = SYS_SYSCTL 42 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 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 | //go:build arm64 && openbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: nsec} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: usec} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint64(fd) 19 | k.Filter = int16(mode) 20 | k.Flags = uint16(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint64(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = uint32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | 39 | // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions 40 | // of openbsd/amd64 the syscall is called sysctl instead of __sysctl. 41 | const SYS___SYSCTL = SYS_SYSCTL 42 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_openbsd_libc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2022 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 | //go:build openbsd 6 | 7 | package unix 8 | 9 | import _ "unsafe" 10 | 11 | // Implemented in the runtime package (runtime/sys_openbsd3.go) 12 | func syscall_syscall(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) 13 | func syscall_syscall6(fn, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno) 14 | func syscall_syscall10(fn, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10 uintptr) (r1, r2 uintptr, err Errno) 15 | func syscall_rawSyscall(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) 16 | func syscall_rawSyscall6(fn, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno) 17 | 18 | //go:linkname syscall_syscall syscall.syscall 19 | //go:linkname syscall_syscall6 syscall.syscall6 20 | //go:linkname syscall_syscall10 syscall.syscall10 21 | //go:linkname syscall_rawSyscall syscall.rawSyscall 22 | //go:linkname syscall_rawSyscall6 syscall.rawSyscall6 23 | 24 | func syscall_syscall9(fn, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err Errno) { 25 | return syscall_syscall10(fn, a1, a2, a3, a4, a5, a6, a7, a8, a9, 0) 26 | } 27 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_openbsd_mips64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 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 | package unix 6 | 7 | func setTimespec(sec, nsec int64) Timespec { 8 | return Timespec{Sec: sec, Nsec: nsec} 9 | } 10 | 11 | func setTimeval(sec, usec int64) Timeval { 12 | return Timeval{Sec: sec, Usec: usec} 13 | } 14 | 15 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 16 | k.Ident = uint64(fd) 17 | k.Filter = int16(mode) 18 | k.Flags = uint16(flags) 19 | } 20 | 21 | func (iov *Iovec) SetLen(length int) { 22 | iov.Len = uint64(length) 23 | } 24 | 25 | func (msghdr *Msghdr) SetControllen(length int) { 26 | msghdr.Controllen = uint32(length) 27 | } 28 | 29 | func (msghdr *Msghdr) SetIovlen(length int) { 30 | msghdr.Iovlen = uint32(length) 31 | } 32 | 33 | func (cmsg *Cmsghdr) SetLen(length int) { 34 | cmsg.Len = uint32(length) 35 | } 36 | 37 | // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions 38 | // of OpenBSD the syscall is called sysctl instead of __sysctl. 39 | const SYS___SYSCTL = SYS_SYSCTL 40 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_openbsd_ppc64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 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 | //go:build ppc64 && openbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: nsec} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: usec} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint64(fd) 19 | k.Filter = int16(mode) 20 | k.Flags = uint16(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint64(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = uint32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | 39 | // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions 40 | // of openbsd/ppc64 the syscall is called sysctl instead of __sysctl. 41 | const SYS___SYSCTL = SYS_SYSCTL 42 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_openbsd_riscv64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 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 | //go:build riscv64 && openbsd 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: nsec} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: usec} 15 | } 16 | 17 | func SetKevent(k *Kevent_t, fd, mode, flags int) { 18 | k.Ident = uint64(fd) 19 | k.Filter = int16(mode) 20 | k.Flags = uint16(flags) 21 | } 22 | 23 | func (iov *Iovec) SetLen(length int) { 24 | iov.Len = uint64(length) 25 | } 26 | 27 | func (msghdr *Msghdr) SetControllen(length int) { 28 | msghdr.Controllen = uint32(length) 29 | } 30 | 31 | func (msghdr *Msghdr) SetIovlen(length int) { 32 | msghdr.Iovlen = uint32(length) 33 | } 34 | 35 | func (cmsg *Cmsghdr) SetLen(length int) { 36 | cmsg.Len = uint32(length) 37 | } 38 | 39 | // SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions 40 | // of openbsd/riscv64 the syscall is called sysctl instead of __sysctl. 41 | const SYS___SYSCTL = SYS_SYSCTL 42 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go: -------------------------------------------------------------------------------- 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 | //go:build amd64 && solaris 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: nsec} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: usec} 15 | } 16 | 17 | func (iov *Iovec) SetLen(length int) { 18 | iov.Len = uint64(length) 19 | } 20 | 21 | func (msghdr *Msghdr) SetIovlen(length int) { 22 | msghdr.Iovlen = int32(length) 23 | } 24 | 25 | func (cmsg *Cmsghdr) SetLen(length int) { 26 | cmsg.Len = uint32(length) 27 | } 28 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_unix_gc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 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 | //go:build (darwin || dragonfly || freebsd || (linux && !ppc64 && !ppc64le) || netbsd || openbsd || solaris) && gc 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | func Syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) 12 | func Syscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) 13 | func RawSyscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) 14 | func RawSyscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) 15 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 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 | //go:build linux && (ppc64le || ppc64) && gc 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | func Syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) { 12 | return syscall.Syscall(trap, a1, a2, a3) 13 | } 14 | func Syscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) { 15 | return syscall.Syscall6(trap, a1, a2, a3, a4, a5, a6) 16 | } 17 | func RawSyscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) { 18 | return syscall.RawSyscall(trap, a1, a2, a3) 19 | } 20 | func RawSyscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) { 21 | return syscall.RawSyscall6(trap, a1, a2, a3, a4, a5, a6) 22 | } 23 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/sysvshm_linux.go: -------------------------------------------------------------------------------- 1 | // Copyright 2021 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 | //go:build linux 6 | 7 | package unix 8 | 9 | import "runtime" 10 | 11 | // SysvShmCtl performs control operations on the shared memory segment 12 | // specified by id. 13 | func SysvShmCtl(id, cmd int, desc *SysvShmDesc) (result int, err error) { 14 | if runtime.GOARCH == "arm" || 15 | runtime.GOARCH == "mips64" || runtime.GOARCH == "mips64le" { 16 | cmd |= ipc_64 17 | } 18 | 19 | return shmctl(id, cmd, desc) 20 | } 21 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/sysvshm_unix_other.go: -------------------------------------------------------------------------------- 1 | // Copyright 2021 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 | //go:build (darwin && !ios) || zos 6 | 7 | package unix 8 | 9 | // SysvShmCtl performs control operations on the shared memory segment 10 | // specified by id. 11 | func SysvShmCtl(id, cmd int, desc *SysvShmDesc) (result int, err error) { 12 | return shmctl(id, cmd, desc) 13 | } 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/zptrace_linux_arm64.go: -------------------------------------------------------------------------------- 1 | // Code generated by linux/mkall.go generatePtraceRegSet("arm64"). DO NOT EDIT. 2 | 3 | package unix 4 | 5 | import "unsafe" 6 | 7 | // PtraceGetRegSetArm64 fetches the registers used by arm64 binaries. 8 | func PtraceGetRegSetArm64(pid, addr int, regsout *PtraceRegsArm64) error { 9 | iovec := Iovec{(*byte)(unsafe.Pointer(regsout)), uint64(unsafe.Sizeof(*regsout))} 10 | return ptracePtr(PTRACE_GETREGSET, pid, uintptr(addr), unsafe.Pointer(&iovec)) 11 | } 12 | 13 | // PtraceSetRegSetArm64 sets the registers used by arm64 binaries. 14 | func PtraceSetRegSetArm64(pid, addr int, regs *PtraceRegsArm64) error { 15 | iovec := Iovec{(*byte)(unsafe.Pointer(regs)), uint64(unsafe.Sizeof(*regs))} 16 | return ptracePtr(PTRACE_SETREGSET, pid, uintptr(addr), unsafe.Pointer(&iovec)) 17 | } 18 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/aliases.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 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 | //go:build windows 6 | 7 | package windows 8 | 9 | import "syscall" 10 | 11 | type Errno = syscall.Errno 12 | type SysProcAttr = syscall.SysProcAttr 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/eventlog.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012 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 | //go:build windows 6 | 7 | package windows 8 | 9 | const ( 10 | EVENTLOG_SUCCESS = 0 11 | EVENTLOG_ERROR_TYPE = 1 12 | EVENTLOG_WARNING_TYPE = 2 13 | EVENTLOG_INFORMATION_TYPE = 4 14 | EVENTLOG_AUDIT_SUCCESS = 8 15 | EVENTLOG_AUDIT_FAILURE = 16 16 | ) 17 | 18 | //sys RegisterEventSource(uncServerName *uint16, sourceName *uint16) (handle Handle, err error) [failretval==0] = advapi32.RegisterEventSourceW 19 | //sys DeregisterEventSource(handle Handle) (err error) = advapi32.DeregisterEventSource 20 | //sys ReportEvent(log Handle, etype uint16, category uint16, eventId uint32, usrSId uintptr, numStrings uint16, dataSize uint32, strings **uint16, rawData *byte) (err error) = advapi32.ReportEventW 21 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/mksyscall.go: -------------------------------------------------------------------------------- 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 | //go:build generate 6 | 7 | package windows 8 | 9 | //go:generate go run golang.org/x/sys/windows/mkwinsyscall -output zsyscall_windows.go eventlog.go service.go syscall_windows.go security_windows.go setupapi_windows.go 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/race.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012 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 | //go:build windows && race 6 | 7 | package windows 8 | 9 | import ( 10 | "runtime" 11 | "unsafe" 12 | ) 13 | 14 | const raceenabled = true 15 | 16 | func raceAcquire(addr unsafe.Pointer) { 17 | runtime.RaceAcquire(addr) 18 | } 19 | 20 | func raceReleaseMerge(addr unsafe.Pointer) { 21 | runtime.RaceReleaseMerge(addr) 22 | } 23 | 24 | func raceReadRange(addr unsafe.Pointer, len int) { 25 | runtime.RaceReadRange(addr, len) 26 | } 27 | 28 | func raceWriteRange(addr unsafe.Pointer, len int) { 29 | runtime.RaceWriteRange(addr, len) 30 | } 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/race0.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012 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 | //go:build windows && !race 6 | 7 | package windows 8 | 9 | import ( 10 | "unsafe" 11 | ) 12 | 13 | const raceenabled = false 14 | 15 | func raceAcquire(addr unsafe.Pointer) { 16 | } 17 | 18 | func raceReleaseMerge(addr unsafe.Pointer) { 19 | } 20 | 21 | func raceReadRange(addr unsafe.Pointer, len int) { 22 | } 23 | 24 | func raceWriteRange(addr unsafe.Pointer, len int) { 25 | } 26 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/str.go: -------------------------------------------------------------------------------- 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 | //go:build windows 6 | 7 | package windows 8 | 9 | func itoa(val int) string { // do it here rather than with fmt to avoid dependency 10 | if val < 0 { 11 | return "-" + itoa(-val) 12 | } 13 | var buf [32]byte // big enough for int64 14 | i := len(buf) - 1 15 | for val >= 10 { 16 | buf[i] = byte(val%10 + '0') 17 | i-- 18 | val /= 10 19 | } 20 | buf[i] = byte(val + '0') 21 | return string(buf[i:]) 22 | } 23 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/types_windows_386.go: -------------------------------------------------------------------------------- 1 | // Copyright 2011 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 | package windows 6 | 7 | type WSAData struct { 8 | Version uint16 9 | HighVersion uint16 10 | Description [WSADESCRIPTION_LEN + 1]byte 11 | SystemStatus [WSASYS_STATUS_LEN + 1]byte 12 | MaxSockets uint16 13 | MaxUdpDg uint16 14 | VendorInfo *byte 15 | } 16 | 17 | type Servent struct { 18 | Name *byte 19 | Aliases **byte 20 | Port uint16 21 | Proto *byte 22 | } 23 | 24 | type JOBOBJECT_BASIC_LIMIT_INFORMATION struct { 25 | PerProcessUserTimeLimit int64 26 | PerJobUserTimeLimit int64 27 | LimitFlags uint32 28 | MinimumWorkingSetSize uintptr 29 | MaximumWorkingSetSize uintptr 30 | ActiveProcessLimit uint32 31 | Affinity uintptr 32 | PriorityClass uint32 33 | SchedulingClass uint32 34 | _ uint32 // pad to 8 byte boundary 35 | } 36 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/types_windows_amd64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2011 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 | package windows 6 | 7 | type WSAData struct { 8 | Version uint16 9 | HighVersion uint16 10 | MaxSockets uint16 11 | MaxUdpDg uint16 12 | VendorInfo *byte 13 | Description [WSADESCRIPTION_LEN + 1]byte 14 | SystemStatus [WSASYS_STATUS_LEN + 1]byte 15 | } 16 | 17 | type Servent struct { 18 | Name *byte 19 | Aliases **byte 20 | Proto *byte 21 | Port uint16 22 | } 23 | 24 | type JOBOBJECT_BASIC_LIMIT_INFORMATION struct { 25 | PerProcessUserTimeLimit int64 26 | PerJobUserTimeLimit int64 27 | LimitFlags uint32 28 | MinimumWorkingSetSize uintptr 29 | MaximumWorkingSetSize uintptr 30 | ActiveProcessLimit uint32 31 | Affinity uintptr 32 | PriorityClass uint32 33 | SchedulingClass uint32 34 | } 35 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/types_windows_arm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 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 | package windows 6 | 7 | type WSAData struct { 8 | Version uint16 9 | HighVersion uint16 10 | Description [WSADESCRIPTION_LEN + 1]byte 11 | SystemStatus [WSASYS_STATUS_LEN + 1]byte 12 | MaxSockets uint16 13 | MaxUdpDg uint16 14 | VendorInfo *byte 15 | } 16 | 17 | type Servent struct { 18 | Name *byte 19 | Aliases **byte 20 | Port uint16 21 | Proto *byte 22 | } 23 | 24 | type JOBOBJECT_BASIC_LIMIT_INFORMATION struct { 25 | PerProcessUserTimeLimit int64 26 | PerJobUserTimeLimit int64 27 | LimitFlags uint32 28 | MinimumWorkingSetSize uintptr 29 | MaximumWorkingSetSize uintptr 30 | ActiveProcessLimit uint32 31 | Affinity uintptr 32 | PriorityClass uint32 33 | SchedulingClass uint32 34 | _ uint32 // pad to 8 byte boundary 35 | } 36 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/types_windows_arm64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2011 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 | package windows 6 | 7 | type WSAData struct { 8 | Version uint16 9 | HighVersion uint16 10 | MaxSockets uint16 11 | MaxUdpDg uint16 12 | VendorInfo *byte 13 | Description [WSADESCRIPTION_LEN + 1]byte 14 | SystemStatus [WSASYS_STATUS_LEN + 1]byte 15 | } 16 | 17 | type Servent struct { 18 | Name *byte 19 | Aliases **byte 20 | Proto *byte 21 | Port uint16 22 | } 23 | 24 | type JOBOBJECT_BASIC_LIMIT_INFORMATION struct { 25 | PerProcessUserTimeLimit int64 26 | PerJobUserTimeLimit int64 27 | LimitFlags uint32 28 | MinimumWorkingSetSize uintptr 29 | MaximumWorkingSetSize uintptr 30 | ActiveProcessLimit uint32 31 | Affinity uintptr 32 | PriorityClass uint32 33 | SchedulingClass uint32 34 | } 35 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/go/ast/astutil/util.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015 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 | package astutil 6 | 7 | import "go/ast" 8 | 9 | // Unparen returns e with any enclosing parentheses stripped. 10 | // TODO(adonovan): use go1.22's ast.Unparen. 11 | func Unparen(e ast.Expr) ast.Expr { 12 | for { 13 | p, ok := e.(*ast.ParenExpr) 14 | if !ok { 15 | return e 16 | } 17 | e = p.X 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/internal/event/doc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 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 | // Package event provides a set of packages that cover the main 6 | // concepts of telemetry in an implementation agnostic way. 7 | package event 8 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/internal/event/keys/standard.go: -------------------------------------------------------------------------------- 1 | // Copyright 2020 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 | package keys 6 | 7 | var ( 8 | // Msg is a key used to add message strings to label lists. 9 | Msg = NewString("message", "a readable message") 10 | // Label is a key used to indicate an event adds labels to the context. 11 | Label = NewTag("label", "a label context marker") 12 | // Start is used for things like traces that have a name. 13 | Start = NewString("start", "span start") 14 | // Metric is a key used to indicate an event records metrics. 15 | End = NewTag("end", "a span end marker") 16 | // Metric is a key used to indicate an event records metrics. 17 | Detach = NewTag("detach", "a span detach marker") 18 | // Err is a key used to add error values to label lists. 19 | Err = NewError("error", "an error that occurred") 20 | // Metric is a key used to indicate an event records metrics. 21 | Metric = NewTag("metric", "a metric event marker") 22 | ) 23 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/internal/event/keys/util.go: -------------------------------------------------------------------------------- 1 | // Copyright 2023 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 | package keys 6 | 7 | import ( 8 | "sort" 9 | "strings" 10 | ) 11 | 12 | // Join returns a canonical join of the keys in S: 13 | // a sorted comma-separated string list. 14 | func Join[S ~[]T, T ~string](s S) string { 15 | strs := make([]string, 0, len(s)) 16 | for _, v := range s { 17 | strs = append(strs, string(v)) 18 | } 19 | sort.Strings(strs) 20 | return strings.Join(strs, ",") 21 | } 22 | -------------------------------------------------------------------------------- /vendor/gopkg.in/yaml.v3/NOTICE: -------------------------------------------------------------------------------- 1 | Copyright 2011-2016 Canonical Ltd. 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. 14 | --------------------------------------------------------------------------------