├── .envrc.template ├── .github ├── dependabot.yml └── workflows │ ├── dependabot-test.yml │ └── run-tests.yml ├── .gitignore ├── CHANGELOG.md ├── CODE-OF-CONDUCT.md ├── CONTRIBUTING.md ├── ISSUE_TEMPLATE.md ├── LICENSE ├── NOTICE ├── README.md ├── apiserver ├── apiserver.go ├── apiserver_suite_test.go ├── apiserver_test.go ├── fakes │ └── combined_broker.go └── fixtures │ └── badcert.pem ├── authorizationheader ├── auth_header_builder.go ├── authorizationheader_suite_test.go ├── basic_auth_header_builder.go ├── basic_auth_header_builder_test.go ├── client_token_auth_header_builder.go ├── client_token_auth_header_builder_test.go ├── fakes │ └── fake_auth_header_builder.go ├── no_auth_header_builder.go ├── no_auth_header_builder_test.go ├── user_token_auth_header_builder.go └── user_token_auth_header_builder_test.go ├── boshdirector ├── async_task_reporter.go ├── async_task_reporter_test.go ├── bosh_configs.go ├── bosh_configs_test.go ├── boshdirector_suite_test.go ├── client.go ├── client_test.go ├── delete_deployment.go ├── delete_deployment_test.go ├── deploy.go ├── deploy_test.go ├── fakes │ ├── fake_boshhttp.go │ ├── fake_cert_appender.go │ ├── fake_deployment.go │ ├── fake_director.go │ ├── fake_director_factory.go │ ├── fake_dns_retriever.go │ ├── fake_dns_retriever_factory.go │ ├── fake_http_factory.go │ ├── fake_task.go │ ├── fake_uaa.go │ └── fake_uaa_factory.go ├── get_deployment.go ├── get_deployment_test.go ├── get_deployments.go ├── get_deployments_test.go ├── get_events.go ├── get_events_test.go ├── get_task.go ├── get_task_test.go ├── get_tasks.go ├── get_tasks_test.go ├── http.go ├── info.go ├── info_test.go ├── links_api.go ├── links_api_test.go ├── recreate.go ├── recreate_test.go ├── run_errand.go ├── run_errand_test.go ├── task.go ├── task_reporter.go ├── task_reporter_test.go ├── task_test.go ├── tasks.go ├── tasks_test.go ├── variables.go ├── variables_test.go ├── verify_auth_test.go ├── vms.go └── vms_test.go ├── boshlinks ├── boshlinks_suite_test.go ├── retriever.go └── retriever_test.go ├── broker ├── bind.go ├── bind_test.go ├── broker.go ├── broker_helpers.go ├── broker_suite_test.go ├── broker_test.go ├── catalog.go ├── catalog_test.go ├── count_instances.go ├── count_instances_test.go ├── decider │ ├── decider.go │ ├── decider_suite_test.go │ └── decider_test.go ├── deprovision.go ├── deprovision_test.go ├── errors.go ├── fakes │ ├── fake_bosh_client.go │ ├── fake_cloud_foundry_client.go │ ├── fake_decider.go │ ├── fake_deployer.go │ ├── fake_manifest_secrets_manager.go │ ├── fake_map_hasher.go │ ├── fake_service_adapter_client.go │ ├── fake_startup_checker.go │ ├── fake_telemetry_logger.go │ └── fake_uaa_client.go ├── get_binding.go ├── get_binding_test.go ├── get_instance.go ├── get_instance_test.go ├── instances.go ├── instances_test.go ├── last_binding_operation.go ├── last_binding_operation_test.go ├── last_operation.go ├── last_operation_test.go ├── lifecycle_runner.go ├── lifecycle_runner_test.go ├── manifest_secrets.go ├── orphan_deployments.go ├── orphan_deployments_test.go ├── provision.go ├── provision_test.go ├── quotas.go ├── recreate.go ├── recreate_test.go ├── schema.go ├── schema_test.go ├── service_instance_client.go ├── service_instance_client_test.go ├── services │ ├── fakes │ │ └── fake_http_client.go │ ├── response_converter.go │ ├── response_converter_test.go │ ├── services.go │ ├── services_suite_test.go │ └── services_test.go ├── unbind.go ├── unbind_test.go ├── update.go ├── update_test.go ├── upgrade.go └── upgrade_test.go ├── brokercontext ├── brokercontext.go ├── brokercontext_suite_test.go └── brokercontext_test.go ├── brokerinitiator ├── brokerinitiator_suite_test.go ├── start.go └── start_test.go ├── cf ├── cf_suite_test.go ├── client.go ├── client_test.go ├── domain.go ├── errors.go ├── fakes │ └── fake_auth_header_builder.go ├── fixtures │ ├── get_service_instance_operation_in_progress_response.json │ ├── get_service_instance_response.json │ ├── get_service_plan_response.json │ ├── list_bindings_response_page_1.json │ ├── list_bindings_response_page_2.json │ ├── list_brokers_page_1_response.json │ ├── list_brokers_page_2_response.json │ ├── list_service_instances_empty_response.json │ ├── list_service_instances_for_plan_1_response.json │ ├── list_service_instances_for_plan_2_bad_count.json │ ├── list_service_instances_for_plan_2_bad_page_count.json │ ├── list_service_instances_for_plan_2_by_space_page_1.json │ ├── list_service_instances_for_plan_2_by_space_page_2.json │ ├── list_service_instances_for_plan_2_page_1.json │ ├── list_service_instances_for_plan_2_page_2.json │ ├── list_service_instances_for_plan_2_response.json │ ├── list_service_keys_response_page_1.json │ ├── list_service_keys_response_page_2.json │ ├── list_service_plans_response.json │ ├── list_service_plans_response_page_1.json │ ├── list_service_plans_response_page_2.json │ ├── list_services_empty_response.json │ ├── list_services_response.json │ ├── list_services_response_page_1.json │ ├── list_services_response_page_2.json │ ├── list_services_response_page_3.json │ ├── org_response.json │ └── space_response.json ├── http_json_client.go ├── info.go ├── info_test.go ├── service_instances.go ├── service_instances_test.go ├── service_plans_client.go └── service_plans_client_test.go ├── cmd ├── broker-post-start │ └── broker_post_start.go ├── collect-service-metrics │ └── collect_service_metrics.go ├── delete-all-service-instances-and-deregister-broker │ └── delete_all_service_instances_and_deregister_broker.go ├── delete-all-service-instances │ └── delete_all_service_instances.go ├── deregister-broker │ └── deregister_broker.go ├── on-demand-service-broker │ └── main.go ├── orphan-deployments │ └── orphan_deployments.go ├── recreate-all-service-instances │ └── recreate_all_service_instances.go ├── register-broker │ └── main.go └── upgrade-all-service-instances │ └── upgrade_all_service_instances.go ├── collaboration_tests ├── fixtures │ ├── bosh.ca.crt │ ├── mybroker.crt │ ├── mybroker.key │ └── nonsense.crt ├── helpers │ └── server_helpers.go ├── on_demand_service_broker │ ├── binding_test.go │ ├── catalog_test.go │ ├── deprovision_test.go │ ├── http_test.go │ ├── last_operation_test.go │ ├── management_test.go │ ├── on_demand_service_broker_suite_test.go │ ├── orphan_deployments_test.go │ ├── provision_test.go │ ├── secure_bindings_test.go │ ├── shutdown_test.go │ ├── unbind_test.go │ ├── update_test.go │ └── variables_suite_test.go └── recreate_all_service_instances │ ├── recreate_all_service_instances_suite_test.go │ └── recreate_all_service_instances_test.go ├── config ├── config.go ├── config_suite_test.go ├── config_test.go ├── is_executable_file.go └── test_assets │ ├── bosh_bad_basic_auth_config.yml │ ├── bosh_bad_uaa_auth_config.yml │ ├── bosh_both_auth_config.yml │ ├── bosh_no_auth_config.yml │ ├── bosh_no_url_config.yml │ ├── bosh_uaa_config.yml │ ├── cf_bad_client_auth_config.yml │ ├── cf_bad_user_auth_config.yml │ ├── cf_both_auth_config.yml │ ├── cf_checks_disabled_config.yml │ ├── cf_no_auth_config.yml │ ├── cf_no_uaa_url.yml │ ├── cf_no_url_config.yml │ ├── cf_uaa_no_credentials.yml │ ├── config_with_free_false.yml │ ├── config_with_invalid_post_deploy_instances.yml │ ├── config_with_invalid_post_deploy_instances_1.yml │ ├── config_with_invalid_post_deploy_instances_2.yml │ ├── config_with_invalid_pre_delete_instances.yml │ ├── config_with_invalid_pre_delete_instances_1.yml │ ├── config_with_invalid_pre_delete_instances_2.yml │ ├── config_with_maintenance_info.yml │ ├── config_with_missing_adapter_path.yml │ ├── config_with_no_free_flag.yml │ ├── config_with_non_executable_adapter_path.yml │ ├── config_with_requires.yml │ ├── credhub_config.yml │ ├── credhub_no_client_id_config.yml │ ├── credhub_no_client_secret_config.yml │ ├── credhub_no_url_config.yml │ ├── credhub_off_config.yml │ ├── escaped_config.yml │ ├── executable.sh │ ├── good_config.yml │ ├── good_config_with_binding_dns_list.yml │ ├── good_config_with_disabled_bosh_configs.yml │ ├── good_config_with_global_resource_quotas.yml │ ├── good_config_with_optional_fields.yml │ ├── good_config_with_skip_check_for_pending_changes.yml │ ├── good_config_with_tls.yml │ ├── no_cf_config.yml │ ├── not_yaml.yml │ ├── service_deployment_with_latest_release.yml │ └── service_deployment_with_n_latest_release.yml ├── contract_tests ├── README.md ├── bosh │ ├── .envrc.template │ ├── bosh_contract_test.go │ └── bosh_suite_test.go ├── cf │ ├── cf_contract_test.go │ ├── cf_suite_test.go │ ├── fixtures │ │ └── basic_service_catalog.yml │ └── info_test.go ├── credhub │ ├── .envrc.template │ ├── credhub_suite_test.go │ └── credhubstore_contract_test.go ├── fixtures │ ├── deployment_with_link_provider.yml │ ├── single_vm_deployment.yml │ └── successful_deploy.yml ├── telemetry │ ├── fixtures │ │ ├── add_telemetry.yml │ │ └── basic_service_catalog.yml │ ├── telemetry_suite_test.go │ └── telemetry_test.go └── uaa │ ├── uaa_contract_test.go │ └── uaa_suite_test.go ├── credhub ├── credhubstore.go ├── credhubstore_test.go ├── credstore_suite_test.go └── fakes │ └── fake_credhub_client.go ├── credhubbroker ├── credentialstore.go ├── credhubbroker.go ├── credhubbroker_suite_test.go ├── credhubbroker_test.go └── fakes │ └── credentialstore.go ├── deleter ├── deleter.go ├── deleter_suite_test.go ├── deleter_test.go └── fakes │ ├── fake_cloud_foundry_client.go │ └── fake_sleeper.go ├── go.mod ├── go.sum ├── hasher ├── hasher_suite_test.go ├── map_hasher.go └── map_hasher_test.go ├── instanceiterator ├── bosh_triggerer.go ├── bosh_triggerer_test.go ├── cf_querier.go ├── cf_querier_test.go ├── cf_triggerer.go ├── cf_triggerer_test.go ├── configurator.go ├── configurator_test.go ├── fakes │ ├── fake_broker_services.go │ ├── fake_cf_client.go │ ├── fake_listener.go │ ├── fake_sleeper.go │ └── fake_triggerer.go ├── iterator.go ├── iterator_state.go ├── iterator_state_test.go ├── iterator_suite_test.go ├── iterator_test.go ├── logging_listener.go └── logging_listener_test.go ├── integration_tests ├── broker_post_start │ ├── broker_post_start_suite_test.go │ ├── broker_post_start_test.go │ └── test_assets │ │ ├── executable.sh │ │ ├── good_config.yml │ │ └── good_config_with_tls.yml ├── collect_service_metrics │ ├── collect_service_metrics_suite_test.go │ └── collect_service_metrics_test.go ├── delete_all_service_instances │ ├── delete_all_service_instances_suite_test.go │ └── delete_all_service_instances_test.go ├── delete_all_service_instances_and_deregister_broker │ ├── delete_all_service_instances_and_deregister_broker_suite_test.go │ └── delete_all_service_instances_and_deregister_broker_test.go ├── deregister_broker │ ├── config.yml │ ├── deregister_broker_suite_test.go │ └── deregister_broker_test.go ├── fixtures │ └── ssl │ │ ├── README.md │ │ ├── cert.pem │ │ └── key.pem ├── helpers │ ├── helper.go │ └── http_handlers.go ├── on_demand_service_broker │ ├── bosh_basic_auth_test.go │ ├── credhub_test.go │ ├── integration_tests_suite_test.go │ ├── mock │ │ ├── adapter.go │ │ └── adapter │ │ │ └── main.go │ ├── startup_test.go │ └── user_credentials_for_cf_test.go ├── orphan_deployments │ ├── orphan_deployments_suite_test.go │ └── orphan_deployments_test.go ├── register_broker │ ├── register_broker_suite_test.go │ └── register_broker_test.go └── upgrade_all_service_instances │ ├── upgrade_all_service_instances_suite_test.go │ └── upgrade_all_service_instances_test.go ├── loggerfactory ├── logger_factory.go ├── logger_factory_test.go └── loggerfactory_suite_test.go ├── manifestsecrets ├── credhub_path_matcher.go ├── credhub_path_matcher_test.go ├── fakes │ ├── fake_credhub_operator.go │ └── fake_matcher.go ├── interfaces.go ├── manager.go ├── manager_test.go ├── manifest_secrets_suite_test.go ├── odb_secrets.go └── odb_secrets_test.go ├── mgmtapi ├── api.go ├── api_test.go ├── fake_manageable_broker │ └── fake_manageable_broker.go ├── metrics.go └── mgmtapi_suite_test.go ├── mockhttp ├── handler.go ├── mockbosh │ ├── delete_deployment.go │ ├── deploy.go │ ├── deployments.go │ ├── diff.go │ ├── errand.go │ ├── info.go │ ├── mockbosh.go │ ├── task.go │ ├── task_output.go │ └── tasks.go ├── mockbroker │ ├── instances.go │ ├── last_operation.go │ ├── mockbroker.go │ └── upgrade_instance.go ├── mockcfapi │ ├── info.go │ ├── organizations.go │ ├── server.go │ ├── service_bindings.go │ ├── service_brokers.go │ ├── service_instances.go │ ├── service_keys.go │ ├── service_offerings.go │ └── service_plans.go └── server.go ├── mockuaa └── mockuaa.go ├── network ├── cert_pool.go ├── cert_pool_test.go ├── fakes │ ├── hostlookupper.go │ └── sleeper.go ├── network_suite_test.go ├── waiter.go └── waiter_test.go ├── noopservicescontroller ├── client.go ├── client_test.go └── noopservicescontroller_suite_test.go ├── purger ├── fakes │ ├── fake_cloud_foundry_client.go │ ├── fake_deleter.go │ └── fake_registrar.go ├── purger.go ├── purger_suite_test.go └── purger_test.go ├── registrar ├── deregistrar.go ├── deregistrar_test.go ├── fakes │ ├── fake_cloud_foundry_client.go │ └── register_broker_cf_client.go ├── fixtures │ └── deregister_config.yml ├── registrar.go ├── registrar_suite_test.go └── registrar_test.go ├── runtimechecker ├── recreate_runtime_checker.go ├── recreate_runtime_checker_test.go └── runtimechecker_suite_test.go ├── scripts ├── generate-test-certificates.sh ├── run-contract-tests-on-lite.sh ├── run-tests.sh └── run-unit-tests.sh ├── service ├── cf_service_instance_lister.go ├── cf_service_instance_lister_test.go ├── fakes │ ├── fake_doer.go │ ├── fake_instance_lister.go │ └── fake_lister_client.go ├── service_instance.go ├── service_instance_lister.go ├── service_instance_lister_test.go ├── service_instance_test.go └── service_suite_test.go ├── serviceadapter ├── client.go ├── client_test.go ├── command_runner.go ├── command_runner_test.go ├── create_binding.go ├── create_binding_test.go ├── dashboard_url.go ├── dashboard_url_test.go ├── delete_binding.go ├── delete_binding_test.go ├── fakes │ └── fake_command_runner.go ├── generate_manifest.go ├── generate_manifest_test.go ├── generate_plan_schema.go ├── generate_plan_schema_test.go └── serviceadapter_suite_test.go ├── startupchecker ├── bosh_auth_checker.go ├── bosh_auth_checker_test.go ├── bosh_director_version_checker.go ├── bosh_director_version_checker_test.go ├── cf_api_version_checker.go ├── cf_api_version_checker_test.go ├── cf_plan_consistency_checker.go ├── cf_plan_consistency_checker_test.go ├── fakes │ ├── fake_auth_verifier.go │ ├── fake_cf_api_version_getter.go │ └── fake_service_instance_counter.go └── startupchecker_suite_test.go ├── system_tests ├── .envrc.template ├── README.md ├── broker_registration_tests │ ├── broker_registration_test.go │ ├── broker_registration_tests_suite_test.go │ └── fixtures │ │ └── update_service_catalog.yml ├── delete_all_service_instances_and_deregister_broker_tests │ ├── delete_all_service_instances_and_deregister_broker_test.go │ ├── delete_all_service_instances_and_deregister_broker_test_suite_test.go │ └── fixtures │ │ └── update_service_catalog.yml ├── delete_all_service_instances_tests │ ├── delete_all_service_instances_test.go │ ├── delete_all_service_instances_tests_suite_test.go │ └── fixtures │ │ ├── basic_service_catalog.yml │ │ └── enable_secure_manifests.yml ├── dynamic_bosh_config │ ├── dynamic_bosh_config_suite_test.go │ ├── dynamic_bosh_config_test.go │ └── fixtures │ │ ├── broker_manifest.yml │ │ ├── remove_cf_user_creds.yml │ │ └── update_service_catalog.yml ├── feature_flags │ ├── feature_flags_suite_test.go │ ├── feature_flags_test.go │ └── fixtures │ │ ├── add_si_api.yml │ │ ├── disable_cf_ssl_verification.yml │ │ ├── expose_operational_errors.yml │ │ └── update_service_catalog.yml ├── fixtures │ ├── add_cf_uaa_client_credentials.yml │ ├── enable_broker_tls.yml │ └── use_nats_without_tls.yml ├── instance_quotas_tests │ ├── fixtures │ │ └── update_service_catalog.yml │ ├── instance_quotas_suite_test.go │ └── instance_quotas_test.go ├── kafka_env │ └── run_system_tests.sh ├── lifecycle │ ├── all_lifecycle_tests │ │ ├── basic_tests.go │ │ └── feature_toggled_tests.go │ ├── kafka │ │ ├── fixtures │ │ │ ├── basic_service_catalog.yml │ │ │ ├── service_metrics.yml │ │ │ └── service_metrics_with_metron_agent.yml │ │ ├── lifecycle_kafka_suite_test.go │ │ └── lifecycle_kafka_test.go │ └── redis │ │ ├── fixtures │ │ ├── add_binding_with_dns.yml │ │ ├── add_client_definition.yml │ │ ├── add_secure_binding.yml │ │ ├── basic_service_catalog.yml │ │ ├── enable_telemetry.yml │ │ ├── service_metrics.yml │ │ └── service_metrics_with_metron_agent.yml │ │ ├── lifecycle_redis_suite_test.go │ │ └── lifecycle_redis_test.go ├── lifecycle_errands_tests │ ├── fixtures │ │ └── update_service_catalog.yml │ ├── lifecycle_errands_test.go │ └── lifecycle_errands_tests_suite_test.go ├── maintenance_info │ ├── fixtures │ │ ├── add_lifecycle_errand.yml │ │ ├── update_maintenance_info.yml │ │ └── update_service_catalog.yml │ ├── maintenance_info_test.go │ └── maintenance_tests_suite_test.go ├── orphan_deployments_tests │ ├── with_siapi │ │ ├── fixtures │ │ │ ├── add_si_api.yml │ │ │ └── update_service_catalog.yml │ │ ├── orphan_deployments_siapi_test.go │ │ └── orphan_deployments_siapi_tests_suite_test.go │ └── without_siapi │ │ ├── fixtures │ │ ├── update_orphan_deployments_job.yml │ │ └── update_service_catalog.yml │ │ ├── orphan_deployments_test.go │ │ └── orphan_deployments_tests_suite_test.go ├── pending_changes_blocked_tests │ ├── fixtures │ │ ├── skip_check_for_pending_changes.yml │ │ └── update_service_catalog.yml │ └── pending_changes_blocked_test.go ├── recreate_all_tests │ ├── fixtures │ │ ├── update_recreate_all_job.yml │ │ └── update_service_catalog.yml │ ├── recreate_all_suite_test.go │ └── recreate_all_test.go ├── resource_quotas_tests │ ├── fixtures │ │ └── update_service_catalog.yml │ ├── resource_quotas_suite_test.go │ └── resource_quotas_test.go ├── run_system_tests.sh ├── run_system_tests_bosh_lite.sh ├── schema_tests │ ├── fixtures │ │ └── update_service_catalog.yml │ ├── schema_test.go │ └── schema_tests_suite_test.go ├── secure_manifests │ ├── fixtures │ │ ├── basic_service_catalog.yml │ │ └── enable_secure_manifests.yml │ ├── secure_manifests_suite_test.go │ └── secure_manifests_test.go ├── test_helpers │ ├── bosh_helpers │ │ ├── bosh_cli_helpers.go │ │ └── bosh_helpers.go │ ├── brokerapi_helpers │ │ └── brokerapi_helpers.go │ ├── cf_helpers │ │ ├── apps.go │ │ ├── auth.go │ │ ├── cf.go │ │ ├── service.go │ │ └── service_keys.go │ ├── credhub_helpers │ │ └── credhub_helper.go │ ├── env_helpers │ │ └── env_helpers.go │ ├── gbytes │ │ ├── gbytes_suite_test.go │ │ ├── gbytes_test.go │ │ └── matchers.go │ ├── service_helpers │ │ └── service_helpers.go │ └── siapi_helpers │ │ └── helpers.go └── upgrade_all │ ├── basic │ ├── basic_suite_test.go │ ├── basic_test.go │ └── fixtures │ │ ├── add_maintenance_info.yml │ │ ├── remove_parallel_upgrade.yml │ │ ├── service_catalog.yml │ │ ├── service_catalog_updated.yml │ │ └── update_upgrade_all_job.yml │ ├── feature_toggled │ ├── feature_toggled_suite_test.go │ ├── feature_toggled_test.go │ └── fixtures │ │ ├── add_canary_filter.yml │ │ ├── service_catalog_with_lifecycle.yml │ │ ├── service_catalog_with_lifecycle_updated.yml │ │ └── update_upgrade_all_job.yml │ └── helpers.go ├── task ├── fakes │ ├── fake_bosh_client.go │ ├── fake_bulk_setter.go │ ├── fake_manifest_generator.go │ ├── fake_odb_secrets.go │ └── fake_service_adapter_client.go ├── manifest_comparator.go ├── manifest_comparator_test.go ├── manifest_generator.go ├── manifest_generator_test.go ├── task.go ├── task_suite_test.go └── task_test.go ├── telemetry ├── fakes_telemetry │ └── fake_telemetry_time.go ├── telemetry.go ├── telemetry_suite_test.go └── telemetry_test.go ├── tools ├── sleeper.go └── tools.go ├── uaa ├── client.go ├── client_test.go └── uaa_suite_test.go └── vendor ├── code.cloudfoundry.org ├── brokerapi │ └── v13 │ │ ├── .gitignore │ │ ├── .goreleaser.yaml │ │ ├── CODE-OF-CONDUCT.md │ │ ├── CONTRIBUTING.md │ │ ├── LICENSE │ │ ├── Makefile │ │ ├── NOTICE │ │ ├── README.md │ │ ├── api.go │ │ ├── auth │ │ └── auth.go │ │ ├── catalog.go │ │ ├── context_utils.go │ │ ├── create_version_dir.sh │ │ ├── domain │ │ ├── apiresponses │ │ │ ├── errors.go │ │ │ ├── failure_responses.go │ │ │ └── responses.go │ │ ├── experimental_volume_mount.go │ │ ├── maintenance_info.go │ │ ├── service_broker.go │ │ ├── service_catalog.go │ │ ├── service_metadata.go │ │ └── service_plan_metadata.go │ │ ├── failure_response.go │ │ ├── handlers │ │ ├── api_handler.go │ │ ├── bind.go │ │ ├── catalog.go │ │ ├── deprovision.go │ │ ├── get_binding.go │ │ ├── get_instance.go │ │ ├── last_binding_operation.go │ │ ├── last_operation.go │ │ ├── provision.go │ │ ├── unbind.go │ │ └── update.go │ │ ├── internal │ │ ├── blog │ │ │ └── blog.go │ │ └── middleware │ │ │ └── middleware.go │ │ ├── maintenance_info.go │ │ ├── middlewares │ │ ├── api_version_header.go │ │ ├── context_keys.go │ │ ├── correlation_id_header.go │ │ ├── info_location_header.go │ │ ├── originating_identity_header.go │ │ └── request_identity_header.go │ │ ├── response.go │ │ ├── service_broker.go │ │ ├── staticcheck.conf │ │ └── utils │ │ └── context.go ├── credhub-cli │ ├── LICENSE │ ├── NOTICE │ └── credhub │ │ ├── auth │ │ ├── builders.go │ │ ├── noop.go │ │ ├── oauth.go │ │ ├── strategy.go │ │ └── uaa │ │ │ └── client.go │ │ ├── bulk_regenerate.go │ │ ├── certificates.go │ │ ├── client.go │ │ ├── credentials │ │ ├── generate │ │ │ └── types.go │ │ ├── types.go │ │ └── values │ │ │ └── types.go │ │ ├── credhub.go │ │ ├── delete.go │ │ ├── error.go │ │ ├── find.go │ │ ├── generate.go │ │ ├── get.go │ │ ├── info.go │ │ ├── interpolate.go │ │ ├── mode.go │ │ ├── new.go │ │ ├── options.go │ │ ├── permissions.go │ │ ├── permissions │ │ └── types.go │ │ ├── regenerate.go │ │ ├── request.go │ │ ├── server │ │ └── types.go │ │ ├── server_version.go │ │ ├── set.go │ │ └── socksify.go ├── lager │ └── v3 │ │ ├── .gitignore │ │ ├── CODEOWNERS │ │ ├── LICENSE │ │ ├── NOTICE │ │ ├── README.md │ │ ├── handler.go │ │ ├── internal │ │ └── truncate │ │ │ ├── package.go │ │ │ └── truncate.go │ │ ├── json_redacter.go │ │ ├── logger.go │ │ ├── models.go │ │ ├── reconfigurable_sink.go │ │ ├── redacting_sink.go │ │ ├── slog_sink.go │ │ ├── tools.go │ │ ├── truncating_sink.go │ │ └── writer_sink.go └── tlsconfig │ ├── .gitignore │ ├── CODEOWNERS │ ├── LICENSE │ ├── NOTICE │ ├── README.md │ ├── authority.go │ ├── config.go │ ├── staticcheck.conf │ └── verify.go ├── github.com ├── blang │ └── semver │ │ └── v4 │ │ ├── LICENSE │ │ ├── json.go │ │ ├── range.go │ │ ├── semver.go │ │ ├── sort.go │ │ └── sql.go ├── bmatcuk │ └── doublestar │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ └── doublestar.go ├── charlievieth │ └── fs │ │ ├── LICENSE │ │ ├── fs.go │ │ ├── fs_unix.go │ │ └── fs_windows.go ├── cloudfoundry-community │ └── go-uaa │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── api.go │ │ ├── clients.go │ │ ├── contains.go │ │ ├── curl.go │ │ ├── generate.sh │ │ ├── generated_client.go │ │ ├── generated_group.go │ │ ├── generated_identityzone.go │ │ ├── generated_mfaprovider.go │ │ ├── generated_user.go │ │ ├── groups.go │ │ ├── health.go │ │ ├── identity_zones.go │ │ ├── info.go │ │ ├── issuer.go │ │ ├── me.go │ │ ├── mfa_provider.go │ │ ├── page.go │ │ ├── passwordcredentials │ │ ├── README.md │ │ └── passwordcredentials.go │ │ ├── request_errors.go │ │ ├── roundtrip.go │ │ ├── sort.go │ │ ├── token_key.go │ │ ├── token_keys.go │ │ ├── uaa_transport.go │ │ ├── url.go │ │ └── users.go ├── cloudfoundry │ ├── bosh-cli │ │ └── v7 │ │ │ ├── LICENSE │ │ │ ├── NOTICE │ │ │ ├── common │ │ │ └── util │ │ │ │ ├── file_helper.go │ │ │ │ └── url_helper.go │ │ │ ├── director │ │ │ ├── adjustable_client.go │ │ │ ├── all_or_pool_or_instance_slug.go │ │ │ ├── auth_request_adjustment.go │ │ │ ├── clean_up.go │ │ │ ├── client.go │ │ │ ├── client_request.go │ │ │ ├── cloud_configs.go │ │ │ ├── config_diff.go │ │ │ ├── configs.go │ │ │ ├── cpi_configs.go │ │ │ ├── deployment.go │ │ │ ├── deployment_configs.go │ │ │ ├── deployments.go │ │ │ ├── diff.go │ │ │ ├── diff_config.go │ │ │ ├── director.go │ │ │ ├── errands.go │ │ │ ├── events.go │ │ │ ├── factory.go │ │ │ ├── factory_config.go │ │ │ ├── http_client_request.go │ │ │ ├── info.go │ │ │ ├── instance_slug.go │ │ │ ├── instances.go │ │ │ ├── interfaces.go │ │ │ ├── locks.go │ │ │ ├── manifest.go │ │ │ ├── noop_reporters.go │ │ │ ├── orphan_disks.go │ │ │ ├── orphan_networks.go │ │ │ ├── os_version_slug.go │ │ │ ├── packages.go │ │ │ ├── pool_or_instance_slug.go │ │ │ ├── pool_slug.go │ │ │ ├── problems.go │ │ │ ├── release_archive_with_metadata.go │ │ │ ├── release_or_series_slug.go │ │ │ ├── release_series.go │ │ │ ├── release_series_slug.go │ │ │ ├── release_slug.go │ │ │ ├── releases.go │ │ │ ├── request_sanitizer.go │ │ │ ├── runtime_configs.go │ │ │ ├── skip_drain.go │ │ │ ├── snapshots.go │ │ │ ├── ssh.go │ │ │ ├── ssh_opts.go │ │ │ ├── stemcell_archive_with_metadata.go │ │ │ ├── stemcell_slug.go │ │ │ ├── stemcells.go │ │ │ ├── task_client_request.go │ │ │ ├── tasks.go │ │ │ ├── time_parser.go │ │ │ ├── vm.go │ │ │ └── vms.go │ │ │ ├── io │ │ │ └── interfaces.go │ │ │ └── uaa │ │ │ ├── access_token_session.go │ │ │ ├── client.go │ │ │ ├── client_request.go │ │ │ ├── client_token_session.go │ │ │ ├── factory.go │ │ │ ├── factory_config.go │ │ │ ├── interfaces.go │ │ │ ├── prompts.go │ │ │ ├── token.go │ │ │ └── uaa.go │ ├── bosh-utils │ │ ├── LICENSE │ │ ├── NOTICE │ │ ├── crypto │ │ │ ├── algorithms.go │ │ │ ├── digest.go │ │ │ ├── interfaces.go │ │ │ ├── multiple_digest.go │ │ │ └── x509.go │ │ ├── errors │ │ │ ├── errors.go │ │ │ └── multi_error.go │ │ ├── httpclient │ │ │ ├── default_http_clients.go │ │ │ ├── http_client.go │ │ │ ├── mutual_tls_client.go │ │ │ ├── request_retryable.go │ │ │ ├── retry_clients.go │ │ │ └── socksify.go │ │ ├── logger │ │ │ ├── async.go │ │ │ └── logger.go │ │ ├── property │ │ │ ├── builders.go │ │ │ ├── list.go │ │ │ ├── map.go │ │ │ └── property.go │ │ ├── retrystrategy │ │ │ ├── attempt_retry_strategy.go │ │ │ ├── backoff_with_jitter_retry_strategy.go │ │ │ ├── retry_strategy.go │ │ │ ├── timeout_retry_strategy.go │ │ │ └── unlimited_retry_strategy.go │ │ ├── system │ │ │ ├── cmd_runner_interface.go │ │ │ ├── exec_cmd_runner.go │ │ │ ├── exec_cmd_runner_unix.go │ │ │ ├── exec_cmd_runner_windows.go │ │ │ ├── exec_error.go │ │ │ ├── exec_process.go │ │ │ ├── exec_process_unix.go │ │ │ ├── exec_process_windows.go │ │ │ ├── file_system_interface.go │ │ │ ├── ip_helper.go │ │ │ ├── os_file_system.go │ │ │ ├── os_file_system_unix.go │ │ │ └── os_file_system_windows.go │ │ └── uuid │ │ │ ├── generator_interface.go │ │ │ └── uuid_v4_generator.go │ ├── go-socks5 │ │ ├── .gitignore │ │ ├── .golangci.yml │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── auth.go │ │ ├── credentials.go │ │ ├── request.go │ │ ├── resolver.go │ │ ├── ruleset.go │ │ └── socks5.go │ └── socks5-proxy │ │ ├── .gitignore │ │ ├── .golangci.yml │ │ ├── LICENSE │ │ ├── NOTICE │ │ ├── README.md │ │ ├── host_key.go │ │ ├── socks5_proxy.go │ │ ├── ssh_client_config.go │ │ └── ssh_test_server.go ├── cppforlife │ └── go-semi-semantic │ │ ├── LICENSE │ │ └── version │ │ ├── ver_seg_comp_int.go │ │ ├── ver_seg_comp_str.go │ │ ├── version.go │ │ ├── version_segment.go │ │ └── version_sort.go ├── craigfurman │ └── herottp │ │ ├── LICENSE │ │ ├── README.md │ │ └── herottp.go ├── gabriel-vasile │ └── mimetype │ │ ├── .gitattributes │ │ ├── .golangci.yml │ │ ├── CODE_OF_CONDUCT.md │ │ ├── CONTRIBUTING.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── internal │ │ ├── charset │ │ │ └── charset.go │ │ ├── json │ │ │ └── parser.go │ │ └── magic │ │ │ ├── archive.go │ │ │ ├── audio.go │ │ │ ├── binary.go │ │ │ ├── database.go │ │ │ ├── document.go │ │ │ ├── font.go │ │ │ ├── ftyp.go │ │ │ ├── geo.go │ │ │ ├── image.go │ │ │ ├── magic.go │ │ │ ├── ms_office.go │ │ │ ├── ogg.go │ │ │ ├── text.go │ │ │ ├── text_csv.go │ │ │ ├── video.go │ │ │ └── zip.go │ │ ├── mime.go │ │ ├── mimetype.go │ │ ├── supported_mimes.md │ │ └── tree.go ├── go-logr │ └── logr │ │ ├── .golangci.yaml │ │ ├── CHANGELOG.md │ │ ├── CONTRIBUTING.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── SECURITY.md │ │ ├── context.go │ │ ├── context_noslog.go │ │ ├── context_slog.go │ │ ├── discard.go │ │ ├── funcr │ │ ├── funcr.go │ │ └── slogsink.go │ │ ├── logr.go │ │ ├── sloghandler.go │ │ ├── slogr.go │ │ └── slogsink.go ├── go-playground │ ├── locales │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── currency │ │ │ └── currency.go │ │ ├── logo.png │ │ └── rules.go │ ├── universal-translator │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── Makefile │ │ ├── README.md │ │ ├── errors.go │ │ ├── import_export.go │ │ ├── logo.png │ │ ├── translator.go │ │ └── universal_translator.go │ └── validator │ │ └── v10 │ │ ├── .gitignore │ │ ├── .golangci.yaml │ │ ├── LICENSE │ │ ├── MAINTAINERS.md │ │ ├── Makefile │ │ ├── README.md │ │ ├── baked_in.go │ │ ├── cache.go │ │ ├── country_codes.go │ │ ├── currency_codes.go │ │ ├── doc.go │ │ ├── errors.go │ │ ├── field_level.go │ │ ├── logo.png │ │ ├── options.go │ │ ├── postcode_regexes.go │ │ ├── regexes.go │ │ ├── struct_level.go │ │ ├── translations.go │ │ ├── util.go │ │ ├── validator.go │ │ └── validator_instance.go ├── go-task │ └── slim-sprig │ │ └── v3 │ │ ├── .editorconfig │ │ ├── .gitattributes │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── LICENSE.txt │ │ ├── README.md │ │ ├── Taskfile.yml │ │ ├── crypto.go │ │ ├── date.go │ │ ├── defaults.go │ │ ├── dict.go │ │ ├── doc.go │ │ ├── functions.go │ │ ├── list.go │ │ ├── network.go │ │ ├── numeric.go │ │ ├── reflect.go │ │ ├── regex.go │ │ ├── strings.go │ │ └── url.go ├── google │ ├── go-cmp │ │ ├── LICENSE │ │ └── cmp │ │ │ ├── compare.go │ │ │ ├── export.go │ │ │ ├── internal │ │ │ ├── diff │ │ │ │ ├── debug_disable.go │ │ │ │ ├── debug_enable.go │ │ │ │ └── diff.go │ │ │ ├── flags │ │ │ │ └── flags.go │ │ │ ├── function │ │ │ │ └── func.go │ │ │ └── value │ │ │ │ ├── name.go │ │ │ │ ├── pointer.go │ │ │ │ └── sort.go │ │ │ ├── options.go │ │ │ ├── path.go │ │ │ ├── report.go │ │ │ ├── report_compare.go │ │ │ ├── report_references.go │ │ │ ├── report_reflect.go │ │ │ ├── report_slices.go │ │ │ ├── report_text.go │ │ │ └── report_value.go │ ├── pprof │ │ ├── AUTHORS │ │ ├── CONTRIBUTORS │ │ ├── LICENSE │ │ └── profile │ │ │ ├── encode.go │ │ │ ├── filter.go │ │ │ ├── index.go │ │ │ ├── legacy_java_profile.go │ │ │ ├── legacy_profile.go │ │ │ ├── merge.go │ │ │ ├── profile.go │ │ │ ├── proto.go │ │ │ └── prune.go │ └── uuid │ │ ├── CHANGELOG.md │ │ ├── CONTRIBUTING.md │ │ ├── CONTRIBUTORS │ │ ├── LICENSE │ │ ├── README.md │ │ ├── dce.go │ │ ├── doc.go │ │ ├── hash.go │ │ ├── marshal.go │ │ ├── node.go │ │ ├── node_js.go │ │ ├── node_net.go │ │ ├── null.go │ │ ├── sql.go │ │ ├── time.go │ │ ├── util.go │ │ ├── uuid.go │ │ ├── version1.go │ │ ├── version4.go │ │ ├── version6.go │ │ └── version7.go ├── gorilla │ └── mux │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── Makefile │ │ ├── README.md │ │ ├── doc.go │ │ ├── middleware.go │ │ ├── mux.go │ │ ├── regexp.go │ │ ├── route.go │ │ └── test_helpers.go ├── hashicorp │ └── go-version │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── constraint.go │ │ ├── version.go │ │ └── version_collection.go ├── jpillora │ └── backoff │ │ ├── LICENSE │ │ ├── README.md │ │ └── backoff.go ├── leodido │ └── go-urn │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── README.md │ │ ├── kind.go │ │ ├── machine.go │ │ ├── machine.go.rl │ │ ├── makefile │ │ ├── options.go │ │ ├── parsing_mode.go │ │ ├── scim.go │ │ ├── scim │ │ └── schema │ │ │ └── type.go │ │ ├── urn.go │ │ └── urn8141.go ├── maxbrunsfeld │ └── counterfeiter │ │ └── v6 │ │ ├── .gitattributes │ │ ├── .gitignore │ │ ├── .golangci.yaml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── arguments │ │ ├── files.go │ │ ├── parser.go │ │ └── usage.go │ │ ├── command │ │ └── runner.go │ │ ├── generator │ │ ├── cache.go │ │ ├── ctx.go │ │ ├── ctx_old.go │ │ ├── fake.go │ │ ├── file_reader.go │ │ ├── function_loader.go │ │ ├── function_template.go │ │ ├── import.go │ │ ├── interface_loader.go │ │ ├── interface_template.go │ │ ├── loader.go │ │ ├── package_loader.go │ │ ├── package_template.go │ │ ├── param.go │ │ └── return.go │ │ └── main.go ├── nu7hatch │ └── gouuid │ │ ├── .gitignore │ │ ├── COPYING │ │ ├── README.md │ │ └── uuid.go ├── onsi │ ├── ginkgo │ │ └── v2 │ │ │ ├── .gitignore │ │ │ ├── CHANGELOG.md │ │ │ ├── CONTRIBUTING.md │ │ │ ├── LICENSE │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── RELEASING.md │ │ │ ├── config │ │ │ └── deprecated.go │ │ │ ├── core_dsl.go │ │ │ ├── decorator_dsl.go │ │ │ ├── deprecated_dsl.go │ │ │ ├── formatter │ │ │ ├── colorable_others.go │ │ │ ├── colorable_windows.go │ │ │ └── formatter.go │ │ │ ├── ginkgo │ │ │ ├── build │ │ │ │ └── build_command.go │ │ │ ├── command │ │ │ │ ├── abort.go │ │ │ │ ├── command.go │ │ │ │ └── program.go │ │ │ ├── generators │ │ │ │ ├── boostrap_templates.go │ │ │ │ ├── bootstrap_command.go │ │ │ │ ├── generate_command.go │ │ │ │ ├── generate_templates.go │ │ │ │ └── generators_common.go │ │ │ ├── internal │ │ │ │ ├── compile.go │ │ │ │ ├── gocovmerge.go │ │ │ │ ├── profiles_and_reports.go │ │ │ │ ├── run.go │ │ │ │ ├── test_suite.go │ │ │ │ ├── utils.go │ │ │ │ └── verify_version.go │ │ │ ├── labels │ │ │ │ └── labels_command.go │ │ │ ├── main.go │ │ │ ├── outline │ │ │ │ ├── ginkgo.go │ │ │ │ ├── import.go │ │ │ │ ├── outline.go │ │ │ │ └── outline_command.go │ │ │ ├── run │ │ │ │ └── run_command.go │ │ │ ├── unfocus │ │ │ │ └── unfocus_command.go │ │ │ └── watch │ │ │ │ ├── delta.go │ │ │ │ ├── delta_tracker.go │ │ │ │ ├── dependencies.go │ │ │ │ ├── package_hash.go │ │ │ │ ├── package_hashes.go │ │ │ │ ├── suite.go │ │ │ │ └── watch_command.go │ │ │ ├── ginkgo_cli_dependencies.go │ │ │ ├── ginkgo_t_dsl.go │ │ │ ├── internal │ │ │ ├── counter.go │ │ │ ├── failer.go │ │ │ ├── focus.go │ │ │ ├── global │ │ │ │ └── init.go │ │ │ ├── group.go │ │ │ ├── interrupt_handler │ │ │ │ ├── interrupt_handler.go │ │ │ │ ├── sigquit_swallower_unix.go │ │ │ │ └── sigquit_swallower_windows.go │ │ │ ├── node.go │ │ │ ├── ordering.go │ │ │ ├── output_interceptor.go │ │ │ ├── output_interceptor_unix.go │ │ │ ├── output_interceptor_wasm.go │ │ │ ├── output_interceptor_win.go │ │ │ ├── parallel_support │ │ │ │ ├── client_server.go │ │ │ │ ├── http_client.go │ │ │ │ ├── http_server.go │ │ │ │ ├── rpc_client.go │ │ │ │ ├── rpc_server.go │ │ │ │ └── server_handler.go │ │ │ ├── progress_report.go │ │ │ ├── progress_report_bsd.go │ │ │ ├── progress_report_unix.go │ │ │ ├── progress_report_wasm.go │ │ │ ├── progress_report_win.go │ │ │ ├── progress_reporter_manager.go │ │ │ ├── report_entry.go │ │ │ ├── spec.go │ │ │ ├── spec_context.go │ │ │ ├── suite.go │ │ │ ├── testingtproxy │ │ │ │ └── testing_t_proxy.go │ │ │ ├── tree.go │ │ │ └── writer.go │ │ │ ├── reporters │ │ │ ├── default_reporter.go │ │ │ ├── deprecated_reporter.go │ │ │ ├── json_report.go │ │ │ ├── junit_report.go │ │ │ ├── reporter.go │ │ │ └── teamcity_report.go │ │ │ ├── reporting_dsl.go │ │ │ ├── table_dsl.go │ │ │ └── types │ │ │ ├── code_location.go │ │ │ ├── config.go │ │ │ ├── deprecated_types.go │ │ │ ├── deprecation_support.go │ │ │ ├── enum_support.go │ │ │ ├── errors.go │ │ │ ├── file_filter.go │ │ │ ├── flags.go │ │ │ ├── label_filter.go │ │ │ ├── report_entry.go │ │ │ ├── types.go │ │ │ └── version.go │ └── gomega │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── CONTRIBUTING.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── RELEASING.md │ │ ├── format │ │ └── format.go │ │ ├── gbytes │ │ ├── buffer.go │ │ ├── io_wrappers.go │ │ └── say_matcher.go │ │ ├── gexec │ │ ├── build.go │ │ ├── exit_matcher.go │ │ ├── prefixed_writer.go │ │ └── session.go │ │ ├── ghttp │ │ ├── handlers.go │ │ └── test_server.go │ │ ├── gomega_dsl.go │ │ ├── internal │ │ ├── assertion.go │ │ ├── async_assertion.go │ │ ├── duration_bundle.go │ │ ├── gomega.go │ │ ├── gutil │ │ │ ├── post_ioutil.go │ │ │ └── using_ioutil.go │ │ ├── polling_signal_error.go │ │ └── vetoptdesc.go │ │ ├── matchers.go │ │ ├── matchers │ │ ├── and.go │ │ ├── assignable_to_type_of_matcher.go │ │ ├── attributes_slice.go │ │ ├── be_a_directory.go │ │ ├── be_a_regular_file.go │ │ ├── be_an_existing_file.go │ │ ├── be_closed_matcher.go │ │ ├── be_comparable_to_matcher.go │ │ ├── be_element_of_matcher.go │ │ ├── be_empty_matcher.go │ │ ├── be_equivalent_to_matcher.go │ │ ├── be_false_matcher.go │ │ ├── be_identical_to.go │ │ ├── be_key_of_matcher.go │ │ ├── be_nil_matcher.go │ │ ├── be_numerically_matcher.go │ │ ├── be_sent_matcher.go │ │ ├── be_temporally_matcher.go │ │ ├── be_true_matcher.go │ │ ├── be_zero_matcher.go │ │ ├── consist_of.go │ │ ├── contain_element_matcher.go │ │ ├── contain_elements_matcher.go │ │ ├── contain_substring_matcher.go │ │ ├── equal_matcher.go │ │ ├── have_cap_matcher.go │ │ ├── have_each_matcher.go │ │ ├── have_exact_elements.go │ │ ├── have_existing_field_matcher.go │ │ ├── have_field.go │ │ ├── have_http_body_matcher.go │ │ ├── have_http_header_with_value_matcher.go │ │ ├── have_http_status_matcher.go │ │ ├── have_key_matcher.go │ │ ├── have_key_with_value_matcher.go │ │ ├── have_len_matcher.go │ │ ├── have_occurred_matcher.go │ │ ├── have_prefix_matcher.go │ │ ├── have_suffix_matcher.go │ │ ├── have_value.go │ │ ├── internal │ │ │ └── miter │ │ │ │ ├── type_support_iter.go │ │ │ │ └── type_support_noiter.go │ │ ├── match_error_matcher.go │ │ ├── match_json_matcher.go │ │ ├── match_regexp_matcher.go │ │ ├── match_xml_matcher.go │ │ ├── match_yaml_matcher.go │ │ ├── not.go │ │ ├── or.go │ │ ├── panic_matcher.go │ │ ├── receive_matcher.go │ │ ├── satisfy_matcher.go │ │ ├── semi_structured_data_support.go │ │ ├── succeed_matcher.go │ │ ├── support │ │ │ └── goraph │ │ │ │ ├── bipartitegraph │ │ │ │ ├── bipartitegraph.go │ │ │ │ └── bipartitegraphmatching.go │ │ │ │ ├── edge │ │ │ │ └── edge.go │ │ │ │ ├── node │ │ │ │ └── node.go │ │ │ │ └── util │ │ │ │ └── util.go │ │ ├── type_support.go │ │ └── with_transform.go │ │ └── types │ │ └── types.go ├── openzipkin │ └── zipkin-go │ │ ├── LICENSE │ │ ├── idgenerator │ │ └── idgenerator.go │ │ └── model │ │ ├── annotation.go │ │ ├── doc.go │ │ ├── endpoint.go │ │ ├── kind.go │ │ ├── span.go │ │ ├── span_id.go │ │ └── traceid.go ├── pborman │ └── uuid │ │ ├── .travis.yml │ │ ├── CONTRIBUTING.md │ │ ├── CONTRIBUTORS │ │ ├── LICENSE │ │ ├── README.md │ │ ├── dce.go │ │ ├── doc.go │ │ ├── hash.go │ │ ├── marshal.go │ │ ├── node.go │ │ ├── sql.go │ │ ├── time.go │ │ ├── util.go │ │ ├── uuid.go │ │ ├── version1.go │ │ └── version4.go ├── pivotal-cf │ ├── on-demand-services-sdk │ │ ├── LICENSE │ │ ├── bosh │ │ │ ├── bosh_manifest.go │ │ │ ├── job.go │ │ │ └── vms.go │ │ └── serviceadapter │ │ │ ├── command_line_handler.go │ │ │ ├── create_binding.go │ │ │ ├── dashboard_url.go │ │ │ ├── delete_binding.go │ │ │ ├── domain.go │ │ │ ├── generate_manifest.go │ │ │ ├── generate_plan_schemas.go │ │ │ └── instance_group_mapping.go │ └── paraphernalia │ │ ├── LICENSE │ │ └── secure │ │ └── tlsconfig │ │ ├── BUILD.bazel │ │ └── config.go ├── pkg │ └── errors │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── Makefile │ │ ├── README.md │ │ ├── appveyor.yml │ │ ├── errors.go │ │ ├── go113.go │ │ └── stack.go ├── urfave │ └── negroni │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── doc.go │ │ ├── logger.go │ │ ├── negroni.go │ │ ├── recovery.go │ │ ├── response_writer.go │ │ ├── response_writer_pusher.go │ │ └── static.go └── xeipuuv │ ├── gojsonpointer │ ├── LICENSE-APACHE-2.0.txt │ ├── README.md │ └── pointer.go │ ├── gojsonreference │ ├── LICENSE-APACHE-2.0.txt │ ├── README.md │ └── reference.go │ └── gojsonschema │ ├── .gitignore │ ├── .travis.yml │ ├── LICENSE-APACHE-2.0.txt │ ├── README.md │ ├── draft.go │ ├── errors.go │ ├── format_checkers.go │ ├── glide.yaml │ ├── internalLog.go │ ├── jsonContext.go │ ├── jsonLoader.go │ ├── locales.go │ ├── result.go │ ├── schema.go │ ├── schemaLoader.go │ ├── schemaPool.go │ ├── schemaReferencePool.go │ ├── schemaType.go │ ├── subSchema.go │ ├── types.go │ ├── utils.go │ └── validation.go ├── go.uber.org └── automaxprocs │ ├── .codecov.yml │ ├── .gitignore │ ├── CHANGELOG.md │ ├── CODE_OF_CONDUCT.md │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── Makefile │ ├── README.md │ ├── automaxprocs.go │ ├── internal │ ├── cgroups │ │ ├── cgroup.go │ │ ├── cgroups.go │ │ ├── cgroups2.go │ │ ├── doc.go │ │ ├── errors.go │ │ ├── mountpoint.go │ │ └── subsys.go │ └── runtime │ │ ├── cpu_quota_linux.go │ │ ├── cpu_quota_unsupported.go │ │ └── runtime.go │ └── maxprocs │ ├── maxprocs.go │ └── version.go ├── golang.org └── x │ ├── crypto │ ├── LICENSE │ ├── PATENTS │ ├── blowfish │ │ ├── block.go │ │ ├── cipher.go │ │ └── const.go │ ├── chacha20 │ │ ├── chacha_arm64.go │ │ ├── chacha_arm64.s │ │ ├── chacha_generic.go │ │ ├── chacha_noasm.go │ │ ├── chacha_ppc64x.go │ │ ├── chacha_ppc64x.s │ │ ├── chacha_s390x.go │ │ ├── chacha_s390x.s │ │ └── xor.go │ ├── curve25519 │ │ └── curve25519.go │ ├── internal │ │ ├── alias │ │ │ ├── alias.go │ │ │ └── alias_purego.go │ │ └── poly1305 │ │ │ ├── mac_noasm.go │ │ │ ├── poly1305.go │ │ │ ├── sum_amd64.s │ │ │ ├── sum_asm.go │ │ │ ├── sum_generic.go │ │ │ ├── sum_loong64.s │ │ │ ├── sum_ppc64x.s │ │ │ ├── sum_s390x.go │ │ │ └── sum_s390x.s │ ├── sha3 │ │ ├── doc.go │ │ ├── hashes.go │ │ ├── hashes_noasm.go │ │ ├── keccakf.go │ │ ├── keccakf_amd64.go │ │ ├── keccakf_amd64.s │ │ ├── sha3.go │ │ ├── sha3_s390x.go │ │ ├── sha3_s390x.s │ │ ├── shake.go │ │ └── shake_noasm.go │ └── ssh │ │ ├── buffer.go │ │ ├── certs.go │ │ ├── channel.go │ │ ├── cipher.go │ │ ├── client.go │ │ ├── client_auth.go │ │ ├── common.go │ │ ├── connection.go │ │ ├── doc.go │ │ ├── handshake.go │ │ ├── internal │ │ └── bcrypt_pbkdf │ │ │ └── bcrypt_pbkdf.go │ │ ├── kex.go │ │ ├── keys.go │ │ ├── mac.go │ │ ├── messages.go │ │ ├── mlkem.go │ │ ├── mux.go │ │ ├── server.go │ │ ├── session.go │ │ ├── ssh_gss.go │ │ ├── streamlocal.go │ │ ├── tcpip.go │ │ └── transport.go │ ├── mod │ ├── LICENSE │ ├── PATENTS │ ├── internal │ │ └── lazyregexp │ │ │ └── lazyre.go │ ├── module │ │ ├── module.go │ │ └── pseudo.go │ └── semver │ │ └── semver.go │ ├── net │ ├── LICENSE │ ├── PATENTS │ ├── context │ │ └── context.go │ ├── html │ │ ├── atom │ │ │ ├── atom.go │ │ │ └── table.go │ │ ├── charset │ │ │ └── charset.go │ │ ├── const.go │ │ ├── doc.go │ │ ├── doctype.go │ │ ├── entity.go │ │ ├── escape.go │ │ ├── foreign.go │ │ ├── iter.go │ │ ├── node.go │ │ ├── parse.go │ │ ├── render.go │ │ └── token.go │ ├── internal │ │ └── socks │ │ │ ├── client.go │ │ │ └── socks.go │ └── proxy │ │ ├── dial.go │ │ ├── direct.go │ │ ├── per_host.go │ │ ├── proxy.go │ │ └── socks5.go │ ├── oauth2 │ ├── .travis.yml │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── clientcredentials │ │ └── clientcredentials.go │ ├── deviceauth.go │ ├── internal │ │ ├── doc.go │ │ ├── oauth2.go │ │ ├── token.go │ │ └── transport.go │ ├── oauth2.go │ ├── pkce.go │ ├── token.go │ └── transport.go │ ├── sync │ ├── LICENSE │ ├── PATENTS │ └── errgroup │ │ └── errgroup.go │ ├── sys │ ├── LICENSE │ ├── PATENTS │ ├── cpu │ │ ├── asm_aix_ppc64.s │ │ ├── asm_darwin_x86_gc.s │ │ ├── byteorder.go │ │ ├── cpu.go │ │ ├── cpu_aix.go │ │ ├── cpu_arm.go │ │ ├── cpu_arm64.go │ │ ├── cpu_arm64.s │ │ ├── cpu_darwin_x86.go │ │ ├── cpu_gc_arm64.go │ │ ├── cpu_gc_s390x.go │ │ ├── cpu_gc_x86.go │ │ ├── cpu_gc_x86.s │ │ ├── cpu_gccgo_arm64.go │ │ ├── cpu_gccgo_s390x.go │ │ ├── cpu_gccgo_x86.c │ │ ├── cpu_gccgo_x86.go │ │ ├── cpu_linux.go │ │ ├── cpu_linux_arm.go │ │ ├── cpu_linux_arm64.go │ │ ├── cpu_linux_loong64.go │ │ ├── cpu_linux_mips64x.go │ │ ├── cpu_linux_noinit.go │ │ ├── cpu_linux_ppc64x.go │ │ ├── cpu_linux_riscv64.go │ │ ├── cpu_linux_s390x.go │ │ ├── cpu_loong64.go │ │ ├── cpu_loong64.s │ │ ├── cpu_mips64x.go │ │ ├── cpu_mipsx.go │ │ ├── cpu_netbsd_arm64.go │ │ ├── cpu_openbsd_arm64.go │ │ ├── cpu_openbsd_arm64.s │ │ ├── cpu_other_arm.go │ │ ├── cpu_other_arm64.go │ │ ├── cpu_other_mips64x.go │ │ ├── cpu_other_ppc64x.go │ │ ├── cpu_other_riscv64.go │ │ ├── cpu_other_x86.go │ │ ├── cpu_ppc64x.go │ │ ├── cpu_riscv64.go │ │ ├── cpu_s390x.go │ │ ├── cpu_s390x.s │ │ ├── cpu_wasm.go │ │ ├── cpu_x86.go │ │ ├── cpu_zos.go │ │ ├── cpu_zos_s390x.go │ │ ├── endian_big.go │ │ ├── endian_little.go │ │ ├── hwcap_linux.go │ │ ├── parse.go │ │ ├── proc_cpuinfo_linux.go │ │ ├── runtime_auxv.go │ │ ├── runtime_auxv_go121.go │ │ ├── syscall_aix_gccgo.go │ │ ├── syscall_aix_ppc64_gc.go │ │ └── syscall_darwin_x86_gc.go │ └── 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 │ │ ├── auxv.go │ │ ├── auxv_unsupported.go │ │ ├── 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 │ │ ├── vgetrandom_linux.go │ │ ├── vgetrandom_unsupported.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 │ ├── text │ ├── LICENSE │ ├── PATENTS │ ├── cases │ │ ├── cases.go │ │ ├── context.go │ │ ├── fold.go │ │ ├── icu.go │ │ ├── info.go │ │ ├── map.go │ │ ├── tables10.0.0.go │ │ ├── tables11.0.0.go │ │ ├── tables12.0.0.go │ │ ├── tables13.0.0.go │ │ ├── tables15.0.0.go │ │ ├── tables9.0.0.go │ │ └── trieval.go │ ├── encoding │ │ ├── charmap │ │ │ ├── charmap.go │ │ │ └── tables.go │ │ ├── encoding.go │ │ ├── htmlindex │ │ │ ├── htmlindex.go │ │ │ ├── map.go │ │ │ └── tables.go │ │ ├── internal │ │ │ ├── identifier │ │ │ │ ├── identifier.go │ │ │ │ └── mib.go │ │ │ └── internal.go │ │ ├── japanese │ │ │ ├── all.go │ │ │ ├── eucjp.go │ │ │ ├── iso2022jp.go │ │ │ ├── shiftjis.go │ │ │ └── tables.go │ │ ├── korean │ │ │ ├── euckr.go │ │ │ └── tables.go │ │ ├── simplifiedchinese │ │ │ ├── all.go │ │ │ ├── gbk.go │ │ │ ├── hzgb2312.go │ │ │ └── tables.go │ │ ├── traditionalchinese │ │ │ ├── big5.go │ │ │ └── tables.go │ │ └── unicode │ │ │ ├── override.go │ │ │ └── unicode.go │ ├── internal │ │ ├── internal.go │ │ ├── language │ │ │ ├── common.go │ │ │ ├── compact.go │ │ │ ├── compact │ │ │ │ ├── compact.go │ │ │ │ ├── language.go │ │ │ │ ├── parents.go │ │ │ │ ├── tables.go │ │ │ │ └── tags.go │ │ │ ├── compose.go │ │ │ ├── coverage.go │ │ │ ├── language.go │ │ │ ├── lookup.go │ │ │ ├── match.go │ │ │ ├── parse.go │ │ │ ├── tables.go │ │ │ └── tags.go │ │ ├── match.go │ │ ├── tag │ │ │ └── tag.go │ │ └── utf8internal │ │ │ └── utf8internal.go │ ├── language │ │ ├── coverage.go │ │ ├── doc.go │ │ ├── language.go │ │ ├── match.go │ │ ├── parse.go │ │ ├── tables.go │ │ └── tags.go │ ├── runes │ │ ├── cond.go │ │ └── runes.go │ ├── transform │ │ └── transform.go │ └── unicode │ │ └── norm │ │ ├── composition.go │ │ ├── forminfo.go │ │ ├── input.go │ │ ├── iter.go │ │ ├── normalize.go │ │ ├── readwriter.go │ │ ├── tables10.0.0.go │ │ ├── tables11.0.0.go │ │ ├── tables12.0.0.go │ │ ├── tables13.0.0.go │ │ ├── tables15.0.0.go │ │ ├── tables9.0.0.go │ │ ├── transform.go │ │ └── trie.go │ └── tools │ ├── LICENSE │ ├── PATENTS │ ├── cover │ └── profile.go │ ├── go │ ├── ast │ │ ├── astutil │ │ │ ├── enclosing.go │ │ │ ├── imports.go │ │ │ ├── rewrite.go │ │ │ └── util.go │ │ └── inspector │ │ │ ├── inspector.go │ │ │ ├── iter.go │ │ │ ├── typeof.go │ │ │ └── walk.go │ ├── gcexportdata │ │ ├── gcexportdata.go │ │ └── importer.go │ ├── packages │ │ ├── doc.go │ │ ├── external.go │ │ ├── golist.go │ │ ├── golist_overlay.go │ │ ├── loadmode_string.go │ │ ├── packages.go │ │ └── visit.go │ └── types │ │ ├── objectpath │ │ └── objectpath.go │ │ └── typeutil │ │ ├── callee.go │ │ ├── imports.go │ │ ├── map.go │ │ ├── methodsetcache.go │ │ └── ui.go │ ├── imports │ └── forward.go │ └── internal │ ├── aliases │ ├── aliases.go │ └── aliases_go122.go │ ├── astutil │ └── edge │ │ └── edge.go │ ├── event │ ├── core │ │ ├── event.go │ │ ├── export.go │ │ └── fast.go │ ├── doc.go │ ├── event.go │ ├── keys │ │ ├── keys.go │ │ ├── standard.go │ │ └── util.go │ └── label │ │ └── label.go │ ├── gcimporter │ ├── bimport.go │ ├── exportdata.go │ ├── gcimporter.go │ ├── iexport.go │ ├── iimport.go │ ├── iimport_go122.go │ ├── predeclared.go │ ├── support.go │ └── ureader_yes.go │ ├── gocommand │ ├── invoke.go │ ├── invoke_notunix.go │ ├── invoke_unix.go │ ├── vendor.go │ └── version.go │ ├── gopathwalk │ └── walk.go │ ├── imports │ ├── fix.go │ ├── imports.go │ ├── mod.go │ ├── mod_cache.go │ ├── sortimports.go │ ├── source.go │ ├── source_env.go │ └── source_modindex.go │ ├── modindex │ ├── directories.go │ ├── index.go │ ├── lookup.go │ ├── modindex.go │ ├── symbols.go │ └── types.go │ ├── packagesinternal │ └── packages.go │ ├── pkgbits │ ├── codes.go │ ├── decoder.go │ ├── doc.go │ ├── encoder.go │ ├── flags.go │ ├── reloc.go │ ├── support.go │ ├── sync.go │ ├── syncmarker_string.go │ └── version.go │ ├── stdlib │ ├── deps.go │ ├── import.go │ ├── manifest.go │ └── stdlib.go │ ├── typeparams │ ├── common.go │ ├── coretype.go │ ├── free.go │ ├── normalize.go │ ├── termlist.go │ └── typeterm.go │ ├── typesinternal │ ├── classify_call.go │ ├── element.go │ ├── errorcode.go │ ├── errorcode_string.go │ ├── qualifier.go │ ├── recv.go │ ├── toonew.go │ ├── types.go │ ├── varkind.go │ └── zerovalue.go │ └── versions │ ├── features.go │ ├── gover.go │ ├── types.go │ └── versions.go ├── google.golang.org └── protobuf │ ├── LICENSE │ ├── PATENTS │ ├── encoding │ ├── prototext │ │ ├── decode.go │ │ ├── doc.go │ │ └── encode.go │ └── protowire │ │ └── wire.go │ ├── internal │ ├── descfmt │ │ └── stringer.go │ ├── descopts │ │ └── options.go │ ├── detrand │ │ └── rand.go │ ├── editiondefaults │ │ ├── defaults.go │ │ └── editions_defaults.binpb │ ├── encoding │ │ ├── defval │ │ │ └── default.go │ │ ├── messageset │ │ │ └── messageset.go │ │ ├── tag │ │ │ └── tag.go │ │ └── text │ │ │ ├── decode.go │ │ │ ├── decode_number.go │ │ │ ├── decode_string.go │ │ │ ├── decode_token.go │ │ │ ├── doc.go │ │ │ └── encode.go │ ├── errors │ │ └── errors.go │ ├── filedesc │ │ ├── build.go │ │ ├── desc.go │ │ ├── desc_init.go │ │ ├── desc_lazy.go │ │ ├── desc_list.go │ │ ├── desc_list_gen.go │ │ ├── editions.go │ │ └── placeholder.go │ ├── filetype │ │ └── build.go │ ├── flags │ │ ├── flags.go │ │ ├── proto_legacy_disable.go │ │ └── proto_legacy_enable.go │ ├── genid │ │ ├── any_gen.go │ │ ├── api_gen.go │ │ ├── descriptor_gen.go │ │ ├── doc.go │ │ ├── duration_gen.go │ │ ├── empty_gen.go │ │ ├── field_mask_gen.go │ │ ├── go_features_gen.go │ │ ├── goname.go │ │ ├── map_entry.go │ │ ├── name.go │ │ ├── source_context_gen.go │ │ ├── struct_gen.go │ │ ├── timestamp_gen.go │ │ ├── type_gen.go │ │ ├── wrappers.go │ │ └── wrappers_gen.go │ ├── impl │ │ ├── api_export.go │ │ ├── api_export_opaque.go │ │ ├── bitmap.go │ │ ├── bitmap_race.go │ │ ├── checkinit.go │ │ ├── codec_extension.go │ │ ├── codec_field.go │ │ ├── codec_field_opaque.go │ │ ├── codec_gen.go │ │ ├── codec_map.go │ │ ├── codec_message.go │ │ ├── codec_message_opaque.go │ │ ├── codec_messageset.go │ │ ├── codec_tables.go │ │ ├── codec_unsafe.go │ │ ├── convert.go │ │ ├── convert_list.go │ │ ├── convert_map.go │ │ ├── decode.go │ │ ├── encode.go │ │ ├── enum.go │ │ ├── equal.go │ │ ├── extension.go │ │ ├── lazy.go │ │ ├── legacy_enum.go │ │ ├── legacy_export.go │ │ ├── legacy_extension.go │ │ ├── legacy_file.go │ │ ├── legacy_message.go │ │ ├── merge.go │ │ ├── merge_gen.go │ │ ├── message.go │ │ ├── message_opaque.go │ │ ├── message_opaque_gen.go │ │ ├── message_reflect.go │ │ ├── message_reflect_field.go │ │ ├── message_reflect_field_gen.go │ │ ├── message_reflect_gen.go │ │ ├── pointer_unsafe.go │ │ ├── pointer_unsafe_opaque.go │ │ ├── presence.go │ │ └── validate.go │ ├── order │ │ ├── order.go │ │ └── range.go │ ├── pragma │ │ └── pragma.go │ ├── protolazy │ │ ├── bufferreader.go │ │ ├── lazy.go │ │ └── pointer_unsafe.go │ ├── set │ │ └── ints.go │ ├── strs │ │ ├── strings.go │ │ └── strings_unsafe.go │ └── version │ │ └── version.go │ ├── proto │ ├── checkinit.go │ ├── decode.go │ ├── decode_gen.go │ ├── doc.go │ ├── encode.go │ ├── encode_gen.go │ ├── equal.go │ ├── extension.go │ ├── merge.go │ ├── messageset.go │ ├── proto.go │ ├── proto_methods.go │ ├── proto_reflect.go │ ├── reset.go │ ├── size.go │ ├── size_gen.go │ ├── wrapperopaque.go │ └── wrappers.go │ ├── protoadapt │ └── convert.go │ ├── reflect │ ├── protoreflect │ │ ├── methods.go │ │ ├── proto.go │ │ ├── source.go │ │ ├── source_gen.go │ │ ├── type.go │ │ ├── value.go │ │ ├── value_equal.go │ │ ├── value_union.go │ │ └── value_unsafe.go │ └── protoregistry │ │ └── registry.go │ └── runtime │ ├── protoiface │ ├── legacy.go │ └── methods.go │ └── protoimpl │ ├── impl.go │ └── version.go ├── gopkg.in ├── yaml.v2 │ ├── .travis.yml │ ├── LICENSE │ ├── LICENSE.libyaml │ ├── 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 └── 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 /.envrc.template: -------------------------------------------------------------------------------- 1 | export SERVICE_RELEASE_VERSION= 2 | export BROKER_CA_NAME= 3 | export BROKER_SYSTEM_DOMAIN= 4 | export BOSH_DEPLOYMENT_VARS= 5 | 6 | source_up 7 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | updates: 3 | - package-ecosystem: gomod 4 | directory: "/" 5 | schedule: 6 | interval: daily 7 | open-pull-requests-limit: 10 8 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2016-Present Pivotal Software, Inc. All rights reserved. 2 | # This program and the accompanying materials are made available under the terms of the under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. 3 | # You may obtain a copy of the License at 4 | # http://www.apache.org/licenses/LICENSE-2.0 5 | # Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. 6 | 7 | .envrc 8 | ci/*-local.yml 9 | *.coverprofile 10 | coverprofile.out 11 | .vscode 12 | *.test 13 | .envrc-kafka 14 | .envrc-redis 15 | .idea 16 | .DS_Store 17 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Log 2 | All notable changes to the On Demand Service Broker will be documented here 3 | 4 | ## Unreleased 5 | Work in progress appears here. On release, create a section below with version number and date 6 | and move the unreleased items to it. 7 | 8 | ### Added 9 | - As you finish a logical group of stories adding new functionality 10 | - Insert a brief description here 11 | 12 | ### Changed 13 | - Detail any modified functionality 14 | - here 15 | 16 | ### Removed 17 | - And if any functionality has been removed 18 | - Mention it in a line here 19 | 20 | ## [0.21.2] - 2018-05-10 21 | ### Added 22 | 23 | ### Changed 24 | 25 | ### Removed 26 | -------------------------------------------------------------------------------- /ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | We recommend you open issues in the ODB release repo: https://github.com/pivotal-cf/on-demand-service-broker-release. 2 | -------------------------------------------------------------------------------- /NOTICE: -------------------------------------------------------------------------------- 1 | On Demand Service Broker 2 | 3 | Copyright (c) 2016-Present Pivotal Software, Inc. All Rights Reserved. 4 | 5 | Licensed under the Apache License, Version 2.0 (the "License"); 6 | you may not use this file except in compliance with the License. 7 | You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, software 12 | distributed under the License is distributed on an "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | See the License for the specific language governing permissions and 15 | limitations under the License. -------------------------------------------------------------------------------- /boshlinks/boshlinks_suite_test.go: -------------------------------------------------------------------------------- 1 | package boshlinks_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | ) 9 | 10 | func TestBoshlinks(t *testing.T) { 11 | RegisterFailHandler(Fail) 12 | RunSpecs(t, "Boshlinks Suite") 13 | } 14 | -------------------------------------------------------------------------------- /broker/decider/decider_suite_test.go: -------------------------------------------------------------------------------- 1 | package decider_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | ) 9 | 10 | func TestDecider(t *testing.T) { 11 | RegisterFailHandler(Fail) 12 | RunSpecs(t, "Decider Suite") 13 | } 14 | -------------------------------------------------------------------------------- /broker/get_binding.go: -------------------------------------------------------------------------------- 1 | package broker 2 | 3 | import ( 4 | "context" 5 | "errors" 6 | 7 | "code.cloudfoundry.org/brokerapi/v13/domain" 8 | "code.cloudfoundry.org/brokerapi/v13/domain/apiresponses" 9 | ) 10 | 11 | func (b *Broker) GetBinding(ctx context.Context, instanceID, bindingID string, bindingsDetails domain.FetchBindingDetails) (domain.GetBindingSpec, error) { 12 | err := apiresponses.NewFailureResponse(errors.New("GetBinding Not Implemented"), 404, "") 13 | return domain.GetBindingSpec{}, err 14 | } 15 | -------------------------------------------------------------------------------- /broker/get_binding_test.go: -------------------------------------------------------------------------------- 1 | package broker_test 2 | 3 | import ( 4 | "context" 5 | "log/slog" 6 | 7 | "code.cloudfoundry.org/brokerapi/v13/domain" 8 | "code.cloudfoundry.org/brokerapi/v13/domain/apiresponses" 9 | "code.cloudfoundry.org/lager/v3" 10 | . "github.com/onsi/ginkgo/v2" 11 | . "github.com/onsi/gomega" 12 | ) 13 | 14 | var _ = Describe("GetBinding", func() { 15 | It("returns an error", func() { 16 | _, err := b.GetBinding(context.Background(), "instanceID", "bID", domain.FetchBindingDetails{ServiceID: "test service", PlanID: "test plan"}) 17 | fresp, ok := err.(*apiresponses.FailureResponse) 18 | Expect(ok).To(BeTrue(), "err wasn't a FailureResponse") 19 | logger := lager.NewLogger("test") 20 | Expect(fresp.ValidatedStatusCode(slog.New(lager.NewHandler(logger)))).To(Equal(404)) 21 | }) 22 | }) 23 | -------------------------------------------------------------------------------- /broker/get_instance.go: -------------------------------------------------------------------------------- 1 | package broker 2 | 3 | import ( 4 | "context" 5 | "errors" 6 | 7 | "code.cloudfoundry.org/brokerapi/v13/domain" 8 | "code.cloudfoundry.org/brokerapi/v13/domain/apiresponses" 9 | ) 10 | 11 | func (b *Broker) GetInstance(ctx context.Context, instanceID string, instanceDetails domain.FetchInstanceDetails) (domain.GetInstanceDetailsSpec, error) { 12 | err := apiresponses.NewFailureResponse(errors.New("GetInstance Not Implemented"), 404, "") 13 | return domain.GetInstanceDetailsSpec{}, err 14 | } 15 | -------------------------------------------------------------------------------- /broker/get_instance_test.go: -------------------------------------------------------------------------------- 1 | package broker_test 2 | 3 | import ( 4 | "context" 5 | "log/slog" 6 | 7 | "code.cloudfoundry.org/brokerapi/v13/domain" 8 | "code.cloudfoundry.org/brokerapi/v13/domain/apiresponses" 9 | "code.cloudfoundry.org/lager/v3" 10 | . "github.com/onsi/ginkgo/v2" 11 | . "github.com/onsi/gomega" 12 | ) 13 | 14 | var _ = Describe("GetInstance", func() { 15 | It("returns an appropriate error", func() { 16 | _, err := b.GetInstance(context.Background(), "some-instance-id", domain.FetchInstanceDetails{PlanID: "test plan", ServiceID: "test service"}) 17 | fresp, ok := err.(*apiresponses.FailureResponse) 18 | Expect(ok).To(BeTrue(), "err wasn't a FailureResponse") 19 | logger := lager.NewLogger("test") 20 | Expect(fresp.ValidatedStatusCode(slog.New(lager.NewHandler(logger)))).To(Equal(404)) 21 | }) 22 | }) 23 | -------------------------------------------------------------------------------- /broker/last_binding_operation.go: -------------------------------------------------------------------------------- 1 | package broker 2 | 3 | import ( 4 | "context" 5 | "errors" 6 | 7 | "code.cloudfoundry.org/brokerapi/v13/domain" 8 | "code.cloudfoundry.org/brokerapi/v13/domain/apiresponses" 9 | ) 10 | 11 | func (b *Broker) LastBindingOperation(ctx context.Context, instanceID, bindingID string, details domain.PollDetails) (domain.LastOperation, error) { 12 | err := apiresponses.NewFailureResponse(errors.New("LastBindingOperation Not Implemented"), 404, "") 13 | return domain.LastOperation{}, err 14 | } 15 | -------------------------------------------------------------------------------- /broker/last_binding_operation_test.go: -------------------------------------------------------------------------------- 1 | package broker_test 2 | 3 | import ( 4 | "context" 5 | "log/slog" 6 | 7 | "code.cloudfoundry.org/brokerapi/v13/domain" 8 | "code.cloudfoundry.org/brokerapi/v13/domain/apiresponses" 9 | "code.cloudfoundry.org/lager/v3" 10 | . "github.com/onsi/ginkgo/v2" 11 | . "github.com/onsi/gomega" 12 | ) 13 | 14 | var _ = Describe("LastBindingOperation", func() { 15 | It("returns an appropriate error", func() { 16 | _, err := b.LastBindingOperation(context.Background(), "instanceID", "bID", domain.PollDetails{}) 17 | fresp, ok := err.(*apiresponses.FailureResponse) 18 | Expect(ok).To(BeTrue(), "err wasn't a FailureResponse") 19 | logger := lager.NewLogger("test") 20 | Expect(fresp.ValidatedStatusCode(slog.New(lager.NewHandler(logger)))).To(Equal(404)) 21 | }) 22 | }) 23 | -------------------------------------------------------------------------------- /brokerinitiator/brokerinitiator_suite_test.go: -------------------------------------------------------------------------------- 1 | package brokerinitiator_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | ) 9 | 10 | func TestBrokerinitiator(t *testing.T) { 11 | RegisterFailHandler(Fail) 12 | RunSpecs(t, "Brokerinitiator Suite") 13 | } 14 | -------------------------------------------------------------------------------- /cf/fixtures/list_brokers_page_1_response.json: -------------------------------------------------------------------------------- 1 | { 2 | "total_results": 2, 3 | "total_pages": 2, 4 | "prev_url": null, 5 | "next_url": "/v2/service_brokers?page=2&results-per-page=100", 6 | "resources": [ 7 | { 8 | "metadata": { 9 | "guid": "service-broker-guid-1", 10 | "url": "/v2/service_brokers/90a413fd-a636-4133-8bfb-a94b07839e96", 11 | "created_at": "2016-06-08T16:41:22Z", 12 | "updated_at": "2016-06-08T16:41:22Z" 13 | }, 14 | "entity": { 15 | "name": "service-broker-name-1", 16 | "broker_url": "https://foo.com/url-2", 17 | "auth_username": "auth_username-2", 18 | "space_guid": "1d43e64d-ed64-43dd-9046-11f422bd407b" 19 | } 20 | } 21 | ] 22 | } -------------------------------------------------------------------------------- /cf/fixtures/list_brokers_page_2_response.json: -------------------------------------------------------------------------------- 1 | { 2 | "total_results": 2, 3 | "total_pages": 2, 4 | "prev_url": "/v2/service_brokers?page=1&results-per-page=100", 5 | "next_url": null, 6 | "resources": [ 7 | { 8 | "metadata": { 9 | "guid": "service-broker-guid-2-guid", 10 | "url": "/v2/service_brokers/90a413fd-a636-4133-8bfb-a94b07839e96", 11 | "created_at": "2016-06-08T16:41:22Z", 12 | "updated_at": "2016-06-08T16:41:22Z" 13 | }, 14 | "entity": { 15 | "name": "service-broker-name-2", 16 | "broker_url": "https://foo.com/url-2", 17 | "auth_username": "auth_username-2", 18 | "space_guid": "1d43e64d-ed64-43dd-9046-11f422bd407b" 19 | } 20 | } 21 | ] 22 | } -------------------------------------------------------------------------------- /cf/fixtures/list_service_instances_empty_response.json: -------------------------------------------------------------------------------- 1 | { 2 | "total_results": 0, 3 | "total_pages": 1, 4 | "prev_url": null, 5 | "next_url": null, 6 | "resources": [] 7 | } -------------------------------------------------------------------------------- /cf/fixtures/list_service_instances_for_plan_2_bad_page_count.json: -------------------------------------------------------------------------------- 1 | { 2 | "total_results": 0, 3 | "total_pages": 0, 4 | "prev_url": null, 5 | "next_url": null, 6 | "resources": [] 7 | } 8 | -------------------------------------------------------------------------------- /cf/fixtures/list_services_empty_response.json: -------------------------------------------------------------------------------- 1 | { 2 | "total_results": 0, 3 | "total_pages": 1, 4 | "prev_url": null, 5 | "next_url": null, 6 | "resources": [] 7 | } 8 | -------------------------------------------------------------------------------- /cf/service_plans_client.go: -------------------------------------------------------------------------------- 1 | package cf 2 | 3 | import ( 4 | "fmt" 5 | "log" 6 | 7 | "github.com/pkg/errors" 8 | ) 9 | 10 | func (c Client) GetPlanByServiceInstanceGUID(serviceGUID string, logger *log.Logger) (ServicePlan, error) { 11 | servicePlanResponse := ServicePlanResponse{} 12 | err := c.get(fmt.Sprintf("%s%s", c.url, "/v2/service_plans?q=service_instance_guid:"+serviceGUID), &servicePlanResponse, logger) 13 | if err != nil { 14 | return ServicePlan{}, errors.Wrap(err, fmt.Sprintf("failed to retrieve plan for service %q", serviceGUID)) 15 | } 16 | return servicePlanResponse.ServicePlans[0], nil 17 | } 18 | -------------------------------------------------------------------------------- /collaboration_tests/fixtures/nonsense.crt: -------------------------------------------------------------------------------- 1 | not_a_cert 2 | -------------------------------------------------------------------------------- /config/test_assets/executable.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash -eu 2 | 3 | # Copyright (C) 2016-Present Pivotal Software, Inc. All rights reserved. 4 | # This program and the accompanying materials are made available under the terms of the under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # http://www.apache.org/licenses/LICENSE-2.0 7 | # Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. 8 | 9 | 10 | echo "Hello" 11 | -------------------------------------------------------------------------------- /config/test_assets/not_yaml.yml: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2016-Present Pivotal Software, Inc. All rights reserved. 2 | # This program and the accompanying materials are made available under the terms of the under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. 3 | # You may obtain a copy of the License at 4 | # http://www.apache.org/licenses/LICENSE-2.0 5 | # Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. 6 | 7 | ohai 8 | -------------------------------------------------------------------------------- /contract_tests/README.md: -------------------------------------------------------------------------------- 1 | Contract tests test specific interactions with external APIs. The APIs that ODB use are CF, BOSH, Credhub, UAA and Telemetry. You can find a list of endpoints that are used from each [here](https://docs.pivotal.io/svc-sdk/odb/0-42/security.html). 2 | The aim of these tests is to check that the APIs interfaces that ODB relies on do not change. 3 | 4 | Running the contract tests: 5 | - These tests make real HTTP calls to the collaborating APIs and therefore you need a bosh-lite environment 6 | - You can get a new environment by running: 7 | ``` 8 | claim-lite 9 | target-lite 10 | ``` 11 | - From the `on-demand-service-broker` repo run 12 | ``` 13 | ./scripts/run-contract-tests-on-lite 14 | ``` 15 | -------------------------------------------------------------------------------- /contract_tests/bosh/.envrc.template: -------------------------------------------------------------------------------- 1 | 2 | export UAA_URL= 3 | export BOSH_USERNAME= 4 | export BOSH_PASSWORD= 5 | export BOSH_CA_CERT= 6 | export BOSH_URL= 7 | export DUMMY_RELEASE_URL= 8 | export DUMMY_RELEASE_SHA= 9 | 10 | source_up 11 | -------------------------------------------------------------------------------- /contract_tests/cf/fixtures/basic_service_catalog.yml: -------------------------------------------------------------------------------- 1 | - type: replace 2 | path: /instance_groups/name=broker/jobs/name=broker/properties/service_catalog/plans? 3 | value: 4 | - name: redis-small 5 | plan_id: ((plan_id))-small 6 | cf_service_access: enable 7 | description: Redis small 8 | metadata: {bullets: [], display_name: Redis small} 9 | properties: {persistence: false} 10 | instance_groups: 11 | - name: redis-server 12 | azs: [((meta.az))] 13 | networks: [((meta.services_subnet))] 14 | vm_type: ((meta.vm_type)) 15 | instances: 1 16 | -------------------------------------------------------------------------------- /contract_tests/credhub/.envrc.template: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | export TEST_CREDHUB_CLIENT_SECRET= 4 | export CF_CREDHUB_CA_CERT= 5 | export CF_UAA_CA_CERT= 6 | 7 | source_up 8 | -------------------------------------------------------------------------------- /contract_tests/fixtures/deployment_with_link_provider.yml: -------------------------------------------------------------------------------- 1 | --- 2 | name: dep_with_link 3 | 4 | releases: 5 | - name: dummy 6 | version: latest 7 | 8 | stemcells: 9 | - alias: jammy 10 | os: ubuntu-jammy 11 | version: latest 12 | 13 | instance_groups: 14 | - name: dummy 15 | instances: 1 16 | vm_type: small 17 | stemcell: jammy 18 | azs: [z1] 19 | networks: 20 | - name: default 21 | jobs: 22 | - name: dummy_with_link 23 | release: dummy 24 | provides: 25 | link_from_dummy: {shared: true} 26 | 27 | update: 28 | canaries: 1 29 | max_in_flight: 6 30 | serial: false 31 | canary_watch_time: 1000-60000 32 | update_watch_time: 1000-60000 33 | 34 | variables: 35 | - name: a-var 36 | type: password 37 | -------------------------------------------------------------------------------- /contract_tests/fixtures/successful_deploy.yml: -------------------------------------------------------------------------------- 1 | --- 2 | releases: [] 3 | update: 4 | canaries: 1 5 | canary_watch_time: 3000-180000 6 | update_watch_time: 3000-180000 7 | max_in_flight: 4 8 | stemcells: 9 | - alias: jammy 10 | os: ubuntu-jammy 11 | version: latest 12 | -------------------------------------------------------------------------------- /contract_tests/telemetry/fixtures/basic_service_catalog.yml: -------------------------------------------------------------------------------- 1 | - type: replace 2 | path: /instance_groups/name=broker/jobs/name=broker/properties/service_catalog/plans? 3 | value: 4 | - name: redis-small 5 | plan_id: ((plan_id))-small 6 | cf_service_access: enable 7 | description: Redis small 8 | metadata: {bullets: [], display_name: Redis small} 9 | properties: {persistence: false} 10 | instance_groups: 11 | - name: redis-server 12 | azs: [((meta.az))] 13 | networks: [((meta.services_subnet))] 14 | vm_type: ((meta.vm_type)) 15 | instances: 1 16 | -------------------------------------------------------------------------------- /contract_tests/telemetry/telemetry_suite_test.go: -------------------------------------------------------------------------------- 1 | package telemetry_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | ) 9 | 10 | func TestTelemetry(t *testing.T) { 11 | RegisterFailHandler(Fail) 12 | RunSpecs(t, "Telemetry Suite") 13 | } 14 | -------------------------------------------------------------------------------- /contract_tests/uaa/uaa_suite_test.go: -------------------------------------------------------------------------------- 1 | package uaa_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | ) 9 | 10 | func TestUaa(t *testing.T) { 11 | RegisterFailHandler(Fail) 12 | RunSpecs(t, "Uaa Suite") 13 | } 14 | -------------------------------------------------------------------------------- /credhub/credstore_suite_test.go: -------------------------------------------------------------------------------- 1 | package credhub_test 2 | 3 | import ( 4 | "encoding/json" 5 | "strings" 6 | "testing" 7 | 8 | . "github.com/onsi/ginkgo/v2" 9 | . "github.com/onsi/gomega" 10 | "github.com/onsi/gomega/gbytes" 11 | ) 12 | 13 | func TestCredStore(t *testing.T) { 14 | RegisterFailHandler(Fail) 15 | RunSpecs(t, "CredStore Suite") 16 | } 17 | 18 | func toJson(i interface{}) string { 19 | b := gbytes.NewBuffer() 20 | json.NewEncoder(b).Encode(i) 21 | return strings.TrimRight(string(b.Contents()), "\n") 22 | } 23 | -------------------------------------------------------------------------------- /hasher/hasher_suite_test.go: -------------------------------------------------------------------------------- 1 | package hasher_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | ) 9 | 10 | func TestHasher(t *testing.T) { 11 | RegisterFailHandler(Fail) 12 | RunSpecs(t, "Hasher Suite") 13 | } 14 | -------------------------------------------------------------------------------- /integration_tests/broker_post_start/test_assets/executable.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash -eu 2 | 3 | # Copyright (C) 2016-Present Pivotal Software, Inc. All rights reserved. 4 | # This program and the accompanying materials are made available under the terms of the under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # http://www.apache.org/licenses/LICENSE-2.0 7 | # Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. 8 | 9 | 10 | echo "Hello" 11 | -------------------------------------------------------------------------------- /integration_tests/deregister_broker/config.yml: -------------------------------------------------------------------------------- 1 | service_catalog: 2 | id: "" 3 | disable_ssl_cert_verification: true 4 | cf: 5 | url: http://127.0.0.1:58603 6 | root_ca_cert: "" 7 | uaa: 8 | url: http://127.0.0.1:58604 9 | authentication: 10 | client_credentials: 11 | client_id: cf-uaa-client-id 12 | client_secret: cf-uaa-client-secret 13 | user_credentials: 14 | username: "" 15 | password: "" 16 | polling_interval: 0 17 | polling_initial_offset: 0 18 | -------------------------------------------------------------------------------- /integration_tests/fixtures/ssl/README.md: -------------------------------------------------------------------------------- 1 | # Generate Test Certificates 2 | 3 | In order to generate test certificates run 4 | 5 | ``` 6 | ./scripts/generate-test-certificates.sh 7 | ``` 8 | 9 | from the root of the project. 10 | -------------------------------------------------------------------------------- /integration_tests/fixtures/ssl/cert.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIICEzCCAXygAwIBAgIQJXFZp0tIqCnqNnLJ0xEsMjANBgkqhkiG9w0BAQsFADAS 3 | MRAwDgYDVQQKEwdBY21lIENvMCAXDTcwMDEwMTAwMDAwMFoYDzIwODQwMTI5MTYw 4 | MDAwWjASMRAwDgYDVQQKEwdBY21lIENvMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCB 5 | iQKBgQDNv1kemWtdmNuol1pxGUlkllH8Olm5S1NDG1ochKYId2TtCboHuc8isTdN 6 | fv3Ak+56aCXTVCiYBKQfnyUXPpVSVlvyrWZjUfvdtxVJGQBdK0kDze9Iu5aOmoPk 7 | XWCrRttfcM+ZQleRA0dTL6LZhhypPtg93imL05t78H87eIeHlwIDAQABo2gwZjAO 8 | BgNVHQ8BAf8EBAMCAqQwEwYDVR0lBAwwCgYIKwYBBQUHAwEwDwYDVR0TAQH/BAUw 9 | AwEB/zAuBgNVHREEJzAlggtleGFtcGxlLmNvbYcEfwAAAYcQAAAAAAAAAAAAAAAA 10 | AAAAATANBgkqhkiG9w0BAQsFAAOBgQBsHYp/cMkBN1JHCcUwXflSy9lpjUp33a30 11 | tItoygJjJ4OqYPOipudiO+VvTzB4UTHhit2lOp8kt+RQa76uuZjO6C8rUDlNY0Ai 12 | LGcgVl/qwM+YarbKFI5JDxUDrYxmEgZdd33LleRYN0nufXouQjWnkpgUqDIsDlhd 13 | GVPji9jkzQ== 14 | -----END CERTIFICATE----- 15 | -------------------------------------------------------------------------------- /integration_tests/on_demand_service_broker/credhub_test.go: -------------------------------------------------------------------------------- 1 | // Copyright (C) 2015-Present Pivotal Software, Inc. All rights reserved. 2 | 3 | // This program and the accompanying materials are made available under 4 | // the terms of the under the Apache License, Version 2.0 (the "License"); 5 | // you may not use this file except in compliance with the License. 6 | // You may obtain a copy of the License at 7 | 8 | // http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | // Unless required by applicable law or agreed to in writing, software 11 | // distributed under the License is distributed on an "AS IS" BASIS, 12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | // See the License for the specific language governing permissions and 14 | // limitations under the License. 15 | 16 | package integration_tests 17 | -------------------------------------------------------------------------------- /integration_tests/register_broker/register_broker_suite_test.go: -------------------------------------------------------------------------------- 1 | package register_broker_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | "github.com/onsi/gomega/gexec" 9 | ) 10 | 11 | func TestRegisterBroker(t *testing.T) { 12 | RegisterFailHandler(Fail) 13 | RunSpecs(t, "RegisterBroker Suite") 14 | } 15 | 16 | var binaryPath string 17 | 18 | var _ = BeforeSuite(func() { 19 | var err error 20 | binaryPath, err = gexec.Build("github.com/pivotal-cf/on-demand-service-broker/cmd/register-broker") 21 | Expect(err).NotTo(HaveOccurred()) 22 | }) 23 | 24 | var _ = AfterSuite(func() { 25 | gexec.CleanupBuildArtifacts() 26 | }) 27 | -------------------------------------------------------------------------------- /manifestsecrets/interfaces.go: -------------------------------------------------------------------------------- 1 | package manifestsecrets 2 | 3 | import ( 4 | "log" 5 | 6 | "github.com/pivotal-cf/on-demand-service-broker/boshdirector" 7 | ) 8 | 9 | //go:generate go run github.com/maxbrunsfeld/counterfeiter/v6 -generate 10 | //counterfeiter:generate -o fakes/fake_credhub_operator.go . CredhubOperator 11 | 12 | type CredhubOperator interface { 13 | BulkGet(map[string]boshdirector.Variable, *log.Logger) (map[string]string, error) 14 | FindNameLike(name string, logger *log.Logger) ([]string, error) 15 | BulkDelete(paths []string, logger *log.Logger) error 16 | } 17 | 18 | //counterfeiter:generate -o fakes/fake_matcher.go . Matcher 19 | 20 | type Matcher interface { 21 | Match(manifest []byte, deploymentVariables []boshdirector.Variable) (map[string]boshdirector.Variable, error) 22 | } 23 | -------------------------------------------------------------------------------- /manifestsecrets/manifest_secrets_suite_test.go: -------------------------------------------------------------------------------- 1 | package manifestsecrets_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | ) 9 | 10 | func TestManifestSecrets(t *testing.T) { 11 | RegisterFailHandler(Fail) 12 | RunSpecs(t, "ManifestSecrets Suite") 13 | } 14 | -------------------------------------------------------------------------------- /network/cert_pool.go: -------------------------------------------------------------------------------- 1 | package network 2 | 3 | import "crypto/x509" 4 | 5 | func AppendCertsFromPEM(certsPEM ...string) (*x509.CertPool, error) { 6 | systemCertPool, err := x509.SystemCertPool() 7 | if err != nil { 8 | return nil, err 9 | } 10 | for _, cert := range certsPEM { 11 | systemCertPool.AppendCertsFromPEM([]byte(cert)) 12 | } 13 | return systemCertPool, nil 14 | } 15 | -------------------------------------------------------------------------------- /network/network_suite_test.go: -------------------------------------------------------------------------------- 1 | package network_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | ) 9 | 10 | func TestNetwork(t *testing.T) { 11 | RegisterFailHandler(Fail) 12 | RunSpecs(t, "Network Suite") 13 | } 14 | -------------------------------------------------------------------------------- /registrar/fixtures/deregister_config.yml: -------------------------------------------------------------------------------- 1 | --- 2 | disable_ssl_cert_verification: true 3 | cf: 4 | url: some-cf-url 5 | root_ca_cert: some-cf-cert 6 | uaa: 7 | url: a-uaa-url 8 | authentication: 9 | user_credentials: 10 | username: some-cf-username 11 | password: some-cf-password -------------------------------------------------------------------------------- /runtimechecker/runtimechecker_suite_test.go: -------------------------------------------------------------------------------- 1 | package runtimechecker_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | ) 9 | 10 | func TestRuntimechecker(t *testing.T) { 11 | RegisterFailHandler(Fail) 12 | RunSpecs(t, "Runtimechecker Suite") 13 | } 14 | -------------------------------------------------------------------------------- /scripts/generate-test-certificates.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -eu 4 | 5 | go_root=$(go env GOROOT) 6 | go run "${go_root}/src/crypto/tls/generate_cert.go" --rsa-bits 1024 --host 127.0.0.1,::1,example.com --ca --start-date "Jan 1 00:00:00 1970" --duration=1000000h 7 | 8 | mv cert.pem key.pem ./integration_tests/fixtures/ssl/ 9 | -------------------------------------------------------------------------------- /scripts/run-unit-tests.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" 4 | 5 | "${script_dir}/run-tests.sh" --race --fail-on-pending --skip-package=contract_tests,system_tests 6 | -------------------------------------------------------------------------------- /system_tests/delete_all_service_instances_tests/fixtures/basic_service_catalog.yml: -------------------------------------------------------------------------------- 1 | - type: replace 2 | path: /instance_groups/name=broker/jobs/name=broker/properties/service_catalog/plans? 3 | value: 4 | - name: redis-small 5 | plan_id: ((plan_id))-small 6 | cf_service_access: enable 7 | description: Redis small 8 | metadata: {bullets: [], display_name: Redis small} 9 | properties: {persistence: false} 10 | instance_groups: 11 | - name: redis-server 12 | azs: [((meta.az))] 13 | networks: [((meta.services_subnet))] 14 | vm_type: ((meta.vm_type)) 15 | instances: 1 -------------------------------------------------------------------------------- /system_tests/delete_all_service_instances_tests/fixtures/enable_secure_manifests.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - type: replace 3 | path: /instance_groups/name=broker/jobs/name=broker/properties/enable_secure_manifests? 4 | value: true 5 | 6 | - type: replace 7 | path: /instance_groups/name=broker/jobs/name=service-adapter/properties/secure_manifests_enabled? 8 | value: true 9 | 10 | - type: replace 11 | path: /instance_groups/name=broker/jobs/name=broker/properties/bosh_credhub_api? 12 | value: 13 | url: ((bosh_credhub_api.url)) 14 | root_ca_cert: ((bosh_credhub_api.root_ca_cert)) 15 | authentication: 16 | uaa: 17 | client_credentials: 18 | client_id: ((bosh_credhub_api.authentication.uaa.client_credentials.client_id)) 19 | client_secret: ((bosh_credhub_api.authentication.uaa.client_credentials.client_secret)) -------------------------------------------------------------------------------- /system_tests/dynamic_bosh_config/fixtures/remove_cf_user_creds.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - type: remove 3 | path: /instance_groups/name=broker/jobs/name=broker/properties/cf/authentication/user_credentials 4 | -------------------------------------------------------------------------------- /system_tests/feature_flags/feature_flags_suite_test.go: -------------------------------------------------------------------------------- 1 | package feature_flags_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | ) 9 | 10 | func TestFeatureFlags(t *testing.T) { 11 | RegisterFailHandler(Fail) 12 | RunSpecs(t, "FeatureFlags Suite") 13 | } 14 | -------------------------------------------------------------------------------- /system_tests/feature_flags/fixtures/disable_cf_ssl_verification.yml: -------------------------------------------------------------------------------- 1 | - type: replace 2 | path: /instance_groups/name=broker/jobs/name=broker/properties/disable_ssl_cert_verification? 3 | value: true -------------------------------------------------------------------------------- /system_tests/feature_flags/fixtures/expose_operational_errors.yml: -------------------------------------------------------------------------------- 1 | - type: replace 2 | path: /instance_groups/name=broker/jobs/name=broker/properties/expose_operational_errors? 3 | value: true -------------------------------------------------------------------------------- /system_tests/fixtures/add_cf_uaa_client_credentials.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - type: remove 4 | path: /instance_groups/name=broker/jobs/name=broker/properties/cf?/uaa/authentication/user_credentials 5 | 6 | - type: replace 7 | path: /instance_groups/name=broker/jobs/name=broker/properties/cf?/uaa/authentication/client_credentials? 8 | value: 9 | client_id: ((cf.client_credentials.client_id)) 10 | client_secret: ((cf.client_credentials.client_secret)) 11 | -------------------------------------------------------------------------------- /system_tests/fixtures/enable_broker_tls.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - type: replace 3 | path: /variables?/- 4 | value: 5 | name: broker_cert 6 | type: certificate 7 | options: 8 | ca: /services/tls_ca 9 | organization: pivotal 10 | alternative_names: 11 | - ((broker_uri)) 12 | 13 | - type: replace 14 | path: /instance_groups/name=broker/jobs/name=broker/properties/tls? 15 | value: 16 | certificate: ((broker_cert.certificate)) 17 | private_key: ((broker_cert.private_key)) 18 | 19 | - type: replace 20 | path: /instance_groups/name=broker/jobs/name=route_registrar/properties/route_registrar 21 | value: 22 | routes: 23 | - name: ((broker_route_name))-tls 24 | registration_interval: 20s 25 | tls_port: 8080 26 | uris: 27 | - ((broker_uri)) 28 | server_cert_domain_san: ((broker_uri)) 29 | -------------------------------------------------------------------------------- /system_tests/fixtures/use_nats_without_tls.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | - type: remove 4 | path: /instance_groups/name=broker/jobs/name=route_registrar/consumes/nats-tls? 5 | 6 | - type: remove 7 | path: /instance_groups/name=broker/jobs/name=route_registrar/properties/nats? 8 | 9 | - type: replace 10 | path: /instance_groups/name=broker/jobs/name=route_registrar/consumes/nats? 11 | value: 12 | deployment: ((cf.deployment_name)) 13 | from: nats 14 | -------------------------------------------------------------------------------- /system_tests/kafka_env/run_system_tests.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Copyright (C) 2016-Present Pivotal Software, Inc. All rights reserved. 4 | # This program and the accompanying materials are made available under the terms of the under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # http://www.apache.org/licenses/LICENSE-2.0 7 | # Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. 8 | 9 | set -euo pipefail 10 | 11 | pushd .. >/dev/null 12 | ./run_system_tests.sh "$@" 13 | popd >/dev/null -------------------------------------------------------------------------------- /system_tests/lifecycle/kafka/lifecycle_kafka_test.go: -------------------------------------------------------------------------------- 1 | package lifecycle_test 2 | 3 | import ( 4 | . "github.com/onsi/ginkgo/v2" 5 | 6 | . "github.com/pivotal-cf/on-demand-service-broker/system_tests/lifecycle/all_lifecycle_tests" 7 | "github.com/pivotal-cf/on-demand-service-broker/system_tests/test_helpers/service_helpers" 8 | ) 9 | 10 | var _ = Describe("Kafka Lifecycle Tests", func() { 11 | It("can perform the basic service lifecycle", func() { 12 | BasicLifecycleTest( 13 | service_helpers.Kafka, 14 | brokerInfo, 15 | "kafka-small", 16 | "kafka-medium", 17 | `{"auto_create_topics": true}`) 18 | }) 19 | }) 20 | -------------------------------------------------------------------------------- /system_tests/lifecycle/redis/fixtures/add_binding_with_dns.yml: -------------------------------------------------------------------------------- 1 | - type: replace 2 | path: /instance_groups/name=broker/jobs/name=broker/properties/service_catalog/plans/name=redis-small/binding_with_dns? 3 | value: 4 | - name: "default-redis-server" 5 | link_provider: "redis" 6 | instance_group: "redis-server" 7 | -------------------------------------------------------------------------------- /system_tests/lifecycle/redis/fixtures/add_client_definition.yml: -------------------------------------------------------------------------------- 1 | - type: replace 2 | path: /instance_groups/name=broker/jobs/name=broker/properties/cf/uaa/client_definition? 3 | value: 4 | scopes: cloud_controller.read,cloud_controller.write 5 | authorized_grant_types: implicit 6 | authorities: cloud_controller.admin 7 | resource_ids: res1,res2 8 | name: lifecycle_test_client 9 | allowpublic: true 10 | 11 | - type: remove 12 | path: /instance_groups/name=broker/jobs/name=broker/properties/cf?/uaa/authentication/user_credentials 13 | 14 | - type: replace 15 | path: /instance_groups/name=broker/jobs/name=broker/properties/cf?/uaa/authentication/client_credentials? 16 | value: 17 | client_id: ((cf.client_credentials.client_id)) 18 | client_secret: ((cf.client_credentials.client_secret)) 19 | -------------------------------------------------------------------------------- /system_tests/lifecycle/redis/fixtures/add_secure_binding.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - type: replace 3 | path: /instance_groups/name=broker/jobs/name=broker/consumes? 4 | value: 5 | credhub: 6 | from: credhub 7 | deployment: ((cf.deployment_name)) 8 | 9 | - type: replace 10 | path: /instance_groups/name=broker/jobs/name=broker/properties/secure_binding_credentials? 11 | value: 12 | enabled: true 13 | authentication: 14 | uaa: 15 | ca_cert: ((cf.uaa.ca_cert)) 16 | client_id: ((credhub.client_id)) 17 | client_secret: ((credhub.client_secret)) -------------------------------------------------------------------------------- /system_tests/lifecycle/redis/fixtures/enable_telemetry.yml: -------------------------------------------------------------------------------- 1 | - type: replace 2 | path: /instance_groups/name=broker/jobs/name=broker/properties/enable_telemetry? 3 | value: true 4 | -------------------------------------------------------------------------------- /system_tests/maintenance_info/fixtures/add_lifecycle_errand.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - type: replace 3 | path: /instance_groups/name=broker/jobs/name=broker/properties/service_catalog/plans/name=redis-small/lifecycle_errands? 4 | value: 5 | post_deploy: 6 | - name: health-check 7 | instances: [redis-server/0] 8 | 9 | - type: replace 10 | path: /instance_groups/name=broker/jobs/name=broker/properties/service_catalog/plans/name=redis-small/properties/colocated_errand? 11 | value: true 12 | -------------------------------------------------------------------------------- /system_tests/maintenance_info/fixtures/update_maintenance_info.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - type: replace 3 | path: /instance_groups/name=broker/jobs/name=broker/properties/service_catalog/plans/name=redis-small/maintenance_info/public/has_errand? 4 | value: true 5 | 6 | - type: replace 7 | path: /instance_groups/name=broker/jobs/name=broker/properties/service_catalog/plans/name=redis-small/maintenance_info/version? 8 | value: 7.8.8-beta 9 | 10 | - type: replace 11 | path: /instance_groups/name=broker/jobs/name=broker/properties/service_catalog/plans/name=redis-small/maintenance_info/description? 12 | value: rotated creds 13 | -------------------------------------------------------------------------------- /system_tests/orphan_deployments_tests/with_siapi/fixtures/update_service_catalog.yml: -------------------------------------------------------------------------------- 1 | - type: replace 2 | path: /instance_groups/name=broker/jobs/name=broker/properties/service_catalog/plans? 3 | value: 4 | - name: redis-orphan-with-siapi 5 | plan_id: ((plan_id)) 6 | properties: {persistence: false} 7 | metadata: {bullets: [], display_name: Redis plan} 8 | cf_service_access: enable 9 | description: Even more awesome Redis 10 | instance_groups: 11 | - name: redis-server 12 | azs: [((meta.az))] 13 | instances: 1 14 | networks: [((meta.services_subnet))] 15 | vm_type: ((meta.vm_type)) 16 | -------------------------------------------------------------------------------- /system_tests/orphan_deployments_tests/without_siapi/fixtures/update_orphan_deployments_job.yml: -------------------------------------------------------------------------------- 1 | - type: replace 2 | path: /instance_groups/name=broker/jobs/name=orphan-deployments/properties? 3 | value: 4 | broker_uri: https://((broker_uri)) 5 | tls: 6 | ca_cert: ((cf.router.ca_cert)) -------------------------------------------------------------------------------- /system_tests/orphan_deployments_tests/without_siapi/fixtures/update_service_catalog.yml: -------------------------------------------------------------------------------- 1 | - type: replace 2 | path: /instance_groups/name=broker/jobs/name=broker/properties/service_catalog/plans? 3 | value: 4 | - name: redis-orphan-without-siapi 5 | plan_id: ((plan_id)) 6 | properties: {persistence: false} 7 | metadata: {bullets: [], display_name: Redis plan} 8 | cf_service_access: enable 9 | description: Awesome Redis 10 | instance_groups: 11 | - name: redis-server 12 | azs: [((meta.az))] 13 | instances: 1 14 | networks: [((meta.services_subnet))] 15 | vm_type: ((meta.vm_type)) 16 | -------------------------------------------------------------------------------- /system_tests/pending_changes_blocked_tests/fixtures/skip_check_for_pending_changes.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - type: replace 3 | path: /instance_groups/name=broker/jobs/name=broker/properties/skip_check_for_pending_changes? 4 | value: true 5 | -------------------------------------------------------------------------------- /system_tests/recreate_all_tests/fixtures/update_recreate_all_job.yml: -------------------------------------------------------------------------------- 1 | - type: replace 2 | path: /instance_groups/name=broker/jobs/name=recreate-all-service-instances/properties? 3 | value: 4 | broker_uri: https://((broker_uri)) 5 | tls: 6 | ca_cert: ((cf.router.ca_cert)) -------------------------------------------------------------------------------- /system_tests/recreate_all_tests/recreate_all_suite_test.go: -------------------------------------------------------------------------------- 1 | package recreate_all_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | ) 9 | 10 | func TestRecreateAll(t *testing.T) { 11 | RegisterFailHandler(Fail) 12 | RunSpecs(t, "RecreateAll Suite") 13 | } 14 | -------------------------------------------------------------------------------- /system_tests/secure_manifests/fixtures/basic_service_catalog.yml: -------------------------------------------------------------------------------- 1 | - type: replace 2 | path: /instance_groups/name=broker/jobs/name=broker/properties/service_catalog/plans? 3 | value: 4 | - name: redis-small 5 | plan_id: ((plan_id))-small 6 | cf_service_access: enable 7 | description: Redis small 8 | metadata: {bullets: [], display_name: Redis small} 9 | properties: {persistence: false} 10 | instance_groups: 11 | - name: redis-server 12 | azs: [((meta.az))] 13 | networks: [((meta.services_subnet))] 14 | vm_type: ((meta.vm_type)) 15 | instances: 1 16 | -------------------------------------------------------------------------------- /system_tests/secure_manifests/fixtures/enable_secure_manifests.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - type: replace 3 | path: /instance_groups/name=broker/jobs/name=broker/properties/enable_secure_manifests? 4 | value: true 5 | 6 | - type: replace 7 | path: /instance_groups/name=broker/jobs/name=service-adapter/properties/secure_manifests_enabled? 8 | value: true 9 | 10 | - type: replace 11 | path: /instance_groups/name=broker/jobs/name=broker/properties/bosh_credhub_api? 12 | value: 13 | url: ((bosh_credhub_api.url)) 14 | root_ca_cert: ((bosh_credhub_api.root_ca_cert)) 15 | authentication: 16 | uaa: 17 | client_credentials: 18 | client_id: ((bosh_credhub_api.authentication.uaa.client_credentials.client_id)) 19 | client_secret: ((bosh_credhub_api.authentication.uaa.client_credentials.client_secret)) -------------------------------------------------------------------------------- /system_tests/test_helpers/cf_helpers/auth.go: -------------------------------------------------------------------------------- 1 | package cf_helpers 2 | 3 | import ( 4 | "regexp" 5 | 6 | . "github.com/onsi/gomega" 7 | "github.com/onsi/gomega/gexec" 8 | ) 9 | 10 | func GetOAuthToken() string { 11 | session := Cf("oauth-token") 12 | Expect(session).To(gexec.Exit(0)) 13 | oauthTokenOutput := string(session.Buffer().Contents()) 14 | oauthTokenRe := regexp.MustCompile(`(?m)^bearer .*$`) 15 | authToken := oauthTokenRe.FindString(oauthTokenOutput) 16 | Expect(authToken).ToNot(BeEmpty()) 17 | return authToken 18 | } 19 | -------------------------------------------------------------------------------- /system_tests/test_helpers/env_helpers/env_helpers.go: -------------------------------------------------------------------------------- 1 | package env_helpers 2 | 3 | import ( 4 | "fmt" 5 | "os" 6 | ) 7 | 8 | func ValidateEnvVars(vars ...string) error { 9 | var unsetVariables string 10 | for _, variableName := range vars { 11 | e := os.Getenv(variableName) 12 | if e == "" { 13 | unsetVariables += " " + variableName 14 | } 15 | } 16 | 17 | if unsetVariables != "" { 18 | return fmt.Errorf("the following required variables weren't set: %s", unsetVariables) 19 | } 20 | 21 | return nil 22 | } 23 | -------------------------------------------------------------------------------- /system_tests/test_helpers/gbytes/gbytes_suite_test.go: -------------------------------------------------------------------------------- 1 | package gbytes_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | ) 9 | 10 | func TestGbytes(t *testing.T) { 11 | RegisterFailHandler(Fail) 12 | RunSpecs(t, "Gbytes Suite") 13 | } 14 | -------------------------------------------------------------------------------- /system_tests/test_helpers/service_helpers/service_helpers.go: -------------------------------------------------------------------------------- 1 | package service_helpers 2 | 3 | type ServiceType int 4 | 5 | const ( 6 | Redis ServiceType = iota 7 | Kafka 8 | ) 9 | 10 | func (s ServiceType) GetServiceOpsFile() string { 11 | switch s { 12 | case Redis: 13 | return "redis.yml" 14 | case Kafka: 15 | return "kafka.yml" 16 | } 17 | return "" 18 | } 19 | -------------------------------------------------------------------------------- /system_tests/upgrade_all/basic/basic_suite_test.go: -------------------------------------------------------------------------------- 1 | package basic_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | ) 9 | 10 | func TestBasic(t *testing.T) { 11 | RegisterFailHandler(Fail) 12 | RunSpecs(t, "Basic Suite") 13 | } 14 | -------------------------------------------------------------------------------- /system_tests/upgrade_all/basic/fixtures/add_maintenance_info.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - type: replace 3 | path: /instance_groups/name=broker/jobs/name=broker/properties/service_catalog/maintenance_info? 4 | value: 5 | version: ((version)) 6 | description: This is an amazing broker! Version ((version)) -------------------------------------------------------------------------------- /system_tests/upgrade_all/basic/fixtures/remove_parallel_upgrade.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - type: replace 3 | path: /instance_groups/name=broker/jobs/name=upgrade-all-service-instances/properties? 4 | value: 5 | max_in_flight: 1 6 | polling_interval_seconds: 10 7 | canaries: 0 8 | 9 | -------------------------------------------------------------------------------- /system_tests/upgrade_all/basic/fixtures/update_upgrade_all_job.yml: -------------------------------------------------------------------------------- 1 | - type: replace 2 | path: /instance_groups/name=broker/jobs/name=upgrade-all-service-instances/properties? 3 | value: 4 | broker_uri: https://((broker_uri)) 5 | tls: 6 | ca_cert: ((cf.router.ca_cert)) 7 | 8 | -------------------------------------------------------------------------------- /system_tests/upgrade_all/feature_toggled/feature_toggled_suite_test.go: -------------------------------------------------------------------------------- 1 | package feature_toggled_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | ) 9 | 10 | func TestFeatureToggled(t *testing.T) { 11 | RegisterFailHandler(Fail) 12 | RunSpecs(t, "FeatureToggled Suite") 13 | } 14 | -------------------------------------------------------------------------------- /system_tests/upgrade_all/feature_toggled/fixtures/add_canary_filter.yml: -------------------------------------------------------------------------------- 1 | --- 2 | - type: replace 3 | path: /instance_groups/name=broker/jobs/name=upgrade-all-service-instances/properties?/canary_selection_params 4 | value: 5 | cf_org: canary_org 6 | cf_space: canary_space 7 | 8 | - type: replace 9 | path: /instance_groups/name=broker/jobs/name=upgrade-all-service-instances/properties?/canaries 10 | value: 1 11 | -------------------------------------------------------------------------------- /system_tests/upgrade_all/feature_toggled/fixtures/update_upgrade_all_job.yml: -------------------------------------------------------------------------------- 1 | - type: replace 2 | path: /instance_groups/name=broker/jobs/name=upgrade-all-service-instances/properties/broker_uri? 3 | value: https://((broker_uri)) 4 | 5 | - type: replace 6 | path: /instance_groups/name=broker/jobs/name=upgrade-all-service-instances/properties/tls? 7 | value: 8 | ca_cert: ((cf.router.ca_cert)) 9 | 10 | -------------------------------------------------------------------------------- /telemetry/telemetry_suite_test.go: -------------------------------------------------------------------------------- 1 | package telemetry_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | ) 9 | 10 | func TestTelemetry(t *testing.T) { 11 | RegisterFailHandler(Fail) 12 | RunSpecs(t, "Telemetry Suite") 13 | } 14 | -------------------------------------------------------------------------------- /tools/tools.go: -------------------------------------------------------------------------------- 1 | //go:build tools 2 | // +build tools 3 | 4 | package tools 5 | 6 | import ( 7 | _ "github.com/maxbrunsfeld/counterfeiter/v6" 8 | ) 9 | 10 | // This file imports packages that are used when running go generate, or used 11 | // during the development process but not otherwise depended on by built code. 12 | -------------------------------------------------------------------------------- /uaa/uaa_suite_test.go: -------------------------------------------------------------------------------- 1 | package uaa_test 2 | 3 | import ( 4 | "testing" 5 | 6 | . "github.com/onsi/ginkgo/v2" 7 | . "github.com/onsi/gomega" 8 | ) 9 | 10 | func TestUaa(t *testing.T) { 11 | RegisterFailHandler(Fail) 12 | RunSpecs(t, "Uaa Suite") 13 | } 14 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/brokerapi/v13/.gitignore: -------------------------------------------------------------------------------- 1 | vendor/ 2 | .idea 3 | *.coverprofile 4 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/brokerapi/v13/.goreleaser.yaml: -------------------------------------------------------------------------------- 1 | version: 2 2 | builds: 3 | - skip: true 4 | archives: [] 5 | changelog: 6 | sort: asc 7 | groups: 8 | - title: 'Breaking Changes' 9 | regexp: "^.*feat![(\\w)]*:+.*$" 10 | order: 0 11 | - title: 'Features' 12 | regexp: "^.*feat[(\\w)]*:+.*$" 13 | order: 1 14 | - title: 'Bug fixes' 15 | regexp: "^.*fix[(\\w)]*:+.*$" 16 | order: 2 17 | - title: 'Dependency updates' 18 | regexp: "^.*(deps)[(\\w)]*:+.*$" 19 | order: 3 20 | - title: Others 21 | order: 999 22 | checksum: 23 | algorithm: sha1 24 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/brokerapi/v13/NOTICE: -------------------------------------------------------------------------------- 1 | brokerapi 2 | 3 | Copyright (c) 2014-2018 Pivotal Software, Inc. All Rights Reserved. 4 | 5 | This product is licensed to you under the Apache License, Version 2.0 (the "License"). 6 | You may not use this product except in compliance with the License. 7 | 8 | This product may include a number of subcomponents with separate copyright notices 9 | and license terms. Your use of these subcomponents is subject to the terms and 10 | conditions of the subcomponent's license, as noted in the LICENSE file. 11 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/brokerapi/v13/context_utils.go: -------------------------------------------------------------------------------- 1 | package brokerapi 2 | 3 | import ( 4 | "context" 5 | 6 | "code.cloudfoundry.org/brokerapi/v13/utils" 7 | ) 8 | 9 | func AddServiceToContext(ctx context.Context, service *Service) context.Context { 10 | return utils.AddServiceToContext(ctx, service) 11 | } 12 | 13 | func RetrieveServiceFromContext(ctx context.Context) *Service { 14 | return utils.RetrieveServiceFromContext(ctx) 15 | } 16 | 17 | func AddServicePlanToContext(ctx context.Context, plan *ServicePlan) context.Context { 18 | return utils.AddServicePlanToContext(ctx, plan) 19 | } 20 | 21 | func RetrieveServicePlanFromContext(ctx context.Context) *ServicePlan { 22 | return utils.RetrieveServicePlanFromContext(ctx) 23 | } 24 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/brokerapi/v13/create_version_dir.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | 5 | version="${1:?"Usage: create_version_dir.sh "}" 6 | 7 | if [[ ! "$version" =~ ^v ]]; then 8 | version="v$version" 9 | fi 10 | 11 | go_files=$(find . ! -path "*/vendor/*" ! -path "*/fakes/*" ! -path "*/tools/*" ! -path "*/v[0-9]*/*" ! -name "*_test.go" -name "*.go") 12 | for f in $go_files ; do 13 | mkdir -p "$version/$(dirname $f)" 14 | cp $f $version/$(dirname $f) 15 | done 16 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/brokerapi/v13/domain/experimental_volume_mount.go: -------------------------------------------------------------------------------- 1 | package domain 2 | 3 | type ExperimentalVolumeMount struct { 4 | ContainerPath string `json:"container_path"` 5 | Mode string `json:"mode"` 6 | Private ExperimentalVolumeMountPrivate `json:"private"` 7 | } 8 | 9 | type ExperimentalVolumeMountPrivate struct { 10 | Driver string `json:"driver"` 11 | GroupID string `json:"group_id"` 12 | Config string `json:"config"` 13 | } 14 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/brokerapi/v13/domain/maintenance_info.go: -------------------------------------------------------------------------------- 1 | package domain 2 | 3 | import "reflect" 4 | 5 | type MaintenanceInfo struct { 6 | Public map[string]string `json:"public,omitempty"` 7 | Private string `json:"private,omitempty"` 8 | Version string `json:"version,omitempty"` 9 | Description string `json:"description,omitempty"` 10 | } 11 | 12 | func (m *MaintenanceInfo) Equals(input MaintenanceInfo) bool { 13 | return m.Version == input.Version && 14 | m.Private == input.Private && 15 | reflect.DeepEqual(m.Public, input.Public) 16 | } 17 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/brokerapi/v13/maintenance_info.go: -------------------------------------------------------------------------------- 1 | package brokerapi 2 | 3 | import ( 4 | "code.cloudfoundry.org/brokerapi/v13/domain" 5 | ) 6 | 7 | // Deprecated: Use code.cloudfoundry.org/brokerapi/v13/domain 8 | type MaintenanceInfo = domain.MaintenanceInfo 9 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/brokerapi/v13/middlewares/context_keys.go: -------------------------------------------------------------------------------- 1 | package middlewares 2 | 3 | type ContextKey string 4 | 5 | const ( 6 | CorrelationIDKey ContextKey = "correlation-id" 7 | InfoLocationKey ContextKey = "infoLocation" 8 | OriginatingIdentityKey ContextKey = "originatingIdentity" 9 | RequestIdentityKey ContextKey = "requestIdentity" 10 | ) 11 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/brokerapi/v13/middlewares/request_identity_header.go: -------------------------------------------------------------------------------- 1 | package middlewares 2 | 3 | import ( 4 | "context" 5 | "net/http" 6 | ) 7 | 8 | func AddRequestIdentityToContext(next http.Handler) http.Handler { 9 | return http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) { 10 | requestIdentity := req.Header.Get("X-Broker-API-Request-Identity") 11 | newCtx := context.WithValue(req.Context(), RequestIdentityKey, requestIdentity) 12 | next.ServeHTTP(w, req.WithContext(newCtx)) 13 | }) 14 | } 15 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/brokerapi/v13/staticcheck.conf: -------------------------------------------------------------------------------- 1 | # When adding staticcheck, we thought it was better to get it working with some checks disabled 2 | # rather than fixing all the problems in one go. Some problems cannot be fixed without making 3 | # breaking changes. 4 | checks = ["all", "-SA1019", "-ST1000", "-ST1003", "-ST1005", "-ST1012", "-ST1021", "-ST1020"] 5 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/credhub-cli/NOTICE: -------------------------------------------------------------------------------- 1 | credhub-cli 2 | 3 | Copyright (c) 2016-Present CloudFoundry.org Foundation, Inc. All Rights Reserved. 4 | 5 | Licensed under the Apache License, Version 2.0 (the "License"); 6 | you may not use this file except in compliance with the License. 7 | You may obtain a copy of the License at 8 | 9 | http://www.apache.org/licenses/LICENSE-2.0 10 | 11 | Unless required by applicable law or agreed to in writing, software 12 | distributed under the License is distributed on an "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | See the License for the specific language governing permissions and 15 | limitations under the License. 16 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/credhub-cli/credhub/auth/noop.go: -------------------------------------------------------------------------------- 1 | package auth 2 | 3 | import "net/http" 4 | 5 | // NoopStrategy will submit requests with no additional authentication 6 | type NoopStrategy struct { 7 | *http.Client 8 | } 9 | 10 | var _ Strategy = new(NoopStrategy) 11 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/credhub-cli/credhub/auth/strategy.go: -------------------------------------------------------------------------------- 1 | // CredHub authentication strategies 2 | package auth 3 | 4 | import ( 5 | "net/http" 6 | ) 7 | 8 | // Strategy provides http.Client-like interface to send authenticated requests to the server 9 | // 10 | // Modifies the request and client to include authentication based on the authentication strategy 11 | type Strategy interface { 12 | Do(req *http.Request) (*http.Response, error) 13 | } 14 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/credhub-cli/credhub/delete.go: -------------------------------------------------------------------------------- 1 | package credhub 2 | 3 | import ( 4 | "net/http" 5 | "net/url" 6 | ) 7 | 8 | // Delete will delete all versions of a credential by name 9 | func (ch *CredHub) Delete(name string) error { 10 | query := url.Values{} 11 | query.Set("name", name) 12 | resp, err := ch.Request(http.MethodDelete, "/api/v1/data", query, nil, true) 13 | 14 | if err == nil { 15 | defer resp.Body.Close() 16 | } 17 | 18 | return err 19 | } 20 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/credhub-cli/credhub/mode.go: -------------------------------------------------------------------------------- 1 | package credhub 2 | 3 | type Mode string 4 | 5 | const ( 6 | Overwrite Mode = "overwrite" 7 | NoOverwrite Mode = "no-overwrite" 8 | Converge Mode = "converge" 9 | ) 10 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/credhub-cli/credhub/permissions/types.go: -------------------------------------------------------------------------------- 1 | // CredHub permission types 2 | package permissions 3 | 4 | type Permission struct { 5 | Actor string `json:"actor"` 6 | Operations []string `json:"operations"` 7 | Path string `json:"path"` 8 | UUID string `json:"uuid"` 9 | } 10 | 11 | type V1_Permission struct { 12 | Actor string `json:"actor"` 13 | Operations []string `json:"operations"` 14 | } 15 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/credhub-cli/credhub/server/types.go: -------------------------------------------------------------------------------- 1 | // CredHub server types 2 | package server 3 | 4 | type Info struct { 5 | App struct { 6 | Name string 7 | Version string 8 | } 9 | AuthServer struct { 10 | URL string 11 | } `json:"auth-server"` 12 | } 13 | 14 | type VersionData struct { 15 | Version string 16 | } 17 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/lager/v3/.gitignore: -------------------------------------------------------------------------------- 1 | # Builds 2 | bin 3 | 4 | # Binaries for programs and plugins 5 | *.exe 6 | *.exe~ 7 | *.dll 8 | *.so 9 | *.dylib 10 | 11 | # IntelliJ 12 | .idea 13 | 14 | # Dependencies 15 | vendor 16 | 17 | # macOS 18 | .DS_Store 19 | 20 | # Vim files 21 | [._]*.s[a-v][a-z] 22 | !*.svg # comment out if you don't need vector files 23 | [._]*.sw[a-p] 24 | [._]s[a-rt-v][a-z] 25 | [._]ss[a-gi-z] 26 | [._]sw[a-p] 27 | Session.vim 28 | Sessionx.vim 29 | .netrwhist 30 | *~ 31 | tags 32 | [._]*.un~ 33 | 34 | # Test binary, built with `go test -c` 35 | *.test 36 | 37 | # Output of the go coverage tool, specifically when used with LiteIDE 38 | *.out 39 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/lager/v3/CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @cloudfoundry/wg-app-runtime-platform-diego-approvers 2 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/lager/v3/internal/truncate/package.go: -------------------------------------------------------------------------------- 1 | package truncate // import "code.cloudfoundry.org/lager/v3/internal/truncate" 2 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/lager/v3/tools.go: -------------------------------------------------------------------------------- 1 | //go:build tools 2 | // +build tools 3 | 4 | package lager 5 | 6 | import ( 7 | _ "github.com/onsi/ginkgo/v2/ginkgo" 8 | ) 9 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/tlsconfig/.gitignore: -------------------------------------------------------------------------------- 1 | # Binaries for programs and plugins 2 | *.exe 3 | *.exe~ 4 | *.dll 5 | *.so 6 | *.dylib 7 | 8 | # Test binary, built with `go test -c` 9 | *.test 10 | 11 | # Output of the go coverage tool, specifically when used with LiteIDE 12 | *.out 13 | 14 | # Dependency directories 15 | vendor/ 16 | 17 | # Go workspace file 18 | go.work -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/tlsconfig/CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @cloudfoundry/wg-app-runtime-platform-diego-approvers 2 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/tlsconfig/staticcheck.conf: -------------------------------------------------------------------------------- 1 | checks = ["all", "-ST1008","-ST1005","-ST1001","-ST1012","-ST1000","-ST1003","-ST1016","-ST1020","-ST1021","-ST1022"] 2 | -------------------------------------------------------------------------------- /vendor/code.cloudfoundry.org/tlsconfig/verify.go: -------------------------------------------------------------------------------- 1 | package tlsconfig 2 | 3 | import ( 4 | "crypto/x509" 5 | "fmt" 6 | "time" 7 | ) 8 | 9 | const timeFormat = "2006-01-02 15:04:05 MST" 10 | 11 | func checkExpiration(cert *x509.Certificate) error { 12 | now := time.Now() 13 | 14 | if now.Before(cert.NotBefore) { 15 | return fmt.Errorf("certificate is not yet valid: validity starts at %s but current time is %s", cert.NotBefore.Format(timeFormat), now.Format(timeFormat)) 16 | } 17 | 18 | if now.After(cert.NotAfter) { 19 | return fmt.Errorf("certificate has expired: validity ended at %s but current time is %s", cert.NotAfter.Format(timeFormat), now.Format(timeFormat)) 20 | } 21 | 22 | return nil 23 | } 24 | -------------------------------------------------------------------------------- /vendor/github.com/blang/semver/v4/json.go: -------------------------------------------------------------------------------- 1 | package semver 2 | 3 | import ( 4 | "encoding/json" 5 | ) 6 | 7 | // MarshalJSON implements the encoding/json.Marshaler interface. 8 | func (v Version) MarshalJSON() ([]byte, error) { 9 | return json.Marshal(v.String()) 10 | } 11 | 12 | // UnmarshalJSON implements the encoding/json.Unmarshaler interface. 13 | func (v *Version) UnmarshalJSON(data []byte) (err error) { 14 | var versionString string 15 | 16 | if err = json.Unmarshal(data, &versionString); err != nil { 17 | return 18 | } 19 | 20 | *v, err = Parse(versionString) 21 | 22 | return 23 | } 24 | -------------------------------------------------------------------------------- /vendor/github.com/blang/semver/v4/sort.go: -------------------------------------------------------------------------------- 1 | package semver 2 | 3 | import ( 4 | "sort" 5 | ) 6 | 7 | // Versions represents multiple versions. 8 | type Versions []Version 9 | 10 | // Len returns length of version collection 11 | func (s Versions) Len() int { 12 | return len(s) 13 | } 14 | 15 | // Swap swaps two versions inside the collection by its indices 16 | func (s Versions) Swap(i, j int) { 17 | s[i], s[j] = s[j], s[i] 18 | } 19 | 20 | // Less checks if version at index i is less than version at index j 21 | func (s Versions) Less(i, j int) bool { 22 | return s[i].LT(s[j]) 23 | } 24 | 25 | // Sort sorts a slice of versions 26 | func Sort(versions []Version) { 27 | sort.Sort(Versions(versions)) 28 | } 29 | -------------------------------------------------------------------------------- /vendor/github.com/blang/semver/v4/sql.go: -------------------------------------------------------------------------------- 1 | package semver 2 | 3 | import ( 4 | "database/sql/driver" 5 | "fmt" 6 | ) 7 | 8 | // Scan implements the database/sql.Scanner interface. 9 | func (v *Version) Scan(src interface{}) (err error) { 10 | var str string 11 | switch src := src.(type) { 12 | case string: 13 | str = src 14 | case []byte: 15 | str = string(src) 16 | default: 17 | return fmt.Errorf("version.Scan: cannot convert %T to string", src) 18 | } 19 | 20 | if t, err := Parse(str); err == nil { 21 | *v = t 22 | } 23 | 24 | return 25 | } 26 | 27 | // Value implements the database/sql/driver.Valuer interface. 28 | func (v Version) Value() (driver.Value, error) { 29 | return v.String(), nil 30 | } 31 | -------------------------------------------------------------------------------- /vendor/github.com/bmatcuk/doublestar/.gitignore: -------------------------------------------------------------------------------- 1 | # vi 2 | *~ 3 | *.swp 4 | *.swo 5 | 6 | # Compiled Object files, Static and Dynamic libs (Shared Objects) 7 | *.o 8 | *.a 9 | *.so 10 | 11 | # Folders 12 | _obj 13 | _test 14 | 15 | # Architecture specific extensions/prefixes 16 | *.[568vq] 17 | [568vq].out 18 | 19 | *.cgo1.go 20 | *.cgo2.c 21 | _cgo_defun.c 22 | _cgo_gotypes.go 23 | _cgo_export.* 24 | 25 | _testmain.go 26 | 27 | *.exe 28 | *.test 29 | *.prof 30 | 31 | # test directory 32 | test/ 33 | -------------------------------------------------------------------------------- /vendor/github.com/bmatcuk/doublestar/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - 1.12 5 | - 1.13 6 | - 1.14 7 | 8 | os: 9 | - linux 10 | - windows 11 | 12 | before_install: 13 | - go get -t -v ./... 14 | 15 | script: 16 | - go test -race -coverprofile=coverage.txt -covermode=atomic 17 | 18 | after_success: 19 | - bash <(curl -s https://codecov.io/bash) 20 | 21 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry-community/go-uaa/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | sudo: false 3 | go: 4 | - "1.12" 5 | - "1.13" 6 | 7 | before_install: 8 | - go get -u golang.org/x/tools/cmd/goimports 9 | 10 | script: 11 | - FILES=`find . -iname '*.go' -type f -not -path "./vendor/*"` 12 | # linting 13 | - env GO111MODULE=on goimports -d $FILES 14 | # testing 15 | - env GO111MODULE=on go test -v -race -covermode=atomic -cover ./... 16 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry-community/go-uaa/contains.go: -------------------------------------------------------------------------------- 1 | package uaa 2 | 3 | func contains(slice []string, toFind string) bool { 4 | for _, a := range slice { 5 | if a == toFind { 6 | return true 7 | } 8 | } 9 | return false 10 | } 11 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry-community/go-uaa/generate.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -ex 3 | DIR="$(dirname "${BASH_SOURCE[0]}")" 4 | cd "$DIR" 5 | go generate ./... 6 | find . -name '*.go' -type f -not -path './vendor/*' -exec go fmt {} \;; 7 | cd - 8 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry-community/go-uaa/health.go: -------------------------------------------------------------------------------- 1 | package uaa 2 | 3 | // IsHealthy returns true if the UAA is healthy, false if it is unhealthy, and 4 | // an error if there is an issue making a request to the /healthz endpoint. 5 | func (a *API) IsHealthy() (bool, error) { 6 | u := urlWithPath(*a.TargetURL, "/healthz") 7 | resp, err := a.Client.Get(u.String()) 8 | if err != nil { 9 | return false, err 10 | } 11 | if resp.StatusCode == 200 { 12 | return true, nil 13 | } 14 | 15 | return false, nil 16 | } 17 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry-community/go-uaa/issuer.go: -------------------------------------------------------------------------------- 1 | package uaa 2 | 3 | import ( 4 | "net/http" 5 | ) 6 | 7 | type OpenIDConfig struct { 8 | Issuer string `json:"issuer"` 9 | } 10 | 11 | // Issuer retrieves an issuer name from openid configuration 12 | func (a *API) Issuer() (string, error) { 13 | url := urlWithPath(*a.TargetURL, "/.well-known/openid-configuration") 14 | 15 | config := &OpenIDConfig{} 16 | err := a.doJSON(http.MethodGet, &url, nil, config, false) 17 | if err != nil { 18 | return "", err 19 | } 20 | return config.Issuer, nil 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry-community/go-uaa/page.go: -------------------------------------------------------------------------------- 1 | package uaa 2 | 3 | // Page represents a page of information returned from the UAA API. 4 | type Page struct { 5 | StartIndex int `json:"startIndex"` 6 | ItemsPerPage int `json:"itemsPerPage"` 7 | TotalResults int `json:"totalResults"` 8 | } 9 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry-community/go-uaa/passwordcredentials/README.md: -------------------------------------------------------------------------------- 1 | ### Password Credentials Token Source 2 | 3 | This package is extracted from https://github.com/golang/oauth2/issues/186. When 4 | the `passwordcredentials` token source is included in the standard library, this 5 | package will be removed and the go-uaa package will switch to use the standard 6 | library implementation. 7 | 8 | ### License 9 | 10 | > Copyright 2014 The Go Authors. All rights reserved. 11 | > Use of this source code is governed by a BSD-style 12 | > license that can be found in the LICENSE file: 13 | > 14 | > https://github.com/golang/oauth2/blob/1e0a3fa8ba9a5c9eb35c271780101fdaf1b205d7/LICENSE 15 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry-community/go-uaa/sort.go: -------------------------------------------------------------------------------- 1 | package uaa 2 | 3 | // SortOrder defines the sort order when listing users or groups. 4 | type SortOrder string 5 | 6 | const ( 7 | // SortAscending sorts in ascending order. 8 | SortAscending = SortOrder("ascending") 9 | // SortDescending sorts in descending order. 10 | SortDescending = SortOrder("descending") 11 | ) 12 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry-community/go-uaa/token_key.go: -------------------------------------------------------------------------------- 1 | package uaa 2 | 3 | import ( 4 | "net/http" 5 | ) 6 | 7 | // JWK represents a JSON Web Key (https://tools.ietf.org/html/rfc7517). 8 | type JWK struct { 9 | Kty string `json:"kty"` 10 | E string `json:"e,omitempty"` 11 | Use string `json:"use"` 12 | Kid string `json:"kid"` 13 | Alg string `json:"alg"` 14 | Value string `json:"value"` 15 | N string `json:"n,omitempty"` 16 | } 17 | 18 | // TokenKey retrieves a JWK from the token_key endpoint 19 | // (http://docs.cloudfoundry.org/api/uaa/version/4.14.0/index.html#token-key-s). 20 | func (a *API) TokenKey() (*JWK, error) { 21 | url := urlWithPath(*a.TargetURL, "/token_key") 22 | 23 | key := &JWK{} 24 | err := a.doJSON(http.MethodGet, &url, nil, key, false) 25 | if err != nil { 26 | return nil, err 27 | } 28 | return key, err 29 | } 30 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry-community/go-uaa/token_keys.go: -------------------------------------------------------------------------------- 1 | package uaa 2 | 3 | import ( 4 | "net/http" 5 | ) 6 | 7 | // Keys is a slice of JSON Web Keys. 8 | type Keys struct { 9 | Keys []JWK `json:"keys"` 10 | } 11 | 12 | // TokenKeys gets the JSON Web Token signing keys for the UAA server. 13 | func (a *API) TokenKeys() ([]JWK, error) { 14 | url := urlWithPath(*a.TargetURL, "/token_keys") 15 | keys := &Keys{} 16 | err := a.doJSON(http.MethodGet, &url, nil, keys, false) 17 | if err != nil { 18 | key, e := a.TokenKey() 19 | if e != nil { 20 | return nil, e 21 | } 22 | return []JWK{*key}, nil 23 | } 24 | return keys.Keys, err 25 | } 26 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-cli/v7/NOTICE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015-Present CloudFoundry.org Foundation, Inc. All Rights Reserved. 2 | 3 | This project contains software that is Copyright (c) 2014-2015 Pivotal Software, Inc. 4 | 5 | This project is licensed to you under the Apache License, Version 2.0 (the "License"). 6 | You may not use this project except in compliance with the License. 7 | 8 | This project may include a number of subcomponents with separate copyright notices 9 | and license terms. Your use of these subcomponents is subject to the terms and 10 | conditions of the subcomponent's license, as noted in the LICENSE file. 11 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-cli/v7/common/util/url_helper.go: -------------------------------------------------------------------------------- 1 | package util 2 | 3 | import "regexp" 4 | 5 | var scrubUserinfoRegex = regexp.MustCompile("(https?://).*:.*@") 6 | 7 | func RedactBasicAuth(url string) string { 8 | redactedUrl := scrubUserinfoRegex.ReplaceAllString(url, "$1:@") 9 | return redactedUrl 10 | } 11 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-cli/v7/director/http_client_request.go: -------------------------------------------------------------------------------- 1 | package director 2 | 3 | func (d DirectorImpl) NewHTTPClientRequest() ClientRequest { 4 | return d.client.clientRequest 5 | } 6 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-cli/v7/director/request_sanitizer.go: -------------------------------------------------------------------------------- 1 | package director 2 | 3 | import ( 4 | "net/http" 5 | ) 6 | 7 | type RequestSanitizer struct { 8 | Request http.Request 9 | } 10 | 11 | // This will destructively mutate rs.Request 12 | func (rs RequestSanitizer) SanitizeRequest() (http.Request, error) { 13 | rs.sanitizeAuthorization() 14 | 15 | return rs.Request, nil 16 | } 17 | 18 | func (rs RequestSanitizer) sanitizeAuthorization() { 19 | if rs.Request.Header.Get("Authorization") != "" { 20 | rs.Request.Header.Del("Authorization") 21 | rs.Request.Header.Add("Authorization", "[removed]") 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-cli/v7/director/skip_drain.go: -------------------------------------------------------------------------------- 1 | package director 2 | 3 | import "strings" 4 | 5 | type SkipDrains []SkipDrain 6 | 7 | type SkipDrain struct { 8 | All bool 9 | Slug InstanceGroupOrInstanceSlug 10 | } 11 | 12 | func (s SkipDrains) AsQueryValue() string { 13 | skips := []string{} 14 | 15 | for _, skipDrain := range s { 16 | if skipDrain.All { 17 | return "*" 18 | } 19 | 20 | skips = append(skips, skipDrain.Slug.String()) 21 | } 22 | 23 | return strings.Join(skips, ",") 24 | } 25 | 26 | func (s *SkipDrain) UnmarshalFlag(data string) error { 27 | if data == "*" || data == "" { 28 | s.All = true 29 | } else { 30 | var err error 31 | 32 | s.Slug, err = NewInstanceGroupOrInstanceSlugFromString(data) 33 | if err != nil { 34 | return err 35 | } 36 | } 37 | 38 | return nil 39 | } 40 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-cli/v7/director/time_parser.go: -------------------------------------------------------------------------------- 1 | package director 2 | 3 | import ( 4 | "time" 5 | ) 6 | 7 | type TimeParser struct{} 8 | 9 | func (p TimeParser) Parse(s string) (time.Time, error) { 10 | if len(s) == 0 { 11 | return time.Time{}, nil 12 | } 13 | 14 | parsed, err := time.Parse("2006-01-02 15:04:05 -0700", s) 15 | if err != nil { 16 | parsed, err = time.Parse("2006-01-02 15:04:05 MST", s) 17 | if err != nil { 18 | parsed, err = time.Parse(time.RFC3339, s) 19 | if err != nil { 20 | return time.Time{}, err 21 | } 22 | } 23 | } 24 | 25 | return parsed.UTC(), nil 26 | } 27 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-cli/v7/io/interfaces.go: -------------------------------------------------------------------------------- 1 | package io 2 | 3 | import sysio "io" 4 | 5 | type ReadSeekCloser interface { 6 | sysio.Seeker 7 | sysio.ReadCloser 8 | } 9 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-cli/v7/uaa/client.go: -------------------------------------------------------------------------------- 1 | package uaa 2 | 3 | import ( 4 | "github.com/cloudfoundry/bosh-utils/httpclient" 5 | boshlog "github.com/cloudfoundry/bosh-utils/logger" 6 | ) 7 | 8 | type Client struct { 9 | clientRequest ClientRequest 10 | } 11 | 12 | func NewClient(endpoint string, client string, clientSecret string, httpClient *httpclient.HTTPClient, logger boshlog.Logger) Client { 13 | return Client{NewClientRequest(endpoint, client, clientSecret, httpClient, logger)} 14 | } 15 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-cli/v7/uaa/client_token_session.go: -------------------------------------------------------------------------------- 1 | package uaa 2 | 3 | type ClientTokenSession struct { 4 | uaa UAA 5 | token AccessToken 6 | } 7 | 8 | func NewClientTokenSession(uaa UAA) *ClientTokenSession { 9 | return &ClientTokenSession{uaa: uaa} 10 | } 11 | 12 | func (c *ClientTokenSession) TokenFunc(retried bool) (string, error) { 13 | if c.token == nil || retried { 14 | token, err := c.uaa.ClientCredentialsGrant() 15 | if err != nil { 16 | return "", err 17 | } 18 | 19 | c.token = token 20 | } 21 | 22 | return c.token.Type() + " " + c.token.Value(), nil 23 | } 24 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-utils/NOTICE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015-Present CloudFoundry.org Foundation, Inc. All Rights Reserved. 2 | 3 | This project contains software that is Copyright (c) 2015 Pivotal Software, Inc. 4 | 5 | This project is licensed to you under the Apache License, Version 2.0 (the "License"). 6 | 7 | You may not use this project except in compliance with the License. 8 | 9 | This project may include a number of subcomponents with separate copyright notices 10 | and license terms. Your use of these subcomponents is subject to the terms and 11 | conditions of the subcomponent's license, as noted in the LICENSE file. 12 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-utils/crypto/interfaces.go: -------------------------------------------------------------------------------- 1 | package crypto 2 | 3 | import ( 4 | "io" 5 | 6 | boshsys "github.com/cloudfoundry/bosh-utils/system" 7 | "os" 8 | ) 9 | 10 | type Digest interface { 11 | Verify(io.Reader) error 12 | VerifyFilePath(filePath string, fs boshsys.FileSystem) error 13 | Algorithm() Algorithm 14 | String() string 15 | } 16 | 17 | //go:generate counterfeiter . ArchiveDigestFilePathReader 18 | type ArchiveDigestFilePathReader interface { 19 | OpenFile(path string, flag int, perm os.FileMode) (boshsys.File, error) 20 | } 21 | 22 | var _ Digest = digestImpl{} 23 | var _ Digest = MultipleDigest{} 24 | 25 | type Algorithm interface { 26 | CreateDigest(io.Reader) (Digest, error) 27 | Name() string 28 | } 29 | 30 | var _ Algorithm = algorithmSHAImpl{} 31 | var _ Algorithm = unknownAlgorithmImpl{} 32 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-utils/errors/multi_error.go: -------------------------------------------------------------------------------- 1 | package errors 2 | 3 | import ( 4 | "strings" 5 | ) 6 | 7 | type MultiError struct { 8 | Errors []error 9 | } 10 | 11 | func NewMultiError(errors ...error) error { 12 | return MultiError{Errors: errors} 13 | } 14 | 15 | func (e MultiError) Error() string { 16 | errors := make([]string, len(e.Errors), len(e.Errors)) //nolint:gosimple 17 | for i, err := range e.Errors { 18 | errors[i] = err.Error() 19 | } 20 | return strings.Join(errors, "\n") 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-utils/property/list.go: -------------------------------------------------------------------------------- 1 | package property 2 | 3 | type List []Property 4 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-utils/property/map.go: -------------------------------------------------------------------------------- 1 | package property 2 | 3 | type Map map[string]Property 4 | 5 | func (m *Map) UnmarshalYAML(unmarshal func(interface{}) error) error { 6 | rawMap := map[interface{}]interface{}{} 7 | err := unmarshal(&rawMap) 8 | if err != nil { 9 | return err 10 | } 11 | 12 | *m, err = BuildMap(rawMap) 13 | if err != nil { 14 | return err 15 | } 16 | 17 | return nil 18 | } 19 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-utils/property/property.go: -------------------------------------------------------------------------------- 1 | package property 2 | 3 | // Property represents a constrained value which can be a Map, a List, or a primitive. 4 | // If the property is a Map, keys must be strings and values are properties. 5 | // These constraints are only enforced by the builder functions: Build, BuildMap, and BuildList. 6 | type Property interface{} 7 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-utils/retrystrategy/retry_strategy.go: -------------------------------------------------------------------------------- 1 | package retrystrategy 2 | 3 | type RetryStrategy interface { 4 | Try() error 5 | } 6 | 7 | type Retryable interface { 8 | Attempt() (shouldRetry bool, err error) 9 | } 10 | 11 | type retryable struct { 12 | attemptFunc func() (bool, error) 13 | } 14 | 15 | func (r *retryable) Attempt() (bool, error) { 16 | return r.attemptFunc() 17 | } 18 | 19 | func NewRetryable(attemptFunc func() (bool, error)) Retryable { 20 | return &retryable{ 21 | attemptFunc: attemptFunc, 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-utils/system/exec_cmd_runner_unix.go: -------------------------------------------------------------------------------- 1 | //go:build !windows 2 | // +build !windows 3 | 4 | package system 5 | 6 | import ( 7 | "strings" 8 | ) 9 | 10 | // mergeEnv merges system and command environments variables. Command variables 11 | // override any system variable with the same key. 12 | func mergeEnv(sysEnv []string, cmdEnv map[string]string) []string { 13 | var env []string 14 | // cmdEnv has precedence and overwrites any duplicate vars 15 | for k, v := range cmdEnv { 16 | env = append(env, k+"="+v) 17 | } 18 | for _, s := range sysEnv { 19 | if n := strings.IndexByte(s, '='); n != -1 { 20 | k := s[:n] // key 21 | if _, found := cmdEnv[k]; !found { 22 | env = append(env, s) 23 | } 24 | } 25 | } 26 | return env 27 | } 28 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-utils/uuid/generator_interface.go: -------------------------------------------------------------------------------- 1 | package uuid 2 | 3 | type Generator interface { 4 | Generate() (uuid string, err error) 5 | } 6 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/bosh-utils/uuid/uuid_v4_generator.go: -------------------------------------------------------------------------------- 1 | package uuid 2 | 3 | import ( 4 | bosherr "github.com/cloudfoundry/bosh-utils/errors" 5 | gouuid "github.com/nu7hatch/gouuid" 6 | ) 7 | 8 | type uuidV4Generator struct { 9 | } 10 | 11 | func NewGenerator() (gen Generator) { 12 | return uuidV4Generator{} 13 | } 14 | 15 | func (gen uuidV4Generator) Generate() (uuidStr string, err error) { 16 | uuid, err := gouuid.NewV4() 17 | if err != nil { 18 | err = bosherr.WrapError(err, "Generating V4 uuid") 19 | return 20 | } 21 | 22 | uuidStr = uuid.String() 23 | return 24 | } 25 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/go-socks5/.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 | .idea 24 | go.sum 25 | vendor 26 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/go-socks5/.golangci.yml: -------------------------------------------------------------------------------- 1 | version: "2" 2 | 3 | linters: 4 | default: standard 5 | 6 | settings: 7 | errcheck: 8 | check-blank: true # assignment to blank identifier: `_ := someFunc()`. 9 | 10 | formatters: 11 | enable: 12 | - goimports 13 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/go-socks5/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | go: 3 | - 1.1 4 | - tip 5 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/go-socks5/credentials.go: -------------------------------------------------------------------------------- 1 | package socks5 2 | 3 | // CredentialStore is used to support user/pass authentication 4 | type CredentialStore interface { 5 | Valid(user, password string) bool 6 | } 7 | 8 | // StaticCredentials enables using a map directly as a credential store 9 | type StaticCredentials map[string]string 10 | 11 | func (s StaticCredentials) Valid(user, password string) bool { 12 | pass, ok := s[user] 13 | if !ok { 14 | return false 15 | } 16 | return password == pass 17 | } 18 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/go-socks5/resolver.go: -------------------------------------------------------------------------------- 1 | package socks5 2 | 3 | import ( 4 | "net" 5 | 6 | "golang.org/x/net/context" 7 | ) 8 | 9 | // NameResolver is used to implement custom name resolution 10 | type NameResolver interface { 11 | Resolve(ctx context.Context, name string) (context.Context, net.IP, error) 12 | } 13 | 14 | // DNSResolver uses the system DNS to resolve host names 15 | type DNSResolver struct{} 16 | 17 | func (d DNSResolver) Resolve(ctx context.Context, name string) (context.Context, net.IP, error) { 18 | addr, err := net.ResolveIPAddr("ip", name) 19 | if err != nil { 20 | return ctx, nil, err 21 | } 22 | return ctx, addr.IP, err 23 | } 24 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/socks5-proxy/.gitignore: -------------------------------------------------------------------------------- 1 | .idea 2 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/socks5-proxy/.golangci.yml: -------------------------------------------------------------------------------- 1 | version: "2" 2 | 3 | linters: 4 | default: standard 5 | 6 | settings: 7 | errcheck: 8 | check-blank: true # assignment to blank identifier: `_ := someFunc()`. 9 | 10 | formatters: 11 | enable: 12 | - goimports 13 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/socks5-proxy/NOTICE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2017-Present CloudFoundry.org Foundation, Inc. All Rights Reserved. 2 | 3 | This project is licensed to you under the Apache License, Version 2.0 (the "License"). 4 | You may not use this project except in compliance with the License. 5 | 6 | This project may include a number of subcomponents with separate copyright notices 7 | and license terms. Your use of these subcomponents is subject to the terms and 8 | conditions of the subcomponent's license, as noted in the LICENSE file. 9 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/socks5-proxy/README.md: -------------------------------------------------------------------------------- 1 | # socks5-proxy 2 | This is a go library for starting a socks5 proxy server via SSH. 3 | 4 | It is intended to be used as a library by Golang CLIs that need to proxy via an SSH jumpbox, which is a common configuration for BOSH operators, so several CLIs in Cloud Foundry could benefit from its use. 5 | -------------------------------------------------------------------------------- /vendor/github.com/cloudfoundry/socks5-proxy/ssh_client_config.go: -------------------------------------------------------------------------------- 1 | package proxy 2 | 3 | import ( 4 | "time" 5 | 6 | "golang.org/x/crypto/ssh" 7 | ) 8 | 9 | func NewSSHClientConfig(user string, hostKeyCallback ssh.HostKeyCallback, authMethods ...ssh.AuthMethod) *ssh.ClientConfig { 10 | return &ssh.ClientConfig{ 11 | Timeout: 30 * time.Second, 12 | User: user, 13 | HostKeyCallback: hostKeyCallback, 14 | Auth: authMethods, 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /vendor/github.com/cppforlife/go-semi-semantic/version/version_sort.go: -------------------------------------------------------------------------------- 1 | package version 2 | 3 | type AscSorting []Version 4 | 5 | func (s AscSorting) Len() int { return len(s) } 6 | func (s AscSorting) Less(i, j int) bool { return s[i].IsLt(s[j]) } 7 | func (s AscSorting) Swap(i, j int) { s[i], s[j] = s[j], s[i] } 8 | -------------------------------------------------------------------------------- /vendor/github.com/gabriel-vasile/mimetype/.gitattributes: -------------------------------------------------------------------------------- 1 | testdata/* linguist-vendored 2 | -------------------------------------------------------------------------------- /vendor/github.com/gabriel-vasile/mimetype/.golangci.yml: -------------------------------------------------------------------------------- 1 | version: "2" 2 | linters: 3 | exclusions: 4 | presets: 5 | - std-error-handling 6 | -------------------------------------------------------------------------------- /vendor/github.com/gabriel-vasile/mimetype/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | ## Contribute 2 | Contributions to **mimetype** are welcome. If you find an issue and you consider 3 | contributing, you can use the [Github issues tracker](https://github.com/gabriel-vasile/mimetype/issues) 4 | in order to report it, or better yet, open a pull request. 5 | 6 | Code contributions must respect these rules: 7 | - code must be test covered 8 | - code must be formatted using gofmt tool 9 | - exported names must be documented 10 | 11 | **Important**: By submitting a pull request, you agree to allow the project 12 | owner to license your work under the same license as that used by the project. 13 | -------------------------------------------------------------------------------- /vendor/github.com/gabriel-vasile/mimetype/internal/magic/database.go: -------------------------------------------------------------------------------- 1 | package magic 2 | 3 | var ( 4 | // Sqlite matches an SQLite database file. 5 | Sqlite = prefix([]byte{ 6 | 0x53, 0x51, 0x4c, 0x69, 0x74, 0x65, 0x20, 0x66, 7 | 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x20, 0x33, 0x00, 8 | }) 9 | // MsAccessAce matches Microsoft Access dababase file. 10 | MsAccessAce = offset([]byte("Standard ACE DB"), 4) 11 | // MsAccessMdb matches legacy Microsoft Access database file (JET, 2003 and earlier). 12 | MsAccessMdb = offset([]byte("Standard Jet DB"), 4) 13 | ) 14 | -------------------------------------------------------------------------------- /vendor/github.com/go-logr/logr/.golangci.yaml: -------------------------------------------------------------------------------- 1 | version: "2" 2 | 3 | run: 4 | timeout: 1m 5 | tests: true 6 | 7 | linters: 8 | default: none 9 | enable: # please keep this alphabetized 10 | - asasalint 11 | - asciicheck 12 | - copyloopvar 13 | - dupl 14 | - errcheck 15 | - forcetypeassert 16 | - goconst 17 | - gocritic 18 | - govet 19 | - ineffassign 20 | - misspell 21 | - musttag 22 | - revive 23 | - staticcheck 24 | - unused 25 | 26 | issues: 27 | max-issues-per-linter: 0 28 | max-same-issues: 10 29 | -------------------------------------------------------------------------------- /vendor/github.com/go-logr/logr/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # CHANGELOG 2 | 3 | ## v1.0.0-rc1 4 | 5 | This is the first logged release. Major changes (including breaking changes) 6 | have occurred since earlier tags. 7 | -------------------------------------------------------------------------------- /vendor/github.com/go-logr/logr/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing 2 | 3 | Logr is open to pull-requests, provided they fit within the intended scope of 4 | the project. Specifically, this library aims to be VERY small and minimalist, 5 | with no external dependencies. 6 | 7 | ## Compatibility 8 | 9 | This project intends to follow [semantic versioning](http://semver.org) and 10 | is very strict about compatibility. Any proposed changes MUST follow those 11 | rules. 12 | 13 | ## Performance 14 | 15 | As a logging library, logr must be as light-weight as possible. Any proposed 16 | code change must include results of running the [benchmark](./benchmark) 17 | before and after the change. 18 | -------------------------------------------------------------------------------- /vendor/github.com/go-logr/logr/SECURITY.md: -------------------------------------------------------------------------------- 1 | # Security Policy 2 | 3 | If you have discovered a security vulnerability in this project, please report it 4 | privately. **Do not disclose it as a public issue.** This gives us time to work with you 5 | to fix the issue before public exposure, reducing the chance that the exploit will be 6 | used before a patch is released. 7 | 8 | You may submit the report in the following ways: 9 | 10 | - send an email to go-logr-security@googlegroups.com 11 | - send us a [private vulnerability report](https://github.com/go-logr/logr/security/advisories/new) 12 | 13 | Please provide the following information in your report: 14 | 15 | - A description of the vulnerability and its impact 16 | - How to reproduce the issue 17 | 18 | We ask that you give us 90 days to work on a fix before public exposure. 19 | -------------------------------------------------------------------------------- /vendor/github.com/go-playground/locales/.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/go-playground/locales/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | go: 3 | - 1.13.1 4 | - tip 5 | matrix: 6 | allow_failures: 7 | - go: tip 8 | 9 | notifications: 10 | email: 11 | recipients: dean.karn@gmail.com 12 | on_success: change 13 | on_failure: always 14 | 15 | before_install: 16 | - go install github.com/mattn/goveralls 17 | 18 | # Only clone the most recent commit. 19 | git: 20 | depth: 1 21 | 22 | script: 23 | - go test -v -race -covermode=atomic -coverprofile=coverage.coverprofile ./... 24 | 25 | after_success: | 26 | goveralls -coverprofile=coverage.coverprofile -service travis-ci -repotoken $COVERALLS_TOKEN -------------------------------------------------------------------------------- /vendor/github.com/go-playground/locales/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pivotal-cf/on-demand-service-broker/8e3cdf04616cd35491ec45daa067493f964c310b/vendor/github.com/go-playground/locales/logo.png -------------------------------------------------------------------------------- /vendor/github.com/go-playground/universal-translator/.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 | *.coverprofile -------------------------------------------------------------------------------- /vendor/github.com/go-playground/universal-translator/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | go: 3 | - 1.13.4 4 | - tip 5 | matrix: 6 | allow_failures: 7 | - go: tip 8 | 9 | notifications: 10 | email: 11 | recipients: dean.karn@gmail.com 12 | on_success: change 13 | on_failure: always 14 | 15 | before_install: 16 | - go install github.com/mattn/goveralls 17 | 18 | # Only clone the most recent commit. 19 | git: 20 | depth: 1 21 | 22 | script: 23 | - go test -v -race -covermode=atomic -coverprofile=coverage.coverprofile ./... 24 | 25 | after_success: | 26 | [ $TRAVIS_GO_VERSION = 1.13.4 ] && 27 | goveralls -coverprofile=coverage.coverprofile -service travis-ci -repotoken $COVERALLS_TOKEN -------------------------------------------------------------------------------- /vendor/github.com/go-playground/universal-translator/Makefile: -------------------------------------------------------------------------------- 1 | GOCMD=GO111MODULE=on go 2 | 3 | linters-install: 4 | @golangci-lint --version >/dev/null 2>&1 || { \ 5 | echo "installing linting tools..."; \ 6 | curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s v1.41.1; \ 7 | } 8 | 9 | lint: linters-install 10 | golangci-lint run 11 | 12 | test: 13 | $(GOCMD) test -cover -race ./... 14 | 15 | bench: 16 | $(GOCMD) test -bench=. -benchmem ./... 17 | 18 | .PHONY: test lint linters-install -------------------------------------------------------------------------------- /vendor/github.com/go-playground/universal-translator/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pivotal-cf/on-demand-service-broker/8e3cdf04616cd35491ec45daa067493f964c310b/vendor/github.com/go-playground/universal-translator/logo.png -------------------------------------------------------------------------------- /vendor/github.com/go-playground/validator/v10/.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 | bin 10 | 11 | # Architecture specific extensions/prefixes 12 | *.[568vq] 13 | [568vq].out 14 | 15 | *.cgo1.go 16 | *.cgo2.c 17 | _cgo_defun.c 18 | _cgo_gotypes.go 19 | _cgo_export.* 20 | 21 | _testmain.go 22 | 23 | *.exe 24 | *.test 25 | *.prof 26 | *.test 27 | *.out 28 | *.txt 29 | /**/*.DS_Store 30 | cover.html 31 | README.html 32 | .idea 33 | -------------------------------------------------------------------------------- /vendor/github.com/go-playground/validator/v10/MAINTAINERS.md: -------------------------------------------------------------------------------- 1 | ## Maintainers Guide 2 | 3 | ### Semantic Versioning 4 | Semantic versioning as defined [here](https://semver.org) must be strictly adhered to. 5 | 6 | ### External Dependencies 7 | Any new external dependencies MUST: 8 | - Have a compatible LICENSE present. 9 | - Be actively maintained. 10 | - Be approved by @go-playground/admins 11 | 12 | ### PR Merge Requirements 13 | - Up-to-date branch. 14 | - Passing tests and linting. 15 | - CODEOWNERS approval. 16 | - Tests that cover both the Happy and Unhappy paths. -------------------------------------------------------------------------------- /vendor/github.com/go-playground/validator/v10/Makefile: -------------------------------------------------------------------------------- 1 | GOCMD=go 2 | 3 | linters-install: 4 | @golangci-lint --version >/dev/null 2>&1 || { \ 5 | echo "installing linting tools..."; \ 6 | curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s v2.0.2; \ 7 | } 8 | 9 | lint: linters-install 10 | golangci-lint run 11 | 12 | test: 13 | $(GOCMD) test -cover -race ./... 14 | 15 | bench: 16 | $(GOCMD) test -run=NONE -bench=. -benchmem ./... 17 | 18 | .PHONY: test lint linters-install 19 | -------------------------------------------------------------------------------- /vendor/github.com/go-playground/validator/v10/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pivotal-cf/on-demand-service-broker/8e3cdf04616cd35491ec45daa067493f964c310b/vendor/github.com/go-playground/validator/v10/logo.png -------------------------------------------------------------------------------- /vendor/github.com/go-playground/validator/v10/translations.go: -------------------------------------------------------------------------------- 1 | package validator 2 | 3 | import ut "github.com/go-playground/universal-translator" 4 | 5 | // TranslationFunc is the function type used to register or override 6 | // custom translations 7 | type TranslationFunc func(ut ut.Translator, fe FieldError) string 8 | 9 | // RegisterTranslationsFunc allows for registering of translations 10 | // for a 'ut.Translator' for use within the 'TranslationFunc' 11 | type RegisterTranslationsFunc func(ut ut.Translator) error 12 | -------------------------------------------------------------------------------- /vendor/github.com/go-task/slim-sprig/v3/.editorconfig: -------------------------------------------------------------------------------- 1 | # editorconfig.org 2 | 3 | root = true 4 | 5 | [*] 6 | insert_final_newline = true 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | indent_style = tab 10 | indent_size = 8 11 | 12 | [*.{md,yml,yaml,json}] 13 | indent_style = space 14 | indent_size = 2 15 | -------------------------------------------------------------------------------- /vendor/github.com/go-task/slim-sprig/v3/.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto 2 | -------------------------------------------------------------------------------- /vendor/github.com/go-task/slim-sprig/v3/.gitignore: -------------------------------------------------------------------------------- 1 | vendor/ 2 | /.glide 3 | -------------------------------------------------------------------------------- /vendor/github.com/go-task/slim-sprig/v3/Taskfile.yml: -------------------------------------------------------------------------------- 1 | # https://taskfile.dev 2 | 3 | version: '3' 4 | 5 | tasks: 6 | default: 7 | cmds: 8 | - task: test 9 | 10 | test: 11 | cmds: 12 | - go test -v . 13 | -------------------------------------------------------------------------------- /vendor/github.com/go-task/slim-sprig/v3/crypto.go: -------------------------------------------------------------------------------- 1 | package sprig 2 | 3 | import ( 4 | "crypto/sha1" 5 | "crypto/sha256" 6 | "encoding/hex" 7 | "fmt" 8 | "hash/adler32" 9 | ) 10 | 11 | func sha256sum(input string) string { 12 | hash := sha256.Sum256([]byte(input)) 13 | return hex.EncodeToString(hash[:]) 14 | } 15 | 16 | func sha1sum(input string) string { 17 | hash := sha1.Sum([]byte(input)) 18 | return hex.EncodeToString(hash[:]) 19 | } 20 | 21 | func adler32sum(input string) string { 22 | hash := adler32.Checksum([]byte(input)) 23 | return fmt.Sprintf("%d", hash) 24 | } 25 | -------------------------------------------------------------------------------- /vendor/github.com/go-task/slim-sprig/v3/doc.go: -------------------------------------------------------------------------------- 1 | /* 2 | Package sprig provides template functions for Go. 3 | 4 | This package contains a number of utility functions for working with data 5 | inside of Go `html/template` and `text/template` files. 6 | 7 | To add these functions, use the `template.Funcs()` method: 8 | 9 | t := templates.New("foo").Funcs(sprig.FuncMap()) 10 | 11 | Note that you should add the function map before you parse any template files. 12 | 13 | In several cases, Sprig reverses the order of arguments from the way they 14 | appear in the standard library. This is to make it easier to pipe 15 | arguments into functions. 16 | 17 | See http://masterminds.github.io/sprig/ for more detailed documentation on each of the available functions. 18 | */ 19 | package sprig 20 | -------------------------------------------------------------------------------- /vendor/github.com/go-task/slim-sprig/v3/network.go: -------------------------------------------------------------------------------- 1 | package sprig 2 | 3 | import ( 4 | "math/rand" 5 | "net" 6 | ) 7 | 8 | func getHostByName(name string) string { 9 | addrs, _ := net.LookupHost(name) 10 | //TODO: add error handing when release v3 comes out 11 | return addrs[rand.Intn(len(addrs))] 12 | } 13 | -------------------------------------------------------------------------------- /vendor/github.com/go-task/slim-sprig/v3/reflect.go: -------------------------------------------------------------------------------- 1 | package sprig 2 | 3 | import ( 4 | "fmt" 5 | "reflect" 6 | ) 7 | 8 | // typeIs returns true if the src is the type named in target. 9 | func typeIs(target string, src interface{}) bool { 10 | return target == typeOf(src) 11 | } 12 | 13 | func typeIsLike(target string, src interface{}) bool { 14 | t := typeOf(src) 15 | return target == t || "*"+target == t 16 | } 17 | 18 | func typeOf(src interface{}) string { 19 | return fmt.Sprintf("%T", src) 20 | } 21 | 22 | func kindIs(target string, src interface{}) bool { 23 | return target == kindOf(src) 24 | } 25 | 26 | func kindOf(src interface{}) string { 27 | return reflect.ValueOf(src).Kind().String() 28 | } 29 | -------------------------------------------------------------------------------- /vendor/github.com/google/go-cmp/cmp/internal/diff/debug_disable.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 !cmp_debug 6 | // +build !cmp_debug 7 | 8 | package diff 9 | 10 | var debug debugger 11 | 12 | type debugger struct{} 13 | 14 | func (debugger) Begin(_, _ int, f EqualFunc, _, _ *EditScript) EqualFunc { 15 | return f 16 | } 17 | func (debugger) Update() {} 18 | func (debugger) Finish() {} 19 | -------------------------------------------------------------------------------- /vendor/github.com/google/go-cmp/cmp/internal/flags/flags.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 flags 6 | 7 | // Deterministic controls whether the output of Diff should be deterministic. 8 | // This is only used for testing. 9 | var Deterministic bool 10 | -------------------------------------------------------------------------------- /vendor/github.com/google/pprof/AUTHORS: -------------------------------------------------------------------------------- 1 | # This is the official list of pprof authors for copyright purposes. 2 | # This file is distinct from the CONTRIBUTORS files. 3 | # See the latter for an explanation. 4 | # Names should be added to this file as: 5 | # Name or Organization 6 | # The email address is not required for organizations. 7 | Google Inc. -------------------------------------------------------------------------------- /vendor/github.com/google/pprof/CONTRIBUTORS: -------------------------------------------------------------------------------- 1 | # People who have agreed to one of the CLAs and can contribute patches. 2 | # The AUTHORS file lists the copyright holders; this file 3 | # lists people. For example, Google employees are listed here 4 | # but not in AUTHORS, because Google holds the copyright. 5 | # 6 | # https://developers.google.com/open-source/cla/individual 7 | # https://developers.google.com/open-source/cla/corporate 8 | # 9 | # Names should be added to this file as: 10 | # Name 11 | Raul Silvera 12 | Tipp Moseley 13 | Hyoun Kyu Cho 14 | Martin Spier 15 | Taco de Wolff 16 | Andrew Hunter 17 | -------------------------------------------------------------------------------- /vendor/github.com/google/uuid/CONTRIBUTORS: -------------------------------------------------------------------------------- 1 | Paul Borman 2 | bmatsuo 3 | shawnps 4 | theory 5 | jboverfelt 6 | dsymonds 7 | cd1 8 | wallclockbuilder 9 | dansouza 10 | -------------------------------------------------------------------------------- /vendor/github.com/google/uuid/doc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 Google Inc. 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 uuid generates and inspects UUIDs. 6 | // 7 | // UUIDs are based on RFC 4122 and DCE 1.1: Authentication and Security 8 | // Services. 9 | // 10 | // A UUID is a 16 byte (128 bit) array. UUIDs may be used as keys to 11 | // maps or compared directly. 12 | package uuid 13 | -------------------------------------------------------------------------------- /vendor/github.com/google/uuid/node_js.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Google Inc. 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 | // +build js 6 | 7 | package uuid 8 | 9 | // getHardwareInterface returns nil values for the JS version of the code. 10 | // This removes the "net" dependency, because it is not used in the browser. 11 | // Using the "net" library inflates the size of the transpiled JS code by 673k bytes. 12 | func getHardwareInterface(name string) (string, []byte) { return "", nil } 13 | -------------------------------------------------------------------------------- /vendor/github.com/gorilla/mux/.editorconfig: -------------------------------------------------------------------------------- 1 | ; https://editorconfig.org/ 2 | 3 | root = true 4 | 5 | [*] 6 | insert_final_newline = true 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | indent_style = space 10 | indent_size = 2 11 | 12 | [{Makefile,go.mod,go.sum,*.go,.gitmodules}] 13 | indent_style = tab 14 | indent_size = 4 15 | 16 | [*.md] 17 | indent_size = 4 18 | trim_trailing_whitespace = false 19 | 20 | eclint_indent_style = unset -------------------------------------------------------------------------------- /vendor/github.com/gorilla/mux/.gitignore: -------------------------------------------------------------------------------- 1 | coverage.coverprofile 2 | -------------------------------------------------------------------------------- /vendor/github.com/gorilla/mux/test_helpers.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012 The Gorilla 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 mux 6 | 7 | import "net/http" 8 | 9 | // SetURLVars sets the URL variables for the given request, to be accessed via 10 | // mux.Vars for testing route behaviour. Arguments are not modified, a shallow 11 | // copy is returned. 12 | // 13 | // This API should only be used for testing purposes; it provides a way to 14 | // inject variables into the request context. Alternatively, URL variables 15 | // can be set by making a route that captures the required variables, 16 | // starting a server and sending the request to that server. 17 | func SetURLVars(r *http.Request, val map[string]string) *http.Request { 18 | return requestWithVars(r, val) 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/hashicorp/go-version/version_collection.go: -------------------------------------------------------------------------------- 1 | // Copyright (c) HashiCorp, Inc. 2 | // SPDX-License-Identifier: MPL-2.0 3 | 4 | package version 5 | 6 | // Collection is a type that implements the sort.Interface interface 7 | // so that versions can be sorted. 8 | type Collection []*Version 9 | 10 | func (v Collection) Len() int { 11 | return len(v) 12 | } 13 | 14 | func (v Collection) Less(i, j int) bool { 15 | return v[i].LessThan(v[j]) 16 | } 17 | 18 | func (v Collection) Swap(i, j int) { 19 | v[i], v[j] = v[j], v[i] 20 | } 21 | -------------------------------------------------------------------------------- /vendor/github.com/leodido/go-urn/.gitignore: -------------------------------------------------------------------------------- 1 | *.exe 2 | *.dll 3 | *.so 4 | *.dylib 5 | 6 | *.test 7 | 8 | *.out 9 | *.txt 10 | 11 | vendor/ 12 | /removecomments 13 | /snake2camel -------------------------------------------------------------------------------- /vendor/github.com/leodido/go-urn/kind.go: -------------------------------------------------------------------------------- 1 | package urn 2 | 3 | type Kind int 4 | 5 | const ( 6 | NONE Kind = iota 7 | RFC2141 8 | RFC7643 9 | RFC8141 10 | ) 11 | -------------------------------------------------------------------------------- /vendor/github.com/leodido/go-urn/options.go: -------------------------------------------------------------------------------- 1 | package urn 2 | 3 | type Option func(Machine) 4 | 5 | func WithParsingMode(mode ParsingMode) Option { 6 | return func(m Machine) { 7 | m.WithParsingMode(mode) 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /vendor/github.com/leodido/go-urn/parsing_mode.go: -------------------------------------------------------------------------------- 1 | package urn 2 | 3 | type ParsingMode int 4 | 5 | const ( 6 | Default ParsingMode = iota 7 | RFC2141Only 8 | RFC7643Only 9 | RFC8141Only 10 | ) 11 | 12 | const DefaultParsingMode = RFC2141Only 13 | -------------------------------------------------------------------------------- /vendor/github.com/leodido/go-urn/scim/schema/type.go: -------------------------------------------------------------------------------- 1 | package scimschema 2 | 3 | type Type int 4 | 5 | const ( 6 | Unsupported Type = iota 7 | Schemas 8 | API 9 | Param 10 | ) 11 | 12 | func (t Type) String() string { 13 | switch t { 14 | case Schemas: 15 | return "schemas" 16 | case API: 17 | return "api" 18 | case Param: 19 | return "param" 20 | } 21 | 22 | return "" 23 | } 24 | 25 | func TypeFromString(input string) Type { 26 | switch input { 27 | case "schemas": 28 | return Schemas 29 | case "api": 30 | return API 31 | case "param": 32 | return Param 33 | } 34 | 35 | return Unsupported 36 | } 37 | -------------------------------------------------------------------------------- /vendor/github.com/leodido/go-urn/urn8141.go: -------------------------------------------------------------------------------- 1 | package urn 2 | 3 | import ( 4 | "encoding/json" 5 | "fmt" 6 | ) 7 | 8 | const errInvalidURN8141 = "invalid URN per RFC 8141: %s" 9 | 10 | type URN8141 struct { 11 | *URN 12 | } 13 | 14 | func (u URN8141) MarshalJSON() ([]byte, error) { 15 | return json.Marshal(u.String()) 16 | } 17 | 18 | func (u *URN8141) UnmarshalJSON(bytes []byte) error { 19 | var str string 20 | if err := json.Unmarshal(bytes, &str); err != nil { 21 | return err 22 | } 23 | if value, ok := Parse([]byte(str), WithParsingMode(RFC8141Only)); !ok { 24 | return fmt.Errorf(errInvalidURN8141, str) 25 | } else { 26 | *u = URN8141{value} 27 | } 28 | 29 | return nil 30 | } 31 | -------------------------------------------------------------------------------- /vendor/github.com/maxbrunsfeld/counterfeiter/v6/.gitattributes: -------------------------------------------------------------------------------- 1 | * text eol=lf 2 | -------------------------------------------------------------------------------- /vendor/github.com/maxbrunsfeld/counterfeiter/v6/.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 | *.iml 25 | .idea 26 | .envrc 27 | 28 | /counterfeiter 29 | integration/testdata/output 30 | *.profile 31 | *.bench 32 | /.vscode 33 | -------------------------------------------------------------------------------- /vendor/github.com/maxbrunsfeld/counterfeiter/v6/.golangci.yaml: -------------------------------------------------------------------------------- 1 | run: 2 | skip-dirs: 3 | - fixtures -------------------------------------------------------------------------------- /vendor/github.com/maxbrunsfeld/counterfeiter/v6/arguments/files.go: -------------------------------------------------------------------------------- 1 | package arguments 2 | 3 | import "os" 4 | 5 | type Evaler func(string) (string, error) 6 | type Stater func(string) (os.FileInfo, error) 7 | -------------------------------------------------------------------------------- /vendor/github.com/maxbrunsfeld/counterfeiter/v6/generator/ctx.go: -------------------------------------------------------------------------------- 1 | //go:build go1.14 2 | 3 | package generator 4 | 5 | import "go/build" 6 | 7 | func getBuildContext(workingDir string) build.Context { 8 | ctx := build.Default 9 | ctx.Dir = workingDir 10 | return ctx 11 | } 12 | -------------------------------------------------------------------------------- /vendor/github.com/maxbrunsfeld/counterfeiter/v6/generator/ctx_old.go: -------------------------------------------------------------------------------- 1 | //go:build !go1.14 2 | 3 | package generator 4 | 5 | import "go/build" 6 | 7 | func getBuildContext(workingDir string) build.Context { 8 | ctx := build.Default 9 | return ctx 10 | } 11 | -------------------------------------------------------------------------------- /vendor/github.com/maxbrunsfeld/counterfeiter/v6/generator/function_loader.go: -------------------------------------------------------------------------------- 1 | package generator 2 | 3 | import ( 4 | "errors" 5 | "go/types" 6 | ) 7 | 8 | func (f *Fake) loadMethodForFunction() error { 9 | t, ok := f.Target.Type().(*types.Named) 10 | if !ok { 11 | return errors.New("target is not a named type") 12 | } 13 | sig, ok := t.Underlying().(*types.Signature) 14 | if !ok { 15 | return errors.New("target does not have an underlying function signature") 16 | } 17 | f.addTypesForMethod(sig) 18 | f.Function = methodForSignature(sig, f.TargetName, f.Imports) 19 | return nil 20 | } 21 | -------------------------------------------------------------------------------- /vendor/github.com/nu7hatch/gouuid/.gitignore: -------------------------------------------------------------------------------- 1 | _obj 2 | _test 3 | *.6 4 | *.out 5 | _testmain.go 6 | \#* 7 | .\#* 8 | *.log 9 | _cgo* 10 | *.o 11 | *.a 12 | -------------------------------------------------------------------------------- /vendor/github.com/nu7hatch/gouuid/README.md: -------------------------------------------------------------------------------- 1 | # Pure Go UUID implementation 2 | 3 | This package provides immutable UUID structs and the functions 4 | NewV3, NewV4, NewV5 and Parse() for generating versions 3, 4 5 | and 5 UUIDs as specified in [RFC 4122](http://www.ietf.org/rfc/rfc4122.txt). 6 | 7 | ## Installation 8 | 9 | Use the `go` tool: 10 | 11 | $ go get github.com/nu7hatch/gouuid 12 | 13 | ## Usage 14 | 15 | See [documentation and examples](http://godoc.org/github.com/nu7hatch/gouuid) 16 | for more information. 17 | 18 | ## Copyright 19 | 20 | Copyright (C) 2011 by Krzysztof Kowalik . See [COPYING](https://github.com/nu7hatch/gouuid/tree/master/COPYING) 21 | file for details. 22 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/ginkgo/v2/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | TODO 3 | tmp/**/* 4 | *.coverprofile 5 | .vscode 6 | .idea/ 7 | *.log 8 | *.test -------------------------------------------------------------------------------- /vendor/github.com/onsi/ginkgo/v2/Makefile: -------------------------------------------------------------------------------- 1 | # default task since it's first 2 | .PHONY: all 3 | all: vet test 4 | 5 | .PHONY: test 6 | test: 7 | go run github.com/onsi/ginkgo/v2/ginkgo -r -p -randomize-all -keep-going 8 | 9 | .PHONY: vet 10 | vet: 11 | go vet ./... 12 | 13 | .PHONY: update-deps 14 | update-deps: 15 | go get -u ./... 16 | go mod tidy -------------------------------------------------------------------------------- /vendor/github.com/onsi/ginkgo/v2/ginkgo/watch/delta.go: -------------------------------------------------------------------------------- 1 | package watch 2 | 3 | import "sort" 4 | 5 | type Delta struct { 6 | ModifiedPackages []string 7 | 8 | NewSuites []*Suite 9 | RemovedSuites []*Suite 10 | modifiedSuites []*Suite 11 | } 12 | 13 | type DescendingByDelta []*Suite 14 | 15 | func (a DescendingByDelta) Len() int { return len(a) } 16 | func (a DescendingByDelta) Swap(i, j int) { a[i], a[j] = a[j], a[i] } 17 | func (a DescendingByDelta) Less(i, j int) bool { return a[i].Delta() > a[j].Delta() } 18 | 19 | func (d Delta) ModifiedSuites() []*Suite { 20 | sort.Sort(DescendingByDelta(d.modifiedSuites)) 21 | return d.modifiedSuites 22 | } 23 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/ginkgo/v2/ginkgo_cli_dependencies.go: -------------------------------------------------------------------------------- 1 | //go:build ginkgoclidependencies 2 | // +build ginkgoclidependencies 3 | 4 | package ginkgo 5 | 6 | import ( 7 | _ "github.com/onsi/ginkgo/v2/ginkgo" 8 | ) 9 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/ginkgo/v2/internal/counter.go: -------------------------------------------------------------------------------- 1 | package internal 2 | 3 | func MakeIncrementingIndexCounter() func() (int, error) { 4 | idx := -1 5 | return func() (int, error) { 6 | idx += 1 7 | return idx, nil 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/ginkgo/v2/internal/global/init.go: -------------------------------------------------------------------------------- 1 | package global 2 | 3 | import ( 4 | "github.com/onsi/ginkgo/v2/internal" 5 | ) 6 | 7 | var Suite *internal.Suite 8 | var Failer *internal.Failer 9 | var backupSuite *internal.Suite 10 | 11 | func init() { 12 | InitializeGlobals() 13 | } 14 | 15 | func InitializeGlobals() { 16 | Failer = internal.NewFailer() 17 | Suite = internal.NewSuite() 18 | } 19 | 20 | func PushClone() error { 21 | var err error 22 | backupSuite, err = Suite.Clone() 23 | return err 24 | } 25 | 26 | func PopClone() { 27 | Suite = backupSuite 28 | } 29 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/ginkgo/v2/internal/interrupt_handler/sigquit_swallower_unix.go: -------------------------------------------------------------------------------- 1 | //go:build freebsd || openbsd || netbsd || dragonfly || darwin || linux || solaris 2 | // +build freebsd openbsd netbsd dragonfly darwin linux solaris 3 | 4 | package interrupt_handler 5 | 6 | import ( 7 | "os" 8 | "os/signal" 9 | "syscall" 10 | ) 11 | 12 | func SwallowSigQuit() { 13 | c := make(chan os.Signal, 1024) 14 | signal.Notify(c, syscall.SIGQUIT) 15 | } 16 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/ginkgo/v2/internal/interrupt_handler/sigquit_swallower_windows.go: -------------------------------------------------------------------------------- 1 | //go:build windows 2 | // +build windows 3 | 4 | package interrupt_handler 5 | 6 | func SwallowSigQuit() { 7 | //noop 8 | } 9 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/ginkgo/v2/internal/output_interceptor_wasm.go: -------------------------------------------------------------------------------- 1 | //go:build wasm 2 | 3 | package internal 4 | 5 | func NewOutputInterceptor() OutputInterceptor { 6 | return &NoopOutputInterceptor{} 7 | } 8 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/ginkgo/v2/internal/output_interceptor_win.go: -------------------------------------------------------------------------------- 1 | // +build windows 2 | 3 | package internal 4 | 5 | func NewOutputInterceptor() OutputInterceptor { 6 | return NewOSGlobalReassigningOutputInterceptor() 7 | } 8 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/ginkgo/v2/internal/progress_report_bsd.go: -------------------------------------------------------------------------------- 1 | //go:build freebsd || openbsd || netbsd || darwin || dragonfly 2 | // +build freebsd openbsd netbsd darwin dragonfly 3 | 4 | package internal 5 | 6 | import ( 7 | "os" 8 | "syscall" 9 | ) 10 | 11 | var PROGRESS_SIGNALS = []os.Signal{syscall.SIGINFO, syscall.SIGUSR1} 12 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/ginkgo/v2/internal/progress_report_unix.go: -------------------------------------------------------------------------------- 1 | //go:build linux || solaris 2 | // +build linux solaris 3 | 4 | package internal 5 | 6 | import ( 7 | "os" 8 | "syscall" 9 | ) 10 | 11 | var PROGRESS_SIGNALS = []os.Signal{syscall.SIGUSR1} 12 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/ginkgo/v2/internal/progress_report_wasm.go: -------------------------------------------------------------------------------- 1 | //go:build wasm 2 | 3 | package internal 4 | 5 | import ( 6 | "os" 7 | "syscall" 8 | ) 9 | 10 | var PROGRESS_SIGNALS = []os.Signal{syscall.SIGUSR1} 11 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/ginkgo/v2/internal/progress_report_win.go: -------------------------------------------------------------------------------- 1 | //go:build windows 2 | // +build windows 3 | 4 | package internal 5 | 6 | import "os" 7 | 8 | var PROGRESS_SIGNALS = []os.Signal{} 9 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/ginkgo/v2/types/version.go: -------------------------------------------------------------------------------- 1 | package types 2 | 3 | const VERSION = "2.23.4" 4 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/gomega/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | *.test 3 | . 4 | .idea 5 | gomega.iml 6 | TODO 7 | .vscode -------------------------------------------------------------------------------- /vendor/github.com/onsi/gomega/internal/vetoptdesc.go: -------------------------------------------------------------------------------- 1 | package internal 2 | 3 | import ( 4 | "fmt" 5 | 6 | "github.com/onsi/gomega/types" 7 | ) 8 | 9 | // vetOptionalDescription vets the optional description args: if it finds any 10 | // Gomega matcher at the beginning it panics. This allows for rendering Gomega 11 | // matchers as part of an optional Description, as long as they're not in the 12 | // first slot. 13 | func vetOptionalDescription(assertion string, optionalDescription ...any) { 14 | if len(optionalDescription) == 0 { 15 | return 16 | } 17 | if _, isGomegaMatcher := optionalDescription[0].(types.GomegaMatcher); isGomegaMatcher { 18 | panic(fmt.Sprintf("%s has a GomegaMatcher as the first element of optionalDescription.\n\t"+ 19 | "Do you mean to use And/Or/SatisfyAll/SatisfyAny to combine multiple matchers?", 20 | assertion)) 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/gomega/matchers/attributes_slice.go: -------------------------------------------------------------------------------- 1 | package matchers 2 | 3 | import ( 4 | "encoding/xml" 5 | "strings" 6 | ) 7 | 8 | type attributesSlice []xml.Attr 9 | 10 | func (attrs attributesSlice) Len() int { return len(attrs) } 11 | func (attrs attributesSlice) Less(i, j int) bool { 12 | return strings.Compare(attrs[i].Name.Local, attrs[j].Name.Local) == -1 13 | } 14 | func (attrs attributesSlice) Swap(i, j int) { attrs[i], attrs[j] = attrs[j], attrs[i] } 15 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/gomega/matchers/be_nil_matcher.go: -------------------------------------------------------------------------------- 1 | // untested sections: 2 2 | 3 | package matchers 4 | 5 | import "github.com/onsi/gomega/format" 6 | 7 | type BeNilMatcher struct { 8 | } 9 | 10 | func (matcher *BeNilMatcher) Match(actual any) (success bool, err error) { 11 | return isNil(actual), nil 12 | } 13 | 14 | func (matcher *BeNilMatcher) FailureMessage(actual any) (message string) { 15 | return format.Message(actual, "to be nil") 16 | } 17 | 18 | func (matcher *BeNilMatcher) NegatedFailureMessage(actual any) (message string) { 19 | return format.Message(actual, "not to be nil") 20 | } 21 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/gomega/matchers/be_zero_matcher.go: -------------------------------------------------------------------------------- 1 | package matchers 2 | 3 | import ( 4 | "reflect" 5 | 6 | "github.com/onsi/gomega/format" 7 | ) 8 | 9 | type BeZeroMatcher struct { 10 | } 11 | 12 | func (matcher *BeZeroMatcher) Match(actual any) (success bool, err error) { 13 | if actual == nil { 14 | return true, nil 15 | } 16 | zeroValue := reflect.Zero(reflect.TypeOf(actual)).Interface() 17 | 18 | return reflect.DeepEqual(zeroValue, actual), nil 19 | 20 | } 21 | 22 | func (matcher *BeZeroMatcher) FailureMessage(actual any) (message string) { 23 | return format.Message(actual, "to be zero-valued") 24 | } 25 | 26 | func (matcher *BeZeroMatcher) NegatedFailureMessage(actual any) (message string) { 27 | return format.Message(actual, "not to be zero-valued") 28 | } 29 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/gomega/matchers/support/goraph/node/node.go: -------------------------------------------------------------------------------- 1 | package node 2 | 3 | type Node struct { 4 | ID int 5 | Value any 6 | } 7 | 8 | type NodeOrderedSet []Node 9 | -------------------------------------------------------------------------------- /vendor/github.com/onsi/gomega/matchers/support/goraph/util/util.go: -------------------------------------------------------------------------------- 1 | package util 2 | 3 | import "math" 4 | 5 | func Odd(n int) bool { 6 | return math.Mod(float64(n), 2.0) == 1.0 7 | } 8 | -------------------------------------------------------------------------------- /vendor/github.com/pborman/uuid/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - "1.9" 5 | - "1.10" 6 | - "1.11" 7 | - tip 8 | 9 | script: 10 | - go test -v ./... 11 | -------------------------------------------------------------------------------- /vendor/github.com/pborman/uuid/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # How to contribute 2 | 3 | We definitely welcome patches and contribution to this project! 4 | 5 | ### Legal requirements 6 | 7 | In order to protect both you and ourselves, you will need to sign the 8 | [Contributor License Agreement](https://cla.developers.google.com/clas). 9 | 10 | You may have already signed it for other Google projects. 11 | -------------------------------------------------------------------------------- /vendor/github.com/pborman/uuid/CONTRIBUTORS: -------------------------------------------------------------------------------- 1 | Paul Borman 2 | -------------------------------------------------------------------------------- /vendor/github.com/pborman/uuid/README.md: -------------------------------------------------------------------------------- 1 | This project was automatically exported from code.google.com/p/go-uuid 2 | 3 | # uuid ![build status](https://travis-ci.org/pborman/uuid.svg?branch=master) 4 | The uuid package generates and inspects UUIDs based on [RFC 4122](http://tools.ietf.org/html/rfc4122) and DCE 1.1: Authentication and Security Services. 5 | 6 | This package now leverages the github.com/google/uuid package (which is based off an earlier version of this package). 7 | 8 | ###### Install 9 | `go get github.com/pborman/uuid` 10 | 11 | ###### Documentation 12 | [![GoDoc](https://godoc.org/github.com/pborman/uuid?status.svg)](http://godoc.org/github.com/pborman/uuid) 13 | 14 | Full `go doc` style documentation for the package can be viewed online without installing this package by using the GoDoc site here: 15 | http://godoc.org/github.com/pborman/uuid 16 | -------------------------------------------------------------------------------- /vendor/github.com/pborman/uuid/doc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2011 Google Inc. 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 | // The uuid package generates and inspects UUIDs. 6 | // 7 | // UUIDs are based on RFC 4122 and DCE 1.1: Authentication and Security 8 | // Services. 9 | // 10 | // This package is a partial wrapper around the github.com/google/uuid package. 11 | // This package represents a UUID as []byte while github.com/google/uuid 12 | // represents a UUID as [16]byte. 13 | package uuid 14 | -------------------------------------------------------------------------------- /vendor/github.com/pborman/uuid/version1.go: -------------------------------------------------------------------------------- 1 | // Copyright 2011 Google Inc. 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 uuid 6 | 7 | import ( 8 | guuid "github.com/google/uuid" 9 | ) 10 | 11 | // NewUUID returns a Version 1 UUID based on the current NodeID and clock 12 | // sequence, and the current time. If the NodeID has not been set by SetNodeID 13 | // or SetNodeInterface then it will be set automatically. If the NodeID cannot 14 | // be set NewUUID returns nil. If clock sequence has not been set by 15 | // SetClockSequence then it will be set automatically. If GetTime fails to 16 | // return the current NewUUID returns nil. 17 | func NewUUID() UUID { 18 | gu, err := guuid.NewUUID() 19 | if err == nil { 20 | return UUID(gu[:]) 21 | } 22 | return nil 23 | } 24 | -------------------------------------------------------------------------------- /vendor/github.com/pivotal-cf/on-demand-services-sdk/bosh/vms.go: -------------------------------------------------------------------------------- 1 | // Copyright (C) 2016-Present Pivotal Software, Inc. All rights reserved. 2 | 3 | // This program and the accompanying materials are made available under 4 | // the terms of the under the Apache License, Version 2.0 (the "License"); 5 | // you may not use this file except in compliance with the License. 6 | // You may obtain a copy of the License at 7 | 8 | // http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | // Unless required by applicable law or agreed to in writing, software 11 | // distributed under the License is distributed on an "AS IS" BASIS, 12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | // See the License for the specific language governing permissions and 14 | // limitations under the License. 15 | 16 | package bosh 17 | 18 | type BoshVMs map[string][]string 19 | -------------------------------------------------------------------------------- /vendor/github.com/pivotal-cf/paraphernalia/secure/tlsconfig/BUILD.bazel: -------------------------------------------------------------------------------- 1 | load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") 2 | 3 | go_library( 4 | name = "go_default_library", 5 | srcs = ["config.go"], 6 | importpath = "github.com/pivotal-cf/paraphernalia/secure/tlsconfig", 7 | visibility = ["//visibility:public"], 8 | ) 9 | 10 | go_test( 11 | name = "go_default_xtest", 12 | size = "small", 13 | srcs = [ 14 | "config_test.go", 15 | "tlsconfig_suite_test.go", 16 | ], 17 | importpath = "github.com/pivotal-cf/paraphernalia/secure/tlsconfig_test", 18 | deps = [ 19 | ":go_default_library", 20 | "//test/certtest:go_default_library", 21 | "@com_github_onsi_ginkgo//:go_default_library", 22 | "@com_github_onsi_gomega//:go_default_library", 23 | ], 24 | ) 25 | -------------------------------------------------------------------------------- /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/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/urfave/negroni/.gitignore: -------------------------------------------------------------------------------- 1 | /coverage.txt 2 | -------------------------------------------------------------------------------- /vendor/github.com/urfave/negroni/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | sudo: false 4 | dist: trusty 5 | 6 | go: 7 | - 1.x 8 | - 1.2.x 9 | - 1.3.x 10 | - 1.4.x 11 | - 1.5.x 12 | - 1.6.x 13 | - 1.7.x 14 | - 1.8.x 15 | - master 16 | 17 | before_install: 18 | - find "${GOPATH%%:*}" -name '*.a' -delete 19 | - rm -rf "${GOPATH%%:*}/src/golang.org" 20 | - go get golang.org/x/tools/cover 21 | - go get golang.org/x/tools/cmd/cover 22 | 23 | script: 24 | - go test -race -coverprofile=coverage.txt -covermode=atomic 25 | 26 | after_success: 27 | - bash <(curl -s "https://codecov.io/bash") 28 | -------------------------------------------------------------------------------- /vendor/github.com/urfave/negroni/doc.go: -------------------------------------------------------------------------------- 1 | // Package negroni is an idiomatic approach to web middleware in Go. It is tiny, non-intrusive, and encourages use of net/http Handlers. 2 | // 3 | // If you like the idea of Martini, but you think it contains too much magic, then Negroni is a great fit. 4 | // 5 | // For a full guide visit http://github.com/urfave/negroni 6 | // 7 | // package main 8 | // 9 | // import ( 10 | // "github.com/urfave/negroni" 11 | // "net/http" 12 | // "fmt" 13 | // ) 14 | // 15 | // func main() { 16 | // mux := http.NewServeMux() 17 | // mux.HandleFunc("/", func(w http.ResponseWriter, req *http.Request) { 18 | // fmt.Fprintf(w, "Welcome to the home page!") 19 | // }) 20 | // 21 | // n := negroni.Classic() 22 | // n.UseHandler(mux) 23 | // n.Run(":3000") 24 | // } 25 | package negroni 26 | -------------------------------------------------------------------------------- /vendor/github.com/urfave/negroni/response_writer_pusher.go: -------------------------------------------------------------------------------- 1 | //+build go1.8 2 | 3 | package negroni 4 | 5 | import ( 6 | "fmt" 7 | "net/http" 8 | ) 9 | 10 | func (rw *responseWriter) Push(target string, opts *http.PushOptions) error { 11 | pusher, ok := rw.ResponseWriter.(http.Pusher) 12 | if ok { 13 | return pusher.Push(target, opts) 14 | } 15 | return fmt.Errorf("the ResponseWriter doesn't support the Pusher interface") 16 | } 17 | -------------------------------------------------------------------------------- /vendor/github.com/xeipuuv/gojsonreference/README.md: -------------------------------------------------------------------------------- 1 | # gojsonreference 2 | An implementation of JSON Reference - Go language 3 | 4 | ## Dependencies 5 | https://github.com/xeipuuv/gojsonpointer 6 | 7 | ## References 8 | http://tools.ietf.org/html/draft-ietf-appsawg-json-pointer-07 9 | 10 | http://tools.ietf.org/html/draft-pbryan-zyp-json-ref-03 11 | -------------------------------------------------------------------------------- /vendor/github.com/xeipuuv/gojsonschema/.gitignore: -------------------------------------------------------------------------------- 1 | *.sw[nop] 2 | *.iml 3 | .vscode/ 4 | -------------------------------------------------------------------------------- /vendor/github.com/xeipuuv/gojsonschema/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | go: 3 | - "1.11" 4 | - "1.12" 5 | - "1.13" 6 | before_install: 7 | - go get github.com/xeipuuv/gojsonreference 8 | - go get github.com/xeipuuv/gojsonpointer 9 | - go get github.com/stretchr/testify/assert 10 | -------------------------------------------------------------------------------- /vendor/github.com/xeipuuv/gojsonschema/glide.yaml: -------------------------------------------------------------------------------- 1 | package: github.com/xeipuuv/gojsonschema 2 | license: Apache 2.0 3 | import: 4 | - package: github.com/xeipuuv/gojsonschema 5 | 6 | - package: github.com/xeipuuv/gojsonpointer 7 | 8 | - package: github.com/xeipuuv/gojsonreference 9 | 10 | testImport: 11 | - package: github.com/stretchr/testify 12 | subpackages: 13 | - assert 14 | -------------------------------------------------------------------------------- /vendor/go.uber.org/automaxprocs/.codecov.yml: -------------------------------------------------------------------------------- 1 | coverage: 2 | range: 80..100 3 | round: down 4 | precision: 2 5 | 6 | status: 7 | project: # measuring the overall project coverage 8 | default: # context, you can create multiple ones with custom titles 9 | enabled: yes # must be yes|true to enable this status 10 | target: 90% # specify the target coverage for each commit status 11 | # option: "auto" (must increase from parent commit or pull request base) 12 | # option: "X%" a static target percentage to hit 13 | if_not_found: success # if parent is not found report status as success, error, or failure 14 | if_ci_failed: error # if ci fails report status as success, error, or failure 15 | -------------------------------------------------------------------------------- /vendor/go.uber.org/automaxprocs/.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 | vendor 10 | 11 | # Architecture specific extensions/prefixes 12 | *.[568vq] 13 | [568vq].out 14 | 15 | *.cgo1.go 16 | *.cgo2.c 17 | _cgo_defun.c 18 | _cgo_gotypes.go 19 | _cgo_export.* 20 | 21 | _testmain.go 22 | 23 | *.exe 24 | *.test 25 | *.prof 26 | *.pprof 27 | *.out 28 | *.log 29 | coverage.txt 30 | 31 | /bin 32 | cover.out 33 | cover.html 34 | -------------------------------------------------------------------------------- /vendor/golang.org/x/crypto/chacha20/chacha_arm64.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 gc && !purego 6 | 7 | package chacha20 8 | 9 | const bufSize = 256 10 | 11 | //go:noescape 12 | func xorKeyStreamVX(dst, src []byte, key *[8]uint32, nonce *[3]uint32, counter *uint32) 13 | 14 | func (c *Cipher) xorKeyStreamBlocks(dst, src []byte) { 15 | xorKeyStreamVX(dst, src, &c.key, &c.nonce, &c.counter) 16 | } 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/crypto/chacha20/chacha_noasm.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 (!arm64 && !s390x && !ppc64 && !ppc64le) || !gc || purego 6 | 7 | package chacha20 8 | 9 | const bufSize = blockSize 10 | 11 | func (s *Cipher) xorKeyStreamBlocks(dst, src []byte) { 12 | s.xorKeyStreamBlocksGeneric(dst, src) 13 | } 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/crypto/chacha20/chacha_ppc64x.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 gc && !purego && (ppc64 || ppc64le) 6 | 7 | package chacha20 8 | 9 | const bufSize = 256 10 | 11 | //go:noescape 12 | func chaCha20_ctr32_vsx(out, inp *byte, len int, key *[8]uint32, counter *uint32) 13 | 14 | func (c *Cipher) xorKeyStreamBlocks(dst, src []byte) { 15 | chaCha20_ctr32_vsx(&dst[0], &src[0], len(src), &c.key, &c.counter) 16 | } 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/crypto/internal/poly1305/mac_noasm.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 (!amd64 && !loong64 && !ppc64le && !ppc64 && !s390x) || !gc || purego 6 | 7 | package poly1305 8 | 9 | type mac struct{ macGeneric } 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/crypto/sha3/hashes_noasm.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 !gc || purego || !s390x 6 | 7 | package sha3 8 | 9 | func new224() *state { 10 | return new224Generic() 11 | } 12 | 13 | func new256() *state { 14 | return new256Generic() 15 | } 16 | 17 | func new384() *state { 18 | return new384Generic() 19 | } 20 | 21 | func new512() *state { 22 | return new512Generic() 23 | } 24 | -------------------------------------------------------------------------------- /vendor/golang.org/x/crypto/sha3/keccakf_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 amd64 && !purego && gc 6 | 7 | package sha3 8 | 9 | // This function is implemented in keccakf_amd64.s. 10 | 11 | //go:noescape 12 | 13 | func keccakF1600(a *[25]uint64) 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/crypto/sha3/shake_noasm.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 !gc || purego || !s390x 6 | 7 | package sha3 8 | 9 | func newShake128() *state { 10 | return newShake128Generic() 11 | } 12 | 13 | func newShake256() *state { 14 | return newShake256Generic() 15 | } 16 | -------------------------------------------------------------------------------- /vendor/golang.org/x/oauth2/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - tip 5 | 6 | install: 7 | - export GOPATH="$HOME/gopath" 8 | - mkdir -p "$GOPATH/src/golang.org/x" 9 | - mv "$TRAVIS_BUILD_DIR" "$GOPATH/src/golang.org/x/oauth2" 10 | - go get -v -t -d golang.org/x/oauth2/... 11 | 12 | script: 13 | - go test -v golang.org/x/oauth2/... 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/oauth2/internal/doc.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 | // Package internal contains support packages for [golang.org/x/oauth2]. 6 | package internal 7 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/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/cpu/asm_darwin_x86_gc.s: -------------------------------------------------------------------------------- 1 | // Copyright 2024 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 && amd64 && gc 6 | 7 | #include "textflag.h" 8 | 9 | TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0 10 | JMP libc_sysctl(SB) 11 | GLOBL ·libc_sysctl_trampoline_addr(SB), RODATA, $8 12 | DATA ·libc_sysctl_trampoline_addr(SB)/8, $libc_sysctl_trampoline<>(SB) 13 | 14 | TEXT libc_sysctlbyname_trampoline<>(SB),NOSPLIT,$0-0 15 | JMP libc_sysctlbyname(SB) 16 | GLOBL ·libc_sysctlbyname_trampoline_addr(SB), RODATA, $8 17 | DATA ·libc_sysctlbyname_trampoline_addr(SB)/8, $libc_sysctlbyname_trampoline<>(SB) 18 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_aix.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 6 | 7 | package cpu 8 | 9 | const ( 10 | // getsystemcfg constants 11 | _SC_IMPL = 2 12 | _IMPL_POWER8 = 0x10000 13 | _IMPL_POWER9 = 0x20000 14 | ) 15 | 16 | func archInit() { 17 | impl := getsystemcfg(_SC_IMPL) 18 | if impl&_IMPL_POWER8 != 0 { 19 | PPC64.IsPOWER8 = true 20 | } 21 | if impl&_IMPL_POWER9 != 0 { 22 | PPC64.IsPOWER8 = true 23 | PPC64.IsPOWER9 = true 24 | } 25 | 26 | Initialized = true 27 | } 28 | 29 | func getsystemcfg(label int) (n uint64) { 30 | r0, _ := callgetsystemcfg(label) 31 | n = uint64(r0) 32 | return 33 | } 34 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_gc_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 gc 6 | 7 | package cpu 8 | 9 | func getisar0() uint64 10 | func getisar1() uint64 11 | func getpfr0() uint64 12 | func getzfr0() uint64 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_gc_s390x.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 gc 6 | 7 | package cpu 8 | 9 | // haveAsmFunctions reports whether the other functions in this file can 10 | // be safely called. 11 | func haveAsmFunctions() bool { return true } 12 | 13 | // The following feature detection functions are defined in cpu_s390x.s. 14 | // They are likely to be expensive to call so the results should be cached. 15 | func stfle() facilityList 16 | func kmQuery() queryResult 17 | func kmcQuery() queryResult 18 | func kmctrQuery() queryResult 19 | func kmaQuery() queryResult 20 | func kimdQuery() queryResult 21 | func klmdQuery() queryResult 22 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_gc_x86.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 (386 || amd64 || amd64p32) && gc 6 | 7 | package cpu 8 | 9 | // cpuid is implemented in cpu_gc_x86.s for gc compiler 10 | // and in cpu_gccgo.c for gccgo. 11 | func cpuid(eaxArg, ecxArg uint32) (eax, ebx, ecx, edx uint32) 12 | 13 | // xgetbv with ecx = 0 is implemented in cpu_gc_x86.s for gc compiler 14 | // and in cpu_gccgo.c for gccgo. 15 | func xgetbv() (eax, edx uint32) 16 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_gc_x86.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 (386 || amd64 || amd64p32) && gc 6 | 7 | #include "textflag.h" 8 | 9 | // func cpuid(eaxArg, ecxArg uint32) (eax, ebx, ecx, edx uint32) 10 | TEXT ·cpuid(SB), NOSPLIT, $0-24 11 | MOVL eaxArg+0(FP), AX 12 | MOVL ecxArg+4(FP), CX 13 | CPUID 14 | MOVL AX, eax+8(FP) 15 | MOVL BX, ebx+12(FP) 16 | MOVL CX, ecx+16(FP) 17 | MOVL DX, edx+20(FP) 18 | RET 19 | 20 | // func xgetbv() (eax, edx uint32) 21 | TEXT ·xgetbv(SB), NOSPLIT, $0-8 22 | MOVL $0, CX 23 | XGETBV 24 | MOVL AX, eax+0(FP) 25 | MOVL DX, edx+4(FP) 26 | RET 27 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_gccgo_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 gccgo 6 | 7 | package cpu 8 | 9 | func getisar0() uint64 { return 0 } 10 | func getisar1() uint64 { return 0 } 11 | func getpfr0() uint64 { return 0 } 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_gccgo_x86.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 (386 || amd64 || amd64p32) && gccgo 6 | 7 | package cpu 8 | 9 | //extern gccgoGetCpuidCount 10 | func gccgoGetCpuidCount(eaxArg, ecxArg uint32, eax, ebx, ecx, edx *uint32) 11 | 12 | func cpuid(eaxArg, ecxArg uint32) (eax, ebx, ecx, edx uint32) { 13 | var a, b, c, d uint32 14 | gccgoGetCpuidCount(eaxArg, ecxArg, &a, &b, &c, &d) 15 | return a, b, c, d 16 | } 17 | 18 | //extern gccgoXgetbv 19 | func gccgoXgetbv(eax, edx *uint32) 20 | 21 | func xgetbv() (eax, edx uint32) { 22 | var a, d uint32 23 | gccgoXgetbv(&a, &d) 24 | return a, d 25 | } 26 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_linux.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 !386 && !amd64 && !amd64p32 && !arm64 6 | 7 | package cpu 8 | 9 | func archInit() { 10 | if err := readHWCAP(); err != nil { 11 | return 12 | } 13 | doinit() 14 | Initialized = true 15 | } 16 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_linux_loong64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2025 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 cpu 6 | 7 | // HWCAP bits. These are exposed by the Linux kernel. 8 | const ( 9 | hwcap_LOONGARCH_LSX = 1 << 4 10 | hwcap_LOONGARCH_LASX = 1 << 5 11 | ) 12 | 13 | func doinit() { 14 | // TODO: Features that require kernel support like LSX and LASX can 15 | // be detected here once needed in std library or by the compiler. 16 | Loong64.HasLSX = hwcIsSet(hwCap, hwcap_LOONGARCH_LSX) 17 | Loong64.HasLASX = hwcIsSet(hwCap, hwcap_LOONGARCH_LASX) 18 | } 19 | 20 | func hwcIsSet(hwc uint, val uint) bool { 21 | return hwc&val != 0 22 | } 23 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_linux_mips64x.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 linux && (mips64 || mips64le) 6 | 7 | package cpu 8 | 9 | // HWCAP bits. These are exposed by the Linux kernel 5.4. 10 | const ( 11 | // CPU features 12 | hwcap_MIPS_MSA = 1 << 1 13 | ) 14 | 15 | func doinit() { 16 | // HWCAP feature bits 17 | MIPS64X.HasMSA = isSet(hwCap, hwcap_MIPS_MSA) 18 | } 19 | 20 | func isSet(hwc uint, value uint) bool { 21 | return hwc&value != 0 22 | } 23 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_linux_noinit.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 linux && !arm && !arm64 && !loong64 && !mips64 && !mips64le && !ppc64 && !ppc64le && !s390x && !riscv64 6 | 7 | package cpu 8 | 9 | func doinit() {} 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_loong64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2025 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 | #include "textflag.h" 6 | 7 | // func get_cpucfg(reg uint32) uint32 8 | TEXT ·get_cpucfg(SB), NOSPLIT|NOFRAME, $0 9 | MOVW reg+0(FP), R5 10 | // CPUCFG R5, R4 = 0x00006ca4 11 | WORD $0x00006ca4 12 | MOVW R4, ret+8(FP) 13 | RET 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_mips64x.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 mips64 || mips64le 6 | 7 | package cpu 8 | 9 | const cacheLineSize = 32 10 | 11 | func initOptions() { 12 | options = []option{ 13 | {Name: "msa", Feature: &MIPS64X.HasMSA}, 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_mipsx.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 mips || mipsle 6 | 7 | package cpu 8 | 9 | const cacheLineSize = 32 10 | 11 | func initOptions() {} 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_openbsd_arm64.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 | #include "textflag.h" 6 | 7 | TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0 8 | JMP libc_sysctl(SB) 9 | 10 | GLOBL ·libc_sysctl_trampoline_addr(SB), RODATA, $8 11 | DATA ·libc_sysctl_trampoline_addr(SB)/8, $libc_sysctl_trampoline<>(SB) 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_other_arm.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 !linux && arm 6 | 7 | package cpu 8 | 9 | func archInit() {} 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_other_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 !linux && !netbsd && !openbsd && arm64 6 | 7 | package cpu 8 | 9 | func doinit() {} 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_other_mips64x.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 !linux && (mips64 || mips64le) 6 | 7 | package cpu 8 | 9 | func archInit() { 10 | Initialized = true 11 | } 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_other_ppc64x.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 !aix && !linux && (ppc64 || ppc64le) 6 | 7 | package cpu 8 | 9 | func archInit() { 10 | PPC64.IsPOWER8 = true 11 | Initialized = true 12 | } 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_other_riscv64.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 && riscv64 6 | 7 | package cpu 8 | 9 | func archInit() { 10 | Initialized = true 11 | } 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_other_x86.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 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 || amd64p32 || (amd64 && (!darwin || !gc)) 6 | 7 | package cpu 8 | 9 | func darwinSupportsAVX512() bool { 10 | panic("only implemented for gc && amd64 && darwin") 11 | } 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_ppc64x.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 ppc64 || ppc64le 6 | 7 | package cpu 8 | 9 | const cacheLineSize = 128 10 | 11 | func initOptions() { 12 | options = []option{ 13 | {Name: "darn", Feature: &PPC64.HasDARN}, 14 | {Name: "scv", Feature: &PPC64.HasSCV}, 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_wasm.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 wasm 6 | 7 | package cpu 8 | 9 | // We're compiling the cpu package for an unknown (software-abstracted) CPU. 10 | // Make CacheLinePad an empty struct and hope that the usual struct alignment 11 | // rules are good enough. 12 | 13 | const cacheLineSize = 0 14 | 15 | func initOptions() {} 16 | 17 | func archInit() {} 18 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_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 | package cpu 6 | 7 | func archInit() { 8 | doinit() 9 | Initialized = true 10 | } 11 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_zos_s390x.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 cpu 6 | 7 | func initS390Xbase() { 8 | // get the facilities list 9 | facilities := stfle() 10 | 11 | // mandatory 12 | S390X.HasZARCH = facilities.Has(zarch) 13 | S390X.HasSTFLE = facilities.Has(stflef) 14 | S390X.HasLDISP = facilities.Has(ldisp) 15 | S390X.HasEIMM = facilities.Has(eimm) 16 | 17 | // optional 18 | S390X.HasETF3EH = facilities.Has(etf3eh) 19 | S390X.HasDFP = facilities.Has(dfp) 20 | S390X.HasMSA = facilities.Has(msa) 21 | S390X.HasVX = facilities.Has(vx) 22 | if S390X.HasVX { 23 | S390X.HasVXE = facilities.Has(vxe) 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/endian_big.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 armbe || arm64be || m68k || mips || mips64 || mips64p32 || ppc || ppc64 || s390 || s390x || shbe || sparc || sparc64 6 | 7 | package cpu 8 | 9 | // IsBigEndian records whether the GOARCH's byte order is big endian. 10 | const IsBigEndian = true 11 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/endian_little.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 386 || amd64 || amd64p32 || alpha || arm || arm64 || loong64 || mipsle || mips64le || mips64p32le || nios2 || ppc64le || riscv || riscv64 || sh || wasm 6 | 7 | package cpu 8 | 9 | // IsBigEndian records whether the GOARCH's byte order is big endian. 10 | const IsBigEndian = false 11 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/runtime_auxv.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 cpu 6 | 7 | // getAuxvFn is non-nil on Go 1.21+ (via runtime_auxv_go121.go init) 8 | // on platforms that use auxv. 9 | var getAuxvFn func() []uintptr 10 | 11 | func getAuxv() []uintptr { 12 | if getAuxvFn == nil { 13 | return nil 14 | } 15 | return getAuxvFn() 16 | } 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/runtime_auxv_go121.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.21 6 | 7 | package cpu 8 | 9 | import ( 10 | _ "unsafe" // for linkname 11 | ) 12 | 13 | //go:linkname runtime_getAuxv runtime.getAuxv 14 | func runtime_getAuxv() []uintptr 15 | 16 | func init() { 17 | getAuxvFn = runtime_getAuxv 18 | } 19 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/syscall_aix_gccgo.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 | // Recreate a getsystemcfg syscall handler instead of 6 | // using the one provided by x/sys/unix to avoid having 7 | // the dependency between them. (See golang.org/issue/32102) 8 | // Moreover, this file will be used during the building of 9 | // gccgo's libgo and thus must not used a CGo method. 10 | 11 | //go:build aix && gccgo 12 | 13 | package cpu 14 | 15 | import ( 16 | "syscall" 17 | ) 18 | 19 | //extern getsystemcfg 20 | func gccgoGetsystemcfg(label uint32) (r uint64) 21 | 22 | func callgetsystemcfg(label int) (r1 uintptr, e1 syscall.Errno) { 23 | r1 = uintptr(gccgoGetsystemcfg(uint32(label))) 24 | e1 = syscall.GetErrno() 25 | return 26 | } 27 | -------------------------------------------------------------------------------- /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_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/auxv_unsupported.go: -------------------------------------------------------------------------------- 1 | // Copyright 2025 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.21 && (aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos) 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | func Auxv() ([][2]uintptr, error) { 12 | return nil, syscall.ENOTSUP 13 | } 14 | -------------------------------------------------------------------------------- /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/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_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/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_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 | import "unsafe" 15 | 16 | func ioctl(fd int, req uint, arg uintptr) (err error) { 17 | r0, er := C.ioctl(C.int(fd), C.ulong(req), C.uintptr_t(arg)) 18 | if r0 == -1 && er != nil { 19 | err = er 20 | } 21 | return 22 | } 23 | 24 | func ioctlPtr(fd int, req uint, arg unsafe.Pointer) (err error) { 25 | r0, er := C.ioctl(C.int(fd), C.ulong(req), C.uintptr_t(uintptr(arg))) 26 | if r0 == -1 && er != nil { 27 | err = er 28 | } 29 | return 30 | } 31 | -------------------------------------------------------------------------------- /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_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_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/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/vgetrandom_linux.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 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 && go1.24 6 | 7 | package unix 8 | 9 | import _ "unsafe" 10 | 11 | //go:linkname vgetrandom runtime.vgetrandom 12 | //go:noescape 13 | func vgetrandom(p []byte, flags uint32) (ret int, supported bool) 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/vgetrandom_unsupported.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 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 || !go1.24 6 | 7 | package unix 8 | 9 | func vgetrandom(p []byte, flags uint32) (ret int, supported bool) { 10 | return -1, false 11 | } 12 | -------------------------------------------------------------------------------- /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/text/encoding/japanese/all.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 japanese 6 | 7 | import ( 8 | "golang.org/x/text/encoding" 9 | ) 10 | 11 | // All is a list of all defined encodings in this package. 12 | var All = []encoding.Encoding{EUCJP, ISO2022JP, ShiftJIS} 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/text/encoding/simplifiedchinese/all.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 simplifiedchinese 6 | 7 | import ( 8 | "golang.org/x/text/encoding" 9 | ) 10 | 11 | // All is a list of all defined encodings in this package. 12 | var All = []encoding.Encoding{GB18030, GBK, HZGB2312} 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/text/internal/language/common.go: -------------------------------------------------------------------------------- 1 | // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. 2 | 3 | package language 4 | 5 | // This file contains code common to the maketables.go and the package code. 6 | 7 | // AliasType is the type of an alias in AliasMap. 8 | type AliasType int8 9 | 10 | const ( 11 | Deprecated AliasType = iota 12 | Macro 13 | Legacy 14 | 15 | AliasTypeUnknown AliasType = -1 16 | ) 17 | -------------------------------------------------------------------------------- /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 | // Deprecated: use [ast.Unparen]. 11 | // 12 | //go:fix inline 13 | func Unparen(e ast.Expr) ast.Expr { return ast.Unparen(e) } 14 | -------------------------------------------------------------------------------- /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/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/golang.org/x/tools/internal/gocommand/invoke_notunix.go: -------------------------------------------------------------------------------- 1 | // Copyright 2025 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 !unix 6 | 7 | package gocommand 8 | 9 | import "os" 10 | 11 | // sigStuckProcess is the signal to send to kill a hanging subprocess. 12 | // On Unix we send SIGQUIT, but on non-Unix we only have os.Kill. 13 | var sigStuckProcess = os.Kill 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/internal/gocommand/invoke_unix.go: -------------------------------------------------------------------------------- 1 | // Copyright 2025 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 unix 6 | 7 | package gocommand 8 | 9 | import "syscall" 10 | 11 | // Sigstuckprocess is the signal to send to kill a hanging subprocess. 12 | // Send SIGQUIT to get a stack trace. 13 | var sigStuckProcess = syscall.SIGQUIT 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/internal/modindex/types.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 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 modindex 6 | 7 | import ( 8 | "strings" 9 | ) 10 | 11 | // some special types to avoid confusions 12 | 13 | // distinguish various types of directory names. It's easy to get confused. 14 | type Abspath string // absolute paths 15 | type Relpath string // paths with GOMODCACHE prefix removed 16 | 17 | func toRelpath(cachedir Abspath, s string) Relpath { 18 | if strings.HasPrefix(s, string(cachedir)) { 19 | if s == string(cachedir) { 20 | return Relpath("") 21 | } 22 | return Relpath(s[len(cachedir)+1:]) 23 | } 24 | return Relpath(s) 25 | } 26 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/internal/packagesinternal/packages.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 packagesinternal exposes internal-only fields from go/packages. 6 | package packagesinternal 7 | 8 | var GetDepsErrors = func(p any) []*PackageError { return nil } 9 | 10 | type PackageError struct { 11 | ImportStack []string // shortest path from package named on command line to this one 12 | Pos string // position of error (if present, file:line:col) 13 | Err string // the error itself 14 | } 15 | 16 | var TypecheckCgo int 17 | var DepsErrors int // must be set as a LoadMode to call GetDepsErrors 18 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/internal/pkgbits/flags.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 | package pkgbits 6 | 7 | const ( 8 | flagSyncMarkers = 1 << iota // file format contains sync markers 9 | ) 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/internal/pkgbits/support.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 | package pkgbits 6 | 7 | import "fmt" 8 | 9 | func assert(b bool) { 10 | if !b { 11 | panic("assertion failed") 12 | } 13 | } 14 | 15 | func panicf(format string, args ...any) { 16 | panic(fmt.Errorf(format, args...)) 17 | } 18 | -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/encoding/prototext/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 prototext marshals and unmarshals protocol buffer messages as the 6 | // textproto format. 7 | package prototext 8 | -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/internal/editiondefaults/defaults.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 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 editiondefaults contains the binary representation of the editions 6 | // defaults. 7 | package editiondefaults 8 | 9 | import _ "embed" 10 | 11 | //go:embed editions_defaults.binpb 12 | var Defaults []byte 13 | -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/internal/editiondefaults/editions_defaults.binpb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pivotal-cf/on-demand-service-broker/8e3cdf04616cd35491ec45daa067493f964c310b/vendor/google.golang.org/protobuf/internal/editiondefaults/editions_defaults.binpb -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/internal/flags/proto_legacy_disable.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 !protolegacy 6 | // +build !protolegacy 7 | 8 | package flags 9 | 10 | const protoLegacy = false 11 | -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/internal/flags/proto_legacy_enable.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 protolegacy 6 | // +build protolegacy 7 | 8 | package flags 9 | 10 | const protoLegacy = true 11 | -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/internal/genid/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 genid contains constants for declarations in descriptor.proto 6 | // and the well-known types. 7 | package genid 8 | 9 | import "google.golang.org/protobuf/reflect/protoreflect" 10 | 11 | const GoogleProtobuf_package protoreflect.FullName = "google.protobuf" 12 | -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/internal/genid/empty_gen.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 | // Code generated by generate-protos. DO NOT EDIT. 6 | 7 | package genid 8 | 9 | import ( 10 | protoreflect "google.golang.org/protobuf/reflect/protoreflect" 11 | ) 12 | 13 | const File_google_protobuf_empty_proto = "google/protobuf/empty.proto" 14 | 15 | // Names for google.protobuf.Empty. 16 | const ( 17 | Empty_message_name protoreflect.Name = "Empty" 18 | Empty_message_fullname protoreflect.FullName = "google.protobuf.Empty" 19 | ) 20 | -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/internal/genid/goname.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 genid 6 | 7 | // Go names of implementation-specific struct fields in generated messages. 8 | const ( 9 | State_goname = "state" 10 | 11 | SizeCache_goname = "sizeCache" 12 | SizeCacheA_goname = "XXX_sizecache" 13 | 14 | UnknownFields_goname = "unknownFields" 15 | UnknownFieldsA_goname = "XXX_unrecognized" 16 | 17 | ExtensionFields_goname = "extensionFields" 18 | ExtensionFieldsA_goname = "XXX_InternalExtensions" 19 | ExtensionFieldsB_goname = "XXX_extensions" 20 | ) 21 | -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/internal/genid/map_entry.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 genid 6 | 7 | import "google.golang.org/protobuf/reflect/protoreflect" 8 | 9 | // Generic field names and numbers for synthetic map entry messages. 10 | const ( 11 | MapEntry_Key_field_name protoreflect.Name = "key" 12 | MapEntry_Value_field_name protoreflect.Name = "value" 13 | 14 | MapEntry_Key_field_number protoreflect.FieldNumber = 1 15 | MapEntry_Value_field_number protoreflect.FieldNumber = 2 16 | ) 17 | -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/internal/genid/name.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 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 genid 6 | 7 | const ( 8 | NoUnkeyedLiteral_goname = "noUnkeyedLiteral" 9 | NoUnkeyedLiteralA_goname = "XXX_NoUnkeyedLiteral" 10 | 11 | BuilderSuffix_goname = "_builder" 12 | ) 13 | -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/internal/genid/wrappers.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 genid 6 | 7 | import "google.golang.org/protobuf/reflect/protoreflect" 8 | 9 | // Generic field name and number for messages in wrappers.proto. 10 | const ( 11 | WrapperValue_Value_field_name protoreflect.Name = "value" 12 | WrapperValue_Value_field_number protoreflect.FieldNumber = 1 13 | ) 14 | -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/internal/impl/codec_unsafe.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 impl 6 | 7 | // When using unsafe pointers, we can just treat enum values as int32s. 8 | 9 | var ( 10 | coderEnumNoZero = coderInt32NoZero 11 | coderEnum = coderInt32 12 | coderEnumPtr = coderInt32Ptr 13 | coderEnumSlice = coderInt32Slice 14 | coderEnumPackedSlice = coderInt32PackedSlice 15 | ) 16 | -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/internal/impl/enum.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 impl 6 | 7 | import ( 8 | "reflect" 9 | 10 | "google.golang.org/protobuf/reflect/protoreflect" 11 | ) 12 | 13 | type EnumInfo struct { 14 | GoReflectType reflect.Type // int32 kind 15 | Desc protoreflect.EnumDescriptor 16 | } 17 | 18 | func (t *EnumInfo) New(n protoreflect.EnumNumber) protoreflect.Enum { 19 | return reflect.ValueOf(n).Convert(t.GoReflectType).Interface().(protoreflect.Enum) 20 | } 21 | func (t *EnumInfo) Descriptor() protoreflect.EnumDescriptor { return t.Desc } 22 | -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/internal/protolazy/pointer_unsafe.go: -------------------------------------------------------------------------------- 1 | // Copyright 2024 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 protolazy 6 | 7 | import ( 8 | "sync/atomic" 9 | "unsafe" 10 | ) 11 | 12 | func atomicLoadIndex(p **[]IndexEntry) *[]IndexEntry { 13 | return (*[]IndexEntry)(atomic.LoadPointer((*unsafe.Pointer)(unsafe.Pointer(p)))) 14 | } 15 | func atomicStoreIndex(p **[]IndexEntry, v *[]IndexEntry) { 16 | atomic.StorePointer((*unsafe.Pointer)(unsafe.Pointer(p)), unsafe.Pointer(v)) 17 | } 18 | -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/proto/proto_methods.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 | // The protoreflect build tag disables use of fast-path methods. 6 | //go:build !protoreflect 7 | // +build !protoreflect 8 | 9 | package proto 10 | 11 | import ( 12 | "google.golang.org/protobuf/reflect/protoreflect" 13 | "google.golang.org/protobuf/runtime/protoiface" 14 | ) 15 | 16 | const hasProtoMethods = true 17 | 18 | func protoMethods(m protoreflect.Message) *protoiface.Methods { 19 | return m.ProtoMethods() 20 | } 21 | -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/proto/proto_reflect.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 | // The protoreflect build tag disables use of fast-path methods. 6 | //go:build protoreflect 7 | // +build protoreflect 8 | 9 | package proto 10 | 11 | import ( 12 | "google.golang.org/protobuf/reflect/protoreflect" 13 | "google.golang.org/protobuf/runtime/protoiface" 14 | ) 15 | 16 | const hasProtoMethods = false 17 | 18 | func protoMethods(m protoreflect.Message) *protoiface.Methods { 19 | return nil 20 | } 21 | -------------------------------------------------------------------------------- /vendor/google.golang.org/protobuf/runtime/protoiface/legacy.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 protoiface 6 | 7 | type MessageV1 interface { 8 | Reset() 9 | String() string 10 | ProtoMessage() 11 | } 12 | 13 | type ExtensionRangeV1 struct { 14 | Start, End int32 // both inclusive 15 | } 16 | -------------------------------------------------------------------------------- /vendor/gopkg.in/yaml.v2/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - "1.4.x" 5 | - "1.5.x" 6 | - "1.6.x" 7 | - "1.7.x" 8 | - "1.8.x" 9 | - "1.9.x" 10 | - "1.10.x" 11 | - "1.11.x" 12 | - "1.12.x" 13 | - "1.13.x" 14 | - "1.14.x" 15 | - "tip" 16 | 17 | go_import_path: gopkg.in/yaml.v2 18 | -------------------------------------------------------------------------------- /vendor/gopkg.in/yaml.v2/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 | -------------------------------------------------------------------------------- /vendor/gopkg.in/yaml.v2/writerc.go: -------------------------------------------------------------------------------- 1 | package yaml 2 | 3 | // Set the writer error and return false. 4 | func yaml_emitter_set_writer_error(emitter *yaml_emitter_t, problem string) bool { 5 | emitter.error = yaml_WRITER_ERROR 6 | emitter.problem = problem 7 | return false 8 | } 9 | 10 | // Flush the output buffer. 11 | func yaml_emitter_flush(emitter *yaml_emitter_t) bool { 12 | if emitter.write_handler == nil { 13 | panic("write handler not set") 14 | } 15 | 16 | // Check if the buffer is empty. 17 | if emitter.buffer_pos == 0 { 18 | return true 19 | } 20 | 21 | if err := emitter.write_handler(emitter, emitter.buffer[:emitter.buffer_pos]); err != nil { 22 | return yaml_emitter_set_writer_error(emitter, "write error: "+err.Error()) 23 | } 24 | emitter.buffer_pos = 0 25 | return true 26 | } 27 | -------------------------------------------------------------------------------- /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 | --------------------------------------------------------------------------------