├── .gitignore ├── .travis.yml ├── CHANGELOG.md ├── Gopkg.lock ├── Gopkg.toml ├── LICENSE ├── README.md ├── agent ├── agent.go ├── agent_test.go └── release │ └── release.go ├── bin ├── percona-qan-agent-installer │ ├── installer │ │ ├── installer.go │ │ └── installer_test.go │ ├── main.go │ └── main_test.go └── percona-qan-agent │ └── main.go ├── client ├── client_test.go └── ws.go ├── data ├── data_test.go ├── manager.go ├── sender.go ├── spooler.go ├── stats.go └── stats_test.go ├── docker-compose.yml ├── docs └── agent.rst ├── instance ├── instance_test.go ├── manager.go └── repo.go ├── log ├── log_test.go ├── manager.go └── relay.go ├── m ├── docker-compose.yml └── with_backoff.sh ├── mrms ├── checker │ └── mysql.go ├── manager.go ├── monitor.go └── monitor_test.go ├── mysql ├── error.go ├── factory.go ├── mysql.go └── mysql_test.go ├── pct ├── api.go ├── api_test.go ├── backoff.go ├── basedir.go ├── client.go ├── cmd │ ├── cmd.go │ └── cmd_test.go ├── errors.go ├── logger.go ├── pct_test.go ├── service.go ├── status.go ├── sync.go ├── sys.go └── sys_test.go ├── qan ├── analyzer │ ├── analyzer.go │ ├── analyzer_test.go │ ├── factory │ │ ├── factory.go │ │ └── factory_test.go │ ├── mongo │ │ ├── manager_test.go │ │ ├── mongo.go │ │ ├── mongo_test.go │ │ ├── profiler │ │ │ ├── aggregator │ │ │ │ ├── aggregator.go │ │ │ │ ├── aggregator_test.go │ │ │ │ └── stats.go │ │ │ ├── collector │ │ │ │ ├── collector.go │ │ │ │ ├── collector_test.go │ │ │ │ └── stats.go │ │ │ ├── monitor.go │ │ │ ├── monitors.go │ │ │ ├── parser │ │ │ │ ├── parser.go │ │ │ │ ├── parser_test.go │ │ │ │ └── stats.go │ │ │ ├── profiler.go │ │ │ ├── profiler_test.go │ │ │ ├── sender │ │ │ │ ├── sender.go │ │ │ │ ├── sender_test.go │ │ │ │ └── stats.go │ │ │ └── session.go │ │ └── status │ │ │ └── status.go │ ├── mysql │ │ ├── analyzer.go │ │ ├── analyzer_test.go │ │ ├── config │ │ │ ├── config.go │ │ │ └── config_test.go │ │ ├── factory │ │ │ ├── iter.go │ │ │ └── iter_test.go │ │ ├── iter │ │ │ └── iter.go │ │ ├── mysql.go │ │ ├── mysql_test.go │ │ ├── util │ │ │ ├── util.go │ │ │ └── util_test.go │ │ └── worker │ │ │ ├── perfschema │ │ │ ├── digests.go │ │ │ ├── iter.go │ │ │ ├── perfschema_test.go │ │ │ └── worker.go │ │ │ ├── slowlog │ │ │ ├── iter.go │ │ │ ├── slowlog_test.go │ │ │ └── worker.go │ │ │ └── worker.go │ └── report │ │ ├── report.go │ │ └── report_test.go ├── manager.go ├── manager_test.go └── qan_test.go ├── query ├── manager.go ├── plugin │ ├── errors.go │ ├── mongo │ │ ├── explain │ │ │ ├── explain.go │ │ │ └── explain_test.go │ │ ├── mongo.go │ │ ├── mongo_test.go │ │ └── summary │ │ │ ├── summary.go │ │ │ └── summary_test.go │ ├── mysql │ │ ├── explain │ │ │ ├── explain.go │ │ │ ├── explain_test.go │ │ │ ├── transform.go │ │ │ └── transform_test.go │ │ ├── mysql.go │ │ ├── mysql_test.go │ │ ├── summary │ │ │ ├── summary.go │ │ │ └── summary_test.go │ │ └── tableinfo │ │ │ ├── tableinfo.go │ │ │ └── tableinfo_test.go │ ├── os │ │ ├── os.go │ │ ├── os_test.go │ │ └── summary │ │ │ ├── summary.go │ │ │ └── summary_test.go │ └── plugin.go └── query_test.go ├── test ├── agent │ ├── config001.json │ ├── empty_config.json │ └── full_config.json ├── app.go ├── cmdtest │ └── cmdtest.go ├── coverage ├── fakeapi │ ├── fakeapi.go │ └── handlers.go ├── installer │ ├── my.cnf-percona_user │ ├── my.cnf-root_user │ └── my.cnf-wrong_user ├── instances │ └── 001 │ │ ├── mysql-BBB.json │ │ └── os-AAA.json ├── jenkins.sh ├── keys │ ├── cert.pem │ └── key.pem ├── mock │ ├── api.go │ ├── clock.go │ ├── cmd.go │ ├── data_client.go │ ├── interval_iter │ │ └── interval_iter.go │ ├── log_parser.go │ ├── mrms_monitor.go │ ├── mysql_factory.go │ ├── null_client.go │ ├── null_mysql.go │ ├── qan_analyzer.go │ ├── qan_worker │ │ └── qan_worker.go │ ├── service.go │ ├── spooler.go │ ├── ticker.go │ ├── ticker_factory.go │ ├── ws_client.go │ └── ws_server.go ├── mysql │ ├── defaults001 │ ├── netstat001 │ └── netstat002 ├── pct │ ├── fake-percona-agent-1.0.1.go │ ├── key.pem │ └── key.pub ├── profiling │ └── profiling.go ├── qan │ ├── perfschema │ │ ├── 001 │ │ │ ├── iter01.json │ │ │ ├── iter02.json │ │ │ └── res01.json │ │ ├── 002 │ │ │ ├── iter01.json │ │ │ ├── iter02.json │ │ │ └── res01.json │ │ ├── 003 │ │ │ ├── iter01.json │ │ │ ├── iter02.json │ │ │ ├── iter03.json │ │ │ ├── iter04.json │ │ │ ├── res02.json │ │ │ ├── res03.json │ │ │ └── res04.json │ │ ├── 004 │ │ │ ├── iter01.json │ │ │ ├── iter02.json │ │ │ └── res01.json │ │ └── 005 │ │ │ ├── iter01.json │ │ │ ├── iter02.json │ │ │ ├── iter03.json │ │ │ ├── res01.json │ │ │ └── res02.json │ ├── result001.json │ ├── slow001-half.json │ ├── slow001-no-examples.json │ ├── slow001-resume.json │ ├── slow001.json │ ├── slow001_another_tz.json │ └── slow011.json ├── rootdir │ └── rootdir.go ├── runner.sh ├── schema │ └── pmm.sql ├── slow-logs │ ├── slow001.log │ ├── slow002.log │ ├── slow003.log │ ├── slow004.log │ ├── slow005.log │ ├── slow006.log │ ├── slow007.log │ ├── slow008.log │ ├── slow009.log │ ├── slow010.log │ ├── slow011.log │ ├── slow012.log │ ├── slow013.log │ ├── slow014.log │ ├── slow015.log │ ├── slow016.log │ ├── slow017.log │ ├── slow018.log │ ├── slow019.log │ ├── slow020.log │ ├── slow021.log │ ├── slow022.log │ ├── slow023.log │ └── slow024.log ├── version │ └── version.go └── wait.go ├── ticker ├── manager.go ├── ticker.go ├── ticker_test.go └── wait.go ├── vendor ├── github.com │ ├── Masterminds │ │ └── semver │ │ │ ├── LICENSE.txt │ │ │ ├── collection.go │ │ │ ├── constraints.go │ │ │ ├── doc.go │ │ │ └── version.go │ ├── StackExchange │ │ └── wmi │ │ │ ├── LICENSE │ │ │ ├── swbemservices.go │ │ │ └── wmi.go │ ├── bradfitz │ │ └── slice │ │ │ ├── COPYING │ │ │ ├── LICENSE │ │ │ └── slice.go │ ├── davecgh │ │ └── go-spew │ │ │ ├── LICENSE │ │ │ └── spew │ │ │ ├── bypass.go │ │ │ ├── bypasssafe.go │ │ │ ├── common.go │ │ │ ├── config.go │ │ │ ├── doc.go │ │ │ ├── dump.go │ │ │ ├── format.go │ │ │ ├── spew.go │ │ │ └── testdata │ │ │ └── dumpcgo.go │ ├── fatih │ │ └── structs │ │ │ ├── LICENSE │ │ │ ├── field.go │ │ │ ├── structs.go │ │ │ └── tags.go │ ├── go-ole │ │ └── go-ole │ │ │ ├── LICENSE │ │ │ ├── com.go │ │ │ ├── com_func.go │ │ │ ├── connect.go │ │ │ ├── constants.go │ │ │ ├── error.go │ │ │ ├── error_func.go │ │ │ ├── error_windows.go │ │ │ ├── example │ │ │ ├── excel │ │ │ │ └── excel.go │ │ │ ├── excel2 │ │ │ │ └── excel.go │ │ │ ├── ie │ │ │ │ └── ie.go │ │ │ ├── itunes │ │ │ │ └── itunes.go │ │ │ ├── libreoffice │ │ │ │ └── libreoffice.go │ │ │ ├── mediaplayer │ │ │ │ └── mediaplayer.go │ │ │ ├── msagent │ │ │ │ └── msagent.go │ │ │ ├── msxml │ │ │ │ └── rssreader.go │ │ │ ├── outlook │ │ │ │ └── outlook.go │ │ │ └── winsock │ │ │ │ └── winsock.go │ │ │ ├── guid.go │ │ │ ├── iconnectionpoint.go │ │ │ ├── iconnectionpoint_func.go │ │ │ ├── iconnectionpoint_windows.go │ │ │ ├── iconnectionpointcontainer.go │ │ │ ├── iconnectionpointcontainer_func.go │ │ │ ├── iconnectionpointcontainer_windows.go │ │ │ ├── idispatch.go │ │ │ ├── idispatch_func.go │ │ │ ├── idispatch_windows.go │ │ │ ├── ienumvariant.go │ │ │ ├── ienumvariant_func.go │ │ │ ├── ienumvariant_windows.go │ │ │ ├── iinspectable.go │ │ │ ├── iinspectable_func.go │ │ │ ├── iinspectable_windows.go │ │ │ ├── iprovideclassinfo.go │ │ │ ├── iprovideclassinfo_func.go │ │ │ ├── iprovideclassinfo_windows.go │ │ │ ├── itypeinfo.go │ │ │ ├── itypeinfo_func.go │ │ │ ├── itypeinfo_windows.go │ │ │ ├── iunknown.go │ │ │ ├── iunknown_func.go │ │ │ ├── iunknown_windows.go │ │ │ ├── ole.go │ │ │ ├── oleutil │ │ │ ├── connection.go │ │ │ ├── connection_func.go │ │ │ ├── connection_windows.go │ │ │ ├── go-get.go │ │ │ └── oleutil.go │ │ │ ├── safearray.go │ │ │ ├── safearray_func.go │ │ │ ├── safearray_windows.go │ │ │ ├── safearrayconversion.go │ │ │ ├── safearrayslices.go │ │ │ ├── utility.go │ │ │ ├── variables.go │ │ │ ├── variant.go │ │ │ ├── variant_386.go │ │ │ ├── variant_amd64.go │ │ │ ├── variant_s390x.go │ │ │ ├── vt_string.go │ │ │ ├── winrt.go │ │ │ └── winrt_doc.go │ ├── go-sql-driver │ │ └── mysql │ │ │ ├── AUTHORS │ │ │ ├── LICENSE │ │ │ ├── appengine.go │ │ │ ├── auth.go │ │ │ ├── buffer.go │ │ │ ├── collations.go │ │ │ ├── connection.go │ │ │ ├── connection_go18.go │ │ │ ├── const.go │ │ │ ├── driver.go │ │ │ ├── dsn.go │ │ │ ├── errors.go │ │ │ ├── fields.go │ │ │ ├── infile.go │ │ │ ├── packets.go │ │ │ ├── result.go │ │ │ ├── rows.go │ │ │ ├── statement.go │ │ │ ├── transaction.go │ │ │ ├── utils.go │ │ │ ├── utils_go17.go │ │ │ └── utils_go18.go │ ├── google │ │ └── btree │ │ │ ├── LICENSE │ │ │ ├── btree.go │ │ │ └── btree_mem.go │ ├── gorilla │ │ ├── context │ │ │ ├── LICENSE │ │ │ ├── context.go │ │ │ └── doc.go │ │ └── mux │ │ │ ├── LICENSE │ │ │ ├── context_gorilla.go │ │ │ ├── context_native.go │ │ │ ├── doc.go │ │ │ ├── middleware.go │ │ │ ├── mux.go │ │ │ ├── regexp.go │ │ │ ├── route.go │ │ │ └── test_helpers.go │ ├── hashicorp │ │ └── go-version │ │ │ ├── LICENSE │ │ │ ├── constraint.go │ │ │ ├── version.go │ │ │ └── version_collection.go │ ├── montanaflynn │ │ └── stats │ │ │ ├── LICENSE │ │ │ ├── examples │ │ │ └── main.go │ │ │ ├── legacy.go │ │ │ ├── stats.go │ │ │ └── types.go │ ├── nu7hatch │ │ └── gouuid │ │ │ ├── COPYING │ │ │ └── uuid.go │ ├── percona │ │ ├── go-mysql │ │ │ ├── LICENSE │ │ │ ├── dsn │ │ │ │ └── dsn.go │ │ │ ├── event │ │ │ │ ├── aggregator.go │ │ │ │ ├── class.go │ │ │ │ ├── doc.go │ │ │ │ └── metrics.go │ │ │ ├── log │ │ │ │ ├── log.go │ │ │ │ └── slow │ │ │ │ │ └── parser.go │ │ │ ├── query │ │ │ │ └── query.go │ │ │ └── test │ │ │ │ └── test.go │ │ ├── percona-toolkit │ │ │ ├── COPYING │ │ │ ├── config │ │ │ │ └── deb │ │ │ │ │ └── copyright │ │ │ ├── sandbox │ │ │ │ └── servers │ │ │ │ │ ├── 5.6 │ │ │ │ │ └── sys │ │ │ │ │ │ ├── COPYING │ │ │ │ │ │ └── LICENSE │ │ │ │ │ └── 5.7 │ │ │ │ │ └── sys │ │ │ │ │ ├── COPYING │ │ │ │ │ └── LICENSE │ │ │ ├── src │ │ │ │ └── go │ │ │ │ │ ├── lib │ │ │ │ │ ├── config │ │ │ │ │ │ └── config.go │ │ │ │ │ ├── profiling │ │ │ │ │ │ └── profiling.go │ │ │ │ │ ├── tutil │ │ │ │ │ │ └── util.go │ │ │ │ │ └── versioncheck │ │ │ │ │ │ └── version_check.go │ │ │ │ │ ├── mongolib │ │ │ │ │ ├── explain │ │ │ │ │ │ └── explain.go │ │ │ │ │ ├── fingerprinter │ │ │ │ │ │ └── fingerprinter.go │ │ │ │ │ ├── profiler │ │ │ │ │ │ ├── profiler.go │ │ │ │ │ │ └── stats.go │ │ │ │ │ ├── proto │ │ │ │ │ │ ├── asserts.go │ │ │ │ │ │ ├── backgroundflushing.go │ │ │ │ │ │ ├── balancer_stats.go │ │ │ │ │ │ ├── bson.go │ │ │ │ │ │ ├── buildinfo.go │ │ │ │ │ │ ├── chunks_count.go │ │ │ │ │ │ ├── cmdlineopts.go │ │ │ │ │ │ ├── collstats.go │ │ │ │ │ │ ├── connections.go │ │ │ │ │ │ ├── currentOp.go │ │ │ │ │ │ ├── cursors.go │ │ │ │ │ │ ├── databases.go │ │ │ │ │ │ ├── durability.go │ │ │ │ │ │ ├── extrainfo.go │ │ │ │ │ │ ├── get_shard_map.go │ │ │ │ │ │ ├── globallock.go │ │ │ │ │ │ ├── hostinfo.go │ │ │ │ │ │ ├── locks.go │ │ │ │ │ │ ├── master_doc.go │ │ │ │ │ │ ├── memory.go │ │ │ │ │ │ ├── metrics.go │ │ │ │ │ │ ├── network.go │ │ │ │ │ │ ├── opcounters.go │ │ │ │ │ │ ├── oplog.go │ │ │ │ │ │ ├── profiler_status.go │ │ │ │ │ │ ├── replconfig.go │ │ │ │ │ │ ├── replicas.go │ │ │ │ │ │ ├── replstatus.go │ │ │ │ │ │ ├── server_status.go │ │ │ │ │ │ ├── sharding_changelog_stats.go │ │ │ │ │ │ ├── shards.go │ │ │ │ │ │ └── system.profile.go │ │ │ │ │ ├── stats │ │ │ │ │ │ ├── fingerprinter.go │ │ │ │ │ │ └── stats.go │ │ │ │ │ └── util │ │ │ │ │ │ └── util.go │ │ │ │ │ ├── pt-mongodb-query-digest │ │ │ │ │ ├── filter │ │ │ │ │ │ └── filters.go │ │ │ │ │ └── main.go │ │ │ │ │ ├── pt-mongodb-summary │ │ │ │ │ ├── main.go │ │ │ │ │ ├── oplog │ │ │ │ │ │ └── oplog.go │ │ │ │ │ └── templates │ │ │ │ │ │ ├── balancer.go │ │ │ │ │ │ ├── clusterwide.go │ │ │ │ │ │ ├── hostinfo.go │ │ │ │ │ │ ├── oplog.go │ │ │ │ │ │ ├── replicaset.go │ │ │ │ │ │ ├── runningops.go │ │ │ │ │ │ └── security.go │ │ │ │ │ └── pt-secure-collect │ │ │ │ │ ├── collect.go │ │ │ │ │ ├── encrypt.go │ │ │ │ │ ├── main.go │ │ │ │ │ ├── sanitize.go │ │ │ │ │ └── sanitize │ │ │ │ │ ├── sanitize.go │ │ │ │ │ └── util │ │ │ │ │ └── util.go │ │ │ ├── t │ │ │ │ └── lib │ │ │ │ │ └── bash │ │ │ │ │ ├── alt_cmds.t │ │ │ │ │ ├── collect.t │ │ │ │ │ ├── collect_mysql_info.t │ │ │ │ │ ├── collect_system_info.t │ │ │ │ │ ├── daemon.t │ │ │ │ │ ├── log_warn_die.t │ │ │ │ │ ├── mysql_options.t │ │ │ │ │ ├── parse_options.t │ │ │ │ │ ├── report_formatting.t │ │ │ │ │ ├── report_mysql_info.t │ │ │ │ │ ├── report_system_info.t │ │ │ │ │ ├── safeguards.t │ │ │ │ │ ├── summary_common.t │ │ │ │ │ └── tmpdir.t │ │ │ └── util │ │ │ │ └── NaturalDocs │ │ │ │ └── License.txt │ │ ├── pmgo │ │ │ ├── collection.go │ │ │ ├── database.go │ │ │ ├── dbtest.go │ │ │ ├── iter.go │ │ │ ├── pipe.go │ │ │ ├── pmgo.go │ │ │ ├── pmgomock │ │ │ │ ├── collection.go │ │ │ │ ├── database.go │ │ │ │ ├── dbtest.go │ │ │ │ ├── iter.go │ │ │ │ ├── pipe.go │ │ │ │ ├── pmgo.go │ │ │ │ ├── query.go │ │ │ │ └── session.go │ │ │ ├── query.go │ │ │ └── session.go │ │ └── pmm │ │ │ ├── LICENSE │ │ │ └── proto │ │ │ ├── agent.go │ │ │ ├── base.go │ │ │ ├── cmd.go │ │ │ ├── config │ │ │ ├── config.go │ │ │ └── qan.go │ │ │ ├── data.go │ │ │ ├── explain.go │ │ │ ├── instance.go │ │ │ ├── log.go │ │ │ ├── metrics │ │ │ └── metrics.go │ │ │ ├── null.go │ │ │ ├── prom.go │ │ │ ├── qan │ │ │ └── qan.go │ │ │ └── query │ │ │ └── query.go │ ├── petar │ │ └── GoLLRB │ │ │ ├── AUTHORS │ │ │ ├── LICENSE │ │ │ ├── example │ │ │ └── ex1.go │ │ │ └── llrb │ │ │ ├── avgvar.go │ │ │ ├── iterator.go │ │ │ ├── llrb-stats.go │ │ │ ├── llrb.go │ │ │ └── util.go │ ├── peterbourgon │ │ └── diskv │ │ │ ├── LICENSE │ │ │ ├── compression.go │ │ │ ├── diskv.go │ │ │ ├── examples │ │ │ ├── content-addressable-store │ │ │ │ └── cas.go │ │ │ └── super-simple-store │ │ │ │ └── super-simple-store.go │ │ │ └── index.go │ ├── pkg │ │ └── errors │ │ │ ├── LICENSE │ │ │ ├── errors.go │ │ │ └── stack.go │ ├── pmezard │ │ └── go-difflib │ │ │ ├── LICENSE │ │ │ └── difflib │ │ │ └── difflib.go │ ├── shirou │ │ ├── gopsutil │ │ │ ├── LICENSE │ │ │ ├── cpu │ │ │ │ ├── cpu.go │ │ │ │ ├── cpu_darwin.go │ │ │ │ ├── cpu_darwin_cgo.go │ │ │ │ ├── cpu_darwin_nocgo.go │ │ │ │ ├── cpu_fallback.go │ │ │ │ ├── cpu_freebsd.go │ │ │ │ ├── cpu_freebsd_386.go │ │ │ │ ├── cpu_freebsd_amd64.go │ │ │ │ ├── cpu_linux.go │ │ │ │ ├── cpu_openbsd.go │ │ │ │ ├── cpu_solaris.go │ │ │ │ └── cpu_windows.go │ │ │ ├── disk │ │ │ │ ├── disk.go │ │ │ │ ├── disk_darwin.go │ │ │ │ ├── disk_darwin.h │ │ │ │ ├── disk_darwin_386.go │ │ │ │ ├── disk_darwin_amd64.go │ │ │ │ ├── disk_darwin_arm64.go │ │ │ │ ├── disk_darwin_cgo.go │ │ │ │ ├── disk_darwin_nocgo.go │ │ │ │ ├── disk_fallback.go │ │ │ │ ├── disk_freebsd.go │ │ │ │ ├── disk_freebsd_386.go │ │ │ │ ├── disk_freebsd_amd64.go │ │ │ │ ├── disk_linux.go │ │ │ │ ├── disk_openbsd.go │ │ │ │ ├── disk_openbsd_amd64.go │ │ │ │ ├── disk_solaris.go │ │ │ │ ├── disk_unix.go │ │ │ │ ├── disk_windows.go │ │ │ │ ├── types_freebsd.go │ │ │ │ └── types_openbsd.go │ │ │ ├── doc.go │ │ │ ├── docker │ │ │ │ ├── docker.go │ │ │ │ ├── docker_linux.go │ │ │ │ └── docker_notlinux.go │ │ │ ├── host │ │ │ │ ├── host.go │ │ │ │ ├── host_darwin.go │ │ │ │ ├── host_darwin_386.go │ │ │ │ ├── host_darwin_amd64.go │ │ │ │ ├── host_fallback.go │ │ │ │ ├── host_freebsd.go │ │ │ │ ├── host_freebsd_386.go │ │ │ │ ├── host_freebsd_amd64.go │ │ │ │ ├── host_freebsd_arm.go │ │ │ │ ├── host_linux.go │ │ │ │ ├── host_linux_386.go │ │ │ │ ├── host_linux_amd64.go │ │ │ │ ├── host_linux_arm.go │ │ │ │ ├── host_linux_arm64.go │ │ │ │ ├── host_linux_mips.go │ │ │ │ ├── host_linux_mips64.go │ │ │ │ ├── host_linux_mips64le.go │ │ │ │ ├── host_linux_mipsle.go │ │ │ │ ├── host_linux_ppc64le.go │ │ │ │ ├── host_linux_s390x.go │ │ │ │ ├── host_openbsd.go │ │ │ │ ├── host_openbsd_amd64.go │ │ │ │ ├── host_solaris.go │ │ │ │ ├── host_windows.go │ │ │ │ ├── types_darwin.go │ │ │ │ ├── types_freebsd.go │ │ │ │ ├── types_linux.go │ │ │ │ └── types_openbsd.go │ │ │ ├── internal │ │ │ │ └── common │ │ │ │ │ ├── binary.go │ │ │ │ │ ├── common.go │ │ │ │ │ ├── common_darwin.go │ │ │ │ │ ├── common_freebsd.go │ │ │ │ │ ├── common_linux.go │ │ │ │ │ ├── common_openbsd.go │ │ │ │ │ ├── common_unix.go │ │ │ │ │ └── common_windows.go │ │ │ ├── load │ │ │ │ ├── load.go │ │ │ │ ├── load_bsd.go │ │ │ │ ├── load_darwin.go │ │ │ │ ├── load_fallback.go │ │ │ │ ├── load_linux.go │ │ │ │ └── load_windows.go │ │ │ ├── mem │ │ │ │ ├── mem.go │ │ │ │ ├── mem_darwin.go │ │ │ │ ├── mem_darwin_cgo.go │ │ │ │ ├── mem_darwin_nocgo.go │ │ │ │ ├── mem_fallback.go │ │ │ │ ├── mem_freebsd.go │ │ │ │ ├── mem_linux.go │ │ │ │ ├── mem_openbsd.go │ │ │ │ ├── mem_openbsd_amd64.go │ │ │ │ ├── mem_solaris.go │ │ │ │ ├── mem_windows.go │ │ │ │ └── types_openbsd.go │ │ │ ├── net │ │ │ │ ├── net.go │ │ │ │ ├── net_darwin.go │ │ │ │ ├── net_fallback.go │ │ │ │ ├── net_freebsd.go │ │ │ │ ├── net_linux.go │ │ │ │ ├── net_openbsd.go │ │ │ │ ├── net_unix.go │ │ │ │ └── net_windows.go │ │ │ └── process │ │ │ │ ├── process.go │ │ │ │ ├── process_darwin.go │ │ │ │ ├── process_darwin_386.go │ │ │ │ ├── process_darwin_amd64.go │ │ │ │ ├── process_fallback.go │ │ │ │ ├── process_freebsd.go │ │ │ │ ├── process_freebsd_386.go │ │ │ │ ├── process_freebsd_amd64.go │ │ │ │ ├── process_freebsd_arm.go │ │ │ │ ├── process_linux.go │ │ │ │ ├── process_openbsd.go │ │ │ │ ├── process_openbsd_amd64.go │ │ │ │ ├── process_posix.go │ │ │ │ ├── process_windows.go │ │ │ │ ├── process_windows_386.go │ │ │ │ ├── process_windows_amd64.go │ │ │ │ ├── types_darwin.go │ │ │ │ ├── types_freebsd.go │ │ │ │ └── types_openbsd.go │ │ └── w32 │ │ │ ├── AUTHORS │ │ │ ├── LICENSE │ │ │ ├── advapi32.go │ │ │ ├── comctl32.go │ │ │ ├── comdlg32.go │ │ │ ├── constants.go │ │ │ ├── dwmapi.go │ │ │ ├── gdi32.go │ │ │ ├── gdiplus.go │ │ │ ├── idispatch.go │ │ │ ├── istream.go │ │ │ ├── iunknown.go │ │ │ ├── kernel32.go │ │ │ ├── ole32.go │ │ │ ├── oleaut32.go │ │ │ ├── opengl32.go │ │ │ ├── psapi.go │ │ │ ├── shell32.go │ │ │ ├── typedef.go │ │ │ ├── user32.go │ │ │ ├── utils.go │ │ │ └── vars.go │ └── stretchr │ │ └── testify │ │ ├── LICENSE │ │ ├── _codegen │ │ └── main.go │ │ ├── assert │ │ ├── assertion_format.go │ │ ├── assertion_forward.go │ │ ├── assertions.go │ │ ├── doc.go │ │ ├── errors.go │ │ ├── forward_assertions.go │ │ └── http_assertions.go │ │ ├── doc.go │ │ ├── http │ │ ├── doc.go │ │ ├── test_response_writer.go │ │ └── test_round_tripper.go │ │ ├── mock │ │ ├── doc.go │ │ └── mock.go │ │ ├── require │ │ ├── doc.go │ │ ├── forward_requirements.go │ │ ├── require.go │ │ ├── require_forward.go │ │ └── requirements.go │ │ └── suite │ │ ├── doc.go │ │ ├── interfaces.go │ │ └── suite.go ├── go4.org │ ├── AUTHORS │ ├── LICENSE │ ├── bytereplacer │ │ └── bytereplacer.go │ ├── cloud │ │ ├── cloudlaunch │ │ │ └── cloudlaunch.go │ │ └── google │ │ │ ├── gceutil │ │ │ └── gceutil.go │ │ │ └── gcsutil │ │ │ └── storage.go │ ├── ctxutil │ │ └── ctxutil.go │ ├── errorutil │ │ └── highlight.go │ ├── fault │ │ └── fault.go │ ├── go4test │ │ └── cloudlaunch │ │ │ └── serve_on_cloud.go │ ├── jsonconfig │ │ ├── eval.go │ │ └── jsonconfig.go │ ├── legal │ │ └── legal.go │ ├── lock │ │ ├── lock.go │ │ ├── lock_appengine.go │ │ ├── lock_plan9.go │ │ ├── lock_sigzero.go │ │ ├── lock_unix.go │ │ └── lock_windows.go │ ├── media │ │ └── heif │ │ │ ├── bmff │ │ │ └── bmff.go │ │ │ ├── dumpheif │ │ │ └── dumpheif.go │ │ │ └── heif.go │ ├── net │ │ └── throttle │ │ │ └── throttle.go │ ├── oauthutil │ │ └── oauth.go │ ├── osutil │ │ ├── exec_plan9.go │ │ ├── exec_procfs.go │ │ ├── exec_solaris_amd64.go │ │ ├── exec_sysctl.go │ │ ├── exec_windows.go │ │ └── osutil.go │ ├── readerutil │ │ ├── bufreaderat.go │ │ ├── countingreader.go │ │ ├── fakeseeker.go │ │ ├── multireaderat.go │ │ ├── readersize.go │ │ ├── readerutil.go │ │ └── singlereader │ │ │ └── opener.go │ ├── reflectutil │ │ ├── asm_b.s │ │ ├── asm_b_14.s │ │ ├── asm_jmp.s │ │ ├── asm_jmp_14.s │ │ ├── reflectutil.go │ │ ├── swapper.go │ │ ├── swapper_safe.go │ │ ├── swapper_unsafe.go │ │ ├── swapper_unsafe_14.go │ │ └── swapper_unsafe_15.go │ ├── sort │ │ ├── genzfunc.go │ │ ├── search.go │ │ ├── sort.go │ │ └── zfuncversion.go │ ├── strutil │ │ ├── intern.go │ │ ├── strconv.go │ │ └── strutil.go │ ├── syncutil │ │ ├── gate.go │ │ ├── group.go │ │ ├── once.go │ │ ├── sem.go │ │ ├── singleflight │ │ │ └── singleflight.go │ │ ├── syncdebug │ │ │ └── syncdebug.go │ │ └── syncutil.go │ ├── testing │ │ └── functest │ │ │ └── functest.go │ ├── types │ │ └── types.go │ ├── wkfs │ │ ├── gcs │ │ │ └── gcs.go │ │ └── wkfs.go │ ├── writerutil │ │ └── writerutil.go │ └── xdgdir │ │ └── xdgdir.go ├── golang.org │ └── x │ │ ├── net │ │ ├── AUTHORS │ │ ├── CONTRIBUTORS │ │ ├── LICENSE │ │ ├── PATENTS │ │ ├── bpf │ │ │ ├── asm.go │ │ │ ├── constants.go │ │ │ ├── doc.go │ │ │ ├── instructions.go │ │ │ ├── setter.go │ │ │ ├── vm.go │ │ │ └── vm_instructions.go │ │ ├── context │ │ │ ├── context.go │ │ │ ├── ctxhttp │ │ │ │ ├── ctxhttp.go │ │ │ │ └── ctxhttp_pre17.go │ │ │ ├── go17.go │ │ │ ├── go19.go │ │ │ ├── pre_go17.go │ │ │ └── pre_go19.go │ │ ├── dict │ │ │ └── dict.go │ │ ├── dns │ │ │ └── dnsmessage │ │ │ │ └── message.go │ │ ├── html │ │ │ ├── atom │ │ │ │ ├── atom.go │ │ │ │ ├── gen.go │ │ │ │ └── table.go │ │ │ ├── charset │ │ │ │ └── charset.go │ │ │ ├── const.go │ │ │ ├── doc.go │ │ │ ├── doctype.go │ │ │ ├── entity.go │ │ │ ├── escape.go │ │ │ ├── foreign.go │ │ │ ├── node.go │ │ │ ├── parse.go │ │ │ ├── render.go │ │ │ └── token.go │ │ ├── http │ │ │ ├── httpguts │ │ │ │ ├── guts.go │ │ │ │ └── httplex.go │ │ │ └── httpproxy │ │ │ │ └── proxy.go │ │ ├── http2 │ │ │ ├── ciphers.go │ │ │ ├── client_conn_pool.go │ │ │ ├── configure_transport.go │ │ │ ├── databuffer.go │ │ │ ├── errors.go │ │ │ ├── flow.go │ │ │ ├── frame.go │ │ │ ├── go16.go │ │ │ ├── go17.go │ │ │ ├── go17_not18.go │ │ │ ├── go18.go │ │ │ ├── go19.go │ │ │ ├── gotrack.go │ │ │ ├── h2demo │ │ │ │ ├── h2demo.go │ │ │ │ ├── launch.go │ │ │ │ └── tmpl.go │ │ │ ├── h2i │ │ │ │ └── h2i.go │ │ │ ├── headermap.go │ │ │ ├── hpack │ │ │ │ ├── encode.go │ │ │ │ ├── hpack.go │ │ │ │ ├── huffman.go │ │ │ │ └── tables.go │ │ │ ├── http2.go │ │ │ ├── not_go16.go │ │ │ ├── not_go17.go │ │ │ ├── not_go18.go │ │ │ ├── not_go19.go │ │ │ ├── pipe.go │ │ │ ├── server.go │ │ │ ├── transport.go │ │ │ ├── write.go │ │ │ ├── writesched.go │ │ │ ├── writesched_priority.go │ │ │ └── writesched_random.go │ │ ├── icmp │ │ │ ├── dstunreach.go │ │ │ ├── echo.go │ │ │ ├── endpoint.go │ │ │ ├── extension.go │ │ │ ├── helper_posix.go │ │ │ ├── interface.go │ │ │ ├── ipv4.go │ │ │ ├── ipv6.go │ │ │ ├── listen_posix.go │ │ │ ├── listen_stub.go │ │ │ ├── message.go │ │ │ ├── messagebody.go │ │ │ ├── mpls.go │ │ │ ├── multipart.go │ │ │ ├── packettoobig.go │ │ │ ├── paramprob.go │ │ │ ├── sys_freebsd.go │ │ │ └── timeexceeded.go │ │ ├── idna │ │ │ ├── idna.go │ │ │ ├── punycode.go │ │ │ ├── tables.go │ │ │ ├── trie.go │ │ │ └── trieval.go │ │ ├── internal │ │ │ ├── iana │ │ │ │ ├── const.go │ │ │ │ └── gen.go │ │ │ ├── nettest │ │ │ │ ├── helper_bsd.go │ │ │ │ ├── helper_nobsd.go │ │ │ │ ├── helper_posix.go │ │ │ │ ├── helper_stub.go │ │ │ │ ├── helper_unix.go │ │ │ │ ├── helper_windows.go │ │ │ │ ├── interface.go │ │ │ │ ├── rlimit.go │ │ │ │ └── stack.go │ │ │ ├── socket │ │ │ │ ├── cmsghdr.go │ │ │ │ ├── cmsghdr_bsd.go │ │ │ │ ├── cmsghdr_linux_32bit.go │ │ │ │ ├── cmsghdr_linux_64bit.go │ │ │ │ ├── cmsghdr_solaris_64bit.go │ │ │ │ ├── cmsghdr_stub.go │ │ │ │ ├── defs_darwin.go │ │ │ │ ├── defs_dragonfly.go │ │ │ │ ├── defs_freebsd.go │ │ │ │ ├── defs_linux.go │ │ │ │ ├── defs_netbsd.go │ │ │ │ ├── defs_openbsd.go │ │ │ │ ├── defs_solaris.go │ │ │ │ ├── error_unix.go │ │ │ │ ├── error_windows.go │ │ │ │ ├── iovec_32bit.go │ │ │ │ ├── iovec_64bit.go │ │ │ │ ├── iovec_solaris_64bit.go │ │ │ │ ├── iovec_stub.go │ │ │ │ ├── mmsghdr_stub.go │ │ │ │ ├── mmsghdr_unix.go │ │ │ │ ├── msghdr_bsd.go │ │ │ │ ├── msghdr_bsdvar.go │ │ │ │ ├── msghdr_linux.go │ │ │ │ ├── msghdr_linux_32bit.go │ │ │ │ ├── msghdr_linux_64bit.go │ │ │ │ ├── msghdr_openbsd.go │ │ │ │ ├── msghdr_solaris_64bit.go │ │ │ │ ├── msghdr_stub.go │ │ │ │ ├── rawconn.go │ │ │ │ ├── rawconn_mmsg.go │ │ │ │ ├── rawconn_msg.go │ │ │ │ ├── rawconn_nommsg.go │ │ │ │ ├── rawconn_nomsg.go │ │ │ │ ├── rawconn_stub.go │ │ │ │ ├── reflect.go │ │ │ │ ├── socket.go │ │ │ │ ├── sys.go │ │ │ │ ├── sys_bsd.go │ │ │ │ ├── sys_bsdvar.go │ │ │ │ ├── sys_darwin.go │ │ │ │ ├── sys_dragonfly.go │ │ │ │ ├── sys_linux.go │ │ │ │ ├── sys_linux_386.go │ │ │ │ ├── sys_linux_386.s │ │ │ │ ├── sys_linux_amd64.go │ │ │ │ ├── sys_linux_arm.go │ │ │ │ ├── sys_linux_arm64.go │ │ │ │ ├── sys_linux_mips.go │ │ │ │ ├── sys_linux_mips64.go │ │ │ │ ├── sys_linux_mips64le.go │ │ │ │ ├── sys_linux_mipsle.go │ │ │ │ ├── sys_linux_ppc64.go │ │ │ │ ├── sys_linux_ppc64le.go │ │ │ │ ├── sys_linux_s390x.go │ │ │ │ ├── sys_linux_s390x.s │ │ │ │ ├── sys_netbsd.go │ │ │ │ ├── sys_posix.go │ │ │ │ ├── sys_solaris.go │ │ │ │ ├── sys_solaris_amd64.s │ │ │ │ ├── sys_stub.go │ │ │ │ ├── sys_unix.go │ │ │ │ ├── sys_windows.go │ │ │ │ ├── zsys_darwin_386.go │ │ │ │ ├── zsys_darwin_amd64.go │ │ │ │ ├── zsys_darwin_arm.go │ │ │ │ ├── zsys_darwin_arm64.go │ │ │ │ ├── zsys_dragonfly_amd64.go │ │ │ │ ├── zsys_freebsd_386.go │ │ │ │ ├── zsys_freebsd_amd64.go │ │ │ │ ├── zsys_freebsd_arm.go │ │ │ │ ├── zsys_linux_386.go │ │ │ │ ├── zsys_linux_amd64.go │ │ │ │ ├── zsys_linux_arm.go │ │ │ │ ├── zsys_linux_arm64.go │ │ │ │ ├── zsys_linux_mips.go │ │ │ │ ├── zsys_linux_mips64.go │ │ │ │ ├── zsys_linux_mips64le.go │ │ │ │ ├── zsys_linux_mipsle.go │ │ │ │ ├── zsys_linux_ppc64.go │ │ │ │ ├── zsys_linux_ppc64le.go │ │ │ │ ├── zsys_linux_s390x.go │ │ │ │ ├── zsys_netbsd_386.go │ │ │ │ ├── zsys_netbsd_amd64.go │ │ │ │ ├── zsys_netbsd_arm.go │ │ │ │ ├── zsys_openbsd_386.go │ │ │ │ ├── zsys_openbsd_amd64.go │ │ │ │ ├── zsys_openbsd_arm.go │ │ │ │ └── zsys_solaris_amd64.go │ │ │ ├── socks │ │ │ │ ├── client.go │ │ │ │ └── socks.go │ │ │ ├── sockstest │ │ │ │ └── server.go │ │ │ └── timeseries │ │ │ │ └── timeseries.go │ │ ├── ipv4 │ │ │ ├── batch.go │ │ │ ├── control.go │ │ │ ├── control_bsd.go │ │ │ ├── control_pktinfo.go │ │ │ ├── control_stub.go │ │ │ ├── control_unix.go │ │ │ ├── control_windows.go │ │ │ ├── defs_darwin.go │ │ │ ├── defs_dragonfly.go │ │ │ ├── defs_freebsd.go │ │ │ ├── defs_linux.go │ │ │ ├── defs_netbsd.go │ │ │ ├── defs_openbsd.go │ │ │ ├── defs_solaris.go │ │ │ ├── dgramopt.go │ │ │ ├── doc.go │ │ │ ├── endpoint.go │ │ │ ├── gen.go │ │ │ ├── genericopt.go │ │ │ ├── header.go │ │ │ ├── helper.go │ │ │ ├── iana.go │ │ │ ├── icmp.go │ │ │ ├── icmp_linux.go │ │ │ ├── icmp_stub.go │ │ │ ├── packet.go │ │ │ ├── packet_go1_8.go │ │ │ ├── packet_go1_9.go │ │ │ ├── payload.go │ │ │ ├── payload_cmsg.go │ │ │ ├── payload_cmsg_go1_8.go │ │ │ ├── payload_cmsg_go1_9.go │ │ │ ├── payload_nocmsg.go │ │ │ ├── sockopt.go │ │ │ ├── sockopt_posix.go │ │ │ ├── sockopt_stub.go │ │ │ ├── sys_asmreq.go │ │ │ ├── sys_asmreq_stub.go │ │ │ ├── sys_asmreqn.go │ │ │ ├── sys_asmreqn_stub.go │ │ │ ├── sys_bpf.go │ │ │ ├── sys_bpf_stub.go │ │ │ ├── sys_bsd.go │ │ │ ├── sys_darwin.go │ │ │ ├── sys_dragonfly.go │ │ │ ├── sys_freebsd.go │ │ │ ├── sys_linux.go │ │ │ ├── sys_solaris.go │ │ │ ├── sys_ssmreq.go │ │ │ ├── sys_ssmreq_stub.go │ │ │ ├── sys_stub.go │ │ │ ├── sys_windows.go │ │ │ ├── zsys_darwin.go │ │ │ ├── zsys_dragonfly.go │ │ │ ├── zsys_freebsd_386.go │ │ │ ├── zsys_freebsd_amd64.go │ │ │ ├── zsys_freebsd_arm.go │ │ │ ├── zsys_linux_386.go │ │ │ ├── zsys_linux_amd64.go │ │ │ ├── zsys_linux_arm.go │ │ │ ├── zsys_linux_arm64.go │ │ │ ├── zsys_linux_mips.go │ │ │ ├── zsys_linux_mips64.go │ │ │ ├── zsys_linux_mips64le.go │ │ │ ├── zsys_linux_mipsle.go │ │ │ ├── zsys_linux_ppc.go │ │ │ ├── zsys_linux_ppc64.go │ │ │ ├── zsys_linux_ppc64le.go │ │ │ ├── zsys_linux_s390x.go │ │ │ ├── zsys_netbsd.go │ │ │ ├── zsys_openbsd.go │ │ │ └── zsys_solaris.go │ │ ├── ipv6 │ │ │ ├── batch.go │ │ │ ├── control.go │ │ │ ├── control_rfc2292_unix.go │ │ │ ├── control_rfc3542_unix.go │ │ │ ├── control_stub.go │ │ │ ├── control_unix.go │ │ │ ├── control_windows.go │ │ │ ├── defs_darwin.go │ │ │ ├── defs_dragonfly.go │ │ │ ├── defs_freebsd.go │ │ │ ├── defs_linux.go │ │ │ ├── defs_netbsd.go │ │ │ ├── defs_openbsd.go │ │ │ ├── defs_solaris.go │ │ │ ├── dgramopt.go │ │ │ ├── doc.go │ │ │ ├── endpoint.go │ │ │ ├── gen.go │ │ │ ├── genericopt.go │ │ │ ├── header.go │ │ │ ├── helper.go │ │ │ ├── iana.go │ │ │ ├── icmp.go │ │ │ ├── icmp_bsd.go │ │ │ ├── icmp_linux.go │ │ │ ├── icmp_solaris.go │ │ │ ├── icmp_stub.go │ │ │ ├── icmp_windows.go │ │ │ ├── payload.go │ │ │ ├── payload_cmsg.go │ │ │ ├── payload_cmsg_go1_8.go │ │ │ ├── payload_cmsg_go1_9.go │ │ │ ├── payload_nocmsg.go │ │ │ ├── sockopt.go │ │ │ ├── sockopt_posix.go │ │ │ ├── sockopt_stub.go │ │ │ ├── sys_asmreq.go │ │ │ ├── sys_asmreq_stub.go │ │ │ ├── sys_bpf.go │ │ │ ├── sys_bpf_stub.go │ │ │ ├── sys_bsd.go │ │ │ ├── sys_darwin.go │ │ │ ├── sys_freebsd.go │ │ │ ├── sys_linux.go │ │ │ ├── sys_solaris.go │ │ │ ├── sys_ssmreq.go │ │ │ ├── sys_ssmreq_stub.go │ │ │ ├── sys_stub.go │ │ │ ├── sys_windows.go │ │ │ ├── zsys_darwin.go │ │ │ ├── zsys_dragonfly.go │ │ │ ├── zsys_freebsd_386.go │ │ │ ├── zsys_freebsd_amd64.go │ │ │ ├── zsys_freebsd_arm.go │ │ │ ├── zsys_linux_386.go │ │ │ ├── zsys_linux_amd64.go │ │ │ ├── zsys_linux_arm.go │ │ │ ├── zsys_linux_arm64.go │ │ │ ├── zsys_linux_mips.go │ │ │ ├── zsys_linux_mips64.go │ │ │ ├── zsys_linux_mips64le.go │ │ │ ├── zsys_linux_mipsle.go │ │ │ ├── zsys_linux_ppc.go │ │ │ ├── zsys_linux_ppc64.go │ │ │ ├── zsys_linux_ppc64le.go │ │ │ ├── zsys_linux_s390x.go │ │ │ ├── zsys_netbsd.go │ │ │ ├── zsys_openbsd.go │ │ │ └── zsys_solaris.go │ │ ├── lif │ │ │ ├── address.go │ │ │ ├── binary.go │ │ │ ├── defs_solaris.go │ │ │ ├── lif.go │ │ │ ├── link.go │ │ │ ├── sys.go │ │ │ ├── sys_solaris_amd64.s │ │ │ ├── syscall.go │ │ │ └── zsys_solaris_amd64.go │ │ ├── nettest │ │ │ ├── conntest.go │ │ │ ├── conntest_go16.go │ │ │ └── conntest_go17.go │ │ ├── netutil │ │ │ └── listen.go │ │ ├── proxy │ │ │ ├── direct.go │ │ │ ├── per_host.go │ │ │ ├── proxy.go │ │ │ └── socks5.go │ │ ├── publicsuffix │ │ │ ├── gen.go │ │ │ ├── list.go │ │ │ └── table.go │ │ ├── route │ │ │ ├── address.go │ │ │ ├── binary.go │ │ │ ├── defs_darwin.go │ │ │ ├── defs_dragonfly.go │ │ │ ├── defs_freebsd.go │ │ │ ├── defs_netbsd.go │ │ │ ├── defs_openbsd.go │ │ │ ├── interface.go │ │ │ ├── interface_announce.go │ │ │ ├── interface_classic.go │ │ │ ├── interface_freebsd.go │ │ │ ├── interface_multicast.go │ │ │ ├── interface_openbsd.go │ │ │ ├── message.go │ │ │ ├── route.go │ │ │ ├── route_classic.go │ │ │ ├── route_openbsd.go │ │ │ ├── sys.go │ │ │ ├── sys_darwin.go │ │ │ ├── sys_dragonfly.go │ │ │ ├── sys_freebsd.go │ │ │ ├── sys_netbsd.go │ │ │ ├── sys_openbsd.go │ │ │ ├── syscall.go │ │ │ ├── zsys_darwin.go │ │ │ ├── zsys_dragonfly.go │ │ │ ├── zsys_freebsd_386.go │ │ │ ├── zsys_freebsd_amd64.go │ │ │ ├── zsys_freebsd_arm.go │ │ │ ├── zsys_netbsd.go │ │ │ └── zsys_openbsd.go │ │ ├── trace │ │ │ ├── events.go │ │ │ ├── histogram.go │ │ │ ├── trace.go │ │ │ ├── trace_go16.go │ │ │ └── trace_go17.go │ │ ├── webdav │ │ │ ├── file.go │ │ │ ├── file_go1.6.go │ │ │ ├── file_go1.7.go │ │ │ ├── if.go │ │ │ ├── internal │ │ │ │ └── xml │ │ │ │ │ ├── marshal.go │ │ │ │ │ ├── read.go │ │ │ │ │ ├── typeinfo.go │ │ │ │ │ └── xml.go │ │ │ ├── litmus_test_server.go │ │ │ ├── lock.go │ │ │ ├── prop.go │ │ │ ├── webdav.go │ │ │ └── xml.go │ │ ├── websocket │ │ │ ├── client.go │ │ │ ├── dial.go │ │ │ ├── hybi.go │ │ │ ├── server.go │ │ │ └── websocket.go │ │ └── xsrftoken │ │ │ └── xsrf.go │ │ └── sys │ │ ├── AUTHORS │ │ ├── CONTRIBUTORS │ │ ├── LICENSE │ │ ├── PATENTS │ │ ├── cpu │ │ ├── cpu.go │ │ ├── cpu_arm.go │ │ ├── cpu_arm64.go │ │ ├── cpu_mips64x.go │ │ ├── cpu_mipsx.go │ │ ├── cpu_ppc64x.go │ │ ├── cpu_s390x.go │ │ ├── cpu_x86.go │ │ └── cpu_x86.s │ │ ├── plan9 │ │ ├── asm.s │ │ ├── asm_plan9_386.s │ │ ├── asm_plan9_amd64.s │ │ ├── asm_plan9_arm.s │ │ ├── const_plan9.go │ │ ├── dir_plan9.go │ │ ├── env_plan9.go │ │ ├── errors_plan9.go │ │ ├── pwd_go15_plan9.go │ │ ├── pwd_plan9.go │ │ ├── race.go │ │ ├── race0.go │ │ ├── str.go │ │ ├── syscall.go │ │ ├── syscall_plan9.go │ │ ├── zsyscall_plan9_386.go │ │ ├── zsyscall_plan9_amd64.go │ │ ├── zsyscall_plan9_arm.go │ │ └── zsysnum_plan9.go │ │ ├── unix │ │ ├── affinity_linux.go │ │ ├── asm_darwin_386.s │ │ ├── asm_darwin_amd64.s │ │ ├── asm_darwin_arm.s │ │ ├── asm_darwin_arm64.s │ │ ├── asm_dragonfly_amd64.s │ │ ├── asm_freebsd_386.s │ │ ├── asm_freebsd_amd64.s │ │ ├── asm_freebsd_arm.s │ │ ├── asm_linux_386.s │ │ ├── asm_linux_amd64.s │ │ ├── asm_linux_arm.s │ │ ├── asm_linux_arm64.s │ │ ├── asm_linux_mips64x.s │ │ ├── asm_linux_mipsx.s │ │ ├── asm_linux_ppc64x.s │ │ ├── asm_linux_s390x.s │ │ ├── asm_netbsd_386.s │ │ ├── asm_netbsd_amd64.s │ │ ├── asm_netbsd_arm.s │ │ ├── asm_openbsd_386.s │ │ ├── asm_openbsd_amd64.s │ │ ├── asm_openbsd_arm.s │ │ ├── asm_solaris_amd64.s │ │ ├── bluetooth_linux.go │ │ ├── cap_freebsd.go │ │ ├── constants.go │ │ ├── dev_darwin.go │ │ ├── dev_dragonfly.go │ │ ├── dev_freebsd.go │ │ ├── dev_linux.go │ │ ├── dev_netbsd.go │ │ ├── dev_openbsd.go │ │ ├── dirent.go │ │ ├── endian_big.go │ │ ├── endian_little.go │ │ ├── env_unix.go │ │ ├── errors_freebsd_386.go │ │ ├── errors_freebsd_amd64.go │ │ ├── errors_freebsd_arm.go │ │ ├── fcntl.go │ │ ├── fcntl_linux_32bit.go │ │ ├── gccgo.go │ │ ├── gccgo_c.c │ │ ├── gccgo_linux_amd64.go │ │ ├── linux │ │ │ ├── mkall.go │ │ │ └── types.go │ │ ├── mkpost.go │ │ ├── openbsd_pledge.go │ │ ├── pagesize_unix.go │ │ ├── race.go │ │ ├── race0.go │ │ ├── sockcmsg_linux.go │ │ ├── sockcmsg_unix.go │ │ ├── str.go │ │ ├── syscall.go │ │ ├── syscall_bsd.go │ │ ├── syscall_darwin.go │ │ ├── syscall_darwin_386.go │ │ ├── syscall_darwin_amd64.go │ │ ├── syscall_darwin_arm.go │ │ ├── syscall_darwin_arm64.go │ │ ├── syscall_dragonfly.go │ │ ├── syscall_dragonfly_amd64.go │ │ ├── syscall_freebsd.go │ │ ├── syscall_freebsd_386.go │ │ ├── syscall_freebsd_amd64.go │ │ ├── syscall_freebsd_arm.go │ │ ├── syscall_linux.go │ │ ├── syscall_linux_386.go │ │ ├── syscall_linux_amd64.go │ │ ├── syscall_linux_amd64_gc.go │ │ ├── syscall_linux_arm.go │ │ ├── syscall_linux_arm64.go │ │ ├── syscall_linux_gc.go │ │ ├── syscall_linux_gccgo.go │ │ ├── syscall_linux_mips64x.go │ │ ├── syscall_linux_mipsx.go │ │ ├── syscall_linux_ppc64x.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_openbsd.go │ │ ├── syscall_openbsd_386.go │ │ ├── syscall_openbsd_amd64.go │ │ ├── syscall_openbsd_arm.go │ │ ├── syscall_solaris.go │ │ ├── syscall_solaris_amd64.go │ │ ├── syscall_unix.go │ │ ├── syscall_unix_gc.go │ │ ├── timestruct.go │ │ ├── types_darwin.go │ │ ├── types_dragonfly.go │ │ ├── types_freebsd.go │ │ ├── types_netbsd.go │ │ ├── types_openbsd.go │ │ ├── types_solaris.go │ │ ├── zerrors_darwin_386.go │ │ ├── zerrors_darwin_amd64.go │ │ ├── zerrors_darwin_arm.go │ │ ├── zerrors_darwin_arm64.go │ │ ├── zerrors_dragonfly_amd64.go │ │ ├── zerrors_freebsd_386.go │ │ ├── zerrors_freebsd_amd64.go │ │ ├── zerrors_freebsd_arm.go │ │ ├── zerrors_linux_386.go │ │ ├── zerrors_linux_amd64.go │ │ ├── zerrors_linux_arm.go │ │ ├── zerrors_linux_arm64.go │ │ ├── zerrors_linux_mips.go │ │ ├── zerrors_linux_mips64.go │ │ ├── zerrors_linux_mips64le.go │ │ ├── zerrors_linux_mipsle.go │ │ ├── zerrors_linux_ppc64.go │ │ ├── zerrors_linux_ppc64le.go │ │ ├── zerrors_linux_s390x.go │ │ ├── zerrors_linux_sparc64.go │ │ ├── zerrors_netbsd_386.go │ │ ├── zerrors_netbsd_amd64.go │ │ ├── zerrors_netbsd_arm.go │ │ ├── zerrors_openbsd_386.go │ │ ├── zerrors_openbsd_amd64.go │ │ ├── zerrors_openbsd_arm.go │ │ ├── zerrors_solaris_amd64.go │ │ ├── zptrace386_linux.go │ │ ├── zptracearm_linux.go │ │ ├── zptracemips_linux.go │ │ ├── zptracemipsle_linux.go │ │ ├── zsyscall_darwin_386.go │ │ ├── zsyscall_darwin_amd64.go │ │ ├── zsyscall_darwin_arm.go │ │ ├── zsyscall_darwin_arm64.go │ │ ├── zsyscall_dragonfly_amd64.go │ │ ├── zsyscall_freebsd_386.go │ │ ├── zsyscall_freebsd_amd64.go │ │ ├── zsyscall_freebsd_arm.go │ │ ├── zsyscall_linux_386.go │ │ ├── zsyscall_linux_amd64.go │ │ ├── zsyscall_linux_arm.go │ │ ├── zsyscall_linux_arm64.go │ │ ├── zsyscall_linux_mips.go │ │ ├── zsyscall_linux_mips64.go │ │ ├── zsyscall_linux_mips64le.go │ │ ├── zsyscall_linux_mipsle.go │ │ ├── zsyscall_linux_ppc64.go │ │ ├── zsyscall_linux_ppc64le.go │ │ ├── zsyscall_linux_s390x.go │ │ ├── zsyscall_linux_sparc64.go │ │ ├── zsyscall_netbsd_386.go │ │ ├── zsyscall_netbsd_amd64.go │ │ ├── zsyscall_netbsd_arm.go │ │ ├── zsyscall_openbsd_386.go │ │ ├── zsyscall_openbsd_amd64.go │ │ ├── zsyscall_openbsd_arm.go │ │ ├── zsyscall_solaris_amd64.go │ │ ├── zsysctl_openbsd_386.go │ │ ├── zsysctl_openbsd_amd64.go │ │ ├── zsysctl_openbsd_arm.go │ │ ├── zsysnum_darwin_386.go │ │ ├── zsysnum_darwin_amd64.go │ │ ├── zsysnum_darwin_arm.go │ │ ├── zsysnum_darwin_arm64.go │ │ ├── zsysnum_dragonfly_amd64.go │ │ ├── zsysnum_freebsd_386.go │ │ ├── zsysnum_freebsd_amd64.go │ │ ├── zsysnum_freebsd_arm.go │ │ ├── zsysnum_linux_386.go │ │ ├── zsysnum_linux_amd64.go │ │ ├── zsysnum_linux_arm.go │ │ ├── zsysnum_linux_arm64.go │ │ ├── zsysnum_linux_mips.go │ │ ├── zsysnum_linux_mips64.go │ │ ├── zsysnum_linux_mips64le.go │ │ ├── zsysnum_linux_mipsle.go │ │ ├── zsysnum_linux_ppc64.go │ │ ├── zsysnum_linux_ppc64le.go │ │ ├── zsysnum_linux_s390x.go │ │ ├── zsysnum_linux_sparc64.go │ │ ├── zsysnum_netbsd_386.go │ │ ├── zsysnum_netbsd_amd64.go │ │ ├── zsysnum_netbsd_arm.go │ │ ├── zsysnum_openbsd_386.go │ │ ├── zsysnum_openbsd_amd64.go │ │ ├── zsysnum_openbsd_arm.go │ │ ├── ztypes_darwin_386.go │ │ ├── ztypes_darwin_amd64.go │ │ ├── ztypes_darwin_arm.go │ │ ├── ztypes_darwin_arm64.go │ │ ├── ztypes_dragonfly_amd64.go │ │ ├── ztypes_freebsd_386.go │ │ ├── ztypes_freebsd_amd64.go │ │ ├── ztypes_freebsd_arm.go │ │ ├── ztypes_linux_386.go │ │ ├── ztypes_linux_amd64.go │ │ ├── ztypes_linux_arm.go │ │ ├── ztypes_linux_arm64.go │ │ ├── ztypes_linux_mips.go │ │ ├── ztypes_linux_mips64.go │ │ ├── ztypes_linux_mips64le.go │ │ ├── ztypes_linux_mipsle.go │ │ ├── ztypes_linux_ppc64.go │ │ ├── ztypes_linux_ppc64le.go │ │ ├── ztypes_linux_s390x.go │ │ ├── ztypes_linux_sparc64.go │ │ ├── ztypes_netbsd_386.go │ │ ├── ztypes_netbsd_amd64.go │ │ ├── ztypes_netbsd_arm.go │ │ ├── ztypes_openbsd_386.go │ │ ├── ztypes_openbsd_amd64.go │ │ ├── ztypes_openbsd_arm.go │ │ └── ztypes_solaris_amd64.go │ │ └── windows │ │ ├── asm_windows_386.s │ │ ├── asm_windows_amd64.s │ │ ├── dll_windows.go │ │ ├── env_windows.go │ │ ├── eventlog.go │ │ ├── exec_windows.go │ │ ├── memory_windows.go │ │ ├── mksyscall.go │ │ ├── race.go │ │ ├── race0.go │ │ ├── registry │ │ ├── key.go │ │ ├── mksyscall.go │ │ ├── syscall.go │ │ ├── value.go │ │ └── zsyscall_windows.go │ │ ├── security_windows.go │ │ ├── service.go │ │ ├── str.go │ │ ├── svc │ │ ├── debug │ │ │ ├── log.go │ │ │ └── service.go │ │ ├── event.go │ │ ├── eventlog │ │ │ ├── install.go │ │ │ └── log.go │ │ ├── example │ │ │ ├── beep.go │ │ │ ├── install.go │ │ │ ├── main.go │ │ │ ├── manage.go │ │ │ └── service.go │ │ ├── go12.c │ │ ├── go12.go │ │ ├── go13.go │ │ ├── mgr │ │ │ ├── config.go │ │ │ ├── mgr.go │ │ │ └── service.go │ │ ├── security.go │ │ ├── service.go │ │ ├── sys_386.s │ │ └── sys_amd64.s │ │ ├── syscall.go │ │ ├── syscall_windows.go │ │ ├── types_windows.go │ │ ├── types_windows_386.go │ │ ├── types_windows_amd64.go │ │ └── zsyscall_windows.go ├── google.golang.org │ └── appengine │ │ ├── LICENSE │ │ ├── aetest │ │ ├── doc.go │ │ ├── instance.go │ │ ├── instance_classic.go │ │ ├── instance_vm.go │ │ └── user.go │ │ ├── appengine.go │ │ ├── appengine_vm.go │ │ ├── blobstore │ │ ├── blobstore.go │ │ └── read.go │ │ ├── capability │ │ └── capability.go │ │ ├── channel │ │ └── channel.go │ │ ├── cloudsql │ │ ├── cloudsql.go │ │ ├── cloudsql_classic.go │ │ └── cloudsql_vm.go │ │ ├── cmd │ │ ├── aebundler │ │ │ └── aebundler.go │ │ ├── aedeploy │ │ │ └── aedeploy.go │ │ └── aefix │ │ │ ├── ae.go │ │ │ ├── fix.go │ │ │ ├── main.go │ │ │ └── typecheck.go │ │ ├── datastore │ │ ├── datastore.go │ │ ├── doc.go │ │ ├── key.go │ │ ├── load.go │ │ ├── metadata.go │ │ ├── prop.go │ │ ├── query.go │ │ ├── save.go │ │ └── transaction.go │ │ ├── delay │ │ └── delay.go │ │ ├── demos │ │ ├── guestbook │ │ │ └── guestbook.go │ │ └── helloworld │ │ │ └── helloworld.go │ │ ├── errors.go │ │ ├── file │ │ └── file.go │ │ ├── identity.go │ │ ├── image │ │ └── image.go │ │ ├── internal │ │ ├── aetesting │ │ │ └── fake.go │ │ ├── api.go │ │ ├── api_classic.go │ │ ├── api_common.go │ │ ├── app_id.go │ │ ├── app_identity │ │ │ └── app_identity_service.pb.go │ │ ├── base │ │ │ └── api_base.pb.go │ │ ├── blobstore │ │ │ └── blobstore_service.pb.go │ │ ├── capability │ │ │ └── capability_service.pb.go │ │ ├── channel │ │ │ └── channel_service.pb.go │ │ ├── datastore │ │ │ └── datastore_v3.pb.go │ │ ├── identity.go │ │ ├── identity_classic.go │ │ ├── identity_vm.go │ │ ├── image │ │ │ └── images_service.pb.go │ │ ├── internal.go │ │ ├── log │ │ │ └── log_service.pb.go │ │ ├── mail │ │ │ └── mail_service.pb.go │ │ ├── main.go │ │ ├── main_vm.go │ │ ├── memcache │ │ │ └── memcache_service.pb.go │ │ ├── metadata.go │ │ ├── modules │ │ │ └── modules_service.pb.go │ │ ├── net.go │ │ ├── remote_api │ │ │ └── remote_api.pb.go │ │ ├── search │ │ │ └── search.pb.go │ │ ├── socket │ │ │ └── socket_service.pb.go │ │ ├── system │ │ │ └── system_service.pb.go │ │ ├── taskqueue │ │ │ └── taskqueue_service.pb.go │ │ ├── transaction.go │ │ ├── urlfetch │ │ │ └── urlfetch_service.pb.go │ │ ├── user │ │ │ └── user_service.pb.go │ │ └── xmpp │ │ │ └── xmpp_service.pb.go │ │ ├── log │ │ ├── api.go │ │ └── log.go │ │ ├── mail │ │ └── mail.go │ │ ├── memcache │ │ └── memcache.go │ │ ├── module │ │ └── module.go │ │ ├── namespace.go │ │ ├── remote_api │ │ ├── client.go │ │ └── remote_api.go │ │ ├── runtime │ │ └── runtime.go │ │ ├── search │ │ ├── doc.go │ │ ├── field.go │ │ ├── search.go │ │ └── struct.go │ │ ├── socket │ │ ├── doc.go │ │ ├── socket_classic.go │ │ └── socket_vm.go │ │ ├── taskqueue │ │ └── taskqueue.go │ │ ├── timeout.go │ │ ├── urlfetch │ │ └── urlfetch.go │ │ ├── user │ │ ├── oauth.go │ │ ├── user.go │ │ ├── user_classic.go │ │ └── user_vm.go │ │ └── xmpp │ │ └── xmpp.go └── gopkg.in │ ├── check.v1 │ ├── LICENSE │ ├── benchmark.go │ ├── check.go │ ├── checkers.go │ ├── helpers.go │ ├── printer.go │ ├── reporter.go │ └── run.go │ ├── mgo.v2 │ ├── LICENSE │ ├── auth.go │ ├── bson │ │ ├── LICENSE │ │ ├── bson.go │ │ ├── decimal.go │ │ ├── decode.go │ │ ├── encode.go │ │ └── json.go │ ├── bulk.go │ ├── cluster.go │ ├── dbtest │ │ └── dbserver.go │ ├── doc.go │ ├── gridfs.go │ ├── internal │ │ ├── json │ │ │ ├── LICENSE │ │ │ ├── decode.go │ │ │ ├── encode.go │ │ │ ├── extension.go │ │ │ ├── fold.go │ │ │ ├── indent.go │ │ │ ├── scanner.go │ │ │ ├── stream.go │ │ │ └── tags.go │ │ ├── sasl │ │ │ ├── sasl.c │ │ │ ├── sasl.go │ │ │ ├── sasl_windows.c │ │ │ ├── sasl_windows.go │ │ │ ├── sasl_windows.h │ │ │ ├── sspi_windows.c │ │ │ └── sspi_windows.h │ │ └── scram │ │ │ └── scram.go │ ├── log.go │ ├── queue.go │ ├── raceoff.go │ ├── raceon.go │ ├── saslimpl.go │ ├── saslstub.go │ ├── server.go │ ├── session.go │ ├── socket.go │ ├── stats.go │ └── txn │ │ ├── chaos.go │ │ ├── debug.go │ │ ├── flusher.go │ │ ├── tarjan.go │ │ └── txn.go │ └── tomb.v2 │ ├── LICENSE │ ├── context.go │ ├── context16.go │ └── tomb.go └── with_backoff.sh /.gitignore: -------------------------------------------------------------------------------- 1 | *.swp 2 | *.tmp 3 | *.dump 4 | coverage.out 5 | revel-build.log 6 | todo/ 7 | tmp/ 8 | update_dependencies.sh 9 | distro/ 10 | build/percona-qan-agent* 11 | bin/percona-qan-agent/percona-qan-agent 12 | bin/percona-qan-agent-installer/percona-qan-agent-installer 13 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | See full PMM changelog [here](https://www.percona.com/doc/percona-monitoring-and-management/release-notes/index.html). 2 | -------------------------------------------------------------------------------- /Gopkg.toml: -------------------------------------------------------------------------------- 1 | # PMM-2569: Version 1.4.0 introduces support for new auth methods in MySQL 8. 2 | [[constraint]] 3 | name = "github.com/go-sql-driver/mysql" 4 | version = "^1.4.0" 5 | 6 | [prune] 7 | non-go = true 8 | go-tests = true 9 | # Removing unused sub-packages sounds like a great idea until you need one. 10 | # unused-packages = true 11 | -------------------------------------------------------------------------------- /agent/release/release.go: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright (c) 2016, Percona LLC and/or its affiliates. All rights reserved. 3 | 4 | This program is free software: you can redistribute it and/or modify 5 | it under the terms of the GNU Affero General Public License as published by 6 | the Free Software Foundation, either version 3 of the License, or 7 | (at your option) any later version. 8 | 9 | This program is distributed in the hope that it will be useful, 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | GNU Affero General Public License for more details. 13 | 14 | You should have received a copy of the GNU Affero General Public License 15 | along with this program. If not, see 16 | */ 17 | 18 | package release 19 | 20 | var VERSION string = "1.0.5" 21 | -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '3' 2 | services: 3 | mysql: 4 | image: ${MYSQL_IMAGE:-mysql:5.7} 5 | ports: 6 | - ${MYSQL_HOST:-127.0.0.1}:${MYSQL_PORT:-3306}:3306 7 | environment: 8 | - MYSQL_ALLOW_EMPTY_PASSWORD=yes 9 | command: 10 | # MariaDB >= 10.0.12 doesn't enable Performance Schema by default so we need to do it manually 11 | # https://mariadb.com/kb/en/mariadb/performance-schema-overview/#activating-the-performance-schema 12 | - --performance-schema 13 | - --secure-file-priv= 14 | volumes: 15 | - ./test/schema/:/docker-entrypoint-initdb.d/:rw 16 | mongo: 17 | image: ${MONGODB_IMAGE:-mongo:3.6} 18 | ports: 19 | - ${MONGODB_HOST:-127.0.0.1}:${MONGODB_PORT:-27017}:27017 20 | # MongoDB doesn't enable profiling by default 21 | command: --profile 2 22 | -------------------------------------------------------------------------------- /m/docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '3' 2 | services: 3 | mysql: 4 | image: mysql:8.0 5 | ports: 6 | - 127.0.0.1:3306:3306 7 | environment: 8 | - MYSQL_ALLOW_EMPTY_PASSWORD=yes 9 | command: 10 | - --default-authentication-plugin=mysql_native_password 11 | -------------------------------------------------------------------------------- /m/with_backoff.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Retries a command a configurable number of times with backoff. 4 | # 5 | # The retry count is given by ATTEMPTS (default 120), the backoff 6 | # timeout is given by TIMEOUT in seconds (default 1.) 7 | # 8 | # Based on: https://stackoverflow.com/a/8351489/916440 9 | function with_backoff { 10 | local max_attempts=${ATTEMPTS-120} 11 | local timeout=${TIMEOUT-1} 12 | local attempt=1 13 | local exitCode=0 14 | 15 | while (( $attempt < $max_attempts )) 16 | do 17 | if "$@" 18 | then 19 | return 0 20 | else 21 | exitCode=$? 22 | fi 23 | 24 | echo "Failure! Retrying in $timeout.." 1>&2 25 | sleep $timeout 26 | attempt=$(( attempt + 1 )) 27 | done 28 | 29 | if [[ $exitCode != 0 ]] 30 | then 31 | echo "Giving up! ($@)" 1>&2 32 | fi 33 | 34 | return $exitCode 35 | } 36 | 37 | with_backoff "$@" -------------------------------------------------------------------------------- /qan/analyzer/analyzer_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright (c) 2016, Percona LLC and/or its affiliates. All rights reserved. 3 | 4 | This program is free software: you can redistribute it and/or modify 5 | it under the terms of the GNU Affero General Public License as published by 6 | the Free Software Foundation, either version 3 of the License, or 7 | (at your option) any later version. 8 | 9 | This program is distributed in the hope that it will be useful, 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | GNU Affero General Public License for more details. 13 | 14 | You should have received a copy of the GNU Affero General Public License 15 | along with this program. If not, see 16 | */ 17 | 18 | package analyzer 19 | -------------------------------------------------------------------------------- /qan/analyzer/mongo/profiler/aggregator/stats.go: -------------------------------------------------------------------------------- 1 | package aggregator 2 | 3 | import ( 4 | "expvar" 5 | ) 6 | 7 | type stats struct { 8 | DocsIn *expvar.Int `name:"docs-in"` 9 | DocsSkippedOld *expvar.Int `name:"docs-skipped-old"` 10 | ReportsOut *expvar.Int `name:"reports-out"` 11 | IntervalStart *expvar.String `name:"interval-start"` 12 | IntervalEnd *expvar.String `name:"interval-end"` 13 | } 14 | -------------------------------------------------------------------------------- /qan/analyzer/mongo/profiler/collector/stats.go: -------------------------------------------------------------------------------- 1 | package collector 2 | 3 | import ( 4 | "expvar" 5 | ) 6 | 7 | type stats struct { 8 | In *expvar.Int `name:"in"` 9 | Out *expvar.Int `name:"out"` 10 | IteratorCreated *expvar.String `name:"iterator-created"` 11 | IteratorCounter *expvar.Int `name:"iterator-counter"` 12 | IteratorRestartCounter *expvar.Int `name:"iterator-restart-counter"` 13 | IteratorErrLast *expvar.String `name:"iterator-err-last"` 14 | IteratorErrCounter *expvar.Int `name:"iterator-err-counter"` 15 | IteratorTimeout *expvar.Int `name:"iterator-timeout"` 16 | } 17 | -------------------------------------------------------------------------------- /qan/analyzer/mongo/profiler/parser/stats.go: -------------------------------------------------------------------------------- 1 | package parser 2 | 3 | import ( 4 | "expvar" 5 | ) 6 | 7 | type stats struct { 8 | InDocs *expvar.Int `name:"docs-in"` 9 | OkDocs *expvar.Int `name:"docs-ok"` 10 | OutReports *expvar.Int `name:"reports-out"` 11 | IntervalStart *expvar.String `name:"interval-start"` 12 | IntervalEnd *expvar.String `name:"interval-end"` 13 | ErrFingerprint *expvar.Int `name:"err-fingerprint"` 14 | ErrParse *expvar.Int `name:"err-parse"` 15 | SkippedDocs *expvar.Int `name:"skipped-docs"` 16 | } 17 | -------------------------------------------------------------------------------- /qan/analyzer/mongo/profiler/sender/stats.go: -------------------------------------------------------------------------------- 1 | package sender 2 | 3 | import ( 4 | "expvar" 5 | ) 6 | 7 | type stats struct { 8 | In *expvar.Int `name:"in"` 9 | Out *expvar.Int `name:"out"` 10 | ErrIter *expvar.Int `name:"err-iter"` 11 | } 12 | -------------------------------------------------------------------------------- /qan/analyzer/mongo/profiler/session.go: -------------------------------------------------------------------------------- 1 | package profiler 2 | 3 | import ( 4 | "github.com/percona/pmgo" 5 | "gopkg.in/mgo.v2" 6 | ) 7 | 8 | func createSession(dialInfo *pmgo.DialInfo, dialer pmgo.Dialer) (pmgo.SessionManager, error) { 9 | dialInfo.Timeout = MgoTimeoutDialInfo 10 | // Disable automatic replicaSet detection, connect directly to specified server 11 | dialInfo.Direct = true 12 | session, err := dialer.DialWithInfo(dialInfo) 13 | if err != nil { 14 | return nil, err 15 | } 16 | session.SetMode(mgo.Eventual, true) 17 | session.SetSyncTimeout(MgoTimeoutSessionSync) 18 | session.SetSocketTimeout(MgoTimeoutSessionSocket) 19 | 20 | return session, nil 21 | } 22 | -------------------------------------------------------------------------------- /qan/analyzer/mysql/config/config_test.go: -------------------------------------------------------------------------------- 1 | package config 2 | 3 | import ( 4 | "testing" 5 | 6 | pc "github.com/percona/pmm/proto/config" 7 | "github.com/stretchr/testify/require" 8 | ) 9 | 10 | func TestValidateConfig(t *testing.T) { 11 | uuid := "123" 12 | exampleQueries := true 13 | cfg := pc.QAN{ 14 | UUID: uuid, 15 | Interval: 300, // 5 min 16 | MaxSlowLogSize: 1073741824, // 1 GiB 17 | ExampleQueries: &exampleQueries, 18 | CollectFrom: "slowlog", 19 | } 20 | _, err := ValidateConfig(cfg) 21 | require.NoError(t, err) 22 | } 23 | -------------------------------------------------------------------------------- /qan/analyzer/mysql/worker/worker.go: -------------------------------------------------------------------------------- 1 | package worker 2 | 3 | import ( 4 | pc "github.com/percona/pmm/proto/config" 5 | "github.com/percona/qan-agent/qan/analyzer/mysql/iter" 6 | "github.com/percona/qan-agent/qan/analyzer/report" 7 | ) 8 | 9 | // A Worker gets queries, aggregates them, and returns a Result. Workers are ran 10 | // by Analyzers. When ran, MySQL is presumed to be configured and ready. 11 | type Worker interface { 12 | Setup(*iter.Interval) error 13 | Run() (*report.Result, error) 14 | Stop() error 15 | Cleanup() error 16 | Status() map[string]string 17 | SetConfig(pc.QAN) 18 | } 19 | -------------------------------------------------------------------------------- /test/agent/config001.json: -------------------------------------------------------------------------------- 1 | { 2 | "ApiHostname": "localhost", 3 | "ApiKey": "123", 4 | "UUID": "abc-123-def" 5 | } 6 | -------------------------------------------------------------------------------- /test/agent/empty_config.json: -------------------------------------------------------------------------------- 1 | { 2 | } 3 | -------------------------------------------------------------------------------- /test/agent/full_config.json: -------------------------------------------------------------------------------- 1 | { 2 | "ApiHostname": "agent hostname", 3 | "ApiKey": "api key", 4 | "UUID": "agent uuid" 5 | } 6 | -------------------------------------------------------------------------------- /test/coverage: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | go test -coverprofile=coverage.out 3 | go tool cover -html=coverage.out 4 | -------------------------------------------------------------------------------- /test/installer/my.cnf-percona_user: -------------------------------------------------------------------------------- 1 | [client] 2 | user=percona 3 | password=percona 4 | -------------------------------------------------------------------------------- /test/installer/my.cnf-root_user: -------------------------------------------------------------------------------- 1 | [client] 2 | user=root 3 | password= 4 | -------------------------------------------------------------------------------- /test/installer/my.cnf-wrong_user: -------------------------------------------------------------------------------- 1 | [client] 2 | user=wrong_user 3 | -------------------------------------------------------------------------------- /test/instances/001/mysql-BBB.json: -------------------------------------------------------------------------------- 1 | { 2 | "Subsystem": "mysql", 3 | "ParentUUID": "AAA", 4 | "UUID": "BBB", 5 | "Name": "db01", 6 | "DSN": "percona:percona@unix(/var/mysql/mysql.sock)/?parseTime=true", 7 | "Distro": "Percona Server", 8 | "Version": "5.6.12", 9 | "Created": "2015-11-26T14:49:18Z", 10 | "Deleted": "0001-01-01T00:00:00Z" 11 | } 12 | -------------------------------------------------------------------------------- /test/instances/001/os-AAA.json: -------------------------------------------------------------------------------- 1 | { 2 | "Subsystem": "os", 3 | "UUID": "AAA", 4 | "Name": "os01", 5 | "DSN": "", 6 | "Distro": "Ubuntu", 7 | "Version": "14.04", 8 | "Created": "2015-11-26T14:49:13Z", 9 | "Deleted": "0001-01-01T00:00:00Z" 10 | } 11 | -------------------------------------------------------------------------------- /test/jenkins.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | export GOROOT="/usr/local/go" 4 | export GOPATH="$WORKSPACE/go" 5 | export PATH="$PATH:$GOROOT/bin:$GOPATH/bin" 6 | export PCT_TEST_MYSQL_ROOT_DSN="root:@unix(/var/run/mysqld/mysqld.sock)/" 7 | # rewrite https:// for percona projects to git:// 8 | git config --global url.git@github.com:percona/.insteadOf httpstools://github.com/percona/ 9 | repo="$WORKSPACE/go/src/github.com/percona/platform/agent" 10 | [ -d "$repo" ] || mkdir -p "$repo" 11 | cd "$repo" 12 | 13 | # Run tests 14 | test/runner.sh -u 15 | exit $? 16 | -------------------------------------------------------------------------------- /test/mysql/defaults001: -------------------------------------------------------------------------------- 1 | mysql would have been started with the following arguments: 2 | --user=root 3 | -------------------------------------------------------------------------------- /test/pct/key.pub: -------------------------------------------------------------------------------- 1 | -----BEGIN PUBLIC KEY----- 2 | MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnkM3amaGKrr5uflqIPYO 3 | NNrjxU0a5AOXkR50TW4uLAwsFoz02Ro2MWjEoTP+G4sIFi5NCxwQpzXjrj7LEVj6 4 | 7pYjlpbZhb3w4lWU7HBul9v1wDVnr6jf4OgJX8DGzeyCztP2pcgwgSGjAvXJzUfM 5 | 2dwnJylRdnQ1W+Id6y3iTiQBP6hA0n+bFw08xkh/pX2nEYEFyvdVf05fBGv/adnU 6 | AaKmZZx3FF/XE5z7Uw90e78u+a7acE1yKkiW9vAR/7/G5VnGIKduMoFSJLcEc/Ox 7 | DHFwESunrPT0WZnsoJpTWpKkTu0mYzEwoRZ8v4L5UfuxNWVhyWUVsDrAq5vFs6Ii 8 | sQIDAQAB 9 | -----END PUBLIC KEY----- 10 | -------------------------------------------------------------------------------- /test/qan/perfschema/001/iter01.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "Schema": "db1", 4 | "Digest": "4fadbbec94239d89c40318bfc3888aed", 5 | "DigestText": "select 1", 6 | "CountStar": 1, 7 | "SumTimerWait": 804610000, 8 | "MinTimerWait": 804610000, 9 | "AvgTimerWait": 804610000, 10 | "MaxTimerWait": 804610000, 11 | "SumLockTime": 167000000, 12 | "SumErrors": 0, 13 | "SumWarnings": 0, 14 | "SumRowsAffected": 0, 15 | "SumRowsSent": 10, 16 | "SumRowsExamined": 10, 17 | "SumCreatedTmpDiskTables": 0, 18 | "SumCreatedTmpTables": 1, 19 | "SumSelectFullJoin": 0, 20 | "SumSelectFullRangeJoin": 0, 21 | "SumSelectRange": 0, 22 | "SumSelectRangeCheck": 0, 23 | "SumSelectScan": 1, 24 | "SumSortMergePasseS": 0, 25 | "SumSortRange": 0, 26 | "SumSortRows": 0, 27 | "SumSortScan": 0, 28 | "FirstSeen": "2015-01-01T12:00:00Z", 29 | "LastSeen": "2015-01-01T12:00:30Z" 30 | } 31 | ] 32 | -------------------------------------------------------------------------------- /test/qan/perfschema/004/iter01.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "Schema": "db1", 4 | "Digest": "", 5 | "DigestText": "select 1", 6 | "CountStar": 1, 7 | "SumTimerWait": 804610000, 8 | "MinTimerWait": 804610000, 9 | "AvgTimerWait": 804610000, 10 | "MaxTimerWait": 804610000, 11 | "SumLockTime": 167000000, 12 | "SumErrors": 0, 13 | "SumWarnings": 0, 14 | "SumRowsAffected": 0, 15 | "SumRowsSent": 10, 16 | "SumRowsExamined": 10, 17 | "SumCreatedTmpDiskTables": 0, 18 | "SumCreatedTmpTables": 1, 19 | "SumSelectFullJoin": 0, 20 | "SumSelectFullRangeJoin": 0, 21 | "SumSelectRange": 0, 22 | "SumSelectRangeCheck": 0, 23 | "SumSelectScan": 1, 24 | "SumSortMergePasseS": 0, 25 | "SumSortRange": 0, 26 | "SumSortRows": 0, 27 | "SumSortScan": 0, 28 | "FirstSeen": "2015-01-01T12:00:00Z", 29 | "LastSeen": "2015-01-01T12:00:30Z" 30 | } 31 | ] 32 | -------------------------------------------------------------------------------- /test/qan/perfschema/004/iter02.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "Schema": "db1", 4 | "Digest": "", 5 | "DigestText": "select 1", 6 | "CountStar": 2, 7 | "SumTimerWait": 874610000, 8 | "MinTimerWait": 804610000, 9 | "AvgTimerWait": 743220000, 10 | "MaxTimerWait": 854610000, 11 | "SumLockTime": 267000000, 12 | "SumErrors": 0, 13 | "SumWarnings": 0, 14 | "SumRowsAffected": 0, 15 | "SumRowsSent": 20, 16 | "SumRowsExamined": 20, 17 | "SumCreatedTmpDiskTables": 0, 18 | "SumCreatedTmpTables": 2, 19 | "SumSelectFullJoin": 0, 20 | "SumSelectFullRangeJoin": 0, 21 | "SumSelectRange": 0, 22 | "SumSelectRangeCheck": 0, 23 | "SumSelectScan": 2, 24 | "SumSortMergePasseS": 0, 25 | "SumSortRange": 0, 26 | "SumSortRows": 0, 27 | "SumSortScan": 0, 28 | "FirstSeen": "2015-01-01T12:00:00Z", 29 | "LastSeen": "2015-01-01T12:01:10Z" 30 | } 31 | ] 32 | -------------------------------------------------------------------------------- /test/qan/perfschema/005/iter01.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "Digest": "11111111111111111111111111111111", 4 | "CountStar": 1 5 | }, 6 | { 7 | "Digest": "22222222222222222222222222222222", 8 | "CountStar": 1000 9 | } 10 | ] 11 | -------------------------------------------------------------------------------- /test/qan/perfschema/005/iter02.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "Digest": "11111111111111111111111111111111", 4 | "CountStar": 2 5 | } 6 | ] 7 | -------------------------------------------------------------------------------- /test/qan/perfschema/005/iter03.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "Digest": "11111111111111111111111111111111", 4 | "CountStar": 3 5 | }, 6 | { 7 | "Digest": "22222222222222222222222222222222", 8 | "CountStar": 1002 9 | } 10 | ] 11 | -------------------------------------------------------------------------------- /test/rootdir/rootdir.go: -------------------------------------------------------------------------------- 1 | package rootdir 2 | 3 | import ( 4 | "os" 5 | "path/filepath" 6 | "runtime" 7 | ) 8 | 9 | func RootDir() string { 10 | _, filename, _, _ := runtime.Caller(1) 11 | dir := filepath.Dir(filename) 12 | if fileExists(dir + "/.git") { 13 | return filepath.Clean(dir) 14 | } 15 | dir += "/" 16 | for i := 0; i < 10; i++ { 17 | dir = dir + "../" 18 | if fileExists(dir + ".git") { 19 | return filepath.Clean(dir) 20 | } 21 | } 22 | panic("Cannot find .git/") 23 | } 24 | 25 | func fileExists(file string) bool { 26 | if _, err := os.Stat(file); err == nil { 27 | return true 28 | } 29 | return false 30 | } 31 | -------------------------------------------------------------------------------- /test/slow-logs/slow001.log: -------------------------------------------------------------------------------- 1 | /usr/sbin/mysqld, Version: 5.0.38-Ubuntu_0ubuntu1.1-log (Ubuntu 7.04 distribution). started with: 2 | Tcp port: 3306 Unix socket: /var/run/mysqld/mysqld.sock 3 | Time Id Command Argument 4 | # Time: 071015 21:43:52 5 | # User@Host: root[root] @ localhost [] 6 | # Query_time: 2 Lock_time: 0 Rows_sent: 1 Rows_examined: 0 7 | use test; 8 | select sleep(2) from n; 9 | # Time: 071015 21:45:10 10 | # User@Host: root[root] @ localhost [] 11 | # Query_time: 2 Lock_time: 0 Rows_sent: 1 Rows_examined: 0 12 | use sakila; 13 | select sleep(2) from test.n; 14 | -------------------------------------------------------------------------------- /test/slow-logs/slow003.log: -------------------------------------------------------------------------------- 1 | 2 | # Time: 071218 11:48:27 # User@Host: [SQL_SLAVE] @ [] 3 | # Thread_id: 10 4 | # Query_time: 0.000012 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 0 5 | # QC_Hit: No Full_scan: No Full_join: No Tmp_table: No Tmp_table_on_disk: No 6 | # Filesort: No Filesort_on_disk: No Merge_passes: 0 7 | # No InnoDB statistics available for this query 8 | BEGIN; 9 | -------------------------------------------------------------------------------- /test/slow-logs/slow004.log: -------------------------------------------------------------------------------- 1 | /usr/sbin/mysqld, Version: 5.0.38-Ubuntu_0ubuntu1.1-log (Ubuntu 7.04 distribution). started with: 2 | Tcp port: 3306 Unix socket: /var/run/mysqld/mysqld.sock 3 | Time Id Command Argument 4 | # Time: 071015 21:43:52 5 | # User@Host: root[root] @ localhost [] 6 | # Query_time: 2 Lock_time: 0 Rows_sent: 1 Rows_examined: 0 7 | select 12_13_foo from (select 12foo from 123_bar) as 123baz; 8 | -------------------------------------------------------------------------------- /test/slow-logs/slow005.log: -------------------------------------------------------------------------------- 1 | # Time: 071218 11:48:27 # User@Host: [SQL_SLAVE] @ [] 2 | # Thread_id: 10 3 | # Query_time: 0.000012 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 0 4 | # QC_Hit: No Full_scan: No Full_join: No Tmp_table: No Tmp_table_on_disk: No 5 | # Filesort: No Filesort_on_disk: No Merge_passes: 0 6 | # No InnoDB statistics available for this query 7 | foo 8 | bar 9 | 0 AS counter 10 | baz; 11 | -------------------------------------------------------------------------------- /test/slow-logs/slow007.log: -------------------------------------------------------------------------------- 1 | # Time: 071218 11:48:27 2 | # User@Host: [SQL_SLAVE] @ [] 3 | # Thread_id: 3 Schema: db1 4 | # Query_time: 0.000012 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 0 5 | use db2; 6 | SELECT fruit FROM trees; 7 | -------------------------------------------------------------------------------- /test/slow-logs/slow008.log: -------------------------------------------------------------------------------- 1 | # User@Host: meow[meow] @ [1.2.3.8] 2 | # Thread_id: 5 Schema: db1 3 | # Query_time: 0.000002 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 0 4 | # No InnoDB statistics available for this query 5 | # administrator command: Quit; 6 | # User@Host: meow[meow] @ [1.2.3.8] 7 | # Thread_id: 6 Schema: db2 8 | # Query_time: 0.000899 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 0 9 | # No InnoDB statistics available for this query 10 | use db; 11 | SET NAMES utf8; 12 | # User@Host: meow[meow] @ [1.2.3.8] 13 | # Thread_id: 6 Schema: db2 14 | # Query_time: 0.018799 Lock_time: 0.009453 Rows_sent: 0 Rows_examined: 0 15 | # No InnoDB statistics available for this query 16 | SELECT MIN(id),MAX(id) FROM tbl; 17 | -------------------------------------------------------------------------------- /test/slow-logs/slow012.log: -------------------------------------------------------------------------------- 1 | # User@Host: msandbox[msandbox] @ localhost [] Id: 168 2 | # Query_time: 0.000214 Lock_time: 0.000086 Rows_sent: 2 Rows_examined: 2 3 | SET timestamp=1397442852; 4 | select * from mysql.user; 5 | # User@Host: msandbox[msandbox] @ localhost [] Id: 168 6 | # Query_time: 0.000016 Lock_time: 0.000000 Rows_sent: 2 Rows_examined: 2 7 | SET timestamp=1397442852; 8 | # administrator command: Quit; 9 | # Time: 140413 19:34:13 10 | # User@Host: msandbox[msandbox] @ localhost [127.0.0.1] Id: 169 11 | # Query_time: 0.000127 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 0 12 | use dev_pct; 13 | SET timestamp=1397442853; 14 | SELECT @@max_allowed_packet; 15 | -------------------------------------------------------------------------------- /test/slow-logs/slow016.log: -------------------------------------------------------------------------------- 1 | # Filesort: No Filesort_on_disk: No Merge_passes: 0 2 | # No InnoDB statistics available for this query 3 | SET timestamp=1400193480; 4 | # administrator command: Quit; 5 | # User@Host: pt_agent[pt_agent] @ localhost [] Id: 68181423 6 | # Schema: Last_errno: 0 Killed: 0 7 | # Query_time: 0.003953 Lock_time: 0.000059 Rows_sent: 571 Rows_examined: 571 Rows_affected: 0 8 | SET timestamp=1400193480; 9 | SHOW /*!50002 GLOBAL */ STATUS; 10 | -------------------------------------------------------------------------------- /test/slow-logs/slow017.log: -------------------------------------------------------------------------------- 1 | INSERT INTO t VALUES (1); 2 | # User@Host: pt_agent[pt_agent] @ localhost [] Id: 68181423 3 | # Schema: Last_errno: 0 Killed: 0 4 | # Query_time: 0.003953 Lock_time: 0.000059 Rows_sent: 571 Rows_examined: 571 Rows_affected: 0 5 | SET timestamp=1400193480; 6 | SHOW /*!50002 GLOBAL */ STATUS; 7 | -------------------------------------------------------------------------------- /test/slow-logs/slow020.log: -------------------------------------------------------------------------------- 1 | /usr/sbin/mysqld, Version: 5.0.38-Ubuntu_0ubuntu1.1-log (Ubuntu 7.04 distribution). started with: 2 | Tcp port: 3306 Unix socket: /var/run/mysqld/mysqld.sock 3 | Time Id Command Argument 4 | # Time: 071015 21:43:52 5 | # User@Host: root[root] @ localhost [] 6 | # Query_time: 2 Lock_time: 0 Rows_sent: 1 Rows_examined: 0 7 | use test; 8 | select sleep(2) from n; 9 | # Time: 071015 21:44:52 10 | # User@Host: root[root] @ localhost [] 11 | # Query_time: 2 Lock_time: 0 Rows_sent: 1 Rows_examined: 0 12 | select sleep(2) from o; 13 | -------------------------------------------------------------------------------- /test/slow-logs/slow021.log: -------------------------------------------------------------------------------- 1 | /usr/sbin/mysqld, Version: 5.0.38-Ubuntu_0ubuntu1.1-log (Ubuntu 7.04 distribution). started with: 2 | Tcp port: 3306 Unix socket: /var/run/mysqld/mysqld.sock 3 | Time Id Command Argument 4 | # Time: 071015 21:43:52 5 | # User@Host: root[root] @ localhost [] 6 | # Query_time: 2 Lock_time: 0 Rows_sent: 1 Rows_examined: 0 7 | uSe test; 8 | select sleep(2) from n; 9 | -------------------------------------------------------------------------------- /test/slow-logs/slow022.log: -------------------------------------------------------------------------------- 1 | /usr/sbin/mysqld, Version: 5.0.38-Ubuntu_0ubuntu1.1-log (Ubuntu 7.04 distribution). started with: 2 | Tcp port: 3306 Unix socket: /var/run/mysqld/mysqld.sock 3 | Time Id Command Argument 4 | # Time: 071015 21:43:52 5 | # User@Host: root[root] @ localhost [] 6 | # Query_time: 2 Lock_time: 0 Rows_sent: 1 Rows_examined: 0 7 | use `test`; 8 | select sleep(2) from n; 9 | -------------------------------------------------------------------------------- /test/slow-logs/slow024.log: -------------------------------------------------------------------------------- 1 | /usr/sbin/mysqld, Version: 5.0.38-Ubuntu_0ubuntu1.1-log (Ubuntu 7.04 distribution). started with: 2 | Tcp port: 3306 Unix socket: /var/run/mysqld/mysqld.sock 3 | Time Id Command Argument 4 | # Time: 071015 21:43:52 5 | # User@Host: root[root] @ localhost [] 6 | # Query_time: 2 Lock_time: 0 Rows_sent: 1 Rows_examined: 0 7 | use `test`; 8 | select sleep(1) from n; 9 | # Time: 10 | # User@Host: root[root] @ localhost [] 11 | # Query_time: 2 Lock_time: 0 Rows_sent: 1 Rows_examined: 0 12 | use `test`; 13 | select sleep(2) from n; 14 | # Time: 071015 21:43:52 15 | # User@Host: 16 | # Query_time: 2 Lock_time: 0 Rows_sent: 1 Rows_examined: 0 17 | use `test`; 18 | select sleep(3) from n; 19 | -------------------------------------------------------------------------------- /test/version/version.go: -------------------------------------------------------------------------------- 1 | package version 2 | 3 | import ( 4 | "strings" 5 | 6 | "github.com/Masterminds/semver" 7 | ) 8 | 9 | func Constraint(constraint, version string) (bool, error) { 10 | // Drop everything after first dash. 11 | // Version with dash is considered a pre-release 12 | // but some MongoDB builds add additional information after dash 13 | // even though it's not considered a pre-release but a release. 14 | s := strings.SplitN(version, "-", 2) 15 | version = s[0] 16 | 17 | // Create new version 18 | v, err := semver.NewVersion(version) 19 | if err != nil { 20 | return false, err 21 | } 22 | 23 | // Check if version matches constraint 24 | constraints, err := semver.NewConstraint(constraint) 25 | if err != nil { 26 | return false, err 27 | } 28 | return constraints.Check(v), nil 29 | } 30 | -------------------------------------------------------------------------------- /vendor/github.com/Masterminds/semver/collection.go: -------------------------------------------------------------------------------- 1 | package semver 2 | 3 | // Collection is a collection of Version instances and implements the sort 4 | // interface. See the sort package for more details. 5 | // https://golang.org/pkg/sort/ 6 | type Collection []*Version 7 | 8 | // Len returns the length of a collection. The number of Version instances 9 | // on the slice. 10 | func (c Collection) Len() int { 11 | return len(c) 12 | } 13 | 14 | // Less is needed for the sort interface to compare two Version objects on the 15 | // slice. If checks if one is less than the other. 16 | func (c Collection) Less(i, j int) bool { 17 | return c[i].LessThan(c[j]) 18 | } 19 | 20 | // Swap is needed for the sort interface to replace the Version objects 21 | // at two different positions in the slice. 22 | func (c Collection) Swap(i, j int) { 23 | c[i], c[j] = c[j], c[i] 24 | } 25 | -------------------------------------------------------------------------------- /vendor/github.com/bradfitz/slice/COPYING: -------------------------------------------------------------------------------- 1 | This package is licensed under the same terms as Go itself and 2 | has the same contribution / CLA requirements. 3 | 4 | -------------------------------------------------------------------------------- /vendor/github.com/davecgh/go-spew/LICENSE: -------------------------------------------------------------------------------- 1 | ISC License 2 | 3 | Copyright (c) 2012-2016 Dave Collins 4 | 5 | Permission to use, copy, modify, and distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 15 | OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 | -------------------------------------------------------------------------------- /vendor/github.com/fatih/structs/tags.go: -------------------------------------------------------------------------------- 1 | package structs 2 | 3 | import "strings" 4 | 5 | // tagOptions contains a slice of tag options 6 | type tagOptions []string 7 | 8 | // Has returns true if the given optiton is available in tagOptions 9 | func (t tagOptions) Has(opt string) bool { 10 | for _, tagOpt := range t { 11 | if tagOpt == opt { 12 | return true 13 | } 14 | } 15 | 16 | return false 17 | } 18 | 19 | // parseTag splits a struct field's tag into its name and a list of options 20 | // which comes after a name. A tag is in the form of: "name,option1,option2". 21 | // The name can be neglectected. 22 | func parseTag(tag string) (string, tagOptions) { 23 | // tag is one of followings: 24 | // "" 25 | // "name" 26 | // "name,opt" 27 | // "name,opt,opt2" 28 | // ",opt" 29 | 30 | res := strings.Split(tag, ",") 31 | return res[0], res[1:] 32 | } 33 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/error_func.go: -------------------------------------------------------------------------------- 1 | // +build !windows 2 | 3 | package ole 4 | 5 | // errstr converts error code to string. 6 | func errstr(errno int) string { 7 | return "" 8 | } 9 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/error_windows.go: -------------------------------------------------------------------------------- 1 | // +build windows 2 | 3 | package ole 4 | 5 | import ( 6 | "fmt" 7 | "syscall" 8 | "unicode/utf16" 9 | ) 10 | 11 | // errstr converts error code to string. 12 | func errstr(errno int) string { 13 | // ask windows for the remaining errors 14 | var flags uint32 = syscall.FORMAT_MESSAGE_FROM_SYSTEM | syscall.FORMAT_MESSAGE_ARGUMENT_ARRAY | syscall.FORMAT_MESSAGE_IGNORE_INSERTS 15 | b := make([]uint16, 300) 16 | n, err := syscall.FormatMessage(flags, 0, uint32(errno), 0, b, nil) 17 | if err != nil { 18 | return fmt.Sprintf("error %d (FormatMessage failed with: %v)", errno, err) 19 | } 20 | // trim terminating \r and \n 21 | for ; n > 0 && (b[n-1] == '\n' || b[n-1] == '\r'); n-- { 22 | } 23 | return string(utf16.Decode(b[:n])) 24 | } 25 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/example/msagent/msagent.go: -------------------------------------------------------------------------------- 1 | // +build windows 2 | 3 | package main 4 | 5 | import ( 6 | "time" 7 | 8 | ole "github.com/go-ole/go-ole" 9 | "github.com/go-ole/go-ole/oleutil" 10 | ) 11 | 12 | func main() { 13 | ole.CoInitialize(0) 14 | unknown, _ := oleutil.CreateObject("Agent.Control.1") 15 | agent, _ := unknown.QueryInterface(ole.IID_IDispatch) 16 | oleutil.PutProperty(agent, "Connected", true) 17 | characters := oleutil.MustGetProperty(agent, "Characters").ToIDispatch() 18 | oleutil.CallMethod(characters, "Load", "Merlin", "c:\\windows\\msagent\\chars\\Merlin.acs") 19 | character := oleutil.MustCallMethod(characters, "Character", "Merlin").ToIDispatch() 20 | oleutil.CallMethod(character, "Show") 21 | oleutil.CallMethod(character, "Speak", "こんにちわ世界") 22 | 23 | time.Sleep(4000000000) 24 | } 25 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/iconnectionpoint.go: -------------------------------------------------------------------------------- 1 | package ole 2 | 3 | import "unsafe" 4 | 5 | type IConnectionPoint struct { 6 | IUnknown 7 | } 8 | 9 | type IConnectionPointVtbl struct { 10 | IUnknownVtbl 11 | GetConnectionInterface uintptr 12 | GetConnectionPointContainer uintptr 13 | Advise uintptr 14 | Unadvise uintptr 15 | EnumConnections uintptr 16 | } 17 | 18 | func (v *IConnectionPoint) VTable() *IConnectionPointVtbl { 19 | return (*IConnectionPointVtbl)(unsafe.Pointer(v.RawVTable)) 20 | } 21 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/iconnectionpoint_func.go: -------------------------------------------------------------------------------- 1 | // +build !windows 2 | 3 | package ole 4 | 5 | import "unsafe" 6 | 7 | func (v *IConnectionPoint) GetConnectionInterface(piid **GUID) int32 { 8 | return int32(0) 9 | } 10 | 11 | func (v *IConnectionPoint) Advise(unknown *IUnknown) (uint32, error) { 12 | return uint32(0), NewError(E_NOTIMPL) 13 | } 14 | 15 | func (v *IConnectionPoint) Unadvise(cookie uint32) error { 16 | return NewError(E_NOTIMPL) 17 | } 18 | 19 | func (v *IConnectionPoint) EnumConnections(p *unsafe.Pointer) (err error) { 20 | return NewError(E_NOTIMPL) 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/iconnectionpointcontainer.go: -------------------------------------------------------------------------------- 1 | package ole 2 | 3 | import "unsafe" 4 | 5 | type IConnectionPointContainer struct { 6 | IUnknown 7 | } 8 | 9 | type IConnectionPointContainerVtbl struct { 10 | IUnknownVtbl 11 | EnumConnectionPoints uintptr 12 | FindConnectionPoint uintptr 13 | } 14 | 15 | func (v *IConnectionPointContainer) VTable() *IConnectionPointContainerVtbl { 16 | return (*IConnectionPointContainerVtbl)(unsafe.Pointer(v.RawVTable)) 17 | } 18 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/iconnectionpointcontainer_func.go: -------------------------------------------------------------------------------- 1 | // +build !windows 2 | 3 | package ole 4 | 5 | func (v *IConnectionPointContainer) EnumConnectionPoints(points interface{}) error { 6 | return NewError(E_NOTIMPL) 7 | } 8 | 9 | func (v *IConnectionPointContainer) FindConnectionPoint(iid *GUID, point **IConnectionPoint) error { 10 | return NewError(E_NOTIMPL) 11 | } 12 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/iconnectionpointcontainer_windows.go: -------------------------------------------------------------------------------- 1 | // +build windows 2 | 3 | package ole 4 | 5 | import ( 6 | "syscall" 7 | "unsafe" 8 | ) 9 | 10 | func (v *IConnectionPointContainer) EnumConnectionPoints(points interface{}) error { 11 | return NewError(E_NOTIMPL) 12 | } 13 | 14 | func (v *IConnectionPointContainer) FindConnectionPoint(iid *GUID, point **IConnectionPoint) (err error) { 15 | hr, _, _ := syscall.Syscall( 16 | v.VTable().FindConnectionPoint, 17 | 3, 18 | uintptr(unsafe.Pointer(v)), 19 | uintptr(unsafe.Pointer(iid)), 20 | uintptr(unsafe.Pointer(point))) 21 | if hr != 0 { 22 | err = NewError(hr) 23 | } 24 | return 25 | } 26 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/idispatch_func.go: -------------------------------------------------------------------------------- 1 | // +build !windows 2 | 3 | package ole 4 | 5 | func getIDsOfName(disp *IDispatch, names []string) ([]int32, error) { 6 | return []int32{}, NewError(E_NOTIMPL) 7 | } 8 | 9 | func getTypeInfoCount(disp *IDispatch) (uint32, error) { 10 | return uint32(0), NewError(E_NOTIMPL) 11 | } 12 | 13 | func getTypeInfo(disp *IDispatch) (*ITypeInfo, error) { 14 | return nil, NewError(E_NOTIMPL) 15 | } 16 | 17 | func invoke(disp *IDispatch, dispid int32, dispatch int16, params ...interface{}) (*VARIANT, error) { 18 | return nil, NewError(E_NOTIMPL) 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/ienumvariant.go: -------------------------------------------------------------------------------- 1 | package ole 2 | 3 | import "unsafe" 4 | 5 | type IEnumVARIANT struct { 6 | IUnknown 7 | } 8 | 9 | type IEnumVARIANTVtbl struct { 10 | IUnknownVtbl 11 | Next uintptr 12 | Skip uintptr 13 | Reset uintptr 14 | Clone uintptr 15 | } 16 | 17 | func (v *IEnumVARIANT) VTable() *IEnumVARIANTVtbl { 18 | return (*IEnumVARIANTVtbl)(unsafe.Pointer(v.RawVTable)) 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/ienumvariant_func.go: -------------------------------------------------------------------------------- 1 | // +build !windows 2 | 3 | package ole 4 | 5 | func (enum *IEnumVARIANT) Clone() (*IEnumVARIANT, error) { 6 | return nil, NewError(E_NOTIMPL) 7 | } 8 | 9 | func (enum *IEnumVARIANT) Reset() error { 10 | return NewError(E_NOTIMPL) 11 | } 12 | 13 | func (enum *IEnumVARIANT) Skip(celt uint) error { 14 | return NewError(E_NOTIMPL) 15 | } 16 | 17 | func (enum *IEnumVARIANT) Next(celt uint) (VARIANT, uint, error) { 18 | return NewVariant(VT_NULL, int64(0)), 0, NewError(E_NOTIMPL) 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/iinspectable.go: -------------------------------------------------------------------------------- 1 | package ole 2 | 3 | import "unsafe" 4 | 5 | type IInspectable struct { 6 | IUnknown 7 | } 8 | 9 | type IInspectableVtbl struct { 10 | IUnknownVtbl 11 | GetIIds uintptr 12 | GetRuntimeClassName uintptr 13 | GetTrustLevel uintptr 14 | } 15 | 16 | func (v *IInspectable) VTable() *IInspectableVtbl { 17 | return (*IInspectableVtbl)(unsafe.Pointer(v.RawVTable)) 18 | } 19 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/iinspectable_func.go: -------------------------------------------------------------------------------- 1 | // +build !windows 2 | 3 | package ole 4 | 5 | func (v *IInspectable) GetIids() ([]*GUID, error) { 6 | return []*GUID{}, NewError(E_NOTIMPL) 7 | } 8 | 9 | func (v *IInspectable) GetRuntimeClassName() (string, error) { 10 | return "", NewError(E_NOTIMPL) 11 | } 12 | 13 | func (v *IInspectable) GetTrustLevel() (uint32, error) { 14 | return uint32(0), NewError(E_NOTIMPL) 15 | } 16 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/iprovideclassinfo.go: -------------------------------------------------------------------------------- 1 | package ole 2 | 3 | import "unsafe" 4 | 5 | type IProvideClassInfo struct { 6 | IUnknown 7 | } 8 | 9 | type IProvideClassInfoVtbl struct { 10 | IUnknownVtbl 11 | GetClassInfo uintptr 12 | } 13 | 14 | func (v *IProvideClassInfo) VTable() *IProvideClassInfoVtbl { 15 | return (*IProvideClassInfoVtbl)(unsafe.Pointer(v.RawVTable)) 16 | } 17 | 18 | func (v *IProvideClassInfo) GetClassInfo() (cinfo *ITypeInfo, err error) { 19 | cinfo, err = getClassInfo(v) 20 | return 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/iprovideclassinfo_func.go: -------------------------------------------------------------------------------- 1 | // +build !windows 2 | 3 | package ole 4 | 5 | func getClassInfo(disp *IProvideClassInfo) (tinfo *ITypeInfo, err error) { 6 | return nil, NewError(E_NOTIMPL) 7 | } 8 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/iprovideclassinfo_windows.go: -------------------------------------------------------------------------------- 1 | // +build windows 2 | 3 | package ole 4 | 5 | import ( 6 | "syscall" 7 | "unsafe" 8 | ) 9 | 10 | func getClassInfo(disp *IProvideClassInfo) (tinfo *ITypeInfo, err error) { 11 | hr, _, _ := syscall.Syscall( 12 | disp.VTable().GetClassInfo, 13 | 2, 14 | uintptr(unsafe.Pointer(disp)), 15 | uintptr(unsafe.Pointer(&tinfo)), 16 | 0) 17 | if hr != 0 { 18 | err = NewError(hr) 19 | } 20 | return 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/itypeinfo_func.go: -------------------------------------------------------------------------------- 1 | // +build !windows 2 | 3 | package ole 4 | 5 | func (v *ITypeInfo) GetTypeAttr() (*TYPEATTR, error) { 6 | return nil, NewError(E_NOTIMPL) 7 | } 8 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/itypeinfo_windows.go: -------------------------------------------------------------------------------- 1 | // +build windows 2 | 3 | package ole 4 | 5 | import ( 6 | "syscall" 7 | "unsafe" 8 | ) 9 | 10 | func (v *ITypeInfo) GetTypeAttr() (tattr *TYPEATTR, err error) { 11 | hr, _, _ := syscall.Syscall( 12 | uintptr(v.VTable().GetTypeAttr), 13 | 2, 14 | uintptr(unsafe.Pointer(v)), 15 | uintptr(unsafe.Pointer(&tattr)), 16 | 0) 17 | if hr != 0 { 18 | err = NewError(hr) 19 | } 20 | return 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/iunknown_func.go: -------------------------------------------------------------------------------- 1 | // +build !windows 2 | 3 | package ole 4 | 5 | func reflectQueryInterface(self interface{}, method uintptr, interfaceID *GUID, obj interface{}) (err error) { 6 | return NewError(E_NOTIMPL) 7 | } 8 | 9 | func queryInterface(unk *IUnknown, iid *GUID) (disp *IDispatch, err error) { 10 | return nil, NewError(E_NOTIMPL) 11 | } 12 | 13 | func addRef(unk *IUnknown) int32 { 14 | return 0 15 | } 16 | 17 | func release(unk *IUnknown) int32 { 18 | return 0 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/oleutil/connection_func.go: -------------------------------------------------------------------------------- 1 | // +build !windows 2 | 3 | package oleutil 4 | 5 | import ole "github.com/go-ole/go-ole" 6 | 7 | // ConnectObject creates a connection point between two services for communication. 8 | func ConnectObject(disp *ole.IDispatch, iid *ole.GUID, idisp interface{}) (uint32, error) { 9 | return 0, ole.NewError(ole.E_NOTIMPL) 10 | } 11 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/oleutil/go-get.go: -------------------------------------------------------------------------------- 1 | // This file is here so go get succeeds as without it errors with: 2 | // no buildable Go source files in ... 3 | // 4 | // +build !windows 5 | 6 | package oleutil 7 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/safearray.go: -------------------------------------------------------------------------------- 1 | // Package is meant to retrieve and process safe array data returned from COM. 2 | 3 | package ole 4 | 5 | // SafeArrayBound defines the SafeArray boundaries. 6 | type SafeArrayBound struct { 7 | Elements uint32 8 | LowerBound int32 9 | } 10 | 11 | // SafeArray is how COM handles arrays. 12 | type SafeArray struct { 13 | Dimensions uint16 14 | FeaturesFlag uint16 15 | ElementsSize uint32 16 | LocksAmount uint32 17 | Data uint32 18 | Bounds [16]byte 19 | } 20 | 21 | // SAFEARRAY is obsolete, exists for backwards compatibility. 22 | // Use SafeArray 23 | type SAFEARRAY SafeArray 24 | 25 | // SAFEARRAYBOUND is obsolete, exists for backwards compatibility. 26 | // Use SafeArrayBound 27 | type SAFEARRAYBOUND SafeArrayBound 28 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/variables.go: -------------------------------------------------------------------------------- 1 | // +build windows 2 | 3 | package ole 4 | 5 | import ( 6 | "syscall" 7 | ) 8 | 9 | var ( 10 | modcombase = syscall.NewLazyDLL("combase.dll") 11 | modkernel32, _ = syscall.LoadDLL("kernel32.dll") 12 | modole32, _ = syscall.LoadDLL("ole32.dll") 13 | modoleaut32, _ = syscall.LoadDLL("oleaut32.dll") 14 | modmsvcrt, _ = syscall.LoadDLL("msvcrt.dll") 15 | moduser32, _ = syscall.LoadDLL("user32.dll") 16 | ) 17 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/variant_386.go: -------------------------------------------------------------------------------- 1 | // +build 386 2 | 3 | package ole 4 | 5 | type VARIANT struct { 6 | VT VT // 2 7 | wReserved1 uint16 // 4 8 | wReserved2 uint16 // 6 9 | wReserved3 uint16 // 8 10 | Val int64 // 16 11 | } 12 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/variant_amd64.go: -------------------------------------------------------------------------------- 1 | // +build amd64 2 | 3 | package ole 4 | 5 | type VARIANT struct { 6 | VT VT // 2 7 | wReserved1 uint16 // 4 8 | wReserved2 uint16 // 6 9 | wReserved3 uint16 // 8 10 | Val int64 // 16 11 | _ [8]byte // 24 12 | } 13 | -------------------------------------------------------------------------------- /vendor/github.com/go-ole/go-ole/variant_s390x.go: -------------------------------------------------------------------------------- 1 | // +build s390x 2 | 3 | package ole 4 | 5 | type VARIANT struct { 6 | VT VT // 2 7 | wReserved1 uint16 // 4 8 | wReserved2 uint16 // 6 9 | wReserved3 uint16 // 8 10 | Val int64 // 16 11 | _ [8]byte // 24 12 | } 13 | -------------------------------------------------------------------------------- /vendor/github.com/go-sql-driver/mysql/appengine.go: -------------------------------------------------------------------------------- 1 | // Go MySQL Driver - A MySQL-Driver for Go's database/sql package 2 | // 3 | // Copyright 2013 The Go-MySQL-Driver Authors. All rights reserved. 4 | // 5 | // This Source Code Form is subject to the terms of the Mozilla Public 6 | // License, v. 2.0. If a copy of the MPL was not distributed with this file, 7 | // You can obtain one at http://mozilla.org/MPL/2.0/. 8 | 9 | // +build appengine 10 | 11 | package mysql 12 | 13 | import ( 14 | "google.golang.org/appengine/cloudsql" 15 | ) 16 | 17 | func init() { 18 | RegisterDial("cloudsql", cloudsql.Dial) 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/go-sql-driver/mysql/result.go: -------------------------------------------------------------------------------- 1 | // Go MySQL Driver - A MySQL-Driver for Go's database/sql package 2 | // 3 | // Copyright 2012 The Go-MySQL-Driver Authors. All rights reserved. 4 | // 5 | // This Source Code Form is subject to the terms of the Mozilla Public 6 | // License, v. 2.0. If a copy of the MPL was not distributed with this file, 7 | // You can obtain one at http://mozilla.org/MPL/2.0/. 8 | 9 | package mysql 10 | 11 | type mysqlResult struct { 12 | affectedRows int64 13 | insertId int64 14 | } 15 | 16 | func (res *mysqlResult) LastInsertId() (int64, error) { 17 | return res.insertId, nil 18 | } 19 | 20 | func (res *mysqlResult) RowsAffected() (int64, error) { 21 | return res.affectedRows, nil 22 | } 23 | -------------------------------------------------------------------------------- /vendor/github.com/gorilla/mux/context_gorilla.go: -------------------------------------------------------------------------------- 1 | // +build !go1.7 2 | 3 | package mux 4 | 5 | import ( 6 | "net/http" 7 | 8 | "github.com/gorilla/context" 9 | ) 10 | 11 | func contextGet(r *http.Request, key interface{}) interface{} { 12 | return context.Get(r, key) 13 | } 14 | 15 | func contextSet(r *http.Request, key, val interface{}) *http.Request { 16 | if val == nil { 17 | return r 18 | } 19 | 20 | context.Set(r, key, val) 21 | return r 22 | } 23 | 24 | func contextClear(r *http.Request) { 25 | context.Clear(r) 26 | } 27 | -------------------------------------------------------------------------------- /vendor/github.com/gorilla/mux/context_native.go: -------------------------------------------------------------------------------- 1 | // +build go1.7 2 | 3 | package mux 4 | 5 | import ( 6 | "context" 7 | "net/http" 8 | ) 9 | 10 | func contextGet(r *http.Request, key interface{}) interface{} { 11 | return r.Context().Value(key) 12 | } 13 | 14 | func contextSet(r *http.Request, key, val interface{}) *http.Request { 15 | if val == nil { 16 | return r 17 | } 18 | 19 | return r.WithContext(context.WithValue(r.Context(), key, val)) 20 | } 21 | 22 | func contextClear(r *http.Request) { 23 | return 24 | } 25 | -------------------------------------------------------------------------------- /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 setVars(r, val) 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/hashicorp/go-version/version_collection.go: -------------------------------------------------------------------------------- 1 | package version 2 | 3 | // Collection is a type that implements the sort.Interface interface 4 | // so that versions can be sorted. 5 | type Collection []*Version 6 | 7 | func (v Collection) Len() int { 8 | return len(v) 9 | } 10 | 11 | func (v Collection) Less(i, j int) bool { 12 | return v[i].LessThan(v[j]) 13 | } 14 | 15 | func (v Collection) Swap(i, j int) { 16 | v[i], v[j] = v[j], v[i] 17 | } 18 | -------------------------------------------------------------------------------- /vendor/github.com/percona/go-mysql/test/test.go: -------------------------------------------------------------------------------- 1 | package test 2 | 3 | import ( 4 | "flag" 5 | "os" 6 | "path/filepath" 7 | "runtime" 8 | ) 9 | 10 | var Update = flag.Bool("update", false, "update .golden files") 11 | 12 | func RootDir() string { 13 | _, filename, _, _ := runtime.Caller(1) 14 | dir := filepath.Dir(filename) 15 | if fileExists(dir + "/.git") { 16 | return filepath.Clean(dir) 17 | } 18 | dir += "/" 19 | for i := 0; i < 10; i++ { 20 | dir = dir + "../" 21 | if fileExists(dir + ".git") { 22 | return filepath.Clean(dir) 23 | } 24 | } 25 | panic("Cannot find .git/") 26 | } 27 | 28 | func fileExists(file string) bool { 29 | if _, err := os.Stat(file); err == nil { 30 | return true 31 | } 32 | return false 33 | } 34 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/sandbox/servers/5.6/sys/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved. 2 | 3 | This program is free software; you can redistribute it and/or modify 4 | it under the terms of the GNU General Public License as published by 5 | the Free Software Foundation; version 2 of the License. 6 | 7 | This program is distributed in the hope that it will be useful, 8 | but WITHOUT ANY WARRANTY; without even the implied warranty of 9 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 10 | GNU General Public License for more details. 11 | 12 | You should have received a copy of the GNU General Public License 13 | along with this program; if not, write to the Free Software 14 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 15 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/sandbox/servers/5.7/sys/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved. 2 | 3 | This program is free software; you can redistribute it and/or modify 4 | it under the terms of the GNU General Public License as published by 5 | the Free Software Foundation; version 2 of the License. 6 | 7 | This program is distributed in the hope that it will be useful, 8 | but WITHOUT ANY WARRANTY; without even the implied warranty of 9 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 10 | GNU General Public License for more details. 11 | 12 | You should have received a copy of the GNU General Public License 13 | along with this program; if not, write to the Free Software 14 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 15 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/profiler/stats.go: -------------------------------------------------------------------------------- 1 | package profiler 2 | 3 | import ( 4 | "github.com/percona/percona-toolkit/src/go/mongolib/proto" 5 | "github.com/percona/percona-toolkit/src/go/mongolib/stats" 6 | ) 7 | 8 | type Stats interface { 9 | Reset() 10 | Add(doc proto.SystemProfile) error 11 | Queries() stats.Queries 12 | } 13 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/asserts.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type Asserts struct { 4 | User float64 `bson:"user"` 5 | Warning float64 `bson:"warning"` 6 | Msg float64 `bson:"msg"` 7 | Regular float64 `bson:"regular"` 8 | Rollovers float64 `bson:"rollovers"` 9 | } 10 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/backgroundflushing.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type BackgroundFlushing struct { 4 | AverageMs float64 `bson:"average_ms"` 5 | Flushes float64 `bson:"flushes"` 6 | LastFinished string `bson:"last_finished"` 7 | LastMs float64 `bson:"last_ms"` 8 | TotalMs float64 `bson:"total_ms"` 9 | } 10 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/balancer_stats.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type BalancerStats struct { 4 | Success int64 5 | Failed int64 6 | Splits int64 7 | Drops int64 8 | Settings map[string]interface{} 9 | } 10 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/buildinfo.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | // BuildInfo Struct to store results of calling session.BuildInfo() 4 | type BuildInfo struct { 5 | Version string 6 | VersionArray []int32 7 | GitVersion string 8 | OpenSSLVersion string 9 | SysInfo string 10 | Bits int32 11 | Debug bool 12 | MaxObjectSize int64 13 | } 14 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/chunks_count.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type ChunksByCollection struct { 4 | ID string `bson:"_id"` // Namespace 5 | Count int `bson:"count"` 6 | } 7 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/connections.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type Connections struct { 4 | Available float64 `bson:"available"` 5 | Current float64 `bson:"current"` 6 | TotalCreated float64 `bson:"totalCreated"` 7 | } 8 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/cursors.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type Cursors struct { 4 | ClientCursorsSize float64 `bson:"clientCursors_size"` 5 | Note string `bson:"note"` 6 | Pinned float64 `bson:"pinned"` 7 | TimedOut float64 `bson:"timedOut"` 8 | TotalNoTimeout float64 `bson:"totalNoTimeout"` 9 | TotalOpen float64 `bson:"totalOpen"` 10 | } 11 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/databases.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | // Database item plus struct to hold collections stats 4 | type Database struct { 5 | Name string `bson:"name"` 6 | SizeOnDisk int64 `bson:"sizeOnDisk"` 7 | Empty bool `bson:"empty"` 8 | } 9 | 10 | // Database struct for listDatabases command 11 | type Databases struct { 12 | Databases []Database `bson:"databases"` 13 | } 14 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/extrainfo.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type ExtraInfo struct { 4 | PageFaults float64 `bson:"page_faults"` 5 | HeapUsageBytes float64 `bson:"heap_usage_bytes"` 6 | Note string `bson:"note"` 7 | } 8 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/get_shard_map.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type ShardsMap struct { 4 | Map map[string]string `bson:"map"` 5 | OK int `bson:"ok"` 6 | } 7 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/globallock.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type GlobalLock struct { 4 | ActiveClients *ActiveClients `bson:"activeClients"` 5 | CurrentQueue *CurrentQueue `bson:"currentQueue"` 6 | TotalTime int64 `bson:"totalTime"` 7 | } 8 | 9 | type ActiveClients struct { 10 | Readers int64 `bson:"readers"` 11 | Total int64 `bson:"total"` 12 | Writers int64 `bson:"writers"` 13 | } 14 | 15 | type CurrentQueue struct { 16 | Writers int64 `bson:"writers"` 17 | Readers int64 `bson:"readers"` 18 | Total int64 `bson:"total"` 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/locks.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type AcquiredLocks struct { 4 | AcquireCount *AcquireCount `bson:"acquireCount"` 5 | AcquireWaitCount float64 `bson:"acquireWaitCount.W"` 6 | TimeAcquiringMicros float64 `bson:"timeAcquiringMicros.W"` 7 | } 8 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/master_doc.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type MasterDoc struct { 4 | SetName interface{} `bson:"setName"` 5 | Hosts interface{} `bson:"hosts"` 6 | Msg string `bson:"msg"` 7 | } 8 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/memory.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type Mem struct { 4 | Bits float64 `bson:"bits"` 5 | Mapped float64 `bson:"mapped"` 6 | MappedWithJournal float64 `bson:"mappedWithJournal"` 7 | Resident float64 `bson:"resident"` 8 | Supported bool `bson:"supported"` 9 | Virtual float64 `bson:"virtual"` 10 | } 11 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/network.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type Network struct { 4 | BytesIn float64 `bson:"bytesIn"` 5 | BytesOut float64 `bson:"bytesOut"` 6 | NumRequests float64 `bson:"numRequests"` 7 | } 8 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/opcounters.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type Opcounters struct { 4 | Command float64 `bson:"command"` 5 | Delete float64 `bson:"delete"` 6 | Getmore float64 `bson:"getmore"` 7 | Insert float64 `bson:"insert"` 8 | Query float64 `bson:"query"` 9 | Update float64 `bson:"update"` 10 | } 11 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/profiler_status.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | // ProfilerStatus is a struct to hold the results of db.getProfilingLevel() 4 | // var ps proto.ProfilerStatus 5 | // err := db.Run(bson.M{"profile": -1}, &ps) 6 | type ProfilerStatus struct { 7 | Was int64 `bson:"was"` 8 | SlowMs int64 `bson:"slowms"` 9 | GleStats struct { 10 | ElectionID string `bson:"electionId"` 11 | LastOpTime int64 `bson:"lastOpTime"` 12 | } `bson:"$gleStats"` 13 | } 14 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/replicas.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type Repl struct { 4 | Rbid float64 `bson:"rbid"` 5 | SetVersion float64 `bson:"setVersion"` 6 | ElectionId string `bson:"electionId"` 7 | Primary string `bson:"primary"` 8 | Me string `bson:"me"` 9 | Secondary bool `bson:"secondary"` 10 | SetName string `bson:"setName"` 11 | Hosts []string `bson:"hosts"` 12 | Ismaster bool `bson:"ismaster"` 13 | } 14 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/sharding_changelog_stats.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type ShardingChangelogSummaryId struct { 4 | Event string `bson:"event"` 5 | Note string `bson:"note"` 6 | } 7 | 8 | type ShardingChangelogSummary struct { 9 | Id *ShardingChangelogSummaryId `bson:"_id"` 10 | Count float64 `bson:"count"` 11 | } 12 | 13 | type ShardingChangelogStats struct { 14 | Items *[]ShardingChangelogSummary 15 | } 16 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/proto/shards.go: -------------------------------------------------------------------------------- 1 | package proto 2 | 3 | type Shard struct { 4 | ID string `bson:"_id"` 5 | Host string `bson:"host"` 6 | } 7 | 8 | type ShardsInfo struct { 9 | Shards []Shard `bson:"shards"` 10 | OK int `bson:"ok"` 11 | } 12 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/mongolib/stats/fingerprinter.go: -------------------------------------------------------------------------------- 1 | package stats 2 | 3 | import ( 4 | "github.com/percona/percona-toolkit/src/go/mongolib/fingerprinter" 5 | "github.com/percona/percona-toolkit/src/go/mongolib/proto" 6 | ) 7 | 8 | type Fingerprinter interface { 9 | Fingerprint(doc proto.SystemProfile) (fingerprinter.Fingerprint, error) 10 | } 11 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/pt-mongodb-query-digest/filter/filters.go: -------------------------------------------------------------------------------- 1 | package filter 2 | 3 | import ( 4 | "strings" 5 | 6 | "github.com/percona/percona-toolkit/src/go/mongolib/proto" 7 | ) 8 | 9 | type Filter func(proto.SystemProfile) bool 10 | 11 | // This func receives a doc from the profiler and returns: 12 | // true : the document must be considered 13 | // false: the document must be skipped 14 | func NewFilterByCollection(collectionsToSkip []string) func(proto.SystemProfile) bool { 15 | return func(doc proto.SystemProfile) bool { 16 | for _, collection := range collectionsToSkip { 17 | if strings.HasSuffix(doc.Ns, collection) { 18 | return false 19 | } 20 | } 21 | return true 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/pt-mongodb-summary/templates/balancer.go: -------------------------------------------------------------------------------- 1 | package templates 2 | 3 | const BalancerStats = ` 4 | # Balancer (per day) 5 | Success: {{.Success}} 6 | Failed: {{.Failed}} 7 | Splits: {{.Splits}} 8 | Drops: {{.Drops}} 9 | ` 10 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/pt-mongodb-summary/templates/clusterwide.go: -------------------------------------------------------------------------------- 1 | package templates 2 | 3 | const Clusterwide = ` 4 | # Cluster wide ########################################################################################### 5 | Databases: {{.TotalDBsCount}} 6 | Collections: {{.TotalCollectionsCount}} 7 | Sharded Collections: {{.ShardedColsCount}} 8 | Unsharded Collections: {{.UnshardedColsCount}} 9 | Sharded Data Size: {{.ShardedDataSizeScaled}} {{.ShardedDataSizeScale}} 10 | Unsharded Data Size: {{.UnshardedDataSizeScaled}} {{.UnshardedDataSizeScale}} 11 | {{- if .Chunks }} 12 | ### Chunks: 13 | {{- range .Chunks }} 14 | {{- if .ID }} 15 | {{ printf "%5d" .Count }} : {{ printf "%-30s" .ID}} 16 | {{- end }} 17 | {{- end }} 18 | {{- end -}} 19 | ` 20 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/pt-mongodb-summary/templates/oplog.go: -------------------------------------------------------------------------------- 1 | package templates 2 | 3 | const Oplog = ` 4 | # Oplog ################################################################################################## 5 | Oplog Size {{.Size}} Mb 6 | Oplog Used {{.UsedMB}} Mb 7 | Oplog Length {{.Running}} 8 | Last Election {{.ElectionTime}} 9 | ` 10 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/pt-mongodb-summary/templates/replicaset.go: -------------------------------------------------------------------------------- 1 | package templates 2 | 3 | const Replicas = ` 4 | # Instances ############################################################################################## 5 | PID Host Type ReplSet Engine 6 | {{- if . -}} 7 | {{- range . }} 8 | {{printf "% 6d" .ID}} {{printf "%-30s" .Name}} {{printf "%-25s" .StateStr}} {{ if .Set }}{{printf "%-10s" .Set }}{{else}}- {{end}} {{printf "%20s" .StorageEngine.Name -}} 9 | {{end}} 10 | {{else}} 11 | no replica sets found 12 | {{end}} 13 | ` 14 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/src/go/pt-mongodb-summary/templates/security.go: -------------------------------------------------------------------------------- 1 | package templates 2 | 3 | const Security = ` 4 | # Security ############################################################################################### 5 | Users : {{.Users}} 6 | Roles : {{.Roles}} 7 | Auth : {{.Auth}} 8 | SSL : {{.SSL}} 9 | Port : {{.Port}} 10 | Bind IP: {{.BindIP}} 11 | {{- if .WarningMsgs -}} 12 | {{- range .WarningMsgs }} 13 | {{ . }} 14 | {{end}} 15 | {{end }} 16 | ` 17 | -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/t/lib/bash/alt_cmds.t: -------------------------------------------------------------------------------- 1 | ../../../util/test-bash-functions -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/t/lib/bash/collect.t: -------------------------------------------------------------------------------- 1 | ../../../util/test-bash-functions -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/t/lib/bash/collect_mysql_info.t: -------------------------------------------------------------------------------- 1 | ../../../util/test-bash-functions -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/t/lib/bash/collect_system_info.t: -------------------------------------------------------------------------------- 1 | ../../../util/test-bash-functions -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/t/lib/bash/daemon.t: -------------------------------------------------------------------------------- 1 | ../../../util/test-bash-functions -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/t/lib/bash/log_warn_die.t: -------------------------------------------------------------------------------- 1 | ../../../util/test-bash-functions -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/t/lib/bash/mysql_options.t: -------------------------------------------------------------------------------- 1 | ../../../util/test-bash-functions -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/t/lib/bash/parse_options.t: -------------------------------------------------------------------------------- 1 | ../../../util/test-bash-functions -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/t/lib/bash/report_formatting.t: -------------------------------------------------------------------------------- 1 | ../../../util/test-bash-functions -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/t/lib/bash/report_mysql_info.t: -------------------------------------------------------------------------------- 1 | ../../../util/test-bash-functions -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/t/lib/bash/report_system_info.t: -------------------------------------------------------------------------------- 1 | ../../../util/test-bash-functions -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/t/lib/bash/safeguards.t: -------------------------------------------------------------------------------- 1 | ../../../util/test-bash-functions -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/t/lib/bash/summary_common.t: -------------------------------------------------------------------------------- 1 | ../../../util/test-bash-functions -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/t/lib/bash/tmpdir.t: -------------------------------------------------------------------------------- 1 | ../../../util/test-bash-functions -------------------------------------------------------------------------------- /vendor/github.com/percona/percona-toolkit/util/NaturalDocs/License.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/percona/qan-agent/9399e1fe46df02e988838816c0578282918b0b8c/vendor/github.com/percona/percona-toolkit/util/NaturalDocs/License.txt -------------------------------------------------------------------------------- /vendor/github.com/percona/pmgo/dbtest.go: -------------------------------------------------------------------------------- 1 | package pmgo 2 | 3 | import "gopkg.in/mgo.v2/dbtest" 4 | 5 | type DBTestServer interface { 6 | Session() SessionManager 7 | SetPath(dbpath string) 8 | Stop() 9 | Wipe() 10 | } 11 | 12 | type DBTServer struct { 13 | dbserver dbtest.DBServer 14 | } 15 | 16 | func NewDBServer() DBTestServer { 17 | return &DBTServer{} 18 | } 19 | 20 | func (d *DBTServer) Session() SessionManager { 21 | se := &Session{ 22 | session: d.dbserver.Session(), 23 | } 24 | return se 25 | } 26 | 27 | func (d *DBTServer) SetPath(dbpath string) { 28 | d.dbserver.SetPath(dbpath) 29 | } 30 | 31 | func (d *DBTServer) Stop() { 32 | d.dbserver.Stop() 33 | } 34 | 35 | func (d *DBTServer) Wipe() { 36 | d.dbserver.Wipe() 37 | } 38 | -------------------------------------------------------------------------------- /vendor/github.com/petar/GoLLRB/AUTHORS: -------------------------------------------------------------------------------- 1 | Petar Maymounkov 2 | Vadim Vygonets 3 | Ian Smith 4 | Martin Bruse 5 | -------------------------------------------------------------------------------- /vendor/github.com/petar/GoLLRB/example/ex1.go: -------------------------------------------------------------------------------- 1 | package main 2 | 3 | import ( 4 | "fmt" 5 | "github.com/petar/GoLLRB/llrb" 6 | ) 7 | 8 | func lessInt(a, b interface{}) bool { return a.(int) < b.(int) } 9 | 10 | func main() { 11 | tree := llrb.New(lessInt) 12 | tree.ReplaceOrInsert(1) 13 | tree.ReplaceOrInsert(2) 14 | tree.ReplaceOrInsert(3) 15 | tree.ReplaceOrInsert(4) 16 | tree.DeleteMin() 17 | tree.Delete(4) 18 | c := tree.IterAscend() 19 | for { 20 | u := <-c 21 | if u == nil { 22 | break 23 | } 24 | fmt.Printf("%d\n", int(u.(int))) 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /vendor/github.com/petar/GoLLRB/llrb/util.go: -------------------------------------------------------------------------------- 1 | // Copyright 2010 Petar Maymounkov. 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 llrb 6 | 7 | type Int int 8 | 9 | func (x Int) Less(than Item) bool { 10 | return x < than.(Int) 11 | } 12 | 13 | type String string 14 | 15 | func (x String) Less(than Item) bool { 16 | return x < than.(String) 17 | } 18 | -------------------------------------------------------------------------------- /vendor/github.com/peterbourgon/diskv/examples/super-simple-store/super-simple-store.go: -------------------------------------------------------------------------------- 1 | package main 2 | 3 | import ( 4 | "fmt" 5 | 6 | "github.com/peterbourgon/diskv" 7 | ) 8 | 9 | func main() { 10 | d := diskv.New(diskv.Options{ 11 | BasePath: "my-diskv-data-directory", 12 | Transform: func(s string) []string { return []string{} }, 13 | CacheSizeMax: 1024 * 1024, // 1MB 14 | }) 15 | 16 | key := "alpha" 17 | if err := d.Write(key, []byte{'1', '2', '3'}); err != nil { 18 | panic(err) 19 | } 20 | 21 | value, err := d.Read(key) 22 | if err != nil { 23 | panic(err) 24 | } 25 | fmt.Printf("%v\n", value) 26 | 27 | if err := d.Erase(key); err != nil { 28 | panic(err) 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/cpu/cpu_darwin_nocgo.go: -------------------------------------------------------------------------------- 1 | // +build darwin 2 | // +build !cgo 3 | 4 | package cpu 5 | 6 | import "github.com/shirou/gopsutil/internal/common" 7 | 8 | func perCPUTimes() ([]TimesStat, error) { 9 | return []TimesStat{}, common.ErrNotImplementedError 10 | } 11 | 12 | func allCPUTimes() ([]TimesStat, error) { 13 | return []TimesStat{}, common.ErrNotImplementedError 14 | } 15 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/cpu/cpu_fallback.go: -------------------------------------------------------------------------------- 1 | // +build !darwin,!linux,!freebsd,!openbsd,!solaris,!windows 2 | 3 | package cpu 4 | 5 | import ( 6 | "context" 7 | 8 | "github.com/shirou/gopsutil/internal/common" 9 | ) 10 | 11 | func Times(percpu bool) ([]TimesStat, error) { 12 | return TimesWithContext(context.Background(), percpu) 13 | } 14 | 15 | func TimesWithContext(ctx context.Context, percpu bool) ([]TimesStat, error) { 16 | return []TimesStat{}, common.ErrNotImplementedError 17 | } 18 | 19 | func Info() ([]InfoStat, error) { 20 | return InfoWithContext(context.Background()) 21 | } 22 | 23 | func InfoWithContext(ctx context.Context) ([]InfoStat, error) { 24 | return []InfoStat{}, common.ErrNotImplementedError 25 | } 26 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/cpu/cpu_freebsd_386.go: -------------------------------------------------------------------------------- 1 | package cpu 2 | 3 | type cpuTimes struct { 4 | User uint32 5 | Nice uint32 6 | Sys uint32 7 | Intr uint32 8 | Idle uint32 9 | } 10 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/cpu/cpu_freebsd_amd64.go: -------------------------------------------------------------------------------- 1 | package cpu 2 | 3 | type cpuTimes struct { 4 | User uint64 5 | Nice uint64 6 | Sys uint64 7 | Intr uint64 8 | Idle uint64 9 | } 10 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/disk/disk_darwin_nocgo.go: -------------------------------------------------------------------------------- 1 | // +build darwin 2 | // +build !cgo 3 | 4 | package disk 5 | 6 | import ( 7 | "context" 8 | 9 | "github.com/shirou/gopsutil/internal/common" 10 | ) 11 | 12 | func IOCounters(names ...string) (map[string]IOCountersStat, error) { 13 | return IOCountersWithContext(context.Background(), names...) 14 | } 15 | 16 | func IOCountersWithContext(ctx context.Context, names ...string) (map[string]IOCountersStat, error) { 17 | return nil, common.ErrNotImplementedError 18 | } 19 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/doc.go: -------------------------------------------------------------------------------- 1 | package gopsutil 2 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/host/host_darwin_386.go: -------------------------------------------------------------------------------- 1 | // Created by cgo -godefs - DO NOT EDIT 2 | // cgo -godefs types_darwin.go 3 | 4 | package host 5 | 6 | type Utmpx struct { 7 | User [256]int8 8 | ID [4]int8 9 | Line [32]int8 10 | Pid int32 11 | Type int16 12 | Pad_cgo_0 [6]byte 13 | Tv Timeval 14 | Host [256]int8 15 | Pad [16]uint32 16 | } 17 | type Timeval struct { 18 | Sec int32 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/host/host_darwin_amd64.go: -------------------------------------------------------------------------------- 1 | // Created by cgo -godefs - DO NOT EDIT 2 | // cgo -godefs types_darwin.go 3 | 4 | package host 5 | 6 | type Utmpx struct { 7 | User [256]int8 8 | ID [4]int8 9 | Line [32]int8 10 | Pid int32 11 | Type int16 12 | Pad_cgo_0 [6]byte 13 | Tv Timeval 14 | Host [256]int8 15 | Pad [16]uint32 16 | } 17 | type Timeval struct { 18 | Sec int32 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/host/host_freebsd_386.go: -------------------------------------------------------------------------------- 1 | // Created by cgo -godefs - DO NOT EDIT 2 | // cgo -godefs types_freebsd.go 3 | 4 | package host 5 | 6 | const ( 7 | sizeofPtr = 0x4 8 | sizeofShort = 0x2 9 | sizeofInt = 0x4 10 | sizeofLong = 0x4 11 | sizeofLongLong = 0x8 12 | sizeOfUtmpx = 197 // TODO why should 197 13 | ) 14 | 15 | type ( 16 | _C_short int16 17 | _C_int int32 18 | _C_long int32 19 | _C_long_long int64 20 | ) 21 | 22 | type Utmp struct { 23 | Line [8]int8 24 | Name [16]int8 25 | Host [16]int8 26 | Time int32 27 | } 28 | 29 | type Utmpx struct { 30 | Type int16 31 | Tv Timeval 32 | Id [8]int8 33 | Pid int32 34 | User [32]int8 35 | Line [16]int8 36 | Host [125]int8 37 | // X__ut_spare [64]int8 38 | } 39 | 40 | type Timeval struct { 41 | Sec [4]byte 42 | Usec [3]byte 43 | } 44 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/host/host_openbsd_amd64.go: -------------------------------------------------------------------------------- 1 | // Created by cgo -godefs - DO NOT EDIT 2 | // cgo -godefs types_openbsd.go 3 | 4 | package host 5 | 6 | const ( 7 | sizeofPtr = 0x8 8 | sizeofShort = 0x2 9 | sizeofInt = 0x4 10 | sizeofLong = 0x8 11 | sizeofLongLong = 0x8 12 | sizeOfUtmp = 0x130 13 | ) 14 | 15 | type ( 16 | _C_short int16 17 | _C_int int32 18 | _C_long int64 19 | _C_long_long int64 20 | ) 21 | 22 | type Utmp struct { 23 | Line [8]int8 24 | Name [32]int8 25 | Host [256]int8 26 | Time int64 27 | } 28 | type Timeval struct { 29 | Sec int64 30 | Usec int64 31 | } 32 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/host/types_darwin.go: -------------------------------------------------------------------------------- 1 | // +build ignore 2 | // plus hand editing about timeval 3 | 4 | /* 5 | Input to cgo -godefs. 6 | */ 7 | 8 | package host 9 | 10 | /* 11 | #include 12 | #include 13 | */ 14 | import "C" 15 | 16 | type Utmpx C.struct_utmpx 17 | type Timeval C.struct_timeval 18 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/host/types_linux.go: -------------------------------------------------------------------------------- 1 | // +build ignore 2 | 3 | /* 4 | Input to cgo -godefs. 5 | */ 6 | 7 | package host 8 | 9 | /* 10 | #include 11 | #include 12 | 13 | enum { 14 | sizeofPtr = sizeof(void*), 15 | }; 16 | 17 | */ 18 | import "C" 19 | 20 | // Machine characteristics; for internal use. 21 | 22 | const ( 23 | sizeofPtr = C.sizeofPtr 24 | sizeofShort = C.sizeof_short 25 | sizeofInt = C.sizeof_int 26 | sizeofLong = C.sizeof_long 27 | sizeofLongLong = C.sizeof_longlong 28 | sizeOfUtmp = C.sizeof_struct_utmp 29 | ) 30 | 31 | // Basic types 32 | 33 | type ( 34 | _C_short C.short 35 | _C_int C.int 36 | _C_long C.long 37 | _C_long_long C.longlong 38 | ) 39 | 40 | type utmp C.struct_utmp 41 | type exit_status C.struct_exit_status 42 | type timeval C.struct_timeval 43 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/host/types_openbsd.go: -------------------------------------------------------------------------------- 1 | // +build ignore 2 | 3 | /* 4 | Input to cgo -godefs. 5 | */ 6 | 7 | package host 8 | 9 | /* 10 | #define KERNEL 11 | #include 12 | #include 13 | #include 14 | 15 | enum { 16 | sizeofPtr = sizeof(void*), 17 | }; 18 | 19 | */ 20 | import "C" 21 | 22 | // Machine characteristics; for internal use. 23 | 24 | const ( 25 | sizeofPtr = C.sizeofPtr 26 | sizeofShort = C.sizeof_short 27 | sizeofInt = C.sizeof_int 28 | sizeofLong = C.sizeof_long 29 | sizeofLongLong = C.sizeof_longlong 30 | sizeOfUtmp = C.sizeof_struct_utmp 31 | ) 32 | 33 | // Basic types 34 | 35 | type ( 36 | _C_short C.short 37 | _C_int C.int 38 | _C_long C.long 39 | _C_long_long C.longlong 40 | ) 41 | 42 | type Utmp C.struct_utmp 43 | type Timeval C.struct_timeval 44 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/load/load.go: -------------------------------------------------------------------------------- 1 | package load 2 | 3 | import ( 4 | "encoding/json" 5 | 6 | "github.com/shirou/gopsutil/internal/common" 7 | ) 8 | 9 | var invoke common.Invoker = common.Invoke{} 10 | 11 | type AvgStat struct { 12 | Load1 float64 `json:"load1"` 13 | Load5 float64 `json:"load5"` 14 | Load15 float64 `json:"load15"` 15 | } 16 | 17 | func (l AvgStat) String() string { 18 | s, _ := json.Marshal(l) 19 | return string(s) 20 | } 21 | 22 | type MiscStat struct { 23 | ProcsRunning int `json:"procsRunning"` 24 | ProcsBlocked int `json:"procsBlocked"` 25 | Ctxt int `json:"ctxt"` 26 | } 27 | 28 | func (m MiscStat) String() string { 29 | s, _ := json.Marshal(m) 30 | return string(s) 31 | } 32 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/load/load_fallback.go: -------------------------------------------------------------------------------- 1 | // +build !darwin,!linux,!freebsd,!openbsd,!windows 2 | 3 | package load 4 | 5 | import ( 6 | "context" 7 | 8 | "github.com/shirou/gopsutil/internal/common" 9 | ) 10 | 11 | func Avg() (*AvgStat, error) { 12 | return AvgWithContext(context.Background()) 13 | } 14 | 15 | func AvgWithContext(ctx context.Context) (*AvgStat, error) { 16 | return nil, common.ErrNotImplementedError 17 | } 18 | 19 | func Misc() (*MiscStat, error) { 20 | return MiscWithContext(context.Background()) 21 | } 22 | 23 | func MiscWithContext(ctx context.Context) (*MiscStat, error) { 24 | return nil, common.ErrNotImplementedError 25 | } 26 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/load/load_windows.go: -------------------------------------------------------------------------------- 1 | // +build windows 2 | 3 | package load 4 | 5 | import ( 6 | "context" 7 | 8 | "github.com/shirou/gopsutil/internal/common" 9 | ) 10 | 11 | func Avg() (*AvgStat, error) { 12 | return AvgWithContext(context.Background()) 13 | } 14 | 15 | func AvgWithContext(ctx context.Context) (*AvgStat, error) { 16 | ret := AvgStat{} 17 | 18 | return &ret, common.ErrNotImplementedError 19 | } 20 | 21 | func Misc() (*MiscStat, error) { 22 | return MiscWithContext(context.Background()) 23 | } 24 | 25 | func MiscWithContext(ctx context.Context) (*MiscStat, error) { 26 | ret := MiscStat{} 27 | 28 | return &ret, common.ErrNotImplementedError 29 | } 30 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/mem/mem_fallback.go: -------------------------------------------------------------------------------- 1 | // +build !darwin,!linux,!freebsd,!openbsd,!solaris,!windows 2 | 3 | package mem 4 | 5 | import ( 6 | "context" 7 | 8 | "github.com/shirou/gopsutil/internal/common" 9 | ) 10 | 11 | func VirtualMemory() (*VirtualMemoryStat, error) { 12 | return VirtualMemoryWithContext(context.Background()) 13 | } 14 | 15 | func VirtualMemoryWithContext(ctx context.Context) (*VirtualMemoryStat, error) { 16 | return nil, common.ErrNotImplementedError 17 | } 18 | 19 | func SwapMemory() (*SwapMemoryStat, error) { 20 | return SwapMemoryWithContext(context.Background()) 21 | } 22 | 23 | func SwapMemoryWithContext(ctx context.Context) (*SwapMemoryStat, error) { 24 | return nil, common.ErrNotImplementedError 25 | } 26 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/mem/types_openbsd.go: -------------------------------------------------------------------------------- 1 | // +build ignore 2 | 3 | /* 4 | Input to cgo -godefs. 5 | */ 6 | 7 | package mem 8 | 9 | /* 10 | #include 11 | #include 12 | #include 13 | #include 14 | 15 | */ 16 | import "C" 17 | 18 | // Machine characteristics; for internal use. 19 | 20 | const ( 21 | CTLVm = 2 22 | CTLVfs = 10 23 | VmUvmexp = 4 // get uvmexp 24 | VfsGeneric = 0 25 | VfsBcacheStat = 3 26 | ) 27 | 28 | const ( 29 | sizeOfUvmexp = C.sizeof_struct_uvmexp 30 | sizeOfBcachestats = C.sizeof_struct_bcachestats 31 | ) 32 | 33 | type Uvmexp C.struct_uvmexp 34 | type Bcachestats C.struct_bcachestats 35 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/process/process_windows_386.go: -------------------------------------------------------------------------------- 1 | // +build windows 2 | 3 | package process 4 | 5 | type PROCESS_MEMORY_COUNTERS struct { 6 | CB uint32 7 | PageFaultCount uint32 8 | PeakWorkingSetSize uint32 9 | WorkingSetSize uint32 10 | QuotaPeakPagedPoolUsage uint32 11 | QuotaPagedPoolUsage uint32 12 | QuotaPeakNonPagedPoolUsage uint32 13 | QuotaNonPagedPoolUsage uint32 14 | PagefileUsage uint32 15 | PeakPagefileUsage uint32 16 | } 17 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/gopsutil/process/process_windows_amd64.go: -------------------------------------------------------------------------------- 1 | // +build windows 2 | 3 | package process 4 | 5 | type PROCESS_MEMORY_COUNTERS struct { 6 | CB uint32 7 | PageFaultCount uint32 8 | PeakWorkingSetSize uint64 9 | WorkingSetSize uint64 10 | QuotaPeakPagedPoolUsage uint64 11 | QuotaPagedPoolUsage uint64 12 | QuotaPeakNonPagedPoolUsage uint64 13 | QuotaNonPagedPoolUsage uint64 14 | PagefileUsage uint64 15 | PeakPagefileUsage uint64 16 | } 17 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/w32/AUTHORS: -------------------------------------------------------------------------------- 1 | # This is the official list of 'w32' authors for copyright purposes. 2 | 3 | # Names should be added to this file as 4 | # Name or Organization 5 | # The email address is not required for organizations. 6 | 7 | # Please keep the list sorted. 8 | 9 | # Contributors 10 | # ============ 11 | 12 | Allen Dang 13 | Benny Siegert 14 | Bruno Bigras 15 | Gerald Rosenberg 16 | Michael Henke -------------------------------------------------------------------------------- /vendor/github.com/shirou/w32/istream.go: -------------------------------------------------------------------------------- 1 | // Copyright 2010-2012 The W32 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 | // +build windows 6 | 7 | package w32 8 | 9 | import ( 10 | "unsafe" 11 | ) 12 | 13 | type pIStreamVtbl struct { 14 | pQueryInterface uintptr 15 | pAddRef uintptr 16 | pRelease uintptr 17 | } 18 | 19 | type IStream struct { 20 | lpVtbl *pIStreamVtbl 21 | } 22 | 23 | func (this *IStream) QueryInterface(id *GUID) *IDispatch { 24 | return ComQueryInterface((*IUnknown)(unsafe.Pointer(this)), id) 25 | } 26 | 27 | func (this *IStream) AddRef() int32 { 28 | return ComAddRef((*IUnknown)(unsafe.Pointer(this))) 29 | } 30 | 31 | func (this *IStream) Release() int32 { 32 | return ComRelease((*IUnknown)(unsafe.Pointer(this))) 33 | } 34 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/w32/iunknown.go: -------------------------------------------------------------------------------- 1 | // Copyright 2010-2012 The W32 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 | // +build windows 6 | 7 | package w32 8 | 9 | type pIUnknownVtbl struct { 10 | pQueryInterface uintptr 11 | pAddRef uintptr 12 | pRelease uintptr 13 | } 14 | 15 | type IUnknown struct { 16 | lpVtbl *pIUnknownVtbl 17 | } 18 | 19 | func (this *IUnknown) QueryInterface(id *GUID) *IDispatch { 20 | return ComQueryInterface(this, id) 21 | } 22 | 23 | func (this *IUnknown) AddRef() int32 { 24 | return ComAddRef(this) 25 | } 26 | 27 | func (this *IUnknown) Release() int32 { 28 | return ComRelease(this) 29 | } 30 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/w32/psapi.go: -------------------------------------------------------------------------------- 1 | // Copyright 2010-2012 The W32 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 | // +build windows 6 | 7 | package w32 8 | 9 | import ( 10 | "syscall" 11 | "unsafe" 12 | ) 13 | 14 | var ( 15 | modpsapi = syscall.NewLazyDLL("psapi.dll") 16 | 17 | procEnumProcesses = modpsapi.NewProc("EnumProcesses") 18 | ) 19 | 20 | func EnumProcesses(processIds []uint32, cb uint32, bytesReturned *uint32) bool { 21 | ret, _, _ := procEnumProcesses.Call( 22 | uintptr(unsafe.Pointer(&processIds[0])), 23 | uintptr(cb), 24 | uintptr(unsafe.Pointer(bytesReturned))) 25 | 26 | return ret != 0 27 | } 28 | -------------------------------------------------------------------------------- /vendor/github.com/shirou/w32/vars.go: -------------------------------------------------------------------------------- 1 | // Copyright 2010-2012 The W32 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 w32 6 | 7 | var ( 8 | IID_NULL = &GUID{0x00000000, 0x0000, 0x0000, [8]byte{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}} 9 | IID_IUnknown = &GUID{0x00000000, 0x0000, 0x0000, [8]byte{0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}} 10 | IID_IDispatch = &GUID{0x00020400, 0x0000, 0x0000, [8]byte{0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}} 11 | IID_IConnectionPointContainer = &GUID{0xB196B284, 0xBAB4, 0x101A, [8]byte{0xB6, 0x9C, 0x00, 0xAA, 0x00, 0x34, 0x1D, 0x07}} 12 | IID_IConnectionPoint = &GUID{0xB196B286, 0xBAB4, 0x101A, [8]byte{0xB6, 0x9C, 0x00, 0xAA, 0x00, 0x34, 0x1D, 0x07}} 13 | ) 14 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/assert/errors.go: -------------------------------------------------------------------------------- 1 | package assert 2 | 3 | import ( 4 | "errors" 5 | ) 6 | 7 | // AnError is an error instance useful for testing. If the code does not care 8 | // about error specifics, and only needs to return the error for example, this 9 | // error should be used to make the test code more readable. 10 | var AnError = errors.New("assert.AnError general error for testing") 11 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/assert/forward_assertions.go: -------------------------------------------------------------------------------- 1 | package assert 2 | 3 | // Assertions provides assertion methods around the 4 | // TestingT interface. 5 | type Assertions struct { 6 | t TestingT 7 | } 8 | 9 | // New makes a new Assertions object for the specified TestingT. 10 | func New(t TestingT) *Assertions { 11 | return &Assertions{ 12 | t: t, 13 | } 14 | } 15 | 16 | //go:generate go run ../_codegen/main.go -output-package=assert -template=assertion_forward.go.tmpl -include-format-funcs 17 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/http/doc.go: -------------------------------------------------------------------------------- 1 | // Package http DEPRECATED USE net/http/httptest 2 | package http 3 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/http/test_round_tripper.go: -------------------------------------------------------------------------------- 1 | package http 2 | 3 | import ( 4 | "github.com/stretchr/testify/mock" 5 | "net/http" 6 | ) 7 | 8 | // TestRoundTripper DEPRECATED USE net/http/httptest 9 | type TestRoundTripper struct { 10 | mock.Mock 11 | } 12 | 13 | // RoundTrip DEPRECATED USE net/http/httptest 14 | func (t *TestRoundTripper) RoundTrip(req *http.Request) (*http.Response, error) { 15 | args := t.Called(req) 16 | return args.Get(0).(*http.Response), args.Error(1) 17 | } 18 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/require/forward_requirements.go: -------------------------------------------------------------------------------- 1 | package require 2 | 3 | // Assertions provides assertion methods around the 4 | // TestingT interface. 5 | type Assertions struct { 6 | t TestingT 7 | } 8 | 9 | // New makes a new Assertions object for the specified TestingT. 10 | func New(t TestingT) *Assertions { 11 | return &Assertions{ 12 | t: t, 13 | } 14 | } 15 | 16 | //go:generate go run ../_codegen/main.go -output-package=require -template=require_forward.go.tmpl -include-format-funcs 17 | -------------------------------------------------------------------------------- /vendor/github.com/stretchr/testify/require/requirements.go: -------------------------------------------------------------------------------- 1 | package require 2 | 3 | // TestingT is an interface wrapper around *testing.T 4 | type TestingT interface { 5 | Errorf(format string, args ...interface{}) 6 | FailNow() 7 | } 8 | 9 | //go:generate go run ../_codegen/main.go -output-package=require -template=require.go.tmpl -include-format-funcs 10 | -------------------------------------------------------------------------------- /vendor/go4.org/AUTHORS: -------------------------------------------------------------------------------- 1 | # This is the official list of go4 authors for copyright purposes. 2 | # This is distinct from the CONTRIBUTORS file, which is the list of 3 | # people who have contributed, even if they don't own the copyright on 4 | # their work. 5 | 6 | Mathieu Lonjaret 7 | Daniel Theophanes 8 | Google 9 | -------------------------------------------------------------------------------- /vendor/go4.org/lock/lock_sigzero.go: -------------------------------------------------------------------------------- 1 | // +build !appengine 2 | // +build linux darwin freebsd openbsd netbsd dragonfly 3 | 4 | /* 5 | Copyright 2013 The Go Authors 6 | 7 | Licensed under the Apache License, Version 2.0 (the "License"); 8 | you may not use this file except in compliance with the License. 9 | You may obtain a copy of the License at 10 | 11 | http://www.apache.org/licenses/LICENSE-2.0 12 | 13 | Unless required by applicable law or agreed to in writing, software 14 | distributed under the License is distributed on an "AS IS" BASIS, 15 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | See the License for the specific language governing permissions and 17 | limitations under the License. 18 | */ 19 | 20 | package lock 21 | 22 | import "syscall" 23 | 24 | func init() { 25 | signalZero = syscall.Signal(0) 26 | } 27 | -------------------------------------------------------------------------------- /vendor/go4.org/reflectutil/asm_b.s: -------------------------------------------------------------------------------- 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 | // +build go1.6 6 | // +build arm 7 | 8 | #include "textflag.h" 9 | #include "funcdata.h" 10 | 11 | // func typedmemmove(reflect_rtype, src unsafe.Pointer, size uintptr) 12 | TEXT ·typedmemmove(SB),(NOSPLIT|WRAPPER),$0-24 13 | B runtime·typedmemmove(SB) 14 | 15 | // func memmove(dst, src unsafe.Pointer, size uintptr) 16 | TEXT ·memmove(SB),(NOSPLIT|WRAPPER),$0-24 17 | B runtime·memmove(SB) 18 | -------------------------------------------------------------------------------- /vendor/go4.org/reflectutil/asm_b_14.s: -------------------------------------------------------------------------------- 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 | // +build !go1.5 6 | // +build arm 7 | 8 | #include "textflag.h" 9 | #include "funcdata.h" 10 | 11 | // func memmove(dst, src unsafe.Pointer, size uintptr) 12 | TEXT ·memmove(SB),(NOSPLIT|WRAPPER),$0-24 13 | B runtime·memmove(SB) 14 | -------------------------------------------------------------------------------- /vendor/go4.org/reflectutil/asm_jmp.s: -------------------------------------------------------------------------------- 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 | // +build go1.5,!js,!safe,!appengine 6 | // +build amd64 386 7 | 8 | #include "textflag.h" 9 | #include "funcdata.h" 10 | 11 | // func typedmemmove(reflect_rtype, src unsafe.Pointer, size uintptr) 12 | TEXT ·typedmemmove(SB),(NOSPLIT|WRAPPER),$0-24 13 | JMP runtime·typedmemmove(SB) 14 | 15 | // func memmove(dst, src unsafe.Pointer, size uintptr) 16 | TEXT ·memmove(SB),(NOSPLIT|WRAPPER),$0-24 17 | JMP runtime·memmove(SB) 18 | -------------------------------------------------------------------------------- /vendor/go4.org/reflectutil/asm_jmp_14.s: -------------------------------------------------------------------------------- 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 | // +build !go1.5,!js,!safe,!appengine 6 | // +build amd64 386 7 | 8 | #include "textflag.h" 9 | #include "funcdata.h" 10 | 11 | // func memmove(dst, src unsafe.Pointer, size uintptr) 12 | TEXT ·memmove(SB),(NOSPLIT|WRAPPER),$0-24 13 | JMP runtime·memmove(SB) 14 | -------------------------------------------------------------------------------- /vendor/go4.org/reflectutil/swapper.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 | package reflectutil 6 | 7 | import "reflect" 8 | 9 | // Swapper returns a function which swaps the elements in slice. 10 | // Swapper panics if the provided interface is not a slice. 11 | // 12 | // Its goal is to work safely and efficiently for all versions and 13 | // variants of Go: pre-Go1.5, Go1.5+, safe, unsafe, App Engine, 14 | // GopherJS, etc. 15 | func Swapper(slice interface{}) func(i, j int) { 16 | v := reflect.ValueOf(slice) 17 | if v.Kind() != reflect.Slice { 18 | panic(&reflect.ValueError{Method: "reflectutil.Swapper", Kind: v.Kind()}) 19 | } 20 | return swapper(v) 21 | } 22 | -------------------------------------------------------------------------------- /vendor/go4.org/reflectutil/swapper_safe.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 | // +build js appengine safe ppc64 ppc64le arm64 mips mipsle mips64 mips64le 6 | 7 | package reflectutil 8 | 9 | import "reflect" 10 | 11 | func swapper(slice reflect.Value) func(i, j int) { 12 | tmp := reflect.New(slice.Type().Elem()).Elem() 13 | return func(i, j int) { 14 | v1 := slice.Index(i) 15 | v2 := slice.Index(j) 16 | tmp.Set(v1) 17 | v1.Set(v2) 18 | v2.Set(tmp) 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /vendor/go4.org/reflectutil/swapper_unsafe_14.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 | // +build !ppc64,!ppc64le,!arm64,!mips,!mipsle,!mips64,!mips64le 6 | // +build !go1.5,!js,!appengine,!safe 7 | 8 | package reflectutil 9 | 10 | import "unsafe" 11 | 12 | const haveTypedMemmove = false 13 | 14 | func typedmemmove(reflect_rtype, dst, src unsafe.Pointer) { 15 | panic("never called") // only here so swapper_unsafe.go compiles 16 | } 17 | -------------------------------------------------------------------------------- /vendor/go4.org/reflectutil/swapper_unsafe_15.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 | // +build !ppc64,!ppc64le,!arm64,!mips,!mipsle,!mips64,!mips64le 6 | // +build go1.5,!js,!appengine,!safe 7 | 8 | package reflectutil 9 | 10 | import "unsafe" 11 | 12 | const haveTypedMemmove = true 13 | 14 | // typedmemmove copies a value of type t to dst from src. 15 | //go:noescape 16 | func typedmemmove(reflect_rtype, dst, src unsafe.Pointer) 17 | -------------------------------------------------------------------------------- /vendor/go4.org/syncutil/syncutil.go: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright 2014 The Perkeep Authors 3 | 4 | Licensed 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 | 17 | // Package syncutil provides various synchronization utilities. 18 | package syncutil // import "go4.org/syncutil" 19 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/AUTHORS: -------------------------------------------------------------------------------- 1 | # This source code refers to The Go Authors for copyright purposes. 2 | # The master list of authors is in the main Go distribution, 3 | # visible at http://tip.golang.org/AUTHORS. 4 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/CONTRIBUTORS: -------------------------------------------------------------------------------- 1 | # This source code was written by the Go contributors. 2 | # The master list of contributors is in the main Go distribution, 3 | # visible at http://tip.golang.org/CONTRIBUTORS. 4 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/bpf/setter.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 bpf 6 | 7 | // A Setter is a type which can attach a compiled BPF filter to itself. 8 | type Setter interface { 9 | SetBPF(filter []RawInstruction) error 10 | } 11 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/context/go19.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 | // +build go1.9 6 | 7 | package context 8 | 9 | import "context" // standard library's context, as of Go 1.7 10 | 11 | // A Context carries a deadline, a cancelation signal, and other values across 12 | // API boundaries. 13 | // 14 | // Context's methods may be called by multiple goroutines simultaneously. 15 | type Context = context.Context 16 | 17 | // A CancelFunc tells an operation to abandon its work. 18 | // A CancelFunc does not wait for the work to stop. 19 | // After the first call, subsequent calls to a CancelFunc do nothing. 20 | type CancelFunc = context.CancelFunc 21 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/http2/go16.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 | // +build go1.6 6 | 7 | package http2 8 | 9 | import ( 10 | "net/http" 11 | "time" 12 | ) 13 | 14 | func transportExpectContinueTimeout(t1 *http.Transport) time.Duration { 15 | return t1.ExpectContinueTimeout 16 | } 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/http2/go19.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 | // +build go1.9 6 | 7 | package http2 8 | 9 | import ( 10 | "net/http" 11 | ) 12 | 13 | func configureServer19(s *http.Server, conf *Server) error { 14 | s.RegisterOnShutdown(conf.state.startGracefulShutdown) 15 | return nil 16 | } 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/http2/not_go16.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 | // +build !go1.6 6 | 7 | package http2 8 | 9 | import ( 10 | "net/http" 11 | "time" 12 | ) 13 | 14 | func configureTransport(t1 *http.Transport) (*Transport, error) { 15 | return nil, errTransportVersion 16 | } 17 | 18 | func transportExpectContinueTimeout(t1 *http.Transport) time.Duration { 19 | return 0 20 | 21 | } 22 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/http2/not_go18.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 | // +build !go1.8 6 | 7 | package http2 8 | 9 | import ( 10 | "io" 11 | "net/http" 12 | ) 13 | 14 | func configureServer18(h1 *http.Server, h2 *Server) error { 15 | // No IdleTimeout to sync prior to Go 1.8. 16 | return nil 17 | } 18 | 19 | func shouldLogPanic(panicValue interface{}) bool { 20 | return panicValue != nil 21 | } 22 | 23 | func reqGetBody(req *http.Request) func() (io.ReadCloser, error) { 24 | return nil 25 | } 26 | 27 | func reqBodyIsNoBody(io.ReadCloser) bool { return false } 28 | 29 | func go18httpNoBody() io.ReadCloser { return nil } // for tests only 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/http2/not_go19.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 | // +build !go1.9 6 | 7 | package http2 8 | 9 | import ( 10 | "net/http" 11 | ) 12 | 13 | func configureServer19(s *http.Server, conf *Server) error { 14 | // not supported prior to go1.9 15 | return nil 16 | } 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/icmp/ipv6.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package icmp 6 | 7 | import ( 8 | "net" 9 | 10 | "golang.org/x/net/internal/iana" 11 | ) 12 | 13 | const ipv6PseudoHeaderLen = 2*net.IPv6len + 8 14 | 15 | // IPv6PseudoHeader returns an IPv6 pseudo header for checksum 16 | // calculation. 17 | func IPv6PseudoHeader(src, dst net.IP) []byte { 18 | b := make([]byte, ipv6PseudoHeaderLen) 19 | copy(b, src.To16()) 20 | copy(b[net.IPv6len:], dst.To16()) 21 | b[len(b)-1] = byte(iana.ProtocolIPv6ICMP) 22 | return b 23 | } 24 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/icmp/sys_freebsd.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 | package icmp 6 | 7 | import "syscall" 8 | 9 | func init() { 10 | freebsdVersion, _ = syscall.SysctlUint32("kern.osreldate") 11 | } 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/nettest/helper_nobsd.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 | // +build linux solaris 6 | 7 | package nettest 8 | 9 | func supportsIPv6MulticastDeliveryOnLoopback() bool { 10 | return true 11 | } 12 | 13 | func causesIPv6Crash() bool { 14 | return false 15 | } 16 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/nettest/helper_posix.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 | // +build darwin dragonfly freebsd linux netbsd openbsd solaris windows 6 | 7 | package nettest 8 | 9 | import ( 10 | "os" 11 | "syscall" 12 | ) 13 | 14 | func protocolNotSupported(err error) bool { 15 | switch err := err.(type) { 16 | case syscall.Errno: 17 | switch err { 18 | case syscall.EPROTONOSUPPORT, syscall.ENOPROTOOPT: 19 | return true 20 | } 21 | case *os.SyscallError: 22 | switch err := err.Err.(type) { 23 | case syscall.Errno: 24 | switch err { 25 | case syscall.EPROTONOSUPPORT, syscall.ENOPROTOOPT: 26 | return true 27 | } 28 | } 29 | } 30 | return false 31 | } 32 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/nettest/helper_stub.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 | // +build js,wasm nacl plan9 6 | 7 | package nettest 8 | 9 | import ( 10 | "fmt" 11 | "runtime" 12 | ) 13 | 14 | func maxOpenFiles() int { 15 | return defaultMaxOpenFiles 16 | } 17 | 18 | func supportsRawIPSocket() (string, bool) { 19 | return fmt.Sprintf("not supported on %s", runtime.GOOS), false 20 | } 21 | 22 | func supportsIPv6MulticastDeliveryOnLoopback() bool { 23 | return false 24 | } 25 | 26 | func causesIPv6Crash() bool { 27 | return false 28 | } 29 | 30 | func protocolNotSupported(err error) bool { 31 | return false 32 | } 33 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/nettest/helper_unix.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 | // +build darwin dragonfly freebsd linux netbsd openbsd solaris 6 | 7 | package nettest 8 | 9 | import ( 10 | "fmt" 11 | "os" 12 | "runtime" 13 | "syscall" 14 | ) 15 | 16 | func maxOpenFiles() int { 17 | var rlim syscall.Rlimit 18 | if err := syscall.Getrlimit(syscall.RLIMIT_NOFILE, &rlim); err != nil { 19 | return defaultMaxOpenFiles 20 | } 21 | return int(rlim.Cur) 22 | } 23 | 24 | func supportsRawIPSocket() (string, bool) { 25 | if os.Getuid() != 0 { 26 | return fmt.Sprintf("must be root on %s", runtime.GOOS), false 27 | } 28 | return "", true 29 | } 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/nettest/rlimit.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 nettest 6 | 7 | const defaultMaxOpenFiles = 256 8 | 9 | // MaxOpenFiles returns the maximum number of open files for the 10 | // caller's process. 11 | func MaxOpenFiles() int { return maxOpenFiles() } 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/cmsghdr.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 | // +build darwin dragonfly freebsd linux netbsd openbsd solaris 6 | 7 | package socket 8 | 9 | func (h *cmsghdr) len() int { return int(h.Len) } 10 | func (h *cmsghdr) lvl() int { return int(h.Level) } 11 | func (h *cmsghdr) typ() int { return int(h.Type) } 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/cmsghdr_bsd.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 | // +build darwin dragonfly freebsd netbsd openbsd 6 | 7 | package socket 8 | 9 | func (h *cmsghdr) set(l, lvl, typ int) { 10 | h.Len = uint32(l) 11 | h.Level = int32(lvl) 12 | h.Type = int32(typ) 13 | } 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/cmsghdr_linux_32bit.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 | // +build arm mips mipsle 386 6 | // +build linux 7 | 8 | package socket 9 | 10 | func (h *cmsghdr) set(l, lvl, typ int) { 11 | h.Len = uint32(l) 12 | h.Level = int32(lvl) 13 | h.Type = int32(typ) 14 | } 15 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/cmsghdr_linux_64bit.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 | // +build arm64 amd64 ppc64 ppc64le mips64 mips64le s390x 6 | // +build linux 7 | 8 | package socket 9 | 10 | func (h *cmsghdr) set(l, lvl, typ int) { 11 | h.Len = uint64(l) 12 | h.Level = int32(lvl) 13 | h.Type = int32(typ) 14 | } 15 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/cmsghdr_solaris_64bit.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 | // +build amd64 6 | // +build solaris 7 | 8 | package socket 9 | 10 | func (h *cmsghdr) set(l, lvl, typ int) { 11 | h.Len = uint32(l) 12 | h.Level = int32(lvl) 13 | h.Type = int32(typ) 14 | } 15 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/cmsghdr_stub.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 | // +build !darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris 6 | 7 | package socket 8 | 9 | type cmsghdr struct{} 10 | 11 | const sizeofCmsghdr = 0 12 | 13 | func (h *cmsghdr) len() int { return 0 } 14 | func (h *cmsghdr) lvl() int { return 0 } 15 | func (h *cmsghdr) typ() int { return 0 } 16 | 17 | func (h *cmsghdr) set(l, lvl, typ int) {} 18 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/error_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 | // +build darwin dragonfly freebsd linux netbsd openbsd solaris 6 | 7 | package socket 8 | 9 | import "syscall" 10 | 11 | var ( 12 | errEAGAIN error = syscall.EAGAIN 13 | errEINVAL error = syscall.EINVAL 14 | errENOENT error = syscall.ENOENT 15 | ) 16 | 17 | // errnoErr returns common boxed Errno values, to prevent allocations 18 | // at runtime. 19 | func errnoErr(errno syscall.Errno) error { 20 | switch errno { 21 | case 0: 22 | return nil 23 | case syscall.EAGAIN: 24 | return errEAGAIN 25 | case syscall.EINVAL: 26 | return errEINVAL 27 | case syscall.ENOENT: 28 | return errENOENT 29 | } 30 | return errno 31 | } 32 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/error_windows.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 socket 6 | 7 | import "syscall" 8 | 9 | var ( 10 | errERROR_IO_PENDING error = syscall.ERROR_IO_PENDING 11 | errEINVAL error = syscall.EINVAL 12 | ) 13 | 14 | // errnoErr returns common boxed Errno values, to prevent allocations 15 | // at runtime. 16 | func errnoErr(errno syscall.Errno) error { 17 | switch errno { 18 | case 0: 19 | return nil 20 | case syscall.ERROR_IO_PENDING: 21 | return errERROR_IO_PENDING 22 | case syscall.EINVAL: 23 | return errEINVAL 24 | } 25 | return errno 26 | } 27 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/iovec_32bit.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 | // +build arm mips mipsle 386 6 | // +build darwin dragonfly freebsd linux netbsd openbsd 7 | 8 | package socket 9 | 10 | import "unsafe" 11 | 12 | func (v *iovec) set(b []byte) { 13 | l := len(b) 14 | if l == 0 { 15 | return 16 | } 17 | v.Base = (*byte)(unsafe.Pointer(&b[0])) 18 | v.Len = uint32(l) 19 | } 20 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/iovec_64bit.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 | // +build arm64 amd64 ppc64 ppc64le mips64 mips64le s390x 6 | // +build darwin dragonfly freebsd linux netbsd openbsd 7 | 8 | package socket 9 | 10 | import "unsafe" 11 | 12 | func (v *iovec) set(b []byte) { 13 | l := len(b) 14 | if l == 0 { 15 | return 16 | } 17 | v.Base = (*byte)(unsafe.Pointer(&b[0])) 18 | v.Len = uint64(l) 19 | } 20 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/iovec_solaris_64bit.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 | // +build amd64 6 | // +build solaris 7 | 8 | package socket 9 | 10 | import "unsafe" 11 | 12 | func (v *iovec) set(b []byte) { 13 | l := len(b) 14 | if l == 0 { 15 | return 16 | } 17 | v.Base = (*int8)(unsafe.Pointer(&b[0])) 18 | v.Len = uint64(l) 19 | } 20 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/iovec_stub.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 | // +build !darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris 6 | 7 | package socket 8 | 9 | type iovec struct{} 10 | 11 | func (v *iovec) set(b []byte) {} 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/mmsghdr_stub.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 | // +build !linux,!netbsd 6 | 7 | package socket 8 | 9 | import "net" 10 | 11 | type mmsghdr struct{} 12 | 13 | type mmsghdrs []mmsghdr 14 | 15 | func (hs mmsghdrs) pack(ms []Message, parseFn func([]byte, string) (net.Addr, error), marshalFn func(net.Addr) []byte) error { 16 | return nil 17 | } 18 | 19 | func (hs mmsghdrs) unpack(ms []Message, parseFn func([]byte, string) (net.Addr, error), hint string) error { 20 | return nil 21 | } 22 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/msghdr_bsdvar.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 | // +build darwin dragonfly freebsd netbsd 6 | 7 | package socket 8 | 9 | func (h *msghdr) setIov(vs []iovec) { 10 | l := len(vs) 11 | if l == 0 { 12 | return 13 | } 14 | h.Iov = &vs[0] 15 | h.Iovlen = int32(l) 16 | } 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/msghdr_linux_32bit.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 | // +build arm mips mipsle 386 6 | // +build linux 7 | 8 | package socket 9 | 10 | import "unsafe" 11 | 12 | func (h *msghdr) setIov(vs []iovec) { 13 | l := len(vs) 14 | if l == 0 { 15 | return 16 | } 17 | h.Iov = &vs[0] 18 | h.Iovlen = uint32(l) 19 | } 20 | 21 | func (h *msghdr) setControl(b []byte) { 22 | h.Control = (*byte)(unsafe.Pointer(&b[0])) 23 | h.Controllen = uint32(len(b)) 24 | } 25 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/msghdr_linux_64bit.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 | // +build arm64 amd64 ppc64 ppc64le mips64 mips64le s390x 6 | // +build linux 7 | 8 | package socket 9 | 10 | import "unsafe" 11 | 12 | func (h *msghdr) setIov(vs []iovec) { 13 | l := len(vs) 14 | if l == 0 { 15 | return 16 | } 17 | h.Iov = &vs[0] 18 | h.Iovlen = uint64(l) 19 | } 20 | 21 | func (h *msghdr) setControl(b []byte) { 22 | h.Control = (*byte)(unsafe.Pointer(&b[0])) 23 | h.Controllen = uint64(len(b)) 24 | } 25 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/msghdr_openbsd.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package socket 6 | 7 | func (h *msghdr) setIov(vs []iovec) { 8 | l := len(vs) 9 | if l == 0 { 10 | return 11 | } 12 | h.Iov = &vs[0] 13 | h.Iovlen = uint32(l) 14 | } 15 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/msghdr_stub.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 | // +build !darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris 6 | 7 | package socket 8 | 9 | type msghdr struct{} 10 | 11 | func (h *msghdr) pack(vs []iovec, bs [][]byte, oob []byte, sa []byte) {} 12 | func (h *msghdr) name() []byte { return nil } 13 | func (h *msghdr) controllen() int { return 0 } 14 | func (h *msghdr) flags() int { return 0 } 15 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/rawconn_nommsg.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 | // +build go1.9 6 | // +build !linux 7 | 8 | package socket 9 | 10 | import "errors" 11 | 12 | func (c *Conn) recvMsgs(ms []Message, flags int) (int, error) { 13 | return 0, errors.New("not implemented") 14 | } 15 | 16 | func (c *Conn) sendMsgs(ms []Message, flags int) (int, error) { 17 | return 0, errors.New("not implemented") 18 | } 19 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/rawconn_nomsg.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 | // +build go1.9 6 | // +build !darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows 7 | 8 | package socket 9 | 10 | import "errors" 11 | 12 | func (c *Conn) recvMsg(m *Message, flags int) error { 13 | return errors.New("not implemented") 14 | } 15 | 16 | func (c *Conn) sendMsg(m *Message, flags int) error { 17 | return errors.New("not implemented") 18 | } 19 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/rawconn_stub.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 | // +build !go1.9 6 | 7 | package socket 8 | 9 | import "errors" 10 | 11 | func (c *Conn) recvMsg(m *Message, flags int) error { 12 | return errors.New("not implemented") 13 | } 14 | 15 | func (c *Conn) sendMsg(m *Message, flags int) error { 16 | return errors.New("not implemented") 17 | } 18 | 19 | func (c *Conn) recvMsgs(ms []Message, flags int) (int, error) { 20 | return 0, errors.New("not implemented") 21 | } 22 | 23 | func (c *Conn) sendMsgs(ms []Message, flags int) (int, error) { 24 | return 0, errors.New("not implemented") 25 | } 26 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys.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 socket 6 | 7 | import ( 8 | "encoding/binary" 9 | "unsafe" 10 | ) 11 | 12 | var ( 13 | // NativeEndian is the machine native endian implementation of 14 | // ByteOrder. 15 | NativeEndian binary.ByteOrder 16 | 17 | kernelAlign int 18 | ) 19 | 20 | func init() { 21 | i := uint32(1) 22 | b := (*[4]byte)(unsafe.Pointer(&i)) 23 | if b[0] == 1 { 24 | NativeEndian = binary.LittleEndian 25 | } else { 26 | NativeEndian = binary.BigEndian 27 | } 28 | kernelAlign = probeProtocolStack() 29 | } 30 | 31 | func roundup(l int) int { 32 | return (l + kernelAlign - 1) & ^(kernelAlign - 1) 33 | } 34 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_bsd.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 | // +build darwin dragonfly freebsd openbsd 6 | 7 | package socket 8 | 9 | import "errors" 10 | 11 | func recvmmsg(s uintptr, hs []mmsghdr, flags int) (int, error) { 12 | return 0, errors.New("not implemented") 13 | } 14 | 15 | func sendmmsg(s uintptr, hs []mmsghdr, flags int) (int, error) { 16 | return 0, errors.New("not implemented") 17 | } 18 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_bsdvar.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 | // +build freebsd netbsd openbsd 6 | 7 | package socket 8 | 9 | import "unsafe" 10 | 11 | func probeProtocolStack() int { 12 | var p uintptr 13 | return int(unsafe.Sizeof(p)) 14 | } 15 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_darwin.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package socket 6 | 7 | func probeProtocolStack() int { return 4 } 8 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_dragonfly.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package socket 6 | 7 | func probeProtocolStack() int { return 4 } 8 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_linux_386.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 | #include "textflag.h" 6 | 7 | TEXT ·socketcall(SB),NOSPLIT,$0-36 8 | JMP syscall·socketcall(SB) 9 | 10 | TEXT ·rawsocketcall(SB),NOSPLIT,$0-36 11 | JMP syscall·rawsocketcall(SB) 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_linux_amd64.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 socket 6 | 7 | const ( 8 | sysRECVMMSG = 0x12b 9 | sysSENDMMSG = 0x133 10 | ) 11 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_linux_arm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package socket 6 | 7 | const ( 8 | sysRECVMMSG = 0x16d 9 | sysSENDMMSG = 0x176 10 | ) 11 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_linux_arm64.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 socket 6 | 7 | const ( 8 | sysRECVMMSG = 0xf3 9 | sysSENDMMSG = 0x10d 10 | ) 11 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_linux_mips.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 socket 6 | 7 | const ( 8 | sysRECVMMSG = 0x10ef 9 | sysSENDMMSG = 0x10f7 10 | ) 11 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_linux_mips64.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 socket 6 | 7 | const ( 8 | sysRECVMMSG = 0x14ae 9 | sysSENDMMSG = 0x14b6 10 | ) 11 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_linux_mips64le.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 socket 6 | 7 | const ( 8 | sysRECVMMSG = 0x14ae 9 | sysSENDMMSG = 0x14b6 10 | ) 11 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_linux_mipsle.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 socket 6 | 7 | const ( 8 | sysRECVMMSG = 0x10ef 9 | sysSENDMMSG = 0x10f7 10 | ) 11 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_linux_ppc64.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 socket 6 | 7 | const ( 8 | sysRECVMMSG = 0x157 9 | sysSENDMMSG = 0x15d 10 | ) 11 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_linux_ppc64le.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 socket 6 | 7 | const ( 8 | sysRECVMMSG = 0x157 9 | sysSENDMMSG = 0x15d 10 | ) 11 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_linux_s390x.s: -------------------------------------------------------------------------------- 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 | #include "textflag.h" 6 | 7 | TEXT ·socketcall(SB),NOSPLIT,$0-72 8 | JMP syscall·socketcall(SB) 9 | 10 | TEXT ·rawsocketcall(SB),NOSPLIT,$0-72 11 | JMP syscall·rawsocketcall(SB) 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_netbsd.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package socket 6 | 7 | import ( 8 | "syscall" 9 | "unsafe" 10 | ) 11 | 12 | const ( 13 | sysRECVMMSG = 0x1db 14 | sysSENDMMSG = 0x1dc 15 | ) 16 | 17 | func recvmmsg(s uintptr, hs []mmsghdr, flags int) (int, error) { 18 | n, _, errno := syscall.Syscall6(sysRECVMMSG, s, uintptr(unsafe.Pointer(&hs[0])), uintptr(len(hs)), uintptr(flags), 0, 0) 19 | return int(n), errnoErr(errno) 20 | } 21 | 22 | func sendmmsg(s uintptr, hs []mmsghdr, flags int) (int, error) { 23 | n, _, errno := syscall.Syscall6(sysSENDMMSG, s, uintptr(unsafe.Pointer(&hs[0])), uintptr(len(hs)), uintptr(flags), 0, 0) 24 | return int(n), errnoErr(errno) 25 | } 26 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/internal/socket/sys_solaris_amd64.s: -------------------------------------------------------------------------------- 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 | #include "textflag.h" 6 | 7 | TEXT ·sysvicall6(SB),NOSPLIT,$0-88 8 | JMP syscall·sysvicall6(SB) 9 | 10 | TEXT ·rawSysvicall6(SB),NOSPLIT,$0-88 11 | JMP syscall·rawSysvicall6(SB) 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv4/control_stub.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 | // +build !darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows 6 | 7 | package ipv4 8 | 9 | import "golang.org/x/net/internal/socket" 10 | 11 | func setControlMessage(c *socket.Conn, opt *rawOpt, cf ControlFlags, on bool) error { 12 | return errOpNoSupport 13 | } 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv4/control_windows.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 | package ipv4 6 | 7 | import ( 8 | "syscall" 9 | 10 | "golang.org/x/net/internal/socket" 11 | ) 12 | 13 | func setControlMessage(c *socket.Conn, opt *rawOpt, cf ControlFlags, on bool) error { 14 | // TODO(mikio): implement this 15 | return syscall.EWINDOWS 16 | } 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv4/icmp_linux.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 | package ipv4 6 | 7 | func (f *icmpFilter) accept(typ ICMPType) { 8 | f.Data &^= 1 << (uint32(typ) & 31) 9 | } 10 | 11 | func (f *icmpFilter) block(typ ICMPType) { 12 | f.Data |= 1 << (uint32(typ) & 31) 13 | } 14 | 15 | func (f *icmpFilter) setAll(block bool) { 16 | if block { 17 | f.Data = 1<<32 - 1 18 | } else { 19 | f.Data = 0 20 | } 21 | } 22 | 23 | func (f *icmpFilter) willBlock(typ ICMPType) bool { 24 | return f.Data&(1<<(uint32(typ)&31)) != 0 25 | } 26 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv4/icmp_stub.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 | // +build !linux 6 | 7 | package ipv4 8 | 9 | const sizeofICMPFilter = 0x0 10 | 11 | type icmpFilter struct { 12 | } 13 | 14 | func (f *icmpFilter) accept(typ ICMPType) { 15 | } 16 | 17 | func (f *icmpFilter) block(typ ICMPType) { 18 | } 19 | 20 | func (f *icmpFilter) setAll(block bool) { 21 | } 22 | 23 | func (f *icmpFilter) willBlock(typ ICMPType) bool { 24 | return false 25 | } 26 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv4/payload.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 | package ipv4 6 | 7 | import ( 8 | "net" 9 | 10 | "golang.org/x/net/internal/socket" 11 | ) 12 | 13 | // BUG(mikio): On Windows, the ControlMessage for ReadFrom and WriteTo 14 | // methods of PacketConn is not implemented. 15 | 16 | // A payloadHandler represents the IPv4 datagram payload handler. 17 | type payloadHandler struct { 18 | net.PacketConn 19 | *socket.Conn 20 | rawOpt 21 | } 22 | 23 | func (c *payloadHandler) ok() bool { return c != nil && c.PacketConn != nil && c.Conn != nil } 24 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv4/sys_asmreq_stub.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 | // +build !darwin,!dragonfly,!freebsd,!netbsd,!openbsd,!solaris,!windows 6 | 7 | package ipv4 8 | 9 | import ( 10 | "net" 11 | 12 | "golang.org/x/net/internal/socket" 13 | ) 14 | 15 | func (so *sockOpt) setIPMreq(c *socket.Conn, ifi *net.Interface, grp net.IP) error { 16 | return errOpNoSupport 17 | } 18 | 19 | func (so *sockOpt) getMulticastIf(c *socket.Conn) (*net.Interface, error) { 20 | return nil, errOpNoSupport 21 | } 22 | 23 | func (so *sockOpt) setMulticastIf(c *socket.Conn, ifi *net.Interface) error { 24 | return errOpNoSupport 25 | } 26 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv4/sys_asmreqn_stub.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 | // +build !darwin,!freebsd,!linux 6 | 7 | package ipv4 8 | 9 | import ( 10 | "net" 11 | 12 | "golang.org/x/net/internal/socket" 13 | ) 14 | 15 | func (so *sockOpt) getIPMreqn(c *socket.Conn) (*net.Interface, error) { 16 | return nil, errOpNoSupport 17 | } 18 | 19 | func (so *sockOpt) setIPMreqn(c *socket.Conn, ifi *net.Interface, grp net.IP) error { 20 | return errOpNoSupport 21 | } 22 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv4/sys_bpf.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 | // +build linux 6 | 7 | package ipv4 8 | 9 | import ( 10 | "unsafe" 11 | 12 | "golang.org/x/net/bpf" 13 | "golang.org/x/net/internal/socket" 14 | ) 15 | 16 | func (so *sockOpt) setAttachFilter(c *socket.Conn, f []bpf.RawInstruction) error { 17 | prog := sockFProg{ 18 | Len: uint16(len(f)), 19 | Filter: (*sockFilter)(unsafe.Pointer(&f[0])), 20 | } 21 | b := (*[sizeofSockFprog]byte)(unsafe.Pointer(&prog))[:sizeofSockFprog] 22 | return so.Set(c, b) 23 | } 24 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv4/sys_bpf_stub.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 | // +build !linux 6 | 7 | package ipv4 8 | 9 | import ( 10 | "golang.org/x/net/bpf" 11 | "golang.org/x/net/internal/socket" 12 | ) 13 | 14 | func (so *sockOpt) setAttachFilter(c *socket.Conn, f []bpf.RawInstruction) error { 15 | return errOpNoSupport 16 | } 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv4/sys_ssmreq_stub.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 | // +build !darwin,!freebsd,!linux,!solaris 6 | 7 | package ipv4 8 | 9 | import ( 10 | "net" 11 | 12 | "golang.org/x/net/internal/socket" 13 | ) 14 | 15 | func (so *sockOpt) setGroupReq(c *socket.Conn, ifi *net.Interface, grp net.IP) error { 16 | return errOpNoSupport 17 | } 18 | 19 | func (so *sockOpt) setGroupSourceReq(c *socket.Conn, ifi *net.Interface, grp, src net.IP) error { 20 | return errOpNoSupport 21 | } 22 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv4/sys_stub.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 | // +build !darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows 6 | 7 | package ipv4 8 | 9 | var ( 10 | ctlOpts = [ctlMax]ctlOpt{} 11 | 12 | sockOpts = map[int]*sockOpt{} 13 | ) 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv4/zsys_dragonfly.go: -------------------------------------------------------------------------------- 1 | // Created by cgo -godefs - DO NOT EDIT 2 | // cgo -godefs defs_dragonfly.go 3 | 4 | package ipv4 5 | 6 | const ( 7 | sysIP_OPTIONS = 0x1 8 | sysIP_HDRINCL = 0x2 9 | sysIP_TOS = 0x3 10 | sysIP_TTL = 0x4 11 | sysIP_RECVOPTS = 0x5 12 | sysIP_RECVRETOPTS = 0x6 13 | sysIP_RECVDSTADDR = 0x7 14 | sysIP_RETOPTS = 0x8 15 | sysIP_RECVIF = 0x14 16 | sysIP_RECVTTL = 0x41 17 | 18 | sysIP_MULTICAST_IF = 0x9 19 | sysIP_MULTICAST_TTL = 0xa 20 | sysIP_MULTICAST_LOOP = 0xb 21 | sysIP_MULTICAST_VIF = 0xe 22 | sysIP_ADD_MEMBERSHIP = 0xc 23 | sysIP_DROP_MEMBERSHIP = 0xd 24 | 25 | sizeofIPMreq = 0x8 26 | ) 27 | 28 | type ipMreq struct { 29 | Multiaddr [4]byte /* in_addr */ 30 | Interface [4]byte /* in_addr */ 31 | } 32 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv4/zsys_netbsd.go: -------------------------------------------------------------------------------- 1 | // Created by cgo -godefs - DO NOT EDIT 2 | // cgo -godefs defs_netbsd.go 3 | 4 | package ipv4 5 | 6 | const ( 7 | sysIP_OPTIONS = 0x1 8 | sysIP_HDRINCL = 0x2 9 | sysIP_TOS = 0x3 10 | sysIP_TTL = 0x4 11 | sysIP_RECVOPTS = 0x5 12 | sysIP_RECVRETOPTS = 0x6 13 | sysIP_RECVDSTADDR = 0x7 14 | sysIP_RETOPTS = 0x8 15 | sysIP_RECVIF = 0x14 16 | sysIP_RECVTTL = 0x17 17 | 18 | sysIP_MULTICAST_IF = 0x9 19 | sysIP_MULTICAST_TTL = 0xa 20 | sysIP_MULTICAST_LOOP = 0xb 21 | sysIP_ADD_MEMBERSHIP = 0xc 22 | sysIP_DROP_MEMBERSHIP = 0xd 23 | 24 | sizeofIPMreq = 0x8 25 | ) 26 | 27 | type ipMreq struct { 28 | Multiaddr [4]byte /* in_addr */ 29 | Interface [4]byte /* in_addr */ 30 | } 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv4/zsys_openbsd.go: -------------------------------------------------------------------------------- 1 | // Created by cgo -godefs - DO NOT EDIT 2 | // cgo -godefs defs_openbsd.go 3 | 4 | package ipv4 5 | 6 | const ( 7 | sysIP_OPTIONS = 0x1 8 | sysIP_HDRINCL = 0x2 9 | sysIP_TOS = 0x3 10 | sysIP_TTL = 0x4 11 | sysIP_RECVOPTS = 0x5 12 | sysIP_RECVRETOPTS = 0x6 13 | sysIP_RECVDSTADDR = 0x7 14 | sysIP_RETOPTS = 0x8 15 | sysIP_RECVIF = 0x1e 16 | sysIP_RECVTTL = 0x1f 17 | 18 | sysIP_MULTICAST_IF = 0x9 19 | sysIP_MULTICAST_TTL = 0xa 20 | sysIP_MULTICAST_LOOP = 0xb 21 | sysIP_ADD_MEMBERSHIP = 0xc 22 | sysIP_DROP_MEMBERSHIP = 0xd 23 | 24 | sizeofIPMreq = 0x8 25 | ) 26 | 27 | type ipMreq struct { 28 | Multiaddr [4]byte /* in_addr */ 29 | Interface [4]byte /* in_addr */ 30 | } 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv6/control_stub.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build !darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows 6 | 7 | package ipv6 8 | 9 | import "golang.org/x/net/internal/socket" 10 | 11 | func setControlMessage(c *socket.Conn, opt *rawOpt, cf ControlFlags, on bool) error { 12 | return errOpNoSupport 13 | } 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv6/control_windows.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package ipv6 6 | 7 | import ( 8 | "syscall" 9 | 10 | "golang.org/x/net/internal/socket" 11 | ) 12 | 13 | func setControlMessage(c *socket.Conn, opt *rawOpt, cf ControlFlags, on bool) error { 14 | // TODO(mikio): implement this 15 | return syscall.EWINDOWS 16 | } 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv6/icmp_bsd.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build darwin dragonfly freebsd netbsd openbsd 6 | 7 | package ipv6 8 | 9 | func (f *icmpv6Filter) accept(typ ICMPType) { 10 | f.Filt[typ>>5] |= 1 << (uint32(typ) & 31) 11 | } 12 | 13 | func (f *icmpv6Filter) block(typ ICMPType) { 14 | f.Filt[typ>>5] &^= 1 << (uint32(typ) & 31) 15 | } 16 | 17 | func (f *icmpv6Filter) setAll(block bool) { 18 | for i := range f.Filt { 19 | if block { 20 | f.Filt[i] = 0 21 | } else { 22 | f.Filt[i] = 1<<32 - 1 23 | } 24 | } 25 | } 26 | 27 | func (f *icmpv6Filter) willBlock(typ ICMPType) bool { 28 | return f.Filt[typ>>5]&(1<<(uint32(typ)&31)) == 0 29 | } 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv6/icmp_linux.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package ipv6 6 | 7 | func (f *icmpv6Filter) accept(typ ICMPType) { 8 | f.Data[typ>>5] &^= 1 << (uint32(typ) & 31) 9 | } 10 | 11 | func (f *icmpv6Filter) block(typ ICMPType) { 12 | f.Data[typ>>5] |= 1 << (uint32(typ) & 31) 13 | } 14 | 15 | func (f *icmpv6Filter) setAll(block bool) { 16 | for i := range f.Data { 17 | if block { 18 | f.Data[i] = 1<<32 - 1 19 | } else { 20 | f.Data[i] = 0 21 | } 22 | } 23 | } 24 | 25 | func (f *icmpv6Filter) willBlock(typ ICMPType) bool { 26 | return f.Data[typ>>5]&(1<<(uint32(typ)&31)) != 0 27 | } 28 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv6/icmp_solaris.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package ipv6 6 | 7 | func (f *icmpv6Filter) accept(typ ICMPType) { 8 | f.X__icmp6_filt[typ>>5] |= 1 << (uint32(typ) & 31) 9 | } 10 | 11 | func (f *icmpv6Filter) block(typ ICMPType) { 12 | f.X__icmp6_filt[typ>>5] &^= 1 << (uint32(typ) & 31) 13 | } 14 | 15 | func (f *icmpv6Filter) setAll(block bool) { 16 | for i := range f.X__icmp6_filt { 17 | if block { 18 | f.X__icmp6_filt[i] = 0 19 | } else { 20 | f.X__icmp6_filt[i] = 1<<32 - 1 21 | } 22 | } 23 | } 24 | 25 | func (f *icmpv6Filter) willBlock(typ ICMPType) bool { 26 | return f.X__icmp6_filt[typ>>5]&(1<<(uint32(typ)&31)) == 0 27 | } 28 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv6/icmp_stub.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build !darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows 6 | 7 | package ipv6 8 | 9 | type icmpv6Filter struct { 10 | } 11 | 12 | func (f *icmpv6Filter) accept(typ ICMPType) { 13 | } 14 | 15 | func (f *icmpv6Filter) block(typ ICMPType) { 16 | } 17 | 18 | func (f *icmpv6Filter) setAll(block bool) { 19 | } 20 | 21 | func (f *icmpv6Filter) willBlock(typ ICMPType) bool { 22 | return false 23 | } 24 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv6/icmp_windows.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package ipv6 6 | 7 | func (f *icmpv6Filter) accept(typ ICMPType) { 8 | // TODO(mikio): implement this 9 | } 10 | 11 | func (f *icmpv6Filter) block(typ ICMPType) { 12 | // TODO(mikio): implement this 13 | } 14 | 15 | func (f *icmpv6Filter) setAll(block bool) { 16 | // TODO(mikio): implement this 17 | } 18 | 19 | func (f *icmpv6Filter) willBlock(typ ICMPType) bool { 20 | // TODO(mikio): implement this 21 | return false 22 | } 23 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv6/payload.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package ipv6 6 | 7 | import ( 8 | "net" 9 | 10 | "golang.org/x/net/internal/socket" 11 | ) 12 | 13 | // BUG(mikio): On Windows, the ControlMessage for ReadFrom and WriteTo 14 | // methods of PacketConn is not implemented. 15 | 16 | // A payloadHandler represents the IPv6 datagram payload handler. 17 | type payloadHandler struct { 18 | net.PacketConn 19 | *socket.Conn 20 | rawOpt 21 | } 22 | 23 | func (c *payloadHandler) ok() bool { return c != nil && c.PacketConn != nil && c.Conn != nil } 24 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv6/sys_asmreq.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build darwin dragonfly freebsd linux netbsd openbsd solaris windows 6 | 7 | package ipv6 8 | 9 | import ( 10 | "net" 11 | "unsafe" 12 | 13 | "golang.org/x/net/internal/socket" 14 | ) 15 | 16 | func (so *sockOpt) setIPMreq(c *socket.Conn, ifi *net.Interface, grp net.IP) error { 17 | var mreq ipv6Mreq 18 | copy(mreq.Multiaddr[:], grp) 19 | if ifi != nil { 20 | mreq.setIfindex(ifi.Index) 21 | } 22 | b := (*[sizeofIPv6Mreq]byte)(unsafe.Pointer(&mreq))[:sizeofIPv6Mreq] 23 | return so.Set(c, b) 24 | } 25 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv6/sys_asmreq_stub.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build !darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows 6 | 7 | package ipv6 8 | 9 | import ( 10 | "net" 11 | 12 | "golang.org/x/net/internal/socket" 13 | ) 14 | 15 | func (so *sockOpt) setIPMreq(c *socket.Conn, ifi *net.Interface, grp net.IP) error { 16 | return errOpNoSupport 17 | } 18 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv6/sys_bpf.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 | // +build linux 6 | 7 | package ipv6 8 | 9 | import ( 10 | "unsafe" 11 | 12 | "golang.org/x/net/bpf" 13 | "golang.org/x/net/internal/socket" 14 | ) 15 | 16 | func (so *sockOpt) setAttachFilter(c *socket.Conn, f []bpf.RawInstruction) error { 17 | prog := sockFProg{ 18 | Len: uint16(len(f)), 19 | Filter: (*sockFilter)(unsafe.Pointer(&f[0])), 20 | } 21 | b := (*[sizeofSockFprog]byte)(unsafe.Pointer(&prog))[:sizeofSockFprog] 22 | return so.Set(c, b) 23 | } 24 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv6/sys_bpf_stub.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 | // +build !linux 6 | 7 | package ipv6 8 | 9 | import ( 10 | "golang.org/x/net/bpf" 11 | "golang.org/x/net/internal/socket" 12 | ) 13 | 14 | func (so *sockOpt) setAttachFilter(c *socket.Conn, f []bpf.RawInstruction) error { 15 | return errOpNoSupport 16 | } 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv6/sys_ssmreq_stub.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 | // +build !darwin,!freebsd,!linux,!solaris 6 | 7 | package ipv6 8 | 9 | import ( 10 | "net" 11 | 12 | "golang.org/x/net/internal/socket" 13 | ) 14 | 15 | func (so *sockOpt) setGroupReq(c *socket.Conn, ifi *net.Interface, grp net.IP) error { 16 | return errOpNoSupport 17 | } 18 | 19 | func (so *sockOpt) setGroupSourceReq(c *socket.Conn, ifi *net.Interface, grp, src net.IP) error { 20 | return errOpNoSupport 21 | } 22 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/ipv6/sys_stub.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 | // +build !darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows 6 | 7 | package ipv6 8 | 9 | var ( 10 | ctlOpts = [ctlMax]ctlOpt{} 11 | 12 | sockOpts = map[int]*sockOpt{} 13 | ) 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/lif/sys.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 | // +build solaris 6 | 7 | package lif 8 | 9 | import "unsafe" 10 | 11 | var nativeEndian binaryByteOrder 12 | 13 | func init() { 14 | i := uint32(1) 15 | b := (*[4]byte)(unsafe.Pointer(&i)) 16 | if b[0] == 1 { 17 | nativeEndian = littleEndian 18 | } else { 19 | nativeEndian = bigEndian 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/lif/sys_solaris_amd64.s: -------------------------------------------------------------------------------- 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 | #include "textflag.h" 6 | 7 | TEXT ·sysvicall6(SB),NOSPLIT,$0-88 8 | JMP syscall·sysvicall6(SB) 9 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/lif/syscall.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 | // +build solaris 6 | 7 | package lif 8 | 9 | import ( 10 | "syscall" 11 | "unsafe" 12 | ) 13 | 14 | //go:cgo_import_dynamic libc_ioctl ioctl "libc.so" 15 | 16 | //go:linkname procIoctl libc_ioctl 17 | 18 | var procIoctl uintptr 19 | 20 | func sysvicall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (uintptr, uintptr, syscall.Errno) 21 | 22 | func ioctl(s, ioc uintptr, arg unsafe.Pointer) error { 23 | _, _, errno := sysvicall6(uintptr(unsafe.Pointer(&procIoctl)), 3, s, ioc, uintptr(arg), 0, 0, 0) 24 | if errno != 0 { 25 | return error(errno) 26 | } 27 | return nil 28 | } 29 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/nettest/conntest_go16.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 | // +build !go1.7 6 | 7 | package nettest 8 | 9 | import "testing" 10 | 11 | func testConn(t *testing.T, mp MakePipe) { 12 | // Avoid using subtests on Go 1.6 and below. 13 | timeoutWrapper(t, mp, testBasicIO) 14 | timeoutWrapper(t, mp, testPingPong) 15 | timeoutWrapper(t, mp, testRacyRead) 16 | timeoutWrapper(t, mp, testRacyWrite) 17 | timeoutWrapper(t, mp, testReadTimeout) 18 | timeoutWrapper(t, mp, testWriteTimeout) 19 | timeoutWrapper(t, mp, testPastTimeout) 20 | timeoutWrapper(t, mp, testPresentTimeout) 21 | timeoutWrapper(t, mp, testFutureTimeout) 22 | timeoutWrapper(t, mp, testCloseTimeout) 23 | timeoutWrapper(t, mp, testConcurrentMethods) 24 | } 25 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/proxy/direct.go: -------------------------------------------------------------------------------- 1 | // Copyright 2011 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package proxy 6 | 7 | import ( 8 | "net" 9 | ) 10 | 11 | type direct struct{} 12 | 13 | // Direct is a direct proxy: one that makes network connections directly. 14 | var Direct = direct{} 15 | 16 | func (direct) Dial(network, addr string) (net.Conn, error) { 17 | return net.Dial(network, addr) 18 | } 19 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/route/syscall.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 | // +build darwin dragonfly freebsd netbsd openbsd 6 | 7 | package route 8 | 9 | import ( 10 | "syscall" 11 | "unsafe" 12 | ) 13 | 14 | var zero uintptr 15 | 16 | func sysctl(mib []int32, old *byte, oldlen *uintptr, new *byte, newlen uintptr) error { 17 | var p unsafe.Pointer 18 | if len(mib) > 0 { 19 | p = unsafe.Pointer(&mib[0]) 20 | } else { 21 | p = unsafe.Pointer(&zero) 22 | } 23 | _, _, errno := syscall.Syscall6(syscall.SYS___SYSCTL, uintptr(p), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), newlen) 24 | if errno != 0 { 25 | return error(errno) 26 | } 27 | return nil 28 | } 29 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/trace/trace_go16.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 | // +build !go1.7 6 | 7 | package trace 8 | 9 | import "golang.org/x/net/context" 10 | 11 | // NewContext returns a copy of the parent context 12 | // and associates it with a Trace. 13 | func NewContext(ctx context.Context, tr Trace) context.Context { 14 | return context.WithValue(ctx, contextKey, tr) 15 | } 16 | 17 | // FromContext returns the Trace bound to the context, if any. 18 | func FromContext(ctx context.Context) (tr Trace, ok bool) { 19 | tr, ok = ctx.Value(contextKey).(Trace) 20 | return 21 | } 22 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/trace/trace_go17.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 | // +build go1.7 6 | 7 | package trace 8 | 9 | import "context" 10 | 11 | // NewContext returns a copy of the parent context 12 | // and associates it with a Trace. 13 | func NewContext(ctx context.Context, tr Trace) context.Context { 14 | return context.WithValue(ctx, contextKey, tr) 15 | } 16 | 17 | // FromContext returns the Trace bound to the context, if any. 18 | func FromContext(ctx context.Context) (tr Trace, ok bool) { 19 | tr, ok = ctx.Value(contextKey).(Trace) 20 | return 21 | } 22 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/webdav/file_go1.6.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 | // +build !go1.7 6 | 7 | package webdav 8 | 9 | import ( 10 | "net/http" 11 | 12 | "golang.org/x/net/context" 13 | ) 14 | 15 | func getContext(r *http.Request) context.Context { 16 | return context.Background() 17 | } 18 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/webdav/file_go1.7.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 | // +build go1.7 6 | 7 | package webdav 8 | 9 | import ( 10 | "context" 11 | "net/http" 12 | ) 13 | 14 | func getContext(r *http.Request) context.Context { 15 | return r.Context() 16 | } 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/websocket/dial.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 websocket 6 | 7 | import ( 8 | "crypto/tls" 9 | "net" 10 | ) 11 | 12 | func dialWithDialer(dialer *net.Dialer, config *Config) (conn net.Conn, err error) { 13 | switch config.Location.Scheme { 14 | case "ws": 15 | conn, err = dialer.Dial("tcp", parseAuthority(config.Location)) 16 | 17 | case "wss": 18 | conn, err = tls.DialWithDialer(dialer, "tcp", parseAuthority(config.Location), config.TlsConfig) 19 | 20 | default: 21 | err = ErrBadScheme 22 | } 23 | return 24 | } 25 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/AUTHORS: -------------------------------------------------------------------------------- 1 | # This source code refers to The Go Authors for copyright purposes. 2 | # The master list of authors is in the main Go distribution, 3 | # visible at http://tip.golang.org/AUTHORS. 4 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/CONTRIBUTORS: -------------------------------------------------------------------------------- 1 | # This source code was written by the Go contributors. 2 | # The master list of contributors is in the main Go distribution, 3 | # visible at http://tip.golang.org/CONTRIBUTORS. 4 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_arm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package cpu 6 | 7 | const cacheLineSize = 32 8 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_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 | package cpu 6 | 7 | const cacheLineSize = 64 8 | -------------------------------------------------------------------------------- /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 | // +build mips64 mips64le 6 | 7 | package cpu 8 | 9 | const cacheLineSize = 32 10 | -------------------------------------------------------------------------------- /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 | // +build mips mipsle 6 | 7 | package cpu 8 | 9 | const cacheLineSize = 32 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_ppc64x.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build ppc64 ppc64le 6 | 7 | package cpu 8 | 9 | const cacheLineSize = 128 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_s390x.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 cpu 6 | 7 | const cacheLineSize = 256 8 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/cpu/cpu_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 | // +build 386 amd64 amd64p32 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/plan9/asm.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 | #include "textflag.h" 6 | 7 | TEXT ·use(SB),NOSPLIT,$0 8 | RET 9 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/plan9/asm_plan9_386.s: -------------------------------------------------------------------------------- 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 | #include "textflag.h" 6 | 7 | // 8 | // System call support for 386, Plan 9 9 | // 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-32 15 | JMP syscall·Syscall(SB) 16 | 17 | TEXT ·Syscall6(SB),NOSPLIT,$0-44 18 | JMP syscall·Syscall6(SB) 19 | 20 | TEXT ·RawSyscall(SB),NOSPLIT,$0-28 21 | JMP syscall·RawSyscall(SB) 22 | 23 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 24 | JMP syscall·RawSyscall6(SB) 25 | 26 | TEXT ·seek(SB),NOSPLIT,$0-36 27 | JMP syscall·seek(SB) 28 | 29 | TEXT ·exit(SB),NOSPLIT,$4-4 30 | JMP syscall·exit(SB) 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/plan9/asm_plan9_amd64.s: -------------------------------------------------------------------------------- 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 | #include "textflag.h" 6 | 7 | // 8 | // System call support for amd64, Plan 9 9 | // 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-64 15 | JMP syscall·Syscall(SB) 16 | 17 | TEXT ·Syscall6(SB),NOSPLIT,$0-88 18 | JMP syscall·Syscall6(SB) 19 | 20 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56 21 | JMP syscall·RawSyscall(SB) 22 | 23 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 24 | JMP syscall·RawSyscall6(SB) 25 | 26 | TEXT ·seek(SB),NOSPLIT,$0-56 27 | JMP syscall·seek(SB) 28 | 29 | TEXT ·exit(SB),NOSPLIT,$8-8 30 | JMP syscall·exit(SB) 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/plan9/asm_plan9_arm.s: -------------------------------------------------------------------------------- 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 | #include "textflag.h" 6 | 7 | // System call support for plan9 on arm 8 | 9 | // Just jump to package syscall's implementation for all these functions. 10 | // The runtime may know about them. 11 | 12 | TEXT ·Syscall(SB),NOSPLIT,$0-32 13 | JMP syscall·Syscall(SB) 14 | 15 | TEXT ·Syscall6(SB),NOSPLIT,$0-44 16 | JMP syscall·Syscall6(SB) 17 | 18 | TEXT ·RawSyscall(SB),NOSPLIT,$0-28 19 | JMP syscall·RawSyscall(SB) 20 | 21 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 22 | JMP syscall·RawSyscall6(SB) 23 | 24 | TEXT ·seek(SB),NOSPLIT,$0-36 25 | JMP syscall·exit(SB) 26 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/plan9/env_plan9.go: -------------------------------------------------------------------------------- 1 | // Copyright 2011 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // Plan 9 environment variables. 6 | 7 | package plan9 8 | 9 | import ( 10 | "syscall" 11 | ) 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/plan9/pwd_go15_plan9.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 | // +build go1.5 6 | 7 | package plan9 8 | 9 | import "syscall" 10 | 11 | func fixwd() { 12 | syscall.Fixwd() 13 | } 14 | 15 | func Getwd() (wd string, err error) { 16 | return syscall.Getwd() 17 | } 18 | 19 | func Chdir(path string) error { 20 | return syscall.Chdir(path) 21 | } 22 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/plan9/pwd_plan9.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 | // +build !go1.5 6 | 7 | package plan9 8 | 9 | func fixwd() { 10 | } 11 | 12 | func Getwd() (wd string, err error) { 13 | fd, err := open(".", O_RDONLY) 14 | if err != nil { 15 | return "", err 16 | } 17 | defer Close(fd) 18 | return Fd2path(fd) 19 | } 20 | 21 | func Chdir(path string) error { 22 | return chdir(path) 23 | } 24 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/plan9/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 | // +build plan9,race 6 | 7 | package plan9 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/plan9/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 | // +build plan9,!race 6 | 7 | package plan9 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/plan9/str.go: -------------------------------------------------------------------------------- 1 | // Copyright 2009 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build plan9 6 | 7 | package plan9 8 | 9 | func itoa(val int) string { // do it here rather than with fmt to avoid dependency 10 | if val < 0 { 11 | return "-" + itoa(-val) 12 | } 13 | var buf [32]byte // big enough for int64 14 | i := len(buf) - 1 15 | for val >= 10 { 16 | buf[i] = byte(val%10 + '0') 17 | i-- 18 | val /= 10 19 | } 20 | buf[i] = byte(val + '0') 21 | return string(buf[i:]) 22 | } 23 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_darwin_386.s: -------------------------------------------------------------------------------- 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 | // +build !gccgo 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System call support for 386, Darwin 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-28 17 | JMP syscall·Syscall(SB) 18 | 19 | TEXT ·Syscall6(SB),NOSPLIT,$0-40 20 | JMP syscall·Syscall6(SB) 21 | 22 | TEXT ·Syscall9(SB),NOSPLIT,$0-52 23 | JMP syscall·Syscall9(SB) 24 | 25 | TEXT ·RawSyscall(SB),NOSPLIT,$0-28 26 | JMP syscall·RawSyscall(SB) 27 | 28 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 29 | JMP syscall·RawSyscall6(SB) 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_darwin_amd64.s: -------------------------------------------------------------------------------- 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 | // +build !gccgo 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System call support for AMD64, Darwin 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_darwin_arm.s: -------------------------------------------------------------------------------- 1 | // Copyright 2015 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build !gccgo 6 | // +build arm,darwin 7 | 8 | #include "textflag.h" 9 | 10 | // 11 | // System call support for ARM, Darwin 12 | // 13 | 14 | // Just jump to package syscall's implementation for all these functions. 15 | // The runtime may know about them. 16 | 17 | TEXT ·Syscall(SB),NOSPLIT,$0-28 18 | B syscall·Syscall(SB) 19 | 20 | TEXT ·Syscall6(SB),NOSPLIT,$0-40 21 | B syscall·Syscall6(SB) 22 | 23 | TEXT ·Syscall9(SB),NOSPLIT,$0-52 24 | B syscall·Syscall9(SB) 25 | 26 | TEXT ·RawSyscall(SB),NOSPLIT,$0-28 27 | B syscall·RawSyscall(SB) 28 | 29 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 30 | B syscall·RawSyscall6(SB) 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_darwin_arm64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2015 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build !gccgo 6 | // +build arm64,darwin 7 | 8 | #include "textflag.h" 9 | 10 | // 11 | // System call support for AMD64, Darwin 12 | // 13 | 14 | // Just jump to package syscall's implementation for all these functions. 15 | // The runtime may know about them. 16 | 17 | TEXT ·Syscall(SB),NOSPLIT,$0-56 18 | B syscall·Syscall(SB) 19 | 20 | TEXT ·Syscall6(SB),NOSPLIT,$0-80 21 | B syscall·Syscall6(SB) 22 | 23 | TEXT ·Syscall9(SB),NOSPLIT,$0-104 24 | B syscall·Syscall9(SB) 25 | 26 | TEXT ·RawSyscall(SB),NOSPLIT,$0-56 27 | B syscall·RawSyscall(SB) 28 | 29 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 30 | B syscall·RawSyscall6(SB) 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s: -------------------------------------------------------------------------------- 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 | // +build !gccgo 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System call support for AMD64, DragonFly 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_freebsd_386.s: -------------------------------------------------------------------------------- 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 | // +build !gccgo 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System call support for 386, FreeBSD 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-28 17 | JMP syscall·Syscall(SB) 18 | 19 | TEXT ·Syscall6(SB),NOSPLIT,$0-40 20 | JMP syscall·Syscall6(SB) 21 | 22 | TEXT ·Syscall9(SB),NOSPLIT,$0-52 23 | JMP syscall·Syscall9(SB) 24 | 25 | TEXT ·RawSyscall(SB),NOSPLIT,$0-28 26 | JMP syscall·RawSyscall(SB) 27 | 28 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 29 | JMP syscall·RawSyscall6(SB) 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_freebsd_amd64.s: -------------------------------------------------------------------------------- 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 | // +build !gccgo 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System call support for AMD64, FreeBSD 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_freebsd_arm.s: -------------------------------------------------------------------------------- 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 | // +build !gccgo 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System call support for ARM, FreeBSD 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-28 17 | B syscall·Syscall(SB) 18 | 19 | TEXT ·Syscall6(SB),NOSPLIT,$0-40 20 | B syscall·Syscall6(SB) 21 | 22 | TEXT ·Syscall9(SB),NOSPLIT,$0-52 23 | B syscall·Syscall9(SB) 24 | 25 | TEXT ·RawSyscall(SB),NOSPLIT,$0-28 26 | B syscall·RawSyscall(SB) 27 | 28 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 29 | B syscall·RawSyscall6(SB) 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_netbsd_386.s: -------------------------------------------------------------------------------- 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 | // +build !gccgo 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System call support for 386, NetBSD 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-28 17 | JMP syscall·Syscall(SB) 18 | 19 | TEXT ·Syscall6(SB),NOSPLIT,$0-40 20 | JMP syscall·Syscall6(SB) 21 | 22 | TEXT ·Syscall9(SB),NOSPLIT,$0-52 23 | JMP syscall·Syscall9(SB) 24 | 25 | TEXT ·RawSyscall(SB),NOSPLIT,$0-28 26 | JMP syscall·RawSyscall(SB) 27 | 28 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 29 | JMP syscall·RawSyscall6(SB) 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_netbsd_amd64.s: -------------------------------------------------------------------------------- 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 | // +build !gccgo 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System call support for AMD64, NetBSD 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_netbsd_arm.s: -------------------------------------------------------------------------------- 1 | // Copyright 2013 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build !gccgo 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System call support for ARM, NetBSD 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-28 17 | B syscall·Syscall(SB) 18 | 19 | TEXT ·Syscall6(SB),NOSPLIT,$0-40 20 | B syscall·Syscall6(SB) 21 | 22 | TEXT ·Syscall9(SB),NOSPLIT,$0-52 23 | B syscall·Syscall9(SB) 24 | 25 | TEXT ·RawSyscall(SB),NOSPLIT,$0-28 26 | B syscall·RawSyscall(SB) 27 | 28 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 29 | B syscall·RawSyscall6(SB) 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_openbsd_386.s: -------------------------------------------------------------------------------- 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 | // +build !gccgo 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System call support for 386, 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-28 17 | JMP syscall·Syscall(SB) 18 | 19 | TEXT ·Syscall6(SB),NOSPLIT,$0-40 20 | JMP syscall·Syscall6(SB) 21 | 22 | TEXT ·Syscall9(SB),NOSPLIT,$0-52 23 | JMP syscall·Syscall9(SB) 24 | 25 | TEXT ·RawSyscall(SB),NOSPLIT,$0-28 26 | JMP syscall·RawSyscall(SB) 27 | 28 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 29 | JMP syscall·RawSyscall6(SB) 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_openbsd_amd64.s: -------------------------------------------------------------------------------- 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 | // +build !gccgo 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System call support for AMD64, 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_openbsd_arm.s: -------------------------------------------------------------------------------- 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 | // +build !gccgo 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System call support for ARM, 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-28 17 | B syscall·Syscall(SB) 18 | 19 | TEXT ·Syscall6(SB),NOSPLIT,$0-40 20 | B syscall·Syscall6(SB) 21 | 22 | TEXT ·Syscall9(SB),NOSPLIT,$0-52 23 | B syscall·Syscall9(SB) 24 | 25 | TEXT ·RawSyscall(SB),NOSPLIT,$0-28 26 | B syscall·RawSyscall(SB) 27 | 28 | TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 29 | B 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 | // +build !gccgo 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System calls for amd64, Solaris are implemented in runtime/syscall_solaris.go 11 | // 12 | 13 | TEXT ·sysvicall6(SB),NOSPLIT,$0-88 14 | JMP syscall·sysvicall6(SB) 15 | 16 | TEXT ·rawSysvicall6(SB),NOSPLIT,$0-88 17 | JMP syscall·rawSysvicall6(SB) 18 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/bluetooth_linux.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // Bluetooth sockets and messages 6 | 7 | package unix 8 | 9 | // Bluetooth Protocols 10 | const ( 11 | BTPROTO_L2CAP = 0 12 | BTPROTO_HCI = 1 13 | BTPROTO_SCO = 2 14 | BTPROTO_RFCOMM = 3 15 | BTPROTO_BNEP = 4 16 | BTPROTO_CMTP = 5 17 | BTPROTO_HIDP = 6 18 | BTPROTO_AVDTP = 7 19 | ) 20 | 21 | const ( 22 | HCI_CHANNEL_RAW = 0 23 | HCI_CHANNEL_USER = 1 24 | HCI_CHANNEL_MONITOR = 2 25 | HCI_CHANNEL_CONTROL = 3 26 | ) 27 | 28 | // Socketoption Level 29 | const ( 30 | SOL_BLUETOOTH = 0x112 31 | SOL_HCI = 0x0 32 | SOL_L2CAP = 0x6 33 | SOL_RFCOMM = 0x12 34 | SOL_SCO = 0x11 35 | ) 36 | -------------------------------------------------------------------------------- /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 | // +build darwin dragonfly freebsd linux netbsd openbsd solaris 6 | 7 | package unix 8 | 9 | const ( 10 | R_OK = 0x4 11 | W_OK = 0x2 12 | X_OK = 0x1 13 | ) 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dev_darwin.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // Functions to access/create device major and minor numbers matching the 6 | // encoding used in Darwin's sys/types.h header. 7 | 8 | package unix 9 | 10 | // Major returns the major component of a Darwin device number. 11 | func Major(dev uint64) uint32 { 12 | return uint32((dev >> 24) & 0xff) 13 | } 14 | 15 | // Minor returns the minor component of a Darwin device number. 16 | func Minor(dev uint64) uint32 { 17 | return uint32(dev & 0xffffff) 18 | } 19 | 20 | // Mkdev returns a Darwin device number generated from the given major and minor 21 | // components. 22 | func Mkdev(major, minor uint32) uint64 { 23 | return (uint64(major) << 24) | uint64(minor) 24 | } 25 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/dirent.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 | // +build darwin dragonfly freebsd linux nacl netbsd openbsd solaris 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | // ParseDirent parses up to max directory entries in buf, 12 | // appending the names to names. It returns the number of 13 | // bytes consumed from buf, the number of entries added 14 | // to names, and the new names slice. 15 | func ParseDirent(buf []byte, max int, names []string) (consumed int, count int, newnames []string) { 16 | return syscall.ParseDirent(buf, max, names) 17 | } 18 | -------------------------------------------------------------------------------- /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 | // +build ppc64 s390x mips mips64 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 | // +build 386 amd64 amd64p32 arm arm64 ppc64le mipsle mips64le 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 | // +build darwin dragonfly freebsd linux netbsd openbsd solaris 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 | // +build linux,386 linux,arm linux,mips linux,mipsle 2 | 3 | // Copyright 2014 The Go Authors. All rights reserved. 4 | // Use of this source code is governed by a BSD-style 5 | // license that can be found in the LICENSE file. 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 | // +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/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 | // +build darwin dragonfly freebsd linux netbsd openbsd solaris 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/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 | // +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 | // +build darwin,!race linux,!race freebsd,!race netbsd openbsd solaris dragonfly 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/str.go: -------------------------------------------------------------------------------- 1 | // Copyright 2009 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build darwin dragonfly freebsd linux netbsd openbsd solaris 6 | 7 | package unix 8 | 9 | func itoa(val int) string { // do it here rather than with fmt to avoid dependency 10 | if val < 0 { 11 | return "-" + uitoa(uint(-val)) 12 | } 13 | return uitoa(uint(val)) 14 | } 15 | 16 | func uitoa(val uint) string { 17 | var buf [32]byte // big enough for int64 18 | i := len(buf) - 1 19 | for val >= 10 { 20 | buf[i] = byte(val%10 + '0') 21 | i-- 22 | val /= 10 23 | } 24 | buf[i] = byte(val + '0') 25 | return string(buf[i:]) 26 | } 27 | -------------------------------------------------------------------------------- /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 | // +build amd64,linux 6 | // +build !gccgo 7 | 8 | package unix 9 | 10 | import "syscall" 11 | 12 | //go:noescape 13 | func gettimeofday(tv *Timeval) (err syscall.Errno) 14 | -------------------------------------------------------------------------------- /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 | // +build linux,!gccgo 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_gccgo.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 | // +build linux 6 | // +build gccgo 7 | // +build 386 arm 8 | 9 | package unix 10 | 11 | import ( 12 | "syscall" 13 | "unsafe" 14 | ) 15 | 16 | func seek(fd int, offset int64, whence int) (newoffset int64, err syscall.Errno) { 17 | offsetLow := uint32(offset & 0xffffffff) 18 | offsetHigh := uint32((offset >> 32) & 0xffffffff) 19 | _, _, err = Syscall6(SYS__LLSEEK, uintptr(fd), uintptr(offsetHigh), uintptr(offsetLow), uintptr(unsafe.Pointer(&newoffset)), uintptr(whence), 0) 20 | return newoffset, err 21 | } 22 | -------------------------------------------------------------------------------- /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 | // +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 (cmsg *Cmsghdr) SetLen(length int) { 22 | cmsg.Len = uint32(length) 23 | } 24 | -------------------------------------------------------------------------------- /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 | // +build darwin dragonfly freebsd linux netbsd openbsd solaris 6 | // +build !gccgo 7 | 8 | package unix 9 | 10 | import "syscall" 11 | 12 | func Syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) 13 | func Syscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) 14 | func RawSyscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) 15 | func RawSyscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) 16 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/asm_windows_386.s: -------------------------------------------------------------------------------- 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 | // 6 | // System calls for 386, Windows are implemented in runtime/syscall_windows.goc 7 | // 8 | 9 | TEXT ·getprocaddress(SB), 7, $0-16 10 | JMP syscall·getprocaddress(SB) 11 | 12 | TEXT ·loadlibrary(SB), 7, $0-12 13 | JMP syscall·loadlibrary(SB) 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/asm_windows_amd64.s: -------------------------------------------------------------------------------- 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 | // 6 | // System calls for amd64, Windows are implemented in runtime/syscall_windows.goc 7 | // 8 | 9 | TEXT ·getprocaddress(SB), 7, $0-32 10 | JMP syscall·getprocaddress(SB) 11 | 12 | TEXT ·loadlibrary(SB), 7, $0-8 13 | JMP syscall·loadlibrary(SB) 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/env_windows.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 | // Windows environment variables. 6 | 7 | package windows 8 | 9 | import "syscall" 10 | 11 | func Getenv(key string) (value string, found bool) { 12 | return syscall.Getenv(key) 13 | } 14 | 15 | func Setenv(key, value string) error { 16 | return syscall.Setenv(key, value) 17 | } 18 | 19 | func Clearenv() { 20 | syscall.Clearenv() 21 | } 22 | 23 | func Environ() []string { 24 | return syscall.Environ() 25 | } 26 | 27 | func Unsetenv(key string) error { 28 | return syscall.Unsetenv(key) 29 | } 30 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/memory_windows.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 windows 6 | 7 | const ( 8 | MEM_COMMIT = 0x00001000 9 | MEM_RESERVE = 0x00002000 10 | MEM_DECOMMIT = 0x00004000 11 | MEM_RELEASE = 0x00008000 12 | MEM_RESET = 0x00080000 13 | MEM_TOP_DOWN = 0x00100000 14 | MEM_WRITE_WATCH = 0x00200000 15 | MEM_PHYSICAL = 0x00400000 16 | MEM_RESET_UNDO = 0x01000000 17 | MEM_LARGE_PAGES = 0x20000000 18 | 19 | PAGE_NOACCESS = 0x01 20 | PAGE_READONLY = 0x02 21 | PAGE_READWRITE = 0x04 22 | PAGE_WRITECOPY = 0x08 23 | PAGE_EXECUTE_READ = 0x20 24 | PAGE_EXECUTE_READWRITE = 0x40 25 | PAGE_EXECUTE_WRITECOPY = 0x80 26 | ) 27 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/mksyscall.go: -------------------------------------------------------------------------------- 1 | // Copyright 2009 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package windows 6 | 7 | //go:generate go run $GOROOT/src/syscall/mksyscall_windows.go -output zsyscall_windows.go eventlog.go service.go syscall_windows.go security_windows.go 8 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/race.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build windows,race 6 | 7 | package windows 8 | 9 | import ( 10 | "runtime" 11 | "unsafe" 12 | ) 13 | 14 | const raceenabled = true 15 | 16 | func raceAcquire(addr unsafe.Pointer) { 17 | runtime.RaceAcquire(addr) 18 | } 19 | 20 | func raceReleaseMerge(addr unsafe.Pointer) { 21 | runtime.RaceReleaseMerge(addr) 22 | } 23 | 24 | func raceReadRange(addr unsafe.Pointer, len int) { 25 | runtime.RaceReadRange(addr, len) 26 | } 27 | 28 | func raceWriteRange(addr unsafe.Pointer, len int) { 29 | runtime.RaceWriteRange(addr, len) 30 | } 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/race0.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build windows,!race 6 | 7 | package windows 8 | 9 | import ( 10 | "unsafe" 11 | ) 12 | 13 | const raceenabled = false 14 | 15 | func raceAcquire(addr unsafe.Pointer) { 16 | } 17 | 18 | func raceReleaseMerge(addr unsafe.Pointer) { 19 | } 20 | 21 | func raceReadRange(addr unsafe.Pointer, len int) { 22 | } 23 | 24 | func raceWriteRange(addr unsafe.Pointer, len int) { 25 | } 26 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/registry/mksyscall.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 registry 6 | 7 | //go:generate go run $GOROOT/src/syscall/mksyscall_windows.go -output zsyscall_windows.go syscall.go 8 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/str.go: -------------------------------------------------------------------------------- 1 | // Copyright 2009 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build windows 6 | 7 | package windows 8 | 9 | func itoa(val int) string { // do it here rather than with fmt to avoid dependency 10 | if val < 0 { 11 | return "-" + itoa(-val) 12 | } 13 | var buf [32]byte // big enough for int64 14 | i := len(buf) - 1 15 | for val >= 10 { 16 | buf[i] = byte(val%10 + '0') 17 | i-- 18 | val /= 10 19 | } 20 | buf[i] = byte(val + '0') 21 | return string(buf[i:]) 22 | } 23 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/svc/example/beep.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 | // +build windows 6 | 7 | package main 8 | 9 | import ( 10 | "syscall" 11 | ) 12 | 13 | // BUG(brainman): MessageBeep Windows api is broken on Windows 7, 14 | // so this example does not beep when runs as service on Windows 7. 15 | 16 | var ( 17 | beepFunc = syscall.MustLoadDLL("user32.dll").MustFindProc("MessageBeep") 18 | ) 19 | 20 | func beep() { 21 | beepFunc.Call(0xffffffff) 22 | } 23 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/svc/go12.c: -------------------------------------------------------------------------------- 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 | // +build windows 6 | // +build !go1.3 7 | 8 | // copied from pkg/runtime 9 | typedef unsigned int uint32; 10 | typedef unsigned long long int uint64; 11 | #ifdef _64BIT 12 | typedef uint64 uintptr; 13 | #else 14 | typedef uint32 uintptr; 15 | #endif 16 | 17 | // from sys_386.s or sys_amd64.s 18 | void ·servicemain(void); 19 | 20 | void 21 | ·getServiceMain(uintptr *r) 22 | { 23 | *r = (uintptr)·servicemain; 24 | } 25 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/svc/go12.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 | // +build windows 6 | // +build !go1.3 7 | 8 | package svc 9 | 10 | // from go12.c 11 | func getServiceMain(r *uintptr) 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/types_windows_386.go: -------------------------------------------------------------------------------- 1 | // Copyright 2011 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package windows 6 | 7 | type WSAData struct { 8 | Version uint16 9 | HighVersion uint16 10 | Description [WSADESCRIPTION_LEN + 1]byte 11 | SystemStatus [WSASYS_STATUS_LEN + 1]byte 12 | MaxSockets uint16 13 | MaxUdpDg uint16 14 | VendorInfo *byte 15 | } 16 | 17 | type Servent struct { 18 | Name *byte 19 | Aliases **byte 20 | Port uint16 21 | Proto *byte 22 | } 23 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/windows/types_windows_amd64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2011 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package windows 6 | 7 | type WSAData struct { 8 | Version uint16 9 | HighVersion uint16 10 | MaxSockets uint16 11 | MaxUdpDg uint16 12 | VendorInfo *byte 13 | Description [WSADESCRIPTION_LEN + 1]byte 14 | SystemStatus [WSASYS_STATUS_LEN + 1]byte 15 | } 16 | 17 | type Servent struct { 18 | Name *byte 19 | Aliases **byte 20 | Proto *byte 21 | Port uint16 22 | } 23 | -------------------------------------------------------------------------------- /vendor/google.golang.org/appengine/aetest/instance_classic.go: -------------------------------------------------------------------------------- 1 | // +build appengine 2 | 3 | package aetest 4 | 5 | import "appengine/aetest" 6 | 7 | // NewInstance launches a running instance of api_server.py which can be used 8 | // for multiple test Contexts that delegate all App Engine API calls to that 9 | // instance. 10 | // If opts is nil the default values are used. 11 | func NewInstance(opts *Options) (Instance, error) { 12 | aetest.PrepareDevAppserver = PrepareDevAppserver 13 | var aeOpts *aetest.Options 14 | if opts != nil { 15 | aeOpts = &aetest.Options{ 16 | AppID: opts.AppID, 17 | StronglyConsistentDatastore: opts.StronglyConsistentDatastore, 18 | } 19 | } 20 | return aetest.NewInstance(aeOpts) 21 | } 22 | -------------------------------------------------------------------------------- /vendor/google.golang.org/appengine/appengine_vm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015 Google Inc. All rights reserved. 2 | // Use of this source code is governed by the Apache 2.0 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build !appengine 6 | 7 | package appengine 8 | 9 | import ( 10 | "golang.org/x/net/context" 11 | 12 | "google.golang.org/appengine/internal" 13 | ) 14 | 15 | // BackgroundContext returns a context not associated with a request. 16 | // This should only be used when not servicing a request. 17 | // This only works in App Engine "flexible environment". 18 | func BackgroundContext() context.Context { 19 | return internal.BackgroundContext() 20 | } 21 | -------------------------------------------------------------------------------- /vendor/google.golang.org/appengine/cloudsql/cloudsql_classic.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 Google Inc. All rights reserved. 2 | // Use of this source code is governed by the Apache 2.0 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build appengine 6 | 7 | package cloudsql 8 | 9 | import ( 10 | "net" 11 | 12 | "appengine/cloudsql" 13 | ) 14 | 15 | func connect(instance string) (net.Conn, error) { 16 | return cloudsql.Dial(instance) 17 | } 18 | -------------------------------------------------------------------------------- /vendor/google.golang.org/appengine/cloudsql/cloudsql_vm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 Google Inc. All rights reserved. 2 | // Use of this source code is governed by the Apache 2.0 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build !appengine 6 | 7 | package cloudsql 8 | 9 | import ( 10 | "errors" 11 | "net" 12 | ) 13 | 14 | func connect(instance string) (net.Conn, error) { 15 | return nil, errors.New(`cloudsql: not supported in App Engine "flexible environment"`) 16 | } 17 | -------------------------------------------------------------------------------- /vendor/google.golang.org/appengine/internal/app_id.go: -------------------------------------------------------------------------------- 1 | // Copyright 2011 Google Inc. All rights reserved. 2 | // Use of this source code is governed by the Apache 2.0 3 | // license that can be found in the LICENSE file. 4 | 5 | package internal 6 | 7 | import ( 8 | "strings" 9 | ) 10 | 11 | func parseFullAppID(appid string) (partition, domain, displayID string) { 12 | if i := strings.Index(appid, "~"); i != -1 { 13 | partition, appid = appid[:i], appid[i+1:] 14 | } 15 | if i := strings.Index(appid, ":"); i != -1 { 16 | domain, appid = appid[:i], appid[i+1:] 17 | } 18 | return partition, domain, appid 19 | } 20 | 21 | // appID returns "appid" or "domain.com:appid". 22 | func appID(fullAppID string) string { 23 | _, dom, dis := parseFullAppID(fullAppID) 24 | if dom != "" { 25 | return dom + ":" + dis 26 | } 27 | return dis 28 | } 29 | -------------------------------------------------------------------------------- /vendor/google.golang.org/appengine/internal/identity.go: -------------------------------------------------------------------------------- 1 | // Copyright 2011 Google Inc. All rights reserved. 2 | // Use of this source code is governed by the Apache 2.0 3 | // license that can be found in the LICENSE file. 4 | 5 | package internal 6 | 7 | import netcontext "golang.org/x/net/context" 8 | 9 | // These functions are implementations of the wrapper functions 10 | // in ../appengine/identity.go. See that file for commentary. 11 | 12 | func AppID(c netcontext.Context) string { 13 | return appID(FullyQualifiedAppID(c)) 14 | } 15 | -------------------------------------------------------------------------------- /vendor/google.golang.org/appengine/internal/main.go: -------------------------------------------------------------------------------- 1 | // Copyright 2011 Google Inc. All rights reserved. 2 | // Use of this source code is governed by the Apache 2.0 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build appengine 6 | 7 | package internal 8 | 9 | import ( 10 | "appengine_internal" 11 | ) 12 | 13 | func Main() { 14 | appengine_internal.Main() 15 | } 16 | -------------------------------------------------------------------------------- /vendor/google.golang.org/appengine/socket/doc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012 Google Inc. All rights reserved. 2 | // Use of this source code is governed by the Apache 2.0 3 | // license that can be found in the LICENSE file. 4 | 5 | // Package socket provides outbound network sockets. 6 | // 7 | // This package is only required in the classic App Engine environment. 8 | // Applications running only in App Engine "flexible environment" should 9 | // use the standard library's net package. 10 | package socket 11 | -------------------------------------------------------------------------------- /vendor/google.golang.org/appengine/timeout.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 Google Inc. All rights reserved. 2 | // Use of this source code is governed by the Apache 2.0 3 | // license that can be found in the LICENSE file. 4 | 5 | package appengine 6 | 7 | import "golang.org/x/net/context" 8 | 9 | // IsTimeoutError reports whether err is a timeout error. 10 | func IsTimeoutError(err error) bool { 11 | if err == context.DeadlineExceeded { 12 | return true 13 | } 14 | if t, ok := err.(interface { 15 | IsTimeout() bool 16 | }); ok { 17 | return t.IsTimeout() 18 | } 19 | return false 20 | } 21 | -------------------------------------------------------------------------------- /vendor/gopkg.in/mgo.v2/internal/sasl/sasl_windows.h: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | #include "sspi_windows.h" 4 | 5 | SECURITY_STATUS SEC_ENTRY sspi_acquire_credentials_handle(CredHandle* cred_handle, char* username, char* password, char* domain); 6 | int sspi_step(CredHandle* cred_handle, int has_context, CtxtHandle* context, PVOID buffer, ULONG buffer_length, PVOID* out_buffer, ULONG* out_buffer_length, char* target); 7 | int sspi_send_client_authz_id(CtxtHandle* context, PVOID* buffer, ULONG* buffer_length, char* user_plus_realm); 8 | -------------------------------------------------------------------------------- /vendor/gopkg.in/mgo.v2/raceoff.go: -------------------------------------------------------------------------------- 1 | // +build !race 2 | 3 | package mgo 4 | 5 | const raceDetector = false 6 | -------------------------------------------------------------------------------- /vendor/gopkg.in/mgo.v2/raceon.go: -------------------------------------------------------------------------------- 1 | // +build race 2 | 3 | package mgo 4 | 5 | const raceDetector = true 6 | -------------------------------------------------------------------------------- /vendor/gopkg.in/mgo.v2/saslimpl.go: -------------------------------------------------------------------------------- 1 | //+build sasl 2 | 3 | package mgo 4 | 5 | import ( 6 | "gopkg.in/mgo.v2/internal/sasl" 7 | ) 8 | 9 | func saslNew(cred Credential, host string) (saslStepper, error) { 10 | return sasl.New(cred.Username, cred.Password, cred.Mechanism, cred.Service, host) 11 | } 12 | -------------------------------------------------------------------------------- /vendor/gopkg.in/mgo.v2/saslstub.go: -------------------------------------------------------------------------------- 1 | //+build !sasl 2 | 3 | package mgo 4 | 5 | import ( 6 | "fmt" 7 | ) 8 | 9 | func saslNew(cred Credential, host string) (saslStepper, error) { 10 | return nil, fmt.Errorf("SASL support not enabled during build (-tags sasl)") 11 | } 12 | --------------------------------------------------------------------------------